@farm.js/core 0.1.17 → 0.1.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/after.cjs +12 -225
- package/dist/agent-runtime.cjs +83 -2800
- package/dist/api/client.cjs +17 -4060
- package/dist/api/route-manager.cjs +34 -4354
- package/dist/api/runtime.cjs +29 -2696
- package/dist/api.cjs +88 -8434
- package/dist/app-markdown.cjs +39 -280
- package/dist/app-markdown.mjs +3 -3
- package/dist/cache.cjs +38 -1560
- package/dist/chunk-22GUSVNJ.cjs +351 -0
- package/dist/{chunk-EN7WTEAY.mjs → chunk-2ANEVVF7.mjs} +1 -1
- package/dist/chunk-2CQ74SP6.cjs +13 -0
- package/dist/{chunk-YD4J4XCI.mjs → chunk-2GNATDDE.mjs} +1 -1
- package/dist/chunk-2SJ4RQ6P.cjs +57 -0
- package/dist/chunk-3376ZTRC.cjs +1 -0
- package/dist/chunk-4PNUXIVU.cjs +472 -0
- package/dist/chunk-4PPEPOZZ.cjs +21 -0
- package/dist/chunk-4ZFL5GFN.cjs +520 -0
- package/dist/chunk-5OVTOKGH.cjs +65 -0
- package/dist/chunk-5QIKR7RR.cjs +224 -0
- package/dist/chunk-5ZSWG4UX.cjs +127 -0
- package/dist/chunk-62YJ2IEB.cjs +238 -0
- package/dist/chunk-6EODJYCX.cjs +183 -0
- package/dist/chunk-6EXBPJ24.cjs +434 -0
- package/dist/chunk-6QQDAAAZ.cjs +38 -0
- package/dist/chunk-6V4TDWEC.cjs +455 -0
- package/dist/chunk-72ADZ6GQ.cjs +19 -0
- package/dist/chunk-75BRBIFP.cjs +172 -0
- package/dist/{chunk-ZCNJKLA2.mjs → chunk-7BC6GAL7.mjs} +1 -1
- package/dist/chunk-7W3CPVXS.cjs +24 -0
- package/dist/chunk-A6WIQH5Z.cjs +31 -0
- package/dist/chunk-A777V5WU.cjs +725 -0
- package/dist/chunk-AFOD3LYZ.cjs +377 -0
- package/dist/chunk-AH7HOAQ3.cjs +151 -0
- package/dist/chunk-AMDMVWMI.cjs +39 -0
- package/dist/chunk-AORPIPNB.cjs +552 -0
- package/dist/chunk-ARJWXNQL.cjs +256 -0
- package/dist/chunk-AYJR42WX.cjs +711 -0
- package/dist/chunk-BBVSJVBZ.cjs +600 -0
- package/dist/chunk-BIDYX3SL.cjs +91 -0
- package/dist/chunk-BYODCJD6.cjs +663 -0
- package/dist/chunk-C3VRMB6H.cjs +85 -0
- package/dist/chunk-C5GUTBZK.cjs +173 -0
- package/dist/chunk-CIAGU2X4.cjs +337 -0
- package/dist/chunk-CMGMGHUZ.cjs +27 -0
- package/dist/chunk-CXP5U3RW.cjs +54 -0
- package/dist/chunk-D2ULAULS.cjs +166 -0
- package/dist/chunk-D7JTOLFK.cjs +285 -0
- package/dist/chunk-DVM4FKZL.cjs +169 -0
- package/dist/chunk-DYEJQTDN.cjs +49 -0
- package/dist/chunk-E2ROOWQC.cjs +2225 -0
- package/dist/chunk-E3UK5IIB.cjs +593 -0
- package/dist/chunk-EM6SBQKM.cjs +470 -0
- package/dist/chunk-FJSWYIR7.cjs +482 -0
- package/dist/chunk-FK6GO24V.cjs +54 -0
- package/dist/{chunk-MVIWBEJF.mjs → chunk-FVZGEVTO.mjs} +7 -7
- package/dist/chunk-FXUUWYAX.cjs +654 -0
- package/dist/chunk-G3HRIVEY.cjs +395 -0
- package/dist/chunk-G643DQCH.cjs +13 -0
- package/dist/chunk-G7HXGLEC.cjs +175 -0
- package/dist/chunk-GDSHDTJ4.cjs +152 -0
- package/dist/chunk-GPVTX3HT.cjs +1415 -0
- package/dist/chunk-H6G5INWM.cjs +1094 -0
- package/dist/{chunk-DHDVMXYK.mjs → chunk-HALDNTIV.mjs} +30 -4
- package/dist/chunk-HBTUGXHS.cjs +180 -0
- package/dist/chunk-HREOKQWT.cjs +45 -0
- package/dist/{chunk-5QOEPUYE.mjs → chunk-HSDL2AUR.mjs} +1 -1
- package/dist/chunk-I4J452B7.cjs +435 -0
- package/dist/chunk-I57LW5VZ.cjs +94 -0
- package/dist/chunk-I5YBCWQ6.cjs +40 -0
- package/dist/chunk-I7PUUDGY.cjs +389 -0
- package/dist/chunk-IAMRBF3Z.cjs +86 -0
- package/dist/chunk-IQXFRNY2.cjs +169 -0
- package/dist/chunk-ISTFC3MZ.cjs +1357 -0
- package/dist/chunk-IXTFU4PL.cjs +2355 -0
- package/dist/chunk-J3LOGE4T.cjs +42 -0
- package/dist/chunk-J7FSKED3.cjs +93 -0
- package/dist/chunk-JDNHKPTD.cjs +22 -0
- package/dist/chunk-JSROZYYO.cjs +164 -0
- package/dist/chunk-K6FNHVDR.cjs +696 -0
- package/dist/chunk-KGZIORNL.cjs +43 -0
- package/dist/chunk-KR6CKSXT.cjs +15 -0
- package/dist/chunk-KROWKCUH.cjs +185 -0
- package/dist/chunk-KVFPGF2M.cjs +46 -0
- package/dist/{chunk-TNBAYAWO.mjs → chunk-L4DVIHOC.mjs} +1 -1
- package/dist/chunk-LCCBO7PJ.cjs +46 -0
- package/dist/chunk-LIUGYUX3.cjs +22 -0
- package/dist/chunk-LTNGXMQ6.cjs +55 -0
- package/dist/chunk-M2L4MYDQ.cjs +14 -0
- package/dist/chunk-MCJLA63J.cjs +1 -0
- package/dist/chunk-MKB2EGIR.cjs +148 -0
- package/dist/chunk-MQ3H6LT5.cjs +202 -0
- package/dist/chunk-MT763TDW.cjs +43 -0
- package/dist/{chunk-XWAYMDLB.mjs → chunk-MVUREHPN.mjs} +1 -1
- package/dist/chunk-MWSK6C4J.cjs +18 -0
- package/dist/chunk-MWWVKDW3.cjs +169 -0
- package/dist/{chunk-6VQIKZZO.mjs → chunk-N255VYFP.mjs} +1 -1
- package/dist/chunk-NBAHDVOJ.cjs +2040 -0
- package/dist/chunk-NO3WWW3N.cjs +192 -0
- package/dist/chunk-NSFC3LHB.cjs +10244 -0
- package/dist/chunk-NZKJGRB3.cjs +230 -0
- package/dist/chunk-OAVTUMJP.cjs +1496 -0
- package/dist/{chunk-SXHV42UQ.mjs → chunk-OFEY6KHO.mjs} +88 -13
- package/dist/chunk-OHY2ZWUG.cjs +25 -0
- package/dist/chunk-OI6CMLWX.cjs +47 -0
- package/dist/chunk-OWOUTKIJ.cjs +558 -0
- package/dist/chunk-OX6O6WVA.cjs +74 -0
- package/dist/chunk-OXSIH4D6.cjs +476 -0
- package/dist/chunk-OYDRPBBV.cjs +453 -0
- package/dist/chunk-OYEUREB6.cjs +35 -0
- package/dist/chunk-PCOTGFSM.cjs +139 -0
- package/dist/{chunk-76DG3LF3.mjs → chunk-PGQBL5DN.mjs} +1 -1
- package/dist/chunk-PZYCPSCC.cjs +35 -0
- package/dist/chunk-QBK2AA4U.cjs +445 -0
- package/dist/{chunk-UTBVHYS3.mjs → chunk-QBPKKQTD.mjs} +2 -2
- package/dist/chunk-QBPXNZGV.cjs +487 -0
- package/dist/chunk-QNPEUFHQ.cjs +27 -0
- package/dist/chunk-QZRVZSPN.cjs +236 -0
- package/dist/chunk-R5A5KNVX.cjs +20 -0
- package/dist/chunk-R5JIFR6B.cjs +42 -0
- package/dist/chunk-R6AIILII.cjs +193 -0
- package/dist/chunk-RFYO7QUD.cjs +9 -0
- package/dist/chunk-RG3ZOTG5.cjs +34 -0
- package/dist/chunk-ROUTX2E5.cjs +390 -0
- package/dist/chunk-RTHIVJ2G.cjs +54 -0
- package/dist/chunk-S27FMYAM.cjs +644 -0
- package/dist/chunk-S3A45T7F.cjs +166 -0
- package/dist/chunk-S3JO3N4H.cjs +17 -0
- package/dist/chunk-SK35NQKK.cjs +27 -0
- package/dist/chunk-SU7MH53P.cjs +180 -0
- package/dist/chunk-SVRTJOUF.cjs +113 -0
- package/dist/chunk-SWN467MP.cjs +18 -0
- package/dist/chunk-SYQ3MOWW.cjs +73 -0
- package/dist/chunk-T5CERMEH.cjs +417 -0
- package/dist/chunk-TFAXUHWX.cjs +206 -0
- package/dist/chunk-TIWHTW3Q.cjs +24 -0
- package/dist/chunk-TKJZFIML.cjs +20 -0
- package/dist/chunk-TKNSDBBN.cjs +193 -0
- package/dist/chunk-U4KT7QP3.cjs +23 -0
- package/dist/chunk-U5BMPGS3.cjs +862 -0
- package/dist/chunk-UJ2C4ICS.cjs +277 -0
- package/dist/chunk-UQZ4AYTH.cjs +168 -0
- package/dist/chunk-US2QVW3E.cjs +36 -0
- package/dist/{chunk-QGVJVSNX.mjs → chunk-V4AICMQA.mjs} +2 -2
- package/dist/chunk-VB6UCX3V.cjs +421 -0
- package/dist/chunk-VEKFLAQM.cjs +300 -0
- package/dist/chunk-VQDBNVOO.cjs +14 -0
- package/dist/chunk-W4E7WMXE.cjs +71 -0
- package/dist/chunk-WJ3HK3LJ.cjs +1102 -0
- package/dist/chunk-WMAPPDMM.cjs +28 -0
- package/dist/chunk-WMOGFOUJ.cjs +223 -0
- package/dist/chunk-WPYFSQKK.cjs +37 -0
- package/dist/{chunk-56DAX2BE.mjs → chunk-WZXN4R5Y.mjs} +24 -13
- package/dist/chunk-XDGMADQM.cjs +14225 -0
- package/dist/chunk-XGC343EY.cjs +443 -0
- package/dist/chunk-XSKZORAS.cjs +727 -0
- package/dist/chunk-XWAWFQFS.cjs +82 -0
- package/dist/chunk-Y4YMF2NQ.cjs +460 -0
- package/dist/chunk-Y4YWHNKU.cjs +250 -0
- package/dist/chunk-Y53ZSFN6.cjs +504 -0
- package/dist/chunk-YA6LLTIJ.cjs +411 -0
- package/dist/chunk-YFPGHF5F.cjs +202 -0
- package/dist/chunk-YJRZR7VU.cjs +28 -0
- package/dist/chunk-YTAABQEV.cjs +1 -0
- package/dist/chunk-YX3DBN4M.cjs +18 -0
- package/dist/chunk-YZTASLPQ.cjs +64 -0
- package/dist/chunk-Z5HIWVDP.cjs +2173 -0
- package/dist/chunk-ZEG3OPIB.cjs +93 -0
- package/dist/chunk-ZMN3H73H.cjs +155 -0
- package/dist/client/lifecycle.cjs +6 -35
- package/dist/client-plugins.cjs +7 -448
- package/dist/client.cjs +171 -9808
- package/dist/config.cjs +8 -36
- package/dist/cron.cjs +24 -491
- package/dist/deferred.cjs +26 -475
- package/dist/deployment.cjs +39 -210
- package/dist/devtools-5KGPDVKL.cjs +388 -0
- package/dist/{devtools-UFVTMQX5.mjs → devtools-FY5R7TQ4.mjs} +3 -3
- package/dist/devtools-client-4WAPJY5L.cjs +254 -0
- package/dist/devtools-ui-5GBDIGMK.cjs +1296 -0
- package/dist/docs.cjs +46 -5657
- package/dist/docs.mjs +5 -5
- package/dist/env-types.cjs +5 -226
- package/dist/env.cjs +21 -338
- package/dist/environment/vite.cjs +8 -372
- package/dist/environment.cjs +12 -94
- package/dist/font.cjs +13 -63
- package/dist/headers.cjs +7 -123
- package/dist/i18n/client.cjs +55 -294
- package/dist/i18n/index.cjs +22 -209
- package/dist/i18n/server.cjs +22 -745
- package/dist/image/server.cjs +13 -729
- package/dist/image/sharp.cjs +33 -171
- package/dist/image.cjs +41 -85
- package/dist/index.cjs +1151 -68080
- package/dist/index.mjs +14 -14
- package/dist/instrumentation.cjs +12 -138
- package/dist/integration-orm-55F7CII5.cjs +13 -0
- package/dist/integrations.cjs +55 -4090
- package/dist/internal/app-markdown-runtime.cjs +27 -224
- package/dist/internal/app-markdown-runtime.mjs +2 -2
- package/dist/internal/build-runtime.cjs +120 -52259
- package/dist/internal/build-runtime.mjs +13 -13
- package/dist/internal/cli-runtime.cjs +67 -13811
- package/dist/internal/cli-runtime.mjs +7 -7
- package/dist/internal/client-error-overlay.cjs +80 -733
- package/dist/internal/client-error-overlay.mjs +1 -1
- package/dist/internal/client-runtime.cjs +81 -913
- package/dist/internal/compression-runtime.cjs +8 -214
- package/dist/internal/config-runtime.cjs +42 -6547
- package/dist/internal/config-runtime.mjs +3 -3
- package/dist/internal/docs-precompiled-runtime.cjs +26 -46
- package/dist/internal/infra-analytics-runtime.cjs +10 -536
- package/dist/internal/isolated-boundary.cjs +14 -414
- package/dist/internal/metadata-image-runtime.cjs +7 -285
- package/dist/internal/product-telemetry-runtime.cjs +42 -97
- package/dist/internal/product-telemetry-runtime.mjs +1 -1
- package/dist/internal/production-node-env.cjs +6 -63
- package/dist/internal/production-runtime.cjs +418 -7133
- package/dist/internal/production-runtime.mjs +3 -3
- package/dist/internal/request-cookies.cjs +6 -54
- package/dist/json-ld.cjs +24 -50
- package/dist/layers-E4WPJNY5.cjs +17 -0
- package/dist/manager-G4B2IPYE.cjs +14 -0
- package/dist/markdown.cjs +21 -547
- package/dist/markdown.mjs +1 -1
- package/dist/middleware.cjs +36 -2995
- package/dist/navigation.cjs +22 -2588
- package/dist/nitro-4I2MYLY2.cjs +652 -0
- package/dist/observability.cjs +22 -614
- package/dist/og.cjs +5 -28
- package/dist/plugin.cjs +106 -37442
- package/dist/plugin.mjs +9 -9
- package/dist/query/client.cjs +113 -449
- package/dist/query/index.cjs +26 -288
- package/dist/query/parsers.cjs +23 -247
- package/dist/query/server.cjs +36 -298
- package/dist/renderer/react/client.cjs +9 -43
- package/dist/renderer/react/server.cjs +40 -103
- package/dist/renderer/react/vite.cjs +7 -29
- package/dist/renderer-client.cjs +126 -4295
- package/dist/renderer.cjs +31 -249
- package/dist/request.cjs +5 -68
- package/dist/router.cjs +11 -474
- package/dist/routes.cjs +42 -2461
- package/dist/{schema-dev-notice-2IE2F2XI.mjs → schema-dev-notice-O67CPXJ6.mjs} +1 -1
- package/dist/schema-dev-notice-Y7MQEFGN.cjs +56 -0
- package/dist/schema.cjs +6 -33
- package/dist/search-client-G3RICOFU.cjs +13 -0
- package/dist/server-action-security.cjs +25 -541
- package/dist/server-fn-client.cjs +6 -337
- package/dist/server-fn.cjs +32 -1841
- package/dist/server-plugins.cjs +15 -884
- package/dist/server-query-client.cjs +15 -1883
- package/dist/server-query.cjs +16 -1838
- package/dist/server.cjs +296 -44681
- package/dist/server.mjs +11 -11
- package/dist/storage.cjs +57 -576
- package/dist/testing.cjs +89 -3186
- package/dist/theme/client.cjs +13 -108
- package/dist/theme/index.cjs +6 -68
- package/dist/theme/runtime.cjs +13 -78
- package/dist/theme/server.cjs +10 -179
- package/dist/version.cjs +4 -32
- package/dist/version.mjs +1 -1
- package/dist/vite.cjs +119 -37773
- package/dist/vite.mjs +9 -9
- package/dist/workflows.cjs +19 -1040
- package/package.json +1 -1
package/dist/i18n/index.cjs
CHANGED
|
@@ -1,209 +1,22 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
var
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__export(i18n_exports, {
|
|
24
|
-
createFarmLocaleCookie: () => createFarmLocaleCookie,
|
|
25
|
-
getFarmLocaleVaryHeaders: () => getFarmLocaleVaryHeaders,
|
|
26
|
-
localizeFarmHref: () => localizeFarmHref,
|
|
27
|
-
localizeFarmPathname: () => localizeFarmPathname,
|
|
28
|
-
matchFarmLocale: () => matchFarmLocale,
|
|
29
|
-
resolveFarmLocalePath: () => resolveFarmLocalePath,
|
|
30
|
-
stripFarmLocaleFromPathname: () => stripFarmLocaleFromPathname
|
|
31
|
-
});
|
|
32
|
-
module.exports = __toCommonJS(i18n_exports);
|
|
33
|
-
|
|
34
|
-
// src/base-path.ts
|
|
35
|
-
var FARM_BASE_PATH = /* @__PURE__ */ Symbol.for("farm.basePath");
|
|
36
|
-
function getFarmGlobalState() {
|
|
37
|
-
return globalThis;
|
|
38
|
-
}
|
|
39
|
-
__name(getFarmGlobalState, "getFarmGlobalState");
|
|
40
|
-
function getFarmBasePath() {
|
|
41
|
-
return getFarmGlobalState()[FARM_BASE_PATH] ?? "";
|
|
42
|
-
}
|
|
43
|
-
__name(getFarmBasePath, "getFarmBasePath");
|
|
44
|
-
function applyFarmBasePath(href, basePath = getFarmBasePath()) {
|
|
45
|
-
const normalizedBasePath = normalizeFarmBasePath(basePath);
|
|
46
|
-
if (!normalizedBasePath || !href.startsWith("/") || href.startsWith("//")) return href;
|
|
47
|
-
const canonicalHref = canonicalizeAppRelativeHref(href);
|
|
48
|
-
if (canonicalHref === normalizedBasePath || canonicalHref.startsWith(`${normalizedBasePath}/`) || canonicalHref.startsWith(`${normalizedBasePath}?`) || canonicalHref.startsWith(`${normalizedBasePath}#`)) {
|
|
49
|
-
return canonicalHref;
|
|
50
|
-
}
|
|
51
|
-
return `${normalizedBasePath}${canonicalHref}`;
|
|
52
|
-
}
|
|
53
|
-
__name(applyFarmBasePath, "applyFarmBasePath");
|
|
54
|
-
function canonicalizeAppRelativeHref(href) {
|
|
55
|
-
const origin = "http://farm.local";
|
|
56
|
-
const resolved = new URL(href, origin);
|
|
57
|
-
if (resolved.origin !== origin) {
|
|
58
|
-
throw new Error("Farm app-relative href cannot change the URL origin.");
|
|
59
|
-
}
|
|
60
|
-
return `${resolved.pathname}${resolved.search}${resolved.hash}`;
|
|
61
|
-
}
|
|
62
|
-
__name(canonicalizeAppRelativeHref, "canonicalizeAppRelativeHref");
|
|
63
|
-
function stripFarmBasePath(pathname, basePath = getFarmBasePath()) {
|
|
64
|
-
const normalizedBasePath = normalizeFarmBasePath(basePath);
|
|
65
|
-
if (!normalizedBasePath) return pathname || "/";
|
|
66
|
-
if (pathname === normalizedBasePath) return "/";
|
|
67
|
-
if (!pathname.startsWith(`${normalizedBasePath}/`)) return pathname || "/";
|
|
68
|
-
return pathname.slice(normalizedBasePath.length) || "/";
|
|
69
|
-
}
|
|
70
|
-
__name(stripFarmBasePath, "stripFarmBasePath");
|
|
71
|
-
function normalizeFarmBasePath(basePath) {
|
|
72
|
-
if (!basePath || basePath === "/") return "";
|
|
73
|
-
const hasUnstableCharacters = /* @__PURE__ */ __name((candidate) => candidate.includes("\\") || Array.from(candidate).some((character) => {
|
|
74
|
-
const code = character.charCodeAt(0);
|
|
75
|
-
return code <= 31 || code >= 127 && code <= 159;
|
|
76
|
-
}), "hasUnstableCharacters");
|
|
77
|
-
if (hasUnstableCharacters(basePath)) {
|
|
78
|
-
throw new Error("Farm basePath cannot contain backslashes or control characters.");
|
|
79
|
-
}
|
|
80
|
-
const pathname = basePath.trim();
|
|
81
|
-
if (!pathname || pathname === "/") return "";
|
|
82
|
-
if (pathname.includes("?") || pathname.includes("#")) {
|
|
83
|
-
throw new Error("Farm basePath cannot contain a query string or hash.");
|
|
84
|
-
}
|
|
85
|
-
if (pathname.startsWith("//") || /^[a-z][a-z\d+.-]*:\/\//i.test(pathname)) {
|
|
86
|
-
throw new Error('Farm basePath must be a pathname such as "/docs", not a URL.');
|
|
87
|
-
}
|
|
88
|
-
for (const segment of pathname.split("/")) {
|
|
89
|
-
let decoded = segment;
|
|
90
|
-
try {
|
|
91
|
-
decoded = decodeURIComponent(segment);
|
|
92
|
-
} catch {
|
|
93
|
-
}
|
|
94
|
-
if (hasUnstableCharacters(decoded)) {
|
|
95
|
-
throw new Error("Farm basePath cannot contain backslashes or control characters.");
|
|
96
|
-
}
|
|
97
|
-
if (decoded.includes("/")) {
|
|
98
|
-
throw new Error("Farm basePath cannot contain percent-encoded path separators.");
|
|
99
|
-
}
|
|
100
|
-
if (decoded === "." || decoded === "..") {
|
|
101
|
-
throw new Error('Farm basePath cannot contain "." or ".." path segments.');
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
return `/${pathname}`.replace(/\/{2,}/g, "/").replace(/\/+$/, "");
|
|
105
|
-
}
|
|
106
|
-
__name(normalizeFarmBasePath, "normalizeFarmBasePath");
|
|
107
|
-
|
|
108
|
-
// src/i18n/routing.ts
|
|
109
|
-
function resolveFarmLocalePath(pathname, config) {
|
|
110
|
-
const normalized = normalizePathname(stripFarmBasePath(pathname, config.basePath));
|
|
111
|
-
if (config.routing === "none") {
|
|
112
|
-
return { pathname: normalized, explicit: false };
|
|
113
|
-
}
|
|
114
|
-
const segments = normalized.split("/").filter(Boolean);
|
|
115
|
-
const firstSegment = segments[0];
|
|
116
|
-
const locale = config.locales.find(
|
|
117
|
-
(candidate) => candidate.toLowerCase() === firstSegment?.toLowerCase()
|
|
118
|
-
);
|
|
119
|
-
if (!locale) {
|
|
120
|
-
return { pathname: normalized, explicit: false };
|
|
121
|
-
}
|
|
122
|
-
const remaining = segments.slice(1);
|
|
123
|
-
return {
|
|
124
|
-
locale,
|
|
125
|
-
pathname: remaining.length > 0 ? `/${remaining.join("/")}` : "/",
|
|
126
|
-
explicit: true
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
__name(resolveFarmLocalePath, "resolveFarmLocalePath");
|
|
130
|
-
function stripFarmLocaleFromPathname(pathname, config) {
|
|
131
|
-
return resolveFarmLocalePath(pathname, config).pathname;
|
|
132
|
-
}
|
|
133
|
-
__name(stripFarmLocaleFromPathname, "stripFarmLocaleFromPathname");
|
|
134
|
-
function localizeFarmPathname(pathname, locale, config) {
|
|
135
|
-
const internalPathname = resolveFarmLocalePath(pathname, config).pathname;
|
|
136
|
-
let localizedPathname = internalPathname;
|
|
137
|
-
if (config.routing === "none") {
|
|
138
|
-
return applyFarmBasePath(localizedPathname, config.basePath);
|
|
139
|
-
}
|
|
140
|
-
if (config.routing === "prefix-except-default" && locale === config.defaultLocale) {
|
|
141
|
-
return applyFarmBasePath(localizedPathname, config.basePath);
|
|
142
|
-
}
|
|
143
|
-
localizedPathname = internalPathname === "/" ? `/${locale}` : `/${locale}${internalPathname}`;
|
|
144
|
-
return applyFarmBasePath(localizedPathname, config.basePath);
|
|
145
|
-
}
|
|
146
|
-
__name(localizeFarmPathname, "localizeFarmPathname");
|
|
147
|
-
function localizeFarmHref(href, locale, config) {
|
|
148
|
-
if (!href.startsWith("/") || href.startsWith("//")) return href;
|
|
149
|
-
const url = new URL(href, "http://farm.local");
|
|
150
|
-
url.pathname = localizeFarmPathname(url.pathname, locale, config);
|
|
151
|
-
return `${url.pathname}${url.search}${url.hash}`;
|
|
152
|
-
}
|
|
153
|
-
__name(localizeFarmHref, "localizeFarmHref");
|
|
154
|
-
function normalizePathname(pathname) {
|
|
155
|
-
const withLeadingSlash = pathname.startsWith("/") ? pathname : `/${pathname}`;
|
|
156
|
-
if (withLeadingSlash === "/") return "/";
|
|
157
|
-
return withLeadingSlash.replace(/\/{2,}/g, "/").replace(/\/$/, "") || "/";
|
|
158
|
-
}
|
|
159
|
-
__name(normalizePathname, "normalizePathname");
|
|
160
|
-
|
|
161
|
-
// src/i18n/resolver.ts
|
|
162
|
-
function getFarmLocaleVaryHeaders(config, resolution) {
|
|
163
|
-
if (!config.enabled || resolution.source === "url") return [];
|
|
164
|
-
const headers = [];
|
|
165
|
-
if (config.detection.includes("cookie")) headers.push("Cookie");
|
|
166
|
-
if (config.detection.includes("accept-language")) headers.push("Accept-Language");
|
|
167
|
-
return headers;
|
|
168
|
-
}
|
|
169
|
-
__name(getFarmLocaleVaryHeaders, "getFarmLocaleVaryHeaders");
|
|
170
|
-
function createFarmLocaleCookie(locale, config) {
|
|
171
|
-
const cookie = config.cookie;
|
|
172
|
-
let value = `${encodeURIComponent(cookie.name)}=${encodeURIComponent(locale)}`;
|
|
173
|
-
value += `; Max-Age=${cookie.maxAge}`;
|
|
174
|
-
value += `; Path=${cookie.path}`;
|
|
175
|
-
value += `; SameSite=${capitalize(cookie.sameSite)}`;
|
|
176
|
-
if (cookie.secure) value += "; Secure";
|
|
177
|
-
return value;
|
|
178
|
-
}
|
|
179
|
-
__name(createFarmLocaleCookie, "createFarmLocaleCookie");
|
|
180
|
-
function matchFarmLocale(requested, locales) {
|
|
181
|
-
if (!requested) return void 0;
|
|
182
|
-
let canonical;
|
|
183
|
-
try {
|
|
184
|
-
canonical = Intl.getCanonicalLocales(requested)[0];
|
|
185
|
-
} catch {
|
|
186
|
-
return void 0;
|
|
187
|
-
}
|
|
188
|
-
const exact = locales.find((locale) => locale.toLowerCase() === canonical.toLowerCase());
|
|
189
|
-
if (exact) return exact;
|
|
190
|
-
const language = canonical.split("-")[0]?.toLowerCase();
|
|
191
|
-
const base = locales.find((locale) => locale.toLowerCase() === language);
|
|
192
|
-
if (base) return base;
|
|
193
|
-
return locales.find((locale) => locale.split("-")[0]?.toLowerCase() === language);
|
|
194
|
-
}
|
|
195
|
-
__name(matchFarmLocale, "matchFarmLocale");
|
|
196
|
-
function capitalize(value) {
|
|
197
|
-
return value.charAt(0).toUpperCase() + value.slice(1);
|
|
198
|
-
}
|
|
199
|
-
__name(capitalize, "capitalize");
|
|
200
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
201
|
-
0 && (module.exports = {
|
|
202
|
-
createFarmLocaleCookie,
|
|
203
|
-
getFarmLocaleVaryHeaders,
|
|
204
|
-
localizeFarmHref,
|
|
205
|
-
localizeFarmPathname,
|
|
206
|
-
matchFarmLocale,
|
|
207
|
-
resolveFarmLocalePath,
|
|
208
|
-
stripFarmLocaleFromPathname
|
|
209
|
-
});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
var _chunk75BRBIFPcjs = require('../chunk-75BRBIFP.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
var _chunkBIDYX3SLcjs = require('../chunk-BIDYX3SL.cjs');
|
|
12
|
+
require('../chunk-I57LW5VZ.cjs');
|
|
13
|
+
require('../chunk-S3JO3N4H.cjs');
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
exports.createFarmLocaleCookie = _chunk75BRBIFPcjs.createFarmLocaleCookie; exports.getFarmLocaleVaryHeaders = _chunk75BRBIFPcjs.getFarmLocaleVaryHeaders; exports.localizeFarmHref = _chunkBIDYX3SLcjs.localizeFarmHref; exports.localizeFarmPathname = _chunkBIDYX3SLcjs.localizeFarmPathname; exports.matchFarmLocale = _chunk75BRBIFPcjs.matchFarmLocale; exports.resolveFarmLocalePath = _chunkBIDYX3SLcjs.resolveFarmLocalePath; exports.stripFarmLocaleFromPathname = _chunkBIDYX3SLcjs.stripFarmLocaleFromPathname;
|