one 1.2.18 → 1.2.20

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.
Files changed (97) hide show
  1. package/dist/cjs/createHandleRequest.cjs +7 -2
  2. package/dist/cjs/createHandleRequest.js +8 -3
  3. package/dist/cjs/createHandleRequest.js.map +1 -1
  4. package/dist/cjs/createHandleRequest.native.js +8 -2
  5. package/dist/cjs/createHandleRequest.native.js.map +1 -1
  6. package/dist/cjs/experimental-useLoaderState.cjs +64 -0
  7. package/dist/cjs/experimental-useLoaderState.js +44 -0
  8. package/dist/cjs/experimental-useLoaderState.js.map +6 -0
  9. package/dist/cjs/experimental-useLoaderState.native.js +69 -0
  10. package/dist/cjs/experimental-useLoaderState.native.js.map +1 -0
  11. package/dist/cjs/index.cjs +1 -0
  12. package/dist/cjs/index.js +1 -0
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/index.native.js +1 -0
  15. package/dist/cjs/index.native.js.map +1 -1
  16. package/dist/cjs/router/router.cjs +35 -5
  17. package/dist/cjs/router/router.js +26 -5
  18. package/dist/cjs/router/router.js.map +1 -1
  19. package/dist/cjs/router/router.native.js +32 -5
  20. package/dist/cjs/router/router.native.js.map +1 -1
  21. package/dist/cjs/server/oneServe.cjs +8 -6
  22. package/dist/cjs/server/oneServe.js +10 -5
  23. package/dist/cjs/server/oneServe.js.map +1 -1
  24. package/dist/cjs/server/oneServe.native.js +8 -6
  25. package/dist/cjs/server/oneServe.native.js.map +1 -1
  26. package/dist/cjs/useLoader.cjs +117 -36
  27. package/dist/cjs/useLoader.js +108 -33
  28. package/dist/cjs/useLoader.js.map +2 -2
  29. package/dist/cjs/useLoader.native.js +151 -55
  30. package/dist/cjs/useLoader.native.js.map +1 -1
  31. package/dist/cjs/utils/cleanUrl.cjs +6 -5
  32. package/dist/cjs/utils/cleanUrl.js +4 -8
  33. package/dist/cjs/utils/cleanUrl.js.map +1 -1
  34. package/dist/cjs/utils/cleanUrl.native.js +6 -3
  35. package/dist/cjs/utils/cleanUrl.native.js.map +1 -1
  36. package/dist/esm/createHandleRequest.js +8 -3
  37. package/dist/esm/createHandleRequest.js.map +1 -1
  38. package/dist/esm/createHandleRequest.mjs +7 -2
  39. package/dist/esm/createHandleRequest.mjs.map +1 -1
  40. package/dist/esm/createHandleRequest.native.js +8 -2
  41. package/dist/esm/createHandleRequest.native.js.map +1 -1
  42. package/dist/esm/experimental-useLoaderState.js +32 -0
  43. package/dist/esm/experimental-useLoaderState.js.map +6 -0
  44. package/dist/esm/experimental-useLoaderState.mjs +41 -0
  45. package/dist/esm/experimental-useLoaderState.mjs.map +1 -0
  46. package/dist/esm/experimental-useLoaderState.native.js +43 -0
  47. package/dist/esm/experimental-useLoaderState.native.js.map +1 -0
  48. package/dist/esm/index.js +2 -1
  49. package/dist/esm/index.js.map +1 -1
  50. package/dist/esm/index.mjs +2 -2
  51. package/dist/esm/index.mjs.map +1 -1
  52. package/dist/esm/index.native.js +2 -2
  53. package/dist/esm/index.native.js.map +1 -1
  54. package/dist/esm/router/router.js +26 -5
  55. package/dist/esm/router/router.js.map +1 -1
  56. package/dist/esm/router/router.mjs +35 -5
  57. package/dist/esm/router/router.mjs.map +1 -1
  58. package/dist/esm/router/router.native.js +32 -5
  59. package/dist/esm/router/router.native.js.map +1 -1
  60. package/dist/esm/server/oneServe.js +10 -5
  61. package/dist/esm/server/oneServe.js.map +1 -1
  62. package/dist/esm/server/oneServe.mjs +7 -5
  63. package/dist/esm/server/oneServe.mjs.map +1 -1
  64. package/dist/esm/server/oneServe.native.js +7 -5
  65. package/dist/esm/server/oneServe.native.js.map +1 -1
  66. package/dist/esm/useLoader.js +110 -35
  67. package/dist/esm/useLoader.js.map +2 -2
  68. package/dist/esm/useLoader.mjs +117 -38
  69. package/dist/esm/useLoader.mjs.map +1 -1
  70. package/dist/esm/useLoader.native.js +151 -57
  71. package/dist/esm/useLoader.native.js.map +1 -1
  72. package/dist/esm/utils/cleanUrl.js +4 -8
  73. package/dist/esm/utils/cleanUrl.js.map +1 -1
  74. package/dist/esm/utils/cleanUrl.mjs +6 -5
  75. package/dist/esm/utils/cleanUrl.mjs.map +1 -1
  76. package/dist/esm/utils/cleanUrl.native.js +6 -3
  77. package/dist/esm/utils/cleanUrl.native.js.map +1 -1
  78. package/package.json +10 -10
  79. package/src/createHandleRequest.ts +6 -2
  80. package/src/index.ts +1 -1
  81. package/src/router/router.ts +45 -0
  82. package/src/server/oneServe.ts +12 -6
  83. package/src/types.ts +1 -0
  84. package/src/useLoader.ts +206 -90
  85. package/src/utils/cleanUrl.ts +7 -10
  86. package/types/createHandleRequest.d.ts.map +1 -1
  87. package/types/experimental-useLoaderState.d.ts.map +1 -0
  88. package/types/index.d.ts +1 -1
  89. package/types/index.d.ts.map +1 -1
  90. package/types/router/router.d.ts.map +1 -1
  91. package/types/server/oneServe.d.ts.map +1 -1
  92. package/types/types.d.ts +1 -0
  93. package/types/types.d.ts.map +1 -1
  94. package/types/useLoader.d.ts +9 -0
  95. package/types/useLoader.d.ts.map +1 -1
  96. package/types/utils/cleanUrl.d.ts +1 -1
  97. package/types/utils/cleanUrl.d.ts.map +1 -1
