one 1.24.9 → 1.25.2
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/cjs/vite/one.cjs +77 -46
- package/dist/cjs/vite/one.native.js +129 -92
- package/dist/cjs/vite/one.native.js.map +1 -1
- package/dist/cjs/vite/plugins/bundledDevPlugin.cjs +16 -7
- package/dist/cjs/vite/plugins/bundledDevPlugin.native.js +16 -7
- package/dist/cjs/vite/plugins/bundledDevPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.cjs +15 -11
- package/dist/cjs/vite/plugins/criticalCSSPlugin.native.js +15 -11
- package/dist/cjs/vite/plugins/criticalCSSPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.cjs +9 -25
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.native.js +9 -25
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/environmentGuardPlugin.cjs +22 -7
- package/dist/cjs/vite/plugins/environmentGuardPlugin.native.js +23 -8
- package/dist/cjs/vite/plugins/environmentGuardPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/imageDataPlugin.cjs +42 -32
- package/dist/cjs/vite/plugins/imageDataPlugin.native.js +42 -32
- package/dist/cjs/vite/plugins/imageDataPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/imageDataPlugin.test.cjs +18 -38
- package/dist/cjs/vite/plugins/imageDataPlugin.test.native.js +18 -38
- package/dist/cjs/vite/plugins/imageDataPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +58 -43
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +93 -76
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.test.cjs +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/warmRoutesPlugin.cjs +31 -7
- package/dist/cjs/vite/plugins/warmRoutesPlugin.native.js +35 -10
- package/dist/cjs/vite/plugins/warmRoutesPlugin.native.js.map +1 -1
- package/dist/esm/getURL.native.test.mjs +1 -1
- package/dist/esm/router/hmrImport.native.test.mjs +1 -1
- package/dist/esm/router/routeHmr.native.test.mjs +1 -1
- package/dist/esm/router/routeHmr.native.test.mjs.map +1 -1
- package/dist/esm/useLoader.native.js +0 -66
- package/dist/esm/useLoader.native.js.map +1 -1
- package/dist/esm/vite/one.mjs +77 -46
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js +129 -92
- package/dist/esm/vite/one.native.js.map +1 -1
- package/dist/esm/vite/plugins/bundledDevPlugin.mjs +16 -7
- package/dist/esm/vite/plugins/bundledDevPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/bundledDevPlugin.native.js +16 -7
- package/dist/esm/vite/plugins/bundledDevPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.mjs +15 -11
- package/dist/esm/vite/plugins/criticalCSSPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.native.js +15 -11
- package/dist/esm/vite/plugins/criticalCSSPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.mjs +9 -25
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.mjs.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.native.js +9 -25
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.native.js.map +1 -1
- package/dist/esm/vite/plugins/environmentGuardPlugin.mjs +22 -7
- package/dist/esm/vite/plugins/environmentGuardPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/environmentGuardPlugin.native.js +23 -8
- package/dist/esm/vite/plugins/environmentGuardPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.mjs +42 -32
- package/dist/esm/vite/plugins/imageDataPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.native.js +42 -32
- package/dist/esm/vite/plugins/imageDataPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.test.mjs +18 -38
- package/dist/esm/vite/plugins/imageDataPlugin.test.mjs.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.test.native.js +18 -38
- package/dist/esm/vite/plugins/imageDataPlugin.test.native.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +58 -43
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +93 -76
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
- package/dist/esm/vite/plugins/warmRoutesPlugin.mjs +31 -7
- package/dist/esm/vite/plugins/warmRoutesPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/warmRoutesPlugin.native.js +35 -10
- package/dist/esm/vite/plugins/warmRoutesPlugin.native.js.map +1 -1
- package/package.json +12 -12
- package/src/vite/one.ts +121 -66
- package/src/vite/plugins/bundledDevPlugin.ts +17 -7
- package/src/vite/plugins/criticalCSSPlugin.test.ts +11 -27
- package/src/vite/plugins/criticalCSSPlugin.ts +15 -11
- package/src/vite/plugins/environmentGuardPlugin.ts +20 -7
- package/src/vite/plugins/fileSystemRouterPlugin.tsx +7 -3
- package/src/vite/plugins/imageDataPlugin.test.ts +20 -39
- package/src/vite/plugins/imageDataPlugin.ts +49 -44
- package/src/vite/plugins/virtualEntryPlugin.test.ts +1 -1
- package/src/vite/plugins/virtualEntryPlugin.ts +139 -122
- package/src/vite/plugins/warmRoutesPlugin.ts +36 -10
- package/src/vite/types.ts +6 -1
- package/types/vite/one.d.ts.map +1 -1
- package/types/vite/plugins/bundledDevPlugin.d.ts.map +1 -1
- package/types/vite/plugins/criticalCSSPlugin.d.ts.map +1 -1
- package/types/vite/plugins/environmentGuardPlugin.d.ts.map +1 -1
- package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
- package/types/vite/plugins/imageDataPlugin.d.ts.map +1 -1
- package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
- package/types/vite/plugins/warmRoutesPlugin.d.ts.map +1 -1
- package/types/vite/types.d.ts +6 -1
- package/types/vite/types.d.ts.map +1 -1
|
@@ -58,23 +58,48 @@ function autoWarmPlugin(persistPath) {
|
|
|
58
58
|
} catch (unused) {}
|
|
59
59
|
},
|
|
60
60
|
// cache corrupted, ignore
|
|
61
|
-
configResolved(config) {
|
|
61
|
+
async configResolved(config) {
|
|
62
62
|
excludeSet = new Set(config.optimizeDeps.exclude || []);
|
|
63
|
-
if (cachedDeps.length > 0
|
|
64
|
-
var
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
63
|
+
if (cachedDeps.length > 0) {
|
|
64
|
+
var resolve = config.createResolver();
|
|
65
|
+
var staleDeps = /* @__PURE__ */new Set();
|
|
66
|
+
await Promise.all(cachedDeps.map(async function (dep) {
|
|
67
|
+
if (excludeSet.has(dep)) {
|
|
68
|
+
staleDeps.add(dep);
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
try {
|
|
72
|
+
if (!(await resolve(dep))) staleDeps.add(dep);
|
|
73
|
+
} catch (unused) {
|
|
74
|
+
staleDeps.add(dep);
|
|
75
|
+
}
|
|
76
|
+
}));
|
|
77
|
+
if (staleDeps.size > 0) {
|
|
78
|
+
cachedDeps = cachedDeps.filter(function (dep) {
|
|
79
|
+
return !staleDeps.has(dep);
|
|
80
|
+
});
|
|
81
|
+
console.info(`[one] pruned ${staleDeps.size} stale deps from warm cache`);
|
|
69
82
|
if (config.optimizeDeps.include) {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
return !excludeSet.has(d);
|
|
83
|
+
config.optimizeDeps.include = config.optimizeDeps.include.filter(function (dep) {
|
|
84
|
+
return !staleDeps.has(dep);
|
|
73
85
|
});
|
|
74
86
|
}
|
|
87
|
+
try {
|
|
88
|
+
var nextRaw = JSON.stringify({
|
|
89
|
+
deps: [...cachedDeps].sort()
|
|
90
|
+
}, null, 2);
|
|
91
|
+
if (!(0, import_fs.existsSync)(cacheFile) || (0, import_fs.readFileSync)(cacheFile, "utf-8") !== nextRaw) {
|
|
92
|
+
var dir = (0, import_path.dirname)(cacheFile);
|
|
93
|
+
if (!(0, import_fs.existsSync)(dir)) (0, import_fs.mkdirSync)(dir, {
|
|
94
|
+
recursive: true
|
|
95
|
+
});
|
|
96
|
+
(0, import_fs.writeFileSync)(cacheFile, nextRaw);
|
|
97
|
+
}
|
|
98
|
+
} catch (unused) {}
|
|
75
99
|
}
|
|
76
100
|
}
|
|
77
101
|
},
|
|
102
|
+
// a future snapshot can retry the cache write
|
|
78
103
|
configureServer(server) {
|
|
79
104
|
var _server_httpServer;
|
|
80
105
|
var lastDepsCount = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","warmRoutesPlugin_exports","__export","autoWarmPlugin","warmRoutesPlugin","module","exports","import_fs","require","import_path","WARM_DEPS_FILE","TRACKING_WINDOW","persistPath","cacheFile","cachedDeps","excludeSet","name","apply","config","volatileCache","join","process","cwd","existsSync","cached","JSON","parse","readFileSync","Array","isArray","deps","length","console","info","optimizeDeps","include","unused","configResolved","Set","exclude","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","warmRoutesPlugin_exports","__export","autoWarmPlugin","warmRoutesPlugin","module","exports","import_fs","require","import_path","WARM_DEPS_FILE","TRACKING_WINDOW","persistPath","cacheFile","cachedDeps","excludeSet","name","apply","config","volatileCache","join","process","cwd","existsSync","cached","JSON","parse","readFileSync","Array","isArray","deps","length","console","info","optimizeDeps","include","unused","configResolved","Set","exclude","resolve","createResolver","staleDeps","Promise","all","map","dep","has","add","size","filter","nextRaw","stringify","sort","dir","dirname","mkdirSync","recursive","writeFileSync","configureServer","server","_server_httpServer","lastDepsCount","timer","userInclude","d","includes","snapshotDeps","_ref","_server_environments_client","_server_environments","optimizer","environments","client","depsOptimizer","_depsOptimizer","metadata","optimized","discovered","currentDeps","Object","keys","depsToCache","d2","allDeps","existingRaw","existing","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","err","return"],"sources":["../../../../src/vite/plugins/warmRoutesPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { afterEach, describe, expect, it, vi } from "vitest";
|
|
2
2
|
import { getDevServer } from "./getDevServer.mjs";
|
|
3
|
-
import { getURL } from "./getURL.native
|
|
3
|
+
import { getURL } from "./getURL.native";
|
|
4
4
|
vi.mock("./getDevServer", () => ({
|
|
5
5
|
getDevServer: vi.fn(() => ({
|
|
6
6
|
url: "http://metro.local:8081/",
|
|
@@ -6,7 +6,7 @@ describe("routeHmr.native", () => {
|
|
|
6
6
|
beforeEach(async () => {
|
|
7
7
|
vi.stubEnv("NODE_ENV", "development");
|
|
8
8
|
vi.resetModules();
|
|
9
|
-
routeHmr = await import("./routeHmr.native
|
|
9
|
+
routeHmr = await import("./routeHmr.native");
|
|
10
10
|
});
|
|
11
11
|
afterEach(() => {
|
|
12
12
|
vi.unstubAllEnvs();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["afterEach","beforeEach","describe","expect","it","vi","routeHmr","realWindow","globalThis","window","realModuleUpdatedHook","__VXRN_ON_MODULE_UPDATED__","stubEnv","resetModules","unstubAllEnvs","toBe","before","getRouteHmrEpoch","listener","fn","unsubscribe","subscribeRouteHmr","toHaveBeenCalledTimes","clearFile","__oneRouteCache","toHaveBeenCalledWith","not","toThrow","Error","toHaveBeenCalledOnce"],"sources":["../../../src/router/routeHmr.native.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,UAAA,EAAYC,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAIhEH,QAAA,CAAS,mBAAmB,MAAM;EAChC,IAAII,QAAA;EACJ,MAAMC,UAAA,GAAcC,UAAA,CAAmBC,MAAA;EACvC,MAAMC,qBAAA,GAAwBF,UAAA,CAAWG,0BAAA;EAEzCV,UAAA,CAAW,YAAY;IAGrBI,EAAA,CAAGO,OAAA,CAAQ,YAAY,aAAa;IACpCP,EAAA,CAAGQ,YAAA,CAAa;IAChBP,QAAA,GAAW,MAAM,OAAO,
|
|
1
|
+
{"version":3,"names":["afterEach","beforeEach","describe","expect","it","vi","routeHmr","realWindow","globalThis","window","realModuleUpdatedHook","__VXRN_ON_MODULE_UPDATED__","stubEnv","resetModules","unstubAllEnvs","toBe","before","getRouteHmrEpoch","listener","fn","unsubscribe","subscribeRouteHmr","toHaveBeenCalledTimes","clearFile","__oneRouteCache","toHaveBeenCalledWith","not","toThrow","Error","toHaveBeenCalledOnce"],"sources":["../../../src/router/routeHmr.native.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,UAAA,EAAYC,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAIhEH,QAAA,CAAS,mBAAmB,MAAM;EAChC,IAAII,QAAA;EACJ,MAAMC,UAAA,GAAcC,UAAA,CAAmBC,MAAA;EACvC,MAAMC,qBAAA,GAAwBF,UAAA,CAAWG,0BAAA;EAEzCV,UAAA,CAAW,YAAY;IAGrBI,EAAA,CAAGO,OAAA,CAAQ,YAAY,aAAa;IACpCP,EAAA,CAAGQ,YAAA,CAAa;IAChBP,QAAA,GAAW,MAAM,OAAO,mBAAmB;EAC7C,CAAC;EAEDN,SAAA,CAAU,MAAM;IACdK,EAAA,CAAGS,aAAA,CAAc;IACjBN,UAAA,CAAWG,0BAAA,GAA6BD,qBAAA;IACtCF,UAAA,CAAmBC,MAAA,GAASF,UAAA;EAChC,CAAC;EAEDH,EAAA,CAAG,kEAAkE,MAAM;IACzED,MAAA,CAAO,OAAOK,UAAA,CAAWG,0BAA0B,EAAEI,IAAA,CAAK,UAAU;EACtE,CAAC;EAEDX,EAAA,CAAG,yEAAyE,MAAM;IAChF,MAAMY,MAAA,GAASV,QAAA,CAASW,gBAAA,CAAiB;IACzC,MAAMC,QAAA,GAAWb,EAAA,CAAGc,EAAA,CAAG;IACvB,MAAMC,WAAA,GAAcd,QAAA,CAASe,iBAAA,CAAkBH,QAAQ;IAEvDV,UAAA,CAAWG,0BAAA,CAA4B,eAAe;IACtDR,MAAA,CAAOG,QAAA,CAASW,gBAAA,CAAiB,CAAC,EAAEF,IAAA,CAAKC,MAAA,GAAS,CAAC;IACnDb,MAAA,CAAOe,QAAQ,EAAEI,qBAAA,CAAsB,CAAC;IAExCF,WAAA,CAAY;IACZZ,UAAA,CAAWG,0BAAA,CAA4B,eAAe;IACtDR,MAAA,CAAOe,QAAQ,EAAEI,qBAAA,CAAsB,CAAC;EAC1C,CAAC;EAEDlB,EAAA,CAAG,sFAAsF,MAAM;IAC7F,MAAMmB,SAAA,GAAYlB,EAAA,CAAGc,EAAA,CAAG;IACtBX,UAAA,CAAmBC,MAAA,GAAS;MAAEe,eAAA,EAAiB;QAAED;MAAU;IAAE;IAC/Df,UAAA,CAAWG,0BAAA,CAA4B,iBAAiB;IACxDR,MAAA,CAAOoB,SAAS,EAAEE,oBAAA,CAAqB,iBAAiB;EAC1D,CAAC;EAEDrB,EAAA,CAAG,sDAAsD,MAAM;IAC7D;IAAEI,UAAA,CAAmBC,MAAA,GAAS;IAC9BN,MAAA,CAAO,MAAMK,UAAA,CAAWG,0BAAA,CAA4B,OAAO,CAAC,EAAEe,GAAA,CAAIC,OAAA,CAAQ;EAC5E,CAAC;EAEDvB,EAAA,CAAG,+DAA+D,MAAM;IACtE,MAAMc,QAAA,GAAWb,EAAA,CAAGc,EAAA,CAAG;IACvB,MAAMC,WAAA,GAAcd,QAAA,CAASe,iBAAA,CAAkBH,QAAQ;IACrDV,UAAA,CAAmBC,MAAA,GAAS;MAC5Be,eAAA,EAAiB;QACfD,UAAA,EAAY;UACV,MAAM,IAAIK,KAAA,CAAM,uBAAuB;QACzC;MACF;IACF;IAEAzB,MAAA,CAAO,MAAMK,UAAA,CAAWG,0BAAA,CAA4B,eAAe,CAAC,EAAEgB,OAAA,CACpE,uBACF;IACAxB,MAAA,CAAOe,QAAQ,EAAEW,oBAAA,CAAqB;IACtCT,WAAA,CAAY;EACd,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -280,7 +280,6 @@ function useLoaderState(loader) {
|
|
|
280
280
|
var loadData = async function () {
|
|
281
281
|
var startTime = performance.now();
|
|
282
282
|
try {
|
|
283
|
-
var _dynamicImport;
|
|
284
283
|
var nativeLoaderJSUrl;
|
|
285
284
|
if (process.env.NODE_ENV === "development") nativeLoaderJSUrl = `${getLoaderPath(currentPath, true)}?platform=native`;else nativeLoaderJSUrl = `${getURL()}/assets/${currentPath.slice(1).replace(/\/$/, "").replaceAll("_", "__").replaceAll("/", "_")}${LOADER_JS_POSTFIX_UNCACHED.replace(".js", ".native.js")}`;
|
|
286
285
|
try {
|
|
@@ -371,71 +370,6 @@ function useLoaderState(loader) {
|
|
|
371
370
|
});
|
|
372
371
|
return;
|
|
373
372
|
}
|
|
374
|
-
var loaderJSUrl = getLoaderPath(currentPath, true);
|
|
375
|
-
var moduleLoadStart1 = performance.now();
|
|
376
|
-
var module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function () {
|
|
377
|
-
return null;
|
|
378
|
-
}));
|
|
379
|
-
var moduleLoadTime1 = performance.now() - moduleLoadStart1;
|
|
380
|
-
if (!(module === null || module === void 0 ? void 0 : module.loader)) {
|
|
381
|
-
updateState(currentPath, {
|
|
382
|
-
data: void 0,
|
|
383
|
-
hasLoadedOnce: true,
|
|
384
|
-
promise: void 0
|
|
385
|
-
});
|
|
386
|
-
return;
|
|
387
|
-
}
|
|
388
|
-
var executionStart1 = performance.now();
|
|
389
|
-
var result1 = await module.loader();
|
|
390
|
-
var executionTime1 = performance.now() - executionStart1;
|
|
391
|
-
var totalTime2 = performance.now() - startTime;
|
|
392
|
-
if (result1 === null || result1 === void 0 ? void 0 : result1.__oneRedirect) {
|
|
393
|
-
recordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({
|
|
394
|
-
path: currentPath,
|
|
395
|
-
startTime,
|
|
396
|
-
moduleLoadTime: moduleLoadTime1,
|
|
397
|
-
executionTime: executionTime1,
|
|
398
|
-
totalTime: totalTime2,
|
|
399
|
-
source: "initial"
|
|
400
|
-
});
|
|
401
|
-
updateState(currentPath, {
|
|
402
|
-
data: void 0,
|
|
403
|
-
hasLoadedOnce: true,
|
|
404
|
-
promise: void 0
|
|
405
|
-
});
|
|
406
|
-
router.replace(result1.__oneRedirect);
|
|
407
|
-
return;
|
|
408
|
-
}
|
|
409
|
-
if ((result1 === null || result1 === void 0 ? void 0 : result1.__oneError) === 404) {
|
|
410
|
-
recordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({
|
|
411
|
-
path: currentPath,
|
|
412
|
-
startTime,
|
|
413
|
-
moduleLoadTime: moduleLoadTime1,
|
|
414
|
-
executionTime: executionTime1,
|
|
415
|
-
totalTime: totalTime2,
|
|
416
|
-
source: "initial"
|
|
417
|
-
});
|
|
418
|
-
var notFoundRoute1 = findNearestNotFoundRoute(currentPath, routeNode);
|
|
419
|
-
setNotFoundState({
|
|
420
|
-
notFoundPath: result1.__oneNotFoundPath || "/+not-found",
|
|
421
|
-
notFoundRouteNode: notFoundRoute1 || void 0,
|
|
422
|
-
originalPath: currentPath
|
|
423
|
-
});
|
|
424
|
-
return;
|
|
425
|
-
}
|
|
426
|
-
updateState(currentPath, {
|
|
427
|
-
data: result1,
|
|
428
|
-
hasLoadedOnce: true,
|
|
429
|
-
promise: void 0
|
|
430
|
-
});
|
|
431
|
-
recordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({
|
|
432
|
-
path: currentPath,
|
|
433
|
-
startTime,
|
|
434
|
-
moduleLoadTime: moduleLoadTime1,
|
|
435
|
-
executionTime: executionTime1,
|
|
436
|
-
totalTime: totalTime2,
|
|
437
|
-
source: "initial"
|
|
438
|
-
});
|
|
439
373
|
} catch (err) {
|
|
440
374
|
var totalTime3 = performance.now() - startTime;
|
|
441
375
|
updateState(currentPath, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useSyncExternalStore","registerDevtoolsFunction","useParams","usePathname","findNearestNotFoundRoute","setNotFoundState","useContextKey","getContextKey","router","preloadedLoaderData","preloadingLoader","routeNode","setSSRLoaderData","ssrLoaderData","getClientMatchesSnapshot","subscribeToClientMatches","updateMatchLoaderData","getLoaderPath","getURL","LOADER_JS_POSTFIX_UNCACHED","dynamicImport","weakKey","useServerContext","_instanceof","left","right","Symbol","hasInstance","LOADER_TIMEOUT","process","env","ONE_LOADER_TIMEOUT_MS","loaderTimingHistory","MAX_TIMING_HISTORY","recordLoaderTiming","NODE_ENV","entry","unshift","length","pop","getLoaderTimingHistory","loaderState","subscribers","Set","LOADER_STATE_MAX","loaderStateKeys","setBoundedLoaderState","path","push","oldest","shift","updateState","updates","forEach","callback","subscribe","add","delete","getLoaderState","preloadedData","data","error","promise","state","hasLoadedOnce","refetchLoader","pathname","startTime","performance","now","_dynamicImport","loaderJSUrl","Date","moduleLoadStart","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","source","replace","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","timestamp","currentMatches","pageMatch","normalizedPathname","normalizedMatchPathname","routeId","err","totalTime1","Error","message","String","window","__oneRefetchLoader","refetchMatchLoader","currentPath","useLoaderState","loaderProps","loaderPropsFromServerContext","loaderData","loaderDataFromServerContext","params","has","get","refetch","serverContext","matches","contextKey","match","find","m","useAsyncFn","matchRouteId","startsWith","clientMatches","loaderStateEntry","_clientMatches_","match1","isPageMatch","matchPathNormalized","matchPathFresh","fresh","resolvedPreloadData","then","val","console","loadData","nativeLoaderJSUrl","slice","replaceAll","controller","AbortController","timeoutId","setTimeout","abort","loaderJsCode","loaderJsCodeResp","fetch","signal","ok","status","text","clearTimeout","Function","e","moduleLoadStart1","moduleLoadTime1","executionStart1","result1","executionTime1","totalTime2","notFoundRoute1","totalTime3","useLoader","results","Map","started","USE_ASYNC_FN_CACHE_MAX","setBoundedResults","key","value","size","firstKey","keys","next","set","resetLoaderState","clear","props","JSON","stringify","Promise","final","current"],"sources":["useLoader.native.js"],"sourcesContent":["import { useCallback, useSyncExternalStore } from \"react\";\nimport { registerDevtoolsFunction } from \"./devtools/registry\";\nimport { useParams, usePathname } from \"./hooks\";\nimport { findNearestNotFoundRoute, setNotFoundState } from \"./notFoundState\";\nimport { useContextKey } from \"./router/Route\";\nimport { getContextKey } from \"./router/matchers\";\nimport { router } from \"./router/imperative-api\";\nimport { preloadedLoaderData, preloadingLoader, routeNode } from \"./router/router\";\nimport { setSSRLoaderData, ssrLoaderData } from \"./server/ssrLoaderData\";\nimport { getClientMatchesSnapshot, subscribeToClientMatches, updateMatchLoaderData } from \"./useMatches\";\nimport { getLoaderPath } from \"./utils/cleanUrl\";\nimport { getURL } from \"./getURL\";\nimport { LOADER_JS_POSTFIX_UNCACHED } from \"./constants\";\nimport { dynamicImport } from \"./utils/dynamicImport\";\nimport { weakKey } from \"./utils/weakKey\";\nimport { useServerContext } from \"./vite/one-server-only\";\n\nfunction _instanceof(left, right) {\n\tif (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) return !!right[Symbol.hasInstance](left);\n\telse return left instanceof right;\n}\nvar LOADER_TIMEOUT = process.env.ONE_LOADER_TIMEOUT_MS ? +process.env.ONE_LOADER_TIMEOUT_MS : 6e4;\nvar loaderTimingHistory = [];\nvar MAX_TIMING_HISTORY = 50;\nvar recordLoaderTiming = process.env.NODE_ENV === \"development\" ? function(entry) {\n\tloaderTimingHistory.unshift(entry);\n\tif (loaderTimingHistory.length > MAX_TIMING_HISTORY) loaderTimingHistory.pop();\n} : void 0;\nfunction getLoaderTimingHistory() {\n\treturn loaderTimingHistory;\n}\nregisterDevtoolsFunction(\"getLoaderTimingHistory\", getLoaderTimingHistory);\nregisterDevtoolsFunction(\"recordLoaderTiming\", recordLoaderTiming);\nvar loaderState = {};\nvar subscribers = /* @__PURE__ */ new Set();\nvar LOADER_STATE_MAX = 200;\nvar loaderStateKeys = [];\nfunction setBoundedLoaderState(path, entry) {\n\tif (!(path in loaderState)) {\n\t\tloaderStateKeys.push(path);\n\t\tif (loaderStateKeys.length > LOADER_STATE_MAX) {\n\t\t\tvar oldest = loaderStateKeys.shift();\n\t\t\tdelete loaderState[oldest];\n\t\t}\n\t}\n\tloaderState[path] = entry;\n}\nfunction updateState(path, updates) {\n\tsetBoundedLoaderState(path, {\n\t\t...loaderState[path],\n\t\t...updates\n\t});\n\tsubscribers.forEach(function(callback) {\n\t\tcallback();\n\t});\n}\nfunction subscribe(callback) {\n\tsubscribers.add(callback);\n\treturn function() {\n\t\treturn subscribers.delete(callback);\n\t};\n}\nfunction getLoaderState(path, preloadedData) {\n\tif (!(path in loaderState)) setBoundedLoaderState(path, {\n\t\tdata: preloadedData,\n\t\terror: void 0,\n\t\tpromise: void 0,\n\t\tstate: \"idle\",\n\t\thasLoadedOnce: !!preloadedData\n\t});\n\treturn loaderState[path];\n}\nasync function refetchLoader(pathname) {\n\tvar startTime = performance.now();\n\tupdateState(pathname, {\n\t\tstate: \"loading\",\n\t\terror: null\n\t});\n\ttry {\n\t\tvar _dynamicImport;\n\t\tvar loaderJSUrl = getLoaderPath(pathname, true, `${Date.now()}`);\n\t\tvar moduleLoadStart = performance.now();\n\t\tvar module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\t\treturn null;\n\t\t}));\n\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\tif (!(module === null || module === void 0 ? void 0 : module.loader)) {\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tvar executionStart = performance.now();\n\t\tvar result = await module.loader();\n\t\tvar executionTime = performance.now() - executionStart;\n\t\tvar totalTime = performance.now() - startTime;\n\t\tif (result === null || result === void 0 ? void 0 : result.__oneRedirect) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\trouter.replace(result.__oneRedirect);\n\t\t\treturn;\n\t\t}\n\t\tif ((result === null || result === void 0 ? void 0 : result.__oneError) === 404) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tvar notFoundRoute = findNearestNotFoundRoute(pathname, routeNode);\n\t\t\tsetNotFoundState({\n\t\t\t\tnotFoundPath: result.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\toriginalPath: pathname\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tupdateState(pathname, {\n\t\t\tdata: result,\n\t\t\tstate: \"idle\",\n\t\t\ttimestamp: Date.now(),\n\t\t\thasLoadedOnce: true\n\t\t});\n\t\tvar currentMatches = getClientMatchesSnapshot();\n\t\tvar pageMatch = currentMatches[currentMatches.length - 1];\n\t\tvar normalizedPathname = pathname.replace(/\\/$/, \"\") || \"/\";\n\t\tvar normalizedMatchPathname = ((pageMatch === null || pageMatch === void 0 ? void 0 : pageMatch.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tif (pageMatch && normalizedMatchPathname === normalizedPathname) updateMatchLoaderData(pageMatch.routeId, result);\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\tmoduleLoadTime,\n\t\t\texecutionTime,\n\t\t\ttotalTime,\n\t\t\tsource: \"refetch\"\n\t\t});\n\t} catch (err) {\n\t\tvar totalTime1 = performance.now() - startTime;\n\t\tupdateState(pathname, {\n\t\t\terror: err,\n\t\t\tstate: \"idle\"\n\t\t});\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\ttotalTime: totalTime1,\n\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\tsource: \"refetch\"\n\t\t});\n\t\tthrow err;\n\t}\n}\nif (process.env.NODE_ENV === \"development\" && typeof window !== \"undefined\") window.__oneRefetchLoader = refetchLoader;\nasync function refetchMatchLoader(routeId, currentPath) {\n\tvar _dynamicImport;\n\tvar module = await ((_dynamicImport = dynamicImport(getLoaderPath(currentPath, true, `${Date.now()}`))) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\treturn null;\n\t}));\n\tif (!(module === null || module === void 0 ? void 0 : module.loader)) return;\n\tvar result = await module.loader();\n\tif ((result === null || result === void 0 ? void 0 : result.__oneRedirect) || (result === null || result === void 0 ? void 0 : result.__oneError)) return;\n\tupdateMatchLoaderData(routeId, result);\n}\nfunction useLoaderState(loader) {\n\tvar { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } = useServerContext() || {};\n\tvar params = useParams();\n\tvar pathname = usePathname();\n\tvar currentPath = pathname.replace(/\\/index$/, \"\").replace(/\\/$/, \"\") || \"/\";\n\tif (typeof window === \"undefined\") {\n\t\tif (loader) {\n\t\t\tif (ssrLoaderData.has(loader)) return {\n\t\t\t\tdata: ssrLoaderData.get(loader),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t\tvar serverContext = useServerContext();\n\t\t\tif (serverContext === null || serverContext === void 0 ? void 0 : serverContext.matches) {\n\t\t\t\tvar contextKey = useContextKey();\n\t\t\t\tvar match = serverContext.matches.find(function(m) {\n\t\t\t\t\treturn getContextKey(m.routeId) === contextKey;\n\t\t\t\t});\n\t\t\t\tif (match && match.loaderData !== void 0) return {\n\t\t\t\t\tdata: match.loaderData,\n\t\t\t\t\trefetch: async function() {},\n\t\t\t\t\tstate: \"idle\"\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tdata: useAsyncFn(loader, loaderPropsFromServerContext || {\n\t\t\t\t\tpath: pathname,\n\t\t\t\t\tparams\n\t\t\t\t}),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t}\n\t\tif (loaderDataFromServerContext !== void 0) return {\n\t\t\tdata: loaderDataFromServerContext,\n\t\t\trefetch: async function() {},\n\t\t\tstate: \"idle\"\n\t\t};\n\t}\n\tvar matchRouteId = loader ? (function() {\n\t\tvar result = loader();\n\t\treturn typeof result === \"string\" && result.startsWith(\"./\") ? result : null;\n\t})() : null;\n\tvar clientMatches = useSyncExternalStore(subscribeToClientMatches, getClientMatchesSnapshot, getClientMatchesSnapshot);\n\tvar preloadedData = (loaderPropsFromServerContext === null || loaderPropsFromServerContext === void 0 ? void 0 : loaderPropsFromServerContext.path) === currentPath ? loaderDataFromServerContext : void 0;\n\tvar loaderStateEntry = useSyncExternalStore(subscribe, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t}, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t});\n\tvar refetch = useCallback(function() {\n\t\treturn refetchLoader(currentPath);\n\t}, [currentPath]);\n\tif (matchRouteId) {\n\t\tvar _clientMatches_;\n\t\tvar match1 = clientMatches.find(function(m) {\n\t\t\treturn m.routeId === matchRouteId;\n\t\t});\n\t\tvar isPageMatch = clientMatches.length > 0 && ((_clientMatches_ = clientMatches[clientMatches.length - 1]) === null || _clientMatches_ === void 0 ? void 0 : _clientMatches_.routeId) === matchRouteId;\n\t\tvar matchPathNormalized = ((match1 === null || match1 === void 0 ? void 0 : match1.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tvar matchPathFresh = !isPageMatch || matchPathNormalized === currentPath;\n\t\tif (match1 && match1.loaderData != null && matchPathFresh) return {\n\t\t\tdata: match1.loaderData,\n\t\t\trefetch: async function() {\n\t\t\t\tawait refetchLoader(currentPath);\n\t\t\t\tvar fresh = loaderState[currentPath];\n\t\t\t\tif ((fresh === null || fresh === void 0 ? void 0 : fresh.data) != null) updateMatchLoaderData(matchRouteId, fresh.data);\n\t\t\t},\n\t\t\tstate: loaderStateEntry.state\n\t\t};\n\t}\n\tif (!loader) return {\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n\tif (!loaderStateEntry.data && !loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) {\n\t\tvar resolvedPreloadData = preloadedLoaderData[currentPath];\n\t\tif (resolvedPreloadData != null) {\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tloaderStateEntry.data = resolvedPreloadData;\n\t\t\tloaderStateEntry.hasLoadedOnce = true;\n\t\t} else if (preloadingLoader[currentPath]) loaderStateEntry.promise = preloadingLoader[currentPath].then(function(val) {\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tif (val != null) updateState(currentPath, {\n\t\t\t\tdata: val,\n\t\t\t\thasLoadedOnce: true,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t\telse updateState(currentPath, { promise: void 0 });\n\t\t}).catch(function(err) {\n\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tupdateState(currentPath, {\n\t\t\t\terror: err,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t});\n\t\telse {\n\t\t\tvar loadData = async function() {\n\t\t\t\tvar startTime = performance.now();\n\t\t\t\ttry {\n\t\t\t\t\tvar _dynamicImport;\n\t\t\t\t\tvar nativeLoaderJSUrl;\n\t\t\t\t\tif (process.env.NODE_ENV === \"development\") nativeLoaderJSUrl = `${getLoaderPath(currentPath, true)}?platform=native`;\n\t\t\t\t\telse nativeLoaderJSUrl = `${getURL()}/assets/${currentPath.slice(1).replace(/\\/$/, \"\").replaceAll(\"_\", \"__\").replaceAll(\"/\", \"_\")}${LOADER_JS_POSTFIX_UNCACHED.replace(\".js\", \".native.js\")}`;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tvar moduleLoadStart = performance.now();\n\t\t\t\t\t\tvar controller = new AbortController();\n\t\t\t\t\t\tvar timeoutId = setTimeout(function() {\n\t\t\t\t\t\t\treturn controller.abort();\n\t\t\t\t\t\t}, LOADER_TIMEOUT);\n\t\t\t\t\t\tvar loaderJsCode;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvar loaderJsCodeResp = await fetch(nativeLoaderJSUrl, { signal: controller.signal });\n\t\t\t\t\t\t\tif (!loaderJsCodeResp.ok) throw new Error(`Response not ok: ${loaderJsCodeResp.status}`);\n\t\t\t\t\t\t\tloaderJsCode = await loaderJsCodeResp.text();\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar result = {};\n\t\t\t\t\t\tnew Function(\"exports\", loaderJsCode)(result);\n\t\t\t\t\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\t\t\t\t\tif (typeof result.loader !== \"function\") throw new Error(\"Loader code isn't exporting a `loader` function\");\n\t\t\t\t\t\tvar executionStart = performance.now();\n\t\t\t\t\t\tvar data = await result.loader();\n\t\t\t\t\t\tvar executionTime = performance.now() - executionStart;\n\t\t\t\t\t\tvar totalTime = performance.now() - startTime;\n\t\t\t\t\t\tif (data === null || data === void 0 ? void 0 : data.__oneRedirect) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\trouter.replace(data.__oneRedirect);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((data === null || data === void 0 ? void 0 : data.__oneError) === 404) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tvar notFoundRoute = findNearestNotFoundRoute(currentPath, routeNode);\n\t\t\t\t\t\t\tsetNotFoundState({\n\t\t\t\t\t\t\t\tnotFoundPath: data.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\t\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\t\t\t\t\toriginalPath: currentPath\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error(`[one] native loader error for ${currentPath}:`, _instanceof(e, Error) ? e.message : e, `url: ${nativeLoaderJSUrl}`);\n\t\t\t\t\t\tvar totalTime1 = performance.now() - startTime;\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: {},\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\ttotalTime: totalTime1,\n\t\t\t\t\t\t\terror: _instanceof(e, Error) ? e.message : String(e),\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tvar loaderJSUrl = getLoaderPath(currentPath, true);\n\t\t\t\t\tvar moduleLoadStart1 = performance.now();\n\t\t\t\t\tvar module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}));\n\t\t\t\t\tvar moduleLoadTime1 = performance.now() - moduleLoadStart1;\n\t\t\t\t\tif (!(module === null || module === void 0 ? void 0 : module.loader)) {\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tvar executionStart1 = performance.now();\n\t\t\t\t\tvar result1 = await module.loader();\n\t\t\t\t\tvar executionTime1 = performance.now() - executionStart1;\n\t\t\t\t\tvar totalTime2 = performance.now() - startTime;\n\t\t\t\t\tif (result1 === null || result1 === void 0 ? void 0 : result1.__oneRedirect) {\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trouter.replace(result1.__oneRedirect);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif ((result1 === null || result1 === void 0 ? void 0 : result1.__oneError) === 404) {\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\tvar notFoundRoute1 = findNearestNotFoundRoute(currentPath, routeNode);\n\t\t\t\t\t\tsetNotFoundState({\n\t\t\t\t\t\t\tnotFoundPath: result1.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\t\t\t\tnotFoundRouteNode: notFoundRoute1 || void 0,\n\t\t\t\t\t\t\toriginalPath: currentPath\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\tdata: result1,\n\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t});\n\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t});\n\t\t\t\t} catch (err) {\n\t\t\t\t\tvar totalTime3 = performance.now() - startTime;\n\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\terror: err,\n\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t});\n\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\ttotalTime: totalTime3,\n\t\t\t\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\t\t\tloaderStateEntry.promise = loadData();\n\t\t}\n\t}\n\tif (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.error;\n\tif (loaderStateEntry.data === void 0 && loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.promise;\n\treturn {\n\t\tdata: loaderStateEntry.data,\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n}\nfunction useLoader(loader) {\n\tvar { data } = useLoaderState(loader);\n\treturn data;\n}\nvar results = /* @__PURE__ */ new Map();\nvar started = /* @__PURE__ */ new Map();\nvar USE_ASYNC_FN_CACHE_MAX = 100;\nfunction setBoundedResults(key, value) {\n\tif (results.size >= USE_ASYNC_FN_CACHE_MAX && !results.has(key)) {\n\t\tvar firstKey = results.keys().next().value;\n\t\tif (firstKey !== void 0) {\n\t\t\tresults.delete(firstKey);\n\t\t\tstarted.delete(firstKey);\n\t\t}\n\t}\n\tresults.set(key, value);\n}\nfunction resetLoaderState() {\n\tresults.clear();\n\tstarted.clear();\n}\nfunction useAsyncFn(val, props) {\n\tvar key = (val ? weakKey(val) : \"\") + JSON.stringify(props);\n\tif (val) {\n\t\tif (!started.get(key)) {\n\t\t\tstarted.set(key, true);\n\t\t\tvar next = val(props);\n\t\t\tif (_instanceof(next, Promise)) next = next.then(function(final) {\n\t\t\t\tsetBoundedResults(key, final);\n\t\t\t}).catch(function(err) {\n\t\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\t\tsetBoundedResults(key, void 0);\n\t\t\t});\n\t\t\tsetBoundedResults(key, next);\n\t\t}\n\t}\n\tvar current = results.get(key);\n\tif (_instanceof(current, Promise)) throw current;\n\treturn current;\n}\n\nexport { getLoaderTimingHistory, refetchLoader, refetchMatchLoader, resetLoaderState, setSSRLoaderData, useLoader, useLoaderState };"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useCallback","useSyncExternalStore","registerDevtoolsFunction","useParams","usePathname","findNearestNotFoundRoute","setNotFoundState","useContextKey","getContextKey","router","preloadedLoaderData","preloadingLoader","routeNode","setSSRLoaderData","ssrLoaderData","getClientMatchesSnapshot","subscribeToClientMatches","updateMatchLoaderData","getLoaderPath","getURL","LOADER_JS_POSTFIX_UNCACHED","dynamicImport","weakKey","useServerContext","_instanceof","left","right","Symbol","hasInstance","LOADER_TIMEOUT","process","env","ONE_LOADER_TIMEOUT_MS","loaderTimingHistory","MAX_TIMING_HISTORY","recordLoaderTiming","NODE_ENV","entry","unshift","length","pop","getLoaderTimingHistory","loaderState","subscribers","Set","LOADER_STATE_MAX","loaderStateKeys","setBoundedLoaderState","path","push","oldest","shift","updateState","updates","forEach","callback","subscribe","add","delete","getLoaderState","preloadedData","data","error","promise","state","hasLoadedOnce","refetchLoader","pathname","startTime","performance","now","_dynamicImport","loaderJSUrl","Date","moduleLoadStart","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","source","replace","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","timestamp","currentMatches","pageMatch","normalizedPathname","normalizedMatchPathname","routeId","err","totalTime1","Error","message","String","window","__oneRefetchLoader","refetchMatchLoader","currentPath","useLoaderState","loaderProps","loaderPropsFromServerContext","loaderData","loaderDataFromServerContext","params","has","get","refetch","serverContext","matches","contextKey","match","find","m","useAsyncFn","matchRouteId","startsWith","clientMatches","loaderStateEntry","_clientMatches_","match1","isPageMatch","matchPathNormalized","matchPathFresh","fresh","resolvedPreloadData","then","val","console","loadData","nativeLoaderJSUrl","slice","replaceAll","controller","AbortController","timeoutId","setTimeout","abort","loaderJsCode","loaderJsCodeResp","fetch","signal","ok","status","text","clearTimeout","Function","e","totalTime3","useLoader","results","Map","started","USE_ASYNC_FN_CACHE_MAX","setBoundedResults","key","value","size","firstKey","keys","next","set","resetLoaderState","clear","props","JSON","stringify","Promise","final","current"],"sources":["useLoader.native.js"],"sourcesContent":["import { useCallback, useSyncExternalStore } from \"react\";\nimport { registerDevtoolsFunction } from \"./devtools/registry\";\nimport { useParams, usePathname } from \"./hooks\";\nimport { findNearestNotFoundRoute, setNotFoundState } from \"./notFoundState\";\nimport { useContextKey } from \"./router/Route\";\nimport { getContextKey } from \"./router/matchers\";\nimport { router } from \"./router/imperative-api\";\nimport { preloadedLoaderData, preloadingLoader, routeNode } from \"./router/router\";\nimport { setSSRLoaderData, ssrLoaderData } from \"./server/ssrLoaderData\";\nimport { getClientMatchesSnapshot, subscribeToClientMatches, updateMatchLoaderData } from \"./useMatches\";\nimport { getLoaderPath } from \"./utils/cleanUrl\";\nimport { getURL } from \"./getURL\";\nimport { LOADER_JS_POSTFIX_UNCACHED } from \"./constants\";\nimport { dynamicImport } from \"./utils/dynamicImport\";\nimport { weakKey } from \"./utils/weakKey\";\nimport { useServerContext } from \"./vite/one-server-only\";\n\nfunction _instanceof(left, right) {\n\tif (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) return !!right[Symbol.hasInstance](left);\n\telse return left instanceof right;\n}\nvar LOADER_TIMEOUT = process.env.ONE_LOADER_TIMEOUT_MS ? +process.env.ONE_LOADER_TIMEOUT_MS : 6e4;\nvar loaderTimingHistory = [];\nvar MAX_TIMING_HISTORY = 50;\nvar recordLoaderTiming = process.env.NODE_ENV === \"development\" ? function(entry) {\n\tloaderTimingHistory.unshift(entry);\n\tif (loaderTimingHistory.length > MAX_TIMING_HISTORY) loaderTimingHistory.pop();\n} : void 0;\nfunction getLoaderTimingHistory() {\n\treturn loaderTimingHistory;\n}\nregisterDevtoolsFunction(\"getLoaderTimingHistory\", getLoaderTimingHistory);\nregisterDevtoolsFunction(\"recordLoaderTiming\", recordLoaderTiming);\nvar loaderState = {};\nvar subscribers = /* @__PURE__ */ new Set();\nvar LOADER_STATE_MAX = 200;\nvar loaderStateKeys = [];\nfunction setBoundedLoaderState(path, entry) {\n\tif (!(path in loaderState)) {\n\t\tloaderStateKeys.push(path);\n\t\tif (loaderStateKeys.length > LOADER_STATE_MAX) {\n\t\t\tvar oldest = loaderStateKeys.shift();\n\t\t\tdelete loaderState[oldest];\n\t\t}\n\t}\n\tloaderState[path] = entry;\n}\nfunction updateState(path, updates) {\n\tsetBoundedLoaderState(path, {\n\t\t...loaderState[path],\n\t\t...updates\n\t});\n\tsubscribers.forEach(function(callback) {\n\t\tcallback();\n\t});\n}\nfunction subscribe(callback) {\n\tsubscribers.add(callback);\n\treturn function() {\n\t\treturn subscribers.delete(callback);\n\t};\n}\nfunction getLoaderState(path, preloadedData) {\n\tif (!(path in loaderState)) setBoundedLoaderState(path, {\n\t\tdata: preloadedData,\n\t\terror: void 0,\n\t\tpromise: void 0,\n\t\tstate: \"idle\",\n\t\thasLoadedOnce: !!preloadedData\n\t});\n\treturn loaderState[path];\n}\nasync function refetchLoader(pathname) {\n\tvar startTime = performance.now();\n\tupdateState(pathname, {\n\t\tstate: \"loading\",\n\t\terror: null\n\t});\n\ttry {\n\t\tvar _dynamicImport;\n\t\tvar loaderJSUrl = getLoaderPath(pathname, true, `${Date.now()}`);\n\t\tvar moduleLoadStart = performance.now();\n\t\tvar module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\t\treturn null;\n\t\t}));\n\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\tif (!(module === null || module === void 0 ? void 0 : module.loader)) {\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tvar executionStart = performance.now();\n\t\tvar result = await module.loader();\n\t\tvar executionTime = performance.now() - executionStart;\n\t\tvar totalTime = performance.now() - startTime;\n\t\tif (result === null || result === void 0 ? void 0 : result.__oneRedirect) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\trouter.replace(result.__oneRedirect);\n\t\t\treturn;\n\t\t}\n\t\tif ((result === null || result === void 0 ? void 0 : result.__oneError) === 404) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tvar notFoundRoute = findNearestNotFoundRoute(pathname, routeNode);\n\t\t\tsetNotFoundState({\n\t\t\t\tnotFoundPath: result.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\toriginalPath: pathname\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tupdateState(pathname, {\n\t\t\tdata: result,\n\t\t\tstate: \"idle\",\n\t\t\ttimestamp: Date.now(),\n\t\t\thasLoadedOnce: true\n\t\t});\n\t\tvar currentMatches = getClientMatchesSnapshot();\n\t\tvar pageMatch = currentMatches[currentMatches.length - 1];\n\t\tvar normalizedPathname = pathname.replace(/\\/$/, \"\") || \"/\";\n\t\tvar normalizedMatchPathname = ((pageMatch === null || pageMatch === void 0 ? void 0 : pageMatch.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tif (pageMatch && normalizedMatchPathname === normalizedPathname) updateMatchLoaderData(pageMatch.routeId, result);\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\tmoduleLoadTime,\n\t\t\texecutionTime,\n\t\t\ttotalTime,\n\t\t\tsource: \"refetch\"\n\t\t});\n\t} catch (err) {\n\t\tvar totalTime1 = performance.now() - startTime;\n\t\tupdateState(pathname, {\n\t\t\terror: err,\n\t\t\tstate: \"idle\"\n\t\t});\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\ttotalTime: totalTime1,\n\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\tsource: \"refetch\"\n\t\t});\n\t\tthrow err;\n\t}\n}\nif (process.env.NODE_ENV === \"development\" && typeof window !== \"undefined\") window.__oneRefetchLoader = refetchLoader;\nasync function refetchMatchLoader(routeId, currentPath) {\n\tvar _dynamicImport;\n\tvar module = await ((_dynamicImport = dynamicImport(getLoaderPath(currentPath, true, `${Date.now()}`))) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\treturn null;\n\t}));\n\tif (!(module === null || module === void 0 ? void 0 : module.loader)) return;\n\tvar result = await module.loader();\n\tif ((result === null || result === void 0 ? void 0 : result.__oneRedirect) || (result === null || result === void 0 ? void 0 : result.__oneError)) return;\n\tupdateMatchLoaderData(routeId, result);\n}\nfunction useLoaderState(loader) {\n\tvar { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } = useServerContext() || {};\n\tvar params = useParams();\n\tvar pathname = usePathname();\n\tvar currentPath = pathname.replace(/\\/index$/, \"\").replace(/\\/$/, \"\") || \"/\";\n\tif (typeof window === \"undefined\") {\n\t\tif (loader) {\n\t\t\tif (ssrLoaderData.has(loader)) return {\n\t\t\t\tdata: ssrLoaderData.get(loader),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t\tvar serverContext = useServerContext();\n\t\t\tif (serverContext === null || serverContext === void 0 ? void 0 : serverContext.matches) {\n\t\t\t\tvar contextKey = useContextKey();\n\t\t\t\tvar match = serverContext.matches.find(function(m) {\n\t\t\t\t\treturn getContextKey(m.routeId) === contextKey;\n\t\t\t\t});\n\t\t\t\tif (match && match.loaderData !== void 0) return {\n\t\t\t\t\tdata: match.loaderData,\n\t\t\t\t\trefetch: async function() {},\n\t\t\t\t\tstate: \"idle\"\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tdata: useAsyncFn(loader, loaderPropsFromServerContext || {\n\t\t\t\t\tpath: pathname,\n\t\t\t\t\tparams\n\t\t\t\t}),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t}\n\t\tif (loaderDataFromServerContext !== void 0) return {\n\t\t\tdata: loaderDataFromServerContext,\n\t\t\trefetch: async function() {},\n\t\t\tstate: \"idle\"\n\t\t};\n\t}\n\tvar matchRouteId = loader ? (function() {\n\t\tvar result = loader();\n\t\treturn typeof result === \"string\" && result.startsWith(\"./\") ? result : null;\n\t})() : null;\n\tvar clientMatches = useSyncExternalStore(subscribeToClientMatches, getClientMatchesSnapshot, getClientMatchesSnapshot);\n\tvar preloadedData = (loaderPropsFromServerContext === null || loaderPropsFromServerContext === void 0 ? void 0 : loaderPropsFromServerContext.path) === currentPath ? loaderDataFromServerContext : void 0;\n\tvar loaderStateEntry = useSyncExternalStore(subscribe, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t}, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t});\n\tvar refetch = useCallback(function() {\n\t\treturn refetchLoader(currentPath);\n\t}, [currentPath]);\n\tif (matchRouteId) {\n\t\tvar _clientMatches_;\n\t\tvar match1 = clientMatches.find(function(m) {\n\t\t\treturn m.routeId === matchRouteId;\n\t\t});\n\t\tvar isPageMatch = clientMatches.length > 0 && ((_clientMatches_ = clientMatches[clientMatches.length - 1]) === null || _clientMatches_ === void 0 ? void 0 : _clientMatches_.routeId) === matchRouteId;\n\t\tvar matchPathNormalized = ((match1 === null || match1 === void 0 ? void 0 : match1.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tvar matchPathFresh = !isPageMatch || matchPathNormalized === currentPath;\n\t\tif (match1 && match1.loaderData != null && matchPathFresh) return {\n\t\t\tdata: match1.loaderData,\n\t\t\trefetch: async function() {\n\t\t\t\tawait refetchLoader(currentPath);\n\t\t\t\tvar fresh = loaderState[currentPath];\n\t\t\t\tif ((fresh === null || fresh === void 0 ? void 0 : fresh.data) != null) updateMatchLoaderData(matchRouteId, fresh.data);\n\t\t\t},\n\t\t\tstate: loaderStateEntry.state\n\t\t};\n\t}\n\tif (!loader) return {\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n\tif (!loaderStateEntry.data && !loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) {\n\t\tvar resolvedPreloadData = preloadedLoaderData[currentPath];\n\t\tif (resolvedPreloadData != null) {\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tloaderStateEntry.data = resolvedPreloadData;\n\t\t\tloaderStateEntry.hasLoadedOnce = true;\n\t\t} else if (preloadingLoader[currentPath]) loaderStateEntry.promise = preloadingLoader[currentPath].then(function(val) {\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tif (val != null) updateState(currentPath, {\n\t\t\t\tdata: val,\n\t\t\t\thasLoadedOnce: true,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t\telse updateState(currentPath, { promise: void 0 });\n\t\t}).catch(function(err) {\n\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tupdateState(currentPath, {\n\t\t\t\terror: err,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t});\n\t\telse {\n\t\t\tvar loadData = async function() {\n\t\t\t\tvar startTime = performance.now();\n\t\t\t\ttry {\n\t\t\t\t\tvar nativeLoaderJSUrl;\n\t\t\t\t\tif (process.env.NODE_ENV === \"development\") nativeLoaderJSUrl = `${getLoaderPath(currentPath, true)}?platform=native`;\n\t\t\t\t\telse nativeLoaderJSUrl = `${getURL()}/assets/${currentPath.slice(1).replace(/\\/$/, \"\").replaceAll(\"_\", \"__\").replaceAll(\"/\", \"_\")}${LOADER_JS_POSTFIX_UNCACHED.replace(\".js\", \".native.js\")}`;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tvar moduleLoadStart = performance.now();\n\t\t\t\t\t\tvar controller = new AbortController();\n\t\t\t\t\t\tvar timeoutId = setTimeout(function() {\n\t\t\t\t\t\t\treturn controller.abort();\n\t\t\t\t\t\t}, LOADER_TIMEOUT);\n\t\t\t\t\t\tvar loaderJsCode;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvar loaderJsCodeResp = await fetch(nativeLoaderJSUrl, { signal: controller.signal });\n\t\t\t\t\t\t\tif (!loaderJsCodeResp.ok) throw new Error(`Response not ok: ${loaderJsCodeResp.status}`);\n\t\t\t\t\t\t\tloaderJsCode = await loaderJsCodeResp.text();\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar result = {};\n\t\t\t\t\t\tnew Function(\"exports\", loaderJsCode)(result);\n\t\t\t\t\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\t\t\t\t\tif (typeof result.loader !== \"function\") throw new Error(\"Loader code isn't exporting a `loader` function\");\n\t\t\t\t\t\tvar executionStart = performance.now();\n\t\t\t\t\t\tvar data = await result.loader();\n\t\t\t\t\t\tvar executionTime = performance.now() - executionStart;\n\t\t\t\t\t\tvar totalTime = performance.now() - startTime;\n\t\t\t\t\t\tif (data === null || data === void 0 ? void 0 : data.__oneRedirect) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\trouter.replace(data.__oneRedirect);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((data === null || data === void 0 ? void 0 : data.__oneError) === 404) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tvar notFoundRoute = findNearestNotFoundRoute(currentPath, routeNode);\n\t\t\t\t\t\t\tsetNotFoundState({\n\t\t\t\t\t\t\t\tnotFoundPath: data.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\t\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\t\t\t\t\toriginalPath: currentPath\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error(`[one] native loader error for ${currentPath}:`, _instanceof(e, Error) ? e.message : e, `url: ${nativeLoaderJSUrl}`);\n\t\t\t\t\t\tvar totalTime1 = performance.now() - startTime;\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: {},\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\ttotalTime: totalTime1,\n\t\t\t\t\t\t\terror: _instanceof(e, Error) ? e.message : String(e),\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t} catch (err) {\n\t\t\t\t\tvar totalTime3 = performance.now() - startTime;\n\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\terror: err,\n\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t});\n\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\ttotalTime: totalTime3,\n\t\t\t\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\t\t\tloaderStateEntry.promise = loadData();\n\t\t}\n\t}\n\tif (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.error;\n\tif (loaderStateEntry.data === void 0 && loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.promise;\n\treturn {\n\t\tdata: loaderStateEntry.data,\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n}\nfunction useLoader(loader) {\n\tvar { data } = useLoaderState(loader);\n\treturn data;\n}\nvar results = /* @__PURE__ */ new Map();\nvar started = /* @__PURE__ */ new Map();\nvar USE_ASYNC_FN_CACHE_MAX = 100;\nfunction setBoundedResults(key, value) {\n\tif (results.size >= USE_ASYNC_FN_CACHE_MAX && !results.has(key)) {\n\t\tvar firstKey = results.keys().next().value;\n\t\tif (firstKey !== void 0) {\n\t\t\tresults.delete(firstKey);\n\t\t\tstarted.delete(firstKey);\n\t\t}\n\t}\n\tresults.set(key, value);\n}\nfunction resetLoaderState() {\n\tresults.clear();\n\tstarted.clear();\n}\nfunction useAsyncFn(val, props) {\n\tvar key = (val ? weakKey(val) : \"\") + JSON.stringify(props);\n\tif (val) {\n\t\tif (!started.get(key)) {\n\t\t\tstarted.set(key, true);\n\t\t\tvar next = val(props);\n\t\t\tif (_instanceof(next, Promise)) next = next.then(function(final) {\n\t\t\t\tsetBoundedResults(key, final);\n\t\t\t}).catch(function(err) {\n\t\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\t\tsetBoundedResults(key, void 0);\n\t\t\t});\n\t\t\tsetBoundedResults(key, next);\n\t\t}\n\t}\n\tvar current = results.get(key);\n\tif (_instanceof(current, Promise)) throw current;\n\treturn current;\n}\n\nexport { getLoaderTimingHistory, refetchLoader, refetchMatchLoader, resetLoaderState, setSSRLoaderData, useLoader, useLoaderState };"],"mappings":"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","ignoreList":[]}
|
package/dist/esm/vite/one.mjs
CHANGED
|
@@ -4,6 +4,7 @@ import { getPlatformEnvDefine } from "@vxrn/vite-plugin-metro";
|
|
|
4
4
|
import events from "node:events";
|
|
5
5
|
import { existsSync, readFileSync } from "node:fs";
|
|
6
6
|
import path from "node:path";
|
|
7
|
+
import { exactRegex } from "rolldown/filter";
|
|
7
8
|
import { normalizePath } from "vite";
|
|
8
9
|
import { autoDepOptimizePlugin, getOptionsFilled, loadEnv } from "vxrn";
|
|
9
10
|
import vxrnVitePlugin from "vxrn/vite-plugin";
|
|
@@ -28,6 +29,7 @@ import { SSRCSSPlugin } from "./plugins/SSRCSSPlugin.mjs";
|
|
|
28
29
|
import { virtualEntryId } from "./plugins/virtualEntryConstants.mjs";
|
|
29
30
|
import { createVirtualEntry } from "./plugins/virtualEntryPlugin.mjs";
|
|
30
31
|
import { environmentGuardPlugin } from "./plugins/environmentGuardPlugin.mjs";
|
|
32
|
+
const RN_DEEP_IMPORT_RE = /^react-native\/Libraries\/|react-native-web(-lite)?\/.*\/Libraries\//;
|
|
31
33
|
events.setMaxListeners(1e3);
|
|
32
34
|
globalThis.__vxrnEnableNativeEnv = true;
|
|
33
35
|
function one(options = {}) {
|
|
@@ -230,7 +232,7 @@ function one(options = {}) {
|
|
|
230
232
|
root,
|
|
231
233
|
include: /node_modules/,
|
|
232
234
|
...(autoDepsOptions === true ? {} : autoDepsOptions)
|
|
233
|
-
})]), ...(options.config?.tsConfigPaths === false ? [] : [
|
|
235
|
+
})]), ...(options.config?.tsConfigPaths === false ? [] : [(() => {
|
|
234
236
|
let mappings = [];
|
|
235
237
|
function loadMappings(resolvedRoot) {
|
|
236
238
|
try {
|
|
@@ -262,6 +264,8 @@ function one(options = {}) {
|
|
|
262
264
|
}
|
|
263
265
|
} catch {}
|
|
264
266
|
}
|
|
267
|
+
loadMappings(root);
|
|
268
|
+
const tsconfigPathsFilter = mappings.length ? new RegExp(mappings.map(m => `^${m.prefix.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}${m.wildcard ? "" : "$"}`).join("|")) : /^[^./]/;
|
|
265
269
|
return {
|
|
266
270
|
name: "one:tsconfig-paths",
|
|
267
271
|
enforce: "pre",
|
|
@@ -277,26 +281,31 @@ function one(options = {}) {
|
|
|
277
281
|
loadMappings(config.root);
|
|
278
282
|
}
|
|
279
283
|
},
|
|
280
|
-
resolveId
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
284
|
+
resolveId: {
|
|
285
|
+
filter: {
|
|
286
|
+
id: tsconfigPathsFilter
|
|
287
|
+
},
|
|
288
|
+
handler(source) {
|
|
289
|
+
const jsExts = [".ts", ".tsx", ".js", ".jsx", ".mts", ".mjs", ".cjs", ".cts"];
|
|
290
|
+
for (const m of mappings) {
|
|
291
|
+
let candidate;
|
|
292
|
+
if (m.wildcard) {
|
|
293
|
+
if (source.startsWith(m.prefix)) {
|
|
294
|
+
candidate = m.replacement + source.slice(m.prefix.length);
|
|
295
|
+
}
|
|
296
|
+
} else if (source === m.prefix) {
|
|
297
|
+
candidate = m.replacement;
|
|
287
298
|
}
|
|
288
|
-
|
|
289
|
-
candidate
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
if (existsSync(candidate + "/index" + e)) return candidate + "/index" + e;
|
|
299
|
+
if (!candidate) continue;
|
|
300
|
+
if (jsExts.includes(path.extname(candidate))) return candidate;
|
|
301
|
+
for (const e of jsExts) {
|
|
302
|
+
if (existsSync(candidate + e)) return candidate + e;
|
|
303
|
+
}
|
|
304
|
+
for (const e of jsExts) {
|
|
305
|
+
if (existsSync(candidate + "/index" + e)) return candidate + "/index" + e;
|
|
306
|
+
}
|
|
307
|
+
return candidate;
|
|
298
308
|
}
|
|
299
|
-
return candidate;
|
|
300
309
|
}
|
|
301
310
|
}
|
|
302
311
|
};
|
|
@@ -325,25 +334,32 @@ function one(options = {}) {
|
|
|
325
334
|
ios: resolveMap(a.ios),
|
|
326
335
|
android: resolveMap(a.android)
|
|
327
336
|
};
|
|
337
|
+
const aliasKeys = [...new Set(Object.values(resolved).flatMap(m => m ? Object.keys(m) : []))];
|
|
338
|
+
const aliasFilter = aliasKeys.length ? new RegExp(`^(?:${aliasKeys.map(k => k.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")).join("|")})$`) : /(?!)/;
|
|
328
339
|
return {
|
|
329
340
|
name: "one:alias",
|
|
330
341
|
enforce: "pre",
|
|
331
|
-
resolveId
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
342
|
+
resolveId: {
|
|
343
|
+
filter: {
|
|
344
|
+
id: aliasFilter
|
|
345
|
+
},
|
|
346
|
+
handler(source) {
|
|
347
|
+
const env = this.environment?.name;
|
|
348
|
+
const specific = env ? resolved[env] : null;
|
|
349
|
+
if (specific && source in specific) {
|
|
350
|
+
return {
|
|
351
|
+
id: specific[source],
|
|
352
|
+
external: false
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
const isWeb = !env || env === "client" || env === "ssr";
|
|
356
|
+
const general = isWeb ? resolved.web : resolved.native;
|
|
357
|
+
if (general && source in general) {
|
|
358
|
+
return {
|
|
359
|
+
id: general[source],
|
|
360
|
+
external: false
|
|
361
|
+
};
|
|
362
|
+
}
|
|
347
363
|
}
|
|
348
364
|
}
|
|
349
365
|
};
|
|
@@ -352,15 +368,23 @@ function one(options = {}) {
|
|
|
352
368
|
// these are native-only paths that don't exist in react-native-web.
|
|
353
369
|
name: "one:redirect-rn-deep-imports",
|
|
354
370
|
enforce: "pre",
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
371
|
+
// rust-side filter matching the two source patterns below, so the ~24k
|
|
372
|
+
// non-matching imports in a build never enter js at all
|
|
373
|
+
resolveId: {
|
|
374
|
+
filter: {
|
|
375
|
+
id: RN_DEEP_IMPORT_RE
|
|
376
|
+
},
|
|
377
|
+
handler(source) {
|
|
378
|
+
if (this.environment?.name === "client" || this.environment?.name === "ssr") {
|
|
358
379
|
return "\0rn-empty-module";
|
|
359
380
|
}
|
|
360
381
|
}
|
|
361
382
|
},
|
|
362
|
-
load
|
|
363
|
-
|
|
383
|
+
load: {
|
|
384
|
+
filter: {
|
|
385
|
+
id: exactRegex("\0rn-empty-module")
|
|
386
|
+
},
|
|
387
|
+
handler() {
|
|
364
388
|
return "export default {}; export {};";
|
|
365
389
|
}
|
|
366
390
|
}
|
|
@@ -527,11 +551,16 @@ function one(options = {}) {
|
|
|
527
551
|
}, {
|
|
528
552
|
name: "one:remove-server-from-client",
|
|
529
553
|
enforce: "pre",
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
554
|
+
// both conditions are rust-side: only one-server-only modules that
|
|
555
|
+
// actually contain the import cross into js
|
|
556
|
+
transform: {
|
|
557
|
+
filter: {
|
|
558
|
+
id: /one-server-only/,
|
|
559
|
+
code: 'import { AsyncLocalStorage } from "node:async_hooks"'
|
|
560
|
+
},
|
|
561
|
+
handler(code) {
|
|
562
|
+
if (this.environment.name !== "client") return;
|
|
563
|
+
return code.replace(`import { AsyncLocalStorage } from "node:async_hooks"`, `class AsyncLocalStorage {}`);
|
|
535
564
|
}
|
|
536
565
|
}
|
|
537
566
|
},
|
|
@@ -559,7 +588,9 @@ function one(options = {}) {
|
|
|
559
588
|
// (source) path. the optimizer doesn't recognize the real path, so it
|
|
560
589
|
// loads from source — creating a duplicate instance.
|
|
561
590
|
// this plugin forces optimized SSR deps to resolve via node_modules.
|
|
562
|
-
|
|
591
|
+
// off by default, and every hook bails on `!dedupeSymlinks`, so skip
|
|
592
|
+
// registering it entirely rather than paying a napi round trip per import
|
|
593
|
+
...(dedupeSymlinks ? [ssrSymlinkDedupPlugin] : [])];
|
|
563
594
|
const nativeWebDevAndProdPlugsin = [clientTreeShakePlugin()];
|
|
564
595
|
if (!nativeDisabled) {
|
|
565
596
|
globalThis.__vxrnAddNativePlugins = [clientTreeShakePlugin({
|