one 1.15.10 → 1.16.1
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/cli/build.cjs +98 -58
- package/dist/cjs/cli/build.native.js +106 -63
- package/dist/cjs/cli/build.native.js.map +1 -1
- package/dist/cjs/cli/buildPage.cjs +3 -3
- package/dist/cjs/cli/buildPage.native.js +3 -3
- package/dist/cjs/cli/buildPage.native.js.map +1 -1
- package/dist/cjs/constants.cjs +2 -0
- package/dist/cjs/constants.native.js +2 -0
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/createAPIRoute.native.js.map +1 -1
- package/dist/cjs/createApp.cjs +2 -6
- package/dist/cjs/createHandleRequest.cjs +2 -2
- package/dist/cjs/createHandleRequest.native.js +2 -2
- package/dist/cjs/createHandleRequest.native.js.map +1 -1
- package/dist/cjs/hooks.cjs +5 -1
- package/dist/cjs/hooks.native.js +7 -1
- package/dist/cjs/hooks.native.js.map +1 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.cjs +10 -7
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js +13 -10
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.test.cjs +23 -0
- package/dist/cjs/metro-config/getViteMetroPluginOptions.test.native.js +26 -0
- package/dist/cjs/metro-config/getViteMetroPluginOptions.test.native.js.map +1 -0
- package/dist/cjs/router/Route.cjs +21 -1
- package/dist/cjs/router/Route.native.js +22 -1
- package/dist/cjs/router/Route.native.js.map +1 -1
- package/dist/cjs/router/interceptRoutes.cjs +6 -6
- package/dist/cjs/router/interceptRoutes.native.js +6 -6
- package/dist/cjs/router/interceptRoutes.native.js.map +1 -1
- package/dist/cjs/router/params.cjs +46 -0
- package/dist/cjs/router/params.native.js +70 -0
- package/dist/cjs/router/params.native.js.map +1 -0
- package/dist/cjs/router/router.cjs +21 -6
- package/dist/cjs/router/router.native.js +21 -6
- package/dist/cjs/router/router.native.js.map +1 -1
- package/dist/cjs/router/useScreens.cjs +3 -0
- package/dist/cjs/router/useScreens.native.js +2 -0
- package/dist/cjs/router/useScreens.native.js.map +1 -1
- package/dist/cjs/serve-worker.native.js.map +1 -1
- package/dist/cjs/server/getServerManifest.cjs +6 -6
- package/dist/cjs/server/getServerManifest.native.js +6 -6
- package/dist/cjs/server/getServerManifest.native.js.map +1 -1
- package/dist/cjs/server/oneServe.cjs +9 -5
- package/dist/cjs/server/oneServe.native.js +9 -5
- package/dist/cjs/server/oneServe.native.js.map +1 -1
- package/dist/cjs/server/workerHandler.cjs +2 -2
- package/dist/cjs/server/workerHandler.native.js +2 -2
- package/dist/cjs/server/workerHandler.native.js.map +1 -1
- package/dist/cjs/skewProtection.cjs +48 -7
- package/dist/cjs/skewProtection.native.js +48 -7
- package/dist/cjs/skewProtection.native.js.map +1 -1
- package/dist/cjs/useLoader.cjs +67 -69
- package/dist/cjs/useLoader.native.js +113 -117
- package/dist/cjs/useLoader.native.js.map +1 -1
- package/dist/cjs/utils/dynamicImport.cjs +3 -1
- package/dist/cjs/utils/dynamicImport.native.js +22 -1
- package/dist/cjs/utils/dynamicImport.native.js.map +1 -1
- package/dist/cjs/utils/toAbsolute.cjs +5 -2
- package/dist/cjs/utils/toAbsolute.native.js +6 -1
- package/dist/cjs/utils/toAbsolute.native.js.map +1 -1
- package/dist/cjs/utils/workerImport.cjs +1 -1
- package/dist/cjs/utils/workerImport.native.js +1 -1
- package/dist/cjs/utils/workerImport.native.js.map +1 -1
- package/dist/cjs/views/RootErrorBoundary.cjs +114 -117
- package/dist/cjs/views/RootErrorBoundary.native.js +126 -146
- package/dist/cjs/views/RootErrorBoundary.native.js.map +1 -1
- package/dist/cjs/views/Try.cjs +17 -18
- package/dist/cjs/views/Try.native.js +28 -42
- package/dist/cjs/views/Try.native.js.map +1 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.cjs +2 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.native.js +2 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.cjs +26 -20
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.native.js +28 -20
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/imageDataPlugin.cjs +3 -2
- package/dist/cjs/vite/plugins/imageDataPlugin.native.js +3 -2
- package/dist/cjs/vite/plugins/imageDataPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/imageDataPlugin.test.cjs +34 -69
- package/dist/cjs/vite/plugins/imageDataPlugin.test.native.js +34 -69
- package/dist/cjs/vite/plugins/imageDataPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.cjs +20 -2
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js +23 -2
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.test.cjs +21 -0
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.test.native.js +28 -0
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.test.native.js.map +1 -0
- package/dist/cjs/vite/resolveResponse.cjs +7 -2
- package/dist/cjs/vite/resolveResponse.native.js +7 -2
- package/dist/cjs/vite/resolveResponse.native.js.map +1 -1
- package/dist/esm/cli/build.mjs +100 -60
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +108 -65
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/cli/buildPage.mjs +4 -4
- package/dist/esm/cli/buildPage.mjs.map +1 -1
- package/dist/esm/cli/buildPage.native.js +4 -4
- package/dist/esm/cli/buildPage.native.js.map +1 -1
- package/dist/esm/constants.mjs +2 -1
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +2 -1
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/createAPIRoute.mjs.map +1 -1
- package/dist/esm/createAPIRoute.native.js.map +1 -1
- package/dist/esm/createApp.mjs +2 -6
- package/dist/esm/createApp.mjs.map +1 -1
- package/dist/esm/createHandleRequest.mjs +2 -2
- package/dist/esm/createHandleRequest.mjs.map +1 -1
- package/dist/esm/createHandleRequest.native.js +2 -2
- package/dist/esm/createHandleRequest.native.js.map +1 -1
- package/dist/esm/hooks.mjs +5 -1
- package/dist/esm/hooks.mjs.map +1 -1
- package/dist/esm/hooks.native.js +7 -1
- package/dist/esm/hooks.native.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs +9 -7
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js +12 -10
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.test.mjs +24 -0
- package/dist/esm/metro-config/getViteMetroPluginOptions.test.mjs.map +1 -0
- package/dist/esm/metro-config/getViteMetroPluginOptions.test.native.js +24 -0
- package/dist/esm/metro-config/getViteMetroPluginOptions.test.native.js.map +1 -0
- package/dist/esm/router/Route.mjs +21 -1
- package/dist/esm/router/Route.mjs.map +1 -1
- package/dist/esm/router/Route.native.js +22 -1
- package/dist/esm/router/Route.native.js.map +1 -1
- package/dist/esm/router/interceptRoutes.mjs +7 -7
- package/dist/esm/router/interceptRoutes.mjs.map +1 -1
- package/dist/esm/router/interceptRoutes.native.js +7 -7
- package/dist/esm/router/interceptRoutes.native.js.map +1 -1
- package/dist/esm/router/params.mjs +21 -0
- package/dist/esm/router/params.mjs.map +1 -0
- package/dist/esm/router/params.native.js +42 -0
- package/dist/esm/router/params.native.js.map +1 -0
- package/dist/esm/router/router.mjs +21 -6
- package/dist/esm/router/router.mjs.map +1 -1
- package/dist/esm/router/router.native.js +21 -6
- package/dist/esm/router/router.native.js.map +1 -1
- package/dist/esm/router/useScreens.mjs +3 -0
- package/dist/esm/router/useScreens.mjs.map +1 -1
- package/dist/esm/router/useScreens.native.js +2 -0
- package/dist/esm/router/useScreens.native.js.map +1 -1
- package/dist/esm/serve-worker.mjs.map +1 -1
- package/dist/esm/serve-worker.native.js.map +1 -1
- package/dist/esm/server/getServerManifest.mjs +6 -6
- package/dist/esm/server/getServerManifest.mjs.map +1 -1
- package/dist/esm/server/getServerManifest.native.js +6 -6
- package/dist/esm/server/getServerManifest.native.js.map +1 -1
- package/dist/esm/server/oneServe.mjs +11 -7
- package/dist/esm/server/oneServe.mjs.map +1 -1
- package/dist/esm/server/oneServe.native.js +11 -7
- package/dist/esm/server/oneServe.native.js.map +1 -1
- package/dist/esm/server/workerHandler.mjs +2 -2
- package/dist/esm/server/workerHandler.mjs.map +1 -1
- package/dist/esm/server/workerHandler.native.js +2 -2
- package/dist/esm/server/workerHandler.native.js.map +1 -1
- package/dist/esm/skewProtection.mjs +48 -8
- package/dist/esm/skewProtection.mjs.map +1 -1
- package/dist/esm/skewProtection.native.js +48 -8
- package/dist/esm/skewProtection.native.js.map +1 -1
- package/dist/esm/useLoader.mjs +64 -66
- package/dist/esm/useLoader.mjs.map +1 -1
- package/dist/esm/useLoader.native.js +112 -116
- package/dist/esm/useLoader.native.js.map +1 -1
- package/dist/esm/utils/dynamicImport.mjs +1 -1
- package/dist/esm/utils/dynamicImport.mjs.map +1 -1
- package/dist/esm/utils/dynamicImport.native.js +20 -1
- package/dist/esm/utils/dynamicImport.native.js.map +1 -1
- package/dist/esm/utils/toAbsolute.mjs +3 -1
- package/dist/esm/utils/toAbsolute.mjs.map +1 -1
- package/dist/esm/utils/toAbsolute.native.js +5 -1
- package/dist/esm/utils/toAbsolute.native.js.map +1 -1
- package/dist/esm/utils/workerImport.mjs +2 -2
- package/dist/esm/utils/workerImport.mjs.map +1 -1
- package/dist/esm/utils/workerImport.native.js +2 -2
- package/dist/esm/utils/workerImport.native.js.map +1 -1
- package/dist/esm/views/RootErrorBoundary.mjs +114 -117
- package/dist/esm/views/RootErrorBoundary.mjs.map +1 -1
- package/dist/esm/views/RootErrorBoundary.native.js +126 -146
- package/dist/esm/views/RootErrorBoundary.native.js.map +1 -1
- package/dist/esm/views/Try.mjs +17 -18
- package/dist/esm/views/Try.mjs.map +1 -1
- package/dist/esm/views/Try.native.js +28 -42
- package/dist/esm/views/Try.native.js.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.mjs +2 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.native.js +2 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.mjs +26 -20
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.mjs.map +1 -1
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.native.js +28 -20
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.native.js.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.mjs +4 -3
- package/dist/esm/vite/plugins/imageDataPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.native.js +4 -3
- package/dist/esm/vite/plugins/imageDataPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.test.mjs +34 -69
- package/dist/esm/vite/plugins/imageDataPlugin.test.mjs.map +1 -1
- package/dist/esm/vite/plugins/imageDataPlugin.test.native.js +34 -69
- package/dist/esm/vite/plugins/imageDataPlugin.test.native.js.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs +19 -3
- package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js +22 -3
- package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.test.mjs +22 -0
- package/dist/esm/vite/plugins/sourceInspectorPlugin.test.mjs.map +1 -0
- package/dist/esm/vite/plugins/sourceInspectorPlugin.test.native.js +26 -0
- package/dist/esm/vite/plugins/sourceInspectorPlugin.test.native.js.map +1 -0
- package/dist/esm/vite/resolveResponse.mjs +7 -2
- package/dist/esm/vite/resolveResponse.mjs.map +1 -1
- package/dist/esm/vite/resolveResponse.native.js +7 -2
- package/dist/esm/vite/resolveResponse.native.js.map +1 -1
- package/expo-plugin.cjs +1 -0
- package/package.json +15 -10
- package/react-native-commands.cjs +1 -0
- package/src/cli/build.ts +156 -99
- package/src/cli/buildPage.ts +4 -4
- package/src/constants.ts +15 -0
- package/src/createAPIRoute.ts +35 -2
- package/src/createApp.tsx +2 -6
- package/src/createHandleRequest.ts +6 -2
- package/src/hooks.tsx +9 -1
- package/src/index.ts +8 -1
- package/src/metro-config/getViteMetroPluginOptions.test.ts +34 -0
- package/src/metro-config/getViteMetroPluginOptions.ts +14 -11
- package/src/router/Route.tsx +52 -2
- package/src/router/interceptRoutes.ts +7 -7
- package/src/router/params.ts +32 -0
- package/src/router/router.ts +43 -10
- package/src/router/useScreens.tsx +18 -0
- package/src/serve-worker.ts +4 -2
- package/src/server/getServerManifest.ts +11 -7
- package/src/server/oneServe.ts +12 -14
- package/src/server/workerHandler.ts +13 -2
- package/src/skewProtection.ts +45 -5
- package/src/useLoader.ts +6 -4
- package/src/utils/dynamicImport.ts +2 -2
- package/src/utils/toAbsolute.ts +5 -0
- package/src/utils/workerImport.ts +2 -2
- package/src/views/RootErrorBoundary.tsx +18 -0
- package/src/views/Try.tsx +18 -0
- package/src/vite/plugins/criticalCSSPlugin.test.ts +34 -24
- package/src/vite/plugins/criticalCSSPlugin.ts +3 -2
- package/src/vite/plugins/imageDataPlugin.test.ts +39 -83
- package/src/vite/plugins/imageDataPlugin.ts +5 -4
- package/src/vite/plugins/sourceInspectorPlugin.test.ts +40 -0
- package/src/vite/plugins/sourceInspectorPlugin.ts +30 -2
- package/src/vite/resolveResponse.ts +6 -2
- package/types/cli/build.d.ts.map +1 -1
- package/types/constants.d.ts +9 -0
- package/types/constants.d.ts.map +1 -1
- package/types/createAPIRoute.d.ts +28 -3
- package/types/createAPIRoute.d.ts.map +1 -1
- package/types/createApp.d.ts.map +1 -1
- package/types/createHandleRequest.d.ts +1 -1
- package/types/createHandleRequest.d.ts.map +1 -1
- package/types/headless-server.d.ts +1 -1
- package/types/hooks.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/metro-config/getViteMetroPluginOptions.d.ts +5 -0
- package/types/metro-config/getViteMetroPluginOptions.d.ts.map +1 -1
- package/types/metro-config/getViteMetroPluginOptions.test.d.ts +2 -0
- package/types/metro-config/getViteMetroPluginOptions.test.d.ts.map +1 -0
- package/types/router/Route.d.ts +1 -0
- package/types/router/Route.d.ts.map +1 -1
- package/types/router/params.d.ts +3 -0
- package/types/router/params.d.ts.map +1 -0
- package/types/router/router.d.ts.map +1 -1
- package/types/router/useScreens.d.ts.map +1 -1
- package/types/serve-worker.d.ts +5 -3
- package/types/serve-worker.d.ts.map +1 -1
- package/types/server/getServerManifest.d.ts.map +1 -1
- package/types/server/oneServe.d.ts.map +1 -1
- package/types/server/workerHandler.d.ts +1 -1
- package/types/server/workerHandler.d.ts.map +1 -1
- package/types/skewProtection.d.ts +1 -0
- package/types/skewProtection.d.ts.map +1 -1
- package/types/useLoader.d.ts.map +1 -1
- package/types/utils/dynamicImport.d.ts +2 -0
- package/types/utils/dynamicImport.d.ts.map +1 -1
- package/types/utils/toAbsolute.d.ts +3 -0
- package/types/utils/toAbsolute.d.ts.map +1 -1
- package/types/views/RootErrorBoundary.d.ts.map +1 -1
- package/types/views/Try.d.ts.map +1 -1
- package/types/vite/plugins/criticalCSSPlugin.d.ts.map +1 -1
- package/types/vite/plugins/imageDataPlugin.d.ts.map +1 -1
- package/types/vite/plugins/sourceInspectorPlugin.d.ts +2 -0
- package/types/vite/plugins/sourceInspectorPlugin.d.ts.map +1 -1
- package/types/vite/plugins/sourceInspectorPlugin.test.d.ts +2 -0
- package/types/vite/plugins/sourceInspectorPlugin.test.d.ts.map +1 -0
- package/types/vite/resolveResponse.d.ts +1 -1
- package/types/vite/resolveResponse.d.ts.map +1 -1
package/dist/cjs/useLoader.cjs
CHANGED
|
@@ -42,12 +42,12 @@ var import_router = require("./router/router.cjs");
|
|
|
42
42
|
var import_ssrLoaderData = require("./server/ssrLoaderData.cjs");
|
|
43
43
|
var import_useMatches = require("./useMatches.cjs");
|
|
44
44
|
var import_cleanUrl = require("./utils/cleanUrl.cjs");
|
|
45
|
-
|
|
45
|
+
require("./constants.cjs");
|
|
46
46
|
var import_dynamicImport = require("./utils/dynamicImport.cjs");
|
|
47
47
|
var import_weakKey = require("./utils/weakKey.cjs");
|
|
48
48
|
var import_one_server_only = require("./vite/one-server-only.cjs");
|
|
49
49
|
var import_ssrLoaderData2 = require("./server/ssrLoaderData.cjs");
|
|
50
|
-
|
|
50
|
+
process.env.ONE_LOADER_TIMEOUT_MS && +process.env.ONE_LOADER_TIMEOUT_MS;
|
|
51
51
|
const loaderTimingHistory = [];
|
|
52
52
|
const MAX_TIMING_HISTORY = 50;
|
|
53
53
|
const recordLoaderTiming = process.env.NODE_ENV === "development" ? entry => {
|
|
@@ -92,103 +92,103 @@ function subscribe(callback) {
|
|
|
92
92
|
subscribers.add(callback);
|
|
93
93
|
return () => subscribers.delete(callback);
|
|
94
94
|
}
|
|
95
|
-
function getLoaderState(path,
|
|
95
|
+
function getLoaderState(path, preloadedData) {
|
|
96
96
|
if (!loaderState[path]) loaderState[path] = {
|
|
97
|
-
data:
|
|
97
|
+
data: preloadedData,
|
|
98
98
|
error: void 0,
|
|
99
99
|
promise: void 0,
|
|
100
100
|
state: "idle",
|
|
101
|
-
hasLoadedOnce: !!
|
|
101
|
+
hasLoadedOnce: !!preloadedData
|
|
102
102
|
};
|
|
103
103
|
return loaderState[path];
|
|
104
104
|
}
|
|
105
|
-
async function refetchLoader(
|
|
106
|
-
const
|
|
107
|
-
updateState(
|
|
105
|
+
async function refetchLoader(pathname) {
|
|
106
|
+
const startTime = performance.now();
|
|
107
|
+
updateState(pathname, {
|
|
108
108
|
state: "loading",
|
|
109
109
|
error: null
|
|
110
110
|
});
|
|
111
111
|
try {
|
|
112
112
|
const cacheBust = `${Date.now()}`;
|
|
113
|
-
const
|
|
114
|
-
const
|
|
115
|
-
const module2 = await (0, import_dynamicImport.dynamicImport)(
|
|
116
|
-
const
|
|
113
|
+
const loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(pathname, true, cacheBust);
|
|
114
|
+
const moduleLoadStart = performance.now();
|
|
115
|
+
const module2 = await (0, import_dynamicImport.dynamicImport)(loaderJSUrl)?.catch(() => null);
|
|
116
|
+
const moduleLoadTime = performance.now() - moduleLoadStart;
|
|
117
117
|
if (!module2?.loader) {
|
|
118
|
-
updateState(
|
|
118
|
+
updateState(pathname, {
|
|
119
119
|
data: void 0,
|
|
120
120
|
state: "idle",
|
|
121
121
|
hasLoadedOnce: true
|
|
122
122
|
});
|
|
123
123
|
return;
|
|
124
124
|
}
|
|
125
|
-
const
|
|
126
|
-
const
|
|
127
|
-
const
|
|
128
|
-
const
|
|
129
|
-
if (
|
|
125
|
+
const executionStart = performance.now();
|
|
126
|
+
const result = await module2.loader();
|
|
127
|
+
const executionTime = performance.now() - executionStart;
|
|
128
|
+
const totalTime = performance.now() - startTime;
|
|
129
|
+
if (result?.__oneRedirect) {
|
|
130
130
|
recordLoaderTiming?.({
|
|
131
|
-
path:
|
|
132
|
-
startTime
|
|
133
|
-
moduleLoadTime
|
|
134
|
-
executionTime
|
|
135
|
-
totalTime
|
|
131
|
+
path: pathname,
|
|
132
|
+
startTime,
|
|
133
|
+
moduleLoadTime,
|
|
134
|
+
executionTime,
|
|
135
|
+
totalTime,
|
|
136
136
|
source: "refetch"
|
|
137
137
|
});
|
|
138
|
-
updateState(
|
|
138
|
+
updateState(pathname, {
|
|
139
139
|
data: void 0,
|
|
140
140
|
state: "idle",
|
|
141
141
|
hasLoadedOnce: true
|
|
142
142
|
});
|
|
143
|
-
import_imperative_api.router.replace(
|
|
143
|
+
import_imperative_api.router.replace(result.__oneRedirect);
|
|
144
144
|
return;
|
|
145
145
|
}
|
|
146
|
-
if (
|
|
146
|
+
if (result?.__oneError === 404) {
|
|
147
147
|
recordLoaderTiming?.({
|
|
148
|
-
path:
|
|
149
|
-
startTime
|
|
150
|
-
moduleLoadTime
|
|
151
|
-
executionTime
|
|
152
|
-
totalTime
|
|
148
|
+
path: pathname,
|
|
149
|
+
startTime,
|
|
150
|
+
moduleLoadTime,
|
|
151
|
+
executionTime,
|
|
152
|
+
totalTime,
|
|
153
153
|
source: "refetch"
|
|
154
154
|
});
|
|
155
|
-
const notFoundRoute = (0, import_notFoundState.findNearestNotFoundRoute)(
|
|
155
|
+
const notFoundRoute = (0, import_notFoundState.findNearestNotFoundRoute)(pathname, import_router.routeNode);
|
|
156
156
|
(0, import_notFoundState.setNotFoundState)({
|
|
157
|
-
notFoundPath:
|
|
157
|
+
notFoundPath: result.__oneNotFoundPath || "/+not-found",
|
|
158
158
|
notFoundRouteNode: notFoundRoute || void 0,
|
|
159
|
-
originalPath:
|
|
159
|
+
originalPath: pathname
|
|
160
160
|
});
|
|
161
161
|
return;
|
|
162
162
|
}
|
|
163
|
-
updateState(
|
|
164
|
-
data:
|
|
163
|
+
updateState(pathname, {
|
|
164
|
+
data: result,
|
|
165
165
|
state: "idle",
|
|
166
166
|
timestamp: Date.now(),
|
|
167
167
|
hasLoadedOnce: true
|
|
168
168
|
});
|
|
169
169
|
const currentMatches = (0, import_useMatches.getClientMatchesSnapshot)();
|
|
170
170
|
const pageMatch = currentMatches[currentMatches.length - 1];
|
|
171
|
-
const normalizedPathname =
|
|
171
|
+
const normalizedPathname = pathname.replace(/\/$/, "") || "/";
|
|
172
172
|
const normalizedMatchPathname = (pageMatch?.pathname || "").replace(/\/$/, "") || "/";
|
|
173
|
-
if (pageMatch && normalizedMatchPathname === normalizedPathname) (0, import_useMatches.updateMatchLoaderData)(pageMatch.routeId,
|
|
173
|
+
if (pageMatch && normalizedMatchPathname === normalizedPathname) (0, import_useMatches.updateMatchLoaderData)(pageMatch.routeId, result);
|
|
174
174
|
recordLoaderTiming?.({
|
|
175
|
-
path:
|
|
176
|
-
startTime
|
|
177
|
-
moduleLoadTime
|
|
178
|
-
executionTime
|
|
179
|
-
totalTime
|
|
175
|
+
path: pathname,
|
|
176
|
+
startTime,
|
|
177
|
+
moduleLoadTime,
|
|
178
|
+
executionTime,
|
|
179
|
+
totalTime,
|
|
180
180
|
source: "refetch"
|
|
181
181
|
});
|
|
182
182
|
} catch (err) {
|
|
183
|
-
const
|
|
184
|
-
updateState(
|
|
183
|
+
const totalTime = performance.now() - startTime;
|
|
184
|
+
updateState(pathname, {
|
|
185
185
|
error: err,
|
|
186
186
|
state: "idle"
|
|
187
187
|
});
|
|
188
188
|
recordLoaderTiming?.({
|
|
189
|
-
path:
|
|
190
|
-
startTime
|
|
191
|
-
totalTime
|
|
189
|
+
path: pathname,
|
|
190
|
+
startTime,
|
|
191
|
+
totalTime,
|
|
192
192
|
error: err instanceof Error ? err.message : String(err),
|
|
193
193
|
source: "refetch"
|
|
194
194
|
});
|
|
@@ -196,14 +196,14 @@ async function refetchLoader(pathname2) {
|
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
198
|
if (process.env.NODE_ENV === "development" && typeof window !== "undefined") window.__oneRefetchLoader = refetchLoader;
|
|
199
|
-
async function refetchMatchLoader(routeId,
|
|
199
|
+
async function refetchMatchLoader(routeId, currentPath) {
|
|
200
200
|
const cacheBust = `${Date.now()}`;
|
|
201
|
-
const
|
|
202
|
-
const module2 = await (0, import_dynamicImport.dynamicImport)(
|
|
201
|
+
const loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(currentPath, true, cacheBust);
|
|
202
|
+
const module2 = await (0, import_dynamicImport.dynamicImport)(loaderJSUrl)?.catch(() => null);
|
|
203
203
|
if (!module2?.loader) return;
|
|
204
|
-
const
|
|
205
|
-
if (
|
|
206
|
-
(0, import_useMatches.updateMatchLoaderData)(routeId,
|
|
204
|
+
const result = await module2.loader();
|
|
205
|
+
if (result?.__oneRedirect || result?.__oneError) return;
|
|
206
|
+
(0, import_useMatches.updateMatchLoaderData)(routeId, result);
|
|
207
207
|
}
|
|
208
208
|
function useLoaderState(loader) {
|
|
209
209
|
const {
|
|
@@ -246,12 +246,11 @@ function useLoaderState(loader) {
|
|
|
246
246
|
};
|
|
247
247
|
}
|
|
248
248
|
const matchRouteId = loader ? (() => {
|
|
249
|
-
const
|
|
250
|
-
return typeof
|
|
249
|
+
const result = loader();
|
|
250
|
+
return typeof result === "string" && result.startsWith("./") ? result : null;
|
|
251
251
|
})() : null;
|
|
252
252
|
const clientMatches = (0, import_react.useSyncExternalStore)(import_useMatches.subscribeToClientMatches, import_useMatches.getClientMatchesSnapshot, import_useMatches.getClientMatchesSnapshot);
|
|
253
|
-
const
|
|
254
|
-
const preloadedData = serverContextPath === currentPath ? loaderDataFromServerContext : void 0;
|
|
253
|
+
const preloadedData = loaderPropsFromServerContext?.path === currentPath ? loaderDataFromServerContext : void 0;
|
|
255
254
|
const loaderStateEntry = (0, import_react.useSyncExternalStore)(subscribe, () => getLoaderState(currentPath, preloadedData), () => getLoaderState(currentPath, preloadedData));
|
|
256
255
|
const refetch = (0, import_react.useCallback)(() => refetchLoader(currentPath), [currentPath]);
|
|
257
256
|
if (matchRouteId) {
|
|
@@ -303,9 +302,9 @@ function useLoaderState(loader) {
|
|
|
303
302
|
try {
|
|
304
303
|
const loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(currentPath, true);
|
|
305
304
|
const moduleLoadStart = performance.now();
|
|
306
|
-
const
|
|
305
|
+
const module2 = await (0, import_dynamicImport.dynamicImport)(loaderJSUrl)?.catch(() => null);
|
|
307
306
|
const moduleLoadTime = performance.now() - moduleLoadStart;
|
|
308
|
-
if (!
|
|
307
|
+
if (!module2?.loader) {
|
|
309
308
|
updateState(currentPath, {
|
|
310
309
|
data: void 0,
|
|
311
310
|
hasLoadedOnce: true,
|
|
@@ -314,7 +313,7 @@ function useLoaderState(loader) {
|
|
|
314
313
|
return;
|
|
315
314
|
}
|
|
316
315
|
const executionStart = performance.now();
|
|
317
|
-
const result = await
|
|
316
|
+
const result = await module2.loader();
|
|
318
317
|
const executionTime = performance.now() - executionStart;
|
|
319
318
|
const totalTime = performance.now() - startTime;
|
|
320
319
|
if (result?.__oneRedirect) {
|
|
@@ -365,7 +364,7 @@ function useLoaderState(loader) {
|
|
|
365
364
|
source: "initial"
|
|
366
365
|
});
|
|
367
366
|
} catch (err) {
|
|
368
|
-
const
|
|
367
|
+
const totalTime = performance.now() - startTime;
|
|
369
368
|
updateState(currentPath, {
|
|
370
369
|
error: err,
|
|
371
370
|
promise: void 0
|
|
@@ -373,14 +372,13 @@ function useLoaderState(loader) {
|
|
|
373
372
|
recordLoaderTiming?.({
|
|
374
373
|
path: currentPath,
|
|
375
374
|
startTime,
|
|
376
|
-
totalTime
|
|
375
|
+
totalTime,
|
|
377
376
|
error: err instanceof Error ? err.message : String(err),
|
|
378
377
|
source: "initial"
|
|
379
378
|
});
|
|
380
379
|
}
|
|
381
380
|
};
|
|
382
|
-
|
|
383
|
-
loaderStateEntry.promise = promise;
|
|
381
|
+
loaderStateEntry.promise = loadData();
|
|
384
382
|
}
|
|
385
383
|
}
|
|
386
384
|
if (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.error;
|
|
@@ -391,11 +389,11 @@ function useLoaderState(loader) {
|
|
|
391
389
|
state: loaderStateEntry.state
|
|
392
390
|
};
|
|
393
391
|
}
|
|
394
|
-
function useLoader(
|
|
392
|
+
function useLoader(loader) {
|
|
395
393
|
const {
|
|
396
|
-
data
|
|
397
|
-
} = useLoaderState(
|
|
398
|
-
return
|
|
394
|
+
data
|
|
395
|
+
} = useLoaderState(loader);
|
|
396
|
+
return data;
|
|
399
397
|
}
|
|
400
398
|
const results = /* @__PURE__ */new Map();
|
|
401
399
|
const started = /* @__PURE__ */new Map();
|