PageSourceSearch

https://stand-with-ukraine-bc-app.web.app/landing/assets/entries/entry-client-routing.Rt29rCTw.js

js stand-with-ukraine-bc-app.web.app collected 2026-10-03 12:36:40 UTC 70,494 bytes, 5 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/entries/src_pages.N4DqnWZZ.js","assets/chunks/chunk-I63hkurI.js","assets/static/style-e1a69498.Fkegh_bI.css","assets/entries/src_pages_error.DtzWi6qa.js"])))=>i.map(i=>d[i]);
2function xe(e){return Array.from(new Set(e))}const Rn="0.4.194",Fe={projectName:"Vike",projectVersion:Rn},Me=`_${Fe.projectName.toLowerCase()}`;function I(e,t){const n=En();return n[e]=n[e]||t}function En(){return globalThis[Me]=globalThis[Me]||{}}const g=new Proxy({},{get:(e,t)=>n=>t==="code"?`\`${n}\``:t==="string"?`'${n}'`:n}),A=I("assertSingleInstance.ts",{instances:[],alreadyLogged:new Set}),Cn="Client runtime of both Server Routing and Client Routing loaded https://vike.dev/client-runtimes-conflict",Pt="Client runtime loaded twice https://vike.dev/client-runtime-duplicated";function Rt(){{const e=xe(A.instances);On(e.length<=1,`vike@${g.bold(e[0])} and vike@${g.bold(e[1])} loaded but only one version should be loaded`)}A.checkSingleInstance&&A.instances.length>1&&Pe(!1,Pt,{onlyOnce:!0,showStackTrace:!0})}function _n(e){Pe(A.isClientRouting!==!1,Cn,{onlyOnce:!0,showStackTrace:!0}),Pe(A.isClientRouting===void 0,Pt,{onlyOnce:!0,showStackTrace:!0}),A.isClientRouting=!0,A.checkSingleInstance=!0,Rt()}function $n(){A.instances.push(Fe.projectVersion),Rt()}function On(e,t){if(e)return;const n=`[vike][Wrong Usage] ${t}`;throw new Error(n)}function Pe(e,t,{onlyOnce:n,showStackTrace:r}){if(e)return;const i=`[vike][Warning] ${t}`;if(n){const{alreadyLogged:o}=A,a=n===!0?i:n;if(o.has(a))return;o.add(a)}console.warn(r?new Error(i):i)}function Tn(){return!(typeof process>"u"||!process.cwd||!process.versions||typeof process.versions.node>"u"||!process.release||process.release.name!=="node")}function fe(e,t){const n=new Error(e);return Tn()&&(n.stack=kn(n.stack,t)),n}function kn(e,t){if(!e)return e;const n=Fn(e);let r=0;return n.filter(o=>o.includes(" (internal/")||o.includes(" (node:internal")?!1:r<t&&xn(o)?(r++,!1):!0).join(`
3`)}function xn(e){return e.startsWith("    at ")}function Fn(e){return e.split(/\r?\n/)}function O(e){return typeof e=="object"&&e!==null}const T=I("utils/assert.ts",{alreadyLogged:new Set,logger(e,t){t==="info"?console.log(e):console.warn(e)},showStackTraceList:new WeakSet});$n();const In="[vike]",An=`[vike@${Fe.projectVersion}]`,de=2;function s(e,t){var a;if(e)return;const n=(()=>{if(!t)return null;const l=typeof t=="string"?t:JSON.stringify(t);return g.dim(`Debug info (for Vike maintainers; you can ignore this): ${l}`)})();let i=[`You stumbled upon a Vike bug. Go to ${g.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=Z(i),i=ge(i,"Bug"),i=ee(i,!0);const o=fe(i,de);throw(a=T.onBeforeLog)==null||a.call(T),o}function d(e,t,{showStackTrace:n}={}){var i;if(e)return;n=n||T.alwaysShowStackTrace,t=Z(t),t=ge(t,"Wrong Usage"),t=ee(t);const r=fe(t,de);throw n&&T.showStackTraceList.add(r),(i=T.onBeforeLog)==null||i.call(T),r}function Et(e){return e=Z(e),e=ge(e,"Error"),e=ee(e),fe(e,de)}function $(e,t,{onlyOnce:n,showStackTrace:r}){var i;if(!e){if(r=r||T.alwaysShowStackTrace,t=Z(t),t=ge(t,"Warning"),t=ee(t),n){const{alreadyLogged:o}=T,a=n===!0?t:n;if(o.has(a))return;o.add(a)}if((i=T.onBeforeLog)==null||i.call(T),r){const o=fe(t,de);T.showStackTraceList.add(o),T.logger(o,"warn")}else T.logger(t,"warn")}}function jn(e,t,{onlyOnce:n}){var r;if(t=Z(t),t=ee(t),n){const{alreadyLogged:i}=T,o=t;if(i.has(o))return;i.add(o)}(r=T.onBeforeLog)==null||r.call(T),T.logger(t,"info")}function ge(e,t){let n=`[${t}]`;const r=t==="Warning"?"yellow":"red";return n=g.bold(g[r](n)),`${n}${e}`}function Z(e){return e.startsWith("[")?e:` ${e}`}function ee(e,t=!1){return`${t?An:In}${e}`}function D(){return typeof window<"u"&&typeof window.scrollY=="number"}const Ct=I("utils/assertRouterType.ts",{});function te(){Wn(Ln()),Ct.isClientRouting=!0}function Ln(){return Ct.isClientRouting!==!1}function Wn(e){d(D(),`${g.cyan("import { something } from 'vike/client/router'")} is forbidden on the server-side`,{showStackTrace:!0}),$(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 j(e,t,n){return typeof e=="string"?qe(e.split(""),t,n).join(""):qe(e,t,n)}function qe(e,t,n){const r=[];let i=t>=0?t:e.length+t;s(i>=0&&i<=e.length);let o=n>=0?n:e.length+n;for(s(o>=0&&o<=e.length);!(i===o||(i===e.length&&(i=0),i===o));){const a=e[i];s(a!==void 0),r.push(a),i++}return r}function ne(e,t){s(Tt(e),e),s(t.startsWith("/"));const[n,...r]=e.split("#");s(n!==void 0);const i=["",...r].join("#")||null;s(i===null||i.startsWith("#"));const o=i===null?"":_t(i.slice(1)),[a,...l]=n.split("?");s(a!==void 0);const u=["",...l].join("?")||null;s(u===null||u.startsWith("?"));const c={},f={};
3Array.from(new URLSearchParams(u||"")).forEach(([S,k])=>{c[S]=k,f[S]=[...f.hasOwnProperty(S)?f[S]:[],k]});let{protocol:m,origin:h,pathnameAbsoluteWithBase:p}=Bn(a,t);const E=a.slice((h||"").length);Vn(e,h,E,u,i);let{pathname:C,hasBaseServer:w}=zn(p,t);const R=Ot(h,C,u,i),v=h?h.slice(m.length):null,{hostname:F,port:y}=Nn(v,e);return C=Hn(C),s(C.startsWith("/")),{href:R,protocol:m,hostname:F,port:y,origin:h,pathname:C,pathnameOriginal:E,hasBaseServer:w,search:c,searchAll:f,searchOriginal:u,hash:o,hashOriginal:i}}function _t(e){try{return decodeURIComponent(e)}catch{}try{return decodeURI(e)}catch{}return e}function Hn(e){return e=e.replace(/\s+$/,""),e=e.split("/").map(t=>_t(t).split("/").join("%2F")).join("/"),e}function Bn(e,t){var n;s(!e.includes("?")&&!e.includes("#"));{const{protocol:r,origin:i,pathname:o}=Xe(e);if(i)return{protocol:r,origin:i,pathnameAbsoluteWithBase:o};s(o===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=Xe(r.split("?")[0]).pathname:i=t,{protocol:null,origin:null,pathnameAbsoluteWithBase:Dn(e,i)}}}function Xe(e){if(Le(e)){const{protocol:t,uriWithoutProtocol:n}=Ie(e);s(t);const[r,...i]=n.split("/"),o=t+r;return{pathname:"/"+i.join("/"),origin:o,protocol:t}}else return{pathname:e,origin:null,protocol:null}}function Nn(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);s(i||i===0,t),n.port=i}return n.hostname=r.join(":"),n}function Ie(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,o=r.join(t);const a="//";return o.startsWith(a)&&(i=i+a,o=o.slice(a.length)),{protocol:i,uriWithoutProtocol:o}}function $t(e){return["ipfs://","ipns://"].includes(e)?!1:e.endsWith("://")}function Dn(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 o=n.join("/");return i&&!o.endsWith("/")&&(o+="/"),o.startsWith("/")||(o="/"+o),o}function zn(e,t){s(e.startsWith("/")),s(Ae(t));let n=e;if(s(n.startsWith("/")),s(t.startsWith("/")),t==="/")return{pathname:e,hasBaseServer:!0};let r=t;return t.endsWith("/")&&n===j(t,0,-1)&&(r=j(t,0,-1),s(n===r)),n.startsWith(r)?(s(n.startsWith("/")||n.startsWith("http")),s(n.startsWith(r)),n=n.slice(r.length),n.startsWith("/")||(n="/"+n),s(n.startsWith("/")),{pathname:n,hasBaseServer:!0}):{pathname:e,hasBaseServer:!1}}function Ae(e){return e.startsWith("/")}function Vn(e,t,n,r,i){const o=Ot(t,n,r,i);s(e===o)}function Ot(e,t,n,r){return`${e||""}${t}${n||""}${r||""}`}function Tt(e){return Le(e)||e.startsWith("/")||je(e)}function Un(e){return e.startsWith("/")||Jn(e)||Le(e)}function je(e){return[".","?","#"].some(t=>e.startsWith(t))||e===""}function Gn(e){return!e.startsWith("/")&&!je(e)}function Le(e){const{protocol:t}=Ie(e);return!!t&&$t(t)}function Jn(e){const{protocol:t}=Ie(e);return!!t&&!$t(e)}function Yn(e,t){Kn(e,t)}function Kn(e,t,{allowRelative:n,isRedirectTarget:r}={}){if(e.startsWith("/"))return;let i=`${t} is ${g.string(e)} but it should start with ${g.string("/")}`;if(r){if(Un(e))return;if(i+=` or a protocol (${g.string("http://")}, ${g.string("mailto:")}, ...)`,r==="unresolved"){if(e==="*")return;i+=`, or be ${g.string("*")}`}}if(n){if(je(e))return;i+=", or be a relative URL"}d(!1,i)}function P(e,t){t&&(s(!("_isPageContextObject"in t)),Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)))}function z(e){return e instanceof Function||typeof e=="function"}function ue(e){return(t,n)=>{const r=e(t),i=e(n);return r===i?0:r>i?-1:1}}function Mn(e){return(t,n)=>{const r=e(t),i=e(n);return r===i?0:r<i?-1:1}}function W(e){return(t,n)=>{const r=e(t),i=e(n);if(s([!0,!1,null].includes(r)),s([!0,!1,null].includes(i)),r===i)return 0;if(r===!0||i===!1)return-1;if(i===!0||r===!1)return 1;s(!1)}}function qn(e){return W(t=>{const n=e(t);return n===null?null:!n})}function U(e){return Array.isArray(e)}function Xn(e){return U(e)&&e.every(t=>typeof t=="string")}function Qn(e){return O(e)&&Object.values(e).every(t=>typeof t=="string")}function b(e,t,n){if(!O(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"?U(r):n==="object"?O(r):n==="string[]"?Xn(r):n==="string{}"?Qn(r):n==="function"?z(r):U(n)?typeof r=="string"&&n.includes(r):n==="null"?r===null:n==="true"?r===!0:n==="false"?r===!1:typeof r===n}function N(e){return typeof e!="object"||e===null?!1:Object.getPrototypeOf(e)===null?!0:e.constructor.name==="Object"}function Zn(e,t){return e.toLowerCase()<t.toLowerCase()?-1:e.toLowerCase()>t.toLowerCase()?1:0}const er=e=>e!=null;function Qe(e){return"["+e.map(t=>"'"+t+"'").join(", ")+"]"}function kt(e){const t=n=>`Not a posix path: ${n}`;s(e!==null,t("null")),s(typeof e=="string",t(`typeof path === ${JSON.stringify(typeof e)}`)),s(e!=="",t("(empty string)")),s(e),s(!e.includes("\\"),t(e))}function me(e,t){const n=Object.getOwnPropertyDescriptor(e,t);return!!n&&!("value"in n)&&!!n.get}function tr(e){return typeof e=="object"&&e!==null&&"then"in e&&z(e.then)}function nr(e){return[null,void 0].includes(e)?String(e):["boolean","number","string"].includes(typeof e)?JSON.stringify(e):null}function rr(e){return e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&")}function ie(e,t,n){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(e,t,{...r,enumerable:n})}function ye(e,t,{get:n,...r}){Object.defineProperty(e,t,{...r,get:n})}const ir=["clientRouting"];function or(e){ir.forEach(t=>{if(s(e.fileExports),!(t in e.fileExports))return;const n=`The value of \`${t}\` is only allowed to be \`true\`.`;
3d(e.fileExports[t]!==!1,`${e.filePath} has \`export { ${t} }\` with the value \`false\` which is prohibited: remove \`export { ${t} }\` instead. (${n})`),d(e.fileExports[t]===!0,`${e.filePath} has \`export { ${t} }\` with a forbidden value. ${n}`)})}const xt=["render","clientRouting","prerender","doNotPrerender"];function sr(e,t){d(!xt.includes(e),`${t} has \`export default { ${e} }\` which is prohibited, use \`export { ${e} }\` instead.`)}function ar(e){const t=".page.",n=j(e.split(t),0,-1).join(t);return s(!n.includes("\\")),n}function G(e){kt(e)}function lr(e,t){if(t.length>0){const r=t.filter(i=>i.isErrorPage);return r.length===0?null:(d(r.length===1,"Only one error page can be defined"),r[0].pageId)}const n=xe(e.map(({pageId:r})=>r).filter(r=>re(r)));if(d(n.length<=1,`Only one _error.page.js is allowed, but found several: ${n.join(" ")}`),n.length>0){const r=n[0];return s(r),r}return null}function re(e,t){return s(!e.includes("\\")),e.includes("/_error")}function ur(e,t){if(t.length>0){const n=t.find(r=>r.pageId===e);return s(n),!!n.isErrorPage}else return re(e)}const Ft=["js","ts","cjs","cts","mjs","mts"],cr=["jsx","tsx","cjsx","ctsx","mjsx","mtsx"],It=["vue","svelte","marko","md","mdx"],fr=[...Ft,...cr,...It];function At(e){const t=fr.some(n=>e.endsWith("."+n));return dr(e)&&s(t),t}function dr(e){const t=/\.(c|m)?(j|t)s$/.test(e),n=Ft.some(r=>e.endsWith("."+r));return s(t===n),t}function gr(e){return It.some(t=>e.endsWith("."+t))}const hr=[".page",".page.server",".page.route",".page.client",".css"];function pr(e){if(kt(e),e.endsWith(".css"))return".css";s(At(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(s(r==="page",e),i==="server")return".page.server";if(i==="client")return".page.client";if(i==="route")return".page.route";s(!1,e)}function jt(e){const t=o=>i.pageId===o||i.isDefaultPageFile&&(Ze(i.filePath)||mr(o,i.filePath)),n=pr(e),i={filePath:e,fileType:n,isEnv:o=>{if(s(n!==".page.route"),o==="CLIENT_ONLY")return n===".page.client"||n===".css";if(o==="SERVER_ONLY")return n===".page.server";if(o==="CLIENT_AND_SERVER")return n===".page";s(!1)},isRelevant:t,isDefaultPageFile:Re(e),isRendererPageFile:n!==".css"&&Re(e)&&Ze(e),isErrorPageFile:re(e),pageId:ar(e)};return i}function Re(e){return G(e),re(e)?!1:e.includes("/_default")}function Ze(e){return G(e),e.includes("/renderer/")}function mr(e,t){G(e),G(t),s(!e.endsWith("/")),s(!t.endsWith("/")),s(Re(t));const n=j(t.split("/"),0,-1).filter(r=>r!=="_default").join("/");return e.startsWith(n)}function yr(e,t){if(!e)return null;let[n,...r]=e;if(!n||r.length===0&&["*","default",t].includes(n))return null;s(n!=="*");let i="",o="";return n==="default"?i="export default":(i="export",r=[n,...r]),r.forEach(l=>{i=`${i} { ${l}`,o=` }${o}`}),i+o}function br(e,t,n){return`${Ee(e,t)} at ${X(n,t)}`}function Lt(e,t,n){return n?`${Ee(e,t)} at ${X(n,t)}`:`${Ee(e,t)} internally`}function Ee(e,t){return`${e} ${g.cyan(t)} defined`}function X(e,t){let n;return U(e)?n=e:n=[e],s(n.length>=1),n.map(i=>{const{filePathToShowToUser:o,fileExportPathToShowToUser:a}=i;let l=o;const u=yr(a,t);return u&&(l=`${l} > ${g.cyan(u)}`),l}).join(" / ")}const wr=[{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)=>
3"!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 We(e){const t=JSON.parse(e);return He(t)}function He(e){return typeof e=="string"?Sr(e):(typeof e=="object"&&e!==null&&Object.entries(e).forEach(([t,n])=>{e[t]=He(n)}),e)}function Sr(e){for(const{match:t,deserialize:n}of wr)if(t(e))return n(e,We);return e}const vr=["$$registrations","_rerender_only"],Pr=[".md",".mdx"];function Rr(e,t,n){const r=Object.keys(e).filter(c=>!vr.includes(c)),i=c=>c==="default"||c===n,o=r.filter(i),a=r.filter(c=>!i(c));if(o.length===1&&a.length===0)return;const l=g.code("export default"),u=g.code(`export { ${n} }`);s(o.length<=2),o.length===0&&d(!1,`${t} should have a ${u} or ${l}`),o.length===2&&$(!1,`${t} is ambiguous: remove ${l} or ${u}`,{onlyOnce:!0}),Pr.some(c=>t.endsWith(c))||a.forEach(c=>{$(!1,`${t} unexpected ${g.cyan(`export { ${c} }`)}`,{onlyOnce:!0})})}function Ce(e){return _r(e)}function Er(e,t){const n=e.map(i=>{const o=Ce(i.configValuesSerialized),{pageId:a,isErrorPage:l,routeFilesystem:u,loadConfigValuesAll:c}=i;return Cr(o),{pageId:a,isErrorPage:l,routeFilesystem:u,configValues:o,loadConfigValuesAll:c}}),r={configValues:{}};{const i=Ce(t.configValuesSerialized);Object.assign(r.configValues,i)}return{pageConfigs:n,pageConfigGlobal:r}}function Cr(e){const t="route",n=e[t];if(!n)return;const{value:r,definedAtData:i}=n,o=typeof r;s(i);const a=br("Config",t,i);d(o==="string"||z(r),`${a} has an invalid type '${o}': it should be a string or a function instead, see https://vike.dev/route`)}function _r(e){const t={};return Object.entries(e).forEach(([r,i])=>{let o;if(i.type==="cumulative"){const{valueSerialized:a,...l}=i;o={value:a.map((c,f)=>{const{value:m,sideExports:h}=et(c,r,()=>{const p=i.definedAtData[f];return s(p),p});return n(h),m}),...l}}else{const{valueSerialized:a,...l}=i,{value:u,sideExports:c}=et(a,r,()=>(s(i.type!=="computed"),i.definedAtData));n(c),o={value:u,...l}}t[r]=o}),t;function n(r){r.forEach(i=>{const{configName:o,configValue:a}=i;t[o]||(t[o]=a)})}}function et(e,t,n){if(e.type==="js-serialized"){let{value:r}=e;return r=He(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;Rr(i,r.filePathToShowToUser,t);let o,a=!1;const l=[];return Object.entries(i).forEach(([u,c])=>{u!=="default"&&u!==t?l.push({configName:u,configValue:{type:"standard",value:c,definedAtData:{filePathToShowToUser:r.filePathToShowToUser,fileExportPathToShowToUser:[u]}}}):(o=c,s(!a),a=!0)}),s(a),{value:o,sideExports:l}}s(!1)}function $r(e){s(b(e,"pageFilesLazy","object")),s(b(e,"pageFilesEager","object")),s(b(e,"pageFilesExportNamesLazy","object")),s(b(e,"pageFilesExportNamesEager","object")),s(b(e.pageFilesLazy,".page")),s(b(e.pageFilesLazy,".page.client")||b(e.pageFilesLazy,".page.server")),s(b(e,"pageFilesList","string[]")),s(b(e,"pageConfigsSerialized")),s(b(e,"pageConfigGlobalSerialized"));const{pageConfigsSerialized:t,pageConfigGlobalSerialized:n}=e;Or(t),Tr(n);const{pageConfigs:r,pageConfigGlobal:i}=Er(t,n),o={};oe(e.pageFilesLazy).forEach(({filePath:l,pageFile:u,globValue:c})=>{u=o[l]=o[l]??u;const f=c;tt(f),u.loadFile=async()=>{"fileExports"in u||(u.fileExports=await f(),or(u))}}),oe(e.pageFilesExportNamesLazy).forEach(({filePath:l,pageFile:u,globValue:c})=>{u=o[l]=o[l]??u;const f=c;tt(f),u.loadExportNames=async()=>{if(!("exportNames"in u)){const m=await f();s(b(m,"exportNames","string[]"),u.filePath),u.exportNames=m.exportNames}}}),oe(e.pageFilesEager).forEach(({filePath:l,pageFile:u,globValue:c})=>{u=o[l]=o[l]??u;const f=c;s(O(f)),u.fileExports=f}),oe(e.pageFilesExportNamesEager).forEach(({filePath:l,pageFile:u,globValue:c})=>{u=o[l]=o[l]??u;const f=c;s(O(f)),s(b(f,"exportNames","string[]"),u.filePath),u.exportNames=f.exportNames}),e.pageFilesList.forEach(l=>{o[l]=o[l]??jt(l)});const a=Object.values(o);return a.forEach(({filePath:l})=>{s(!l.includes("\\"))}),{pageFiles:a,pageConfigs:r,pageConfigGlobal:i}}function oe(e){const t=[];return Object.entries(e).forEach(([n,r])=>{s(hr.includes(n)),s(O(r)),Object.entries(r).forEach(([i,o])=>{const a=jt(i);s(a.fileType===n),t.push({filePath:i,pageFile:a,globValue:o})})}),t}function tt(e){s(z(e))}function Or(e){s(U(e)),e.forEach(t=>{s(O(t)),s(b(t,"pageId","string")),s(b(t,"routeFilesystem")),s(b(t,"configValuesSerialized"))})}function Tr(e){s(b(e,"configValuesSerialized"))}const K=I("setPageFiles.ts",{});function kr(e){const{pageFiles:t,pageConfigs:n,pageConfigGlobal:r}=$r(e);K.pageFilesAll=t,K.pageConfigs=n,K.pageConfigGlobal=r}async function xr(e,t){s(!K.pageFilesGetter),s(t===void 0);const{pageFilesAll:n,pageConfigs:r,pageConfigGlobal:i}=K;s(n&&r&&i);const o=Fr(n,r);return{pageFilesAll:n,allPageIds:o,pageConfigs:r,pageConfigGlobal:i}}function Fr(e,t){const n=e.filter(({isDefaultPageFile:o})=>!o).map(({pageId:o})=>o),r=xe(n),i=t.map(o=>o.pageId);return[...r,...i]}function Be(e,t){return Ht(e,t,!0)}function Wt(e,t){return Ht(e,t,!1)}function Ht(e,t,n){const r=n?"CLIENT_ONLY":"SERVER_ONLY",i=e.filter(p=>p.isRelevant(t)&&p.fileType!==".page.route").sort(Ir(n,t)),o=p=>{const E=i.filter(w=>w.pageId===t&&w.isEnv(p?"CLIENT_AND_SERVER":r));d(E.length<=1,`Merge the following files into a single file: ${E.map(w=>w.filePath).join(" ")}`);const C=E[0];return s(C===void 0||!C.isDefaultPageFile),C},a=o(!1),l=o(!0),u=p=>i.filter(E=>E.isRendererPageFile&&E.isEnv(p?"CLIENT_AND_SERVER":r))[0],c=u(!1),f=u(!0),m=i.filter(p=>p.isDefaultPageFile&&!p.isRendererPageFile&&(p.isEnv(r)||p.isEnv("CLIENT_AND_SERVER")));return[a,l,...m,c,f].filter(er)}function Ir(e,t){const n=e?"CLIENT_ONLY":"SERVER_ONLY",r=-1,i=1,o=0;return(a,l)=>{if(!a.isDefaultPageFile&&l.isDefaultPageFile)return r;if(!l.isDefaultPageFile&&a.isDefaultPageFile)return i;{const u=a.isRendererPageFile,c=l.isRendererPageFile;if(!u&&c)return r;if(!c&&u)return i;s(u===c)}{const u=nt(t,a.filePath),c=nt(t,l.filePath);if(u<c)return r;if(c<u)return i;s(u===c)}{if(a.isEnv(n)&&l.isEnv("CLIENT_AND_SERVER"))return r;if(l.isEnv(n)&&a.isEnv("CLIENT_AND_SERVER"))return i}return o}}function nt(e,t){G(e),G(t);let n=0;for(;n<e.length&&n<t.length&&e[n]===t[n];n++);const r=e.slice(n),i=t.slice(n),o=r.split("/").length,a=i.split("/").length;return o+a}function Bt(e,t){const n=t.find(r=>r.pageId===e);return s(t.length>0),s(n),n}function Nt(e){if(!e||U(e))return null;const{filePathToShowToUser:t}=e;return s(t),t}function Ar(e){const t=Nt(e);return s(t),t}function jr(e,t){const n={},r={},i={};e.forEach(h=>
3{Lr(h).forEach(({exportName:E,exportValue:C,isFromDefaultExport:w})=>{s(E!=="default"),i[E]=i[E]??[],i[E].push({exportValue:C,exportSource:`${h.filePath} > ${w?`\`export default { ${E} }\``:`\`export { ${E} }\``}`,filePath:h.filePath,_filePath:h.filePath,_fileType:h.fileType,_isFromDefaultExport:w})})});const o={},a={},l=(h,p)=>{o[p]=h,a[p]??(a[p]=[]),a[p].push(h)},u={configsStandard:{},configsCumulative:{},configsComputed:{}};t&&Object.entries(t.configValues).forEach(([h,p])=>{const{value:E}=p,C=Nt(p.definedAtData),w=Lt("Config",h,p.definedAtData);if(r[h]=r[h]??E,n[h]=n[h]??[],s(n[h].length===0),n[h].push({configValue:E,configDefinedAt:w,configDefinedByFile:C}),p.type==="standard"){const v={type:"configsStandard",value:p.value,definedAt:X(p.definedAtData,h)};l(v,h),u.configsStandard[h]=v}if(p.type==="cumulative"){const v={type:"configsCumulative",values:p.value.map((F,y)=>{const S=p.definedAtData[y];s(S);const k=X(S,h);return{value:F,definedAt:k}})};l(v,h),u.configsCumulative[h]=v}if(p.type==="computed"){const v={type:"configsComputed",value:p.value};l(v,h),u.configsComputed[h]=v}const R=h;i[R]=i[R]??[],i[R].push({exportValue:E,exportSource:w,filePath:C,_filePath:C,_fileType:null,_isFromDefaultExport:null})});const c=Wr(),f={};return Object.entries(i).forEach(([h,p])=>{p.forEach(({exportValue:E,_fileType:C,_isFromDefaultExport:w})=>{f[h]=f[h]??E,C===".page"&&!w&&(h in c||(c[h]=E))})}),s(!("default"in f)),s(!("default"in i)),{from:u,source:o,sources:a,config:r,configEntries:n,exports:f,exportsAll:i,pageExports:c}}function Lr(e){const{filePath:t,fileExports:n}=e;s(n),s(At(t));const r=[];return Object.entries(n).sort(qn(([i])=>i==="default")).forEach(([i,o])=>{let a=i==="default";if(a)if(gr(t))i="Page";else{d(O(o),`The ${g.cyan("export default")} of ${t} should be an object.`),Object.entries(o).forEach(([l,u])=>{sr(l,t),r.push({exportName:l,exportValue:u,isFromDefaultExport:a})});return}r.push({exportName:i,exportValue:o,isFromDefaultExport:a})}),r.forEach(({exportName:i,isFromDefaultExport:o})=>{s(!(o&&xt.includes(i)))}),r}function Wr(){return new Proxy({},{get(...e){return D()||$(!1,"`pageContext.pageExports` is outdated. Use `pageContext.exports` instead, see https://vike.dev/exports",{onlyOnce:!0,showStackTrace:!0}),Reflect.get(...e)}})}const Hr="modulepreload",Br=function(e){return"/landing/"+e},rt={},it=function(t,n,r){let i=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),a=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));i=Promise.all(n.map(l=>{if(l=Br(l),l in rt)return;rt[l]=!0;const u=l.endsWith(".css"),c=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${c}`))return;const f=document.createElement("link");if(f.rel=u?"stylesheet":Hr,u||(f.as="script"),f.crossOrigin="",f.href=l,a&&f.setAttribute("nonce",a),document.head.appendChild(f),u)return new Promise((m,h)=>{f.addEventListener("load",m),f.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${l}`)))})}))}return i.then(()=>t()).catch(o=>{const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=o,window.dispatchEvent(a),!a.defaultPrevented)throw o})},Ne={},Dt={},Nr={},he={},Dr=[],zt={},zr=[{pageId:"/src/pages",isErrorPage:void 0,routeFilesystem:{routeString:"/",definedBy:"/src/pages/"},loadConfigValuesAll:()=>it(()=>import("./src_pages.N4DqnWZZ.js"),__vite__mapDeps([0,1,2])),configValuesSerialized:{clientEntryLoaded:{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}},clientRouting:{type:"standard",definedAtData:{filePathToShowToUser:"/src/renderer/+config.ts",fileExportPathToShowToUser:["default","clientRouting"]},valueSerialized:{type:"js-serialized",value:!0}}}},{pageId:"/src/pages/_error",isErrorPage:!0,routeFilesystem:void 0,loadConfigValuesAll:()=>it(()=>import("./src_pages_error.DtzWi6qa.js"),__vite__mapDeps([3,1])),configValuesSerialized:{clientEntryLoaded:{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}},clientRouting:{type:"standard",definedAtData:{filePathToShowToUser:"/src/renderer/+config.ts",fileExportPathToShowToUser:["default","clientRouting"]},valueSerialized:{type:"js-serialized",value:!0}}}}],Vr={configValuesSerialized:{}},Ur=Object.assign({}),Gr={...Ur};Ne[".page"]=Gr;const Jr=Object.assign({}),Yr={...Jr};he[".page"]=Yr;const Kr=Object.assign({}),Mr={...Kr};he[".page.server"]=Mr;const qr=Object.assign({}),Xr={...qr};Dt[".page.route"]=Xr;const Qr=Object.assign({}),Zr={...Qr};Ne[".page.client"]=Zr;const ei=Object.assign({}),ti={...ei};he[".page.client"]=ti;const ni=Object.assign({}),ri={...ni}
3;zt[".page.server"]=ri;const ii=Object.freeze(Object.defineProperty({__proto__:null,neverLoaded:zt,pageConfigGlobalSerialized:Vr,pageConfigsSerialized:zr,pageFilesEager:Dt,pageFilesExportNamesEager:he,pageFilesExportNamesLazy:Nr,pageFilesLazy:Ne,pageFilesList:Dr},Symbol.toStringTag,{value:"Module"}));kr(ii);function Vt(){s(D())}function oi(){Vt(),te()}function si(){Vt()}function ot(e){const t=e/1e3;if(t<120){const n=st(t);return`${n} second${at(n)}`}{const n=t/60,r=st(n);return`${r} minute${at(r)}`}}function st(e){let t=e.toFixed(1);return t.endsWith(".0")&&(t=t.slice(0,-2)),t}function at(e){return e==="1"?"":"s"}const _e=I("utils/executeHook.ts",{userHookErrors:new WeakMap,pageContext:null});function B(e,t,n){const{hookName:r,hookFilePath:i,hookTimeout:{error:o,warning:a}}=t;let l,u;const c=new Promise((p,E)=>{l=C=>{f(),p(C)},u=C=>{f(),E(C)}}),f=()=>{m&&clearTimeout(m),h&&clearTimeout(h)},m=lt(a)&&setTimeout(()=>{$(!1,`The ${r}() hook defined by ${i} is slow: it's taking more than ${ot(a)} (https://vike.dev/hooksTimeout)`,{onlyOnce:!1})},a),h=lt(o)&&setTimeout(()=>{const p=Et(`The ${r}() hook defined by ${i} timed out: it didn't finish after ${ot(o)} (https://vike.dev/hooksTimeout)`);u(p)},o);return(async()=>{try{ai(n);const p=await e();l(p)}catch(p){O(p)&&_e.userHookErrors.set(p,{hookName:r,hookFilePath:i}),u(p)}})(),c}function lt(e){return!!e&&e!==1/0}function ai(e){_e.pageContext=e,Promise.resolve().then(()=>{_e.pageContext=null})}function De(e){const t=window.location.href,{searchOriginal:n,hashOriginal:r,pathname:i}=ne(t,"/");let o;return e!=null&&e.withoutHash?o=`${i}${n||""}`:o=`${i}${n||""}${r||""}`,s(o.startsWith("/")),o}function li(e){return typeof e=="string"&&ui(e)?`.${e}`:`[${JSON.stringify(e)}]`}function ui(e){return/^[a-z0-9\$_]+$/i.test(e)}si();function ci(){var r,i,o,a;const e=!!((i=(r=window.__REACT_DEVTOOLS_GLOBAL_HOOK__)==null?void 0:r.renderers)!=null&&i.size),t=!!((a=(o=window.__REACT_DEVTOOLS_GLOBAL_HOOK__)==null?void 0:o.rendererInterfaces)!=null&&a.size),n=!!window.__vite_plugin_react_preamble_installed__;return e||t||n}function ut(e,t){return!O(e)||!O(t)?!1:e.message===t.message}function M(e){window.location.href=e}function fi(e){return new Promise(t=>setTimeout(t,e))}function di(e,t){let n=!1;return()=>{n||(n=!0,setTimeout(()=>{n=!1,e()},t))}}function Ut(e){window.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&e()})}function gi(e){window.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()})}function be(e,t){s(e===t)}oi();function Gt(){let e=window.history.state;e||(e={_isVikeEnhanced:!0});let t=!1;"timestamp"in e||(t=!0,e.timestamp=Ue()),"scrollPosition"in e||(t=!0,e.scrollPosition=Ve()),"triggeredBy"in e||(e.triggeredBy="browser"),Jt(e),t&&Ge(e)}function ze(){const e=window.history.state||{};return Jt(e),e}function Ve(){return{x:window.scrollX,y:window.scrollY}}function Ue(){return new Date().getTime()}function ct(){const e=Ve(),t=ze();Ge({...t,scrollPosition:e})}function hi(e,t){if(t)Ge(ze(),e);else{const n=Ue();pi({timestamp:n,scrollPosition:null,triggeredBy:"vike",_isVikeEnhanced:!0},e)}}function Jt(e){if(s(O(e)),"timestamp"in e){const{timestamp:t}=e;s(typeof t=="number")}if("scrollPosition"in e){const{scrollPosition:t}=e;t!==null&&s(b(t,"x","number")&&b(t,"y","number"))}}function Ge(e,t){const n=t??null;window.history.replaceState(e,"",n)}function pi(e,t){window.history.pushState(e,"",t)}function mi(){const e=window.history.pushState.bind(window.history);window.history.pushState=(t={},...n)=>{d(t==null||O(t),"history.pushState(state) argument state must be an object");const r=yi(t)?t:{_isVikeEnhanced:!0,scrollPosition:Ve(),timestamp:Ue(),triggeredBy:"user",...t};return e(r,...n)}}function yi(e){return O(e)&&"_isVikeEnhanced"in e}function bi(){const e="vike_pageContext",t=document.getElementById(e);d(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;s(n);const r=We(n);
3return s(b(r,"_pageId","string")),s(b(r,"routeParams","string{}")),r}async function wi(e,t){const r=Wt(e,t).filter(o=>o.fileType===".page.server");return await Promise.all(r.map(async o=>{o.exportNames||(s(o.loadExportNames,t),await o.loadExportNames())})),{hasOnBeforeRenderServerSideOnlyHook:r.some(({exportNames:o})=>(s(o),o.includes("onBeforeRender")))}}function Si(e,t,n){const{value:r,definedAtData:i}=e;return n&&vi(r,n,t,i),e}function J(e,t,n){const r=e.configValues[t];return r?Si(r,t,n):null}function vi(e,t,n,r){s(e!==null);const i=typeof e;if(i===t)return;const o=nr(e),a=o!==null?`value ${g.cyan(o)}`:`type ${g.cyan(i)}`,u=`${Lt("Config",n,r)} has an invalid ${a}: it should be a ${g.cyan(t)} instead`;d(!1,u)}const Pi=I("getHook.ts",{});function L(e,t){if(!(t in e.exports))return null;const{hooksTimeout:n}=e.config,r=Ei(n,t),i=e.exports[t],o=e.exportsAll[t][0];if(s(o.exportValue===i),i===null)return null;const a=o.filePath;return s(a),s(!a.endsWith(" ")),Yt(i,{hookName:t,hookFilePath:a}),{hookFn:i,hookName:t,hookFilePath:a,hookTimeout:r}}function Ri(e,t){const n=e.configValues[t];if(!n)return null;const r=n.value;if(!r)return null;const i=Ar(n.definedAtData);s(i),Yt(r,{hookName:t,hookFilePath:i});const o=pe(t);return{hookFn:r,hookName:t,hookFilePath:i,hookTimeout:o}}function we(e,t){L(e,t)}function Yt(e,{hookName:t,hookFilePath:n}){s(t&&n),s(!t.endsWith(")")),d(z(e),`Hook ${t}() defined by ${n} should be a function`)}function Ei(e,t){const n=Ci(e);if(n===!1)return{error:!1,warning:!1};const r=n[t],i=pe(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 Ci(e){if(e===void 0)return{};if(e===!1)return!1;d(O(e),`Setting ${g.cyan("hooksTimeout")} should be ${g.cyan("false")} or an object`);const t={};return Object.entries(e).forEach(([n,r])=>{if(r===!1){t[n]={error:!1,warning:!1};return}d(O(r),`Setting ${g.cyan(`hooksTimeout.${n}`)} should be ${g.cyan("false")} or an object`);const[i,o]=["error","warning"].map(a=>{const l=r[a];if(l===void 0||l===!1)return l;const u=`Setting ${g.cyan(`hooksTimeout.${n}.${a}`)} should be`;return d(typeof l=="number",`${u} ${g.cyan("false")} or a number`),d(l>0,`${u} a positive number`),l});t[n]={error:i,warning:o}}),t}function pe(e){return e==="onBeforeRoute"?{error:5*1e3,warning:1*1e3}:Pi.isPrerendering?{error:2*60*1e3,warning:30*1e3}:(s(!e.toLowerCase().includes("prerender")),{error:30*1e3,warning:4*1e3})}function _i(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])=>Zn(n,r))),Object.defineProperties(e,t)}function $i(e){Oi(e),Ti(e)}function Oi(e){ur(e._pageId,e._pageConfigs)&&s(b(e,"is404","boolean"))}function Ti(e){if(e.is404===void 0||e.is404===null)return;const t=e.pageProps||{};if(!O(t)){$(!1,"pageContext.pageProps should be an object",{showStackTrace:!0,onlyOnce:!0});return}t.is404=t.is404||e.is404,e.pageProps=t}const ki="not-serializable",se=I("getPageContextProxyForUser.ts",{});function xi(e){return s([!0,!1].includes(e._hasPageContextFromServer)),s([!0,!1].includes(e._hasPageContextFromClient)),new Proxy(e,{get(t,n){const r=e[n],i=li(n);return d(r!==ki,`Can't access pageContext${i} on the client side. Because it can't be serialized, see server logs.`),Fi(e,n,i),r}})}function Fi(e,t,n){if(ji(t)||t in e||Ai(t)||!e._hasPageContextFromServer)return;const r=`pageContext${n} isn't defined on the client-side, see https://vike.dev/passToClient#error`;e._hasPageContextFromClient?$(!1,r,{onlyOnce:!1,showStackTrace:!0}):d(!1,r)}const Ii=["then","toJSON"];function Ai(e){return!!(Ii.includes(e)||typeof e=="symbol"||typeof e!="string"||e.startsWith("__v_"))}function ji(e){return se.prev===e||se.prev==="__v_raw"?!0:(se.prev=e,window.setTimeout(()=>{se.prev=void 0},0),!1)}function Je(e,t){{const i=e;s([!0,!1].includes(i.isHydration)),s([!0,!1,null].includes(i.isBackwardNavigation))}s("config"in e),s("configEntries"in e),s("exports"in e),s("exportsAll"in e),s("pageExports"in e),s(O(e.pageExports));const n=e.exports.Page;P(e,{Page:n}),Li(e),_i(e);const r=xi(e);return $i(e),r}function Li(e){Object.entries(e).forEach(([t,n])=>{delete e[t],e[t]=n})}const ft=["urlPathname","urlParsed"],Wi=["Page","pageExports","exports"];function Hi(e){[...Wi,...ft].forEach(n=>
3{n in e&&(ft.includes(n)?(s(n.startsWith("url")),$(!1,`pageContext.${n} is already available in the browser when using Client Routing; adding '${n}' to passToClient has no effect`,{onlyOnce:!0})):$(!1,`pageContext.${n} is a built-in that cannot be overriden; adding '${n}' to passToClient has no effect`,{onlyOnce:!0}),delete e[n])})}const Bi="/";function Ni(e,t,n){const{pathnameOriginal:r,searchOriginal:i,hashOriginal:o}=ne(e,Bi);e.startsWith("/")&&s(e===`${r}${i||""}${o||""}`,{url:e});const a=r.endsWith("/");let l;return l=r+(a?"":"/")+"index",s(l),l=l+t,`${l}${i||""}${o||""}`}const Di=".pageContext.json";function zi(e){return Ni(e,Di)}function Kt(e,{hookName:t,hookFilePath:n}){if(e==null)return;s(!t.endsWith(")"));const r=`The ${g.cyan("pageContext")} object provided by the ${t}() hook defined by ${n}`;d(O(e),`${r} should be an object (but it's ${g.cyan(`typeof pageContext === ${JSON.stringify(typeof e)}`)} instead)`),d(!("_objectCreatedByVike"in e),`${r} shouldn't be the whole ${g.cyan("pageContext")} object, see https://vike.dev/pageContext-manipulation#do-not-return-entire-pagecontext`),$(!("_pageId"in e),`${r} sets ${g.cyan("pageContext._pageId")} which means that Vike's routing is overriden. This is an experimental feature: make sure to contact a vike maintainer before using this.`,{onlyOnce:!0}),d(!("is404"in e),`${r} sets ${g.cyan("pageContext.is404")} which is forbidden, use ${g.cyan("throw render()")} instead, see https://vike.dev/render`)}function Vi(e,t,n){s(!n.endsWith(" "));const r=[],i=Object.keys(e);for(const o of i)t.includes(o)||r.push(o);d(r.length===0,[n,"returned an object with following unknown keys:",Qe(r)+".","Only following keys are allowed:",Qe(t)+"."].join(" "))}function Ui(e,t){if(e==null)return;const n=`The onBeforeRender() hook defined by ${t}`;d(N(e),`${n} should return a plain JavaScript object, ${g.cyan("undefined")}, or ${g.cyan("null")}`),Vi(e,["pageContext"],n),e.pageContext&&Kt(e.pageContext,{hookName:"onBeforeRender",hookFilePath:t})}function Gi(e,t){if(!N(e))return!1;for(const n of Object.keys(e))if(!t.includes(n))return!1;return!0}function Ji(e,t,n=r=>r){if(s(e.length>0),e.length===1)return n(e[0]);const r=e.slice(0,e.length-1),i=e[e.length-1];return r.map(n).join(", ")+`, ${t} `+n(i)}D()&&te();const Mt="The guard() hook defined by";async function Yi(e,t){let n;if(e._pageFilesAll.length>0?(s(e._pageConfigs.length===0),n=Ki(e._pageId,e._pageFilesAll)):n=L(e,"guard"),!n)return;const r=n.hookFn;let i=e;const o=t(e);o&&(i=o);const a=await B(()=>r(i),n,e);d(a===void 0,`${Mt} ${n.hookFilePath} returns a value, but guard() shouldn't return any value`)}function Ki(e,t){const n=t.find(u=>u.pageId===e&&u.fileType===".page.route");if(!n)return null;const{filePath:r,fileExports:i}=n;s(i);const o=i.guard;if(!o)return null;const a=r,l=pe("guard");return d(z(o),`${Mt} ${a} should be a function`),{hookFn:o,hookName:"guard",hookFilePath:a,hookTimeout:l}}function Mi(e){const t=new Error("AbortRender");return P(t,{_pageContextAbort:e,[qt]:!0}),t}const qt="_isAbortError";function dt(e){return typeof e=="object"&&e!==null&&qt in e}function qi(e){return e._urlRewrite||e._urlRedirect||e.abortStatusCode?(s(b(e,"_abortCall","string")),!0):!1}function Xi(e){Qi(e);const t={_urlRewrite:null};return e.forEach(n=>{Object.assign(t,n)}),t}function Qi(e){const t=[];e.forEach(n=>{const r=n._urlRewrite;{const i=t.indexOf(r);if(i!==-1){const o=[...t.slice(i),r].map(a=>`render('${a}')`).join(" => ");d(!1,`Infinite loop of render() calls: ${o}`)}}t.push(r)})}function Zi(e,t){const n=[e>0&&g.cyan("throw render('/some-url')"),t>0&&g.cyan("throw redirect('/some-url')")].filter(Boolean).join(" and ");d(e+t<=7,`Maximum chain length of 7 ${n} exceeded. Did you define an infinite loop of ${n}?`)}const eo="_pageContextInitIsPassedToClient",Xt="_isServerSideError",Qt=I("router/getPageContext.ts",{});function to(){const e=bi();return d(!("urlOriginal"in e),"Adding 'urlOriginal' to passToClient is forbidden"),tn(e),P(e,{_hasPageContextFromServer:!0}),e}async function no(e){P(e,{isHydration:!0,_hasPageContextFromClient:!1,_hasPageContextFromServer:!0});for(const t of["data","onBeforeRender"])if(en(t,e)){const n=await Zt(t,e);n&&s(!("urlOriginal"in n)),Object.assign(e,n)}return e}async function gt(e,t){P(e,{isHydration:!1,_hasPageContextFromClient:!1});let n=!1;if(!t&&await io(e)){const r=await oo(e);if("is404ServerSideRouted"in r)return{is404ServerSideRouted:!0};const{pageContextFromServer:i}=r;n=!0,s(!(Xt in i)),s(!("serverSideError"in i)),P(e,i)}P(e,{_hasPageContextFromServer:n});for(const r of["guard","data","onBeforeRender"])if(r==="guard")!t&&!n&&await Yi(e,i=>Je(i));else if(s(r==="data"||r==="onBeforeRender"),en(r,e)||!n){const i=await Zt(r,e);i&&s(!("urlOriginal"in i)),Object.assign(e,i)}else s(n);return P(e,{_hasPageContextFromServer:n}),{pageContextAugmented:e}}async function Zt(e,t){const n=L(t,e);if(!n)return null;const r=Je(t),i=await B(()=>n.hookFn(r),n,t),o={};if(e==="onBeforeRender"){Ui(i,n.hookFilePath);const a=i==null?void 0:i.pageContext;a&&(P(o,{_hasPageContextFromClient:!0}),P(o,a))}else{s(e==="data");const a={data:i};i&&P(o,{_hasPageContextFromClient:!0}),P(o,a)}return o}function ro(e){e[eo]&&(Qt.pageContextInitIsPassedToClient=!0)}async function io(e){return!!Qt.pageContextInitIsPassedToClient||await ht("data",e)||await ht("onBeforeRender",e)}async function ht(e,t){var n;if(t._pageConfigs.length>0){const r=Bt(t._pageId,t._pageConfigs),i=((n=J(r,`${e}Env`))==null?void 0:n.value)??{};return s(O(i)),!!i.server&&!i.client}else{if(e==="data")return!1;s(e==="onBeforeRender");const{hasOnBeforeRenderServerSideOnlyHook:r}=await wi(t._pageFilesAll,t._pageId);return r}}function en(e,t){var n;if(t._pageConfigs.length>0){const r=Bt(t._pageId,t._pageConfigs),i=((n=J(r,`${e}Env`))==null?void 0:n.value)??{};return s(O(i)),!!i.client&&!i.server}else return!1}async function oo(e){const t=zi(e._urlRewrite??e.urlOriginal),n=await fetch(t);{const o=n.headers.get("content-type"),a="application/json",l=o&&o.includes(a);if(!l&&n.status===404)return M(e.urlOriginal),{is404ServerSideRouted:!0};d(l,`Wrong Content-Type for ${t}: it should be ${a} but it's ${o} instead. Make sure to properly use pageContext.httpResponse.headers, see https://vike.dev/renderPage`)}const r=await n.text(),i=We(r);if(s(O(i)),qi(i))throw Mi(i);if("serverSideError"in i||Xt in i)throw Et("pageContext couldn't be fetched because an error occurred on the server-side");return s(b(i,"_pageId","string")),tn(i),{pageContextFromServer:i}}function tn(e){ro(e),Hi(e)}function so(e){s(typeof e.urlOriginal=="string"),sn(e);const t={};return ye(t,"urlPathname",{get:rn,enumerable:!0,configurable:!0}
3),ye(t,"url",{get:ao,enumerable:!1,configurable:!0}),ye(t,"urlParsed",{get:lo,enumerable:!0,configurable:!0}),t}function nn(e){let t,n;e.urlLogical?(t=e.urlLogical,n=!1):e._urlRewrite?(t=e._urlRewrite,n=!1):(t=e.urlOriginal,n=!0),s(t&&typeof t=="string");let r=e._urlHandler;r||(r=o=>o),t=r(t);const i=n?e._baseServer:"/";return ne(t,i)}function rn(){const{pathname:e}=nn(this),t=e;return s(t.startsWith("/")),t}function ao(){return $(!1,"`pageContext.url` is outdated. Use `pageContext.urlPathname`, `pageContext.urlParsed`, or `pageContext.urlOriginal` instead. (See https://vike.dev/migration/0.4.23 for more information.)",{onlyOnce:!0,showStackTrace:!0}),rn.call(this)}function lo(){const{hasBaseServer:e,...t}=nn(this),n=D(),r=o=>{$(n,`pageContext.urlParsed.${o} isn't available on the server-side (HTTP requests don't include the URL hash)`,{onlyOnce:!0,showStackTrace:!0})},i={...t,get hash(){return r("hash"),t.hash},get hashOriginal(){return r("hashOriginal"),t.hashOriginal},get hashString(){return $(!1,"pageContext.urlParsed.hashString has been renamed to pageContext.urlParsed.hashOriginal",{onlyOnce:!0,showStackTrace:!0}),r("hashString"),t.hashOriginal},get searchString(){return $(!1,"pageContext.urlParsed.searchString has been renamed to pageContext.urlParsed.searchOriginal",{onlyOnce:!0,showStackTrace:!0}),t.searchOriginal}};return ie(i,"hashString",!1),ie(i,"searchString",!1),n||(ie(i,"hash",!1),ie(i,"hashOriginal",!1)),i}function on(e){s(typeof e.urlOriginal=="string"),s(typeof e.urlPathname=="string"),s(N(e.urlParsed)),s(e.urlPathname===e.urlParsed.pathname),sn(e)}function sn(e){"urlPathname"in e?(s(typeof e.urlPathname=="string"),s(me(e,"urlPathname")),s(me(e,"urlParsed")),s(me(e,"url"))):(s(!("urlParsed"in e)),s(!("url"in e)))}function uo(e,t){const r=t.filter(({filesystemRoot:o})=>e.startsWith(o)).sort(ue(({filesystemRoot:o})=>o.length))[0];let i;if(r){const{filesystemRoot:o,urlRoot:a}=r,l={pageId:e,filesystemRoot:o,urlRoot:a};s(a.startsWith("/")&&e.startsWith("/")&&o.startsWith("/"),l),s(e.startsWith(o),l),o!=="/"?(s(!o.endsWith("/"),l),i=j(e,o.length,0)):i=e,s(i.startsWith("/"),l),i=a+(a.endsWith("/")?"":"/")+j(i,1,0)}else i=e;return s(i.startsWith("/")),i=i.split("/").filter(o=>o!=="pages"&&o!=="src"&&o!=="index").join("/"),s(!i.includes(".page.")),s(!i.endsWith(".")),i.endsWith("/index")&&(i=j(i,0,-6)),i===""&&(i="/"),s(i.startsWith("/")),s(!i.endsWith("/")||i==="/"),i}async function co(e,t,n){on(t);let r=e(t);if(an(r,`The Route Function ${n}`),r=await r,r===!1)return null;if(r===!0&&(r={}),d(N(r),`The Route Function ${n} should return a boolean or a plain JavaScript object (but it's ${g.cyan(`typeof result === ${JSON.stringify(typeof r)}`)} instead)`),"match"in r){const{match:a}=r;if(d(typeof a=="boolean",`The ${g.cyan("match")} value returned by the Route Function ${n} should be a boolean.`),!a)return null}let i=null;"precedence"in r&&(i=r.precedence,d(typeof i=="number",`The ${g.cyan("precedence")} value returned by the Route Function ${n} should be a number.`)),ln(r,`The ${g.cyan("routeParams")} object returned by the Route Function ${n} should`);const o=r.routeParams||{};return d(!("pageContext"in r),`Providing ${g.cyan("pageContext")} in Route Functions is prohibited, see https://vike.dev/route-function#cannot-provide-pagecontext`),s(N(o)),Object.keys(r).forEach(a=>{d(a==="match"||a==="routeParams"||a==="precedence",`The Route Function ${n} returned an object with an unknown property ${g.cyan(a)} (the known properties are ${g.cyan("match")}, ${g.cyan("routeParams")}, and ${g.cyan("precedence")})`)}
3),{precedence:i,routeParams:o}}function an(e,t){$(!tr(e),`${t} returned a promise, but asynchronous routing is deprecated and will be removed in the next major release, see https://vike.dev/route-function#async`,{onlyOnce:!0})}function pt(){const e=g.cyan("iKnowThePerformanceRisksOfAsyncRouteFunctions");$(!1,`${e} is deprecated and will be removed in the next major release`,{onlyOnce:!0})}function ln(e,t){s(t.endsWith(" should")),b(e,"routeParams")&&(s(t.endsWith(" should")),d(b(e,"routeParams","string{}"),`${t} be an object holding string values.`))}async function fo(e,t,n,r){await Promise.all(e.filter(l=>l.fileType===".page.route").map(l=>{var u;return(u=l.loadFile)==null?void 0:u.call(l)}));const{onBeforeRouteHook:i,filesystemRoots:o}=ho(e,t,n);return{pageRoutes:go(o,e,t,r),onBeforeRouteHook:i}}function go(e,t,n,r){const i=[];if(n.length>0){s(e===null);const o=!0;n.filter(a=>!a.isErrorPage).forEach(a=>{const l=a.pageId;let u=null;{const c="route",f=J(a,c);if(f){const m=f.value;s(f.definedAtData);const h=X(f.definedAtData,c);typeof m=="string"?u={pageId:l,comesFromV1PageConfig:o,routeString:m,routeDefinedAtString:h,routeType:"STRING"}:(s(z(m)),J(a,"iKnowThePerformanceRisksOfAsyncRouteFunctions","boolean")&&pt(),u={pageId:l,comesFromV1PageConfig:o,routeFunction:m,routeDefinedAtString:h,routeType:"FUNCTION"})}}if(!u){const{routeFilesystem:c}=a;s(c);const{routeString:f,definedBy:m}=c;s(c.routeString.startsWith("/")),u={pageId:l,routeFilesystemDefinedBy:m,comesFromV1PageConfig:o,routeString:f,routeDefinedAtString:null,routeType:"FILESYSTEM"}}s(u),i.push(u)})}if(n.length===0){s(e);const o=!1;r.filter(a=>!re(a)).forEach(a=>{const l=t.find(u=>u.pageId===a&&u.fileType===".page.route");if(!l||!("default"in l.fileExports)){const u=uo(a,e);s(u.startsWith("/")),s(!u.endsWith("/")||u==="/"),i.push({pageId:a,comesFromV1PageConfig:o,routeString:u,routeDefinedAtString:null,routeFilesystemDefinedBy:`${a}.page.*`,routeType:"FILESYSTEM"})}else{const{filePath:u,fileExports:c}=l;if(s(c.default),b(c,"default","string")){const f=c.default;d(f.startsWith("/"),`A Route String should start with a leading slash '/' but ${u} has \`export default '${f}'\`. Make sure to \`export default '/${f}'\` instead.`),i.push({pageId:a,comesFromV1PageConfig:o,routeString:f,routeDefinedAtString:u,routeType:"STRING"});return}if(b(c,"default","function")){const f=c.default;"iKnowThePerformanceRisksOfAsyncRouteFunctions"in c&&pt(),i.push({pageId:a,comesFromV1PageConfig:o,routeFunction:f,routeDefinedAtString:u,routeType:"FUNCTION"});return}d(!1,`The default export of ${u} should be a string or a function.`)}})}return i}function ho(e,t,n){if(t.length>0)return{onBeforeRouteHook:Ri(n,"onBeforeRoute"),filesystemRoots:null};let r=null;const i=[];return e.filter(o=>o.fileType===".page.route"&&o.isDefaultPageFile).forEach(({filePath:o,fileExports:a})=>{if(s(a),"onBeforeRoute"in a){d(b(a,"onBeforeRoute","function"),`\`export { onBeforeRoute }\` of ${o} should be a function.`);const{onBeforeRoute:l}=a,u="onBeforeRoute";r={hookFilePath:o,hookFn:l,hookName:u,hookTimeout:pe(u)}}"filesystemRoutingRoot"in a&&(d(b(a,"filesystemRoutingRoot","string"),`\`export { filesystemRoutingRoot }\` of ${o} should be a string.`),d(b(a,"filesystemRoutingRoot","string"),`\`export { filesystemRoutingRoot }\` of ${o} is \`'${a.filesystemRoutingRoot}'\` but it should start with a leading slash \`/\`.`),i.push({filesystemRoot:po(o),urlRoot:a.filesystemRoutingRoot}))}),{onBeforeRouteHook:r,filesystemRoots:i}}function po(e){s(e.startsWith("/")),s(!e.endsWith("/"));const t=e.split("/"),n=j(t,0,-1).join("/")||"/";return s(n.startsWith("/")),s(!n.endsWith("/")||n==="/"),n}function un(){const e="/landing";return s(mo(e)),e}function mo(e){return e.startsWith("/")}const Se=I("createPageContext.ts",{});async function cn(e){Se.pageFilesData||(Se.pageFilesData=await xr());const{pageFilesAll:t,allPageIds:n,pageConfigs:r,pageConfigGlobal:i}=Se.pageFilesData,{pageRoutes:o,onBeforeRouteHook:a}=await fo(t,r,i,n),l=un();s(Ae(l));const u={urlOriginal:e,_objectCreatedByVike:!0,_urlHandler:null,_urlRewrite:null,_baseServer:l,_pageFilesAll:t,_pageConfigs:r,_pageConfigGlobal:i,_allPageIds:n,_pageRoutes:o,_onBeforeRouteHook:a,_isPageContextObject:!0},c=so(u);return P(u,c),u}function fn(e,t){const n=e.filter(i=>i.pageId===t);return s(n.length<=1),n[0]??null}async function yo(e,t){if("isAllLoaded"in e&&!t)return e;const n=await e.loadConfigValuesAll(),r=Ce(n.configValuesSerialized);return Object.assign(e.configValues,r),P(e,{isAllLoaded:!0}),e}const dn="__whileFetchingAssets";async function $e(e,t,n){const r=Be(t,e),i=fn(n,e);let o;const a=!1;try{o=(await Promise.all([i&&yo(i,a),...r.map(f=>{var m;return(m=f.loadFile)==null?void 0:m.call(f)})]))[0]}catch(c){throw bo(c)&&Object.assign(c,{[dn]:!0}),c}const l=jr(r,o),u={};return P(u,l),P(u,{_pageFilesLoaded:r}),u}function Ye(e){return e?e[dn]===!0:!1}function bo(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}function gn(e){const t=e.getAttribute("href");return t===null||!Tt(t)||t===""||Gn(t)||vo(t)||So(e)||!Po(t)||!wo(e)}function wo(e){if(Ro()){const n=e.getAttribute("data-vike-link");return n!==null&&n!=="false"}else return!0}function So(e){const t=e.getAttribute("target"),n=e.getAttribute("rel");return t==="_blank"||t==="_external"||n==="external"||e.hasAttribute("download")}function vo(e){if(e.startsWith("#"))return!0;const t=n=>n.split("#")[0];return!!(e.includes("#")&&t(e)===t(window.location.href))}function Po(e){const t=un();s(Ae(t));const{hasBaseServer:n}=ne(e,t);return n}function Ro(){return!!window._disableAutomaticLinkInterception}function Eo(e,t){let n=Co(e,t);return{prefetchStaticAssets:n}}function Co(e,t){{const n=_o(t);if(n!==null)return n}if("prefetchLinks"in e.exports&&d(!1,"`export { prefetchLinks }` is deprecated, use `export { prefetchStaticAssets }` instead."),"prefetchStaticAssets"in e.exports){const{prefetchStaticAssets:n}=e.exports;if(n===!1)return!1;if(n==="hover")return"hover";if(n==="viewport")return"viewport";const r="prefetchStaticAssets value should be false, 'hover', or 'viewport'";d(N(n),r);const i=Object.keys(n);d(i.length===1&&i[0]==="when",r);const{when:o}=n;
3if(o==="HOVER"||o==="VIEWPORT"){const a=o.toLowerCase();return $(!1,`prefetchStaticAssets value \`{ when: '${o}' }\` is outdated: set prefetchStaticAssets to '${a}' instead`,{onlyOnce:!0}),a}d(!1,r)}return"hover"}function _o(e){const t=e.getAttribute("data-prefetch-static-assets"),n=e.getAttribute("data-prefetch");if(t===null&&n===null)return null;const r="The attribute data-prefetch is outdated, use data-prefetch-static-assets instead.";if(t){if(d(n===null,r),t==="hover"||t==="viewport")return t;if(t==="false")return!1;d(!1,`data-prefetch-static-assets has value "${t}" but it should instead be "false", "hover", or "viewport"`)}if(n){if(s(!t),$(!1,r,{onlyOnce:!0}),n==="true")return"viewport";if(n==="false")return"hover";d(!1,`data-prefetch has value "${n}" but it should instead be "true" or "false"`)}s(!1)}const hn=new Map;function $o(e){const t=pn(e);return hn.has(t)}function Oo(e){const t=pn(e);hn.set(t,!0)}function pn(e){return ne(e,"/").pathname}function q(e){return e.fileType===".css"?[]:e.exportNames?e.exportNames:(s(e.fileExports,e.filePath),Object.keys(e.fileExports))}function To({pageFilesClientSide:e,pageFilesServerSide:t,pageId:n}){return{isHtmlOnly:r(),isClientRouting:o()};function r(){return t.some(l=>l.pageId===n&&l.fileType===".page")?(i(),!1):!(!t.some(l=>l.pageId===n&&l.fileType===".page.server")||e.some(l=>l.pageId===n&&l.fileType===".page.client"&&q(l).includes("render")))}function i(){const a=e.some(l=>q(l).includes("render"));d(a,["No client-side `render()` hook found.","See https://vike.dev/render-modes for more information.",["Loaded client-side page files (none of them `export { render }`):",...e.map((l,u)=>` (${u+1}): ${l.filePath}`)].join(`
4`)].join(" "))}function o(){return e.some(l=>q(l).includes("clientRouting"))}}function ko({pageFilesClientSide:e,pageFilesServerSide:t,isHtmlOnly:n,isClientRouting:r}){let i=[];const o=t.filter(l=>!e.includes(l)),a=[];if(a.push(...e.map(l=>({id:l.filePath,onlyAssets:!1,eagerlyImported:!1}))),a.push(...o.map(l=>({id:l.filePath,onlyAssets:!0,eagerlyImported:!1}))),n)i=e.map(l=>l.filePath);else{const l=xo(r);a.push({id:l,onlyAssets:!1,eagerlyImported:!1}),i=[l]}return{clientEntries:i,clientDependencies:a}}function xo(e){return e?"@@vike/dist/esm/client/client-routing-runtime/entry.js":"@@vike/dist/esm/client/server-routing-runtime/entry.js"}function Fo(e,t){let n=Be(e,t);const r=Wt(e,t),{isHtmlOnly:i,isClientRouting:o}=To({pageFilesClientSide:n,pageFilesServerSide:r,pageId:t});i&&(n=n.filter(u=>u.isEnv("CLIENT_ONLY")&&!q(u).includes("render")),n=Ao(n));const{clientEntries:a,clientDependencies:l}=ko({pageFilesClientSide:n,pageFilesServerSide:r,isHtmlOnly:i,isClientRouting:o});return{isHtmlOnly:i,isClientRouting:o,clientEntries:a,clientDependencies:l,pageFilesClientSide:n,pageFilesServerSide:r}}async function Io(e,t,{sharedPageFilesAlreadyLoaded:n}){const r=Be(e,t);await Promise.all(r.map(async i=>{var o;s(i.isEnv("CLIENT_ONLY")||i.isEnv("CLIENT_AND_SERVER")),!(n&&i.isEnv("CLIENT_AND_SERVER"))&&await((o=i.loadExportNames)==null?void 0:o.call(i))}))}function Ao(e){const t=[];for(const n of e)if(t.push(n),q(n).includes("overrideDefaultPages"))break;return t}function jo(e,t,n){var r,i;if(e){const o=((r=J(e,"clientRouting","boolean"))==null?void 0:r.value)??!1;return{clientEntryLoaded:((i=J(e,"clientEntryLoaded","boolean"))==null?void 0:i.value)??!1,isClientRouting:o}}else{const{isHtmlOnly:o,isClientRouting:a}=Fo(t,n);return{clientEntryLoaded:!o,isClientRouting:a}}}async function mn(e,t){await Io(t._pageFilesAll,e,{sharedPageFilesAlreadyLoaded:!1});const n=fn(t._pageConfigs,e),{clientEntryLoaded:r,isClientRouting:i}=jo(n,t._pageFilesAll,e);return r&&i}const yn="@",Oe=":";function Lo(e,t="Invalid"){let n=`${t} Route String ${H(e)}`;d(e!=="",`${n} (empty string): set it to ${H("/")} instead`),d(["/","*"].includes(e[0]),`${n}: it should start with ${H("/")} or ${H("*")}`),d(!e.includes("**"),`${n}: set it to ${H(e.split("**").join("*"))} instead`)}function Te(e,t){Lo(e);const n=bn(e),r=n.map(m=>m.param?"[^/]+":m.glob?".*":rr(m.static)).map(m=>`(${m})`).join(""),i=new RegExp(`^${r}/?$`),o=t.match(i);if(!o)return null;const a={},[l,...u]=o;let c=0;const f=n.filter(m=>m.glob).length>1;
4return n.forEach((m,h)=>{let p=u[h];if(m.param&&(a[m.param]=p),m.glob){const E=`*${f?++c:""}`;a[E]=p}}),{routeParams:a}}function bn(e){const t=[],n=i=>{const o=t[t.length-1];o!=null&&o.static?o.static+=i:t.push({static:i})},r=e.split("/");return r.forEach((i,o)=>{o!==0&&n("/"),Wo(i)?($(!i.startsWith(Oe),`Outdated Route String ${H(e)}, use ${H(e.split(Oe).join(yn))} instead`,{onlyOnce:!0}),t.push({param:i.slice(1)})):i==="*"&&o===r.length-1&&e!=="*"&&e!=="/*"?t.push({glob:!0}):i.split("*").forEach((a,l)=>{l!==0&&t.push({glob:!0}),a!==""&&n(a)})}),t}function ae(e){const t=bn(e),n=l=>(l==null?void 0:l.split("/").filter(Boolean).length)||0;let r=0;for(const l of t){if(!l.static)break;r+=n(l.static)}const i=t.map(l=>n(l.static)).reduce((l,u)=>l+u,0),o=t.filter(l=>l.param).length,a=t.filter(l=>l.glob).length;return{numberOfStaticPartsBeginning:r,numberOfStaticParts:i,numberOfParams:o,numberOfGlobs:a}}function Wo(e){return e.startsWith(yn)||e.startsWith(Oe)}function mt(e){const n=Te(e,e);return s(n),Object.keys(n.routeParams).length===0}function H(e){return D()?`'${e}'`:(e===""&&(e="''"),g.cyan(e))}function Ho(e){e.sort(Bo).sort(W(t=>t.routeType==="FUNCTION"&&!!t.precedence&&t.precedence<0)).sort(W(t=>t.routeType==="STRING"&&mt(t.routeString)===!1)).sort(W(t=>t.routeType==="FUNCTION"&&!t.precedence)).sort(W(t=>t.routeType==="STRING"&&mt(t.routeString)===!0)).sort(W(t=>t.routeType==="FILESYSTEM")).sort(W(t=>t.routeType==="FUNCTION"&&!!t.precedence&&t.precedence>0))}function Bo(e,t){{const n=e.precedence??0,r=t.precedence??0;if(n!==r)return n>r?-1:1}if(!t.routeString||!e.routeString)return 0;{const r=ue(i=>ae(i).numberOfStaticPartsBeginning)(e.routeString,t.routeString);if(r!==0)return r}{const r=ue(i=>ae(i).numberOfStaticParts)(e.routeString,t.routeString);if(r!==0)return r}{const r=Mn(i=>ae(i).numberOfGlobs)(e.routeString,t.routeString);if(r!==0)return r}{const r=ue(i=>ae(i).numberOfParams)(e.routeString,t.routeString);if(r!==0)return r}return 0}async function No(e){const t={};if(!e._onBeforeRouteHook)return null;const n=await Do(e._onBeforeRouteHook,e);return n&&(P(t,n),b(t,"_pageId","string")||b(t,"_pageId","null"))?(b(t,"routeParams")?s(b(t,"routeParams","object")):P(t,{routeParams:{}}),P(t,{_routingProvidedByOnBeforeRouteHook:!0,_debugRouteMatches:"CUSTOM_ROUTING"}),t):(P(t,{_routingProvidedByOnBeforeRouteHook:!1}),t)}async function Do(e,t){let n=e.hookFn(t);an(n,`The onBeforeRoute() hook ${e.hookFilePath}`),n=await B(()=>n,e,t);const r=`The onBeforeRoute() hook defined by ${e.hookFilePath}`;if(d(n==null||Gi(n,["pageContext"])&&b(n,"pageContext"),`${r} should return ${g.cyan("null")}, ${g.cyan("undefined")}, or a plain JavaScript object ${g.cyan("{ pageContext: { /* ... */ } }")}`),n==null)return null;if(d(b(n,"pageContext","object"),`${r} returned ${g.cyan("{ pageContext }")} but pageContext should be a plain JavaScript object.`),b(n.pageContext,"_pageId")&&!b(n.pageContext,"_pageId","null")){const a=`${r} returned ${g.cyan("{ pageContext: { _pageId } }")} but ${g.cyan("_pageId")} should be`;d(b(n.pageContext,"_pageId","string"),`${a} a string or null`),d(t._allPageIds.includes(n.pageContext._pageId),`${a} ${Ji(t._allPageIds.map(l=>g.cyan(l)),"or")}`)}b(n.pageContext,"routeParams")&&ln(n.pageContext,`${r} returned ${g.cyan("{ pageContext: { routeParams } }")} but routeParams should`);const i=a=>`${r} returned ${g.cyan(`{ pageContext: { ${a} } }`)} which is deprecated. Return ${g.cyan("{ pageContext: { urlLogical } }")} instead.`;b(n.pageContext,"url")&&($(!1,i("url"),{onlyOnce:!0}),n.pageContext.urlLogical=n.pageContext.url,delete n.pageContext.url),b(n.pageContext,"urlOriginal")&&($(!1,i("urlOriginal"),{onlyOnce:!0}),n.pageContext.urlLogical=n.pageContext.urlOriginal,delete n.pageContext.urlOriginal),b(n.pageContext,"urlLogical")&&Yn(n.pageContext.urlLogical,`${r} returned ${g.cyan("{ pageContext: { urlLogical } }")} but ${g.cyan("urlLogical")}`),Kt(n.pageContext,{hookFilePath:e.hookFilePath,hookName:"onBeforeRoute"});const o={};return P(o,n.pageContext),o}var le;function yt(...e){var t;le||(le=(t=globalThis.__brillout_debug_createDebugger)==null?void 0:t.call(globalThis,"vike:routing")),le&&le(...e)}D()&&te();async function wn(e){yt("Pages routes:",e._pageRoutes),on(e);const t={},n=await No(e);if(n){if(n._routingProvidedByOnBeforeRouteHook)return s(n._pageId),n;P(t,n)}P(e,n);const r=e._allPageIds;d(r.length>0,"No page found. You must create at least one page."),s(e._pageFilesAll.length>0||e._pageConfigs.length>0);const{urlPathname:i}=e;s(i.startsWith("/"));const o=[];await Promise.all(e._pageRoutes.map(async l=>{const{pageId:u,routeType:c}=l;if(l.routeType==="FILESYSTEM"){const{routeString:f}=l,m=Te(f,i);
4if(m){const{routeParams:h}=m;o.push({pageId:u,routeParams:h,routeString:f,routeType:c})}return}if(l.routeType==="STRING"){const{routeString:f}=l,m=Te(f,i);if(m){const{routeParams:h}=m;s(c==="STRING"),o.push({pageId:u,routeString:f,routeParams:h,routeType:c})}return}if(l.routeType==="FUNCTION"){const{routeFunction:f,routeDefinedAtString:m}=l,h=await co(f,e,m);if(h){const{routeParams:p,precedence:E}=h;o.push({pageId:u,precedence:E,routeParams:p,routeType:c})}return}s(!1)})),Ho(o);const a=o[0]??null;if(yt(`Route matches for URL ${g.cyan(i)} (in precedence order):`,o),P(t,{_debugRouteMatches:o}),P(t,{_routeMatch:a}),!a)return P(t,{_pageId:null,routeParams:{}}),t;{const{routeParams:l}=a;s(N(l)),P(t,{_pageId:a.pageId,routeParams:a.routeParams})}return t}te();const bt=I("prefetch.ts",{linkPrefetchHandlerAdded:new WeakMap});async function zo(e,t){try{await $e(e,t._pageFilesAll,t._pageConfigs)}catch(n){if(Ye(n))ke(n,!0);else throw n}}function Vo(e){Oo(e.urlPathname),[...document.getElementsByTagName("A")].forEach(n=>{if(bt.linkPrefetchHandlerAdded.has(n))return;bt.linkPrefetchHandlerAdded.set(n,!0);const r=n.getAttribute("href");if(gn(n)||(s(r),$o(r)))return;const{prefetchStaticAssets:i}=Eo(e,n);if(i&&(i==="hover"&&(n.addEventListener("mouseover",()=>{ve(r)}),n.addEventListener("touchstart",()=>{ve(r)},{passive:!0})),i==="viewport")){const o=new IntersectionObserver(a=>{a.forEach(l=>{l.isIntersecting&&(ve(r),o.disconnect())})});o.observe(n)}})}async function ve(e){const t=await cn(e);let n;try{n=await wn(t)}catch{return}n!=null&&n._pageId&&await mn(n._pageId,t)&&await zo(n._pageId,t)}async function Uo(e,t){const n=Je(e);let r=null,i;r=L(e,"render"),i="render";{const l=L(e,"onRenderClient");l&&(r=l,i="onRenderClient")}if(!r){const l=Go(e);if(s(l),e._pageConfigs.length>0)d(!1,`No onRenderClient() hook defined for URL '${l}', but it's needed, see https://vike.dev/onRenderClient`);else{const u=e._pageFilesLoaded.filter(f=>f.fileType===".page.client");let c;u.length===0?c="No file `*.page.client.*` found for URL "+l:c="One of the following files should export a render() hook: "+u.map(f=>f.filePath).join(" "),d(!1,c)}}s(r);const o=r.hookFn;s(i);const a=await B(()=>o(n),r,e);d(a===void 0,`The ${i}() hook defined by ${r.hookFilePath} isn't allowed to return a value`)}function Go(e){let t;try{t=e.urlPathname??e.urlOriginal}catch{}return t=t??window.location.href,t}function Sn(e){if(e&&"x"in e){vn(e);return}e!=null&&e.preserveScroll||Jo()}function Jo(){const e=Yo();if(!e||e==="top")vn({x:0,y:0});else{const t=document.getElementById(e)||document.getElementsByName(e)[0];t&&t.scrollIntoView()}}function vn(e){const t=()=>window.scrollTo(e.x,e.y),n=()=>window.scrollX===e.x&&window.scrollY===e.y;n()||(t(),!n()&&requestAnimationFrame(()=>{t(),!n()&&setTimeout(async()=>{if(t(),n())return;const r=new Date().getTime();for(;;)if(await fi(10),t(),n()||new Date().getTime()-r>100)return},0)}))}function Yo(){let{hash:e}=window.location;return e===""?null:(s(e.startsWith("#")),e=e.slice(1),e)}function Ko(){window.addEventListener("scroll",di(ct,Math.ceil(1e3/3)),{passive:!0}),Ut(ct)}const V=I("onBrowserHistoryNavigation.ts",{previousState:ce()});function Mo(){window.addEventListener("popstate",async()=>{const e=ce(),t=e.historyState.scrollPosition||void 0,n=e.historyState.triggeredBy==="user",r=e.urlWithoutHash===V.previousState.urlWithoutHash,i=!e.historyState.timestamp||!V.previousState.historyState.timestamp?null:e.historyState.timestamp<V.previousState.historyState.timestamp;V.previousState=e,r&&!n?window.history.state===null?(Gt(),V.previousState=ce()):Sn(t):await Q({scrollTarget:t,isBackwardNavigation:i,isUserLandPushStateNavigation:n})})}function ce(){return{urlWithoutHash:De({withoutHash:!0}),historyState:ze()}}function qo(){V.previousState=ce()}const Pn=I("scrollRestoration.ts",{});function Xo(){wt(),Ut(wt),gi(()=>Pn.initialRenderIsDone&&Ke())}function Qo(){Pn.initialRenderIsDone=!0}function Ke(){"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual")}function wt(){"scrollRestoration"in window.history&&(window.history.scrollRestoration="auto")}const _=I("renderPageClientSide.ts",{renderCounter:0});async function Q(e){const{scrollTarget:t,urlOriginal:n=De(),over
4writeLastHistoryEntry:r=!1,isBackwardNavigation:i,pageContextsFromRewrite:o=[],redirectCount:a=0,isUserLandPushStateNavigation:l,isClientSideNavigation:u=!0}=e,{isRenderOutdated:c,setHydrationCanBeAborted:f,isFirstRender:m}=es();if(s(u===!m),Zi(o.length,a),_.clientRoutingIsDisabled){M(n);return}await h();return;async function h(){var F;const w=async y=>{await E({err:y})},R=await p();if(c())return;if(_.isFirstRenderDone){const{previousPageContext:y}=_;if(s(y),we(y,"onPageTransitionStart"),!_.isTransitioning){_.isTransitioning=!0;const S=L(y,"onPageTransitionStart");if(S){const k=S,{hookFn:x}=k;try{await B(()=>x(R),k,R)}catch(Y){await w(Y);return}if(c())return}}}let v;if(m)v=to();else{let y;try{y=await wn(R)}catch(x){await w(x);return}if(c())return;let S;if(!y._pageId)S=!1;else if(S=await mn(y._pageId,R),c())return;if(!S){M(n);return}s(b(y,"_pageId","string"));const k=y._pageId&&((F=_.previousPageContext)==null?void 0:F._pageId)&&y._pageId===_.previousPageContext._pageId;if(l&&k)return;v=y}s(!("urlOriginal"in v)),P(R,v);try{P(R,await $e(R._pageId,R._pageFilesAll,R._pageConfigs))}catch(y){if(St(y,R,m))return;await w(y);return}if(!c()&&(R.exports.hydrationCanBeAborted?f():$(!ci(),"You seem to be using React; we recommend setting hydrationCanBeAborted to true, see https://vike.dev/hydrationCanBeAborted",{onlyOnce:!0}),!c()))if(m){s(b(R,"_hasPageContextFromServer","true"));let y;try{y=await no(R)}catch(S){await w(S);return}if(c())return;be(R,y),await C(R)}else{let y;try{y=await gt(R,!1)}catch(S){await w(S);return}if(c()||"is404ServerSideRouted"in y)return;be(R,y.pageContextAugmented),await C(R)}}async function p(){const w=await cn(n);P(w,{isBackwardNavigation:i,isClientSideNavigation:u,_previousPageContext:_.previousPageContext});{const R=Xi(o);s(!("urlOriginal"in R)),P(w,R)}return w}async function E(w){const R=S=>{ut(S,w.err)||console.error(S)};if("err"in w){const{err:S}=w;s(S),dt(S)||console.error(S)}const v=await p();if(c())return;if(w.pageContextError&&P(v,w.pageContextError),"err"in w){const{err:S}=w;if(s(!("errorWhileRendering"in v)),v.errorWhileRendering=S,dt(S)){const x=S._pageContextAbort;if(x._urlRewrite){await Q({...e,scrollTarget:void 0,pageContextsFromRewrite:[...o,x]});return}if(x._urlRedirect){const Y=x._urlRedirect.url;if(Y.startsWith("/"))await Q({...e,scrollTarget:void 0,urlOriginal:Y,overwriteLastHistoryEntry:!1,isBackwardNavigation:!1,redirectCount:a+1});else{M(Y);return}return}s(x.abortStatusCode),s(!("urlOriginal"in x)),P(v,x),x.abortStatusCode===404&&P(v,{is404:!0})}else P(v,{is404:!1})}const F=lr(v._pageFilesAll,v._pageConfigs);if(!F)throw new Error("No error page defined.");P(v,{_pageId:F});try{P(v,await $e(v._pageId,v._pageFilesAll,v._pageConfigs))}catch(S){if(St(S,v,m))return;R(S);return}if(c())return;let y;try{y=await gt(v,!0)}catch(S){R(S);return}c()||"is404ServerSideRouted"in y||(be(v,y.pageContextAugmented),await C(v,w))}async function C(w,R){const v=async y=>{R?ut(y,R.err)||console.error(y):await E({err:y})};if(_.onRenderClientPromise&&(await _.onRenderClientPromise,s(_.onRenderClientPromise===void 0),c()))return;Zo(n,r),_.previousPageContext=w,s(_.onRenderClientPromise===void 0),_.onRenderClientPromise=(async()=>{let y;try{await Uo(w,!0)}catch(S){y=S}return _.onRenderClientPromise=void 0,_.isFirstRenderDone=!0,y})();const F=await _.onRenderClientPromise;if(s(_.onRenderClientPromise===void 0),!(F&&(await v(F),!R))){if(Vo(w),m&&!F){we(w,"onHydrationEnd");const y=L(w,"onHydrationEnd");if(y){const{hookFn:S}=y;try{await B(()=>S(w),y,w)}catch(k){if(await v(k),!R)return}if(c(!0))return}}if(!c(!0)){if(_.isTransitioning){_.isTransitioning=void 0;const{previousPageContext:y}=_;s(y),we(y,"onPageTransitionEnd");const S=L(y,"onPageTransitionEnd");if(S){const{hookFn:k}=S;try{await B(()=>k(w),S,w)}catch(x){if(await v(x),!R)return}if(c(!0))return}}Sn(t),Ke(),Qo()}}}}function Zo(e,t){De()!==e&&(Ke(),hi(e,t),qo())}function St(e,t,n){if(!Ye(e))return!1;if(n)throw ke(e,!1),e;return ke(e,!0),M(t.urlOriginal),!0}function ke(e,t){s(Ye(e)),_.clientRoutingIsDisabled=!0,t&&console.log(e),jn(!1,["Failed to fetch static asset.","This usually happens when a new frontend is deployed.","Falling back to Server Routing.","(The next page navigation will use Server Routing instead of Client Routing.)"].filter(
4Boolean).join(" "),{onlyOnce:!0})}function es(){const e=++_.renderCounter;s(e>=1);let t=!1;return{isRenderOutdated:i=>e===1&&!t&&!i?!1:e!==_.renderCounter,setHydrationCanBeAborted:()=>{t=!0},isFirstRender:e===1}}function vt(){return _.renderCounter}function ts(){document.addEventListener("click",ns)}async function ns(e){if(!rs(e))return;const t=is(e.target);if(!t)return;const n=t.getAttribute("href");if(gn(t))return;s(n),e.preventDefault();let r;{const i=t.getAttribute("keep-scroll-position");i!==null&&(r={preserveScroll:i!=="false"})}await Q({scrollTarget:r,urlOriginal:n,isBackwardNavigation:!1})}function rs(e){return e.button===0&&!e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey}function is(e){for(;e.tagName!=="A";){const{parentNode:t}=e;if(!t)return null;e=t}return e}async function os(){as();const e=ss();ts(),await e}function ss(){s(vt()===0);const e=Q({scrollTarget:{preserveScroll:!0},isBackwardNavigation:null,isClientSideNavigation:!1});return s(vt()===1),e}function as(){Xo(),Gt(),Ko(),mi(),Mo()}te();_n();os();
5//# sourceMappingURL=entry-client-routing.Rt29rCTw.js.map

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.