@@ -14,49 +14,124 @@ var __export = (target, all) => {
14
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
15
  var useLoader_exports = {};
16
16
  __export(useLoader_exports, {
17
- useLoader: () => useLoader
17
+ refetchLoader: () => refetchLoader,
18
+ useLoader: () => useLoader,
19
+ useLoaderState: () => useLoaderState
18
20
  });
19
21
  module.exports = __toCommonJS(useLoader_exports);
20
22
  var import_react = require("react"), import_hooks = require("./hooks"), import_href = require("./link/href"), import_router = require("./router/router"), import_cleanUrl = require("./utils/cleanUrl"), import_dynamicImport = require("./utils/dynamicImport"), import_weakKey = require("./utils/weakKey"), import_one_server_only = require("./vite/one-server-only");
21
- const promises = {}, errors = {}, loadedData = {};
22
- function useLoader(loader) {
23
- const { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } = (0, import_one_server_only.useServerContext)() || {};
24
- if (typeof window > "u")
25
- return useAsyncFn(
23
+ const loaderState = {}, subscribers = /* @__PURE__ */ new Set();
24
+ function updateState(path, updates) {
25
+ loaderState[path] = { ...loaderState[path], ...updates }, subscribers.forEach((callback) => {
26
+ callback();
27
+ });
28
+ }
29
+ function subscribe(callback) {
30
+ return subscribers.add(callback), () => subscribers.delete(callback);
31
+ }
32
+ function getLoaderState(path, preloadedData2) {
33
+ return loaderState[path] || (loaderState[path] = {
34
+ data: preloadedData2,
35
+ error: void 0,
36
+ promise: void 0,
37
+ state: "idle",
38
+ hasLoadedOnce: !!preloadedData2
39
+ }), loaderState[path];
40
+ }
41
+ async function refetchLoader(pathname2) {
42
+ updateState(pathname2, {
43
+ state: "loading",
44
+ error: null
45
+ });
46
+ try {
47
+ const cacheBust = `${Date.now()}`, loaderJSUrl2 = (0, import_cleanUrl.getLoaderPath)(pathname2, !0, cacheBust), result2 = await (await (0, import_dynamicImport.dynamicImport)(loaderJSUrl2)).loader();
48
+ updateState(pathname2, {
49
+ data: result2,
50
+ state: "idle",
51
+ timestamp: Date.now(),
52
+ hasLoadedOnce: !0
53
+ });
54
+ } catch (err) {
55
+ throw updateState(pathname2, {
56
+ error: err,
57
+ state: "idle"
58
+ }), err;
59
+ }
60
+ }
61
+ function useLoaderState(loader) {
62
+ const { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } = (0, import_one_server_only.useServerContext)() || {}, params = (0, import_hooks.useParams)(), pathname = (0, import_hooks.usePathname)(), currentPath = (0, import_href.resolveHref)({ pathname, params }).replace(/index$/, "");
63
+ if (typeof window > "u" && loader)
64
+ return { data: useAsyncFn(
26
65
  loader,
27
66
  loaderPropsFromServerContext || {
28
- path: (0, import_hooks.usePathname)(),
29
- params: (0, import_hooks.useActiveParams)()
67
+ path: pathname,
68
+ params
30
69
  }
31
- );
32
- const params = (0, import_hooks.useParams)(), pathname = (0, import_hooks.usePathname)(), currentPath = (0, import_href.resolveHref)({ pathname, params }).replace(/index$/, "").replace(/\?.*/, ""), preloadedData = loaderPropsFromServerContext?.path === currentPath ? loaderDataFromServerContext : void 0, currentData = (0, import_react.useRef)(preloadedData);
33
- if ((0, import_react.useEffect)(() => {
34
- preloadedData && (loadedData[currentPath] = preloadedData);
35
- }, [preloadedData]), errors[currentPath])
36
- throw errors[currentPath];
37
- const loaded = loadedData[currentPath];
38
- if (typeof loaded < "u")
39
- return loaded;
40
- if (!preloadedData) {
41
- if (import_router.preloadingLoader[currentPath] && (typeof import_router.preloadingLoader[currentPath] == "function" && (import_router.preloadingLoader[currentPath] = import_router.preloadingLoader[currentPath]()), promises[currentPath] = import_router.preloadingLoader[currentPath].then((val) => {
42
- loadedData[currentPath] = val;
43
- }).catch((err) => {
44
- console.error("Error loading loader", err), errors[currentPath] = err, delete promises[currentPath], delete import_router.preloadingLoader[currentPath];
45
- })), !promises[currentPath]) {
46
- const getData = async () => {
47
- const loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(currentPath, !0);
70
+ ), refetch: async () => {
71
+ }, state: "idle" };
72
+ const preloadedData = loaderPropsFromServerContext?.path === currentPath ? loaderDataFromServerContext : void 0, loaderStateEntry = (0, import_react.useSyncExternalStore)(
73
+ subscribe,
74
+ () => getLoaderState(currentPath, preloadedData),
75
+ () => getLoaderState(currentPath, preloadedData)
76
+ ), refetch = (0, import_react.useCallback)(() => refetchLoader(currentPath), [currentPath]);
77
+ if (!loader)
78
+ return {
79
+ refetch,
80
+ state: loaderStateEntry.state
81
+ };
82
+ if (!loaderStateEntry.data && !loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce && loader)
83
+ if (import_router.preloadingLoader[currentPath]) {
84
+ typeof import_router.preloadingLoader[currentPath] == "function" && (import_router.preloadingLoader[currentPath] = import_router.preloadingLoader[currentPath]());
85
+ const promise2 = import_router.preloadingLoader[currentPath].then((val) => {
86
+ delete import_router.preloadingLoader[currentPath], updateState(currentPath, {
87
+ data: val,
88
+ hasLoadedOnce: !0,
89
+ promise: void 0
90
+ });
91
+ }).catch((err) => {
92
+ console.error("Error running loader()", err), delete import_router.preloadingLoader[currentPath], updateState(currentPath, {
93
+ error: err,
94
+ promise: void 0
95
+ });
96
+ });
97
+ loaderStateEntry.promise = promise2;
98
+ } else {
99
+ const loadData = async () => {
48
100
  try {
49
- const response = await (async () => await (0, import_dynamicImport.dynamicImport)(loaderJSUrl))();
50
- return loadedData[currentPath] = response.loader(), loadedData[currentPath];
101
+ const loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(currentPath, !0), module = await (0, import_dynamicImport.dynamicImport)(loaderJSUrl), result = await module.loader();
102
+ updateState(currentPath, {
103
+ data: result,
104
+ hasLoadedOnce: !0,
105
+ promise: void 0
106
+ });
51
107
  } catch (err) {
52
- return console.error(`Error calling loader: ${err}`), errors[currentPath] = err, delete promises[currentPath], null;
108
+ updateState(currentPath, {
109
+ error: err,
110
+ promise: void 0
111
+ });
53
112
  }
54
- };
55
- promises[currentPath] = getData();
113
+ }, promise = loadData();
114
+ loaderStateEntry.promise = promise;
56
115
  }
57
- throw promises[currentPath];
58
- }
59
- return currentData.current;
116
+ if (loader) {
117
+ if (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce)
118
+ throw loaderStateEntry.error;
119
+ if (loaderStateEntry.data === void 0 && loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce)
120
+ throw loaderStateEntry.promise;
121
+ return {
122
+ data: loaderStateEntry.data,
123
+ refetch,
124
+ state: loaderStateEntry.state
125
+ };
126
+ } else
127
+ return {
128
+ refetch,
129
+ state: loaderStateEntry.state
130
+ };
131
+ }
132
+ function useLoader(loader2) {
133
+ const { data: data2 } = useLoaderState(loader2);
134
+ return data2;
60
135
  }
61
136
  const results = /* @__PURE__ */ new Map(), started = /* @__PURE__ */ new Map();
62
137
  function useAsyncFn(val, props) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/useLoader.ts"],
4
- "mappings": "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",
5
- "names": []
4
+ "mappings": "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",
5
+ "names": ["preloadedData", "pathname", "loaderJSUrl", "result", "promise", "loader", "data"]
6
6
  }
@@ -22,7 +22,9 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
22
22
  }), mod);
