@modern-js/runtime 2.35.1 → 2.37.0

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 (261) hide show
  1. package/dist/cjs/cli/index.js +48 -30
  2. package/dist/cjs/common.js +27 -18
  3. package/dist/cjs/config.js +15 -3
  4. package/dist/cjs/core/appConfig.js +25 -15
  5. package/dist/cjs/core/compatible.js +60 -43
  6. package/dist/cjs/core/index.js +47 -40
  7. package/dist/cjs/core/loader/index.js +35 -9
  8. package/dist/cjs/core/loader/loaderManager.js +37 -18
  9. package/dist/cjs/core/loader/useLoader.js +45 -23
  10. package/dist/cjs/core/plugin.js +39 -31
  11. package/dist/cjs/core/types.js +15 -3
  12. package/dist/cjs/document/Body.js +35 -19
  13. package/dist/cjs/document/Comment.js +29 -14
  14. package/dist/cjs/document/DocumentContext.js +36 -10
  15. package/dist/cjs/document/DocumentStructureContext.js +36 -10
  16. package/dist/cjs/document/Head.js +40 -31
  17. package/dist/cjs/document/Html.js +34 -19
  18. package/dist/cjs/document/Links.js +28 -13
  19. package/dist/cjs/document/Root.js +37 -28
  20. package/dist/cjs/document/Script.js +29 -14
  21. package/dist/cjs/document/Scripts.js +28 -13
  22. package/dist/cjs/document/Style.js +29 -14
  23. package/dist/cjs/document/cli/index.js +68 -51
  24. package/dist/cjs/document/constants.js +64 -72
  25. package/dist/cjs/document/index.js +42 -15
  26. package/dist/cjs/exports/head.js +38 -11
  27. package/dist/cjs/exports/loadable.js +38 -11
  28. package/dist/cjs/exports/server.js +24 -7
  29. package/dist/cjs/exports/styled.js +38 -11
  30. package/dist/cjs/index.js +41 -38
  31. package/dist/cjs/router/cli/index.js +31 -22
  32. package/dist/cjs/router/index.js +39 -18
  33. package/dist/cjs/router/runtime/DefaultNotFound.js +26 -11
  34. package/dist/cjs/router/runtime/DeferredDataScripts.js +21 -8
  35. package/dist/cjs/router/runtime/DeferredDataScripts.node.js +47 -34
  36. package/dist/cjs/router/runtime/PrefetchLink.js +81 -47
  37. package/dist/cjs/router/runtime/fetch.js +24 -7
  38. package/dist/cjs/router/runtime/fetch.node.js +25 -8
  39. package/dist/cjs/router/runtime/fetch.worker.js +24 -7
  40. package/dist/cjs/router/runtime/hooks.js +26 -9
  41. package/dist/cjs/router/runtime/index.js +158 -208
  42. package/dist/cjs/router/runtime/plugin.js +62 -46
  43. package/dist/cjs/router/runtime/plugin.node.js +65 -48
  44. package/dist/cjs/router/runtime/server.js +20 -4
  45. package/dist/cjs/router/runtime/shouldRevalidate.js +38 -0
  46. package/dist/cjs/router/runtime/types.js +15 -3
  47. package/dist/cjs/router/runtime/utils.js +61 -48
  48. package/dist/cjs/router/runtime/withRouter.js +30 -15
  49. package/dist/cjs/runtimeContext.js +28 -18
  50. package/dist/cjs/ssr/cli/babel-plugin-ssr-loader-id.js +40 -23
  51. package/dist/cjs/ssr/cli/index.js +48 -30
  52. package/dist/cjs/ssr/cli/loadable-bundler-plugin.js +31 -13
  53. package/dist/cjs/ssr/index.js +71 -52
  54. package/dist/cjs/ssr/index.node.js +44 -25
  55. package/dist/cjs/ssr/prefetch.js +29 -16
  56. package/dist/cjs/ssr/react/index.js +27 -17
  57. package/dist/cjs/ssr/react/nossr/index.js +38 -12
  58. package/dist/cjs/ssr/react/prerender/index.js +52 -27
  59. package/dist/cjs/ssr/react/prerender/type.js +15 -3
  60. package/dist/cjs/ssr/react/prerender/util.js +31 -24
  61. package/dist/cjs/ssr/react/withCallback/index.js +27 -11
  62. package/dist/cjs/ssr/serverRender/helmet.js +23 -15
  63. package/dist/cjs/ssr/serverRender/index.js +24 -11
  64. package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +30 -13
  65. package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.share.js +25 -15
  66. package/dist/cjs/ssr/serverRender/renderToStream/bulidTemplate.before.js +46 -20
  67. package/dist/cjs/ssr/serverRender/renderToStream/index.js +49 -23
  68. package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +30 -17
  69. package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +30 -17
  70. package/dist/cjs/ssr/serverRender/renderToStream/template.js +28 -11
  71. package/dist/cjs/ssr/serverRender/renderToString/buildHtml.js +31 -24
  72. package/dist/cjs/ssr/serverRender/renderToString/entry.js +81 -59
  73. package/dist/cjs/ssr/serverRender/renderToString/index.js +44 -18
  74. package/dist/cjs/ssr/serverRender/renderToString/loadable.js +33 -16
  75. package/dist/cjs/ssr/serverRender/renderToString/render.js +39 -13
  76. package/dist/cjs/ssr/serverRender/renderToString/styledComponent.js +28 -11
  77. package/dist/cjs/ssr/serverRender/renderToString/type.js +24 -7
  78. package/dist/cjs/ssr/serverRender/tracker.js +27 -18
  79. package/dist/cjs/ssr/serverRender/types.js +25 -8
  80. package/dist/cjs/ssr/serverRender/utils.js +31 -24
  81. package/dist/cjs/ssr/utils.js +42 -25
  82. package/dist/cjs/state/cli/index.js +28 -19
  83. package/dist/cjs/state/index.js +39 -18
  84. package/dist/cjs/state/plugins.js +46 -29
  85. package/dist/cjs/state/runtime/index.js +39 -11
  86. package/dist/cjs/state/runtime/plugin.js +55 -28
  87. package/dist/esm/cli/index.js +6 -2
  88. package/dist/esm/common.js +8 -3
  89. package/dist/esm/config.js +0 -1
  90. package/dist/esm/core/appConfig.js +6 -2
  91. package/dist/esm/core/compatible.js +20 -15
  92. package/dist/esm/core/index.js +13 -3
  93. package/dist/esm/core/loader/index.js +4 -1
  94. package/dist/esm/core/loader/loaderManager.js +13 -9
  95. package/dist/esm/core/loader/useLoader.js +5 -2
  96. package/dist/esm/core/plugin.js +15 -10
  97. package/dist/esm/core/types.js +0 -1
  98. package/dist/esm/document/Body.js +4 -1
  99. package/dist/esm/document/Comment.js +4 -1
  100. package/dist/esm/document/DocumentContext.js +4 -1
  101. package/dist/esm/document/DocumentStructureContext.js +4 -1
  102. package/dist/esm/document/Head.js +6 -2
  103. package/dist/esm/document/Html.js +9 -6
  104. package/dist/esm/document/Links.js +4 -1
  105. package/dist/esm/document/Root.js +6 -2
  106. package/dist/esm/document/Script.js +4 -1
  107. package/dist/esm/document/Scripts.js +4 -1
  108. package/dist/esm/document/Style.js +4 -1
  109. package/dist/esm/document/cli/index.js +14 -9
  110. package/dist/esm/document/constants.js +42 -20
  111. package/dist/esm/exports/head.js +4 -1
  112. package/dist/esm/exports/loadable.js +4 -1
  113. package/dist/esm/exports/server.js +4 -1
  114. package/dist/esm/exports/styled.js +4 -1
  115. package/dist/esm/index.js +13 -2
  116. package/dist/esm/router/cli/index.js +11 -7
  117. package/dist/esm/router/index.js +6 -2
  118. package/dist/esm/router/runtime/DefaultNotFound.js +4 -1
  119. package/dist/esm/router/runtime/DeferredDataScripts.js +4 -1
  120. package/dist/esm/router/runtime/DeferredDataScripts.node.js +10 -7
  121. package/dist/esm/router/runtime/PrefetchLink.js +31 -11
  122. package/dist/esm/router/runtime/fetch.js +3 -1
  123. package/dist/esm/router/runtime/fetch.node.js +3 -1
  124. package/dist/esm/router/runtime/fetch.worker.js +3 -1
  125. package/dist/esm/router/runtime/hooks.js +3 -1
  126. package/dist/esm/router/runtime/index.js +72 -6
  127. package/dist/esm/router/runtime/plugin.js +22 -16
  128. package/dist/esm/router/runtime/plugin.node.js +20 -15
  129. package/dist/esm/router/runtime/shouldRevalidate.js +14 -0
  130. package/dist/esm/router/runtime/types.js +0 -1
  131. package/dist/esm/router/runtime/utils.js +23 -14
  132. package/dist/esm/router/runtime/withRouter.js +7 -4
  133. package/dist/esm/runtimeContext.js +6 -2
  134. package/dist/esm/ssr/cli/babel-plugin-ssr-loader-id.js +107 -98
  135. package/dist/esm/ssr/cli/index.js +17 -13
  136. package/dist/esm/ssr/cli/loadable-bundler-plugin.js +105 -96
  137. package/dist/esm/ssr/index.js +18 -14
  138. package/dist/esm/ssr/index.node.js +14 -10
  139. package/dist/esm/ssr/prefetch.js +7 -4
  140. package/dist/esm/ssr/react/index.js +6 -2
  141. package/dist/esm/ssr/react/nossr/index.js +4 -1
  142. package/dist/esm/ssr/react/prerender/index.js +4 -1
  143. package/dist/esm/ssr/react/prerender/type.js +0 -1
  144. package/dist/esm/ssr/react/prerender/util.js +12 -5
  145. package/dist/esm/ssr/react/withCallback/index.js +4 -1
  146. package/dist/esm/ssr/serverRender/helmet.js +4 -1
  147. package/dist/esm/ssr/serverRender/index.js +4 -1
  148. package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +7 -4
  149. package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
  150. package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +4 -1
  151. package/dist/esm/ssr/serverRender/renderToStream/index.js +4 -1
  152. package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +4 -1
  153. package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +4 -1
  154. package/dist/esm/ssr/serverRender/renderToStream/template.js +6 -3
  155. package/dist/esm/ssr/serverRender/renderToString/buildHtml.js +12 -5
  156. package/dist/esm/ssr/serverRender/renderToString/entry.js +5 -3
  157. package/dist/esm/ssr/serverRender/renderToString/index.js +6 -3
  158. package/dist/esm/ssr/serverRender/renderToString/loadable.js +5 -2
  159. package/dist/esm/ssr/serverRender/renderToString/render.js +4 -1
  160. package/dist/esm/ssr/serverRender/renderToString/styledComponent.js +4 -1
  161. package/dist/esm/ssr/serverRender/renderToString/type.js +4 -1
  162. package/dist/esm/ssr/serverRender/tracker.js +8 -3
  163. package/dist/esm/ssr/serverRender/types.js +3 -1
  164. package/dist/esm/ssr/serverRender/utils.js +12 -5
  165. package/dist/esm/ssr/utils.js +13 -7
  166. package/dist/esm/state/cli/index.js +10 -6
  167. package/dist/esm/state/index.js +6 -2
  168. package/dist/esm/state/plugins.js +10 -4
  169. package/dist/esm/state/runtime/index.js +4 -1
  170. package/dist/esm/state/runtime/plugin.js +10 -7
  171. package/dist/esm-node/cli/index.js +6 -2
  172. package/dist/esm-node/common.js +8 -3
  173. package/dist/esm-node/config.js +0 -1
  174. package/dist/esm-node/core/appConfig.js +6 -2
  175. package/dist/esm-node/core/compatible.js +8 -3
  176. package/dist/esm-node/core/index.js +13 -3
  177. package/dist/esm-node/core/loader/index.js +4 -1
  178. package/dist/esm-node/core/loader/loaderManager.js +6 -2
  179. package/dist/esm-node/core/loader/useLoader.js +4 -1
  180. package/dist/esm-node/core/plugin.js +9 -4
  181. package/dist/esm-node/core/types.js +0 -1
  182. package/dist/esm-node/document/Body.js +4 -1
  183. package/dist/esm-node/document/Comment.js +4 -1
  184. package/dist/esm-node/document/DocumentContext.js +4 -1
  185. package/dist/esm-node/document/DocumentStructureContext.js +4 -1
  186. package/dist/esm-node/document/Head.js +6 -2
  187. package/dist/esm-node/document/Html.js +4 -1
  188. package/dist/esm-node/document/Links.js +4 -1
  189. package/dist/esm-node/document/Root.js +6 -2
  190. package/dist/esm-node/document/Script.js +4 -1
  191. package/dist/esm-node/document/Scripts.js +4 -1
  192. package/dist/esm-node/document/Style.js +4 -1
  193. package/dist/esm-node/document/cli/index.js +8 -3
  194. package/dist/esm-node/document/constants.js +42 -20
  195. package/dist/esm-node/exports/head.js +4 -1
  196. package/dist/esm-node/exports/loadable.js +4 -1
  197. package/dist/esm-node/exports/server.js +4 -1
  198. package/dist/esm-node/exports/styled.js +4 -1
  199. package/dist/esm-node/index.js +13 -2
  200. package/dist/esm-node/router/cli/index.js +6 -2
  201. package/dist/esm-node/router/index.js +6 -2
  202. package/dist/esm-node/router/runtime/DefaultNotFound.js +4 -1
  203. package/dist/esm-node/router/runtime/DeferredDataScripts.js +4 -1
  204. package/dist/esm-node/router/runtime/DeferredDataScripts.node.js +4 -1
  205. package/dist/esm-node/router/runtime/PrefetchLink.js +27 -7
  206. package/dist/esm-node/router/runtime/fetch.js +3 -1
  207. package/dist/esm-node/router/runtime/fetch.node.js +3 -1
  208. package/dist/esm-node/router/runtime/fetch.worker.js +3 -1
  209. package/dist/esm-node/router/runtime/hooks.js +3 -1
  210. package/dist/esm-node/router/runtime/index.js +72 -6
  211. package/dist/esm-node/router/runtime/plugin.js +10 -4
  212. package/dist/esm-node/router/runtime/plugin.node.js +8 -3
  213. package/dist/esm-node/router/runtime/shouldRevalidate.js +14 -0
  214. package/dist/esm-node/router/runtime/types.js +0 -1
  215. package/dist/esm-node/router/runtime/utils.js +16 -7
  216. package/dist/esm-node/router/runtime/withRouter.js +4 -1
  217. package/dist/esm-node/runtimeContext.js +6 -2
  218. package/dist/esm-node/ssr/cli/babel-plugin-ssr-loader-id.js +108 -99
  219. package/dist/esm-node/ssr/cli/index.js +6 -2
  220. package/dist/esm-node/ssr/cli/loadable-bundler-plugin.js +92 -83
  221. package/dist/esm-node/ssr/index.js +6 -2
  222. package/dist/esm-node/ssr/index.node.js +6 -2
  223. package/dist/esm-node/ssr/prefetch.js +4 -1
  224. package/dist/esm-node/ssr/react/index.js +6 -2
  225. package/dist/esm-node/ssr/react/nossr/index.js +4 -1
  226. package/dist/esm-node/ssr/react/prerender/index.js +4 -1
  227. package/dist/esm-node/ssr/react/prerender/type.js +0 -1
  228. package/dist/esm-node/ssr/react/prerender/util.js +12 -5
  229. package/dist/esm-node/ssr/react/withCallback/index.js +4 -1
  230. package/dist/esm-node/ssr/serverRender/helmet.js +4 -1
  231. package/dist/esm-node/ssr/serverRender/index.js +4 -1
  232. package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +4 -1
  233. package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
  234. package/dist/esm-node/ssr/serverRender/renderToStream/bulidTemplate.before.js +4 -1
  235. package/dist/esm-node/ssr/serverRender/renderToStream/index.js +4 -1
  236. package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +4 -1
  237. package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +4 -1
  238. package/dist/esm-node/ssr/serverRender/renderToStream/template.js +4 -1
  239. package/dist/esm-node/ssr/serverRender/renderToString/buildHtml.js +12 -5
  240. package/dist/esm-node/ssr/serverRender/renderToString/entry.js +3 -1
  241. package/dist/esm-node/ssr/serverRender/renderToString/index.js +4 -1
  242. package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +4 -1
  243. package/dist/esm-node/ssr/serverRender/renderToString/render.js +4 -1
  244. package/dist/esm-node/ssr/serverRender/renderToString/styledComponent.js +4 -1
  245. package/dist/esm-node/ssr/serverRender/renderToString/type.js +4 -1
  246. package/dist/esm-node/ssr/serverRender/tracker.js +8 -3
  247. package/dist/esm-node/ssr/serverRender/types.js +3 -1
  248. package/dist/esm-node/ssr/serverRender/utils.js +12 -5
  249. package/dist/esm-node/ssr/utils.js +10 -4
  250. package/dist/esm-node/state/cli/index.js +6 -2
  251. package/dist/esm-node/state/index.js +6 -2
  252. package/dist/esm-node/state/plugins.js +10 -4
  253. package/dist/esm-node/state/runtime/index.js +4 -1
  254. package/dist/esm-node/state/runtime/plugin.js +4 -1
  255. package/dist/types/router/runtime/index.d.ts +1 -0
  256. package/dist/types/router/runtime/shouldRevalidate.d.ts +2 -0
  257. package/package.json +10 -12
  258. package/dist/cjs/state/types.js +0 -4
  259. package/dist/esm/state/types.js +0 -1
  260. package/dist/esm-node/state/types.js +0 -1
  261. package/dist/types/state/types.d.ts +0 -16
@@ -9,14 +9,14 @@ var server = createAsyncPipeline();
9
9
  var init = createAsyncPipeline();
10
10
  var pickContext = createPipeline();
11
11
  var runtimeHooks = {
12
- hoc: hoc,
13
- provide: provide,
14
- client: client,
15
- server: server,
16
- init: init,
17
- pickContext: pickContext
12
+ hoc,
13
+ provide,
14
+ client,
15
+ server,
16
+ init,
17
+ pickContext
18
18
  };
19
- export var createRuntime = function() {
19
+ var createRuntime = function() {
20
20
  return createManager(runtimeHooks);
21
21
  };
22
22
  var registerInit = function(App, _init) {
@@ -49,6 +49,11 @@ var registerInit = function(App, _init) {
49
49
  };
50
50
  }();
51
51
  };
52
- export var runtime = createRuntime();
53
- export var createPlugin = runtime.createPlugin;
54
- export { registerInit };
52
+ var runtime = createRuntime();
53
+ var createPlugin = runtime.createPlugin;
54
+ export {
55
+ createPlugin,
56
+ createRuntime,
57
+ registerInit,
58
+ runtime
59
+ };
@@ -1 +0,0 @@
1
- export {};
@@ -6,7 +6,7 @@ import { useContext } from "react";
6
6
  import { BODY_PARTICALS_SEPARATOR, DOCUMENT_CHUNKSMAP_PLACEHOLDER, DOCUMENT_SSRDATASCRIPT_PLACEHOLDER } from "./constants";
7
7
  import { DocumentStructureContext } from "./DocumentStructureContext";
8
8
  import { DefaultRoot } from "./Root";
9
- export function Body(props) {
9
+ function Body(props) {
10
10
  var hasSetRoot = useContext(DocumentStructureContext).hasSetRoot;
11
11
  var children = props.children, rest = _object_without_properties(props, [
12
12
  "children"
@@ -21,3 +21,6 @@ export function Body(props) {
21
21
  ]
22
22
  }));
23
23
  }
24
+ export {
25
+ Body
26
+ };
@@ -1,6 +1,6 @@
1
1
  import { jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { DOCUMENT_COMMENT_PLACEHOLDER_START, DOCUMENT_COMMENT_PLACEHOLDER_END } from "./constants";
3
- export function Comment(props) {
3
+ function Comment(props) {
4
4
  var comment = props.comment, children = props.children;
5
5
  var commentStr = encodeURIComponent(children || comment || "");
6
6
  return /* @__PURE__ */ _jsxs(_Fragment, {
@@ -11,3 +11,6 @@ export function Comment(props) {
11
11
  ]
12
12
  });
13
13
  }
14
+ export {
15
+ Comment
16
+ };
@@ -1,6 +1,9 @@
1
1
  import React from "react";
2
- export var DocumentContext = /* @__PURE__ */ React.createContext({
2
+ var DocumentContext = /* @__PURE__ */ React.createContext({
3
3
  config: {},
4
4
  templateParams: {},
5
5
  processEnv: {}
6
6
  });
7
+ export {
8
+ DocumentContext
9
+ };
@@ -1,8 +1,11 @@
1
1
  import React from "react";
2
- export var DocumentStructureContext = /* @__PURE__ */ React.createContext({
2
+ var DocumentStructureContext = /* @__PURE__ */ React.createContext({
3
3
  hasSetHead: false,
4
4
  hasSetScripts: false,
5
5
  hasSetBody: false,
6
6
  hasSetRoot: false,
7
7
  hasSetLinks: false
8
8
  });
9
+ export {
10
+ DocumentStructureContext
11
+ };
@@ -7,7 +7,7 @@ import { DocumentStructureContext } from "./DocumentStructureContext";
7
7
  import { Scripts } from "./Scripts";
8
8
  import { Links } from "./Links";
9
9
  import { DOCUMENT_META_PLACEHOLDER, HEAD_PARTICALS_SEPARATOR, TOP_PARTICALS_SEPARATOR } from "./constants";
10
- export function Head(props) {
10
+ function Head(props) {
11
11
  var _useContext = useContext(DocumentStructureContext), hasSetScripts = _useContext.hasSetScripts, hasSetLinks = _useContext.hasSetLinks;
12
12
  var children = props.children, rest = _object_without_properties(props, [
13
13
  "children"
@@ -23,8 +23,12 @@ export function Head(props) {
23
23
  ]
24
24
  }));
25
25
  }
26
- export function DefaultHead() {
26
+ function DefaultHead() {
27
27
  return /* @__PURE__ */ _jsx("head", {
28
28
  children: "".concat(DOCUMENT_META_PLACEHOLDER)
29
29
  });
30
30
  }
31
+ export {
32
+ DefaultHead,
33
+ Head
34
+ };
@@ -46,7 +46,7 @@ function findTargetElement(tag, children) {
46
46
  }
47
47
  return findTargetElement(tag, nextChildren);
48
48
  }
49
- export function Html(props) {
49
+ function Html(props) {
50
50
  var children = props.children, rest = _object_without_properties(props, [
51
51
  "children"
52
52
  ]);
@@ -86,11 +86,11 @@ export function Html(props) {
86
86
  return /* @__PURE__ */ _jsx("html", _object_spread_props(_object_spread({}, rest), {
87
87
  children: /* @__PURE__ */ _jsxs(DocumentStructureContext.Provider, {
88
88
  value: {
89
- hasSetHead: hasSetHead,
90
- hasSetScripts: hasSetScripts,
91
- hasSetLinks: hasSetLinks,
92
- hasSetRoot: hasSetRoot,
93
- hasSetBody: hasSetBody,
89
+ hasSetHead,
90
+ hasSetScripts,
91
+ hasSetLinks,
92
+ hasSetRoot,
93
+ hasSetBody,
94
94
  docChild: children
95
95
  },
96
96
  children: [
@@ -101,3 +101,6 @@ export function Html(props) {
101
101
  })
102
102
  }));
103
103
  }
104
+ export {
105
+ Html
106
+ };
@@ -1,7 +1,10 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { DOCUMENT_LINKS_PLACEHOLDER } from "./constants";
3
- export function Links() {
3
+ function Links() {
4
4
  return /* @__PURE__ */ _jsx(_Fragment, {
5
5
  children: DOCUMENT_LINKS_PLACEHOLDER
6
6
  });
7
7
  }
8
+ export {
9
+ Links
10
+ };
@@ -6,7 +6,7 @@ import { useContext } from "react";
6
6
  import { omit } from "@modern-js/utils/lodash";
7
7
  import { DocumentContext } from "./DocumentContext";
8
8
  import { DOCUMENT_SSR_PLACEHOLDER } from "./constants";
9
- export function Root(props) {
9
+ function Root(props) {
10
10
  var rootId = props.rootId, children = props.children, rest = _object_without_properties(props, [
11
11
  "rootId",
12
12
  "children"
@@ -25,7 +25,7 @@ export function Root(props) {
25
25
  }))
26
26
  );
27
27
  }
28
- export function DefaultRoot(props) {
28
+ function DefaultRoot(props) {
29
29
  var _useContext = useContext(DocumentContext), _useContext_templateParams = _useContext.templateParams, _useContext_templateParams_mountId = _useContext_templateParams.mountId, mountId = _useContext_templateParams_mountId === void 0 ? "root" : _useContext_templateParams_mountId;
30
30
  return /* @__PURE__ */ _jsxs("div", {
31
31
  id: "".concat(mountId),
@@ -35,3 +35,7 @@ export function DefaultRoot(props) {
35
35
  ]
36
36
  });
37
37
  }
38
+ export {
39
+ DefaultRoot,
40
+ Root
41
+ };
@@ -1,6 +1,6 @@
1
1
  import { jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { DOCUMENT_SCRIPT_PLACEHOLDER_START, DOCUMENT_SCRIPT_PLACEHOLDER_END } from "./constants";
3
- export function Script(props) {
3
+ function Script(props) {
4
4
  var content = props.content;
5
5
  var contentStr = content.toString();
6
6
  var contentIIFE = encodeURIComponent("(".concat(contentStr, ")()"));
@@ -12,3 +12,6 @@ export function Script(props) {
12
12
  ]
13
13
  });
14
14
  }
15
+ export {
16
+ Script
17
+ };
@@ -1,7 +1,10 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { DOCUMENT_SCRIPTS_PLACEHOLDER } from "./constants";
3
- export function Scripts() {
3
+ function Scripts() {
4
4
  return /* @__PURE__ */ _jsx(_Fragment, {
5
5
  children: "".concat(DOCUMENT_SCRIPTS_PLACEHOLDER)
6
6
  });
7
7
  }
8
+ export {
9
+ Scripts
10
+ };
@@ -1,6 +1,6 @@
1
1
  import { jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { DOCUMENT_STYLE_PLACEHOLDER_START, DOCUMENT_STYLE_PLACEHOLDER_END } from "./constants";
3
- export function Style(props) {
3
+ function Style(props) {
4
4
  var content = props.content, children = props.children;
5
5
  var contentStr = children || content;
6
6
  var styleContent = encodeURIComponent("".concat(contentStr));
@@ -12,3 +12,6 @@ export function Style(props) {
12
12
  ]
13
13
  });
14
14
  }
15
+ export {
16
+ Style
17
+ };
@@ -10,7 +10,7 @@ import { createDebugger, findExists, fs } from "@modern-js/utils";
10
10
  import { DocumentContext } from "../DocumentContext";
11
11
  import { DOCUMENT_SCRIPTS_PLACEHOLDER, DOCUMENT_LINKS_PLACEHOLDER, DOCUMENT_FILE_NAME, DOCUMENT_META_PLACEHOLDER, PLACEHOLDER_REPLACER_MAP, DOC_EXT, DOCUMENT_SSR_PLACEHOLDER, DOCUMENT_CHUNKSMAP_PLACEHOLDER, DOCUMENT_SSRDATASCRIPT_PLACEHOLDER, DOCUMENT_SCRIPT_PLACEHOLDER_START, DOCUMENT_SCRIPT_PLACEHOLDER_END, HTML_SEPARATOR, DOCUMENT_COMMENT_PLACEHOLDER_START, DOCUMENT_COMMENT_PLACEHOLDER_END, DOCUMENT_STYLE_PLACEHOLDER_START, DOCUMENT_STYLE_PLACEHOLDER_END, TOP_PARTICALS_SEPARATOR, HEAD_PARTICALS_SEPARATOR, BODY_PARTICALS_SEPARATOR } from "../constants";
12
12
  var debug = createDebugger("html_genarate");
13
- export var getDocumenByEntryName = function getDocumenByEntryName2(entrypoints, entryName, fallbackDir) {
13
+ var getDocumenByEntryName = function getDocumenByEntryName2(entrypoints, entryName, fallbackDir) {
14
14
  var _entrypoints_find;
15
15
  var entryDir = (_entrypoints_find = entrypoints.find(function(item) {
16
16
  return item.entryName === entryName;
@@ -28,7 +28,7 @@ export var getDocumenByEntryName = function getDocumenByEntryName2(entrypoints,
28
28
  var docFile = findExists(_to_consumable_array(entryDirs).concat(_to_consumable_array(fallbackDirs)));
29
29
  return docFile || void 0;
30
30
  };
31
- export var documentPlugin = function() {
31
+ var documentPlugin = function() {
32
32
  return {
33
33
  name: "@modern-js/plugin-document",
34
34
  pre: [
@@ -44,7 +44,7 @@ export var documentPlugin = function() {
44
44
  config: {
45
45
  output: config.output
46
46
  },
47
- entryName: entryName,
47
+ entryName,
48
48
  templateParams: templateParameters
49
49
  };
50
50
  }
@@ -64,9 +64,9 @@ export var documentPlugin = function() {
64
64
  htmlWebpackPlugin = param.htmlWebpackPlugin;
65
65
  config = api.useResolvedConfigContext();
66
66
  documentParams = getDocParams({
67
- config: config,
68
- entryName: entryName,
69
- templateParameters: templateParameters
67
+ config,
68
+ entryName,
69
+ templateParameters
70
70
  });
71
71
  tempTsConfigFile = path.join(internalDirectory, "./document/_tempTsconfig.json");
72
72
  userTsConfigFilePath = path.join(appDirectory, "tsconfig.json");
@@ -134,7 +134,7 @@ export var documentPlugin = function() {
134
134
  }
135
135
  return {
136
136
  path: args.path,
137
- external: external
137
+ external
138
138
  };
139
139
  });
140
140
  }
@@ -229,7 +229,7 @@ export var documentPlugin = function() {
229
229
  hackParameters
230
230
  );
231
231
  var documentHtmlOptions = templateContent ? {
232
- templateContent: templateContent,
232
+ templateContent,
233
233
  // Note: the behavior of inject/modify tags in afterTemplateExecution hook will not take effect
234
234
  inject: false
235
235
  } : {};
@@ -248,4 +248,9 @@ export var documentPlugin = function() {
248
248
  }()
249
249
  };
250
250
  };
251
- export default documentPlugin;
251
+ var cli_default = documentPlugin;
252
+ export {
253
+ cli_default as default,
254
+ documentPlugin,
255
+ getDocumenByEntryName
256
+ };
@@ -1,28 +1,50 @@
1
1
  import { _ as _define_property } from "@swc/helpers/_/_define_property";
2
2
  import { HTML_CHUNKSMAP_SEPARATOR } from "@modern-js/utils/universal/constants";
3
- export var DOC_EXT = [
3
+ var DOC_EXT = [
4
4
  "jsx",
5
5
  "tsx",
6
6
  "ts",
7
7
  "js"
8
8
  ];
9
- export var DOCUMENT_META_PLACEHOLDER = encodeURIComponent("<%= meta %>");
10
- export var HTML_SEPARATOR = "<!--<?- html ?>-->";
11
- export var HEAD_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.head ?>-->");
12
- export var BODY_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.body ?>-->");
13
- export var TOP_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.top ?>-->");
14
- export var HTML_SSRDATASCRIPT_SEPARATOR = "<!--<?- SSRDataScript ?>-->";
15
- export var DOCUMENT_SSR_PLACEHOLDER = encodeURIComponent(HTML_SEPARATOR);
16
- export var DOCUMENT_CHUNKSMAP_PLACEHOLDER = encodeURIComponent(HTML_CHUNKSMAP_SEPARATOR);
17
- export var DOCUMENT_SSRDATASCRIPT_PLACEHOLDER = encodeURIComponent(HTML_SSRDATASCRIPT_SEPARATOR);
18
- export var DOCUMENT_FILE_NAME = "Document";
19
- export var DOCUMENT_SCRIPTS_PLACEHOLDER = encodeURIComponent("<!-- chunk scripts placeholder -->");
20
- export var DOCUMENT_LINKS_PLACEHOLDER = encodeURIComponent("<!-- chunk links placeholder -->");
21
- export var DOCUMENT_SCRIPT_PLACEHOLDER_START = encodeURIComponent("<!-- script-start -->");
22
- export var DOCUMENT_SCRIPT_PLACEHOLDER_END = encodeURIComponent("<!-- script-end -->");
23
- export var DOCUMENT_STYLE_PLACEHOLDER_START = encodeURIComponent("<!-- style-start -->");
24
- export var DOCUMENT_STYLE_PLACEHOLDER_END = encodeURIComponent("<!-- style-end -->");
25
- export var DOCUMENT_COMMENT_PLACEHOLDER_START = encodeURIComponent("<!-- comment-start -->");
26
- export var DOCUMENT_COMMENT_PLACEHOLDER_END = encodeURIComponent("<!-- comment-end -->");
9
+ var DOCUMENT_META_PLACEHOLDER = encodeURIComponent("<%= meta %>");
10
+ var HTML_SEPARATOR = "<!--<?- html ?>-->";
11
+ var HEAD_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.head ?>-->");
12
+ var BODY_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.body ?>-->");
13
+ var TOP_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.top ?>-->");
14
+ var HTML_SSRDATASCRIPT_SEPARATOR = "<!--<?- SSRDataScript ?>-->";
15
+ var DOCUMENT_SSR_PLACEHOLDER = encodeURIComponent(HTML_SEPARATOR);
16
+ var DOCUMENT_CHUNKSMAP_PLACEHOLDER = encodeURIComponent(HTML_CHUNKSMAP_SEPARATOR);
17
+ var DOCUMENT_SSRDATASCRIPT_PLACEHOLDER = encodeURIComponent(HTML_SSRDATASCRIPT_SEPARATOR);
18
+ var DOCUMENT_FILE_NAME = "Document";
19
+ var DOCUMENT_SCRIPTS_PLACEHOLDER = encodeURIComponent("<!-- chunk scripts placeholder -->");
20
+ var DOCUMENT_LINKS_PLACEHOLDER = encodeURIComponent("<!-- chunk links placeholder -->");
21
+ var DOCUMENT_SCRIPT_PLACEHOLDER_START = encodeURIComponent("<!-- script-start -->");
22
+ var DOCUMENT_SCRIPT_PLACEHOLDER_END = encodeURIComponent("<!-- script-end -->");
23
+ var DOCUMENT_STYLE_PLACEHOLDER_START = encodeURIComponent("<!-- style-start -->");
24
+ var DOCUMENT_STYLE_PLACEHOLDER_END = encodeURIComponent("<!-- style-end -->");
25
+ var DOCUMENT_COMMENT_PLACEHOLDER_START = encodeURIComponent("<!-- comment-start -->");
26
+ var DOCUMENT_COMMENT_PLACEHOLDER_END = encodeURIComponent("<!-- comment-end -->");
27
27
  var _obj;
28
- export var PLACEHOLDER_REPLACER_MAP = (_obj = {}, _define_property(_obj, DOCUMENT_SSR_PLACEHOLDER, HTML_SEPARATOR), _define_property(_obj, DOCUMENT_CHUNKSMAP_PLACEHOLDER, HTML_CHUNKSMAP_SEPARATOR), _define_property(_obj, DOCUMENT_SSRDATASCRIPT_PLACEHOLDER, HTML_SSRDATASCRIPT_SEPARATOR), _obj);
28
+ var PLACEHOLDER_REPLACER_MAP = (_obj = {}, _define_property(_obj, DOCUMENT_SSR_PLACEHOLDER, HTML_SEPARATOR), _define_property(_obj, DOCUMENT_CHUNKSMAP_PLACEHOLDER, HTML_CHUNKSMAP_SEPARATOR), _define_property(_obj, DOCUMENT_SSRDATASCRIPT_PLACEHOLDER, HTML_SSRDATASCRIPT_SEPARATOR), _obj);
29
+ export {
30
+ BODY_PARTICALS_SEPARATOR,
31
+ DOCUMENT_CHUNKSMAP_PLACEHOLDER,
32
+ DOCUMENT_COMMENT_PLACEHOLDER_END,
33
+ DOCUMENT_COMMENT_PLACEHOLDER_START,
34
+ DOCUMENT_FILE_NAME,
35
+ DOCUMENT_LINKS_PLACEHOLDER,
36
+ DOCUMENT_META_PLACEHOLDER,
37
+ DOCUMENT_SCRIPTS_PLACEHOLDER,
38
+ DOCUMENT_SCRIPT_PLACEHOLDER_END,
39
+ DOCUMENT_SCRIPT_PLACEHOLDER_START,
40
+ DOCUMENT_SSRDATASCRIPT_PLACEHOLDER,
41
+ DOCUMENT_SSR_PLACEHOLDER,
42
+ DOCUMENT_STYLE_PLACEHOLDER_END,
43
+ DOCUMENT_STYLE_PLACEHOLDER_START,
44
+ DOC_EXT,
45
+ HEAD_PARTICALS_SEPARATOR,
46
+ HTML_SEPARATOR,
47
+ HTML_SSRDATASCRIPT_SEPARATOR,
48
+ PLACEHOLDER_REPLACER_MAP,
49
+ TOP_PARTICALS_SEPARATOR
50
+ };
@@ -1,3 +1,6 @@
1
1
  import head from "react-helmet";
2
- export default head;
2
+ var head_default = head;
3
3
  export * from "react-helmet";
4
+ export {
5
+ head_default as default
6
+ };
@@ -1,3 +1,6 @@
1
1
  import loadable from "@loadable/component";
2
- export default loadable;
2
+ var loadable_default = loadable;
3
3
  export * from "@loadable/component";
4
+ export {
5
+ loadable_default as default
6
+ };
@@ -1,3 +1,6 @@
1
- export var hook = function(attacher) {
1
+ var hook = function(attacher) {
2
2
  return attacher;
3
3
  };
4
+ export {
5
+ hook
6
+ };
@@ -1,3 +1,6 @@
1
1
  import styled from "styled-components";
2
- export default styled;
2
+ var styled_default = styled;
3
3
  export * from "styled-components";
4
+ export {
5
+ styled_default as default
6
+ };
package/dist/esm/index.js CHANGED
@@ -1,2 +1,13 @@
1
- export { isBrowser } from "./common";
2
- export { createApp, createPlugin, useLoader, bootstrap, RuntimeReactContext, defineConfig, registerInit, useRuntimeContext } from "./core";
1
+ import { isBrowser } from "./common";
2
+ import { createApp, createPlugin, useLoader, bootstrap, RuntimeReactContext, defineConfig, registerInit, useRuntimeContext } from "./core";
3
+ export {
4
+ RuntimeReactContext,
5
+ bootstrap,
6
+ createApp,
7
+ createPlugin,
8
+ defineConfig,
9
+ isBrowser,
10
+ registerInit,
11
+ useLoader,
12
+ useRuntimeContext
13
+ };
@@ -3,7 +3,7 @@ import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
3
3
  import { getEntryOptions, createRuntimeExportsUtils, isRouterV5 as isV5 } from "@modern-js/utils";
4
4
  var PLUGIN_IDENTIFIER = "router";
5
5
  var ROUTES_IDENTIFIER = "routes";
6
- export var routerPlugin = function() {
6
+ var routerPlugin = function() {
7
7
  return {
8
8
  name: "@modern-js/plugin-router",
9
9
  required: [
@@ -67,8 +67,8 @@ export var routerPlugin = function() {
67
67
  throw new Error("should enable runtime.router for entry ".concat(entryName));
68
68
  }
69
69
  return {
70
- entrypoint: entrypoint,
71
- imports: imports
70
+ entrypoint,
71
+ imports
72
72
  };
73
73
  },
74
74
  modifyEntryRuntimePlugins: function modifyEntryRuntimePlugins(param) {
@@ -88,15 +88,15 @@ export var routerPlugin = function() {
88
88
  plugins.push({
89
89
  name: PLUGIN_IDENTIFIER,
90
90
  options: JSON.stringify(_object_spread_props(_object_spread({
91
- serverBase: serverBase
91
+ serverBase
92
92
  }, runtimeConfig.router), {
93
93
  routesConfig: fileSystemRoutes ? "{ ".concat(ROUTES_IDENTIFIER, ", globalApp: App }") : void 0
94
94
  })).replace(/"routesConfig"\s*:\s*"((\S|\s)+)"/g, '"routesConfig": $1,')
95
95
  });
96
96
  }
97
97
  return {
98
- entrypoint: entrypoint,
99
- plugins: plugins
98
+ entrypoint,
99
+ plugins
100
100
  };
101
101
  },
102
102
  addRuntimeExports: function addRuntimeExports() {
@@ -109,4 +109,8 @@ export var routerPlugin = function() {
109
109
  }
110
110
  };
111
111
  };
112
- export default routerPlugin;
112
+ var cli_default = routerPlugin;
113
+ export {
114
+ cli_default as default,
115
+ routerPlugin
116
+ };
@@ -1,3 +1,7 @@
1
- export { default as router } from "./runtime";
2
- export { default } from "./runtime";
1
+ import { default as default2 } from "./runtime";
2
+ import { default as default3 } from "./runtime";
3
3
  export * from "./runtime";
4
+ export {
5
+ default3 as default,
6
+ default2 as router
7
+ };
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- export var DefaultNotFound = function() {
2
+ var DefaultNotFound = function() {
3
3
  return /* @__PURE__ */ _jsx("div", {
4
4
  style: {
5
5
  margin: "150px auto",
@@ -11,3 +11,6 @@ export var DefaultNotFound = function() {
11
11
  children: "404"
12
12
  });
13
13
  };
14
+ export {
15
+ DefaultNotFound
16
+ };
@@ -1,4 +1,7 @@
1
- export default function() {
1
+ function DeferredDataScripts_default() {
2
2
  return null;
3
3
  }
4
4
  ;
5
+ export {
6
+ DeferredDataScripts_default as default
7
+ };
@@ -41,7 +41,7 @@ var DeferredDataScripts = function(props) {
41
41
  nonce: props === null || props === void 0 ? void 0 : props.nonce,
42
42
  data: deferredData.data[key],
43
43
  dataKey: key,
44
- routeId: routeId
44
+ routeId
45
45
  }, "".concat(routeId, " | ").concat(key)));
46
46
  return "".concat(JSON.stringify(key), ": _ROUTER_DATA.s(").concat(JSON.stringify(routeId), ",").concat(JSON.stringify(key), ") ");
47
47
  } else {
@@ -91,14 +91,14 @@ var DeferredDataScript = function(param) {
91
91
  children: typeof document === "undefined" && data && dataKey && routeId ? /* @__PURE__ */ _jsx(Await, {
92
92
  resolve: data,
93
93
  errorElement: /* @__PURE__ */ _jsx(ErrorDeferredDataScript, {
94
- routeId: routeId,
95
- dataKey: dataKey,
96
- nonce: nonce
94
+ routeId,
95
+ dataKey,
96
+ nonce
97
97
  }),
98
98
  children: function(data2) {
99
99
  return /* @__PURE__ */ _jsx("script", {
100
100
  async: true,
101
- nonce: nonce,
101
+ nonce,
102
102
  suppressHydrationWarning: true,
103
103
  dangerouslySetInnerHTML: {
104
104
  __html: "_ROUTER_DATA.r(".concat(JSON.stringify(routeId), ", ").concat(JSON.stringify(dataKey), ", ").concat(serializeJson(data2), ");")
@@ -112,7 +112,7 @@ var ErrorDeferredDataScript = function(param) {
112
112
  var routeId = param.routeId, dataKey = param.dataKey, nonce = param.nonce;
113
113
  var error = useAsyncError();
114
114
  return /* @__PURE__ */ _jsx("script", {
115
- nonce: nonce,
115
+ nonce,
116
116
  suppressHydrationWarning: true,
117
117
  dangerouslySetInnerHTML: {
118
118
  __html: "_ROUTER_DATA.r(".concat(JSON.stringify(routeId), ", ").concat(JSON.stringify(dataKey), ", ").concat(void 0, ", ").concat(serializeJson({
@@ -122,4 +122,7 @@ var ErrorDeferredDataScript = function(param) {
122
122
  }
123
123
  });
124
124
  };
125
- export default DeferredDataScripts;
125
+ var DeferredDataScripts_node_default = DeferredDataScripts;
126
+ export {
127
+ DeferredDataScripts_node_default as default
128
+ };
@@ -7,7 +7,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
7
7
  import React, { useContext, useMemo } from "react";
8
8
  import { Link as RouterLink, matchRoutes, useResolvedPath, useHref, useMatches, NavLink as RouterNavLink } from "@modern-js/runtime-utils/router";
9
9
  import { RuntimeReactContext } from "../../core";
10
- export function composeEventHandlers(theirHandler, ourHandler) {
10
+ function composeEventHandlers(theirHandler, ourHandler) {
11
11
  return function(event) {
12
12
  theirHandler === null || theirHandler === void 0 ? void 0 : theirHandler(event);
13
13
  if (!event.defaultPrevented) {
@@ -136,7 +136,7 @@ var createDataHref = function(href) {
136
136
  return /* @__PURE__ */ _jsx("link", {
137
137
  rel: "prefetch",
138
138
  as: "fetch",
139
- href: href
139
+ href
140
140
  }, href);
141
141
  };
142
142
  var getDataHref = function(route, pathname, basename) {
@@ -146,7 +146,8 @@ var getDataHref = function(route, pathname, basename) {
146
146
  return createDataHref(url.toString());
147
147
  };
148
148
  var PrefetchPageLinks = function(param) {
149
- var pathname = param.pathname;
149
+ var path = param.path;
150
+ var pathname = path.pathname;
150
151
  var context = useContext(RuntimeReactContext);
151
152
  var routeManifest = context.routeManifest, routes = context.routes;
152
153
  var routeAssets = (routeManifest || {}).routeAssets;
@@ -160,13 +161,14 @@ var PrefetchPageLinks = function(param) {
160
161
  return null;
161
162
  }
162
163
  return /* @__PURE__ */ _jsx(PrefetchDataLinks, {
163
- matches: matches,
164
- pathname: pathname,
165
- routeManifest: routeManifest
164
+ matches,
165
+ path,
166
+ routeManifest
166
167
  });
167
168
  };
168
169
  var PrefetchDataLinks = function(param) {
169
- var matches = param.matches, pathname = param.pathname, routeManifest = param.routeManifest;
170
+ var matches = param.matches, path = param.path, routeManifest = param.routeManifest;
171
+ var pathname = path.pathname, search = path.search, hash = path.hash;
170
172
  var currentMatches = useMatches();
171
173
  var basename = useHref("/");
172
174
  var dataHrefs = useMemo(function() {
@@ -174,6 +176,21 @@ var PrefetchDataLinks = function(param) {
174
176
  if (!match.route.loader || typeof match.route.loader !== "function" || match.route.loader.length === 0) {
175
177
  return false;
176
178
  }
179
+ if (match.route.shouldRevalidate) {
180
+ var _currentMatches_;
181
+ var currentUrl = new URL(location.pathname + location.search + location.hash, window.origin);
182
+ var nextUrl = new URL(pathname + search + hash, window.origin);
183
+ var shouldLoad = match.route.shouldRevalidate({
184
+ currentUrl,
185
+ currentParams: ((_currentMatches_ = currentMatches[0]) === null || _currentMatches_ === void 0 ? void 0 : _currentMatches_.params) || {},
186
+ nextUrl,
187
+ nextParams: match.params,
188
+ defaultShouldRevalidate: true
189
+ });
190
+ if (typeof shouldLoad === "boolean") {
191
+ return shouldLoad;
192
+ }
193
+ }
177
194
  var currentMatch = currentMatches[index];
178
195
  if (!currentMatch || currentMatch.id !== match.route.id) {
179
196
  return true;
@@ -206,15 +223,14 @@ var createPrefetchLink = function(Link2) {
206
223
  var isAbsolute = typeof to === "string" && ABSOLUTE_URL_REGEX.test(to);
207
224
  var _usePrefetchBehavior = _sliced_to_array(usePrefetchBehavior(prefetch, props), 2), shouldPrefetch = _usePrefetchBehavior[0], prefetchHandlers = _usePrefetchBehavior[1];
208
225
  var resolvedPath = useResolvedPath(to);
209
- var pathname = resolvedPath.pathname;
210
226
  return /* @__PURE__ */ _jsxs(_Fragment, {
211
227
  children: [
212
228
  /* @__PURE__ */ _jsx(Link2, _object_spread({
213
229
  ref: forwardedRef,
214
- to: to
230
+ to
215
231
  }, props, prefetchHandlers)),
216
232
  shouldPrefetch && __webpack_chunk_load__ && !isAbsolute ? /* @__PURE__ */ _jsx(PrefetchPageLinks, {
217
- pathname: pathname
233
+ path: resolvedPath
218
234
  }) : null
219
235
  ]
220
236
  });
@@ -224,4 +240,8 @@ var Link = createPrefetchLink(RouterLink);
224
240
  Link.displayName = "Link";
225
241
  var NavLink = createPrefetchLink(RouterNavLink);
226
242
  NavLink.displayName = "NavLink";
227
- export { Link, NavLink };
243
+ export {
244
+ Link,
245
+ NavLink,
246
+ composeEventHandlers
247
+ };