one 1.18.2 → 1.18.4
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/layouts/NativeTabs.cjs +22 -12
- package/dist/cjs/layouts/NativeTabs.native.js +22 -12
- package/dist/cjs/layouts/NativeTabs.native.js.map +1 -1
- package/dist/cjs/layouts/NativeTabs.test.cjs +24 -0
- package/dist/cjs/layouts/NativeTabs.test.native.js +35 -0
- package/dist/cjs/layouts/NativeTabs.test.native.js.map +1 -0
- package/dist/cjs/useBlocker.native.js +21 -30
- package/dist/cjs/useBlocker.native.js.map +1 -1
- package/dist/cjs/useLoader.cjs +1 -0
- package/dist/cjs/useLoader.native.js +2 -6
- package/dist/cjs/useLoader.native.js.map +1 -1
- package/dist/esm/layouts/NativeTabs.mjs +11 -12
- package/dist/esm/layouts/NativeTabs.mjs.map +1 -1
- package/dist/esm/layouts/NativeTabs.native.js +11 -12
- package/dist/esm/layouts/NativeTabs.native.js.map +1 -1
- package/dist/esm/layouts/NativeTabs.test.mjs +24 -0
- package/dist/esm/layouts/NativeTabs.test.mjs.map +1 -0
- package/dist/esm/layouts/NativeTabs.test.native.js +32 -0
- package/dist/esm/layouts/NativeTabs.test.native.js.map +1 -0
- package/dist/esm/useBlocker.native.js +22 -31
- package/dist/esm/useBlocker.native.js.map +1 -1
- package/dist/esm/useLoader.native.js +2 -12
- package/dist/esm/useLoader.native.js.map +1 -1
- package/package.json +9 -9
- package/src/layouts/NativeTabs.test.ts +30 -0
- package/src/layouts/NativeTabs.tsx +15 -17
- package/src/useBlocker.native.ts +27 -48
- package/src/useLoader.ts +5 -2
- package/types/layouts/NativeTabs.d.ts.map +1 -1
- package/types/layouts/NativeTabs.test.d.ts +2 -0
- package/types/layouts/NativeTabs.test.d.ts.map +1 -0
- package/types/useBlocker.native.d.ts +7 -4
- package/types/useBlocker.native.d.ts.map +1 -1
- package/types/useLoader.d.ts.map +1 -1
|
@@ -1,49 +1,40 @@
|
|
|
1
|
-
import { useNavigation } from "@react-navigation/native";
|
|
1
|
+
import { useNavigation, usePreventRemove } from "@react-navigation/native";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
function useBlocker(shouldBlock) {
|
|
4
4
|
var navigation = useNavigation();
|
|
5
5
|
var [state, setState] = React.useState("unblocked");
|
|
6
|
-
var [
|
|
6
|
+
var [pendingAction, setPendingAction] = React.useState(null);
|
|
7
7
|
var [blockedLocation, setBlockedLocation] = React.useState(null);
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
e.preventDefault();
|
|
26
|
-
setPendingEvent(e);
|
|
27
|
-
setBlockedLocation(nextLocation);
|
|
28
|
-
setState("blocked");
|
|
29
|
-
});
|
|
30
|
-
return unsubscribe;
|
|
31
|
-
}, [navigation]);
|
|
8
|
+
var block = typeof shouldBlock === "function" ? shouldBlock({
|
|
9
|
+
currentLocation: "",
|
|
10
|
+
nextLocation: "previous screen",
|
|
11
|
+
historyAction: "pop"
|
|
12
|
+
}) : shouldBlock;
|
|
13
|
+
usePreventRemove(block, function (param) {
|
|
14
|
+
var {
|
|
15
|
+
data
|
|
16
|
+
} = param;
|
|
17
|
+
var _data_action;
|
|
18
|
+
var payload = data === null || data === void 0 ? void 0 : (_data_action = data.action) === null || _data_action === void 0 ? void 0 : _data_action.payload;
|
|
19
|
+
setPendingAction(data.action);
|
|
20
|
+
setBlockedLocation((payload === null || payload === void 0 ? void 0 : payload.name) || "previous screen");
|
|
21
|
+
setState("blocked");
|
|
22
|
+
});
|
|
32
23
|
var reset = React.useCallback(function () {
|
|
33
|
-
|
|
24
|
+
setPendingAction(null);
|
|
34
25
|
setBlockedLocation(null);
|
|
35
26
|
setState("unblocked");
|
|
36
27
|
}, []);
|
|
37
28
|
var proceed = React.useCallback(function () {
|
|
38
|
-
if (!
|
|
29
|
+
if (!pendingAction) return;
|
|
39
30
|
setState("proceeding");
|
|
40
|
-
navigation.dispatch(
|
|
31
|
+
navigation.dispatch(pendingAction);
|
|
41
32
|
setTimeout(function () {
|
|
42
|
-
|
|
33
|
+
setPendingAction(null);
|
|
43
34
|
setBlockedLocation(null);
|
|
44
35
|
setState("unblocked");
|
|
45
36
|
}, 100);
|
|
46
|
-
}, [navigation,
|
|
37
|
+
}, [navigation, pendingAction]);
|
|
47
38
|
if (state === "unblocked") {
|
|
48
39
|
return {
|
|
49
40
|
state: "unblocked"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useNavigation","React","useBlocker","shouldBlock","navigation","state","setState","useState","
|
|
1
|
+
{"version":3,"names":["useNavigation","usePreventRemove","React","useBlocker","shouldBlock","navigation","state","setState","useState","pendingAction","setPendingAction","blockedLocation","setBlockedLocation","block","currentLocation","nextLocation","historyAction","param","data","_data_action","payload","action","name","reset","useCallback","proceed","dispatch","setTimeout","location","checkBlocker","_nextLocation","_historyAction","arguments","length"],"sources":["../../src/useBlocker.native.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,EAAeC,gBAAA,QAAwB;AAChD,YAAYC,KAAA,MAAW;AAkCZ,SAASC,WAAWC,WAAA,EAAa;EACxC,IAAIC,UAAA,GAAaL,aAAA,CAAc;EAC/B,IAAI,CAACM,KAAA,EAAOC,QAAQ,IAAIL,KAAA,CAAMM,QAAA,CAAS,WAAW;EAClD,IAAI,CAACC,aAAA,EAAeC,gBAAgB,IAAIR,KAAA,CAAMM,QAAA,CAAS,IAAI;EAC3D,IAAI,CAACG,eAAA,EAAiBC,kBAAkB,IAAIV,KAAA,CAAMM,QAAA,CAAS,IAAI;EAE/D,IAAIK,KAAA,GAAQ,OAAOT,WAAA,KAAgB,aAAaA,WAAA,CAAY;IACxDU,eAAA,EAAiB;IACjBC,YAAA,EAAc;IACdC,aAAA,EAAe;EACnB,CAAC,IAAIZ,WAAA;EACLH,gBAAA,CAAiBY,KAAA,EAAO,UAASI,KAAA,EAAO;IACpC,IAAI;MAAEC;IAAK,IAAID,KAAA;IACf,IAAIE,YAAA;IACJ,IAAIC,OAAA,GAAUF,IAAA,KAAS,QAAQA,IAAA,KAAS,SAAS,UAAUC,YAAA,GAAeD,IAAA,CAAKG,MAAA,MAAY,QAAQF,YAAA,KAAiB,SAAS,SAASA,YAAA,CAAaC,OAAA;IACnJV,gBAAA,CAAiBQ,IAAA,CAAKG,MAAM;IAC5BT,kBAAA,EAAoBQ,OAAA,KAAY,QAAQA,OAAA,KAAY,SAAS,SAASA,OAAA,CAAQE,IAAA,KAAS,iBAAiB;IACxGf,QAAA,CAAS,SAAS;EACtB,CAAC;EACD,IAAIgB,KAAA,GAAQrB,KAAA,CAAMsB,WAAA,CAAY,YAAW;IACrCd,gBAAA,CAAiB,IAAI;IACrBE,kBAAA,CAAmB,IAAI;IACvBL,QAAA,CAAS,WAAW;EACxB,GAAG,EAAE;EACL,IAAIkB,OAAA,GAAUvB,KAAA,CAAMsB,WAAA,CAAY,YAAW;IACvC,IAAI,CAACf,aAAA,EAAe;IACpBF,QAAA,CAAS,YAAY;IAGrBF,UAAA,CAAWqB,QAAA,CAASjB,aAAa;IACjCkB,UAAA,CAAW,YAAW;MAClBjB,gBAAA,CAAiB,IAAI;MACrBE,kBAAA,CAAmB,IAAI;MACvBL,QAAA,CAAS,WAAW;IACxB,GAAG,GAAG;EACV,GAAG,CACCF,UAAA,EACAI,aAAA,CACH;EACD,IAAIH,KAAA,KAAU,aAAa;IACvB,OAAO;MACHA,KAAA,EAAO;IACX;EACJ;EACA,IAAIA,KAAA,KAAU,cAAc;IACxB,OAAO;MACHA,KAAA,EAAO;MACPsB,QAAA,EAAUjB;IACd;EACJ;EACA,OAAO;IACHL,KAAA,EAAO;IACPiB,KAAA;IACAE,OAAA;IACAG,QAAA,EAAUjB;EACd;AACJ;AAIW,SAASkB,aAAaC,aAAA,EAAe;EAC5C,IAAIC,cAAA,GAAiBC,SAAA,CAAUC,MAAA,GAAS,KAAKD,SAAA,CAAU,CAAC,MAAM,SAASA,SAAA,CAAU,CAAC,IAAI;EACtF,OAAO;AACX","ignoreList":[]}
|
|
@@ -9,16 +9,11 @@ import { preloadedLoaderData, preloadingLoader, routeNode } from "./router/route
|
|
|
9
9
|
import { setSSRLoaderData, ssrLoaderData } from "./server/ssrLoaderData.native.js";
|
|
10
10
|
import { getClientMatchesSnapshot, subscribeToClientMatches, updateMatchLoaderData } from "./useMatches.native.js";
|
|
11
11
|
import { getLoaderPath } from "./utils/cleanUrl.native.js";
|
|
12
|
+
import { getURL } from "./getURL.native.js";
|
|
12
13
|
import { LOADER_JS_POSTFIX_UNCACHED } from "./constants.native.js";
|
|
13
14
|
import { dynamicImport } from "./utils/dynamicImport.native.js";
|
|
14
15
|
import { weakKey } from "./utils/weakKey.native.js";
|
|
15
16
|
import { useServerContext } from "./vite/one-server-only.native.js";
|
|
16
|
-
var __require = /* @__PURE__ */(x => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
17
|
-
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
18
|
-
}) : x)(function (x) {
|
|
19
|
-
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
20
|
-
throw Error("Calling `require` for \"" + x + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.");
|
|
21
|
-
});
|
|
22
17
|
function _instanceof(left, right) {
|
|
23
18
|
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) return !!right[Symbol.hasInstance](left);else return left instanceof right;
|
|
24
19
|
}
|
|
@@ -305,12 +300,7 @@ function useLoaderState(loader) {
|
|
|
305
300
|
try {
|
|
306
301
|
var _dynamicImport;
|
|
307
302
|
var nativeLoaderJSUrl;
|
|
308
|
-
if (process.env.NODE_ENV === "development") nativeLoaderJSUrl = `${getLoaderPath(currentPath, true)}?platform=native`;else {
|
|
309
|
-
var {
|
|
310
|
-
getURL
|
|
311
|
-
} = __require("./getURL");
|
|
312
|
-
nativeLoaderJSUrl = `${getURL()}/assets/${currentPath.slice(1).replace(/\/$/, "").replaceAll("_", "__").replaceAll("/", "_")}${LOADER_JS_POSTFIX_UNCACHED.replace(".js", ".native.js")}`;
|
|
313
|
-
}
|
|
303
|
+
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")}`;
|
|
314
304
|
try {
|
|
315
305
|
var moduleLoadStart = performance.now();
|
|
316
306
|
var controller = new AbortController();
|
|
@@ -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","LOADER_JS_POSTFIX_UNCACHED","dynamicImport","weakKey","useServerContext","__require","x","require","Proxy","get","a","b","apply","arguments","Error","_instanceof","left","right","Symbol","hasInstance","LOADER_TIMEOUT","process","env","ONE_LOADER_TIMEOUT_MS","loaderTimingHistory","MAX_TIMING_HISTORY","recordLoaderTiming","NODE_ENV","entry","unshift","length","pop","window","CustomEvent","dispatchEvent","detail","error","message","name","route","pathname","path","timestamp","Date","now","type","getLoaderTimingHistory","loaderState","subscribers","Set","LOADER_STATE_MAX","loaderStateKeys","setBoundedLoaderState","push","oldest","shift","updateState","updates","forEach","callback","subscribe","add","delete","getLoaderState","preloadedData","data","promise","state","hasLoadedOnce","refetchLoader","startTime","performance","_dynamicImport","loaderJSUrl","moduleLoadStart","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","source","replace","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","currentMatches","pageMatch","normalizedPathname","normalizedMatchPathname","routeId","err","totalTime1","String","__oneRefetchLoader","refetchMatchLoader","currentPath","useLoaderState","loaderProps","loaderPropsFromServerContext","loaderData","loaderDataFromServerContext","params","has","refetch","serverContext","matches","contextKey","match","find","m","useAsyncFn","matchRouteId","startsWith","clientMatches","loaderStateEntry","_clientMatches_","match1","isPageMatch","matchPathNormalized","matchPathFresh","fresh","resolvedPreloadData","then","val","console","loadData","nativeLoaderJSUrl","getURL","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 { LOADER_JS_POSTFIX_UNCACHED } from \"./constants\";\nimport { dynamicImport } from \"./utils/dynamicImport\";\nimport { weakKey } from \"./utils/weakKey\";\nimport { useServerContext } from \"./vite/one-server-only\";\n\nvar __require = /* @__PURE__ */ ((x) => typeof require !== \"undefined\" ? require : typeof Proxy !== \"undefined\" ? new Proxy(x, { get: (a, b) => (typeof require !== \"undefined\" ? require : a)[b] }) : x)(function(x) {\n\tif (typeof require !== \"undefined\") return require.apply(this, arguments);\n\tthrow Error(\"Calling `require` for \\\"\" + x + \"\\\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.\");\n});\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\tif (typeof window !== \"undefined\" && typeof CustomEvent !== \"undefined\") {\n\t\twindow.dispatchEvent(new CustomEvent(\"one-loader-timing\", { detail: entry }));\n\t\tif (entry.error) window.dispatchEvent(new CustomEvent(\"one-error\", { detail: {\n\t\t\terror: {\n\t\t\t\tmessage: entry.error,\n\t\t\t\tname: \"LoaderError\"\n\t\t\t},\n\t\t\troute: { pathname: entry.path },\n\t\t\ttimestamp: Date.now(),\n\t\t\ttype: \"loader\"\n\t\t} }));\n\t}\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 {\n\t\t\t\t\t\tvar { getURL } = __require(\"./getURL\");\n\t\t\t\t\t\tnativeLoaderJSUrl = `${getURL()}/assets/${currentPath.slice(1).replace(/\\/$/, \"\").replaceAll(\"_\", \"__\").replaceAll(\"/\", \"_\")}${LOADER_JS_POSTFIX_UNCACHED.replace(\".js\", \".native.js\")}`;\n\t\t\t\t\t}\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","window","CustomEvent","dispatchEvent","detail","error","message","name","route","pathname","path","timestamp","Date","now","type","getLoaderTimingHistory","loaderState","subscribers","Set","LOADER_STATE_MAX","loaderStateKeys","setBoundedLoaderState","push","oldest","shift","updateState","updates","forEach","callback","subscribe","add","delete","getLoaderState","preloadedData","data","promise","state","hasLoadedOnce","refetchLoader","startTime","performance","_dynamicImport","loaderJSUrl","moduleLoadStart","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","source","replace","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","currentMatches","pageMatch","normalizedPathname","normalizedMatchPathname","routeId","err","totalTime1","Error","String","__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\tif (typeof window !== \"undefined\" && typeof CustomEvent !== \"undefined\") {\n\t\twindow.dispatchEvent(new CustomEvent(\"one-loader-timing\", { detail: entry }));\n\t\tif (entry.error) window.dispatchEvent(new CustomEvent(\"one-error\", { detail: {\n\t\t\terror: {\n\t\t\t\tmessage: entry.error,\n\t\t\t\tname: \"LoaderError\"\n\t\t\t},\n\t\t\troute: { pathname: entry.path },\n\t\t\ttimestamp: Date.now(),\n\t\t\ttype: \"loader\"\n\t\t} }));\n\t}\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":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "one",
|
|
3
|
-
"version": "1.18.
|
|
3
|
+
"version": "1.18.4",
|
|
4
4
|
"license": "BSD-3-Clause",
|
|
5
5
|
"sideEffects": [
|
|
6
6
|
"setup.mjs",
|
|
@@ -186,18 +186,18 @@
|
|
|
186
186
|
"@cloudflare/vite-plugin": "^1.33.1",
|
|
187
187
|
"@swc/core": "^1.14.0",
|
|
188
188
|
"@ungap/structured-clone": "^1.2.0",
|
|
189
|
-
"@vxrn/color-scheme": "1.18.
|
|
190
|
-
"@vxrn/compiler": "1.18.
|
|
191
|
-
"@vxrn/resolve": "1.18.
|
|
192
|
-
"@vxrn/tslib-lite": "1.18.
|
|
193
|
-
"@vxrn/use-isomorphic-layout-effect": "1.18.
|
|
194
|
-
"@vxrn/vite-plugin-metro": "1.18.
|
|
189
|
+
"@vxrn/color-scheme": "1.18.4",
|
|
190
|
+
"@vxrn/compiler": "1.18.4",
|
|
191
|
+
"@vxrn/resolve": "1.18.4",
|
|
192
|
+
"@vxrn/tslib-lite": "1.18.4",
|
|
193
|
+
"@vxrn/use-isomorphic-layout-effect": "1.18.4",
|
|
194
|
+
"@vxrn/vite-plugin-metro": "1.18.4",
|
|
195
195
|
"babel-dead-code-elimination": "1.0.10",
|
|
196
196
|
"babel-plugin-module-resolver": "^5.0.2",
|
|
197
197
|
"babel-preset-expo": "~55.0.0",
|
|
198
198
|
"citty": "^0.1.6",
|
|
199
199
|
"core-js": "^3.38.1",
|
|
200
|
-
"create-vxrn": "1.18.
|
|
200
|
+
"create-vxrn": "1.18.4",
|
|
201
201
|
"escape-string-regexp": "^5.0.0",
|
|
202
202
|
"expo-linking": "~55.0.7",
|
|
203
203
|
"expo-modules-core": "~55.0.16",
|
|
@@ -217,7 +217,7 @@
|
|
|
217
217
|
"tsconfig-paths": "^4",
|
|
218
218
|
"use-latest-callback": "^0.2.3",
|
|
219
219
|
"vite": "^8.0.13",
|
|
220
|
-
"vxrn": "1.18.
|
|
220
|
+
"vxrn": "1.18.4",
|
|
221
221
|
"ws": "^8.18.0",
|
|
222
222
|
"xxhashjs": "^0.2.2"
|
|
223
223
|
},
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { createRequire } from 'node:module'
|
|
2
|
+
import { describe, expect, it } from 'vitest'
|
|
3
|
+
import { NativeTabs } from './NativeTabs'
|
|
4
|
+
|
|
5
|
+
const require = createRequire(import.meta.url)
|
|
6
|
+
|
|
7
|
+
function hasNativeTabsPeer() {
|
|
8
|
+
try {
|
|
9
|
+
require.resolve('@bottom-tabs/react-navigation')
|
|
10
|
+
return true
|
|
11
|
+
} catch {
|
|
12
|
+
return false
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
describe('NativeTabs optional peer', () => {
|
|
17
|
+
it('does not throw during ordinary import-time inspection', () => {
|
|
18
|
+
expect(() => Object.prototype.toString.call(NativeTabs)).not.toThrow()
|
|
19
|
+
expect(() => Reflect.get(NativeTabs, '$$typeof')).not.toThrow()
|
|
20
|
+
expect(() => Reflect.get(NativeTabs, 'Screen')).not.toThrow()
|
|
21
|
+
})
|
|
22
|
+
|
|
23
|
+
it('keeps the missing-peer error on actual render use', () => {
|
|
24
|
+
if (hasNativeTabsPeer()) return
|
|
25
|
+
|
|
26
|
+
expect(() => (NativeTabs as any).render({}, null)).toThrow(
|
|
27
|
+
'NativeTabs requires @bottom-tabs/react-navigation and react-native-bottom-tabs'
|
|
28
|
+
)
|
|
29
|
+
})
|
|
30
|
+
})
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ParamListBase, TabNavigationState } from '@react-navigation/native'
|
|
2
|
-
import
|
|
2
|
+
import React from 'react'
|
|
3
3
|
|
|
4
4
|
import { Protected } from '../views/Protected'
|
|
5
|
+
import { Screen } from '../views/Screen'
|
|
5
6
|
import { withLayoutContext } from './withLayoutContext'
|
|
6
7
|
|
|
7
8
|
let NativeBottomTabNavigator: React.ComponentType<any> | null = null
|
|
@@ -17,12 +18,20 @@ type NativeTabsType = ReturnType<typeof withLayoutContext> & {
|
|
|
17
18
|
Protected: typeof Protected
|
|
18
19
|
}
|
|
19
20
|
|
|
21
|
+
const missingNativeTabsMessage =
|
|
22
|
+
'NativeTabs requires @bottom-tabs/react-navigation and react-native-bottom-tabs.\n' +
|
|
23
|
+
'Install: npx expo install @bottom-tabs/react-navigation react-native-bottom-tabs'
|
|
24
|
+
|
|
25
|
+
const MissingNativeTabs = React.forwardRef<unknown, any>(function MissingNativeTabs(): never {
|
|
26
|
+
throw new Error(missingNativeTabsMessage)
|
|
27
|
+
})
|
|
28
|
+
|
|
20
29
|
function createNativeTabs(): NativeTabsType {
|
|
21
30
|
if (!NativeBottomTabNavigator) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
)
|
|
31
|
+
return Object.assign(MissingNativeTabs, {
|
|
32
|
+
Protected,
|
|
33
|
+
Screen,
|
|
34
|
+
}) as NativeTabsType
|
|
26
35
|
}
|
|
27
36
|
|
|
28
37
|
return Object.assign(withLayoutContext(NativeBottomTabNavigator), {
|
|
@@ -30,17 +39,6 @@ function createNativeTabs(): NativeTabsType {
|
|
|
30
39
|
}) as NativeTabsType
|
|
31
40
|
}
|
|
32
41
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
export const NativeTabs = new Proxy({} as NativeTabsType, {
|
|
36
|
-
get(_, prop) {
|
|
37
|
-
if (!_nativeTabs) _nativeTabs = createNativeTabs()
|
|
38
|
-
return (_nativeTabs as any)[prop]
|
|
39
|
-
},
|
|
40
|
-
apply(_, thisArg, args) {
|
|
41
|
-
if (!_nativeTabs) _nativeTabs = createNativeTabs()
|
|
42
|
-
return (_nativeTabs as any).apply(thisArg, args)
|
|
43
|
-
},
|
|
44
|
-
})
|
|
42
|
+
export const NativeTabs = createNativeTabs()
|
|
45
43
|
|
|
46
44
|
export default NativeTabs
|
package/src/useBlocker.native.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useNavigation } from '@react-navigation/native'
|
|
1
|
+
import { useNavigation, usePreventRemove } from '@react-navigation/native'
|
|
2
2
|
import * as React from 'react'
|
|
3
3
|
|
|
4
4
|
export type BlockerState = 'unblocked' | 'blocked' | 'proceeding'
|
|
@@ -32,9 +32,12 @@ export type Blocker =
|
|
|
32
32
|
/**
|
|
33
33
|
* Block navigation when a condition is met.
|
|
34
34
|
*
|
|
35
|
-
* On native, this uses React Navigation's `
|
|
36
|
-
*
|
|
37
|
-
*
|
|
35
|
+
* On native, this uses React Navigation's `usePreventRemove`, which registers the
|
|
36
|
+
* route with the native stack so the iOS interactive swipe-back gesture is blocked
|
|
37
|
+
* too (via `preventNativeDismiss`), not just JS-driven pops. A raw `beforeRemove`
|
|
38
|
+
* listener only stops JS-driven pops, so swiping would bypass the guard and desync
|
|
39
|
+
* JS<->native state. Note that this only works for navigation within the app - it
|
|
40
|
+
* cannot prevent the app from being closed or backgrounded.
|
|
38
41
|
*
|
|
39
42
|
* @param shouldBlock - Either a boolean or a function that returns whether to block.
|
|
40
43
|
*
|
|
@@ -63,67 +66,43 @@ export type Blocker =
|
|
|
63
66
|
export function useBlocker(shouldBlock: BlockerFunction | boolean): Blocker {
|
|
64
67
|
const navigation = useNavigation()
|
|
65
68
|
const [state, setState] = React.useState<BlockerState>('unblocked')
|
|
66
|
-
const [
|
|
69
|
+
const [pendingAction, setPendingAction] = React.useState<any>(null)
|
|
67
70
|
const [blockedLocation, setBlockedLocation] = React.useState<string | null>(null)
|
|
68
71
|
|
|
69
|
-
|
|
70
|
-
|
|
72
|
+
// native has no current location and the gesture/back button are always a pop
|
|
73
|
+
const block =
|
|
74
|
+
typeof shouldBlock === 'function'
|
|
75
|
+
? shouldBlock({ currentLocation: '', nextLocation: 'previous screen', historyAction: 'pop' })
|
|
76
|
+
: shouldBlock
|
|
71
77
|
|
|
72
|
-
|
|
73
|
-
const
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
const nextLocation = payload?.name || 'previous screen'
|
|
79
|
-
|
|
80
|
-
// Determine if we should block
|
|
81
|
-
const block =
|
|
82
|
-
typeof currentShouldBlock === 'function'
|
|
83
|
-
? currentShouldBlock({
|
|
84
|
-
currentLocation: '', // Not easily available on native
|
|
85
|
-
nextLocation,
|
|
86
|
-
historyAction: 'pop',
|
|
87
|
-
})
|
|
88
|
-
: currentShouldBlock
|
|
89
|
-
|
|
90
|
-
if (!block) {
|
|
91
|
-
return
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
// Prevent default behavior (leaving the screen)
|
|
95
|
-
e.preventDefault()
|
|
96
|
-
|
|
97
|
-
// Store the event to dispatch later if user confirms
|
|
98
|
-
setPendingEvent(e)
|
|
99
|
-
setBlockedLocation(nextLocation)
|
|
100
|
-
setState('blocked')
|
|
101
|
-
})
|
|
102
|
-
|
|
103
|
-
return unsubscribe
|
|
104
|
-
}, [navigation])
|
|
78
|
+
usePreventRemove(block, ({ data }) => {
|
|
79
|
+
const payload = data?.action?.payload as { name?: string } | undefined
|
|
80
|
+
setPendingAction(data.action)
|
|
81
|
+
setBlockedLocation(payload?.name || 'previous screen')
|
|
82
|
+
setState('blocked')
|
|
83
|
+
})
|
|
105
84
|
|
|
106
85
|
const reset = React.useCallback(() => {
|
|
107
|
-
|
|
86
|
+
setPendingAction(null)
|
|
108
87
|
setBlockedLocation(null)
|
|
109
88
|
setState('unblocked')
|
|
110
89
|
}, [])
|
|
111
90
|
|
|
112
91
|
const proceed = React.useCallback(() => {
|
|
113
|
-
if (!
|
|
92
|
+
if (!pendingAction) return
|
|
114
93
|
|
|
115
94
|
setState('proceeding')
|
|
116
95
|
|
|
117
|
-
//
|
|
118
|
-
navigation
|
|
96
|
+
// the captured action carries a VISITED_ROUTE_KEYS marker, so re-dispatching
|
|
97
|
+
// it skips the beforeRemove guard and navigation completes without re-blocking
|
|
98
|
+
navigation.dispatch(pendingAction)
|
|
119
99
|
|
|
120
|
-
// Reset after navigation
|
|
121
100
|
setTimeout(() => {
|
|
122
|
-
|
|
101
|
+
setPendingAction(null)
|
|
123
102
|
setBlockedLocation(null)
|
|
124
103
|
setState('unblocked')
|
|
125
104
|
}, 100)
|
|
126
|
-
}, [navigation,
|
|
105
|
+
}, [navigation, pendingAction])
|
|
127
106
|
|
|
128
107
|
if (state === 'unblocked') {
|
|
129
108
|
return { state: 'unblocked' }
|
|
@@ -142,7 +121,7 @@ export function useBlocker(shouldBlock: BlockerFunction | boolean): Blocker {
|
|
|
142
121
|
}
|
|
143
122
|
|
|
144
123
|
/**
|
|
145
|
-
* No-op on native - native uses React Navigation's
|
|
124
|
+
* No-op on native - native uses React Navigation's usePreventRemove instead.
|
|
146
125
|
* This is only used by the router on web.
|
|
147
126
|
*/
|
|
148
127
|
export function checkBlocker(
|
package/src/useLoader.ts
CHANGED
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
updateMatchLoaderData,
|
|
14
14
|
} from './useMatches'
|
|
15
15
|
import { getLoaderPath } from './utils/cleanUrl'
|
|
16
|
+
import { getURL } from './getURL'
|
|
16
17
|
import { LOADER_JS_POSTFIX_UNCACHED } from './constants'
|
|
17
18
|
import { dynamicImport } from './utils/dynamicImport'
|
|
18
19
|
import { weakKey } from './utils/weakKey'
|
|
@@ -509,8 +510,10 @@ export function useLoaderState<
|
|
|
509
510
|
nativeLoaderJSUrl = `${getLoaderPath(currentPath, true)}?platform=native`
|
|
510
511
|
} else {
|
|
511
512
|
// prod: request the .native.js static file directly
|
|
512
|
-
// use uncached postfix since metro can't inline ONE_CACHE_KEY
|
|
513
|
-
|
|
513
|
+
// use uncached postfix since metro can't inline ONE_CACHE_KEY.
|
|
514
|
+
// must use the static import — a dynamic require('./getURL') is
|
|
515
|
+
// left as a runtime string require by metro and resolves to
|
|
516
|
+
// undefined in the prod native bundle (crashes the route).
|
|
514
517
|
const base = getURL()
|
|
515
518
|
const cleanedPath = currentPath
|
|
516
519
|
.slice(1)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeTabs.d.ts","sourceRoot":"","sources":["../../src/layouts/NativeTabs.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"NativeTabs.d.ts","sourceRoot":"","sources":["../../src/layouts/NativeTabs.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAWvD,KAAK,cAAc,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,GAAG;IAC3D,SAAS,EAAE,OAAO,SAAS,CAAA;CAC5B,CAAA;AAuBD,eAAO,MAAM,UAAU,gBAAqB,CAAA;AAE5C,eAAe,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeTabs.test.d.ts","sourceRoot":"","sources":["../../src/layouts/NativeTabs.test.ts"],"names":[],"mappings":""}
|