23
23
  var useLoader_exports = {};
24
24
  __export(useLoader_exports, {
25
- useLoader: () => useLoader
25
+ refetchLoader: () => refetchLoader,
26
+ useLoader: () => useLoader,
27
+ useLoaderState: () => useLoaderState
26
28
  });
27
29
  module.exports = __toCommonJS(useLoader_exports);
28
30
  var import_react = require("react"),
@@ -36,70 +38,164 @@ var import_react = require("react"),
36
38
  function _instanceof(left, right) {
37
39
  return right != null && typeof Symbol < "u" && right[Symbol.hasInstance] ? !!right[Symbol.hasInstance](left) : left instanceof right;
38
40
  }
39
- var promises = {},
40
- errors = {},
41
- loadedData = {};
42
- function useLoader(loader) {
43
- var {
44
- loaderProps: loaderPropsFromServerContext,
45
- loaderData: loaderDataFromServerContext
46
- } = (0, import_one_server_only.useServerContext)() || {};
47
- if (typeof window > "u") return useAsyncFn(loader, loaderPropsFromServerContext || {
48
- path: (0, import_hooks.usePathname)(),
49
- params: (0, import_hooks.useActiveParams)()
41
+ var loaderState = {},
42
+ subscribers = /* @__PURE__ */new Set();
43
+ function updateState(path, updates) {
44
+ loaderState[path] = {
45
+ ...loaderState[path],
46
+ ...updates
47
+ }, subscribers.forEach(function (callback) {
48
+ callback();
49
+ });
50
+ }
51
+ function subscribe(callback) {
52
+ return subscribers.add(callback), function () {
53
+ return subscribers.delete(callback);
54
+ };
55
+ }
56
+ function getLoaderState(path, preloadedData2) {
57
+ return loaderState[path] || (loaderState[path] = {
58
+ data: preloadedData2,
59
+ error: void 0,
60
+ promise: void 0,
61
+ state: "idle",
62
+ hasLoadedOnce: !!preloadedData2
63
+ }), loaderState[path];
64
+ }
65
+ async function refetchLoader(pathname2) {
66
+ updateState(pathname2, {
67
+ state: "loading",
68
+ error: null
50
69
  });
51
- var params = (0, import_hooks.useParams)(),
70
+ try {
71
+ var cacheBust = `${Date.now()}`,
72
+ loaderJSUrl2 = (0, import_cleanUrl.getLoaderPath)(pathname2, !0, cacheBust),
73
+ module2 = await (0, import_dynamicImport.dynamicImport)(loaderJSUrl2),
74
+ result2 = await module2.loader();
75
+ updateState(pathname2, {
76
+ data: result2,
77
+ state: "idle",
78
+ timestamp: Date.now(),
79
+ hasLoadedOnce: !0
80
+ });
81
+ } catch (err) {
82
+ throw updateState(pathname2, {
83
+ error: err,
84
+ state: "idle"
85
+ }), err;
86
+ }
87
+ }
88
+ function useLoaderState(loader) {
89
+ var {
90
+ loaderProps: loaderPropsFromServerContext,
91
+ loaderData: loaderDataFromServerContext
92
+ } = (0, import_one_server_only.useServerContext)() || {},
93
+ params = (0, import_hooks.useParams)(),
52
94
  pathname = (0, import_hooks.usePathname)(),
53
95
  currentPath = (0, import_href.resolveHref)({
54
96
  pathname,
55
97
  params
56
- }).replace(/index$/, "").replace(/\?.*/, ""),
57
- preloadedData = loaderPropsFromServerContext?.path === currentPath ? loaderDataFromServerContext : void 0,
58
- currentData = (0, import_react.useRef)(preloadedData);
59
- if ((0, import_react.useEffect)(function () {
60
- preloadedData && (loadedData[currentPath] = preloadedData);
61
- },
62
- // eslint-disable-next-line react-hooks/exhaustive-deps
63
- [preloadedData]), errors[currentPath]) throw errors[currentPath];
64
- var loaded = loadedData[currentPath];
65
- if (typeof loaded < "u") return loaded;
66
- if (!preloadedData) {
67
- if (import_router.preloadingLoader[currentPath] && (typeof import_router.preloadingLoader[currentPath] == "function" && (import_router.preloadingLoader[currentPath] = import_router.preloadingLoader[currentPath]()), promises[currentPath] = import_router.preloadingLoader[currentPath].then(function (val) {
68
- loadedData[currentPath] = val;
98
+ }).replace(/index$/, "");
99
+ if (typeof window > "u" && loader) {
100
+ var serverData = useAsyncFn(loader, loaderPropsFromServerContext || {
101
+ path: pathname,
102
+ params
103
+ });
104
+ return {
105
+ data: serverData,
106
+ refetch: async function () {},
107
+ state: "idle"
108
+ };
109
+ }
110
+ var preloadedData = loaderPropsFromServerContext?.path === currentPath ? loaderDataFromServerContext : void 0,
111
+ loaderStateEntry = (0, import_react.useSyncExternalStore)(subscribe, function () {
112
+ return getLoaderState(currentPath, preloadedData);
113
+ }, function () {
114
+ return getLoaderState(currentPath, preloadedData);
115
+ }),
116
+ refetch = (0, import_react.useCallback)(function () {
117
+ return refetchLoader(currentPath);
118
+ }, [currentPath]);
119
+ if (!loader) return {
120
+ refetch,
121
+ state: loaderStateEntry.state
122
+ };
123
+ if (!loaderStateEntry.data && !loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce && loader) if (import_router.preloadingLoader[currentPath]) {
124
+ typeof import_router.preloadingLoader[currentPath] == "function" && (import_router.preloadingLoader[currentPath] = import_router.preloadingLoader[currentPath]());
125
+ var promise = import_router.preloadingLoader[currentPath].then(function (val) {
126
+ delete import_router.preloadingLoader[currentPath], updateState(currentPath, {
127
+ data: val,
128
+ hasLoadedOnce: !0,
129
+ promise: void 0
130
+ });
69
131
  }).catch(function (err) {
70
- console.error("Error loading loader", err), errors[currentPath] = err, delete promises[currentPath], delete import_router.preloadingLoader[currentPath];
71
- })), !promises[currentPath]) {
72
- var getData = async function () {
73
- var loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(currentPath, !0);
132
+ console.error("Error running loader()", err), delete import_router.preloadingLoader[currentPath], updateState(currentPath, {
133
+ error: err,
134
+ promise: void 0
135
+ });
136
+ });
137
+ loaderStateEntry.promise = promise;
138
+ } else {
139
+ var loadData = async function () {
74
140
  try {
75
- var response = await async function () {
76
- var nativeLoaderJSUrl = `${loaderJSUrl}?platform=ios`;
77
- try {
78
- var loaderJsCodeResp = await fetch(nativeLoaderJSUrl);
79
- if (!loaderJsCodeResp.ok) throw new Error(`Response not ok: ${loaderJsCodeResp.status}`);
80
- var loaderJsCode = await loaderJsCodeResp.text(),
81
- result = eval(`() => { var exports = {}; ${loaderJsCode}; return exports; }`)();
82
- if (typeof result.loader != "function") throw new Error("Loader code isn't exporting a `loader` function");
83
- return result;
84
- } catch (e) {
85
- return console.error(`Error fetching loader from URL: ${nativeLoaderJSUrl}, ${e}`), {
86
- loader: function () {
87
- return {};
88
- }
89
- };
90
- }
91
- return await (0, import_dynamicImport.dynamicImport)(loaderJSUrl);
92
- }();
93
- return loadedData[currentPath] = response.loader(), loadedData[currentPath];
141
+ var loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(currentPath, !0),
142
+ nativeLoaderJSUrl = `${loaderJSUrl}?platform=ios`;
143
+ try {
144
+ var loaderJsCodeResp = await fetch(nativeLoaderJSUrl);
145
+ if (!loaderJsCodeResp.ok) throw new Error(`Response not ok: ${loaderJsCodeResp.status}`);
146
+ var loaderJsCode = await loaderJsCodeResp.text(),
147
+ result = eval(`() => { var exports = {}; ${loaderJsCode}; return exports; }`)();
148
+ if (typeof result.loader != "function") throw new Error("Loader code isn't exporting a `loader` function");
149
+ var data = await result.loader();
150
+ updateState(currentPath, {
151
+ data,
152
+ hasLoadedOnce: !0,
153
+ promise: void 0
154
+ });
155
+ return;
156
+ } catch (e) {
157
+ updateState(currentPath, {
158
+ data: {},
159
+ promise: void 0
160
+ });
161
+ return;
162
+ }
163
+ var loaderJSUrl = (0, import_cleanUrl.getLoaderPath)(currentPath, !0),
164
+ module = await (0, import_dynamicImport.dynamicImport)(loaderJSUrl),
165
+ result = await module.loader();
166
+ updateState(currentPath, {
167
+ data: result,
168
+ hasLoadedOnce: !0,
169
+ promise: void 0
170
+ });
94
171
  } catch (err) {
95
- return console.error(`Error calling loader: ${err}`), errors[currentPath] = err, delete promises[currentPath], null;
172
+ updateState(currentPath, {
173
+ error: err,
174
+ promise: void 0
175
+ });
96
176
  }
97
- };
98
- promises[currentPath] = getData();
99
- }
100
- throw promises[currentPath];
177
+ },
178
+ promise = loadData();
179
+ loaderStateEntry.promise = promise;
101
180
  }
102
- return currentData.current;
181
+ if (loader) {
182
+ if (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.error;
183
+ if (loaderStateEntry.data === void 0 && loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.promise;
184
+ return {
185
+ data: loaderStateEntry.data,
186
+ refetch,
187
+ state: loaderStateEntry.state
188
+ };
189
+ } else return {
190
+ refetch,
191
+ state: loaderStateEntry.state
192
+ };
193
+ }
194
+ function useLoader(loader2) {
195
+ var {
196
+ data: data2
197
+ } = useLoaderState(loader2);
198
+ return data2;
103
199
  }
104
200
  var results = /* @__PURE__ */new Map(),
105
201
  started = /* @__PURE__ */new Map();
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useLoader_exports","__export","useLoader","module","exports","import_react","require","import_hooks","import_href","import_router","import_cleanUrl","import_dynamicImport","import_weakKey","import_one_server_only","_instanceof","left","right","Symbol","hasInstance","promises","errors","loadedData","loader","loaderProps","loaderPropsFromServerContext","loaderData","loaderDataFromServerContext","useServerContext","window","useAsyncFn","path","usePathname","params","useActiveParams","useParams","pathname","currentPath","resolveHref","replace","preloadedData","currentData","useRef","useEffect","loaded","preloadingLoader","then","val","catch","err","console","error","getData","loaderJSUrl","getLoaderPath","response","nativeLoaderJSUrl","loaderJsCodeResp","fetch","ok","Error","status","loaderJsCode","text","result","eval","e","dynamicImport"],"sources":["../../src/useLoader.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useLoader_exports","__export","refetchLoader","useLoader","useLoaderState","module","exports","import_react","require","import_hooks","import_href","import_router","import_cleanUrl","import_dynamicImport","import_weakKey","import_one_server_only","_instanceof","left","right","Symbol","hasInstance","loaderState","subscribers","Set","updateState","path","updates","forEach","callback","subscribe","add","delete","getLoaderState","preloadedData2","data","error","promise","state","hasLoadedOnce","pathname2","cacheBust","Date","now","loaderJSUrl2","getLoaderPath","module2","dynamicImport","result2","loader","timestamp","err","loaderProps","loaderPropsFromServerContext","loaderData","loaderDataFromServerContext","useServerContext","params","useParams","pathname","usePathname","currentPath","resolveHref","replace","window","serverData","useAsyncFn","refetch","preloadedData","loaderStateEntry","useSyncExternalStore","useCallback","preloadingLoader","then","val","catch","console","loadData","loaderJSUrl","nativeLoaderJSUrl","loaderJsCodeResp","fetch","ok","Error","status","loaderJsCode","text","result","eval","e"],"sources":["../../src/useLoader.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -36,13 +36,14 @@ const isClient = typeof window < "u",
36
36
  function getPreloadPath(currentPath) {
37
37
  return `${clientSideURL}/assets/${cleanUrl(currentPath.slice(1))}${import_constants.PRELOAD_JS_POSTFIX}`;
38
38
  }
39
- function getLoaderPath(currentPath, includeUrl = import_constants.isNative) {
39
+ function getLoaderPath(currentPath, includeUrl = import_constants.isNative, cacheBust) {
40
40
  const baseURL = includeUrl ? (0, import_getURL.getURL)() : "",
41
41
  devPath = process.env.NODE_ENV === "development" ? "/_one" : "",
42
- currentPathUrl = new URL(currentPath, "http://example.com"
43
- /* not important, just for `new URL()` to work */);
44
- return `${baseURL}${devPath}/assets/${cleanUrl(currentPathUrl.pathname.slice(1))}${import_constants.LOADER_JS_POSTFIX}`;
42
+ currentPathUrl = new URL(currentPath, "http://example.com"),
43
+ cleanedUrl = cleanUrl(currentPathUrl.pathname.slice(1)),
44
+ cacheBustSegment = cacheBust ? `_refetch_${cacheBust}_` : "";
45
+ return `${baseURL}${devPath}/assets/${cleanedUrl}${cacheBustSegment}${import_constants.LOADER_JS_POSTFIX}`;
45
46
  }
46
47
  function getPathFromLoaderPath(loaderPath) {
47
- return loaderPath.replace(import_constants.LOADER_JS_POSTFIX_REGEX, "").replace(/^(\/_one)?\/assets/, "").replaceAll(/_/g, "/");
48
+ return loaderPath.replace(import_constants.LOADER_JS_POSTFIX_REGEX, "").replace(/^(\/_one)?\/assets/, "").replace(/_refetch_\d+_/, "").replaceAll(/_/g, "/");
48
49
  }
@@ -27,15 +27,11 @@ const isClient = typeof window < "u", clientSideURL = isClient ? (0, import_getU
27
27
  function getPreloadPath(currentPath) {
28
28
  return `${clientSideURL}/assets/${cleanUrl(currentPath.slice(1))}${import_constants.PRELOAD_JS_POSTFIX}`;
29
29
  }
30
- function getLoaderPath(currentPath, includeUrl = import_constants.isNative) {
31
- const baseURL = includeUrl ? (0, import_getURL.getURL)() : "", devPath = process.env.NODE_ENV === "development" ? "/_one" : "", currentPathUrl = new URL(
32
- currentPath,
33
- "http://example.com"
34
- /* not important, just for `new URL()` to work */
35
- );
36
- return `${baseURL}${devPath}/assets/${cleanUrl(currentPathUrl.pathname.slice(1))}${import_constants.LOADER_JS_POSTFIX}`;
30
+ function getLoaderPath(currentPath, includeUrl = import_constants.isNative, cacheBust) {
31
+ const baseURL = includeUrl ? (0, import_getURL.getURL)() : "", devPath = process.env.NODE_ENV === "development" ? "/_one" : "", currentPathUrl = new URL(currentPath, "http://example.com"), cleanedUrl = cleanUrl(currentPathUrl.pathname.slice(1)), cacheBustSegment = cacheBust ? `_refetch_${cacheBust}_` : "";
32
+ return `${baseURL}${devPath}/assets/${cleanedUrl}${cacheBustSegment}${import_constants.LOADER_JS_POSTFIX}`;
37
33
  }
38
34
  function getPathFromLoaderPath(loaderPath) {
39
- return loaderPath.replace(import_constants.LOADER_JS_POSTFIX_REGEX, "").replace(/^(\/_one)?\/assets/, "").replaceAll(/_/g, "/");
35
+ return loaderPath.replace(import_constants.LOADER_JS_POSTFIX_REGEX, "").replace(/^(\/_one)?\/assets/, "").replace(/_refetch_\d+_/, "").replaceAll(/_/g, "/");
40
36
  }
41
37
  //# sourceMappingURL=cleanUrl.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/utils/cleanUrl.ts"],
4
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAKO,yBACP,gBAAuB,sBACvB,sBAA6B;AAE7B,SAAS,SAAS,MAAc;AAC9B,aACE,kCAAa,IAAI,EACd,WAAW,KAAK,GAAG,EAEnB,QAAQ,MAAM,EAAE;AAEvB;AAEA,MAAM,WAAW,OAAO,SAAW,KAC7B,gBAAgB,eAAW,sBAAO,IAAI;AAErC,SAAS,eAAe,aAAqB;AAClD,SAAO,GAAG,aAAa,WAAW,SAAS,YAAY,MAAM,CAAC,CAAC,CAAC,GAAG,mCAAkB;AACvF;AAEO,SAAS,cACd,aAEA,aAAa,2BACb;AACA,QAAM,UAAU,iBAAa,sBAAO,IAAI,IAClC,UAAU,QAAQ,IAAI,aAAa,gBAAgB,UAAU,IAE7D,iBAAiB,IAAI;AAAA,IACzB;AAAA,IACA;AAAA;AAAA,EACF;AAEA,SAAO,GAAG,OAAO,GAAG,OAAO,WAAW,SAAS,eAAe,SAAS,MAAM,CAAC,CAAC,CAAC,GAAG,kCAAiB;AACtG;AAEO,SAAS,sBAAsB,YAAoB;AACxD,SAAO,WACJ,QAAQ,0CAAyB,EAAE,EACnC,QAAQ,sBAAsB,EAAE,EAChC,WAAW,MAAM,GAAG;AACzB;",
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAKO,yBACP,gBAAuB,sBACvB,sBAA6B;AAE7B,SAAS,SAAS,MAAc;AAC9B,aACE,kCAAa,IAAI,EACd,WAAW,KAAK,GAAG,EAEnB,QAAQ,MAAM,EAAE;AAEvB;AAEA,MAAM,WAAW,OAAO,SAAW,KAC7B,gBAAgB,eAAW,sBAAO,IAAI;AAErC,SAAS,eAAe,aAAqB;AAClD,SAAO,GAAG,aAAa,WAAW,SAAS,YAAY,MAAM,CAAC,CAAC,CAAC,GAAG,mCAAkB;AACvF;AAEO,SAAS,cAAc,aAAqB,aAAa,2BAAU,WAAoB;AAC5F,QAAM,UAAU,iBAAa,sBAAO,IAAI,IAClC,UAAU,QAAQ,IAAI,aAAa,gBAAgB,UAAU,IAE7D,iBAAiB,IAAI,IAAI,aAAa,oBAAoB,GAE1D,aAAa,SAAS,eAAe,SAAS,MAAM,CAAC,CAAC,GACtD,mBAAmB,YAAY,YAAY,SAAS,MAAM;AAEhE,SAAO,GAAG,OAAO,GAAG,OAAO,WAAW,UAAU,GAAG,gBAAgB,GAAG,kCAAiB;AACzF;AAEO,SAAS,sBAAsB,YAAoB;AACxD,SAAO,WACJ,QAAQ,0CAAyB,EAAE,EACnC,QAAQ,sBAAsB,EAAE,EAChC,QAAQ,iBAAiB,EAAE,EAC3B,WAAW,MAAM,GAAG;AACzB;",
5
5
  "names": []
6
6
  }
@@ -40,12 +40,15 @@ function getPreloadPath(currentPath) {
40
40
  }
41
41
  function getLoaderPath(currentPath) {
42
42
  var includeUrl = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : import_constants.isNative,
43
+ cacheBust = arguments.length > 2 ? arguments[2] : void 0,
43
44
  baseURL = includeUrl ? (0, import_getURL.getURL)() : "",
44
45
  devPath = process.env.NODE_ENV === "development" ? "/_one" : "",
45
- currentPathUrl = new URL(currentPath, "http://example.com");
46
- return `${baseURL}${devPath}/assets/${cleanUrl(currentPathUrl.pathname.slice(1))}${import_constants.LOADER_JS_POSTFIX}`;
46
+ currentPathUrl = new URL(currentPath, "http://example.com"),
47
+ cleanedUrl = cleanUrl(currentPathUrl.pathname.slice(1)),
48
+ cacheBustSegment = cacheBust ? `_refetch_${cacheBust}_` : "";
49
+ return `${baseURL}${devPath}/assets/${cleanedUrl}${cacheBustSegment}${import_constants.LOADER_JS_POSTFIX}`;
47
50
  }
48
51
  function getPathFromLoaderPath(loaderPath) {
49
- return loaderPath.replace(import_constants.LOADER_JS_POSTFIX_REGEX, "").replace(/^(\/_one)?\/assets/, "").replaceAll(/_/g, "/");
52
+ return loaderPath.replace(import_constants.LOADER_JS_POSTFIX_REGEX, "").replace(/^(\/_one)?\/assets/, "").replace(/_refetch_\d+_/, "").replaceAll(/_/g, "/");
50
53
  }
51
54
  //# sourceMappingURL=cleanUrl.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","cleanUrl_exports","__export","getLoaderPath","getPathFromLoaderPath","getPreloadPath","module","exports","import_constants","require","import_getURL","import_removeSearch","cleanUrl","path","removeSearch","replaceAll","replace","isClient","window","clientSideURL","getURL","currentPath","slice","PRELOAD_JS_POSTFIX","includeUrl","arguments","length","isNative","baseURL","devPath","process","env","NODE_ENV","currentPathUrl","URL","pathname","LOADER_JS_POSTFIX","loaderPath","LOADER_JS_POSTFIX_REGEX"],"sources":["../../../src/utils/cleanUrl.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,gBAAA;AAAAC,QAAA,CAAAD,gBAAA;EAAAE,aAAA,EAAAA,CAAA,KAAAA,aAAA;EAAAC,qBAAA,EAAAA,CAAA,KAAAA,qBAAA;EAAAC,cAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAX,YAKO,CAAAK,gBAAA;AAIP,IAAAO,gBAAkB,GAAAC,OAAc;EAAAC,aAAA,GAAAD,OAAA;EAAAE,mBAAA,GAAAF,OAAA;AAC9B,SAAAG,QACEA,CAAAC,IAAA;EAKJ,WAAAF,mBAAA,CAAAG,YAAA,EAAAD,IAAA,EAAAE,UAAA,WAAAC,OAAA;AAEA;AAGO,IAAAC,QAAS,UAAAC,MAAe;EAAAC,aAAqB,GAAAF,QAAA,OAAAP,aAAA,CAAAU,MAAA;AAClD,SAAOf,cAAGA,CAAAgB,WAAa,EAAW;EACpC,UAAAF,aAAA,WAAAP,QAAA,CAAAS,WAAA,CAAAC,KAAA,OAAAd,gBAAA,CAAAe,kBAAA;AAEO;AAKL,SAAMpB,aAAUA,CAAAkB,WAAA,EAAa;EAGF,IACzBG,UAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA,MAAAjB,gBAAA,CAAAmB,QAAA;IAAAC,OAAA,GAAAJ,UAAA,OAAAd,aAAA,CAAAU,MAAA;IAAAS,OAAA,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA;IAAAC,cAAA,OAAAC,GAAA,CAAAb,WAAA;EAAA,OACA,GAAAO,OAAA,GAAAC,OAAA,WAAAjB,QAAA,CAAAqB,cAAA,CAAAE,QAAA,CAAAb,KAAA,OAAAd,gBAAA,CAAA4B,iBAAA;AAAA;AAAA,SACFhC,sBAAAiC,UAAA;EAEA,OAAOA,UAAU,CAAArB,OAAG,CAAAR,gBAAkB,CAAA8B,uBAAwB,KAAS,CAAAtB,OAAQ,CAAC,oBAAG,MAAAD,UAAA,CAAiB;AACtG","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","cleanUrl_exports","__export","getLoaderPath","getPathFromLoaderPath","getPreloadPath","module","exports","import_constants","require","import_getURL","import_removeSearch","cleanUrl","path","removeSearch","replaceAll","replace","isClient","window","clientSideURL","getURL","currentPath","slice","PRELOAD_JS_POSTFIX","includeUrl","arguments","length","isNative","cacheBust","baseURL","devPath","process","env","NODE_ENV","currentPathUrl","URL","cleanedUrl","pathname","cacheBustSegment","LOADER_JS_POSTFIX","loaderPath","LOADER_JS_POSTFIX_REGEX"],"sources":["../../../src/utils/cleanUrl.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,gBAAA;AAAAC,QAAA,CAAAD,gBAAA;EAAAE,aAAA,EAAAA,CAAA,KAAAA,aAAA;EAAAC,qBAAA,EAAAA,CAAA,KAAAA,qBAAA;EAAAC,cAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAX,YAKO,CAAAK,gBAAA;AAIP,IAAAO,gBAAkB,GAAAC,OAAc;EAAAC,aAAA,GAAAD,OAAA;EAAAE,mBAAA,GAAAF,OAAA;AAC9B,SAAAG,QACEA,CAAAC,IAAA;EAKJ,WAAAF,mBAAA,CAAAG,YAAA,EAAAD,IAAA,EAAAE,UAAA,WAAAC,OAAA;AAEA;AAGO,IAAAC,QAAS,UAAAC,MAAe;EAAAC,aAAqB,GAAAF,QAAA,OAAAP,aAAA,CAAAU,MAAA;AAClD,SAAOf,cAAGA,CAAAgB,WAAa,EAAW;EACpC,UAAAF,aAAA,WAAAP,QAAA,CAAAS,WAAA,CAAAC,KAAA,OAAAd,gBAAA,CAAAe,kBAAA;AAEO;AACL,SAAMpB,aAAUA,CAAAkB,WAAA,EAAa;EAQ7B,IAAAG,UAAU,GAAOC,SAAG,CAAOC,MAAA,QAAWD,SAAU,CAAG,gBAAgBA,SAAG,MAAAjB,gBAAA,CAAAmB,QAAiB;IAAAC,SAAA,GAAAH,SAAA,CAAAC,MAAA,OAAAD,SAAA;IAAAI,OAAA,GAAAL,UAAA,OAAAd,aAAA,CAAAU,MAAA;IAAAU,OAAA,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA;IAAAC,cAAA,OAAAC,GAAA,CAAAd,WAAA;IAAAe,UAAA,GAAAxB,QAAA,CAAAsB,cAAA,CAAAG,QAAA,CAAAf,KAAA;IAAAgB,gBAAA,GAAAV,SAAA,eAAAA,SAAA;EACzF,UAAAC,OAAA,GAAAC,OAAA,WAAAM,UAAA,GAAAE,gBAAA,GAAA9B,gBAAA,CAAA+B,iBAAA;AAEO;AACL,SAAOnC,qBACIA,CAAAoC,UAAA;EAIb,OAAAA,UAAA,CAAAxB,OAAA,CAAAR,gBAAA,CAAAiC,uBAAA,MAAAzB,OAAA,2BAAAA,OAAA,sBAAAD,UAAA","ignoreList":[]}
@@ -32,6 +32,7 @@ async function resolveAPIRoute(handlers, request, url, route) {
32
32
  url,
33
33
  loaderProps: {
34
34
  path: pathname,
35
+ search: url.search,
35
36
  params
36
37
  }
37
38
  }),
@@ -62,6 +63,7 @@ async function resolveLoaderRoute(handlers, request, url, route) {
62
63
  url,
63
64
  loaderProps: {
64
65
  path: url.pathname,
66
+ search: url.search,
65
67
  request: route.type === "ssr" ? request : void 0,
66
68
  params: getLoaderParams(url, route)
67
69
  }
@@ -83,7 +85,8 @@ async function resolvePageRoute(handlers, request, url, route) {
83
85
  route,
84
86
  url,
85
87
  loaderProps: {
86
- path: pathname + search,
88
+ path: pathname,
89
+ search,
87
90
  // Ensure SSR loaders receive the original request
88
91
  request: route.type === "ssr" ? request : void 0,
89
92
  params: getLoaderParams(url, route)
@@ -133,8 +136,10 @@ function createHandleRequest(handlers, { routerRoot }) {
133
136
  if (route.file === "")
134
137
  continue;
135
138
  const finalUrl = new URL(originalUrl, url.origin);
136
- if (finalUrl.search = url.search, !!route.compiledRegex.test(finalUrl.pathname))
137
- return resolveLoaderRoute(handlers, request, finalUrl, route);
139
+ if (finalUrl.search = url.search, !route.compiledRegex.test(finalUrl.pathname))
140
+ continue;
141
+ const cleanedRequest = new Request(finalUrl, request);
142
+ return resolveLoaderRoute(handlers, cleanedRequest, finalUrl, route);
138
143
  }
139
144
  return process.env.NODE_ENV === "development" && console.error("No matching route found for loader!", {
140
145
  originalUrl,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createHandleRequest.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }