PageSourceSearch

https://doloffer.com/assets/entries/entry-client-routing.CePMRoR_.js

js doloffer.com collected 2026-09-25 20:35:45 UTC 167,822 bytes, 5,666 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/entries/pages_GuideDiscord.CE_nGb4t.js","assets/chunks/chunk-DWeE5Y0G.js","assets/chunks/chunk-DC5fQwvS.js","assets/chunks/chunk-Dxqvi9v3.js","assets/static/vike-react-b64a028b.BcWtY8Ol.css","assets/static/src_v2_styles_index-c047eaab.D9yH6Gw8.css","assets/chunks/chunk-BArghIwn.js","assets/chunks/chunk-C0TFbFtH.js","assets/entries/pages_aboutUs.CInV3kcb.js","assets/entries/pages_affiliate.Bl9f-M7d.js","assets/entries/pages_aml-policy.Cgnj4hW-.js","assets/entries/pages_blog.44YGRW5O.js","assets/chunks/chunk-vuFFcsqA.js","assets/chunks/chunk-BBbQcHMe.js","assets/chunks/chunk-BKApCE6t.js","assets/entries/pages_blog_-slug.Coq1b29_.js","assets/chunks/chunk-I930ZYhp.js","assets/chunks/chunk-C5iOjZdu.js","assets/entries/pages_contactUs.8yb-8lhV.js","assets/entries/pages_cooperate.CQgNVjBZ.js","assets/entries/pages_copyright.BpVaFymp.js","assets/entries/pages_help-recharge.CmK43nRV.js","assets/entries/pages_help-useGpt.B9pQtMVf.js","assets/entries/pages_help-useNetflix.CXyCqiRX.js","assets/entries/pages_help-ytbRegion.D-jcWGei.js","assets/entries/pages_index.DCZt-MI_.js","assets/entries/pages_privacy-policy.DZKHnXsh.js","assets/entries/pages_product_-slug.CLknIk3l.js","assets/chunks/chunk-0x1gBMBx.js","assets/entries/pages_refund-policy.DI4H0vQ3.js","assets/entries/pages_terms.Duvwdv5J.js","assets/entries/pages_-lang_GuideDiscord.BCQjQpcH.js","assets/entries/pages_-lang_aboutUs.DF_uytW5.js","assets/entries/pages_-lang_affiliate.RazzqSfl.js","assets/entries/pages_-lang_aml-policy.CRdGmQtX.js","assets/entries/pages_-lang_blog.Cqyj7Cj7.js","assets/entries/pages_-lang_blog_-slug.t3H6-sQ8.js","assets/entries/pages_-lang_contactUs.C-Z7jOKc.js","assets/entries/pages_-lang_cooperate.DnR1-maX.js","assets/entries/pages_-lang_copyright._Z_R-XKv.js","assets/entries/pages_-lang_help-recharge.Cs1Lh99W.js","assets/entries/pages_-lang_help-useGpt.CrWHC1oD.js","assets/entries/pages_-lang_help-useNetflix.BBRyJO-k.js","assets/entries/pages_-lang_help-ytbRegion.DIA1zTqN.js","assets/entries/pages_-lang_index.pc7R_DM_.js","assets/entries/pages_-lang_privacy-policy.3cVNMbxL.js","assets/entries/pages_-lang_product_-slug.Crm6tnuF.js","assets/entries/pages_-lang_refund-policy.CMG0XXkF.js","assets/entries/pages_-lang_terms.dYP7X8Jy.js","assets/entries/pages_spa.C5xTuQKw.js","assets/chunks/chunk-DwPmycG5.js"])))=>i.map(i=>d[i]);
2import { af as L, ag as h, ah as p, ai as C, aj as a, ak as w, al as Ct, am as U, an as Vn, _ as E, ao as Un, ap as Bn } from "../chunks/chunk-DC5fQwvS.js";
3import { W as Hn, __tla as __tla_0 } from "../chunks/chunk-BArghIwn.js";
4import "../chunks/chunk-C0TFbFtH.js";
5Promise.all([
6  (() => {
7    try {
8      return __tla_0;
9    } catch {
10    }
11  })()
12]).then(async () => {
13  function Y() {
14    return typeof window < "u" && typeof window.scrollY == "number";
15  }
16  const wt = L("utils/assertRouterType.ts", {});
17  function ne() {
18    Nn(Wn()), wt.isClientRouting = true;
19  }
20  function Wn() {
21    return wt.isClientRouting !== false;
22  }
23  function Nn(e) {
24    h(Y(), `${p.cyan("import { something } from 'vike/client/router'")} is forbidden on the server-side`, {
25      showStackTrace: true
26    }), 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.", {
27      showStackTrace: true,
28      onlyOnce: true
29    });
30  }
31  function zt() {
32    a(Y());
33  }
34  function Gn() {
35    zt(), ne();
36  }
37  function N(e) {
38    return e instanceof Function || typeof e == "function";
39  }
40  function W(e) {
41    return Array.isArray(e);
42  }
43  function Mn(e) {
44    return W(e) && e.every((t) => typeof t == "string");
45  }
46  function Kn(e) {
47    return w(e) && Object.values(e).every((t) => typeof t == "string");
48  }
49  function m(e, t, n) {
50    if (!w(e)) return false;
51    if (!(t in e)) return n === "undefined";
52    if (n === void 0) return true;
53    const i = e[t];
54    return n === "undefined" ? i === void 0 : n === "array" ? W(i) : n === "object" ? w(i) : n === "string[]" ? Mn(i) : n === "string{}" ? Kn(i) : n === "function" ? N(i) : W(n) ? typeof i == "string" && n.includes(i) : n === "null" ? i === null : n === "true" ? i === true : n === "fal
54se" ? i === false : typeof i === n;
55  }
56  function J(e) {
57    return typeof e != "object" || e === null ? false : Object.getPrototypeOf(e) === null ? true : e.constructor.name === "Object";
58  }
59  function Yn() {
60    var _a2, _b, _c, _d;
61    const e = !!((_b = (_a2 = window.__REACT_DEVTOOLS_GLOBAL_HOOK__) == null ? void 0 : _a2.renderers) == null ? void 0 : _b.size), t = !!((_d = (_c = window.__REACT_DEVTOOLS_GLOBAL_HOOK__) == null ? void 0 : _c.rendererInterfaces) == null ? void 0 : _d.size), n = !!window.__vite_plugin_react_preamble_installed__;
62    return e || t || n;
63  }
64  function Qe(e, t) {
65    return !w(e) || !w(t) ? false : e.message === t.message;
66  }
67  function y(e, t, n) {
68    t && (n || a(!("isPageContext" in t)), Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)));
69  }
70  function B(e, t, n) {
71    return typeof e == "string" ? et(e.split(""), t, n).join("") : et(e, t, n);
72  }
73  function et(e, t, n) {
74    const i = [];
75    let r = t >= 0 ? t : e.length + t;
76    a(r >= 0 && r <= e.length);
77    let o = n >= 0 ? n : e.length + n;
78    for (a(o >= 0 && o <= e.length); !(r === o || (r === e.length && (r = 0), r === o)); ) {
79      const s = e[r];
80      a(s !== void 0), i.push(s), r++;
81    }
82    return i;
83  }
84  function ce(e, t) {
85    a(Ot(e), e), a(t.startsWith("/"));
86    const { hashString: n, withoutHash: i } = Jn(e);
87    a(n === null || n.startsWith("#"));
88    const r = n === null ? "" : xt(n.slice(1)), { searchString: o, withoutSearch: s } = tt(i);
89    a(o === null || o.startsWith("?"));
90    let l = "";
91    if (o !== null) l = o;
92    else if (e.startsWith("#")) {
93      const g = jt();
94      l = g && tt(g).searchString || "";
95    }
96    const u = {}, d = {};
97    Array.from(new URLSearchParams(l)).forEach(([g, z]) => {
98      u[g] = z, d[g] = [
99        ...d.hasOwnProperty(g) ? d[g] : [],
100        z
101      ];
102    });
103    let { protocol: c, origin: f, pathnameAbsoluteWithBase: S } = Xn(s, t);
104    const R = s.slice((f || "").length);
105    ti(e, f, R, o, n);
106    let { pathname: P, isBaseMissing: I } = ei(S, t);
107    const x = Dt(f, P, o, n), $ = f ? f.slice(c.length) : null, { hostname: _, port: v } = Zn($, e);
108    return P = qn(P), a(P.startsWith("/")), {
109      href: x,
110      protocol: c,
111      hostname: _,
112      port: v,
113      origin: f,
114      pathname: P,
115      pathnameOriginal: R,
116      isBaseMissing: I,
117      search: u,
118      searchAll: d,
119      searchOriginal: o,
120      hash: r,
121      hashOriginal: n
122    };
123  }
124  function Jn(e) {
125    const [t, ...n] = e.split("#");
126    return {
127      hashString: [
128        "",
129        ...n
130      ].join("#") || null,
131      withoutHash: t
132    };
133  }
134  function tt(e) {
135    const [t, ...n] = e.split("?");
136    return {
137      searchString: [
138        "",
139        ...n
140      ].join("?") || null,
141      withoutSearch: t
142    };
143  }
144  function xt(e) {
145    try {
146      return decodeURIComponent(e);
147    } catch {
148    }
149    try {
150      return decodeURI(e);
151    } catch {
152    }
153    return e;
154  }
155  function qn(e) {
156    return e = e.replace(/\s+$/, ""), e = e.split("/").map((t) => xt(t).split("/").join("%2F")).join("/"), e;
157  }
158  function Xn(e, t) {
159    a(!e.includes("?") && !e.includes("#"));
160    {
161      const { protocol: n, origin: i, pathname: r }
161 = nt(e);
162      if (i) return {
163        protocol: n,
164        origin: i,
165        pathnameAbsoluteWithBase: r
166      };
167      a(r === e);
168    }
169    if (e.startsWith("/")) return {
170      protocol: null,
171      origin: null,
172      pathnameAbsoluteWithBase: e
173    };
174    {
175      const n = jt();
176      let i;
177      return n ? i = nt(n.split("?")[0].split("#")[0]).pathname : i = t, {
178        protocol: null,
179        origin: null,
180        pathnameAbsoluteWithBase: Qn(e, i)
181      };
182    }
183  }
184  function jt() {
185    var _a2;
186    return typeof window < "u" ? (_a2 = window == null ? void 0 : window.document) == null ? void 0 : _a2.baseURI : void 0;
187  }
188  function nt(e) {
189    if (De(e)) {
190      const { protocol: t, uriWithoutProtocol: n } = je(e);
191      a(t);
192      const [i, ...r] = n.split("/"), o = t + i;
193      return {
194        pathname: "/" + r.join("/"),
195        origin: o,
196        protocol: t
197      };
198    } else return {
199      pathname: e,
200      origin: null,
201      protocol: null
202    };
203  }
204  function Zn(e, t) {
205    const n = {
206      hostname: null,
207      port: null
208    };
209    if (!e) return n;
210    const i = e.split(":");
211    if (i.length > 1) {
212      const r = parseInt(i.pop(), 10);
213      a(r || r === 0, t), n.port = r;
214    }
215    return n.hostname = i.join(":"), n;
216  }
217  function je(e) {
218    const t = ":", [n, ...i] = e.split(t);
219    if (i.length === 0 || !/^[a-z][a-z0-9\+\-]*$/i.test(n)) return {
220      protocol: null,
221      uriWithoutProtocol: e
222    };
223    let r = n + t, o = i.join(t);
224    const s = "//";
225    return o.startsWith(s) && (r = r + s, o = o.slice(s.length)), {
226      protocol: r,
227      uriWithoutProtocol: o
228    };
229  }
230  function It(e) {
231    return [
232      "ipfs://",
233      "ipns://"
234    ].includes(e) ? false : e.endsWith("://");
235  }
236  function Qn(e, t) {
237    const n = t.split("/"), i = e.split("/");
238    let r = t.endsWith("/");
239    e.startsWith(".") && n.pop();
240    for (const s in i) {
241      const l = i[s];
242      l == "" && s === "0" || l != "." && (l == ".." ? n.pop() : (r = false, n.push(l)));
243    }
244    let o = n.join("/");
245    return r && !o.endsWith("/") && (o += "/"), o.startsWith("/") || (o = "/" + o), o;
246  }
247  function ei(e, t) {
248    a(e.startsWith("/")), a(Ie(t));
249    let n = e;
250    if (a(n.startsWith("/")), a(t.startsWith("/")), t === "/") return {
251      pathname: e,
252      isBaseMissing: false
253    };
254    let i = t;
255    return t.endsWith("/") && n === B(t, 0, -1) && (i = B(t, 0, -1), a(n === i)), n.startsWith(i) ? (a(n.startsWith("/") || n.startsWith("http")), a(n.startsWith(i)), n = n.slice(i.length), n.startsWith("/") || (n = "/" + n), a(n.startsWith("/")), {
256      pathname: n,
257      isBaseMissing: false
258    }) : {
259      pathname: e,
260      isBaseMissing: true
261    };
262  }
263  function Ie(e) {
264    return e.startsWith("/");
265  }
266  function ti(e, t, n, i, r) {
267    const o = Dt(t, n, i, r);
268    a(e === o);
269  }
270  function Dt(e, t, n, i) {
271    return `${e || ""}${t}${n || ""}${i || ""}`;
272  }
273  function Ot(e) {
274    return De(e) || e.startsWith("/") || kt(e);
275  }
276  function ni(e) {
277    return e.startsWith("/") || ri(e) || De(e);
278  }
279  function kt(e) {
280    return [
281      ".",
282      "?",
283      "#"
284    ].some((t) => e.startsWith(t)) || e === "";
285  }
286  function ii(e) {
287    return !e.startsWith("/") && !kt(e);
288  }
289  function De(e) {
290    const { protocol: t } = je(e);
291    return !!t && It(t);
292  }
293  function ri(e) {
294    const { protocol: t } = je(e);
295    return !!t && !It(e);
296  }
297  function oi(e, t) {
298    ai(e, t);
299  }
300  function ai(e, t, { isRedirectTarget: n } = {}) {
301    if (e.startsWith("/")) return;
302    let i = `${t} is ${p.string(e)} but it should start with ${p.string("/")}`;
303    if (n) {
304      if (ni(e)) return;
305      if (i += ` or a protocol (${p.string("http://")}, ${p.string("mailto:")}, ...)`, n === "unresolved") {
306        if (e === "*") return;
307        i += `, or be ${p.string("*")}`;
308      }
309    }
310    h(false, i);
311  }
312  function M(e) {
313    window.location.href = e;
314  }
315  function si(e) {
316    return new Promise((t) => setTimeout(t, e));
317  }
318  function li(e, t) {
319    let n = false;
320    return () => {
321      n || (n = true, setTimeout(() => {
322        n = false, e();
323      }, t));
324    };
325  }
326  function Ft(e) {
327    window.addEventListener("visibilitychange", () => {
328      document.visibilityState === "hidden" && e();
329    });
330  }
331  function ui(e) {
332    window.addEventListener("visibilitychange", () => {
333      document.visibilityState === "visible" && e();
334    });
335  }
336  function le(e, t) {
337    a(e === t);
338  }
339  function Lt() {
340    let e;
341    return {
342      promise: new Promise((n) => e = n),
343      resolve: e
344    };
345  }
346  const he = {};
347  function $t(e, t = 100, n = 5) {
348    const i = /* @__PURE__ */ new Date();
349    let r = he[e] ?? (he[e] = it(i));
350    i.getTime() - r.start.getTime() > n * 1e3 && (r = he[e] = it(i)), r.count++;
351    const s = `[Infinite Loop] Rendering ${r.count} times within ${n} seconds [${e}]`;
352    r.count > t && h(false, s), !r.warned && r.count > t * 0.5 && (C(false, s, {
353      onlyOnce: false,
354      showStackTrace: true
355    }), r.warned = true);
356  }
357  function it(e) {
358    return {
359      count: 0,
360      start: e
361    };
362  }
363  Gn();
364  const di = [
365    {
366      is: (e) => e === void 0,
367      match: (e) => e === "!undefined",
368      serialize: () => "!undefined",
369      deserialize: () => {
370      }
371    },
372    {
373      is: (e) => e === 1 / 0,
374      match: (e) => e === "!Infinity",
375      serialize: () => "!Infinity",
376      deserialize: () => 1 / 0
377    },
378    {
379      is: (e) => e === -1 / 0,
380      match: (e) => e === "!-Infinity",
381      serialize: () => "!-Infinity",
382      deserialize: () => -1 / 0
383    },
384    {
385      is: (e) => typeof e == "number" && isNaN(e),
386      match: (e) => e === "!NaN",
387      serialize: () => "!NaN",
388      deserialize: () => NaN
389    },
390    {
391      is: (e) => e instanceof Date,
392      match: (e) => e.startsWith("!Date:"),
393      serialize: (e) => "!Date:" + e.toISOString(),
394      deserialize: (e) => new Date(e.slice(6))
395    },
396    {
397      is: (e) => typeof e == "bigint",
398      match: (e) => e.startsWith("!BigInt:"),
399      serialize: (e) => "!BigInt:" + e.toString(),
400      deserialize: (e) => {
401        if (typeof BigInt > "u") throw new Error("Your JavaScript environement does not support BigInt. Consider adding a polyfill.");
402        return BigInt(e.slice(8));
403      }
404    },
405    {
406      is: (e) => e instanceof RegExp,
407      match: (e) => e.startsWith("!RegExp:"),
408      serialize: (e) => "!RegExp:" + e.toString(),
409      deserialize: (e) => {
410        e = e.slice(8);
411        const t = e.match(/\/(.*)\/(.*)?/), n = t[1], i = t[2];
412        return new RegExp(n, i);
413      }
414    },
415    {
416      is: (e) => e instanceof Map,
417      match: (e) => e.startsWith("!Map:"),
418      serialize: (e, t) => "!Map:" + t(Array.from(e.entries())),
419      deserialize: (e, t) => new Map(t(e.slice(5)))
420    },
421    {
422      is: (e) => e instanceof Set,
423      match: (e) => e.startsWith("!Set:"),
424      serialize: (e, t) => "!Set:" + t(Array.from(e.values())),
425      deserialize: (e, t) => new Set(t(e.slice(5)))
426    },
427    {
428      is: (e) => typeof e == "string" && e.startsWith("!"),
429      match: (e) => e.startsWith("!"),
430      serialize: (e) => "!" + e,
431      deserialize: (e) => e.slice(1)
432    }
433  ];
434  function Oe(e, t = {}) {
435    const n = JSON.parse(e);
436    return ke(n, t);
437  }
438  function ke(e, t = {}, n = []) {
439    return typeof e == "string" ? ci(e, t, n) : (typeof e == "object" && e !== null && Object.entries(e).forEach(([i, r]) => {
440      e[i] = ke(r, t, [
441        ...n,
442        i
443      ]);
444    }), e);
445  }
446  function ci(e, t, n) {
447    var _a2;
448    const i = (r) => Oe(r, t);
449    {
450      const r = (_a2 = t.reviver) == null ? void 0 : _a2.call(t, n, e, i);
451      if (r) {
452        if (typeof r.replacement != "string") return r.replacement;
453        if (e = r.replacement, r.resolved) return e;
454      }
455    }
456    for (const { match: r, deserialize: o } of di) if (r(e)) return o(e, i);
457    return e;
458  }
459  const fi = "vike_pageContext", gi = "vike_globalContext";
460  function pi() {
461    const e = Vt(fi);
462    return a(m(e, "pageId", "string")), a(m(e, "routeParams", "string{}")), e;
463  }
464  function hi() {
465    return Vt(gi);
466  }
467  function Vt(e) {
468    const t = document.getElementById(e);
469    h(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)`);
470    const n = t.textContent;
471    return a(n), Oe(n);
472  }
473  function ue(e) {
474    return (t, n) => {
475      const i = e(t), r = e(n);
476      return i === r ? 0 : i > r ? -1 : 1;
477    };
478  }
479  function yi(e) {
480    return (t, n) => {
481      const i = e(t), r = e(n);
482      return i === r ? 0 : i < r ? -1 : 1;
483    };
484  }
485  function G(e) {
486    return (t, n) => {
487      const i = e(t), r = e(n);
488      if (a([
489        true,
490        false,
491        null
492      ].includes(i)), a([
493        true,
494        false,
495        null
496      ].includes(r)), i === r) return 0;
497      if (i === true || r === false) return -1;
498      if (r === true || i === false) return 1;
499      a(false);
500    };
501  }
502  function mi(e) {
503    return G((t) => {
504      const n = e(t);
505      return n === null ? null : !n;
506    });
507  }
508  function vi(e, t) {
509    return e.toLowerCase() < t.toLowerCase() ? -1 : e.toLowerCase() > t.toLowerCase() ? 1 : 0;
510  }
511  function Si(e) {
512    return e == null;
513  }
514  function Pi(e) {
515    return !Si(e);
516  }
517  function rt(e) {
518    return "[" + e.map((t) => "'" + t + "'").join(", ") + "]";
519  }
520  function ye(e, t) {
521    const n = Object.getOwnPropertyDescriptor(e, t);
522    return !!n && !("value" in n) && !!n.get;
523  }
524  function Ei(e) {
525    return typeof e == "object" && e !== null && "then" in e && N(e.then);
526  }
527  function Ri(e) {
528    return [
529      null,
530      void 0
531    ].includes(e) ? String(e) : [
532      "boolean",
533      "number",
534      "string"
535    ].includes(typeof e) ? JSON.stringify(e) : null;
536  }
537  function _i(e) {
538    return e.replace(/[/\-\\^$*+?.()|[\]{}]/g, "\\$&");
539  }
540  function re(e, t, n) {
541    const i = Object.getOwnPropertyDescriptor(e, t);
542    Object.defineProperty(e, t, {
543      ...i,
544      enumerable: n
545    });
546  }
547  function me(e, t, { get: n, ...i }) {
548    Object.defineProperty(e, t, {
549      ...i,
550      get: n
551    });
552  }
553  const Ut = [
554    "js",
555    "ts",
556    "cjs",
557    "cts",
558    "mjs",
559    "mts"
560  ], Ai = [
561    "jsx",
562    "tsx",
563    "cjsx",
564    "ctsx",
565    "mjsx",
566    "mtsx"
567  ], Bt = [
568    "vue",
569    "svelte",
570    "marko",
571    "md",
572    "mdx"
573  ], Ti = [
574    ...Ut,
575    ...Ai,
576    ...Bt
577  ];
578  function Ht(e) {
579    const t = Ti.some((n) => e.endsWith("." + n));
580    return bi(e) && a(t), t;
581  }
582  function bi(e) {
583    const t = /\.(c|m)?(j|t)s$/.test(e), n = Ut.some((i) => e.endsWith("." + i));
584    return a(t === n), t;
585  }
586  function Ci(e) {
587    return Bt.some((t) => e.endsWith("." + t));
588  }
589  function Fe(e, t) {
590    return Nt(e, t, true);
591  }
592  function Wt(e, t) {
593    return Nt(e, t, false);
594  }
595  function Nt(e, t, n) {
596    const i = n ? "CLIENT_ONLY" : "SERVER_ONLY", r = e.filter((R) => R.isRelevant(t) && R.fileType !== ".page.route").sort(wi(n, t)), o = (R) => {
597      const P = r.filter((x) => x.pageId === t && x.isEnv(R ? "CLIENT_AND_SERVER" : i));
598      h(P.length <= 1, `Merge the following files into a single file: ${P.map((x) => x.filePath).join(" ")}`);
599      const I = P[0];
600      return a(I === void 0 || !I.isDefaultPageFile), I;
601    }, s = o(false), l = o(true), u = (R) => r.filter((P) => P.isRendererPageFile && P.isEnv(R ? "CLIENT_AND_SERVER" : i))[0], d = u(false), c = u(true), f = r.filter((R) => R.isDefaultPageFile && !R.isRendererPageFile && (R.isEnv(i) || R.isEnv("CLIENT_AND_SERVER")));
602    return [
603      s,
604      l,
605      ...f,
606      d,
607      c
608    ].filter(Pi);
609  }
610  function wi(e, t) {
611    const n = e ? "CLIENT_ONLY" : "SERVER_ONLY", i = -1, r = 1, o = 0;
612    return (s, l) => {
613      if (!s.isDefaultPageFile && l.isDefaultPageFile) return i;
614      if (!l.isDefaultPageFile && s.isDefaultPageFile) return r;
615      {
616        const u = s.isRendererPageFile, d = l.isRendererPageFile;
617        if (!u && d) return i;
618        if (!d && u) return r;
619        a(u === d);
620      }
621      {
622        const u = ot(t, s.filePath), d = ot(t, l.filePath);
623        if (u < d) return i;
624        if (d < u) return r;
625        a(u === d);
626      }
627      {
628        if (s.isEnv(n) && l.isEnv("CLIENT_AND_SERVER")) return i;
629        if (l.isEnv(n) && s.isEnv("CLIENT_AND_SERVER")) return r;
630      }
631      return o;
632    };
633  }
634  function ot(e, t) {
635    let n = 0;
636    for (; n < e.length && n < t.length && e[n] === t[n]; n++) ;
637    const i = e.slice(n), r = t.slice(n), o = i.split("/").length, s = r.split("/").length;
638    return o + s;
639  }
640  async function zi(e, t) {
641    const i = Wt(e, t).filter((o) => o.fileType === ".page.server");
642    return await Promise.all(i.map(async (o) => {
643      o.exportNames || (a(o.loadExportNames, t), await o.loadExportNames());
644    })), {
645      hasOnBeforeRenderServerSideOnlyHook: i.some(({ exportNames: o }) => (a(o), o.includes("onBeforeRender")))
646    };
647  }
648  function Gt(e, t) {
649    const n = t.find((i) => i.pageId === e);
650    return a(t.length > 0), a(n), n;
651  }
652  function Mt(e) {
653    if (!e || W(e) || e.definedBy) return null;
654    const { filePathToShowToUser: t } = e;
655    return a(t), t;
656  }
657  function Kt(e) {
658    const t = Mt(e);
659    return a(t), t;
660  }
661  function xi(e, t) {
662    if (!e) return null;
663    let [n, ...i] = e;
664    if (!n || i.length === 0 && [
665      "*",
666      "default",
667      t
668    ].includes(n)) return null;
669    a(n !== "*");
670    let r = "", o = "";
671    return n === "default" ? r = "export default" : (r = "export", i = [
672      n,
673      ...i
674    ]), i.forEach((l) => {
675      r = `${r} { ${l}`, o = ` }${o}`;
676    }), r + o;
677  }
678  function ji(e, t, n) {
679    return `${Pe(e, t)} at ${Q(n, t)}`;
680  }
681  function Yt(e, t, n) {
682    return n ? `${Pe(e, t)} at ${Q(n, t)}` : `${Pe(e, t)} internally`;
683  }
684  function Pe(e, t) {
685    return `${e} ${p.cyan(t)} defined`;
686  }
687  function Q(e, t) {
688    let n;
689    return W(e) ? n = e : n = [
690      e
691    ], a(n.length >= 1), n.map((r) => {
692      if (r.definedBy) return Ii(r, t);
693      const { filePathToShowToUser: o, fileExportPathToShowToUser: s } = r;
694      let l = o;
695      const u = xi(s, t);
696      return u && (l = `${l} > ${p.cyan(u)}`), l;
697    }).join(" / ");
698  }
699  function Ii(e, t) {
700    if (e.definedBy === "api") return `API call ${p.cyan(`${e.operation}({ vikeConfig: { ${t} } })`)}`;
701    const { definedBy: n } = e;
702    if (n === "cli") return `CLI option ${p.cyan(`--${t}`)}`;
703    if (n === "env") return `environment variable ${p.cyan(`VIKE_CONFIG="{${t}}"`)}`;
704    a(false);
705  }
706  function Di(e, t, n) {
707    const { value: i, definedAtData: r } = e;
708    return n && Oi(i, n, t, r), e;
709  }
710  function Oi(e, t, n, i) {
711    a(e !== null);
712    const r = typeof e;
713    if (r === t) return;
714    const o = Ri(e), s = o !== null ? `value ${p.cyan(o)}` : `type ${p.cyan(r)}`, u = `${Yt("Config", n, i)} has an invalid ${s}: it should be a ${p.cyan(t)} instead`;
715    h(false, u);
716  }
717  function q(e, t, n) {
718    const i = e.configValues[t];
719    return i ? Di(i, t, n) : null;
720  }
721  const ki = L("hooks/getHook.ts", {});
722  function H(e, t) {
723    if (!(t in e.exports)) return null;
724    const { hooksTimeout: n } = e.config, i = Ui(n, t), r = e.exports[t];
725    if (r === null) return null;
726    const o = e.exportsAll[t][0];
727    a(o.exportValue === r);
728    const s = o.filePath;
729    return a(s), Le(r, t, s, i);
730  }
731  function Fi(e, t) {
732    const n = e.configValues[t];
733    if (!(n == null ? void 0 : n.value)) return null;
734    const { hookFn: i, hookFilePath: r } = $i(n), o = Jt(t);
735    return Le(i, t, r, o);
736  }
737  function Li(e, t) {
738    const n = e.configValues[t];
739    if (!(n == null ? void 0 : n.value)) return [];
740    const i = n.value;
741    return a(W(i)), i.map((r, o) => {
742      const s = r, l = Jt(t);
743      a(W(n.definedAtData));
744      const u = Kt(n.definedAtData[o]);
745      return Le(s, t, u, l);
746    });
747  }
748  function Jt(e) {
749    return fe(e);
750  }
751  function Le(e, t, n, i) {
752    return a(n), Vi(e, {
753      hookName: t,
754      hookFilePath: n
755    }), {
756      hookFn: e,
757      hookName: t,
758      hookFilePath: n,
759      hookTimeout: i
760    };
761  }
762  function $i(e) {
763    const t = e.value;
764    a(t);
765    const n = Kt(e.definedAtData);
766    return {
767      hookFn: t,
768      hookFilePath: n
769    };
770  }
771  function ve(e, t) {
772    H(e, t);
773  }
774  function Vi(e, { hookName: t, hookFilePath: n }) {
775    a(t && n), a(!t.endsWith(")")), a(!n.endsWith(" ")), h(N(e), `Hook ${t}() defined by ${n} should be a function`);
776  }
777  function Ui(e, t) {
778    const n = Bi(e);
779    if (n === false) return {
780      error: false,
781      warning: false
782    };
783    const i = n[t], r = fe(t);
784    return (i == null ? void 0 : i.error) !== void 0 && (r.error = i.error), (i == null ? void 0 : i.warning) !== void 0 && (r.warning = i.warning), r;
785  }
786  function Bi(e) {
787    if (e === void 0) return {};
788    if (e === false) return false;
789    h(w(e), `Setting ${p.cyan("hooksTimeout")} should be ${p.cyan("false")} or an object`);
790    const t = {};
791    return Object.entries(e).forEach(([n, i]) => {
792      if (i === false) {
793        t[n] = {
794          error: false,
795          warning: false
796        };
797        return;
798      }
799      h(w(i), `Setting ${p.cyan(`hooksTimeout.${n}`)} should be ${p.cyan("false")} or an object`);
800      const [r, o] = [
801        "error",
802        "warning"
803      ].map((s) => {
804        const l = i[s];
805        if (l === void 0 || l === false) return l;
806        const u = `Setting ${p.cyan(`hooksTimeout.${n}.${s}`)} should be`;
807        return h(typeof l == "number", `${u} ${p.cyan("false")} or a number`), h(l > 0, `${u} a positive number`), l;
808      });
809      t[n] = {
810        error: r,
811        warning: o
812      };
813    }), t;
814  }
815  function fe(e) {
816    return e === "onBeforeRoute" ? {
817      error: 5 * 1e3,
818      warning: 1 * 1e3
819    } : ki.isPrerendering ? {
820      error: 2 * 60 * 1e3,
821      warning: 30 * 1e3
822    } : (a(!e.toLowerCase().includes("prerender")), {
823      error: 30 * 1e3,
824      warning: 4 * 1e3
825    });
826  }
827  function Hi() {
828    zt();
829  }
830  function Wi(e) {
831    return typeof e == "string" && Ni(e) ? `.${e}` : `[${JSON.stringify(e)}]`;
832  }
833  function Ni(e) {
834    return /^[a-z0-9\$_]+$/i.test(e);
835  }
836  Hi();
837  const Gi = "__VIKE__NOT_SERIALIZABLE__";
838  function Mi(e) {
839    return new Proxy(e, {
840      get(t, n) {
841        const i = e[n], r = Wi(n);
842        return h(i !== Gi, `Can't access pageContext${r} on the client side. Because it can't be serialized, see server logs.`), i;
843      }
844    });
845  }
846  function Ki(e, t) {
847    if (t.length > 0) {
848      const i = t.filter((r) => r.isErrorPage);
849      return i.length === 0 ? null : (h(i.length === 1, "Only one error page can be defined"), i[0].pageId);
850    }
851    const n = Ct(e.map(({ pageId: i }) => i).filter((i) => ie(i)));
852    if (h(n.length <= 1, `Only one _error.page.js is allowed, but found several: ${n.join(" ")}`), n.length > 0) {
853      const i = n[0];
854      return a(i), i;
855    }
856    return null;
857  }
858  function ie(e, t) {
859    return a(!e.includes("\\")), e.includes("/_error");
860  }
861  function Yi(e, t) {
862    if (t.length > 0) {
863      const n = t.find((i) => i.pageId === e);
864      return a(n), !!n.isErrorPage;
865    } else return ie(e);
866  }
867  function Ji(e) {
868    qi(e), Xi(e);
869  }
870  function qi(e) {
871    Yi(e.pageId, e._pageConfigs) && a(m(e, "is404", "boolean"));
872  }
873  function Xi(e) {
874    if (e.is404 === void 0 || e.is404 === null) return;
875    const t = e.pageProps || {};
876    if (!w(t)) {
877      C(false, "pageContext.pageProps should be an object", {
878        showStackTrace: true,
879        onlyOnce: true
880      });
881      return;
882    }
883    t.is404 = t.is404 || e.is404, e.pageProps = t;
884  }
885  function Zi(e) {
886    a(e.pageId), a("config" in e), a("configEntries" in e), Ji(e), "_pageId" in e || Object.defineProperty(e, "_pageId", {
887      get() {
888        return C(false, "pageContext._pageId has been renamed to pageContext.pageId", {
889          showStackTrace: true,
890          onlyOnce: true
891        }), e.pageId;
892      },
893      enumerable: false
894    }), Qi(e);
895  }
896  function Qi(e) {
897    let t = Object.getOwnPropertyDescriptors(e);
898    for (const n of Object.keys(e)) delete e[n];
899    t = Object.fromEntries(Object.entries(t).sort(([n], [i]) => vi(n, i))), Object.defineProperties(e, t);
900  }
901  function $e(e, t) {
902    {
903      const r = e;
904      a([
905        true,
906        false
907      ].includes(r.isHydration)), a([
908        true,
909        false,
910        null
911      ].includes(r.isBackwardNavigation));
912    }
913    const n = e.config.Page || e.exports.Page;
914    return y(e, {
915      Page: n
916    }), er(e), Zi(e), Mi(e);
917  }
918  function er(e) {
919    tr(e);
920  }
921  function tr(e) {
922    Object.entries(e).forEach(([t, n]) => {
923      delete e[t], e[t] = n;
924    });
925  }
926  const at = [
927    "urlPathname",
928    "urlParsed"
929  ], nr = [
930    "Page",
931    "pageExports",
932    "exports"
933  ];
934  function ir(e) {
935    [
936      ...nr,
937      ...at
938    ].forEach((n) => {
939      n in e && (at.includes(n) ? (a(n.startsWith("url")), C(false, `pageContext.${n} is already available in the browser when using Client Routing; adding '${n}' to passToClient has no effect`, {
940        onlyOnce: true
941      })) : C(false, `pageContext.${n} is a built-in that cannot be overriden; adding '${n}' to passToClient has no effect`, {
942        onlyOnce: true
943      }), delete e[n]);
944    });
945  }
946  const rr = "/";
947  function or(e, t, n) {
948    const { pathnameOriginal: i, searchOriginal: r, hashOriginal: o } = ce(e, rr);
949    e.startsWith("/") && a(e === `${i}${r || ""}${o || ""}`, {
950      url: e
951    });
952    const s = i.endsWith("/");
953    let l;
954    return l = i + (s ? "" : "/") + "index", a(l), l = l + t, `${l}${r || ""}${o || ""}`;
955  }
956  const ar = ".pageContext.json";
957  function sr(e) {
958    return or(e, ar);
959  }
960  function qt(e, { hookName: t, hookFilePath: n }) {
961    if (e == null) return;
962    a(!t.endsWith(")"));
963    const i = `The ${p.cyan("pageContext")} object provided by the ${t}() hook defined by ${n}`;
964    h(w(e), `${i} should be an object (but it's ${p.cyan(`typeof pageContext === ${JSON.stringify(typeof e)}`)} instead)`), h(!("isPageContext" in e), `${i} shouldn't be the whole ${p.cyan("pageContext")} object, see https://vike.dev/pageContext-manipulation#do-not-return-entire-pagecontext`), C(!("pageId" in e), `${i} sets ${p.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.`, {
965      onlyOnce: true
966    }), h(!("is404" in e), `${i} sets ${p.cyan("pageContext.is404")} which is forbidden, use ${p.cyan("throw render()")} instead, see https://vike.dev/render`);
967  }
968  function lr(e, t, n) {
969    a(!n.endsWith(" "));
970    const i = [], r = Object.keys(e);
971    for (const o of r) t.includes(o) || i.push(o);
972    h(i.length === 0, [
973      n,
974      "returned an object with following unknown keys:",
975      rt(i) + ".",
976      "Only following keys are allowed:",
977      rt(t) + "."
978    ].join(" "));
979  }
980  function ur(e, t) {
981    if (e == null) return;
982    const n = `The onBeforeRender() hook defined by ${t}`;
983    h(J(e), `${n} should return a plain JavaScript object, ${p.cyan("undefined")}, or ${p.cyan("null")}`), lr(e, [
984      "pageContext"
985    ], n), e.pageContext && qt(e.pageContext, {
986      hookName: "onBeforeRender",
987      hookFilePath: t
988    });
989  }
990  function dr(e, t) {
991    if (!J(e)) return false;
992    for (const n of Object.keys(e)) if (!t.includes(n)) return false;
993    return true;
994  }
995  function cr(e, t, n = (i) => i) {
996    if (a(e.length > 0), e.length === 1) return n(e[0]);
997    const i = e.slice(0, e.length - 1), r = e[e.length - 1];
998    return i.map(n).join(", ") + `, ${t} ` + n(r);
999  }
1000  Y() && ne();
1001  const Xt = "The guard() hook defined by";
1002  async function fr(e, t) {
1003    let n;
1004    if (e._pageFilesAll.length > 0 ? (a(e._pageConfigs.length === 0), n = gr(e.pageId, e._pageFilesAll)) : n = H(e, "guard"), !n) return;
1005    const i = n.hookFn;
1006    let r = e;
1007    const o = t(e);
1008    o && (r = o);
1009    const s = await U(() => i(r), n, e);
1010    h(s === void 0, `${Xt} ${n.hookFilePath} returns a value, but guard() shouldn't return any value`);
1011  }
1012  function gr(e, t) {
1013    const n = t.find((u) => u.pageId === e && u.fileType === ".page.route");
1014    if (!n) return null;
1015    const { filePath: i, fileExports: r } = n;
1016    a(r);
1017    const o = r.guard;
1018    if (!o) return null;
1019    const s = i, l = fe("guard");
1020    return h(N(o), `${Xt} ${s} should be a function`), {
1021      hookFn: o,
1022      hookName: "guard",
1023      hookFilePath: s,
1024      hookTimeout: l
1025    };
1026  }
1027  function pr(e) {
1028    const t = new Error("AbortRender");
1029    return y(t, {
1030      _pageContextAbort: e,
1031      [Zt]: true
1032    }), t;
1033  }
1034  const Zt = "_isAbortError";
1035  function st(e) {
1036    return typeof e == "object" && e !== null && Zt in e;
1037  }
1038  function hr(e) {
1039    return e._urlRewrite || e._urlRedirect || e.abortStatusCode ? (a(m(e, "_abortCall", "string")), true) : false;
1040  }
1041  function yr(e) {
1042    mr(e);
1043    const t = {
1044      _urlRewrite: null
1045    };
1046    return e.forEach((n) => {
1047      Object.assign(t, n);
1048    }), t;
1049  }
1050  function mr(e) {
1051    const t = [];
1052    e.forEach((n) => {
1053      const i = n._urlRewrite;
1054      {
1055        const r = t.indexOf(i);
1056        if (r !== -1) {
1057          const o = [
1058            ...t.slice(r),
1059            i
1060          ].map((s) => `render('${s}')`).join(" => ");
1061          h(false, `Infinite loop of render() calls: ${o}`);
1062        }
1063      }
1064      t.push(i);
1065    });
1066  }
1067  function vr(e, t) {
1068    const n = [
1069      e > 0 && p.cyan("throw render('/some-url')"),
1070      t > 0 && p.cyan("throw redirect('/some-url')")
1071    ].filter(Boolean).join(" and ");
1072    h(e + t <= 7, `Maximum chain length of 7 ${n} exceeded. Did you define an infinite loop of ${n}?`);
1073  }
1074  const Sr = "_pageContextInitIsPassedToClient", Qt = "_isServerSideError", en = L("client-routing-runtime/getPageContextFromHooks.ts", {});
1075  function Pr() {
1076    const e = pi();
1077    return h(!("urlOriginal" in e), "Adding 'urlOriginal' to passToClient is forbidden"), rn(e), y(e, {
1078      _hasPageContextFromServer: true
1079    }), e;
1080  }
1081  async function Er(e) {
1082    y(e, {
1083      _hasPageContextFromClient: false
1084    });
1085    for (const t of [
1086      "data",
1087      "onBeforeRender"
1088    ]) if (nn(t, e)) {
1089      const n = await tn(t, e);
1090      a(!("urlOriginal" in n)), Object.assign(e, n);
1091    }
1092    return e;
1093  }
1094  async function Ee(e, t) {
1095    const n = {
1096      _hasPageContextFromServer: false
1097    };
1098    if (!t && await _r(e)) {
1099      const i = await Ar(e);
1100      if ("is404ServerSideRouted" in i) return {
1101        is404ServerSideRouted: true
1102      };
1103      const { pageContextFromServer: r } = i;
1104      n._hasPageContextFromServer = true, a(!(Qt in r)), a(!("serverSideError" in r)), y(n, r);
1105    }
1106    return {
1107      pageContextFromServerHooks: n
1108    };
1109  }
1110  async function lt(e, t) {
1111    y(e, {
1112      _hasPageContextFromClient: false
1113    });
1114    for (const i of [
1115      "guard",
1116      "data",
1117      "onBeforeRender"
1118    ]) if (i === "guard") !t && !e._hasPageContextFromServer && await fr(e, (r) => $e(r));
1119    else if (a(i === "data" || i === "onBeforeRender"), nn(i, e) || !e._hasPageContextFromServer) {
1120      const r = await tn(i, e);
1121      a(!("urlOriginal" in r)), Object.assign(e, r);
1122    }
1123    return e;
1124  }
1125  async function tn(e, t) {
1126    const n = H(t, e);
1127    if (!n) return {};
1128    const i = $e(t), r = await U(() => n.hookFn(i), n, t), o = {};
1129    if (e === "onBeforeRender") {
1130      ur(r, n.hookFilePath);
1131      const s = r == null ? void 0 : r.pageContext;
1132      s && (y(o, {
1133        _hasPageContextFromClient: true
1134      }), y(o, s));
1135    } else {
1136      a(e === "data");
1137      const s = {
1138        data: r
1139      };
1140      r && y(o, {
1141        _hasPageContextFromClient: true
1142      }), y(o, s);
1143    }
1144    return o;
1145  }
1146  function Rr(e) {
1147    e[Sr] && (en.pageContextInitIsPassedToClient = true);
1148  }
1149  async function _r(e) {
1150    return !!en.pageContextInitIsPassedToClient || await ut("data", e) || await ut("onBeforeRender", e);
1151  }
1152  async function ut(e, t) {
1153    var _a2;
1154    if (t._pageConfigs.length > 0) {
1155      const n = Gt(t.pageId, t._pageConfigs), i = (_a2 = q(n, `${e}Env`)) == null ? void 0 : _a2.value;
1156      if (i === null) return false;
1157      a(w(i));
1158      const { client: r, server: o } = i;
1159      return a(r === true || r === void 0), a(o === true || o === void 0), a(r || o), !!o && !r;
1160    } else {
1161      if (e === "data") return false;
1162      a(e === "onBeforeRender");
1163      const { hasOnBeforeRenderServerSideOnlyHook: n } = await zi(t._pageFilesAll, t.pageId);
1164      return n;
1165    }
1166  }
1167  function nn(e, t) {
1168    var _a2;
1169    if (t._pageConfigs.length > 0) {
1170      const n = Gt(t.pageId, t._pageConfigs), i = ((_a2 = q(n, `${e}Env`)) == null ? void 0 : _a2.value) ?? {};
1171      return a(w(i)), !!i.client && !i.server;
1172    } else return false;
1173  }
1174  async function Ar(e) {
1175    const t = sr(e._urlRewrite ?? e.urlOriginal), n = await fetch(t);
1176    {
1177      const o = n.headers.get("content-type"), s = "application/json", l = o && o.includes(s);
1178      if (!l && n.status === 404) return M(e.urlOriginal), {
1179        is404ServerSideRouted: true
1180      };
1181      h(l, `Wrong Content-Type for ${t}: it should be ${s} but it's ${o} instead. Make sure to properly use pageContext.httpResponse.headers, see https://vike.dev/renderPage`);
1182    }
1183    const i = await n.text(), r = Oe(i);
1184    if (a(w(r)), hr(r)) throw pr(r);
1185    if ("serverSideError" in r || Qt in r) throw Vn("pageContext couldn't be fetched because an error occurred on the server-side");
1186    return a(m(r, "pageId", "string")), rn(r), {
1187      pageContextFromServer: r
1188    };
1189  }
1190  function rn(e) {
1191    ir(e);
1192  }
1193  async function on(e, t, n, i) {
1194    const r = Li(t, e);
1195    await Promise.all(r.map(async (o) => {
1196      await U(() => o.hookFn(i), o, n);
1197    }));
1198  }
1199  const Tr = [
1200    "clientRouting"
1201  ];
1202  function br(e) {
1203    Tr.forEach((t) => {
1204      if (a(e.fileExports), !(t in e.fileExports)) return;
1205      const n = `The value of \`${t}\` is only allowed to be \`true\`.`;
1206      h(e.fileExports[t] !== false, `${e.filePath} has \`export { ${t} }\` with the value \`false\` which is prohibited: remove \`export { ${t} }\` instead. (${n})`), h(e.fileExports[t] === true, `${e.filePath} has \`export { ${t} }\` with a forbidden value. ${n}`);
1207    });
1208  }
1209  const an = [
1210    "render",
1211    "clientRouting",
1212    "prerender",
1213    "doNotPrerender"
1214  ];
1215  function Cr(e, t) {
1216    h(!an.includes(e), `${t} has \`export default { ${e} }\` which is prohibited, use \`export { ${e} }\` instead.`);
1217  }
1218  function wr(e, t, n) {
1219    const i = zr({
1220      pageConfigGlobalValues: e,
1221      pageConfigValues: n
1222    });
1223    let r;
1224    if (t.isErrorPage) r = {
1225      ...i,
1226      isErrorPage: true
1227    };
1228    else {
1229      const o = i.config.route ?? t.routeFilesystem.routeString;
1230      r = {
1231        ...i,
1232        route: o
1233      };
1234    }
1235    return [
1236      t.pageId,
1237      r
1238    ];
1239  }
1240  function zr({ pageConfigGlobalValues: e, pageConfigValues: t }) {
1241    const n = ln({
1242      pageConfigGlobalValues: e,
1243      pageConfigValues: t
1244    });
1245    return sn(n);
1246  }
1247  function sn(e) {
1248    const t = e;
1249    return {
1250      config: t.config,
1251      _source: t.source,
1252      _sources: t.sources,
1253      _from: t.from
1254    };
1255  }
1256  function ln({ pageConfigGlobalValues: e, pageConfigValues: t }) {
1257    const n = {
1258      ...e,
1259      ...t
1260    };
1261    return dn({
1262      configValues: n
1263    });
1264  }
1265  function un({ pageConfigGlobalValues: e }) {
1266    const t = dn({
1267      configValues: e
1268    });
1269    return sn(t);
1270  }
1271  function xr(e, t, n) {
1272    const i = {}, r = {}, o = {};
1273    e.forEach((S) => {
1274      jr(S).forEach(({ exportName: P, exportValue: I, isFromDefaultExport: x }) => {
1275        a(P !== "default"), o[P] = o[P] ?? [], o[P].push({
1276          exportValue: I,
1277          exportSource: `${S.filePath} > ${x ? `\`export default { ${P} }\`` : `\`export { ${P} }\``}`,
1278          filePath: S.filePath,
1279          _filePath: S.filePath,
1280          _fileType: S.fileType,
1281          _isFromDefaultExport: x
1282        });
1283      });
1284    });
1285    let s, l, u;
1286    if (t) {
1287      const S = ln({
1288        pageConfigGlobalValues: n.configValues,
1289        pageConfigValues: t.configValues
1290      });
1291      s = S.source, l = S.sources, u = S.from, Object.assign(i, S.config), Object.assign(r, S.configEntries), Object.assign(o, S.exportsAll);
1292    } else s = {}, l = {}, u = {
1293      configsStandard: {},
1294      configsCumulative: {},
1295      configsComputed: {}
1296    };
1297    const d = Ir(), c = {};
1298    return Object.entries(o).forEach(([S, R]) => {
1299      R.forEach(({ exportValue: P, _fileType: I, _isFromDefaultExport: x }) => {
1300        c[S] = c[S] ?? P, I === ".page" && !x && (S in d || (d[S] = P));
1301      });
1302    }), a(!("default" in c)), a(!("default" in o)), {
1303      config: i,
1304      from: u,
1305      source: s,
1306      sources: l,
1307      configEntries: r,
1308      exports: c,
1309      exportsAll: o,
1310      pageExports: d
1311    };
1312  }
1313  function dn(e) {
1314    const t = {}, n = {}, i = {}, r = {}, o = {}, s = {
1315      configsStandard: {},
1316      configsCumulative: {},
1317      configsComputed: {}
1318    }, l = (u, d) => {
1319      r[d] = u, o[d] ?? (o[d] = []), o[d].push(u);
1320    };
1321    return Object.entries(e.configValues).forEach(([u, d]) => {
1322      const { value: c } = d, f = Mt(d.definedAtData), S = Yt("Config", u, d.definedAtData);
1323      if (t[u] = t[u] ?? c, n[u] = n[u] ?? [], a(n[u].length === 0), n[u].push({
1324        configValue: c,
1325        configDefinedAt: S,
1326        configDefinedByFile: f
1327      }), d.type === "standard") {
1328        const P = {
1329          type: "configsStandard",
1330          value: d.value,
1331          definedAt: Q(d.definedAtData, u)
1332        };
1333        l(P, u), s.configsStandard[u] = P;
1334      }
1335      if (d.type === "cumulative") {
1336        const P = {
1337          type: "configsCumulative",
1338          values: d.value.map((I, x) => {
1339            const $ = d.definedAtData[x];
1340            a($);
1341            const _ = Q($, u);
1342            return {
1343              value: I,
1344              definedAt: _
1345            };
1346          })
1347        };
1348        l(P, u), s.configsCumulative[u] = P;
1349      }
1350      if (d.type === "computed") {
1351        const P = {
1352          type: "configsComputed",
1353          value: d.value
1354        };
1355        l(P, u), s.configsComputed[u] = P;
1356      }
1357      const R = u;
1358      i[R] = i[R] ?? [], i[R].push({
1359        exportValue: c,
1360        exportSource: S,
1361        filePath: f,
1362        _filePath: f,
1363        _fileType: null,
1364        _isFromDefaultExport: null
1365      });
1366    }), {
1367      config: t,
1368      configEntries: n,
1369      exportsAll: i,
1370      source: r,
1371      sources: o,
1372      from: s
1373    };
1374  }
1375  function jr(e) {
1376    const { filePath: t, fileExports: n } = e;
1377    a(n), a(Ht(t));
1378    const i = [];
1379    return Object.entries(n).sort(mi(([r]) => r === "default")).forEach(([r, o]) => {
1380      let s = r === "default";
1381      if (s) if (Ci(t)) r = "Page";
1382      else {
1383        h(w(o), `The ${p.cyan("export default")} of ${t} should be an object.`), Object.entries(o).forEach(([l, u]) => {
1384          Cr(l, t), i.push({
1385            exportName: l,
1386            exportValue: u,
1387            isFromDefaultExport: s
1388          });
1389        });
1390        return;
1391      }
1392      i.push({
1393        exportName: r,
1394        exportValue: o,
1395        isFromDefaultExport: s
1396      });
1397    }), i.forEach(({ exportName: r, isFromDefaultExport: o }) => {
1398      a(!(o && an.includes(r)));
1399    }), i;
1400  }
1401  function Ir() {
1402    return new Proxy({}, {
1403      get(...e) {
1404        return Y() || C(false, "`pageContext.pageExports` is outdated. Use `pageContext.exports` instead, see https://vike.dev/exports", {
1405          onlyOnce: true,
1406          showStackTrace: true
1407        }), Reflect.get(...e);
1408      }
1409    });
1410  }
1411  async function Dr(e, t) {
1412    const n = un({
1413      pageConfigGlobalValues: t.configValues
1414    });
1415    return y(e, {
1416      isPageContext: true,
1417      ...n
1418    }, true), await on("onCreatePageContext", t, e, e), e;
1419  }
1420  function Or(e) {
1421    a(typeof e.urlOriginal == "string"), pn(e);
1422    const t = {};
1423    return me(t, "urlPathname", {
1424      get: fn,
1425      enumerable: true,
1426      configurable: true
1427    }), me(t, "url", {
1428      get: kr,
1429      enumerable: false,
1430      configurable: true
1431    }), me(t, "urlParsed", {
1432      get: Fr,
1433      enumerable: true,
1434      configurable: true
1435    }), t;
1436  }
1437  function cn(e) {
1438    const t = (s) => a(typeof n == "string", {
1439      src: s,
1440      urlResolved: n
1441    });
1442    let n, i;
1443    e.urlLogical ? (n = e.urlLogical, i = false, t(1)) : e._urlRewrite ? (n = e._urlRewrite, i = false, t(2)) : (n = e.urlOriginal, i = true, t(3)), t(4);
1444    let r = e._urlHandler;
1445    r || (r = (s) => s), n = r(n);
1446    const o = i ? e._baseServer : "/";
1447    return ce(n, o);
1448  }
1449  function fn() {
1450    const { pathname: e } = cn(this), t = e;
1451    return a(t.startsWith("/")), t;
1452  }
1453  function kr() {
1454    return C(false, "`pageContext.url` is outdated. Use `pageContext.urlPathname`, `pageContext.urlParsed`, or `pageContext.urlOriginal` instead. (See https://vike.dev/migration/0.4.23 for more information.)", {
1455      onlyOnce: true,
1456      showStackTrace: true
1457    }), fn.call(this);
1458  }
1459  function Fr() {
1460    const { isBaseMissing: e, ...t } = cn(this), n = Y(), i = (o) => {
1461      C(n, `pageContext.urlParsed.${o} isn't available on the server-side (HTTP requests don't include the URL hash)`, {
1462        onlyOnce: true,
1463        showStackTrace: true
1464      });
1465    }, r = {
1466      ...t,
1467      get hash() {
1468        return i("hash"), t.hash;
1469      },
1470      get hashOriginal() {
1471        return i("hashOriginal"), t.hashOriginal;
1472      },
1473      get hashString() {
1474        return C(false, "pageContext.urlParsed.hashString has been renamed to pageContext.urlParsed.hashOriginal", {
1475          onlyOnce: true,
1476          showStackTrace: true
1477        }), i("hashString"), t.hashOriginal;
1478      },
1479      get searchString() {
1480        return C(false, "pageContext.urlParsed.searchString has been renamed to pageContext.urlParsed.searchOriginal", {
1481          onlyOnce: true,
1482          showStackTrace: true
1483        }), t.searchOriginal;
1484      }
1485    };
1486    return re(r, "hashString", false), re(r, "searchString", false), n || (re(r, "hash", false), re(r, "hashOriginal", false)), r;
1487  }
1488  function gn(e) {
1489    a(typeof e.urlOriginal == "string"), a(typeof e.urlPathname == "string"), a(J(e.urlParsed)), a(e.urlPathname === e.urlParsed.pathname), pn(e);
1490  }
1491  function pn(e) {
1492    "urlPathname" in e ? (a(typeof e.urlPathname == "string"), a(ye(e, "urlPathname")), a(ye(e, "urlParsed")), a(ye(e, "url"))) : (a(!("urlParsed" in e)), a(!("url" in e)));
1493  }
1494  function hn() {
1495    const e = "/";
1496    return a(Lr(e)), e;
1497  }
1498  function Lr(e) {
1499    return e.startsWith("/");
1500  }
1501  function $r(e) {
1502    const t = ".page.", n = B(e.split(t), 0, -1).join(t);
1503    return a(!n.includes("\\")), n;
1504  }
1505  const Vr = [
1506    ".page",
1507    ".page.server",
1508    ".page.route",
1509    ".page.client",
1510    ".css"
1511  ];
1512  function Ur(e) {
1513    if (e.endsWith(".css")) return ".css";
1514    a(Ht(e), e);
1515    const n = e.split("/").slice(-1)[0].split("."), i = n.slice(-3)[0], r = n.slice(-2)[0];
1516    if (r === "page") return ".page";
1517    if (a(i === "page", e), r === "server") return ".page.server";
1518    if (r === "client") return ".page.client";
1519    if (r === "route") return ".page.route";
1520    a(false, e);
1521  }
1522  function yn(e) {
1523    const t = (o) => r.pageId === o || r.isDefaultPageFile && (dt(r.filePath) || Br(o, r.filePath)), n = Ur(e), r = {
1524      filePath: e,
1525      fileType: n,
1526      isEnv: (o) => {
1527        if (a(n !== ".page.route"), o === "CLIENT_ONLY") return n === ".page.client" || n === ".css";
1528        if (o === "SERVER_ONLY") return n === ".page.server";
1529        if (o === "CLIENT_AND_SERVER") return n === ".page";
1530        a(false);
1531      },
1532      isRelevant: t,
1533      isDefaultPageFile: Re(e),
1534      isRendererPageFile: n !== ".css" && Re(e) && dt(e),
1535      isErrorPageFile: ie(e),
1536      pageId: $r(e)
1537    };
1538    return r;
1539  }
1540  function Re(e) {
1541    return ie(e) ? false : e.includes("/_default");
1542  }
1543  function dt(e) {
1544    return e.includes("/renderer/");
1545  }
1546  function Br(e, t) {
1547    a(!e.endsWith("/")), a(!t.endsWith("/")), a(Re(t));
1548    const n = B(t.split("/"), 0, -1).filter((i) => i !== "_default").join("/");
1549    return e.startsWith(n);
1550  }
1551  const Hr = [
1552    "$$registrations",
1553    "_rerender_only"
1554  ], Wr = [
1555    ".md",
1556    ".mdx"
1557  ];
1558  function Nr(e, t, n) {
1559    const i = Object.keys(e), r = (d) => d === "default" || d === n, o = i.filter(r), s = p.code("export default"), l = p.code(`export { ${n} }`);
1560    o.length === 0 && h(false, `${t} should have ${l} or ${s}`), o.length === 2 && h(false, `${t} is ambiguous: remove ${s} or ${l}`), a(o.length === 1);
1561    const u = i.filter((d) => !r(d)).filter((d) => !Hr.includes(d));
1562    Wr.some((d) => t.endsWith(d)) || u.forEach((d) => {
1563      C(false, `${t} unexpected ${p.cyan(`export { ${d} }`)}, see https://vike.dev/no-side-exports`, {
1564        onlyOnce: true
1565      });
1566    });
1567  }
1568  function Gr(e, t) {
1569    const n = e.map((r) => {
1570      const o = _e(r.configValuesSerialized);
1571      return Mr(o), {
1572        ...r,
1573        configValues: o
1574      };
1575    }), i = {
1576      configValues: {}
1577    };
1578    {
1579      const r = _e(t.configValuesSerialized);
1580      Object.assign(i.configValues, r);
1581    }
1582    return {
1583      pageConfigs: n,
1584      pageConfigGlobal: i
1585    };
1586  }
1587  function Mr(e) {
1588    const t = "route", n = e[t];
1589    if (!n) return;
1590    const { value: i, definedAtData: r } = n, o = typeof i;
1591    a(r);
1592    const s = ji("Config", t, r);
1593    h(o === "string" || N(i), `${s} has an invalid type '${o}': it should be a string or a function instead, see https://vike.dev/route`);
1594  }
1595  function _e(e) {
1596    const t = {};
1597    return Object.entries(e).forEach(([i, r]) => {
1598      let o;
1599      if (r.type === "cumulative") {
1600        const { valueSerialized: s, ...l } = r;
1601        o = {
1602          value: s.map((d, c) => {
1603            const { value: f, sideExports: S } = ct(d, i, () => {
1604              const R = r.definedAtData[c];
1605              return a(R), R;
1606            });
1607            return n(S), f;
1608          }),
1609          ...l
1610        };
1611      } else {
1612        const { valueSerialized: s, ...l } = r, { value: u, sideExports: d } = ct(s, i, () => {
1613          a(r.type !== "computed");
1614          const { definedAtData: c } = r;
1615          return Array.isArray(c) ? c[0] : c;
1616        });
1617        n(d), o = {
1618          value: u,
1619          ...l
1620        };
1621      }
1622      t[i] = o;
1623    }), t;
1624    function n(i) {
1625      i.forEach((r) => {
1626        const { configName: o, configValue: s } = r;
1627        t[o] || (t[o] = s);
1628      });
1629    }
1630  }
1631  function ct(e, t, n) {
1632    if (e.type === "js-serialized") {
1633      let { value: i } = e;
1634      return i = ke(i), {
1635        value: i,
1636        sideExports: []
1637      };
1638    }
1639    if (e.type === "pointer-import") {
1640      const { value: i } = e;
1641      return {
1642        value: i,
1643        sideExports: []
1644      };
1645    }
1646    if (e.type === "plus-file") {
1647      const i = n(), { exportValues: r } = e;
1648      a(!i.definedBy), Nr(r, i.filePathToShowToUser, t);
1649      let o, s = false;
1650      const l = [];
1651      return Object.entries(r).forEach(([u, d]) => {
1652        u !== "default" && u !== t ? l.push({
1653          configName: u,
1654          configValue: {
1655            type: "standard",
1656            value: d,
1657            definedAtData: {
1658              filePathToShowToUser: i.filePathToShowToUser,
1659              fileExportPathToShowToUser: [
1660                u
1661              ]
1662            }
1663          }
1664        }) : (o = d, a(!s), s = true);
1665      }), a(s), {
1666        value: o,
1667        sideExports: l
1668      };
1669    }
1670    a(false);
1671  }
1672  function Kr(e) {
1673    a(m(e, "pageFilesLazy", "object")), a(m(e, "pageFilesEager", "object")), a(m(e, "pageFilesExportNamesLazy", "object")), a(m(e, "pageFilesExportNamesEager", "object")), a(m(e.pageFilesLazy, ".page")), a(m(e.pageFilesLazy, ".page.client") || m(e.pageFilesLazy, ".page.server")), a(m(e, "pageFilesList", "string[]")), a(m(e, "pageConfigsSerialized")), a(m(e, "pageConfigGlobalSerialized"));
1674    const { pageConfigsSerialized: t, pageConfigGlobalSerialized: n } = e;
1675    Yr(t), Jr(n);
1676    const { pageConfigs: i, pageConfigGlobal: r } = Gr(t, n), o = {};
1677    oe(e.pageFilesLazy).forEach(({ filePath: l, pageFile: u, globValue: d }) => {
1678      u = o[l] = o[l] ?? u;
1679      const c = d;
1680      ft(c), u.loadFile = async () => {
1681        "fileExports" in u || (u.fileExports = await c(), br(u));
1682      };
1683    }), oe(e.pageFilesExportNamesLazy).forEach(({ filePath: l, pageFile: u, globValue: d }) => {
1684      u = o[l] = o[l] ?? u;
1685      const c = d;
1686      ft(c), u.loadExportNames = async () => {
1687        if (!("exportNames" in u)) {
1688          const f = await c();
1689          a(m(f, "exportNames", "string[]"), u.filePath), u.exportNames = f.exportNames;
1690        }
1691      };
1692    }), oe(e.pageFilesEager).forEach(({ filePath: l, pageFile: u, globValue: d }) => {
1693      u = o[l] = o[l] ?? u;
1694      const c = d;
1695      a(w(c)), u.fileExports = c;
1696    }), oe(e.pageFilesExportNamesEager).forEach(({ filePath: l, pageFile: u, globValue: d }) => {
1697      u = o[l] = o[l] ?? u;
1698      const c = d;
1699      a(w(c)), a(m(c, "exportNames", "string[]"), u.filePath), u.exportNames = c.exportNames;
1700    }), e.pageFilesList.forEach((l) => {
1701      o[l] = o[l] ?? yn(l);
1702    });
1703    const s = Object.values(o);
1704    return s.forEach(({ filePath: l }) => {
1705      a(!l.includes("\\"));
1706    }), {
1707      pageFilesAll: s,
1708      pageConfigs: i,
1709      pageConfigGlobal: r
1710    };
1711  }
1712  function oe(e) {
1713    const t = [];
1714    return Object.entries(e).forEach(([n, i]) => {
1715      a(Vr.includes(n)), a(w(i)), Object.entries(i).forEach(([r, o]) => {
1716        const s = yn(r);
1717        a(s.fileType === n), t.push({
1718          filePath: r,
1719          pageFile: s,
1720          globValue: o
1721        });
1722      });
1723    }), t;
1724  }
1725  function ft(e) {
1726    a(N(e));
1727  }
1728  function Yr(e) {
1729    a(W(e)), e.forEach((t) => {
1730      a(w(t)), a(m(t, "pageId", "string")), a(m(t, "routeFilesystem")), a(m(t, "configValuesSerialized"));
1731    });
1732  }
1733  function Jr(e) {
1734    a(m(e, "configValuesSerialized"));
1735  }
1736  function qr(e) {
1737    const { pageFilesAll: t, pageConfigs: n, pageConfigGlobal: i } = Kr(e), r = Xr(t, n), o = un({
1738      pageConfigGlobalValues: i.configValues
1739    }), s = Object.fromEntries(n.map((l) => wr(i.configValues, l, l.configValues)));
1740    return {
1741      pageFilesAll: t,
1742      allPageIds: r,
1743      pageConfigs: n,
1744      pageConfigGlobal: i,
1745      globalConfig: o,
1746      pageConfigsUserFriendly: s
1747    };
1748  }
1749  function Xr(e, t) {
1750    const n = e.filter(({ isDefaultPageFile: o }) => !o).map(({ pageId: o }) => o), i = Ct(n), r = t.map((o) => o.pageId);
1751    return [
1752      ...i,
1753      ...r
1754    ];
1755  }
1756  async function Zr(e, t, n) {
1757    const i = Qr(e), r = await (n == null ? void 0 : n(i));
1758    return y(i, r), t.globalContext ? y(t.globalContext, i) : (t.globalContext = i, await on("onCreateGlobalContext", i._pageConfigGlobal, null, i)), t.globalContext;
1759  }
1760  function Qr(e) {
1761    const { pageFilesAll: t, allPageIds: n, pageConfigs: i, pageConfigGlobal: r, globalConfig: o, pageConfigsUserFriendly: s } = qr(e);
1762    return {
1763      isGlobalContext: true,
1764      _virtualFileExports: e,
1765      _pageFilesAll: t,
1766      _pageConfigs: i,
1767      _pageConfigGlobal: r,
1768      _allPageIds: n,
1769      config: o.config,
1770      pages: s
1771    };
1772  }
1773  const F = L("createGetGlobalContextClient.ts", (() => {
1774    const { promise: e, resolve: t } = Lt();
1775    return {
1776      globalContextPromise: e,
1777      globalContextPromiseResolve: t
1778    };
1779  })());
1780  function eo(e, t, n) {
1781    return a(F.isClientRouting === void 0 || F.isClientRouting === t), F.isClientRouting = t, i(), i;
1782    async function i() {
1783      if (F.globalContext && F.globalContext._virtualFileExports !== e) return F.globalContext;
1784      const r = await Zr(e, F, async (o) => {
1785        const s = {
1786          isClientSide: true
1787        };
1788        return y(s, hi()), y(s, await (n == null ? void 0 : n(o))), s;
1789      });
1790      return a(F.globalContext), F.globalContextPromiseResolve(F.globalContext), r;
1791    }
1792  }
1793  function to(e, t) {
1794    const i = t.filter(({ filesystemRoot: o }) => e.startsWith(o)).sort(ue(({ filesystemRoot: o }) => o.length))[0];
1795    let r;
1796    if (i) {
1797      const { filesystemRoot: o, urlRoot: s } = i, l = {
1798        pageId: e,
1799        filesystemRoot: o,
1800        urlRoot: s
1801      };
1802      a(s.startsWith("/") && e.startsWith("/") && o.startsWith("/"), l), a(e.startsWith(o), l), o !== "/" ? (a(!o.endsWith("/"), l), r = B(e, o.length, 0)) : r = e, a(r.startsWith("/"), l), r = s + (s.endsWith("/") ? "" : "/") + B(r, 1, 0
1802);
1803    } else r = e;
1804    return a(r.startsWith("/")), r = r.split("/").filter((o) => o !== "pages" && o !== "src" && o !== "index").join("/"), a(!r.includes(".page.")), a(!r.endsWith(".")), r.endsWith("/index") && (r = B(r, 0, -6)), r === "" && (r = "/"), a(r.startsWith("/")), a(!r.endsWith("/") || r === "/"), r;
1805  }
1806  async function no(e, t, n) {
1807    gn(t);
1808    let i = e(t);
1809    if (mn(i, `The Route Function ${n}`), i = await i, i === false) return null;
1810    if (i === true && (i = {}), h(J(i), `The Route Function ${n} should return a boolean or a plain JavaScript object (but it's ${p.cyan(`typeof result === ${JSON.stringify(typeof i)}`)} instead)`), "match" in i) {
1811      const { match: s } = i;
1812      if (h(typeof s == "boolean", `The ${p.cyan("match")} value returned by the Route Function ${n} should be a boolean.`), !s) return null;
1813    }
1814    let r = null;
1815    "precedence" in i && (r = i.precedence, h(typeof r == "number", `The ${p.cyan("precedence")} value returned by the Route Function ${n} should be a number.`)), vn(i, `The ${p.cyan("routeParams")} object returned by the Route Function ${n} should`);
1816    const o = i.routeParams || {};
1817    return h(!("pageContext" in i), `Providing ${p.cyan("pageContext")} in Route Functions is prohibited, see https://vike.dev/route-function#cannot-provide-pagecontext`), a(J(o)), Object.keys(i).forEac
1817h((s) => {
1818      h(s === "match" || s === "routeParams" || s === "precedence", `The Route Function ${n} returned an object with an unknown property ${p.cyan(s)} (the known properties are ${p.cyan("match")}, ${p.cyan("routeParams")}, and ${p.cyan("precedence")})`);
1819    }), {
1820      precedence: r,
1821      routeParams: o
1822    };
1823  }
1824  function mn(e, t) {
1825    C(!Ei(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`, {
1826      onlyOnce: true
1827    });
1828  }
1829  function gt() {
1830    const e = p.cyan("iKnowThePerformanceRisksOfAsyncRouteFunctions");
1831    C(false, `${e} is deprecated and will be removed in the next major release`, {
1832      onlyOnce: true
1833    });
1834  }
1835  function vn(e, t) {
1836    a(t.endsWith(" should")), m(e, "routeParams") && (a(t.endsWith(" should")), h(m(e, "routeParams", "string{}"), `${t} be an object holding string values.`));
1837  }
1838  async function io(e, t, n, i) {
1839    await Promise.all(e.filter((l) => l.fileType === ".page.route").map((l) => {
1840      var _a2;
1841      return (_a2 = l.loadFile) == null ? void 0 : _a2.call(l);
1842    }));
1843    const { onBeforeRouteHook: r, filesystemRoots: o } = oo(e, t, n);
1844    return {
1845      pageRoutes: ro(o, e, t, i),
1846      onBeforeRouteHook: r
1847    };
1848  }
1849  function ro(e, t, n, i) {
1850    const r = [];
1851    if (n.length > 0) {
1852      a(e === null);
1853      const o = true;
1854      n.filter((s) => !s.isErrorPage).forEach((s) => {
1855        const l = s.pageId;
1856        let u = null;
1857        {
1858          const d = "route", c = q(s, d);
1859          if (c) {
1860            const f = c.value;
1861            a(c.definedAtData);
1862            const S = Q(c.definedAtData, d);
1863            typeof f == "string" ? u = {
1864              pageId: l,
1865              comesFromV1PageConfig: o,
1866              routeString: f,
1867              routeDefinedAtString: S,
1868              routeType: "STRING"
1869            } : (a(N(f)), q(s, "iKnowThePerformanceRisksOfAsyncRouteFunctions", "boolean") && gt(), u = {
1870              pageId: l,
1871              comesFromV1PageConfig: o,
1872              routeFunction: f,
1873              routeDefinedAtString: S,
1874              routeType: "FUNCTION"
1875            });
1876          }
1877        }
1878        if (!u) {
1879          const { routeFilesystem: d } = s;
1880          a(d);
1881          const { routeString: c, definedAtLocation: f } = d;
1882          a(d.routeString.startsWith("/")), u = {
1883            pageId: l,
1884            routeFilesystemDefinedBy: f,
1885            comesFromV1PageConfig: o,
1886            routeString: c,
1887            routeDefinedAtString: null,
1888            routeType: "FILESYSTEM"
1889          };
1890        }
1891        a(u), r.push(u);
1892      });
1893    }
1894    if (n.length === 0) {
1895      a(e);
1896      const o = false;
1897      i.filter((s) => !ie(s)).forEach((s) => {
1898        const l = t.find((u) => u.pageId === s && u.fileType === ".page.route");
1899        if (!l || !("default" in l.fileExports)) {
1900          const u = to(s, e);
1901          a(u.startsWith("/")), a(!u.endsWith("/") || u === "/"), r.push({
1902            pageId: s,
1903            comesFromV1PageConfig: o,
1904            routeString: u,
1905            routeDefinedAtString: null,
1906            routeFilesystemDefinedBy: `${s}.page.*`,
1907            routeType: "FILESYSTEM"
1908          });
1909        } else {
1910          const { filePath: u, fileExports: d } = l;
1911          if (a(d.default), m(d, "default", "string")) {
1912            const c = d.default;
1913            h(c.startsWith("/"), `A Route String should start with a leading slash '/' but ${u} has \`export default '${c}'\`. Make sure to \`export default '/${c}'\` instead.`), r.push({
1914              pageId: s,
1915              comesFromV1PageConfig: o,
1916              routeString: c,
1917              routeDefinedAtString: u,
1918              routeType: "STRING"
1919            });
1920            return;
1921          }
1922          if (m(d, "default", "function")) {
1923            const c = d.default;
1924            "iKnowThePerformanceRisksOfAsyncRouteFunctions" in d && gt(), r.push({
1925              pageId: s,
1926              comesFromV1PageConfig: o,
1927              routeFunction: c,
1928              routeDefinedAtString: u,
1929              routeType: "FUNCTION"
1930            });
1931            return;
1932          }
1933          h(false, `The default export of ${u} should be a string or a function.`);
1934        }
1935      });
1936    }
1937    return r;
1938  }
1939  function oo(e, t, n) {
1940    if (t.length > 0) return {
1941      onBeforeRouteHook: Fi(n, "onBeforeRoute"),
1942      filesystemRoots: null
1943    };
1944    let i = null;
1945    const r = [];
1946    return e.filter((o) => o.fileType === ".page.route" && o.isDefaultPageFile).forEach(({ filePath: o, fileExports: s }) => {
1947      if (a(s), "onBeforeRoute" in s) {
1948        h(m(s, "onBeforeRoute", "function"), `\`export { onBeforeRoute }\` of ${o} should be a function.`);
1949        const { onBeforeRoute: l } = s, u = "onBeforeRoute";
1950        i = {
1951          hookFilePath: o,
1952          hookFn: l,
1953          hookName: u,
1954          hookTimeout: fe(u)
1955        };
1956      }
1957      "filesystemRoutingRoot" in s && (h(m(s, "filesystemRoutingRoot", "string"), `\`export { filesystemRoutingRoot }\` of ${o} should be a string.`), h(m(s, "filesystemRoutingRoot", "string"), `\`export { filesystemRoutingRoot }\` of ${o} is \`'${s.filesystemRoutingRoot}'\` but it should start with a leading slash \`/\`.`), r.push({
1958        filesystemRoot: ao(o),
1959        urlRoot: s.filesystemRoutingRoot
1960      }));
1961    }), {
1962      onBeforeRouteHook: i,
1963      filesystemRoots: r
1964    };
1965  }
1966  function ao(e) {
1967    a(e.startsWith("/")), a(!e.endsWith("/"));
1968    const t = e.split("/"), n = B(t, 0, -1).join("/") || "/";
1969    return a(n.startsWith("/")), a(!n.endsWith("/") || n === "/"), n;
1970  }
1971  const so = "ko|hk";
1972  function j(e) {
1973    const t = e.replace(/^\//, "").replace(/\/$/, ""), n = t ? `/${t}` : "", i = new RegExp(`^/(${so})${n}/?$`);
1974    return function(o) {
1975      const s = o.urlPathname.match(i);
1976      return s ? {
1977        routeParams: {
1978          lang: s[1]
1979        }
1980      } : false;
1981    };
1982  }
1983  const lo = j("GuideDiscord"), uo = Object.freeze(Object.defineProperty({
1984    __proto__: null,
1985    route: lo
1986  }, Symbol.toStringTag, {
1987    value: "Module"
1988  })), co = j("aboutUs"), fo = Object.freeze(Object.defineProperty({
1989    __proto__: null,
1990    route: co
1991  }, Symbol.toStringTag, {
1992    value: "Module"
1993  })), go = j("affiliate"), po = Object.freeze(Object.defineProperty({
1994    __proto__: null,
1995    route: go
1996  }, Symbol.toStringTag, {
1997    value: "Module"
1998  })), ho = j("aml-policy"), yo = Object.freeze(Object.defineProperty({
1999    __proto__: null,
2000    route: ho
2001  }, Symbol.toStringTag, {
2002    value: "Module"
2003  })), Sn = "ko|hk";
2004  function mo() {
2005    const e = new RegExp(`^/(${Sn})/blog/?$`);
2006    return function(n) {
2007      const i = n.urlPathname.match(e);
2008      return i ? {
2009        routeParams: {
2010          lang: i[1]
2011        }
2012      } : false;
2013    };
2014  }
2015  function vo() {
2016    const e = new RegExp(`^/(${Sn})/blog/([^/]+)/?$`);
2017    return function(n) {
2018      const i = n.urlPathname.match(e);
2019      return i ? {
2020        routeParams: {
2021          lang: i[1],
2022          slug: i[2]
2023        }
2024      } : false;
2025    };
2026  }
2027  const So = mo(), Po = Object.freeze(Object.defineProperty({
2028    __proto__: null,
2029    route: So
2030  }, Symbol.toStringTag, {
2031    value: "Module"
2032  })), Eo = vo(), Ro = Object.freeze(Object.defineProperty({
2033    __proto__: null,
2034    route: Eo
2035  }, Symbol.toStringTag, {
2036    value: "Module"
2037  })), _o = j("contactUs"), Ao = Object.freeze(Object.defineProperty({
2038    __proto__: null,
2039    route: _o
2040  }, Symbol.toStringTag, {
2041    value: "Module"
2042  })), To = j("cooperate"), bo = Object.freeze(Object.defineProperty({
2043    __proto__: null,
2044    route: To
2045  }, Symbol.toStringTag, {
2046    value: "Module"
2047  })), Co = j("copyright"), wo = Object.freeze(Object.defineProperty({
2048    __proto__: null,
2049    route: Co
2050  }, Symbol.toStringTag, {
2051    value: "Module"
2052  })), zo = j("help-recharge"), xo = Object.freeze(Object.defineProperty({
2053    __proto__: null,
2054    route: zo
2055  }, Symbol.toStringTag, {
2056    value: "Module"
2057  })), jo = j("help-useGpt"), Io = Object.freeze(Object.defineProperty({
2058    __proto__: null,
2059    route: jo
2060  }, Symbol.toStringTag, {
2061    value: "Module"
2062  })), Do = j("help-useNetflix"), Oo = Object.freeze(Object.defineProperty({
2063    __proto__: null,
2064    route: Do
2065  }, Symbol.toStringTag, {
2066    value: "Module"
2067  })), ko = j("help-ytbRegion"), Fo = Object.freeze(Object.defineProperty({
2068    __proto__: null,
2069    route: ko
2070  }, Symbol.toStringTag, {
2071    value: "Module"
2072  })), Lo = j(""), $o = Object.freeze(Object.defineProperty({
2073    __proto__: null,
2074    route: Lo
2075  }, Symbol.toStringTag, {
2076    value: "Module"
2077  })), Vo = j("privacy-policy"), Uo = Object.freeze(Object.defineProperty({
2078    __proto__: null,
2079    route: Vo
2080  }, Symbol.toStringTag, {
2081    value: "Module"
2082  })), Bo = "ko|hk";
2083  function Ho() {
2084    const e = new RegExp(`^/(${Bo})/product/([^/]+)/?$`);
2085    return function(n) {
2086      const i = n.urlPathname.match(e);
2087      return i ? {
2088        routeParams: {
2089          lang: i[1],
2090          slug: i[2]
2091        }
2092      } : false;
2093    };
2094  }
2095  const Wo = Ho(), No = Object.freeze(Object.defineProperty({
2096    __proto__: null,
2097    route: Wo
2098  }, Symbol.toStringTag, {
2099    value: "Module"
2100  })), Go = j("refund-policy"), Mo = Object.freeze(Object.defineProperty({
2101    __proto__: null,
2102    route: Go
2103  }, Symbol.toStringTag, {
2104    value: "Module"
2105  })), Ko = j("terms"), Yo = Object.freeze(Object.defineProperty({
2106    __proto__: null,
2107    route: Ko
2108  }, Symbol.toStringTag, {
2109    value: "Module"
2110  })), Jo = [
2111    "/product",
2112    "/blog"
2113  ];
2114  function qo(e) {
2115    const t = e.split("/").filter(Boolean);
2116    return t.length > 0 && [
2117      "ko",
2118      "hk",
2119      "en"
2120    ].includes(t[0]) && t.shift(), t.length ? `/${t.join("/")}` : "/";
2121  }
2122  function Xo(e) {
2123    const { urlPathname: t } = e;
2124    if (Hn(t)) return false;
2125    const n = qo(t);
2126    return !Jo.some((i) => n === i || n.startsWith(`${i}/`));
2127  }
2128  const Zo = Object.freeze(Object.defineProperty({
2129    __proto__: null,
2130    default: Xo
2131  }, Symbol.toStringTag, {
2132    value: "Module"
2133  })), Ve = {}, Pn = {}, Qo = {}, ge = {}, ea = [], En = {}, ta = [
2134    {
2135      pageId: "/pages/GuideDiscord",
2136      isErrorPage: void 0,
2137      routeFilesystem: {
2138        routeString: "/GuideDiscord",
2139        definedAtLocation: "/pages/GuideDiscord/"
2140      },
2141      loadConfigValuesAll: () => ({
2142        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/GuideDiscord",
2143        moduleExports: E(() => import("./pages_GuideDiscord.CE_nGb4t.js"), __vite__mapDeps([0,1,2,3,4,5,6,7]))
2144      }),
2145      configValuesSerialized: {
2146        isClientRuntimeLoaded: {
2147          type: "computed",
2148          definedAtData: null,
2149          valueSerialized: {
2150            type: "js-serialized",
2151            value: true
2152          }
2153        },
2154        onBeforeRenderEnv: {
2155          type: "computed",
2156          definedAtData: null,
2157          valueSerialized: {
2158            type: "js-serialized",
2159            value: {
2160              server: true
2161            }
2162          }
2163        },
2164        dataEnv: {
2165          type: "computed",
2166          definedAtData: null,
2167          valueSerialized: {
2168            type: "js-serialized",
2169            value: null
2170          }
2171        },
2172        clientRouting: {
2173          type: "standard",
2174          definedAtData: {
2175            filePathToShowToUser: "vike-react/config",
2176            fileExportPathToShowToUser: [
2177              "default",
2178              "clientRouting"
2179            ]
2180          },
2181          valueSerialized: {
2182            type: "js-serialized",
2183            value: true
2184          }
2185        }
2186      }
2187    },
2188    {
2189      pageId: "/pages/aboutUs",
2190      isErrorPage: void 0,
2191      routeFilesystem: {
2192        routeString: "/aboutUs",
2193        definedAtLocation: "/pages/aboutUs/"
2194      },
2195      loadConfigValuesAll: () => ({
2196        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/aboutUs",
2197        moduleExports: E(() => import("./pages_aboutUs.CInV3kcb.js"), __vite__mapDeps([8,1,2,3,4,5,6,7]))
2198      }),
2199      configValuesSerialized: {
2200        isClientRuntimeLoaded: {
2201          type: "computed",
2202          definedAtData: null,
2203          valueSerialized: {
2204            type: "js-serialized",
2205            value: true
2206          }
2207        },
2208        onBeforeRenderEnv: {
2209          type: "computed",
2210          definedAtData: null,
2211          valueSerialized: {
2212            type: "js-serialized",
2213            value: {
2214              server: true
2215            }
2216          }
2217        },
2218        dataEnv: {
2219          type: "computed",
2220          definedAtData: null,
2221          valueSerialized: {
2222            type: "js-serialized",
2223            value: null
2224          }
2225        },
2226        clientRouting: {
2227          type: "standard",
2228          definedAtData: {
2229            filePathToShowToUser: "vike-react/config",
2230            fileExportPathToShowToUser: [
2231              "default",
2232              "clientRouting"
2233            ]
2234          },
2235          valueSerialized: {
2236            type: "js-serialized",
2237            value: true
2238          }
2239        }
2240      }
2241    },
2242    {
2243      pageId: "/pages/affiliate",
2244      isErrorPage: void 0,
2245      routeFilesystem: {
2246        routeString: "/affiliate",
2247        definedAtLocation: "/pages/affiliate/"
2248      },
2249      loadConfigValuesAll: () => ({
2250        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/affiliate",
2251        moduleExports: E(() => import("./pages_affiliate.Bl9f-M7d.js"), __vite__mapDeps([9,1,2,3,4,5,6,7]))
2252      }),
2253      configValuesSerialized: {
2254        isClientRuntimeLoaded: {
2255          type: "computed",
2256          definedAtData: null,
2257          valueSerialized: {
2258            type: "js-serialized",
2259            value: true
2260          }
2261        },
2262        onBeforeRenderEnv: {
2263          type: "computed",
2264          definedAtData: null,
2265          valueSerialized: {
2266            type: "js-serialized",
2267            value: {
2268              server: true
2269            }
2270          }
2271        },
2272        dataEnv: {
2273          type: "computed",
2274          definedAtData: null,
2275          valueSerialized: {
2276            type: "js-serialized",
2277            value: null
2278          }
2279        },
2280        clientRouting: {
2281          type: "standard",
2282          definedAtData: {
2283            filePathToShowToUser: "vike-react/config",
2284            fileExportPathToShowToUser: [
2285              "default",
2286              "clientRouting"
2287            ]
2288          },
2289          valueSerialized: {
2290            type: "js-serialized",
2291            value: true
2292          }
2293        }
2294      }
2295    },
2296    {
2297      pageId: "/pages/aml-policy",
2298      isErrorPage: void 0,
2299      routeFilesystem: {
2300        routeString: "/aml-policy",
2301        definedAtLocation: "/pages/aml-policy/"
2302      },
2303      loadConfigValuesAll: () => ({
2304        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/aml-policy",
2305        moduleExports: E(() => import("./pages_aml-policy.Cgnj4hW-.js"), __vite__mapDeps([10,1,2,3,4,5,6,7]))
2306      }),
2307      configValuesSerialized: {
2308        isClientRuntimeLoaded: {
2309          type: "computed",
2310          definedAtData: null,
2311          valueSerialized: {
2312            type: "js-serialized",
2313            value: true
2314          }
2315        },
2316        onBeforeRenderEnv: {
2317          type: "computed",
2318          definedAtData: null,
2319          valueSerialized: {
2320            type: "js-serialized",
2321            value: {
2322              server: true
2323            }
2324          }
2325        },
2326        dataEnv: {
2327          type: "computed",
2328          definedAtData: null,
2329          valueSerialized: {
2330            type: "js-serialized",
2331            value: null
2332          }
2333        },
2334        clientRouting: {
2335          type: "standard",
2336          definedAtData: {
2337            filePathToShowToUser: "vike-react/config",
2338            fileExportPathToShowToUser: [
2339              "default",
2340              "clientRouting"
2341            ]
2342          },
2343          valueSerialized: {
2344            type: "js-serialized",
2345            value: true
2346          }
2347        }
2348      }
2349    },
2350    {
2351      pageId: "/pages/blog",
2352      isErrorPage: void 0,
2353      routeFilesystem: {
2354        routeString: "/blog",
2355        definedAtLocation: "/pages/blog/"
2356      },
2357      loadConfigValuesAll: () => ({
2358        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/blog",
2359        moduleExports: E(() => import("./pages_blog.44YGRW5O.js"), __vite__mapDeps([11,1,2,3,4,5,12,13,14]))
2360      }),
2361      configValuesSerialized: {
2362        isClientRuntimeLoaded: {
2363          type: "computed",
2364          definedAtData: null,
2365          valueSerialized: {
2366            type: "js-serialized",
2367            value: true
2368          }
2369        },
2370        onBeforeRenderEnv: {
2371          type: "computed",
2372          definedAtData: null,
2373          valueSerialized: {
2374            type: "js-serialized",
2375            value: {
2376              server: true
2377            }
2378          }
2379        },
2380        dataEnv: {
2381          type: "computed",
2382          definedAtData: null,
2383          valueSerialized: {
2384            type: "js-serialized",
2385            value: null
2386          }
2387        },
2388        clientRouting: {
2389          type: "standard",
2390          definedAtData: {
2391            filePathToShowToUser: "vike-react/config",
2392            fileExportPathToShowToUser: [
2393              "default",
2394              "clientRouting"
2395            ]
2396          },
2397          valueSerialized: {
2398            type: "js-serialized",
2399            value: true
2400          }
2401        }
2402      }
2403    },
2404    {
2405      pageId: "/pages/blog/@slug",
2406      isErrorPage: void 0,
2407      routeFilesystem: {
2408        routeString: "/blog/@slug",
2409        definedAtLocation: "/pages/blog/@slug/"
2410      },
2411      loadConfigValuesAll: () => ({
2412        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/blog/@slug",
2413        moduleExports: E(() => import("./pages_blog_-slug.Coq1b29_.js"), __vite__mapDeps([15,1,2,3,4,5,16,17,13,7,14]))
2414      }),
2415      configValuesSerialized: {
2416        isClientRuntimeLoaded: {
2417          type: "computed",
2418          definedAtData: null,
2419          valueSerialized: {
2420            type: "js-serialized",
2421            value: true
2422          }
2423        },
2424        onBeforeRenderEnv: {
2425          type: "computed",
2426          definedAtData: null,
2427          valueSerialized: {
2428            type: "js-serialized",
2429            value: {
2430              server: true
2431            }
2432          }
2433        },
2434        dataEnv: {
2435          type: "computed",
2436          definedAtData: null,
2437          valueSerialized: {
2438            type: "js-serialized",
2439            value: null
2440          }
2441        },
2442        clientRouting: {
2443          type: "standard",
2444          definedAtData: {
2445            filePathToShowToUser: "vike-react/config",
2446            fileExportPathToShowToUser: [
2447              "default",
2448              "clientRouting"
2449            ]
2450          },
2451          valueSerialized: {
2452            type: "js-serialized",
2453            value: true
2454          }
2455        }
2456      }
2457    },
2458    {
2459      pageId: "/pages/contactUs",
2460      isErrorPage: void 0,
2461      routeFilesystem: {
2462        routeString: "/contactUs",
2463        definedAtLocation: "/pages/contactUs/"
2464      },
2465      loadConfigValuesAll: () => ({
2466        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/contactUs",
2467        moduleExports: E(() => import("./pages_contactUs.8yb-8lhV.js"), __vite__mapDeps([18,1,2,3,4,5,6,7]))
2468      }),
2469      configValuesSerialized: {
2470        isClientRuntimeLoaded: {
2471          type: "computed",
2472          definedAtData: null,
2473          valueSerialized: {
2474            type: "js-serialized",
2475            value: true
2476          }
2477        },
2478        onBeforeRenderEnv: {
2479          type: "computed",
2480          definedAtData: null,
2481          valueSerialized: {
2482            type: "js-serialized",
2483            value: {
2484              server: true
2485            }
2486          }
2487        },
2488        dataEnv: {
2489          type: "computed",
2490          definedAtData: null,
2491          valueSerialized: {
2492            type: "js-serialized",
2493            value: null
2494          }
2495        },
2496        clientRouting: {
2497          type: "standard",
2498          definedAtData: {
2499            filePathToShowToUser: "vike-react/config",
2500            fileExportPathToShowToUser: [
2501              "default",
2502              "clientRouting"
2503            ]
2504          },
2505          valueSerialized: {
2506            type: "js-serialized",
2507            value: true
2508          }
2509        }
2510      }
2511    },
2512    {
2513      pageId: "/pages/cooperate",
2514      isErrorPage: void 0,
2515      routeFilesystem: {
2516        routeString: "/cooperate",
2517        definedAtLocation: "/pages/cooperate/"
2518      },
2519      loadConfigValuesAll: () => ({
2520        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/cooperate",
2521        moduleExports: E(() => import("./pages_cooperate.CQgNVjBZ.js"), __vite__mapDeps([19,1,2,3,4,5,6,7]))
2522      }),
2523      configValuesSerialized: {
2524        isClientRuntimeLoaded: {
2525          type: "computed",
2526          definedAtData: null,
2527          valueSerialized: {
2528            type: "js-serialized",
2529            value: true
2530          }
2531        },
2532        onBeforeRenderEnv: {
2533          type: "computed",
2534          definedAtData: null,
2535          valueSerialized: {
2536            type: "js-serialized",
2537            value: {
2538              server: true
2539            }
2540          }
2541        },
2542        dataEnv: {
2543          type: "computed",
2544          definedAtData: null,
2545          valueSerialized: {
2546            type: "js-serialized",
2547            value: null
2548          }
2549        },
2550        clientRouting: {
2551          type: "standard",
2552          definedAtData: {
2553            filePathToShowToUser: "vike-react/config",
2554            fileExportPathToShowToUser: [
2555              "default",
2556              "clientRouting"
2557            ]
2558          },
2559          valueSerialized: {
2560            type: "js-serialized",
2561            value: true
2562          }
2563        }
2564      }
2565    },
2566    {
2567      pageId: "/pages/copyright",
2568      isErrorPage: void 0,
2569      routeFilesystem: {
2570        routeString: "/copyright",
2571        definedAtLocation: "/pages/copyright/"
2572      },
2573      loadConfigValuesAll: () => ({
2574        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/copyright",
2575        moduleExports: E(() => import("./pages_copyright.BpVaFymp.js"), __vite__mapDeps([20,1,2,3,4,5,6,7]))
2576      }),
2577      configValuesSerialized: {
2578        isClientRuntimeLoaded: {
2579          type: "computed",
2580          definedAtData: null,
2581          valueSerialized: {
2582            type: "js-serialized",
2583            value: true
2584          }
2585        },
2586        onBeforeRenderEnv: {
2587          type: "computed",
2588          definedAtData: null,
2589          valueSerialized: {
2590            type: "js-serialized",
2591            value: {
2592              server: true
2593            }
2594          }
2595        },
2596        dataEnv: {
2597          type: "computed",
2598          definedAtData: null,
2599          valueSerialized: {
2600            type: "js-serialized",
2601            value: null
2602          }
2603        },
2604        clientRouting: {
2605          type: "standard",
2606          definedAtData: {
2607            filePathToShowToUser: "vike-react/config",
2608            fileExportPathToShowToUser: [
2609              "default",
2610              "clientRouting"
2611            ]
2612          },
2613          valueSerialized: {
2614            type: "js-serialized",
2615            value: true
2616          }
2617        }
2618      }
2619    },
2620    {
2621      pageId: "/pages/help-recharge",
2622      isErrorPage: void 0,
2623      routeFilesystem: {
2624        routeString: "/help-recharge",
2625        definedAtLocation: "/pages/help-recharge/"
2626      },
2627      loadConfigValuesAll: () => ({
2628        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/help-recharge",
2629        moduleExports: E(() => import("./pages_help-recharge.CmK43nRV.js"), __vite__mapDeps([21,1,2,3,4,5,6,7]))
2630      }),
2631      configValuesSerialized: {
2632        isClientRuntimeLoaded: {
2633          type: "computed",
2634          definedAtData: null,
2635          valueSerialized: {
2636            type: "js-serialized",
2637            value: true
2638          }
2639        },
2640        onBeforeRenderEnv: {
2641          type: "computed",
2642          definedAtData: null,
2643          valueSerialized: {
2644            type: "js-serialized",
2645            value: {
2646              server: true
2647            }
2648          }
2649        },
2650        dataEnv: {
2651          type: "computed",
2652          definedAtData: null,
2653          valueSerialized: {
2654            type: "js-serialized",
2655            value: null
2656          }
2657        },
2658        clientRouting: {
2659          type: "standard",
2660          definedAtData: {
2661            filePathToShowToUser: "vike-react/config",
2662            fileExportPathToShowToUser: [
2663              "default",
2664              "clientRouting"
2665            ]
2666          },
2667          valueSerialized: {
2668            type: "js-serialized",
2669            value: true
2670          }
2671        }
2672      }
2673    },
2674    {
2675      pageId: "/pages/help-useGpt",
2676      isErrorPage: void 0,
2677      routeFilesystem: {
2678        routeString: "/help-useGpt",
2679        definedAtLocation: "/pages/help-useGpt/"
2680      },
2681      loadConfigValuesAll: () => ({
2682        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/help-useGpt",
2683        moduleExports: E(() => import("./pages_help-useGpt.B9pQtMVf.js"), __vite__mapDeps([22,1,2,3,4,5,6,7]))
2684      }),
2685      configValuesSerialized: {
2686        isClientRuntimeLoaded: {
2687          type: "computed",
2688          definedAtData: null,
2689          valueSerialized: {
2690            type: "js-serialized",
2691            value: true
2692          }
2693        },
2694        onBeforeRenderEnv: {
2695          type: "computed",
2696          definedAtData: null,
2697          valueSerialized: {
2698            type: "js-serialized",
2699            value: {
2700              server: true
2701            }
2702          }
2703        },
2704        dataEnv: {
2705          type: "computed",
2706          definedAtData: null,
2707          valueSerialized: {
2708            type: "js-serialized",
2709            value: null
2710          }
2711        },
2712        clientRouting: {
2713          type: "standard",
2714          definedAtData: {
2715            filePathToShowToUs
2715er: "vike-react/config",
2716            fileExportPathToShowToUser: [
2717              "default",
2718              "clientRouting"
2719            ]
2720          },
2721          valueSerialized: {
2722            type: "js-serialized",
2723            value: true
2724          }
2725        }
2726      }
2727    },
2728    {
2729      pageId: "/pages/help-useNetflix",
2730      isErrorPage: void 0,
2731      routeFilesystem: {
2732        routeString: "/help-useNetflix",
2733        definedAtLocation: "/pages/help-useNetflix/"
2734      },
2735      loadConfigValuesAll: () => ({
2736        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/help-useNetflix",
2737        moduleExports: E(() => import("./pages_help-useNetflix.CXyCqiRX.js"), __vite__mapDeps([23,1,2,3,4,5,6,7]))
2738      }),
2739      configValuesSerialized: {
2740        isClientRuntimeLoaded: {
2741          type: "computed",
2742          definedAtData: null,
2743          valueSerialized: {
2744            type: "js-serialized",
2745            value: true
2746          }
2747        },
2748        onBeforeRenderEnv: {
2749          type: "computed",
2750          definedAtData: null,
2751          valueSerialized: {
2752            type: "js-serialized",
2753            value: {
2754              server: true
2755            }
2756          }
2757        },
2758        dataEnv: {
2759          type: "computed",
2760          definedAtData: null,
2761          valueSerialized: {
2762            type: "js-serialized",
2763            value: null
2764          }
2765        },
2766        clientRouting: {
2767          type: "standard",
2768          definedAtData: {
2769            filePathToShowToUser: "vike-react/config",
2770            fileExportPathToShowToUser: [
2771              "default",
2772              "clientRouting"
2773            ]
2774          },
2775          valueSerialized: {
2776            type: "js-serialized",
2777            value: true
2778          }
2779        }
2780      }
2781    },
2782    {
2783      pageId: "/pages/help-ytbRegion",
2784      isErrorPage: void 0,
2785      routeFilesystem: {
2786        routeString: "/help-ytbRegion",
2787        definedAtLocation: "/pages/help-ytbRegion/"
2788      },
2789      loadConfigValuesAll: () => ({
2790        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/help-ytbRegion",
2791        moduleExports: E(() => import("./pages_help-ytbRegion.D-jcWGei.js"), __vite__mapDeps([24,1,2,3,4,5,6,7]))
2792      }),
2793      configValuesSerialized: {
2794        isClientRuntimeLoaded: {
2795          type: "computed",
2796          definedAtData: null,
2797          valueSerialized: {
2798            type: "js-serialized",
2799            value: true
2800          }
2801        },
2802        onBeforeRenderEnv: {
2803          type: "computed",
2804          definedAtData: null,
2805          valueSerialized: {
2806            type: "js-serialized",
2807            value: {
2808              server: true
2809            }
2810          }
2811        },
2812        dataEnv: {
2813          type: "computed",
2814          definedAtData: null,
2815          valueSerialized: {
2816            type: "js-serialized",
2817            value: null
2818          }
2819        },
2820        clientRouting: {
2821          type: "standard",
2822          definedAtData: {
2823            filePathToShowToUser: "vike-react/config",
2824            fileExportPathToShowToUser: [
2825              "default",
2826              "clientRouting"
2827            ]
2828          },
2829          valueSerialized: {
2830            type: "js-serialized",
2831            value: true
2832          }
2833        }
2834      }
2835    },
2836    {
2837      pageId: "/pages/index",
2838      isErrorPage: void 0,
2839      routeFilesystem: {
2840        routeString: "/",
2841        definedAtLocation: "/pages/index/"
2842      },
2843      loadConfigValuesAll: () => ({
2844        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/index",
2845        moduleExports: E(() => import("./pages_index.DCZt-MI_.js"), __vite__mapDeps([25,1,2,3,4,5,6,7]))
2846      }),
2847      configValuesSerialized: {
2848        isClientRuntimeLoaded: {
2849          type: "computed",
2850          definedAtData: null,
2851          valueSerialized: {
2852            type: "js-serialized",
2853            value: true
2854          }
2855        },
2856        onBeforeRenderEnv: {
2857          type: "computed",
2858          definedAtData: null,
2859          valueSerialized: {
2860            type: "js-serialized",
2861            value: {
2862              server: true
2863            }
2864          }
2865        },
2866        dataEnv: {
2867          type: "computed",
2868          definedAtData: null,
2869          valueSerialized: {
2870            type: "js-serialized",
2871            value: null
2872          }
2873        },
2874        clientRouting: {
2875          type: "standard",
2876          definedAtData: {
2877            filePathToShowToUser: "vike-react/config",
2878            fileExportPathToShowToUser: [
2879              "default",
2880              "clientRouting"
2881            ]
2882          },
2883          valueSerialized: {
2884            type: "js-serialized",
2885            value: true
2886          }
2887        }
2888      }
2889    },
2890    {
2891      pageId: "/pages/privacy-policy",
2892      isErrorPage: void 0,
2893      routeFilesystem: {
2894        routeString: "/privacy-policy",
2895        definedAtLocation: "/pages/privacy-policy/"
2896      },
2897      loadConfigValuesAll: () => ({
2898        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/privacy-policy",
2899        moduleExports: E(() => import("./pages_privacy-policy.DZKHnXsh.js"), __vite__mapDeps([26,1,2,3,4,5,6,7]))
2900      }),
2901      configValuesSerialized: {
2902        isClientRuntimeLoaded: {
2903          type: "computed",
2904          definedAtData: null,
2905          valueSerialized: {
2906            type: "js-serialized",
2907            value: true
2908          }
2909        },
2910        onBeforeRenderEnv: {
2911          type: "computed",
2912          definedAtData: null,
2913          valueSerialized: {
2914            type: "js-serialized",
2915            value: {
2916              server: true
2917            }
2918          }
2919        },
2920        dataEnv: {
2921          type: "computed",
2922          definedAtData: null,
2923          valueSerialized: {
2924            type: "js-serialized",
2925            value: null
2926          }
2927        },
2928        clientRouting: {
2929          type: "standard",
2930          definedAtData: {
2931            filePathToShowToUser: "vike-react/config",
2932            fileExportPathToShowToUser: [
2933              "default",
2934              "clientRouting"
2935            ]
2936          },
2937          valueSerialized: {
2938            type: "js-serialized",
2939            value: true
2940          }
2941        }
2942      }
2943    },
2944    {
2945      pageId: "/pages/product/@slug",
2946      isErrorPage: void 0,
2947      routeFilesystem: {
2948        routeString: "/product/@slug",
2949        definedAtLocation: "/pages/product/@slug/"
2950      },
2951      loadConfigValuesAll: () => ({
2952        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/product/@slug",
2953        moduleExports: E(() => import("./pages_product_-slug.CLknIk3l.js"), __vite__mapDeps([27,1,2,3,4,5,28,6,7,14,17]))
2954      }),
2955      configValuesSerialized: {
2956        isClientRuntimeLoaded: {
2957          type: "computed",
2958          definedAtData: null,
2959          valueSerialized: {
2960            type: "js-serialized",
2961            value: true
2962          }
2963        },
2964        onBeforeRenderEnv: {
2965          type: "computed",
2966          definedAtData: null,
2967          valueSerialized: {
2968            type: "js-serialized",
2969            value: {
2970              server: true
2971            }
2972          }
2973        },
2974        dataEnv: {
2975          type: "computed",
2976          definedAtData: null,
2977          valueSerialized: {
2978            type: "js-serialized",
2979            value: null
2980          }
2981        },
2982        clientRouting: {
2983          type: "standard",
2984          definedAtData: {
2985            filePathToShowToUser: "vike-react/config",
2986            fileExportPathToShowToUser: [
2987              "default",
2988              "clientRouting"
2989            ]
2990          },
2991          valueSerialized: {
2992            type: "js-serialized",
2993            value: true
2994          }
2995        }
2996      }
2997    },
2998    {
2999      pageId: "/pages/refund-policy",
3000      isErrorPage: void 0,
3001      routeFilesystem: {
3002        routeString: "/refund-policy",
3003        definedAtLocation: "/pages/refund-policy/"
3004      },
3005      loadConfigValuesAll: () => ({
3006        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/refund-policy",
3007        moduleExports: E(() => import("./pages_refund-policy.DI4H0vQ3.js"), __vite__mapDeps([29,1,2,3,4,5,6,7]))
3008      }),
3009      configValuesSerialized: {
3010        isClientRuntimeLoaded: {
3011          type: "computed",
3012          definedAtData: null,
3013          valueSerialized: {
3014            type: "js-serialized",
3015            value: true
3016          }
3017        },
3018        onBeforeRenderEnv: {
3019          type: "computed",
3020          definedAtData: null,
3021          valueSerialized: {
3022            type: "js-serialized",
3023            value: {
3024              server: true
3025            }
3026          }
3027        },
3028        dataEnv: {
3029          type: "computed",
3030          definedAtData: null,
3031          valueSerialized: {
3032            type: "js-serialized",
3033            value: null
3034          }
3035        },
3036        clientRouting: {
3037          type: "standard",
3038          definedAtData: {
3039            filePathToShowToUser: "vike-react/config",
3040            fileExportPathToShowToUser: [
3041              "default",
3042              "clientRouting"
3043            ]
3044          },
3045          valueSerialized: {
3046            type: "js-serialized",
3047            value: true
3048          }
3049        }
3050      }
3051    },
3052    {
3053      pageId: "/pages/terms",
3054      isErrorPage: void 0,
3055      routeFilesystem: {
3056        routeString: "/terms",
3057        definedAtLocation: "/pages/terms/"
3058      },
3059      loadConfigValuesAll: () => ({
3060        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/terms",
3061        moduleExports: E(() => import("./pages_terms.Duvwdv5J.js"), __vite__mapDeps([30,1,2,3,4,5,6,7]))
3062      }),
3063      configValuesSerialized: {
3064        isClientRuntimeLoaded: {
3065          type: "computed",
3066          definedAtData: null,
3067          valueSerialized: {
3068            type: "js-serialized",
3069            value: true
3070          }
3071        },
3072        onBeforeRenderEnv: {
3073          type: "computed",
3074          definedAtData: null,
3075          valueSerialized: {
3076            type: "js-serialized",
3077            value: {
3078              server: true
3079            }
3080          }
3081        },
3082        dataEnv: {
3083          type: "computed",
3084          definedAtData: null,
3085          valueSerialized: {
3086            type: "js-serialized",
3087            value: null
3088          }
3089        },
3090        clientRouting: {
3091          type: "standard",
3092          definedAtData: {
3093            filePathToShowToUser: "vike-react/config",
3094            fileExportPathToShowToUser: [
3095              "default",
3096              "clientRouting"
3097            ]
3098          },
3099          valueSerialized: {
3100            type: "js-serialized",
3101            value: true
3102          }
3103        }
3104      }
3105    },
3106    {
3107      pageId: "/pages/@lang/GuideDiscord",
3108      isErrorPage: void 0,
3109      routeFilesystem: {
3110        routeString: "/@lang/GuideDiscord",
3111        definedAtLocation: "/pages/@lang/GuideDiscord/"
3112      },
3113      loadConfigValuesAll: () => ({
3114        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/GuideDiscord",
3115        moduleExports: E(() => import("./pages_-lang_GuideDiscord.BCQjQpcH.js"), __vite__mapDeps([31,1,2,3,4,5,6,7]))
3116      }),
3117      configValuesSerialized: {
3118        isClientRuntimeLoaded: {
3119          type: "computed",
3120          definedAtData: null,
3121          valueSerialized: {
3122            type: "js-serialized",
3123            value: true
3124          }
3125        },
3126        onBeforeRenderEnv: {
3127          type: "computed",
3128          definedAtData: null,
3129          valueSerialized: {
3130            type: "js-serialized",
3131            value: {
3132              server: true
3133            }
3134          }
3135        },
3136        dataEnv: {
3137          type: "computed",
3138          definedAtData: null,
3139          valueSerialized: {
3140            type: "js-serialized",
3141            value: null
3142          }
3143        },
3144        route: {
3145          type: "standard",
3146          definedAtData: {
3147            filePathToShowToUser: "/pages/@lang/GuideDiscord/+route.ts",
3148            fileExportPathToShowToUser: []
3149          },
3150          valueSerialized: {
3151            type: "plus-file",
3152            exportValues: uo
3153          }
3154        },
3155        clientRouting: {
3156          type: "standard",
3157          definedAtData: {
3158            filePathToShowToUser: "vike-react/config",
3159            fileExportPathToShowToUser: [
3160              "default",
3161              "clientRouting"
3162            ]
3163          },
3164          valueSerialized: {
3165            type: "js-serialized",
3166            value: true
3167          }
3168        }
3169      }
3170    },
3171    {
3172      pageId: "/pages/@lang/aboutUs",
3173      isErrorPage: void 0,
3174      routeFilesystem: {
3175        routeString: "/@lang/aboutUs",
3176        definedAtLocation: "/pages/@lang/aboutUs/"
3177      },
3178      loadConfigValuesAll: () => ({
3179        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/aboutUs",
3180        moduleExports: E(() => import("./pages_-lang_aboutUs.DF_uytW5.js"), __vite__mapDeps([32,1,2,3,4,5,6,7]))
3181      }),
3182      configValuesSerialized: {
3183        isClientRuntimeLoaded: {
3184          type: "computed",
3185          definedAtData: null,
3186          valueSerialized: {
3187            type: "js-serialized",
3188            value: true
3189          }
3190        },
3191        onBeforeRenderEnv: {
3192          type: "computed",
3193          definedAtData: null,
3194          valueSerialized: {
3195            type: "js-serialized",
3196            value: {
3197              server: true
3198            }
3199          }
3200        },
3201        dataEnv: {
3202          type: "computed",
3203          definedAtData: null,
3204          valueSerialized: {
3205            type: "js-serialized",
3206            value: null
3207          }
3208        },
3209        route: {
3210          type: "standard",
3211          definedAtData: {
3212            filePathToShowToUser: "/pages/@lang/aboutUs/+route.ts",
3213            fileExportPathToShowToUser: []
3214          },
3215          valueSerialized: {
3216            type: "plus-file",
3217            exportValues: fo
3218          }
3219        },
3220        clientRouting: {
3221          type: "standard",
3222          definedAtData: {
3223            filePathToShowToUser: "vike-react/config",
3224            fileExportPathToShowToUser: [
3225              "default",
3226              "clientRouting"
3227            ]
3228          },
3229          valueSerialized: {
3230            type: "js-serialized",
3231            value: true
3232          }
3233        }
3234      }
3235    },
3236    {
3237      pageId: "/pages/@lang/affiliate",
3238      isErrorPage: void 0,
3239      routeFilesystem: {
3240        routeString: "/@lang/affiliate",
3241        definedAtLocation: "/pages/@lang/affiliate/"
3242      },
3243      loadConfigValuesAll: () => ({
3244        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/affiliate",
3245        moduleExports: E(() => import("./pages_-lang_affiliate.RazzqSfl.js"), __vite__mapDeps([33,1,2,3,4,5,6,7]))
3246      }),
3247      configValuesSerialized: {
3248        isClientRuntimeLoaded: {
3249          type: "computed",
3250          definedAtData: null,
3251          valueSerialized: {
3252            type: "js-serialized",
3253            value: true
3254          }
3255        },
3256        onBeforeRenderEnv: {
3257          type: "computed",
3258          definedAtData: null,
3259          valueSerialized: {
3260            type: "js-serialized",
3261            value: {
3262              server: true
3263            }
3264          }
3265        },
3266        dataEnv: {
3267          type: "computed",
3268          definedAtData: null,
3269          valueSerialized: {
3270            type: "js-serialized",
3271            value: null
3272          }
3273        },
3274        route: {
3275          type: "standard",
3276          definedAtData: {
3277            filePathToShowToUser: "/pages/@lang/affiliate/+route.ts",
3278            fileExportPathToShowToUser: []
3279          },
3280          valueSerialized: {
3281            type: "plus-file",
3282            exportValues: po
3283          }
3284        },
3285        clientRouting: {
3286          type: "standard",
3287          definedAtData: {
3288            filePathToShowToUser: "vike-react/config",
3289            fileExportPathToShowToUser: [
3290              "default",
3291              "clientRouting"
3292            ]
3293          },
3294          valueSerialized: {
3295            type: "js-serialized",
3296            value: true
3297          }
3298        }
3299      }
3300    },
3301    {
3302      pageId: "/pages/@lang/aml-policy",
3303      isErrorPage: void 0,
3304      routeFilesystem: {
3305        routeString: "/@lang/aml-policy",
3306        definedAtLocation: "/pages/@lang/aml-policy/"
3307      },
3308      loadConfigValuesAll: () => ({
3309        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/aml-policy",
3310        moduleExports: E(() => import("./pages_-lang_aml-policy.C
3310RdGmQtX.js"), __vite__mapDeps([34,1,2,3,4,5,6,7]))
3311      }),
3312      configValuesSerialized: {
3313        isClientRuntimeLoaded: {
3314          type: "computed",
3315          definedAtData: null,
3316          valueSerialized: {
3317            type: "js-serialized",
3318            value: true
3319          }
3320        },
3321        onBeforeRenderEnv: {
3322          type: "computed",
3323          definedAtData: null,
3324          valueSerialized: {
3325            type: "js-serialized",
3326            value: {
3327              server: true
3328            }
3329          }
3330        },
3331        dataEnv: {
3332          type: "computed",
3333          definedAtData: null,
3334          valueSerialized: {
3335            type: "js-serialized",
3336            value: null
3337          }
3338        },
3339        route: {
3340          type: "standard",
3341          definedAtData: {
3342            filePathToShowToUser: "/pages/@lang/aml-policy/+route.ts",
3343            fileExportPathToShowToUser: []
3344          },
3345          valueSerialized: {
3346            type: "plus-file",
3347            exportValues: yo
3348          }
3349        },
3350        clientRouting: {
3351          type: "standard",
3352          definedAtData: {
3353            filePathToShowToUser: "vike-react/config",
3354            fileExportPathToShowToUser: [
3355              "default",
3356              "clientRouting"
3357            ]
3358          },
3359          valueSerialized: {
3360            type: "js-serialized",
3361            value: true
3362          }
3363        }
3364      }
3365    },
3366    {
3367      pageId: "/pages/@lang/blog",
3368      isErrorPage: void 0,
3369      routeFilesystem: {
3370        routeString: "/@lang/blog",
3371        definedAtLocation: "/pages/@lang/blog/"
3372      },
3373      loadConfigValuesAll: () => ({
3374        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/blog",
3375        moduleExports: E(() => import("./pages_-lang_blog.Cqyj7Cj7.js"), __vite__mapDeps([35,1,2,3,4,5,12,13,14]))
3376      }),
3377      configValuesSerialized: {
3378        isClientRuntimeLoaded: {
3379          type: "computed",
3380          definedAtData: null,
3381          valueSerialized: {
3382            type: "js-serialized",
3383            value: true
3384          }
3385        },
3386        onBeforeRenderEnv: {
3387          type: "computed",
3388          definedAtData: null,
3389          valueSerialized: {
3390            type: "js-serialized",
3391            value: {
3392              server: true
3393            }
3394          }
3395        },
3396        dataEnv: {
3397          type: "computed",
3398          definedAtData: null,
3399          valueSerialized: {
3400            type: "js-serialized",
3401            value: null
3402          }
3403        },
3404        route: {
3405          type: "standard",
3406          definedAtData: {
3407            filePathToShowToUser: "/pages/@lang/blog/+route.ts",
3408            fileExportPathToShowToUser: []
3409          },
3410          valueSerialized: {
3411            type: "plus-file",
3412            exportValues: Po
3413          }
3414        },
3415        clientRouting: {
3416          type: "standard",
3417          definedAtData: {
3418            filePathToShowToUser: "vike-react/config",
3419            fileExportPathToShowToUser: [
3420              "default",
3421              "clientRouting"
3422            ]
3423          },
3424          valueSerialized: {
3425            type: "js-serialized",
3426            value: true
3427          }
3428        }
3429      }
3430    },
3431    {
3432      pageId: "/pages/@lang/blog/@slug",
3433      isErrorPage: void 0,
3434      routeFilesystem: {
3435        routeString: "/@lang/blog/@slug",
3436        definedAtLocation: "/pages/@lang/blog/@slug/"
3437      },
3438      loadConfigValuesAll: () => ({
3439        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/blog/@slug",
3440        moduleExports: E(() => import("./pages_-lang_blog_-slug.t3H6-sQ8.js"), __vite__mapDeps([36,1,2,3,4,5,16,17,13,7,14]))
3441      }),
3442      configValuesSerialized: {
3443        isClientRuntimeLoaded: {
3444          type: "computed",
3445          definedAtData: null,
3446          valueSerialized: {
3447            type: "js-serialized",
3448            value: true
3449          }
3450        },
3451        onBeforeRenderEnv: {
3452          type: "computed",
3453          definedAtData: null,
3454          valueSerialized: {
3455            type: "js-serialized",
3456            value: {
3457              server: true
3458            }
3459          }
3460        },
3461        dataEnv: {
3462          type: "computed",
3463          definedAtData: null,
3464          valueSerialized: {
3465            type: "js-serialized",
3466            value: null
3467          }
3468        },
3469        route: {
3470          type: "standard",
3471          definedAtData: {
3472            filePathToShowToUser: "/pages/@lang/blog/@slug/+route.ts",
3473            fileExportPathToShowToUser: []
3474          },
3475          valueSerialized: {
3476            type: "plus-file",
3477            exportValues: Ro
3478          }
3479        },
3480        clientRouting: {
3481          type: "standard",
3482          definedAtData: {
3483            filePathToShowToUser: "vike-react/config",
3484            fileExportPathToShowToUser: [
3485              "default",
3486              "clientRouting"
3487            ]
3488          },
3489          valueSerialized: {
3490            type: "js-serialized",
3491            value: true
3492          }
3493        }
3494      }
3495    },
3496    {
3497      pageId: "/pages/@lang/contactUs",
3498      isErrorPage: void 0,
3499      routeFilesystem: {
3500        routeString: "/@lang/contactUs",
3501        definedAtLocation: "/pages/@lang/contactUs/"
3502      },
3503      loadConfigValuesAll: () => ({
3504        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/contactUs",
3505        moduleExports: E(() => import("./pages_-lang_contactUs.C-Z7jOKc.js"), __vite__mapDeps([37,1,2,3,4,5,6,7]))
3506      }),
3507      configValuesSerialized: {
3508        isClientRuntimeLoaded: {
3509          type: "computed",
3510          definedAtData: null,
3511          valueSerialized: {
3512            type: "js-serialized",
3513            value: true
3514          }
3515        },
3516        onBeforeRenderEnv: {
3517          type: "computed",
3518          definedAtData: null,
3519          valueSerialized: {
3520            type: "js-serialized",
3521            value: {
3522              server: true
3523            }
3524          }
3525        },
3526        dataEnv: {
3527          type: "computed",
3528          definedAtData: null,
3529          valueSerialized: {
3530            type: "js-serialized",
3531            value: null
3532          }
3533        },
3534        route: {
3535          type: "standard",
3536          definedAtData: {
3537            filePathToShowToUser: "/pages/@lang/contactUs/+route.ts",
3538            fileExportPathToShowToUser: []
3539          },
3540          valueSerialized: {
3541            type: "plus-file",
3542            exportValues: Ao
3543          }
3544        },
3545        clientRouting: {
3546          type: "standard",
3547          definedAtData: {
3548            filePathToShowToUser: "vike-react/config",
3549            fileExportPathToShowToUser: [
3550              "default",
3551              "clientRouting"
3552            ]
3553          },
3554          valueSerialized: {
3555            type: "js-serialized",
3556            value: true
3557          }
3558        }
3559      }
3560    },
3561    {
3562      pageId: "/pages/@lang/cooperate",
3563      isErrorPage: void 0,
3564      routeFilesystem: {
3565        routeString: "/@lang/cooperate",
3566        definedAtLocation: "/pages/@lang/cooperate/"
3567      },
3568      loadConfigValuesAll: () => ({
3569        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/cooperate",
3570        moduleExports: E(() => import("./pages_-lang_cooperate.DnR1-maX.js"), __vite__mapDeps([38,1,2,3,4,5,6,7]))
3571      }),
3572      configValuesSerialized: {
3573        isClientRuntimeLoaded: {
3574          type: "computed",
3575          definedAtData: null,
3576          valueSerialized: {
3577            type: "js-serialized",
3578            value: true
3579          }
3580        },
3581        onBeforeRenderEnv: {
3582          type: "computed",
3583          definedAtData: null,
3584          valueSerialized: {
3585            type: "js-serialized",
3586            value: {
3587              server: true
3588            }
3589          }
3590        },
3591        dataEnv: {
3592          type: "computed",
3593          definedAtData: null,
3594          valueSerialized: {
3595            type: "js-serialized",
3596            value: null
3597          }
3598        },
3599        route: {
3600          type: "standard",
3601          definedAtData: {
3602            filePathToShowToUser: "/pages/@lang/cooperate/+route.ts",
3603            fileExportPathToShowToUser: []
3604          },
3605          valueSerialized: {
3606            type: "plus-file",
3607            exportValues: bo
3608          }
3609        },
3610        clientRouting: {
3611          type: "standard",
3612          definedAtData: {
3613            filePathToShowToUser: "vike-react/config",
3614            fileExportPathToShowToUser: [
3615              "default",
3616              "clientRouting"
3617            ]
3618          },
3619          valueSerialized: {
3620            type: "js-serialized",
3621            value: true
3622          }
3623        }
3624      }
3625    },
3626    {
3627      pageId: "/pages/@lang/copyright",
3628      isErrorPage: void 0,
3629      routeFilesystem: {
3630        routeString: "/@lang/copyright",
3631        definedAtLocation: "/pages/@lang/copyright/"
3632      },
3633      loadConfigValuesAll: () => ({
3634        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/copyright",
3635        moduleExports: E(() => import("./pages_-lang_copyright._Z_R-XKv.js"), __vite__mapDeps([39,1,2,3,4,5,6,7]))
3636      }),
3637      configValuesSerialized: {
3638        isClientRuntimeLoaded: {
3639          type: "computed",
3640          definedAtData: null,
3641          valueSerialized: {
3642            type: "js-serialized",
3643            value: true
3644          }
3645        },
3646        onBeforeRenderEnv: {
3647          type: "computed",
3648          definedAtData: null,
3649          valueSerialized: {
3650            type: "js-serialized",
3651            value: {
3652              server: true
3653            }
3654          }
3655        },
3656        dataEnv: {
3657          type: "computed",
3658          definedAtData: null,
3659          valueSerialized: {
3660            type: "js-serialized",
3661            value: null
3662          }
3663        },
3664        route: {
3665          type: "standard",
3666          definedAtData: {
3667            filePathToShowToUser: "/pages/@lang/copyright/+route.ts",
3668            fileExportPathToShowToUser: []
3669          },
3670          valueSerialized: {
3671            type: "plus-file",
3672            exportValues: wo
3673          }
3674        },
3675        clientRouting: {
3676          type: "standard",
3677          definedAtData: {
3678            filePathToShowToUser: "vike-react/config",
3679            fileExportPathToShowToUser: [
3680              "default",
3681              "clientRouting"
3682            ]
3683          },
3684          valueSerialized: {
3685            type: "js-serialized",
3686            value: true
3687          }
3688        }
3689      }
3690    },
3691    {
3692      pageId: "/pages/@lang/help-recharge",
3693      isErrorPage: void 0,
3694      routeFilesystem: {
3695        routeString: "/@lang/help-recharge",
3696        definedAtLocation: "/pages/@lang/help-recharge/"
3697      },
3698      loadConfigValuesAll: () => ({
3699        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/help-recharge",
3700        moduleExports: E(() => import("./pages_-lang_help-recharge.Cs1Lh99W.js"), __vite__mapDeps([40,1,2,3,4,5,6,7]))
3701      }),
3702      configValuesSerialized: {
3703        isClientRuntimeLoaded: {
3704          type: "computed",
3705          definedAtData: null,
3706          valueSerialized: {
3707            type: "js-serialized",
3708            value: true
3709          }
3710        },
3711        onBeforeRenderEnv: {
3712          type: "computed",
3713          definedAtData: null,
3714          valueSerialized: {
3715            type: "js-serialized",
3716            value: {
3717              server: true
3718            }
3719          }
3720        },
3721        dataEnv: {
3722          type: "computed",
3723          definedAtData: null,
3724          valueSerialized: {
3725            type: "js-serialized",
3726            value: null
3727          }
3728        },
3729        route: {
3730          type: "standard",
3731          definedAtData: {
3732            filePathToShowToUser: "/pages/@lang/help-recharge/+route.ts",
3733            fileExportPathToShowToUser: []
3734          },
3735          valueSerialized: {
3736            type: "plus-file",
3737            exportValues: xo
3738          }
3739        },
3740        clientRouting: {
3741          type: "standard",
3742          definedAtData: {
3743            filePathToShowToUser: "vike-react/config",
3744            fileExportPathToShowToUser: [
3745              "default",
3746              "clientRouting"
3747            ]
3748          },
3749          valueSerialized: {
3750            type: "js-serialized",
3751            value: true
3752          }
3753        }
3754      }
3755    },
3756    {
3757      pageId: "/pages/@lang/help-useGpt",
3758      isErrorPage: void 0,
3759      routeFilesystem: {
3760        routeString: "/@lang/help-useGpt",
3761        definedAtLocation: "/pages/@lang/help-useGpt/"
3762      },
3763      loadConfigValuesAll: () => ({
3764        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/help-useGpt",
3765        moduleExports: E(() => import("./pages_-lang_help-useGpt.CrWHC1oD.js"), __vite__mapDeps([41,1,2,3,4,5,6,7]))
3766      }),
3767      configValuesSerialized: {
3768        isClientRuntimeLoaded: {
3769          type: "computed",
3770          definedAtData: null,
3771          valueSerialized: {
3772            type: "js-serialized",
3773            value: true
3774          }
3775        },
3776        onBeforeRenderEnv: {
3777          type: "computed",
3778          definedAtData: null,
3779          valueSerialized: {
3780            type: "js-serialized",
3781            value: {
3782              server: true
3783            }
3784          }
3785        },
3786        dataEnv: {
3787          type: "computed",
3788          definedAtData: null,
3789          valueSerialized: {
3790            type: "js-serialized",
3791            value: null
3792          }
3793        },
3794        route: {
3795          type: "standard",
3796          definedAtData: {
3797            filePathToShowToUser: "/pages/@lang/help-useGpt/+route.ts",
3798            fileExportPathToShowToUser: []
3799          },
3800          valueSerialized: {
3801            type: "plus-file",
3802            exportValues: Io
3803          }
3804        },
3805        clientRouting: {
3806          type: "standard",
3807          definedAtData: {
3808            filePathToShowToUser: "vike-react/config",
3809            fileExportPathToShowToUser: [
3810              "default",
3811              "clientRouting"
3812            ]
3813          },
3814          valueSerialized: {
3815            type: "js-serialized",
3816            value: true
3817          }
3818        }
3819      }
3820    },
3821    {
3822      pageId: "/pages/@lang/help-useNetflix",
3823      isErrorPage: void 0,
3824      routeFilesystem: {
3825        routeString: "/@lang/help-useNetflix",
3826        definedAtLocation: "/pages/@lang/help-useNetflix/"
3827      },
3828      loadConfigValuesAll: () => ({
3829        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/help-useNetflix",
3830        moduleExports: E(() => import("./pages_-lang_help-useNetflix.BBRyJO-k.js"), __vite__mapDeps([42,1,2,3,4,5,6,7]))
3831      }),
3832      configValuesSerialized: {
3833        isClientRuntimeLoaded: {
3834          type: "computed",
3835          definedAtData: null,
3836          valueSerialized: {
3837            type: "js-serialized",
3838            value: true
3839          }
3840        },
3841        onBeforeRenderEnv: {
3842          type: "computed",
3843          definedAtData: null,
3844          valueSerialized: {
3845            type: "js-serialized",
3846            value: {
3847              server: true
3848            }
3849          }
3850        },
3851        dataEnv: {
3852          type: "computed",
3853          definedAtData: null,
3854          valueSerialized: {
3855            type: "js-serialized",
3856            value: null
3857          }
3858        },
3859        route: {
3860          type: "standard",
3861          definedAtData: {
3862            filePathToShowToUser: "/pages/@lang/help-useNetflix/+route.ts",
3863            fileExportPathToShowToUser: []
3864          },
3865          valueSerialized: {
3866            type: "plus-file",
3867            exportValues: Oo
3868          }
3869        },
3870        clientRouting: {
3871          type: "standard",
3872          definedAtData: {
3873            filePathToShowToUser: "vike-react/config",
3874            fileExportPathToShowToUser: [
3875              "default",
3876              "clientRouting"
3877            ]
3878          },
3879          valueSerialized: {
3880            type: "js-serialized",
3881            value: true
3882          }
3883        }
3884      }
3885    },
3886    {
3887      pageId: "/pages/@lang/help-ytbRegion",
3888      isErrorPage: void 0,
3889      routeFilesystem: {
3890        routeString: "/@lang/help-ytbRegion",
3891        definedAtLocation: "/pages/@lang/help-ytbRegion/"
3892      },
3893      loadConfigValuesAll: () => ({
3894        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/help-ytbRegion",
3895        moduleExports: E(() => import("./pages_-lang_help-ytbRegion.DIA1zTqN.js"), __vite__mapDeps([43,1,2,3,4,5,6,7]))
3896      }),
3897      configValuesSeriali
3897zed: {
3898        isClientRuntimeLoaded: {
3899          type: "computed",
3900          definedAtData: null,
3901          valueSerialized: {
3902            type: "js-serialized",
3903            value: true
3904          }
3905        },
3906        onBeforeRenderEnv: {
3907          type: "computed",
3908          definedAtData: null,
3909          valueSerialized: {
3910            type: "js-serialized",
3911            value: {
3912              server: true
3913            }
3914          }
3915        },
3916        dataEnv: {
3917          type: "computed",
3918          definedAtData: null,
3919          valueSerialized: {
3920            type: "js-serialized",
3921            value: null
3922          }
3923        },
3924        route: {
3925          type: "standard",
3926          definedAtData: {
3927            filePathToShowToUser: "/pages/@lang/help-ytbRegion/+route.ts",
3928            fileExportPathToShowToUser: []
3929          },
3930          valueSerialized: {
3931            type: "plus-file",
3932            exportValues: Fo
3933          }
3934        },
3935        clientRouting: {
3936          type: "standard",
3937          definedAtData: {
3938            filePathToShowToUser: "vike-react/config",
3939            fileExportPathToShowToUser: [
3940              "default",
3941              "clientRouting"
3942            ]
3943          },
3944          valueSerialized: {
3945            type: "js-serialized",
3946            value: true
3947          }
3948        }
3949      }
3950    },
3951    {
3952      pageId: "/pages/@lang/index",
3953      isErrorPage: void 0,
3954      routeFilesystem: {
3955        routeString: "/@lang",
3956        definedAtLocation: "/pages/@lang/index/"
3957      },
3958      loadConfigValuesAll: () => ({
3959        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/index",
3960        moduleExports: E(() => import("./pages_-lang_index.pc7R_DM_.js"), __vite__mapDeps([44,1,2,3,4,5,6,7]))
3961      }),
3962      configValuesSerialized: {
3963        isClientRuntimeLoaded: {
3964          type: "computed",
3965          definedAtData: null,
3966          valueSerialized: {
3967            type: "js-serialized",
3968            value: true
3969          }
3970        },
3971        onBeforeRenderEnv: {
3972          type: "computed",
3973          definedAtData: null,
3974          valueSerialized: {
3975            type: "js-serialized",
3976            value: {
3977              server: true
3978            }
3979          }
3980        },
3981        dataEnv: {
3982          type: "computed",
3983          definedAtData: null,
3984          valueSerialized: {
3985            type: "js-serialized",
3986            value: null
3987          }
3988        },
3989        route: {
3990          type: "standard",
3991          definedAtData: {
3992            filePathToShowToUser: "/pages/@lang/index/+route.ts",
3993            fileExportPathToShowToUser: []
3994          },
3995          valueSerialized: {
3996            type: "plus-file",
3997            exportValues: $o
3998          }
3999        },
4000        clientRouting: {
4001          type: "standard",
4002          definedAtData: {
4003            filePathToShowToUser: "vike-react/config",
4004            fileExportPathToShowToUser: [
4005              "default",
4006              "clientRouting"
4007            ]
4008          },
4009          valueSerialized: {
4010            type: "js-serialized",
4011            value: true
4012          }
4013        }
4014      }
4015    },
4016    {
4017      pageId: "/pages/@lang/privacy-policy",
4018      isErrorPage: void 0,
4019      routeFilesystem: {
4020        routeString: "/@lang/privacy-policy",
4021        definedAtLocation: "/pages/@lang/privacy-policy/"
4022      },
4023      loadConfigValuesAll: () => ({
4024        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/privacy-policy",
4025        moduleExports: E(() => import("./pages_-lang_privacy-policy.3cVNMbxL.js"), __vite__mapDeps([45,1,2,3,4,5,6,7]))
4026      }),
4027      configValuesSerialized: {
4028        isClientRuntimeLoaded: {
4029          type: "computed",
4030          definedAtData: null,
4031          valueSerialized: {
4032            type: "js-serialized",
4033            value: true
4034          }
4035        },
4036        onBeforeRenderEnv: {
4037          type: "computed",
4038          definedAtData: null,
4039          valueSerialized: {
4040            type: "js-serialized",
4041            value: {
4042              server: true
4043            }
4044          }
4045        },
4046        dataEnv: {
4047          type: "computed",
4048          definedAtData: null,
4049          valueSerialized: {
4050            type: "js-serialized",
4051            value: null
4052          }
4053        },
4054        route: {
4055          type: "standard",
4056          definedAtData: {
4057            filePathToShowToUser: "/pages/@lang/privacy-policy/+route.ts",
4058            fileExportPathToShowToUser: []
4059          },
4060          valueSerialized: {
4061            type: "plus-file",
4062            exportValues: Uo
4063          }
4064        },
4065        clientRouting: {
4066          type: "standard",
4067          definedAtData: {
4068            filePathToShowToUser: "vike-react/config",
4069            fileExportPathToShowToUser: [
4070              "default",
4071              "clientRouting"
4072            ]
4073          },
4074          valueSerialized: {
4075            type: "js-serialized",
4076            value: true
4077          }
4078        }
4079      }
4080    },
4081    {
4082      pageId: "/pages/@lang/product/@slug",
4083      isErrorPage: void 0,
4084      routeFilesystem: {
4085        routeString: "/@lang/product/@slug",
4086        definedAtLocation: "/pages/@lang/product/@slug/"
4087      },
4088      loadConfigValuesAll: () => ({
4089        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/product/@slug",
4090        moduleExports: E(() => import("./pages_-lang_product_-slug.Crm6tnuF.js"), __vite__mapDeps([46,1,2,3,4,5,28,6,7,14,17]))
4091      }),
4092      configValuesSerialized: {
4093        isClientRuntimeLoaded: {
4094          type: "computed",
4095          definedAtData: null,
4096          valueSerialized: {
4097            type: "js-serialized",
4098            value: true
4099          }
4100        },
4101        onBeforeRenderEnv: {
4102          type: "computed",
4103          definedAtData: null,
4104          valueSerialized: {
4105            type: "js-serialized",
4106            value: {
4107              server: true
4108            }
4109          }
4110        },
4111        dataEnv: {
4112          type: "computed",
4113          definedAtData: null,
4114          valueSerialized: {
4115            type: "js-serialized",
4116            value: null
4117          }
4118        },
4119        route: {
4120          type: "standard",
4121          definedAtData: {
4122            filePathToShowToUser: "/pages/@lang/product/@slug/+route.ts",
4123            fileExportPathToShowToUser: []
4124          },
4125          valueSerialized: {
4126            type: "plus-file",
4127            exportValues: No
4128          }
4129        },
4130        clientRouting: {
4131          type: "standard",
4132          definedAtData: {
4133            filePathToShowToUser: "vike-react/config",
4134            fileExportPathToShowToUser: [
4135              "default",
4136              "clientRouting"
4137            ]
4138          },
4139          valueSerialized: {
4140            type: "js-serialized",
4141            value: true
4142          }
4143        }
4144      }
4145    },
4146    {
4147      pageId: "/pages/@lang/refund-policy",
4148      isErrorPage: void 0,
4149      routeFilesystem: {
4150        routeString: "/@lang/refund-policy",
4151        definedAtLocation: "/pages/@lang/refund-policy/"
4152      },
4153      loadConfigValuesAll: () => ({
4154        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/refund-policy",
4155        moduleExports: E(() => import("./pages_-lang_refund-policy.CMG0XXkF.js"), __vite__mapDeps([47,1,2,3,4,5,6,7]))
4156      }),
4157      configValuesSerialized: {
4158        isClientRuntimeLoaded: {
4159          type: "computed",
4160          definedAtData: null,
4161          valueSerialized: {
4162            type: "js-serialized",
4163            value: true
4164          }
4165        },
4166        onBeforeRenderEnv: {
4167          type: "computed",
4168          definedAtData: null,
4169          valueSerialized: {
4170            type: "js-serialized",
4171            value: {
4172              server: true
4173            }
4174          }
4175        },
4176        dataEnv: {
4177          type: "computed",
4178          definedAtData: null,
4179          valueSerialized: {
4180            type: "js-serialized",
4181            value: null
4182          }
4183        },
4184        route: {
4185          type: "standard",
4186          definedAtData: {
4187            filePathToShowToUser: "/pages/@lang/refund-policy/+route.ts",
4188            fileExportPathToShowToUser: []
4189          },
4190          valueSerialized: {
4191            type: "plus-file",
4192            exportValues: Mo
4193          }
4194        },
4195        clientRouting: {
4196          type: "standard",
4197          definedAtData: {
4198            filePathToShowToUser: "vike-react/config",
4199            fileExportPathToShowToUser: [
4200              "default",
4201              "clientRouting"
4202            ]
4203          },
4204          valueSerialized: {
4205            type: "js-serialized",
4206            value: true
4207          }
4208        }
4209      }
4210    },
4211    {
4212      pageId: "/pages/@lang/terms",
4213      isErrorPage: void 0,
4214      routeFilesystem: {
4215        routeString: "/@lang/terms",
4216        definedAtLocation: "/pages/@lang/terms/"
4217      },
4218      loadConfigValuesAll: () => ({
4219        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/@lang/terms",
4220        moduleExports: E(() => import("./pages_-lang_terms.dYP7X8Jy.js"), __vite__mapDeps([48,1,2,3,4,5,6,7]))
4221      }),
4222      configValuesSerialized: {
4223        isClientRuntimeLoaded: {
4224          type: "computed",
4225          definedAtData: null,
4226          valueSerialized: {
4227            type: "js-serialized",
4228            value: true
4229          }
4230        },
4231        onBeforeRenderEnv: {
4232          type: "computed",
4233          definedAtData: null,
4234          valueSerialized: {
4235            type: "js-serialized",
4236            value: {
4237              server: true
4238            }
4239          }
4240        },
4241        dataEnv: {
4242          type: "computed",
4243          definedAtData: null,
4244          valueSerialized: {
4245            type: "js-serialized",
4246            value: null
4247          }
4248        },
4249        route: {
4250          type: "standard",
4251          definedAtData: {
4252            filePathToShowToUser: "/pages/@lang/terms/+route.ts",
4253            fileExportPathToShowToUser: []
4254          },
4255          valueSerialized: {
4256            type: "plus-file",
4257            exportValues: Yo
4258          }
4259        },
4260        clientRouting: {
4261          type: "standard",
4262          definedAtData: {
4263            filePathToShowToUser: "vike-react/config",
4264            fileExportPathToShowToUser: [
4265              "default",
4266              "clientRouting"
4267            ]
4268          },
4269          valueSerialized: {
4270            type: "js-serialized",
4271            value: true
4272          }
4273        }
4274      }
4275    },
4276    {
4277      pageId: "/pages/spa",
4278      isErrorPage: void 0,
4279      routeFilesystem: {
4280        routeString: "/spa",
4281        definedAtLocation: "/pages/spa/"
4282      },
4283      loadConfigValuesAll: () => ({
4284        moduleId: "virtual:vike:pageConfigValuesAll:client:/pages/spa",
4285        moduleExports: E(() => import("./pages_spa.C5xTuQKw.js").then(async (m2) => {
4286          await m2.__tla;
4287          return m2;
4288        }).then((e) => e.bX), __vite__mapDeps([49,1,2,3,4,5,28,6,7,14,17,50]))
4289      }),
4290      configValuesSerialized: {
4291        isClientRuntimeLoaded: {
4292          type: "computed",
4293          definedAtData: null,
4294          valueSerialized: {
4295            type: "js-serialized",
4296            value: true
4297          }
4298        },
4299        onBeforeRenderEnv: {
4300          type: "computed",
4301          definedAtData: null,
4302          valueSerialized: {
4303            type: "js-serialized",
4304            value: {
4305              server: true
4306            }
4307          }
4308        },
4309        dataEnv: {
4310          type: "computed",
4311          definedAtData: null,
4312          valueSerialized: {
4313            type: "js-serialized",
4314            value: null
4315          }
4316        },
4317        route: {
4318          type: "standard",
4319          definedAtData: {
4320            filePathToShowToUser: "/pages/spa/+route.ts",
4321            fileExportPathToShowToUser: []
4322          },
4323          valueSerialized: {
4324            type: "plus-file",
4325            exportValues: Zo
4326          }
4327        },
4328        clientRouting: {
4329          type: "standard",
4330          definedAtData: {
4331            filePathToShowToUser: "vike-react/config",
4332            fileExportPathToShowToUser: [
4333              "default",
4334              "clientRouting"
4335            ]
4336          },
4337          valueSerialized: {
4338            type: "js-serialized",
4339            value: true
4340          }
4341        }
4342      }
4343    }
4344  ], na = {
4345    configValuesSerialized: {}
4346  }, ia = Object.assign({}), ra = {
4347    ...ia
4348  };
4349  Ve[".page"] = ra;
4350  const oa = Object.assign({}), aa = {
4351    ...oa
4352  };
4353  ge[".page"] = aa;
4354  const sa = Object.assign({}), la = {
4355    ...sa
4356  };
4357  ge[".page.server"] = la;
4358  const ua = Object.assign({}), da = {
4359    ...ua
4360  };
4361  Pn[".page.route"] = da;
4362  const ca = Object.assign({}), fa = {
4363    ...ca
4364  };
4365  Ve[".page.client"] = fa;
4366  const ga = Object.assign({}), pa = {
4367    ...ga
4368  };
4369  ge[".page.client"] = pa;
4370  const ha = Object.assign({}), ya = {
4371    ...ha
4372  };
4373  En[".page.server"] = ya;
4374  const ma = Object.freeze(Object.defineProperty({
4375    __proto__: null,
4376    neverLoaded: En,
4377    pageConfigGlobalSerialized: na,
4378    pageConfigsSerialized: ta,
4379    pageFilesEager: Pn,
4380    pageFilesExportNamesEager: ge,
4381    pageFilesExportNamesLazy: Qo,
4382    pageFilesLazy: Ve,
4383    pageFilesList: ea
4384  }, Symbol.toStringTag, {
4385    value: "Module"
4386  })), va = eo(ma, true, Sa);
4387  async function Sa(e) {
4388    const { pageRoutes: t, onBeforeRouteHook: n } = await io(e._pageFilesAll, e._pageConfigs, e._pageConfigGlobal, e._allPageIds);
4389    return {
4390      _pageRoutes: t,
4391      _onBeforeRouteHook: n
4392    };
4393  }
4394  async function Rn(e) {
4395    const t = await va(), n = hn();
4396    a(Ie(n));
4397    const i = {
4398      globalContext: t,
4399      _pageFilesAll: t._pageFilesAll,
4400      _pageConfigs: t._pageConfigs,
4401      _pageConfigGlobal: t._pageConfigGlobal,
4402      _allPageIds: t._allPageIds,
4403      _pageRoutes: t._pageRoutes,
4404      _onBeforeRouteHook: t._onBeforeRouteHook,
4405      isClientSide: true,
4406      isPrerendering: false,
4407      urlOriginal: e,
4408      _urlHandler: null,
4409      _urlRewrite: null,
4410      _baseServer: n
4411    }, r = Or(i);
4412    y(i, r);
4413    const o = await Dr(i, t._pageConfigGlobal);
4414    return le(i, o), i;
4415  }
4416  function _n(e, t) {
4417    const n = e.filter((r) => r.pageId === t);
4418    return a(n.length <= 1), n[0] ?? null;
4419  }
4420  async function Pa(e, t) {
4421    if ("isAllLoaded" in e) return e;
4422    const { moduleId: n, moduleExports: i } = e.loadConfigValuesAll(), r = await i;
4423    r || a(false, {
4424      moduleExports: i,
4425      configValuesLoaded: r,
4426      moduleId: n
4427    });
4428    const o = _e(r.configValuesSerialized);
4429    return Object.assign(e.configValues, o), y(e, {
4430      isAllLoaded: true
4431    }), e;
4432  }
4433  const An = "__whileFetchingAssets";
4434  async function Ae(e, t, n, i) {
4435    const r = Fe(t, e), o = _n(n, e);
4436    let s;
4437    const l = false;
4438    try {
4439      s = (await Promise.all([
4440        o && Pa(o, l),
4441        ...r.map((f) => {
4442          var _a2;
4443          return (_a2 = f.loadFile) == null ? void 0 : _a2.call(f);
4444        })
4445      ]))[0];
4446    } catch (c) {
4447      throw Ea(c) && Object.assign(c, {
4448        [An]: true
4449      }), c;
4450    }
4451    const u = xr(r, s, i), d = {};
4452    return y(d, u), y(d, {
4453      _pageFilesLoaded: r
4454    }), d;
4455  }
4456  function Ue(e) {
4457    return e ? e[An] === true : false;
4458  }
4459  function Ea(e) {
4460    return e instanceof Error ? [
4461      "Failed to fetch dynamically imported module",
4462      "error loading dynamically imported module",
4463      "Importing a module script failed",
4464      "error resolving module specifier",
4465      "failed to resolve module"
4466    ].some((n) => e.message.toLowerCase().includes(n.toLowerCase())) : false;
4467  }
4468  function ee(e, t) {
4469    a(!e.startsWith("#"));
4470    const { searchOriginal: n, hashOriginal: i, pathname: r } = ce(e, "/");
4471    let o = `${r}${n || ""}`;
4472    return (t == null ? void 0 : t.withoutHash) || (o += i || ""), a(o.startsWith("/")), o;
4473  }
4474  function Be(e) {
4475    const t = e.getAttribute("href");
4476    return t === null || !Ot(t) || t === "" || ii(t) || Aa(t) || _a(e) || !ba(t) || !Ra(e);
4477  }
4478  function Ra(e) {
4479    if (Ca()) {
4480      const n = e.getAttribute("data-vike-link");
4481      return n !== null && n !== "false";
4482    } else return true;
4483  }
4484  function _a(e) {
4485    const t = e.getAttribute("target"), n = e.getAttribute("rel");
4486    return t === "_blank" || t === "_external" || n === "external" || e.hasAttribute("download");
4487  }
4488  function Aa(e) {
4489    return !!(e.startsWith("#") || e.includes("#") && ee(e, {
4490      withoutHash: true
4491    }) === ee(window.location.href, {
4492      withoutHash: true
4493    }));
4494  }
4495  function Ta(e) {
4496    return e.startsWith("#") ? e === window.location.hash : ee(e) === ee(window.location.href);
4497  }
4498  function ba(e) {
4499    const t = hn();
4500    a(Ie(t));
4501    const { isBaseMissing: n } = ce(e, t);
4502    return !n;
4503  }
4504  function Ca() {
4505    return !!window._disableAutomaticLinkInterception;
4506  }
4507  function Z(e) {
4508    return e.fileType === ".css" ? [] : e.exportNames ? e.exportNames : (a(e.fileExports, e.filePath), Object.keys(e.fileExports));
4509  }
4510  function wa({ pageFilesClientSide: e, pageFilesServerSide: t, pageId: n }) {
4511    return {
4512      isHtmlOnly: i(),
4513      isClientRouting: o()
4514    };
4515    function i() {
4516      return t.some((l) => l.pageId === n && l.fileType === ".page") ? (r(), false) : !(!t.some((l) => l.pageId === n && l.fileType === ".page.server") || e.some((l) => l.pageId === n && l.fileType === ".page.client" && Z(l).includes("render")));
4517    }
4518    function r() {
4519      const s = e.some((l) => Z(l).includes("render"));
4520      h(s, [
4521        "No client-side `render()` hook found.",
4522        "See https://vike.dev/render-modes for more information.",
4523        [
4524          "Loaded client-side page files (none of them `export { render }`):",
4525          ...e.map((l, u) => ` (${u + 1}): ${l.filePath}`)
4526        ].join(`
4527`)
4528      ].join(" "));
4529    }
4530    function o() {
4531      return e.some((l) => Z(l).includes("clientRouting"));
4532    }
4533  }
4534  function za({ pageFilesClientSide: e, pageFilesServerSide: t, isHtmlOnly: n, isClientRouting: i }) {
4535    let r = [];
4536    const o = t.filter((l) => !e.includes(l)), s = [];
4537    if (s.push(...e.map((l) => ({
4538      id: l.filePath,
4539      onlyAssets: false,
4540      eagerlyImported: false
4541    }))), s.push(...o.map((l) => ({
4542      id: l.filePath,
4543      onlyAssets: true,
4544      eagerlyImported: false
4545    }))), n) r = e.map((l) => l.filePath);
4546    else {
4547      const l = xa(i);
4548      s.push({
4549        id: l,
4550        onlyAssets: false,
4551        eagerlyImported: false
4552      }), r = [
4553        l
4554      ];
4555    }
4556    return {
4557      clientEntries: r,
4558      clientDependencies: s
4559    };
4560  }
4561  function xa(e) {
4562    return e ? "@@vike/dist/esm/client/client-routing-runtime/entry.js" : "@@vike/dist/esm/client/server-routing-runtime/entry.js";
4563  }
4564  function ja(e, t) {
4565    let n = Fe(e, t);
4566    const i = Wt(e, t), { isHtmlOnly: r, isClientRouting: o } = wa({
4567      pageFilesClientSide: n,
4568      pageFilesServerSide: i,
4569      pageId: t
4570    });
4571    r && (n = n.filter((u) => u.isEnv("CLIENT_ONLY") && !Z(u).includes("render")), n = Da(n));
4572    const { clientEntries: s, clientDependencies: l } = za({
4573      pageFilesClientSide: n,
4574      pageFilesServerSide: i,
4575      isHtmlOnly: r,
4576      isClientRouting: o
4577    });
4578    return {
4579      isHtmlOnly: r,
4580      isClientRouting: o,
4581      clientEntries: s,
4582      clientDependencies: l,
4583      pageFilesClientSide: n,
4584      pageFilesServerSide: i
4585    };
4586  }
4587  async function Ia(e, t, { sharedPageFilesAlreadyLoaded: n }) {
4588    const i = Fe(e, t);
4589    await Promise.all(i.map(async (r) => {
4590      var _a2;
4591      a(r.isEnv("CLIENT_ONLY") || r.isEnv("CLIENT_AND_SERVER")), await ((_a2 = r.loadExportNames) == null ? void 0 : _a2.call(r));
4592    }));
4593  }
4594  function Da(e) {
4595    const t = [];
4596    for (const n of e) if (t.push(n), Z(n).includes("overrideDefaultPages")) break;
4597    return t;
4598  }
4599  function Oa(e, t, n) {
4600    var _a2, _b;
4601    if (e) {
4602      const i = ((_a2 = q(e, "clientRouting", "boolean")) == null ? void 0 : _a2.value) ?? false;
4603      return {
4604        isClientRuntimeLoaded: ((_b = q(e, "isClientRuntimeLoaded", "boolean")) == null ? void 0 : _b.value) ?? false,
4605        isClientRouting: i
4606      };
4607    } else {
4608      const { isHtmlOnly: i, isClientRouting: r } = ja(t, n);
4609      return {
4610        isClientRuntimeLoaded: !i,
4611        isClientRouting: r
4612      };
4613    }
4614  }
4615  async function Te(e, t) {
4616    await Ia(t._pageFilesAll, e, {
4617      sharedPageFilesAlreadyLoaded: false
4618    });
4619    const n = _n(t._pageConfigs, e), { isClientRuntimeLoaded: i, isClientRouting: r } = Oa(n, t._pageFilesAll, e);
4620    return i && r;
4621  }
4622  const Tn = "@", be = ":";
4623  function ka(e, t = "Invalid") {
4624    let n = `${t} Route String ${K(e)}`;
4625    h(e !== "", `${n} (empty string): set it to ${K("/")} instead`), h([
4626      "/",
4627      "*"
4628    ].includes(e[0]), `${n}: it should start with ${K("/")} or ${K("*")}`), h(!e.includes("**"), `${n}: set it to ${K(e.split("**").join("*"))} instead`);
4629  }
4630  function Ce(e, t) {
4631    ka(e);
4632    const n = He(e), i = n.map((f) => f.param ? "[^/]+" : f.glob ? ".*" : _i(f.static)).map((f) => `(${f})`).join(""), r = new RegExp(`^${i}/?$`), o = t.match(r);
4633    if (!o) return null;
4634    const s = {}, [l, ...u] = o;
4635    let d = 0;
4636    const c = n.filter((f) => f.glob).length > 1;
4637    return n.forEach((f, S) => {
4638      let R = u[S];
4639      if (f.param && (s[f.param] = R), f.glob) {
4640        const P = `*${c ? ++d : ""}`;
4641        s[P] = R;
4642      }
4643    }), {
4644      routeParams: s
4645    };
4646  }
4647  function He(e) {
4648    const t = [], n = (r) => {
4649      const o = t[t.length - 1];
4650      (o == null ? void 0 : o.static) ? o.static += r : t.push({
4651        static: r
4652      });
4653    }, i = e.split("/");
4654    return i.forEach((r, o) => {
4655      o !== 0 && n("/"), La(r) ? (C(!r.startsWith(be), `Outdated Route String ${K(e)}, use ${K(e.split(be).join(Tn))} instead`, {
4656        onlyOnce: true
4657      }), t.push({
4658        param: r.slice(1)
4659      })) : r === "*" && o === i.length - 1 && e !== "*" && e !== "/*" ? t.push({
4660        glob: true
4661      }) : r.split("*").forEach((s, l) => {
4662        l !== 0 && t.push({
4663          glob: true
4664        }), s !== "" && n(s);
4665      });
4666    }), t;
4667  }
4668  function Fa(e) {
4669    const t = [];
4670    return He(e).forEach((i) => {
4671      i.param && t.push(i.param);
4672    }), t;
4673  }
4674  function ae(e) {
4675    const t = He(e), n = (l) => (l == null ? void 0 : l.split("/").filter(Boolean).length) || 0;
4676    let i = 0;
4677    for (const l of t) {
4678      if (!l.static) break;
4679      i += n(l.static);
4680    }
4681    const r = t.map((l) => n(l.static)).reduce((l, u) => l + u, 0), o = t.filter((l) => l.param).length, s = t.filter((l) => l.glob).length;
4682    return {
4683      numberOfStaticPartsBeginning: i,
4684      numberOfStaticParts: r,
4685      numberOfParams: o,
4686      numberOfGlobs: s
4687    };
4688  }
4689  function La(e) {
4690    return e.startsWith(Tn) || e.startsWith(be);
4691  }
4692  function pt(e) {
4693    const n = Ce(e, e);
4694    return a(n), Object.keys(n.routeParams).length === 0;
4695  }
4696  function K(e) {
4697    return Y() ? `'${e}'` : (e === "" && (e = "''"), p.cyan(e));
4698  }
4699  function $a(e) {
4700    e.sort(Va).sort(G((t) => t.routeType === "FUNCTION" && !!t.precedence && t.precedence < 0)).sort(G((t) => t.routeType === "STRING" && pt(t.routeString) === false)).sort(G((t) => t.routeType === "FUNCTION" && !t.precedence)).sort(G((t) => t.routeType === "STRING" && pt(t.routeString) === true)).sort(G((t) => t.routeType === "FILESYSTEM")).sort(G((t) => t.routeType === "FUNCTION" && !!t.precedence && t.precedence > 0));
4701  }
4702  function Va(e, t) {
4703    {
4704      const n = e.precedence ?? 0, i = t.precedence ?? 0;
4705      if (n !== i) return n > i ? -1 : 1;
4706    }
4707    if (!t.routeString || !e.routeString) return 0;
4708    {
4709      const i = ue((r) => ae(r).numberOfStaticPartsBeginning)(e.routeString, t.routeString);
4710      if (i !== 0) return i;
4711    }
4712    {
4713      const i = ue((r) => ae(r).numberOfStaticParts)(e.routeString, t.routeString);
4714      if (i !== 0) return i;
4715    }
4716    {
4717      const i = yi((r) => ae(r).numberOfGlobs)(e.routeString, t.routeString);
4718      if (i !== 0) return i;
4719    }
4720    {
4721      const i = ue((r) => ae(r).numberOfParams)(e.routeString, t.routeString);
4722      if (i !== 0) return i;
4723    }
4724    return 0;
4725  }
4726  async function Ua(e) {
4727    const t = {};
4728    if (!e._onBeforeRouteHook) return null;
4729    const n = await Ba(e._onBeforeRouteHook, e);
4730    return n && (y(t, n), m(t, "pageId", "string") || m(t, "pageId", "null")) ? (m(t, "routeParams") ? a(m(t, "routeParams", "object")) : y(t, {
4731      routeParams: {}
4732    }), y(t, {
4733      _routingProvidedByOnBeforeRouteHook: true,
4734      _debugRouteMatches: "CUSTOM_ROUTING"
4735    }), t) : (y(t, {
4736      _routingProvidedByOnBeforeRouteHook: false
4737    }), t);
4738  }
4739  async function Ba(e, t) {
4740    let n = e.hookFn(t);
4741    mn(n, `The onBeforeRoute() hook ${e.hookFilePath}`), n = await U(() => n, e, t);
4742    const i = `The onBeforeRoute() hook defined by ${e.hookFilePath}`;
4743    if (h(n == null || dr(n, [
4744      "pageContext"
4745    ]) && m(n, "pageContext"), `${i} should return ${p.cyan("null")}, ${p.cyan("undefined")}, or a plain JavaScript object ${p.cyan("{ pageContext: { /* ... */ } }")}`), n == null) return null;
4746    if (h(m(n, "pageContext", "object"), `${i} returned ${p.cyan("{ pageContext }")} but pageContext should be a plain JavaScript object.`), m(n.pageContext, "pageId") && !m(n.pageContext, "pageId", "null")) {
4747      const s = `${i} returned ${p.cyan("{ pageContext: { pageId } }")} but ${p.cyan("pageId")} should be`;
4748      h(m(n.pageContext, "pageId", "string"), `${s} a string or null`), h(t._allPageIds.includes(n.pageContext.pageId), `${s} ${cr(t._allPageIds.map((l) => p.cyan(l)), "or")}`);
4749    }
4750    m(n.pageContext, "routeParams") && vn(n.pageContext, `${i} returned ${p.cyan("{ pageContext: { routeParams } }")} but routeParams should`);
4751    const r = (s) => `${i} returned ${p.cyan(`{ pageContext: { ${s} } }`)} which is deprecated. Return ${p.cyan("{ pageContext: { urlLogical } }")} instead.`;
4752    m(n.pageContext, "url") && (C(false, r("url"), {
4753      onlyOnce: true
4754    }), n.pageContext.urlLogical = n.pageContext.url, delete n.pageContext.url), m(n.pageContext, "urlOriginal") && (C(false, r("urlOriginal"), {
4755      onlyOnce: true
4756    }), n.pageContext.urlLogical = n.pageContext.urlOriginal, delete n.pageContext.urlOriginal), m(n.pageContext, "urlLogical") && oi(n.pageContext.urlLogical, `${i} returned ${p.cyan("{ pageContext: { urlLogical } }")} and ${p.cyan("urlLogical")}`), qt(n.pageContext, {
4757      hookFilePath: e.hookFilePath,
4758      hookName: "onBeforeRoute"
4759    });
4760    const o = {};
4761    return y(o, n.pageContext), o;
4762  }
4763  var se;
4764  function ht(...e) {
4765    var _a2;
4766    se || (se = (_a2 = globalThis.__brillout_debug_createDebugger) == null ? void 0 : _a2.call(globalThis, "vike:routing")), se && se(...e);
4767  }
4768  Y() && ne();
4769  async function bn(e, t) {
4770    ht("Pages routes:", e._pageRoutes), gn(e);
4771    const n = {};
4772    {
4773      const l = await Ua(e);
4774      if (l) {
4775        if (l._routingProvidedByOnBeforeRouteHook) return a(l.pageId), l;
4776        y(n, l);
4777      }
4778      y(e, l);
4779    }
4780    const i = e._allPageIds;
4781    h(i.length > 0, "No page found. You must create at least one page."), a(e._pageFilesAll.length > 0 || e._pageConfigs.length > 0);
4782    const { urlPathname: r }
4782 = e;
4783    a(r.startsWith("/"));
4784    const o = [];
4785    await Promise.all(e._pageRoutes.map(async (l) => {
4786      const { pageId: u, routeType: d } = l;
4787      if (l.routeType === "FILESYSTEM") {
4788        const { routeString: c } = l, f = Ce(c, r);
4789        if (f) {
4790          const { routeParams: S } = f;
4791          o.push({
4792            pageId: u,
4793            routeParams: S,
4794            routeString: c,
4795            routeType: d
4796          });
4797        }
4798        return;
4799      }
4800      if (l.routeType === "STRING") {
4801        const { routeString: c } = l, f = Ce(c, r);
4802        if (f) {
4803          const { routeParams: S } = f;
4804          a(d === "STRING"), o.push({
4805            pageId: u,
4806            routeString: c,
4807            routeParams: S,
4808            routeType: d
4809          });
4810        }
4811        return;
4812      }
4813      if (l.routeType === "FUNCTION") {
4814        const { routeFunction: c, routeDefinedAtString: f } = l, S = await no(c, e, f);
4815        if (S) {
4816          const { routeParams: R, precedence: P } = S;
4817          o.push({
4818            pageId: u,
4819            precedence: P,
4820            routeParams: R,
4821            routeType: d
4822          });
4823        }
4824        return;
4825      }
4826      a(false);
4827    })), $a(o);
4828    const s = o[0] ?? null;
4829    if (ht(`Route matches for URL ${p.cyan(r)} (in precedence order):`, o), y(n, {
4830      _debugRouteMatches: o
4831    }), y(n, {
4832      _routeMatch: s
4833    }), !s) return y(n, {
4834      pageId: null,
4835      routeParams: {}
4836    }), n;
4837    {
4838      const { routeParams: l } = s;
4839      a(J(l)), y(n, {
4840        pageId: s.pageId,
4841        routeParams: s.routeParams
4842      });
4843    }
4844    return n;
4845  }
4846  const Cn = L("client-routing-runtime/getPageContextCurrent.ts", {
4847    pageContextCurrent: null
4848  });
4849  function wn() {
4850    const { pageContextCurrent: e } = Cn;
4851    return e;
4852  }
4853  function yt(e) {
4854    Cn.pageContextCurrent = e;
4855  }
4856  const de = 5e3, mt = {
4857    staticAssets: "hover",
4858    pageContext: de
4859  }, we = {
4860    staticAssets: "hover",
4861    pageContext: false
4862  }, Ha = we;
4863  function We(e, t) {
4864    let n = Ha;
4865    if ("prefetchLinks" in e.exports && h(false, "`export { prefetchLinks }` is deprecated, use `export { prefetchStaticAssets }` instead."), "prefetchStaticAssets" in e.exports) {
4866      const i = e.exports.prefetchStaticAssets;
4867      n.staticAssets = i;
4868    }
4869    if ("prefetch" in e.exports) {
4870      const { prefetch: i } = e.exports;
4871      i === true && (n = mt), i === false && (n = we), Object.assign(n, i), n.pageContext === true && (n.pageContext = de);
4872    }
4873    if (n.staticAssets, t) {
4874      {
4875        let i = t.getAttribute("data-prefetch");
4876        i !== null && (i === "" && (i = "true"), i === "true" && (n = mt), i === "false" && (n = we));
4877      }
4878      {
4879        let i = t.getAttribute("data-prefetch-static-assets");
4880        i !== null && (i === "false" && (n.staticAssets = false), n.staticAssets = i);
4881      }
4882      {
4883        let i = t.getAttribute("data-prefetch-page-context");
4884        if (i !== null) {
4885          i === "" && (i = "true"), i === "true" && (n.pageContext = de), i === "false" && (n.pageContext = false);
4886          const r = parseInt(i, 10);
4887          Number.isNaN(r) || (n.pageContext = r);
4888        }
4889      }
4890    }
4891    return n;
4892  }
4893  ne();
4894  const k = L("client-routing-runtime/prefetch.ts", {
4895    linkPrefetchHandlerAdded: /* @__PURE__ */ new WeakSet(),
4896    addLinkPrefetchHandlers_debounce: null,
4897    mutationObserver: new MutationObserver(Ne),
4898    linkTags: document.getElementsByTagName("A"),
4899    prefetchedPageContexts: {}
4900  });
4901  function Wa(e) {
4902    if (!We(e, null).pageContext) return null;
4903    const n = Ge(e.urlPathname), i = k.prefetchedPageContexts[n];
4904    return !i || i.result.is404ServerSideRouted || xn(i) ? null : i.result.pageContextFromServerHooks;
4905  }
4906  async function Na(e) {
4907    try {
4908      await Ae(e.pageId, e._pageFilesAll, e._pageConfigs, e._pageConfigGlobal);
4909    } catch (t) {
4910      if (Ue(t)) xe(t, true);
4911      else throw t;
4912    }
4913  }
4914  async function Ga(e, t) {
4915    const n = await Ee(e, false);
4916    zn(e, n, t);
4917  }
4918  function vt(e, t) {
4919    Me() && zn(e, t, null);
4920  }
4921  function zn(e, t, n) {
4922    n === null && (n = Ma());
4923    const i = Ge(e.urlPathname);
4924    a(Me()), k.prefetchedPageContexts[i] = {
4925      resultFetchedAt: Date.now(),
4926      resultMaxAge: n,
4927      result: t
4928    };
4929  }
4930  function Ma() {
4931    const e = wn();
4932    if (!e) return 1 / 0;
4933    const t = We(e, null);
4934    return typeof t.pageContext == "number" ? t.pageContext : de;
4935  }
4936  function Ne() {
4937    k.addLinkPrefetchHandlers_debounce && clearTimeout(k.addLinkPrefetchHandlers_debounce), k.addLinkPrefetchHandlers_debounce = setTimeout(() => {
4938      "requestIdleCallback" in window ? requestIdleCallback(St, {
4939        timeout: 300
4940      }) : setTimeout(St, 150);
4941    }, 250);
4942  }
4943  function Ka() {
4944    Ne();
4945  }
4946  function Ya() {
4947    k.mutationObserver.observe(document.body, {
4948      childList: true,
4949      subtree: true
4950    });
4951  }
4952  function Ja() {
4953    k.mutationObserver.disconnect();
4954  }
4955  function St() {
4956    for (let e of k.linkTags) {
4957      if (k.linkPrefetchHandlerAdded.has(e) || (k.linkPrefetchHandlerAdded.add(e), Be(e))) continue;
4958      e.addEventListener("mouseover", () => {
4959        Se(e, "hover");
4960      }, {
4961        passive: true
4962      }), e.addEventListener("touchstart", () => {
4963        Se(e, "hover");
4964      }, {
4965        passive: true
4966      }), new IntersectionObserver((n) => {
4967        n.forEach((i) => {
4968          i.isIntersecting && Se(e, "viewport");
4969        });
4970      }).observe(e);
4971    }
4972  }
4973  async function Se(e, t) {
4974    let n;
4975    const i = wn();
4976    if (i) n = We(i, e);
4977    else if (Me()) n = {
4978      staticAssets: "hover",
4979      pageContext: 1 / 0
4980    };
4981    else return;
4982    if (Be(e)) return;
4983    const r = e.getAttribute("href"), o = await qa(r);
4984    (o == null ? void 0 : o.pageId) && (a(m(o, "pageId", "string")), await Te(o.pageId, o) && await Promise.all([
4985      (async () => {
4986        n.staticAssets === t && await Na(o);
4987      })(),
4988      (async () => {
4989        if (t !== "viewport" && n.pageContext) {
4990          const s = Ge(r), l = k.prefetchedPageContexts[s];
4991          if (!l || xn(l)) {
4992            const u = n.pageContext;
4993            await Ga(o, u);
4994          }
4995        }
4996      })()
4997    ]));
4998  }
4999  function xn(e) {
5000    return Date.now() - e.resultFetchedAt > e.resultMaxAge;
5001  }
5002  async function qa(e) {
5003    const t = await Rn(e);
5004    let n;
5005    try {
5006      n = await bn(t);
5007    } catch {
5008      return null;
5009    }
5010    return y(t, n), t;
5011  }
5012  function Ge(e) {
5013    return e.startsWith("#") && (e = "/"), a(e.startsWith("/"), {
5014      urlPathname: e
5015    }), e.split("#")[0];
5016  }
5017  function Me() {
5018    return "_isBrilloutDocpress" in window;
5019  }
5020  async function Xa(e, t) {
5021    const n = $e(e);
5022    let i = null, r;
5023    i = H(e, "render"), r = "render";
5024    {
5025      const l = H(e, "onRenderClient");
5026      l && (i = l, r = "onRenderClient");
5027    }
5028    if (!i) {
5029      const l = Za(e);
5030      if (a(l), e._pageConfigs.length > 0) h(false, `No onRenderClient() hook defined for URL '${l}', but it's needed, see https://vike.dev/onRenderClient`);
5031      else {
5032        const u = e._pageFilesLoaded.filter((c) => c.fileType === ".page.client");
5033        let d;
5034        u.length === 0 ? d = "No file `*.page.client.*` found for URL " + l : d = "One of the following files should export a render() hook: " + u.map((c) => c.filePath).join(" "), h(false, d);
5035      }
5036    }
5037    a(i);
5038    const o = i.hookFn;
5039    a(r);
5040    const s = await U(() => o(n), i, e);
5041    h(s === void 0, `The ${r}() hook defined by ${i.hookFilePath} isn't allowed to return a value`);
5042  }
5043  function Za(e) {
5044    let t;
5045    try {
5046      t = e.urlPathname ?? e.urlOriginal;
5047    } catch {
5048    }
5049    return t = t ?? window.location.href, t;
5050  }
5051  function Ke(e) {
5052    return ee(window.location.href, e);
5053  }
5054  Dn();
5055  const ze = L("client-routing-runtime/history.ts", {
5056    previous: Ze()
5057  });
5058  function jn() {
5059    const e = In();
5060    if (X(e)) return;
5061    const t = Qa(e);
5062    Xe(t);
5063  }
5064  function Qa(e) {
5065    const t = qe(), n = Je(), i = "browser";
5066    let r;
5067    return e ? r = {
5068      timestamp: e.timestamp ?? t,
5069      scrollPosition: e.scrollPosition ?? n,
5070      triggeredBy: e.triggeredBy ?? i,
5071      _isVikeEnhanced: true
5072    } : r = {
5073      timestamp: t,
5074      scrollPosition: n,
5075      triggeredBy: i,
5076      _isVikeEnhanced: true
5077    }, a(X(r)), r;
5078  }
5079  function Ye() {
5080    const e = In();
5081    return a(X(e), {
5082      state: e
5083    }), e;
5084  }
5085  function In() {
5086    return window.history.state;
5087  }
5088  function Je() {
5089    return {
5090      x: window.scrollX,
5091      y: window.scrollY
5092    };
5093  }
5094  function qe() {
5095    return (/* @__PURE__ */ new Date()).getTime();
5096  }
5097  function Pt() {
5098    const e = Je(), t = Ye();
5099    Xe({
5100      ...t,
5101      scrollPosition: e
5102    });
5103  }
5104  function es(e, t) {
5105    if (t) Xe(Ye(), e);
5106    else {
5107      const n = {
5108        timestamp: qe(),
5109        scrollPosition: null,
5110        triggeredBy: "vike",
5111        _isVikeEnhanced: true
5112      };
5113      window.history.pushState(n, "", e);
5114    }
5115  }
5116  function Xe(e, t) {
5117    const n = t ?? null;
5118    window.history.replaceState(e, "", n);
5119  }
5120  function Et(e, t) {
5121    History.prototype.replaceState.bind(window.history)(e, "", t);
5122  }
5123  function ts() {
5124    [
5125      "pushState",
5126      "replaceState"
5127    ].forEach((e) => {
5128      const t = window.history[e].bind(window.history);
5129      window.history[e] = (n = {}, ...i) => {
5130        h(n == null || w(n), `history.${e}(state) argument state must be an object`);
5131        const r = X(n) ? n : {
5132          _isVikeEnhanced: true,
5133          scrollPosition: Je(),
5134          timestamp: qe(),
5135          triggeredBy: "user",
5136          ...n
5137        };
5138        a(X(r));
5139        const o = t(r, ...i);
5140        return ze.previous = Ze(), o;
5141      };
5142    });
5143  }
5144  function X(e) {
5145    return !!(w(e) && "_isVikeEnhanced" in e);
5146  }
5147  function Ze() {
5148    return {
5149      url: Ke(),
5150      state: Ye()
5151    };
5152  }
5153  function ns() {
5154    const { previous: e } = ze, t = window.history.state !== null;
5155    t || jn(), a(X(window.history.state));
5156    const n = Ze();
5157    return ze.previous = n, {
5158      isHistoryStateEnhanced: t,
5159      previous: e,
5160      current: n
5161    };
5162  }
5163  function Dn() {
5164    jn();
5165  }
5166  function On(e, t) {
5167    if (!e && t && rs(t)) {
5168      is(t);
5169      return;
5170    }
5171    if (e && "x" in e) {
5172      Fn(e);
5173      return;
5174    }
5175    if (e == null ? void 0 : e.preserveScroll) return;
5176    const n = os();
5177    kn(n);
5178  }
5179  function is(e) {
5180    const t = window.history.state;
5181    Et(null, e), a(window.history.state === null), window.location.replace(e), Et(t, e);
5182  }
5183  function rs(e) {
5184    return e.includes("#") && e.includes(":~:text");
5185  }
5186  function kn(e) {
5187    if (!e) Rt();
5188    else {
5189      const t = decodeURIComponent(e), n = document.getElementById(t) || document.getElementsByName(t)[0];
5190      n ? (n.scrollIntoView(), n.focus()) : e === "top" && Rt();
5191    }
5192  }
5193  function Rt() {
5194    Fn({
5195      x: 0,
5196      y: 0
5197    });
5198  }
5199  function Fn(e) {
5200    const t = () => {
5201      window.scrollTo(e.x, e.y);
5202    }, n = () => window.scrollX === e.x && window.scrollY === e.y;
5203    n() || (t(), !n() && requestAnimationFrame(() => {
5204      t(), !n() && setTimeout(async () => {
5205        if (t(), n()) return;
5206        const i = (/* @__PURE__ */ new Date()).getTime();
5207        for (; ; ) if (await si(10), t(), n() || (/* @__PURE__ */ new Date()).getTime() - i > 100) return;
5208      }, 0);
5209    }));
5210  }
5211  function os() {
5212    let { hash: e } = window.location;
5213    return e === "" ? null : (a(e.startsWith("#")), e = e.slice(1), e);
5214  }
5215  function as() {
5216    window.addEventListener("scroll", li(Pt, Math.ceil(1e3 / 3)), {
5217      passive: true
5218    }), Ft(Pt);
5219  }
5220  const Ln = L("client-routing-runtime/scrollRestoration.ts", {});
5221  function ss() {
5222    _t(), Ft(_t), ui(() => Ln.initialRenderIsDone && $n());
5223  }
5224  function ls() {
5225    Ln.initialRenderIsDone = true, $n();
5226  }
5227  function $n() {
5228    "scrollRestoration" in window.history && (window.history.scrollRestoration = "manual");
5229  }
5230  function _t() {
5231    "scrollRestoration" in window.history && (window.history.scrollRestoration = "auto");
5232  }
5233  const b = L("client-routing-runtime/renderPageClientSide.ts", (() => {
5234    const { promise: e, resolve: t } = Lt();
5235    return {
5236      renderCounter: 0,
5237      firstRenderStartPromise: e,
5238      firstRenderStartPromiseResolve: t
5239    };
5240  })()), { firstRenderStartPromise: ws } = b;
5241  async function te(e) {
5242    $t("renderPageClientSide()");
5243    const { urlOriginal: t = Ke(), overwriteLastHistoryEntry: n = false, isBackwardNavigation: i, pageContextsFromRewrite: r = [], redirectCount: o = 0, doNotRenderIfSamePage: s, isClientSideNavigation: l = true, pageContextInitClient: u } = e;
5244    let { scrollTarget: d } = e;
5245    const { previousPageContext: c } = b;
5246    Ja();
5247    const { isRenderOutdated: f, setHydrationCanBeAborted: S, isFirstRender: R } = cs();
5248    if (vr(r.length, o), b.clientRoutingIsDisabled) {
5249      M(t);
5250      return;
5251    }
5252    if (b.firstRenderStartPromiseResolve(), f()) return;
5253    await P();
5254    return;
5255    async function P() {
5256      const _ = async (g) => {
5257        await x({
5258          err: g
5259        });
5260      }, v = await I(false);
5261      if (!f()) {
5262        if (b.isFirstRenderDone && (a(c), ve(c, "onPageTransitionStart"), !b.isTransitioning)) {
5263          b.isTransitioning = true;
5264          const g = H(c, "onPageTransitionStart");
5265          if (g) {
5266            const z = g, { hookFn: D } = z;
5267            try {
5268              await U(() => D(v), z, v);
5269            } catch (A) {
5270              await _(A);
5271              return;
5272            }
5273            if (f()) return;
5274          }
5275        }
5276        if (R) {
5277          const g = Pr();
5278          a(!("urlOriginal" in g)), y(v, g), vt(v, {
5279            pageContextFromServerHooks: g
5280          });
5281        } else {
5282          let g;
5283          try {
5284            g = await bn(v);
5285          } catch (A) {
5286            await _(A);
5287            return;
5288          }
5289          if (f()) return;
5290          if (!g.pageId) {
5291            M(t);
5292            return;
5293          }
5294          a(m(g, "pageId", "string"));
5295          const z = await Te(g.pageId, v);
5296          if (f()) return;
5297          if (!z) {
5298            M(t);
5299            return;
5300          }
5301          const D = g.pageId && (c == null ? void 0 : c.pageId) && g.pageId === c.pageId;
5302          if (s && D) return;
5303          a(!("urlOriginal" in g)), y(v, g);
5304        }
5305        try {
5306          y(v, await Ae(v.pageId, v._pageFilesAll, v._pageConfigs, v._pageConfigGlobal));
5307        } catch (g) {
5308          if (At(g, v, R)) return;
5309          await _(g);
5310          return;
5311        }
5312        if (!f() && (yt(v), v.exports.hydrationCanBeAborted ? S() : C(!Yn(), "You seem to be using React; we recommend setting hydrationCanBeAborted to true, see https://vike.dev/hydrationCanBeAborted", {
5313          onlyOnce: true
5314        }), !f())) if (R) {
5315          a(m(v, "_hasPageContextFromServer", "true"));
5316          let g;
5317          try {
5318            g = await Er(v);
5319          } catch (z) {
5320            await _(z);
5321            return;
5322          }
5323          if (f()) return;
5324          le(v, g), await $(v);
5325        } else {
5326          let g;
5327          const z = Wa(v);
5328          if (z) g = z;
5329          else try {
5330            const A = await Ee(v, false);
5331            if (A.is404ServerSideRouted) return;
5332            g = A.pageContextFromServerHooks, vt(v, A);
5333          } catch (A) {
5334            await _(A);
5335            return;
5336          }
5337          if (f()) return;
5338          a(!("urlOriginal" in g)), y(v, g);
5339          let D;
5340          try {
5341            D = await lt(v, false);
5342          } catch (A) {
5343            await _(A);
5344            return;
5345          }
5346          if (f()) return;
5347          le(v, D), await $(v);
5348        }
5349      }
5350    }
5351    async function I(_) {
5352      const v = await Rn(t);
5353      y(v, {
5354        isBackwardNavigation: i,
5355        isClientSideNavigation: l,
5356        isHydration: R && !_,
5357        previousPageContext: c,
5358        ...u
5359      }), Object.defineProperty(v, "_previousPageContext", {
5360        get() {
5361          return C(false, "pageContext._previousPageContext has been renamed pageContext.previousPageContext", {
5362            showStackTrace: true,
5363            onlyOnce: true
5364          }), c;
5365        },
5366        enumerable: false
5367      });
5368      {
5369        const g = yr(r);
5370        a(!("urlOriginal" in g)), y(v, g);
5371      }
5372      return v;
5373    }
5374    async function x(_) {
5375      const v = (T) => {
5376        Qe(T, _.err) || console.error(T);
5377      };
5378      if ("err" in _) {
5379        const { err: T } = _;
5380        a(T), st(T) || console.error(T);
5381      }
5382      const g = await I(true);
5383      if (f()) return;
5384      if (_.is404 && y(g, {
5385        is404: true
5386      }), _.pageContextError && y(g, _.pageContextError), "err" in _) {
5387        const { err: T } = _;
5388        if (a(!("errorWhileRendering" in g)), y(g, {
5389          errorWhileRendering: T
5390        }), st(T)) {
5391          const V = T._pageContextAbort;
5392          if (V._urlRewrite) {
5393            await te({
5394              ...e,
5395              scrollTarget: void 0,
5396              pageContextsFromRewrite: [
5397                ...r,
5398                V
5399              ]
5400            });
5401            return;
5402          }
5403          if (V._urlRedirect) {
5404            const pe = V._urlRedirect.url;
5405            if (pe.startsWith("/")) await te({
5406              ...e,
5407              scrollTarget: void 0,
5408              urlOriginal: pe,
5409              overwriteLastHistoryEntry: false,
5410              isBackwardNavigation: false,
5411              redirectCount: o + 1
5412            });
5413            else {
5414              M(pe);
5415              return;
5416            }
5417            return;
5418          }
5419          a(V.abortStatusCode), a(!("urlOriginal" in V)), y(g, V), V.abortStatusCode === 404 && y(g, {
5420            is404: true
5421          });
5422        } else y(g, {
5423          is404: false
5424        });
5425      }
5426      const z = Ki(g._pageFilesAll, g._pageConfigs);
5427      if (!z) throw new Error("No error page defined.");
5428      y(g, {
5429        pageId: z
5430      });
5431      const D = await Te(g.pageId, g);
5432      if (f()) return;
5433      if (!D) {
5434        M(t);
5435        return;
5436      }
5437      try {
5438        y(g, await Ae(g.pageId, g._pageFilesAll, g._pageConfigs, g._pageConfigGlobal));
5439      } catch (T) {
5440        if (At(T, g, R)) return;
5441        v(T);
5442        return;
5443      }
5444      if (f()) return;
5445      yt(g);
5446      let A;
5447      try {
5448        const T = await Ee(g, true);
5449        if (T.is404ServerSideRouted) return;
5450        A = T.pageContextFromServerHooks;
5451      } catch (T) {
5452        v(T);
5453        return;
5454      }
5455      if (f()) return;
5456      a(!("urlOriginal" in A)), y(g, A);
5457      let O;
5458      try {
5459        O = await lt(g, true);
5460      } catch (T) {
5461        v(T);
5462        return;
5463      }
5464      f() || (le(g, O), y(g, {
5465        routeParams: {}
5466      }), await $(g, _));
5467    }
5468    async function $(_, v) {
5469      const g = async (A) => {
5470        v ? Qe(A, v.err) || console.error(A) : await x({
5471          err: A
5472        });
5473      };
5474      if (b.onRenderClientPreviousPromise && (await b.onRenderClientPreviousPromise, a(b.onRenderClientPreviousPromise === void 0), f())) return;
5475      ds(t, n), b.previousPageContext = _, a(b.onRenderClientPreviousPromise === void 0);
5476      const z = (async () => {
5477        let A;
5478        try {
5479          await Xa(_, true);
5480        } catch (O) {
5481          A = O;
5482        }
5483        return b.onRenderClientPreviousPromise = void 0, b.isFirstRenderDone = true, A;
5484      })();
5485      b.onRenderClientPreviousPromise = z;
5486      const D = await z;
5487      if (a(b.onRenderClientPreviousPromise === void 0), !(D && (await g(D), !v))) {
5488        if (R && !D) {
5489          ve(_, "onHydrationEnd");
5490          const A = H(_, "onHydrationEnd");
5491          if (A) {
5492            const { hookFn: O } = A;
5493            try {
5494              await U(() => O(_), A, _);
5495            } catch (T) {
5496              if (await g(T), !v) return;
5497            }
5498            if (f(true)) return;
5499          }
5500        }
5501        if (!f(true)) {
5502          if (b.isTransitioning) {
5503            b.isTransitioning = void 0, a(c), ve(c, "onPageTransitionEnd");
5504            const A = H(c, "onPageTransitionEnd");
5505            if (A) {
5506              const { hookFn: O } = A;
5507              try {
5508                await U(() => O(_), A, _);
5509              } catch (T) {
5510                if (await g(T), !v) return;
5511              }
5512              if (f(true)) return;
5513            }
5514          }
5515          if (!d && c) {
5516            const A = Tt(c), O = Tt(_);
5517            O !== false && A !== false && gs(O, A) && (d = {
5518              preserveScroll: true
5519            });
5520          }
5521          On(d, t), ls(), _._hasPageContextFromServer && Rr(_), Ya(), Ne(), b.renderedPageContext = _, us(t);
5522        }
5523      }
5524    }
5525  }
5526  function us(e) {
5527    window._vike ?? (window._vike = {}), window._vike.fullyRenderedUrl = e;
5528  }
5529  function ds(e, t) {
5530    Ke() !== e && es(e, t);
5531  }
5532  function At(e, t, n) {
5533    if (!Ue(e)) return false;
5534    if (n) throw xe(e, false), e;
5535    return xe(e, true), M(t.urlOriginal), true;
5536  }
5537  function xe(e, t) {
5538    a(Ue(e)), b.clientRoutingIsDisabled = true, t && console.log(e), Un(false, [
5539      "Failed to fetch static asset.",
5540      "This usually happens when a new frontend is deployed.",
5541      "Falling back to Server Routing.",
5542      "(The next page navigation will use Server Routing instead of Client Routing.)"
5543    ].filter(Boolean).join(" "), {
5544      onlyOnce: true
5545    });
5546  }
5547  function cs() {
5548    const e = ++b.renderCounter;
5549    a(e >= 1);
5550    let t = false;
5551    return {
5552      isRenderOutdated: (r) => e === 1 && !t && !r ? false : e !== b.renderCounter,
5553      setHydrationCanBeAborted: () => {
5554        t = true;
5555      },
5556      isFirstRender: e === 1
5557    };
5558  }
5559  function fs() {
5560    return b.renderCounter;
5561  }
5562  function Tt(e) {
5563    const t = e.from.configsStandard.keepScrollPosition;
5564    if (!t) return false;
5565    let n = t.value;
5566    const i = t.definedAt;
5567    a(i);
5568    const r = Fa(i);
5569    return N(n) && (n = n(e, {
5570      configDefinedAt: t.definedAt
5571    })), n === true ? [
5572      i,
5573      ...r.map((o) => {
5574        const s = e.routeParams[o];
5575        return a(s), s;
5576      })
5577    ] : n;
5578  }
5579  function gs(e, t) {
5580    return e === t ? true : !Array.isArray(e) || !Array.isArray(t) ? false : e.length === t.length && e.every((n, i) => e[i] === t[i]);
5581  }
5582  function ps() {
5583    window.addEventListener("popstate", hs);
5584  }
5585  async function hs() {
5586    $t("onPopState()");
5587    const { isHistoryStateEnhanced: e, previous: t, current: n } = ns();
5588    if (e) await ys(t, n);
5589    else return;
5590  }
5591  async function ys(e, t) {
5592    const n = t.state.scrollPosition || void 0;
5593    if (bt(t.url) === bt(e.url) && t.url !== e.url) {
5594      On(n);
5595      return;
5596    }
5597    const o = t.state.triggeredBy === "user" || e.state.triggeredBy === "user", s = !t.state.timestamp || !e.state.timestamp ? null : t.state.timestamp < e.state.timestamp;
5598    await te({
5599      scrollTarget: n,
5600      isBackwardNavigation: s,
5601      doNotRenderIfSamePage: o
5602    });
5603  }
5604  function bt(e) {
5605    return e.split("#")[0];
5606  }
5607  function ms() {
5608    document.addEventListener("click", vs);
5609  }
5610  async function vs(e) {
5611    if (!Ss(e)) return;
5612    const t = Ps(e.target);
5613    if (!t) return;
5614    const n = t.getAttribute("href");
5615    if (n === null) return;
5616    if (n.includes("#") && Ta(n)) {
5617      e.preventDefault(), kn(n.split("#")[1]);
5618      return;
5619    }
5620    if (Be(t)) return;
5621    e.preventDefault();
5622    let i;
5623    {
5624      const r = t.getAttribute("keep-scroll-position");
5625      r !== null && (i = {
5626        preserveScroll: r !== "false"
5627      });
5628    }
5629    await te({
5630      scrollTarget: i,
5631      urlOriginal: n,
5632      isBackwardNavigation: false
5633    });
5634  }
5635  function Ss(e) {
5636    return e.button === 0 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey;
5637  }
5638  function Ps(e) {
5639    for (; e.tagName !== "A"; ) {
5640      const { parentNode: t } = e;
5641      if (!t) return null;
5642      e = t;
5643    }
5644    return e;
5645  }
5646  async function Es() {
5647    _s();
5648    const e = Rs();
5649    ms(), Ka(), await e;
5650  }
5651  async function Rs() {
5652    a(fs() === 0), await te({
5653      scrollTarget: {
5654        preserveScroll: true
5655      },
5656      isBackwardNavigation: null,
5657      isClientSideNavigation: false
5658    });
5659  }
5660  function _s() {
5661    ss(), ts(), Dn(), as(), ps();
5662  }
5663  ne();
5664  Bn();
5665  Es();
5666});

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.