@modern-js/runtime 2.0.0-beta.3 → 2.0.0-beta.5

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 (258) hide show
  1. package/CHANGELOG.md +126 -0
  2. package/dist/js/modern/cli/index.js +49 -19
  3. package/dist/js/modern/cli/types.d.js +0 -0
  4. package/dist/js/modern/common.js +4 -1
  5. package/dist/js/modern/core/app-config.js +8 -9
  6. package/dist/js/modern/core/compatible.js +195 -169
  7. package/dist/js/modern/core/index.js +14 -6
  8. package/dist/js/modern/core/loader/index.js +4 -1
  9. package/dist/js/modern/core/loader/loaderManager.js +75 -77
  10. package/dist/js/modern/core/loader/useLoader.js +96 -69
  11. package/dist/js/modern/core/plugin.js +37 -20
  12. package/dist/js/modern/document/Body.js +20 -14
  13. package/dist/js/modern/document/DocumentContext.js +6 -3
  14. package/dist/js/modern/document/DocumentStructrueContext.js +6 -3
  15. package/dist/js/modern/document/Head.js +18 -17
  16. package/dist/js/modern/document/Html.js +42 -58
  17. package/dist/js/modern/document/Root.js +22 -20
  18. package/dist/js/modern/document/Script.js +20 -0
  19. package/dist/js/modern/document/Scripts.js +7 -7
  20. package/dist/js/modern/document/cli/index.js +175 -85
  21. package/dist/js/modern/document/constants.js +41 -15
  22. package/dist/js/modern/document/index.js +2 -1
  23. package/dist/js/modern/document/type.d.js +0 -0
  24. package/dist/js/modern/exports/head.js +6 -3
  25. package/dist/js/modern/exports/loadable.js +6 -3
  26. package/dist/js/modern/exports/server.js +4 -1
  27. package/dist/js/modern/exports/styled.js +6 -3
  28. package/dist/js/modern/index.js +22 -2
  29. package/dist/js/modern/modern-app.env.d.js +0 -0
  30. package/dist/js/modern/router/cli/index.js +76 -60
  31. package/dist/js/modern/router/index.js +7 -3
  32. package/dist/js/modern/router/runtime/DefaultNotFound.js +11 -10
  33. package/dist/js/modern/router/runtime/index.js +8 -3
  34. package/dist/js/modern/router/runtime/plugin.js +79 -37
  35. package/dist/js/modern/router/runtime/plugin.node.js +88 -83
  36. package/dist/js/modern/router/runtime/root/index.js +10 -10
  37. package/dist/js/modern/router/runtime/root/load.js +57 -36
  38. package/dist/js/modern/router/runtime/server.js +1 -1
  39. package/dist/js/modern/router/runtime/types.js +0 -1
  40. package/dist/js/modern/router/runtime/utils.js +91 -66
  41. package/dist/js/modern/router/runtime/withRouter.js +31 -15
  42. package/dist/js/modern/runtime-context.js +7 -3
  43. package/dist/js/modern/ssr/cli/babel-plugin-ssr-loader-id.js +130 -0
  44. package/dist/js/modern/ssr/cli/index.js +102 -79
  45. package/dist/js/modern/ssr/index.js +89 -71
  46. package/dist/js/modern/ssr/index.node.js +59 -37
  47. package/dist/js/modern/ssr/prefetch.js +64 -45
  48. package/dist/js/modern/ssr/react/index.js +6 -2
  49. package/dist/js/modern/ssr/react/nossr/index.js +8 -7
  50. package/dist/js/modern/ssr/react/prerender/index.js +53 -28
  51. package/dist/js/modern/ssr/react/prerender/util.js +38 -26
  52. package/dist/js/modern/ssr/react/withCallback/index.js +6 -7
  53. package/dist/js/modern/ssr/serverRender/helmet.js +18 -12
  54. package/dist/js/modern/ssr/serverRender/index.js +34 -13
  55. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +10 -12
  56. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.share.js +11 -5
  57. package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +37 -38
  58. package/dist/js/modern/ssr/serverRender/renderToStream/index.js +36 -18
  59. package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +7 -7
  60. package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +56 -34
  61. package/dist/js/modern/ssr/serverRender/renderToStream/styledComponent.js +6 -5
  62. package/dist/js/modern/ssr/serverRender/renderToStream/template.js +13 -9
  63. package/dist/js/modern/ssr/serverRender/renderToString/entry.js +101 -84
  64. package/dist/js/modern/ssr/serverRender/renderToString/index.js +32 -9
  65. package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +21 -18
  66. package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +6 -3
  67. package/dist/js/modern/ssr/serverRender/renderToString/styledComponent.js +6 -3
  68. package/dist/js/modern/ssr/serverRender/renderToString/template.js +22 -22
  69. package/dist/js/modern/ssr/serverRender/renderToString/type.js +9 -6
  70. package/dist/js/modern/ssr/serverRender/types.js +3 -1
  71. package/dist/js/modern/ssr/serverRender/utils.js +11 -9
  72. package/dist/js/modern/ssr/type.d.js +0 -0
  73. package/dist/js/modern/ssr/utils.js +41 -21
  74. package/dist/js/modern/state/cli/index.js +43 -32
  75. package/dist/js/modern/state/index.js +7 -3
  76. package/dist/js/modern/state/plugins.js +13 -7
  77. package/dist/js/modern/state/runtime/index.js +9 -4
  78. package/dist/js/modern/state/runtime/plugin.js +56 -40
  79. package/dist/js/modern/state/types.js +0 -1
  80. package/dist/js/node/cli/index.js +79 -30
  81. package/dist/js/node/cli/types.d.js +0 -0
  82. package/dist/js/node/common.js +26 -7
  83. package/dist/js/node/core/app-config.js +29 -14
  84. package/dist/js/node/core/compatible.js +227 -186
  85. package/dist/js/node/core/index.js +44 -99
  86. package/dist/js/node/core/loader/index.js +31 -11
  87. package/dist/js/node/core/loader/loaderManager.js +102 -83
  88. package/dist/js/node/core/loader/useLoader.js +120 -83
  89. package/dist/js/node/core/plugin.js +65 -35
  90. package/dist/js/node/document/Body.js +40 -23
  91. package/dist/js/node/document/DocumentContext.js +33 -9
  92. package/dist/js/node/document/DocumentStructrueContext.js +33 -9
  93. package/dist/js/node/document/Head.js +43 -27
  94. package/dist/js/node/document/Html.js +66 -65
  95. package/dist/js/node/document/Root.js +47 -31
  96. package/dist/js/node/document/Script.js +40 -0
  97. package/dist/js/node/document/Scripts.js +30 -14
  98. package/dist/js/node/document/cli/index.js +188 -95
  99. package/dist/js/node/document/constants.js +73 -28
  100. package/dist/js/node/document/index.js +25 -93
  101. package/dist/js/node/document/type.d.js +0 -0
  102. package/dist/js/node/exports/head.js +33 -22
  103. package/dist/js/node/exports/loadable.js +33 -22
  104. package/dist/js/node/exports/server.js +26 -7
  105. package/dist/js/node/exports/styled.js +33 -22
  106. package/dist/js/node/index.js +43 -60
  107. package/dist/js/node/modern-app.env.d.js +0 -0
  108. package/dist/js/node/router/cli/index.js +89 -65
  109. package/dist/js/node/router/index.js +33 -30
  110. package/dist/js/node/router/runtime/DefaultNotFound.js +32 -17
  111. package/dist/js/node/router/runtime/index.js +31 -32
  112. package/dist/js/node/router/runtime/plugin.js +101 -44
  113. package/dist/js/node/router/runtime/plugin.node.js +113 -93
  114. package/dist/js/node/router/runtime/root/index.js +37 -21
  115. package/dist/js/node/router/runtime/root/load.js +80 -42
  116. package/dist/js/node/router/runtime/server.js +17 -16
  117. package/dist/js/node/router/runtime/types.js +15 -5
  118. package/dist/js/node/router/runtime/utils.js +112 -75
  119. package/dist/js/node/router/runtime/withRouter.js +53 -22
  120. package/dist/js/node/runtime-context.js +30 -10
  121. package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +139 -0
  122. package/dist/js/node/ssr/cli/index.js +119 -85
  123. package/dist/js/node/ssr/index.js +125 -104
  124. package/dist/js/node/ssr/index.node.js +86 -59
  125. package/dist/js/node/ssr/prefetch.js +84 -51
  126. package/dist/js/node/ssr/react/index.js +27 -16
  127. package/dist/js/node/ssr/react/nossr/index.js +37 -16
  128. package/dist/js/node/ssr/react/prerender/index.js +82 -45
  129. package/dist/js/node/ssr/react/prerender/type.js +15 -0
  130. package/dist/js/node/ssr/react/prerender/util.js +63 -36
  131. package/dist/js/node/ssr/react/withCallback/index.js +29 -15
  132. package/dist/js/node/ssr/serverRender/helmet.js +37 -17
  133. package/dist/js/node/ssr/serverRender/index.js +55 -19
  134. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +40 -20
  135. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +32 -10
  136. package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +65 -47
  137. package/dist/js/node/ssr/serverRender/renderToStream/index.js +69 -30
  138. package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +29 -12
  139. package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +75 -43
  140. package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +29 -11
  141. package/dist/js/node/ssr/serverRender/renderToStream/template.js +36 -16
  142. package/dist/js/node/ssr/serverRender/renderToStream/type.js +15 -0
  143. package/dist/js/node/ssr/serverRender/renderToString/entry.js +135 -103
  144. package/dist/js/node/ssr/serverRender/renderToString/index.js +64 -20
  145. package/dist/js/node/ssr/serverRender/renderToString/loadable.js +45 -26
  146. package/dist/js/node/ssr/serverRender/renderToString/reduce.js +27 -7
  147. package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +27 -8
  148. package/dist/js/node/ssr/serverRender/renderToString/template.js +44 -28
  149. package/dist/js/node/ssr/serverRender/renderToString/type.js +31 -12
  150. package/dist/js/node/ssr/serverRender/types.js +25 -10
  151. package/dist/js/node/ssr/serverRender/utils.js +31 -13
  152. package/dist/js/node/ssr/type.d.js +0 -0
  153. package/dist/js/node/ssr/utils.js +63 -29
  154. package/dist/js/node/state/cli/index.js +58 -37
  155. package/dist/js/node/state/index.js +33 -30
  156. package/dist/js/node/state/plugins.js +43 -22
  157. package/dist/js/node/state/runtime/index.js +36 -50
  158. package/dist/js/node/state/runtime/plugin.js +89 -68
  159. package/dist/js/node/state/types.js +15 -5
  160. package/dist/js/treeshaking/cli/index.js +180 -52
  161. package/dist/js/treeshaking/cli/types.d.js +1 -0
  162. package/dist/js/treeshaking/common.js +4 -3
  163. package/dist/js/treeshaking/core/app-config.js +8 -13
  164. package/dist/js/treeshaking/core/compatible.js +473 -276
  165. package/dist/js/treeshaking/core/index.js +5 -6
  166. package/dist/js/treeshaking/core/loader/index.js +2 -1
  167. package/dist/js/treeshaking/core/loader/loaderManager.js +395 -224
  168. package/dist/js/treeshaking/core/loader/useLoader.js +181 -83
  169. package/dist/js/treeshaking/core/plugin.js +164 -48
  170. package/dist/js/treeshaking/document/Body.js +15 -11
  171. package/dist/js/treeshaking/document/DocumentContext.js +7 -6
  172. package/dist/js/treeshaking/document/DocumentStructrueContext.js +8 -7
  173. package/dist/js/treeshaking/document/Head.js +18 -17
  174. package/dist/js/treeshaking/document/Html.js +86 -93
  175. package/dist/js/treeshaking/document/Root.js +23 -21
  176. package/dist/js/treeshaking/document/Script.js +15 -0
  177. package/dist/js/treeshaking/document/Scripts.js +7 -9
  178. package/dist/js/treeshaking/document/cli/index.js +381 -168
  179. package/dist/js/treeshaking/document/constants.js +34 -16
  180. package/dist/js/treeshaking/document/index.js +2 -1
  181. package/dist/js/treeshaking/document/type.d.js +1 -0
  182. package/dist/js/treeshaking/exports/head.js +4 -3
  183. package/dist/js/treeshaking/exports/loadable.js +4 -3
  184. package/dist/js/treeshaking/exports/server.js +4 -3
  185. package/dist/js/treeshaking/exports/styled.js +4 -3
  186. package/dist/js/treeshaking/index.js +3 -2
  187. package/dist/js/treeshaking/modern-app.env.d.js +1 -0
  188. package/dist/js/treeshaking/router/cli/index.js +145 -99
  189. package/dist/js/treeshaking/router/index.js +4 -3
  190. package/dist/js/treeshaking/router/runtime/DefaultNotFound.js +14 -15
  191. package/dist/js/treeshaking/router/runtime/index.js +5 -3
  192. package/dist/js/treeshaking/router/runtime/plugin.js +129 -62
  193. package/dist/js/treeshaking/router/runtime/plugin.node.js +375 -152
  194. package/dist/js/treeshaking/router/runtime/root/index.js +17 -15
  195. package/dist/js/treeshaking/router/runtime/root/load.js +290 -95
  196. package/dist/js/treeshaking/router/runtime/server.js +1 -1
  197. package/dist/js/treeshaking/router/runtime/types.js +1 -1
  198. package/dist/js/treeshaking/router/runtime/utils.js +230 -142
  199. package/dist/js/treeshaking/router/runtime/withRouter.js +67 -18
  200. package/dist/js/treeshaking/runtime-context.js +4 -3
  201. package/dist/js/treeshaking/ssr/cli/babel-plugin-ssr-loader-id.js +122 -0
  202. package/dist/js/treeshaking/ssr/cli/index.js +210 -138
  203. package/dist/js/treeshaking/ssr/index.js +305 -144
  204. package/dist/js/treeshaking/ssr/index.node.js +234 -66
  205. package/dist/js/treeshaking/ssr/prefetch.js +196 -79
  206. package/dist/js/treeshaking/ssr/react/index.js +3 -2
  207. package/dist/js/treeshaking/ssr/react/nossr/index.js +57 -14
  208. package/dist/js/treeshaking/ssr/react/prerender/index.js +226 -89
  209. package/dist/js/treeshaking/ssr/react/prerender/type.js +1 -0
  210. package/dist/js/treeshaking/ssr/react/prerender/util.js +96 -86
  211. package/dist/js/treeshaking/ssr/react/withCallback/index.js +16 -15
  212. package/dist/js/treeshaking/ssr/serverRender/helmet.js +38 -34
  213. package/dist/js/treeshaking/ssr/serverRender/index.js +165 -37
  214. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +33 -31
  215. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.share.js +7 -7
  216. package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +109 -58
  217. package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +157 -42
  218. package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +20 -20
  219. package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +114 -63
  220. package/dist/js/treeshaking/ssr/serverRender/renderToStream/styledComponent.js +11 -10
  221. package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +61 -20
  222. package/dist/js/treeshaking/ssr/serverRender/renderToStream/type.js +1 -0
  223. package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +380 -208
  224. package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +161 -40
  225. package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +51 -45
  226. package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +9 -8
  227. package/dist/js/treeshaking/ssr/serverRender/renderToString/styledComponent.js +9 -8
  228. package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +142 -64
  229. package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +7 -6
  230. package/dist/js/treeshaking/ssr/serverRender/types.js +1 -1
  231. package/dist/js/treeshaking/ssr/serverRender/utils.js +67 -26
  232. package/dist/js/treeshaking/ssr/type.d.js +1 -0
  233. package/dist/js/treeshaking/ssr/utils.js +128 -64
  234. package/dist/js/treeshaking/state/cli/index.js +70 -68
  235. package/dist/js/treeshaking/state/index.js +4 -3
  236. package/dist/js/treeshaking/state/plugins.js +12 -11
  237. package/dist/js/treeshaking/state/runtime/index.js +5 -4
  238. package/dist/js/treeshaking/state/runtime/plugin.js +189 -77
  239. package/dist/js/treeshaking/state/types.js +1 -1
  240. package/dist/types/cli/index.d.ts +2 -0
  241. package/dist/types/core/loader/loaderManager.d.ts +1 -0
  242. package/dist/types/core/loader/useLoader.d.ts +5 -0
  243. package/dist/types/core/plugin.d.ts +6 -1
  244. package/dist/types/document/Script.d.ts +4 -0
  245. package/dist/types/document/cli/index.d.ts +2 -0
  246. package/dist/types/document/constants.d.ts +2 -0
  247. package/dist/types/document/index.d.ts +1 -0
  248. package/dist/types/router/cli/index.d.ts +2 -0
  249. package/dist/types/router/runtime/index.d.ts +1 -0
  250. package/dist/types/router/runtime/plugin.d.ts +5 -2
  251. package/dist/types/router/runtime/types.d.ts +5 -2
  252. package/dist/types/ssr/cli/babel-plugin-ssr-loader-id.d.ts +1 -0
  253. package/dist/types/ssr/cli/index.d.ts +2 -0
  254. package/dist/types/state/cli/index.d.ts +2 -0
  255. package/dist/types/state/types.d.ts +1 -0
  256. package/package.json +24 -13
  257. package/types/index.d.ts +2 -2
  258. package/types/router.d.ts +2 -2
@@ -1,2 +1,22 @@
1
- export { isBrowser } from "./common";
2
- export { createApp, createPlugin, useLoader, bootstrap, RuntimeReactContext, defineConfig, registerInit, useRuntimeContext } from "./core";
1
+ import { isBrowser } from "./common";
2
+ import {
3
+ createApp,
4
+ createPlugin,
5
+ useLoader,
6
+ bootstrap,
7
+ RuntimeReactContext,
8
+ defineConfig,
9
+ registerInit,
10
+ useRuntimeContext
11
+ } from "./core";
12
+ export {
13
+ RuntimeReactContext,
14
+ bootstrap,
15
+ createApp,
16
+ createPlugin,
17
+ defineConfig,
18
+ isBrowser,
19
+ registerInit,
20
+ useLoader,
21
+ useRuntimeContext
22
+ };
File without changes
@@ -1,89 +1,102 @@
1
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
3
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
- import { getEntryOptions, createRuntimeExportsUtils, PLUGIN_SCHEMAS } from '@modern-js/utils';
5
- const PLUGIN_IDENTIFIER = 'router';
6
- const ROUTES_IDENTIFIER = 'routes';
7
- export default (() => ({
8
- name: '@modern-js/plugin-router',
9
- required: ['@modern-js/runtime'],
10
- setup: api => {
11
- const runtimeConfigMap = new Map();
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import {
21
+ getEntryOptions,
22
+ createRuntimeExportsUtils,
23
+ PLUGIN_SCHEMAS
24
+ } from "@modern-js/utils";
25
+ const PLUGIN_IDENTIFIER = "router";
26
+ const ROUTES_IDENTIFIER = "routes";
27
+ const isV5 = (config) => {
28
+ var _a, _b;
29
+ return ((_b = (_a = config == null ? void 0 : config.runtime) == null ? void 0 : _a.router) == null ? void 0 : _b.mode) === "react-router-5";
30
+ };
31
+ var cli_default = () => ({
32
+ name: "@modern-js/plugin-router",
33
+ required: ["@modern-js/runtime"],
34
+ setup: (api) => {
35
+ const runtimeConfigMap = /* @__PURE__ */ new Map();
12
36
  let pluginsExportsUtils;
13
37
  return {
14
38
  config() {
15
39
  const appContext = api.useAppContext();
16
- pluginsExportsUtils = createRuntimeExportsUtils(appContext.internalDirectory, 'plugins');
40
+ pluginsExportsUtils = createRuntimeExportsUtils(
41
+ appContext.internalDirectory,
42
+ "plugins"
43
+ );
17
44
  return {
18
45
  source: {
19
46
  alias: {
20
- '@modern-js/runtime/plugins': pluginsExportsUtils.getPath()
47
+ "@modern-js/runtime/plugins": pluginsExportsUtils.getPath()
21
48
  }
22
49
  }
23
50
  };
24
51
  },
25
52
  validateSchema() {
26
- return PLUGIN_SCHEMAS['@modern-js/plugin-router'];
53
+ return PLUGIN_SCHEMAS["@modern-js/plugin-router"];
27
54
  },
28
- modifyEntryImports({
29
- entrypoint,
30
- imports
31
- }) {
32
- var _userConfig$runtime, _userConfig$runtime$r;
33
- const {
34
- entryName,
35
- fileSystemRoutes
36
- } = entrypoint;
55
+ modifyEntryImports({ entrypoint, imports }) {
56
+ const { entryName, fileSystemRoutes } = entrypoint;
37
57
  const userConfig = api.useResolvedConfigContext();
38
- const isLegacy = Boolean(userConfig === null || userConfig === void 0 ? void 0 : (_userConfig$runtime = userConfig.runtime) === null || _userConfig$runtime === void 0 ? void 0 : (_userConfig$runtime$r = _userConfig$runtime.router) === null || _userConfig$runtime$r === void 0 ? void 0 : _userConfig$runtime$r.legacy);
39
- const {
58
+ const { packageName } = api.useAppContext();
59
+ const runtimeConfig = getEntryOptions(
60
+ entryName,
61
+ userConfig.runtime,
62
+ userConfig.runtimeByEntries,
40
63
  packageName
41
- } = api.useAppContext();
42
- const runtimeConfig = getEntryOptions(entryName, userConfig.runtime, userConfig.runtimeByEntries, packageName);
64
+ );
43
65
  runtimeConfigMap.set(entryName, runtimeConfig);
44
- if (runtimeConfig !== null && runtimeConfig !== void 0 && runtimeConfig.router) {
45
- if (!isLegacy) {
66
+ if (runtimeConfig == null ? void 0 : runtimeConfig.router) {
67
+ if (!isV5(userConfig)) {
46
68
  imports.push({
47
- value: '@modern-js/runtime/plugins',
48
- specifiers: [{
49
- imported: PLUGIN_IDENTIFIER
50
- }]
69
+ value: "@modern-js/runtime/plugins",
70
+ specifiers: [{ imported: PLUGIN_IDENTIFIER }]
51
71
  });
52
72
  }
53
73
  } else if (fileSystemRoutes) {
54
- throw new Error(`should enable runtime.router for entry ${entryName}`);
74
+ throw new Error(
75
+ `should enable runtime.router for entry ${entryName}`
76
+ );
55
77
  }
56
78
  return {
57
79
  entrypoint,
58
80
  imports
59
81
  };
60
82
  },
61
- modifyEntryRuntimePlugins({
62
- entrypoint,
63
- plugins
64
- }) {
65
- var _userConfig$runtime2, _userConfig$runtime2$;
66
- const {
67
- entryName,
68
- fileSystemRoutes
69
- } = entrypoint;
70
- const {
71
- serverRoutes
72
- } = api.useAppContext();
83
+ modifyEntryRuntimePlugins({ entrypoint, plugins }) {
84
+ const { entryName, fileSystemRoutes } = entrypoint;
85
+ const { serverRoutes } = api.useAppContext();
73
86
  const userConfig = api.useResolvedConfigContext();
74
- const isLegacy = Boolean(userConfig === null || userConfig === void 0 ? void 0 : (_userConfig$runtime2 = userConfig.runtime) === null || _userConfig$runtime2 === void 0 ? void 0 : (_userConfig$runtime2$ = _userConfig$runtime2.router) === null || _userConfig$runtime2$ === void 0 ? void 0 : _userConfig$runtime2$.legacy);
75
87
  const runtimeConfig = runtimeConfigMap.get(entryName);
76
- if (runtimeConfig.router && !isLegacy) {
77
- // Todo: plugin-router best to only handle manage client route.
78
- // here support base server route usage, part for compatibility
79
- const serverBase = serverRoutes.filter(route => route.entryName === entryName).map(route => route.urlPath).sort((a, b) => a.length - b.length > 0 ? -1 : 1);
88
+ if (runtimeConfig.router && !isV5(userConfig)) {
89
+ const serverBase = serverRoutes.filter((route) => route.entryName === entryName).map((route) => route.urlPath).sort((a, b) => a.length - b.length > 0 ? -1 : 1);
80
90
  plugins.push({
81
91
  name: PLUGIN_IDENTIFIER,
82
- options: JSON.stringify(_objectSpread(_objectSpread({
92
+ options: JSON.stringify(__spreadProps(__spreadValues({
83
93
  serverBase
84
- }, runtimeConfig.router), {}, {
85
- routesConfig: fileSystemRoutes ? `{ ${ROUTES_IDENTIFIER}, globalApp: App }` : undefined
86
- })).replace(/"routesConfig"\s*:\s*"((\S|\s)+)"/g, '"routesConfig": $1,')
94
+ }, runtimeConfig.router), {
95
+ routesConfig: fileSystemRoutes ? `{ ${ROUTES_IDENTIFIER}, globalApp: App }` : void 0
96
+ })).replace(
97
+ /"routesConfig"\s*:\s*"((\S|\s)+)"/g,
98
+ '"routesConfig": $1,'
99
+ )
87
100
  });
88
101
  }
89
102
  return {
@@ -92,13 +105,16 @@ export default (() => ({
92
105
  };
93
106
  },
94
107
  addRuntimeExports() {
95
- var _userConfig$runtime3, _userConfig$runtime3$;
96
108
  const userConfig = api.useResolvedConfigContext();
97
- const isLegacy = Boolean(userConfig === null || userConfig === void 0 ? void 0 : (_userConfig$runtime3 = userConfig.runtime) === null || _userConfig$runtime3 === void 0 ? void 0 : (_userConfig$runtime3$ = _userConfig$runtime3.router) === null || _userConfig$runtime3$ === void 0 ? void 0 : _userConfig$runtime3$.legacy);
98
- if (!isLegacy) {
99
- pluginsExportsUtils.addExport(`export { default as router } from '@modern-js/runtime/router'`);
109
+ if (!isV5(userConfig)) {
110
+ pluginsExportsUtils.addExport(
111
+ `export { default as router } from '@modern-js/runtime/router'`
112
+ );
100
113
  }
101
114
  }
102
115
  };
103
116
  }
104
- }));
117
+ });
118
+ export {
119
+ cli_default as default
120
+ };
@@ -1,3 +1,7 @@
1
- export { default as router } from "./runtime";
2
- export { default } from "./runtime";
3
- export * from "./runtime";
1
+ import { default as default2 } from "./runtime";
2
+ import { default as default3 } from "./runtime";
3
+ export * from "./runtime";
4
+ export {
5
+ default3 as default,
6
+ default2 as router
7
+ };
@@ -1,13 +1,14 @@
1
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
2
- import React from 'react';
3
- import { jsx as _jsx } from "react/jsx-runtime";
4
- export const DefaultNotFound = () => /*#__PURE__*/_jsx("div", {
1
+ import { jsx } from "react/jsx-runtime";
2
+ const DefaultNotFound = () => /* @__PURE__ */ jsx("div", {
5
3
  style: {
6
- margin: '150px auto',
7
- textAlign: 'center',
8
- display: 'flex',
9
- alignItems: 'center',
10
- justifyContent: 'center'
4
+ margin: "150px auto",
5
+ textAlign: "center",
6
+ display: "flex",
7
+ alignItems: "center",
8
+ justifyContent: "center"
11
9
  },
12
10
  children: "404"
13
- });
11
+ });
12
+ export {
13
+ DefaultNotFound
14
+ };
@@ -1,4 +1,9 @@
1
1
  import { routerPlugin } from "./plugin";
2
- export default routerPlugin;
3
- export * from 'react-router-dom';
4
- export * from "./withRouter";
2
+ var runtime_default = routerPlugin;
3
+ import { modifyRoutes } from "./plugin";
4
+ export * from "react-router-dom";
5
+ export * from "./withRouter";
6
+ export {
7
+ runtime_default as default,
8
+ modifyRoutes
9
+ };
@@ -1,53 +1,89 @@
1
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
3
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
- import React from 'react';
5
- import { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements } from 'react-router-dom';
6
- import hoistNonReactStatics from 'hoist-non-react-statics';
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { jsx } from "react/jsx-runtime";
21
+ import {
22
+ createBrowserRouter,
23
+ createHashRouter,
24
+ RouterProvider,
25
+ createRoutesFromElements,
26
+ useMatches,
27
+ useLocation
28
+ } from "react-router-dom";
29
+ import hoistNonReactStatics from "hoist-non-react-statics";
7
30
  import { renderRoutes, urlJoin } from "./utils";
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
- export const routerPlugin = ({
10
- serverBase: _serverBase = [],
11
- supportHtml5History: _supportHtml5History = true,
12
- basename: _basename2 = '',
31
+ let finalRouteConfig = {
32
+ routes: []
33
+ };
34
+ let beforeCreateRouter = true;
35
+ function modifyRoutes(modifyFunction) {
36
+ if (beforeCreateRouter) {
37
+ const { routes: originRoutes } = finalRouteConfig;
38
+ const newRoutes = modifyFunction(originRoutes);
39
+ finalRouteConfig.routes = newRoutes;
40
+ } else {
41
+ console.error(
42
+ "It is not allowed to modify routes config after create router."
43
+ );
44
+ }
45
+ }
46
+ const routerPlugin = ({
47
+ serverBase = [],
48
+ supportHtml5History = true,
49
+ basename = "",
13
50
  routesConfig,
14
51
  createRoutes
15
52
  }) => {
16
- const select = pathname => _serverBase.find(baseUrl => pathname.search(baseUrl) === 0) || '/';
53
+ const select = (pathname) => serverBase.find((baseUrl) => pathname.search(baseUrl) === 0) || "/";
54
+ finalRouteConfig = routesConfig;
17
55
  return {
18
- name: '@modern-js/plugin-router',
56
+ name: "@modern-js/plugin-router",
19
57
  setup: () => {
20
58
  return {
21
- hoc: ({
22
- App
23
- }, next) => {
24
- // can not get routes config, skip wrapping React Router.
25
- // e.g. App.tsx as the entrypoint
26
- if (!routesConfig && !createRoutes) {
27
- return next({
28
- App
29
- });
59
+ init({ context }, next) {
60
+ context.router = {
61
+ useMatches,
62
+ useLocation
63
+ };
64
+ return next({ context });
65
+ },
66
+ hoc: ({ App }, next) => {
67
+ if (!finalRouteConfig && !createRoutes) {
68
+ return next({ App });
30
69
  }
31
70
  const getRouteApp = () => {
32
- return props => {
33
- var _window$_SERVER_DATA;
34
- const routes = createRoutes ? createRoutes() : createRoutesFromElements(renderRoutes(routesConfig));
35
- const baseUrl = ((_window$_SERVER_DATA = window._SERVER_DATA) === null || _window$_SERVER_DATA === void 0 ? void 0 : _window$_SERVER_DATA.router.baseUrl) || select(location.pathname);
36
- const _basename = baseUrl === '/' ? urlJoin(baseUrl, _basename2) : baseUrl;
37
- const router = _supportHtml5History ? createBrowserRouter(routes, {
38
- basename: _basename
39
- }) : createHashRouter(routes, {
40
- basename: _basename
41
- });
42
- return /*#__PURE__*/_jsx(App, _objectSpread(_objectSpread({}, props), {}, {
43
- children: /*#__PURE__*/_jsx(RouterProvider, {
44
- router: router
71
+ return (props) => {
72
+ var _a;
73
+ beforeCreateRouter = true;
74
+ const routes = createRoutes ? createRoutes() : createRoutesFromElements(renderRoutes(finalRouteConfig));
75
+ const baseUrl = ((_a = window._SERVER_DATA) == null ? void 0 : _a.router.baseUrl) || select(location.pathname);
76
+ const _basename = baseUrl === "/" ? urlJoin(baseUrl, basename) : baseUrl;
77
+ const router = supportHtml5History ? createBrowserRouter(routes, { basename: _basename }) : createHashRouter(routes, { basename: _basename });
78
+ return /* @__PURE__ */ jsx(App, __spreadProps(__spreadValues({}, props), {
79
+ children: /* @__PURE__ */ jsx(RouterProvider, {
80
+ router
45
81
  })
46
82
  }));
47
83
  };
48
84
  };
49
85
  const RouteApp = getRouteApp();
50
- if (routesConfig !== null && routesConfig !== void 0 && routesConfig.globalApp) {
86
+ if (routesConfig == null ? void 0 : routesConfig.globalApp) {
51
87
  return next({
52
88
  App: hoistNonReactStatics(RouteApp, routesConfig.globalApp)
53
89
  });
@@ -59,4 +95,10 @@ export const routerPlugin = ({
59
95
  };
60
96
  }
61
97
  };
62
- };
98
+ };
99
+ export {
100
+ beforeCreateRouter,
101
+ finalRouteConfig,
102
+ modifyRoutes,
103
+ routerPlugin
104
+ };
@@ -1,44 +1,67 @@
1
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
3
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
- import React, { useContext } from 'react';
5
- import { unstable_createStaticHandler as createStaticHandler } from '@remix-run/router';
6
- import { unstable_createStaticRouter as createStaticRouter, unstable_StaticRouterProvider as StaticRouterProvider } from 'react-router-dom/server';
7
- import hoistNonReactStatics from 'hoist-non-react-statics';
8
- import { installGlobals } from '@remix-run/node';
9
- import { createRoutesFromElements } from 'react-router-dom';
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __async = (__this, __arguments, generator) => {
21
+ return new Promise((resolve, reject) => {
22
+ var fulfilled = (value) => {
23
+ try {
24
+ step(generator.next(value));
25
+ } catch (e) {
26
+ reject(e);
27
+ }
28
+ };
29
+ var rejected = (value) => {
30
+ try {
31
+ step(generator.throw(value));
32
+ } catch (e) {
33
+ reject(e);
34
+ }
35
+ };
36
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
37
+ step((generator = generator.apply(__this, __arguments)).next());
38
+ });
39
+ };
40
+ import { jsx } from "react/jsx-runtime";
41
+ import { useContext } from "react";
42
+ import { unstable_createStaticHandler as createStaticHandler } from "@remix-run/router";
43
+ import {
44
+ unstable_createStaticRouter as createStaticRouter,
45
+ unstable_StaticRouterProvider as StaticRouterProvider
46
+ } from "react-router-dom/server";
47
+ import hoistNonReactStatics from "hoist-non-react-statics";
48
+ import { installGlobals } from "@remix-run/node";
49
+ import { createRoutesFromElements } from "react-router-dom";
10
50
  import { RuntimeReactContext } from "../../core";
11
51
  import { renderRoutes, urlJoin } from "./utils";
12
-
13
- // Polyfill Web Fetch API
14
- import { jsx as _jsx } from "react/jsx-runtime";
15
52
  installGlobals();
16
-
17
- // TODO: polish
18
53
  function createFetchRequest(req) {
19
- // const origin = `${req.protocol}://${req.get('host')}`;
20
54
  const origin = `${req.protocol}://${req.host}`;
21
- // Note: This had to take originalUrl into account for presumably vite's proxying
22
55
  const url = new URL(req.originalUrl || req.url, origin);
23
56
  const controller = new AbortController();
24
-
25
- // req.on('close', () => {
26
- // controller.abort();
27
- // });
28
-
29
57
  const init = {
30
58
  method: req.method,
31
59
  headers: createFetchHeaders(req.headers),
32
60
  signal: controller.signal
33
61
  };
34
-
35
- // if (req.method !== 'GET' && req.method !== 'HEAD') {
36
- // init.body = req.body;
37
- // }
38
-
39
62
  return new Request(url.href, init);
40
63
  }
41
- export function createFetchHeaders(requestHeaders) {
64
+ function createFetchHeaders(requestHeaders) {
42
65
  const headers = new Headers();
43
66
  for (const [key, values] of Object.entries(requestHeaders)) {
44
67
  if (values) {
@@ -53,72 +76,50 @@ export function createFetchHeaders(requestHeaders) {
53
76
  }
54
77
  return headers;
55
78
  }
56
- export const routerPlugin = ({
57
- basename: _basename2 = '',
79
+ const routerPlugin = ({
80
+ basename = "",
58
81
  routesConfig,
59
82
  createRoutes
60
83
  }) => {
61
84
  return {
62
- name: '@modern-js/plugin-router',
85
+ name: "@modern-js/plugin-router",
63
86
  setup: () => {
64
87
  return {
65
- async init({
66
- context
67
- }, next) {
68
- // can not get routes config, skip wrapping React Router.
69
- // e.g. App.tsx as the entrypoint
70
- if (!routesConfig && !createRoutes) {
71
- return next({
72
- context
88
+ init(_0, _1) {
89
+ return __async(this, arguments, function* ({ context }, next) {
90
+ if (!routesConfig && !createRoutes) {
91
+ return next({ context });
92
+ }
93
+ const { request } = context.ssrContext;
94
+ const baseUrl = request.baseUrl;
95
+ const _basename = baseUrl === "/" ? urlJoin(baseUrl, basename) : baseUrl;
96
+ const routes = createRoutes ? createRoutes() : createRoutesFromElements(renderRoutes(routesConfig));
97
+ const { query } = createStaticHandler(routes, {
98
+ basename: _basename
73
99
  });
74
- }
75
- const {
76
- request
77
- } = context.ssrContext;
78
- const baseUrl = request.baseUrl;
79
- const _basename = baseUrl === '/' ? urlJoin(baseUrl, _basename2) : baseUrl;
80
- const routes = createRoutes ? createRoutes() : createRoutesFromElements(renderRoutes(routesConfig));
81
- const {
82
- query
83
- } = createStaticHandler(routes, {
84
- basename: _basename
85
- });
86
- const remixRequest = createFetchRequest(request);
87
- const routerContext = await query(remixRequest);
88
- if (routerContext instanceof Response) {
89
- // React Router would return a Response when redirects occur in loader.
90
- // Throw the Response to bail out and let the server handle it with an HTTP redirect
91
- return routerContext;
92
- }
93
- const router = createStaticRouter(routes, routerContext);
94
- context.router = router;
95
- context.routerContext = routerContext;
96
- context.routes = routes;
97
- // set routeManifest in context to be consistent with csr context
98
- context.routeManifest = context.ssrContext.routeManifest;
99
- return next({
100
- context
100
+ const remixRequest = createFetchRequest(request);
101
+ const routerContext = yield query(remixRequest);
102
+ if (routerContext instanceof Response) {
103
+ return routerContext;
104
+ }
105
+ const router = createStaticRouter(routes, routerContext);
106
+ context.router = router;
107
+ context.routerContext = routerContext;
108
+ context.routes = routes;
109
+ context.routeManifest = context.ssrContext.routeManifest;
110
+ return next({ context });
101
111
  });
102
112
  },
103
- hoc: ({
104
- App
105
- }, next) => {
106
- // can not get routes config, skip wrapping React Router.
107
- // e.g. App.tsx as the entrypoint
113
+ hoc: ({ App }, next) => {
108
114
  if (!routesConfig) {
109
- return next({
110
- App
111
- });
115
+ return next({ App });
112
116
  }
113
117
  const getRouteApp = () => {
114
- return props => {
115
- const {
116
- router,
117
- routerContext
118
- } = useContext(RuntimeReactContext);
119
- return /*#__PURE__*/_jsx(App, _objectSpread(_objectSpread({}, props), {}, {
120
- children: /*#__PURE__*/_jsx(StaticRouterProvider, {
121
- router: router,
118
+ return (props) => {
119
+ const { router, routerContext } = useContext(RuntimeReactContext);
120
+ return /* @__PURE__ */ jsx(App, __spreadProps(__spreadValues({}, props), {
121
+ children: /* @__PURE__ */ jsx(StaticRouterProvider, {
122
+ router,
122
123
  context: routerContext,
123
124
  nonce: "the-nonce"
124
125
  })
@@ -126,7 +127,7 @@ export const routerPlugin = ({
126
127
  };
127
128
  };
128
129
  const RouteApp = getRouteApp();
129
- if (routesConfig !== null && routesConfig !== void 0 && routesConfig.globalApp) {
130
+ if (routesConfig == null ? void 0 : routesConfig.globalApp) {
130
131
  return next({
131
132
  App: hoistNonReactStatics(RouteApp, routesConfig.globalApp)
132
133
  });
@@ -138,4 +139,8 @@ export const routerPlugin = ({
138
139
  };
139
140
  }
140
141
  };
141
- };
142
+ };
143
+ export {
144
+ createFetchHeaders,
145
+ routerPlugin
146
+ };
@@ -1,19 +1,19 @@
1
- import React, { useContext, useEffect } from 'react';
2
- import { useLocation } from 'react-router-dom';
1
+ import { Fragment, jsx } from "react/jsx-runtime";
2
+ import { useContext, useEffect } from "react";
3
+ import { useLocation } from "react-router-dom";
3
4
  import { RuntimeReactContext } from "../../../core";
4
5
  import { handleLoad } from "./load";
5
- import { Fragment as _Fragment } from "react/jsx-runtime";
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- export function RootLayout(props) {
6
+ function RootLayout(props) {
8
7
  const location = useLocation();
9
8
  const context = useContext(RuntimeReactContext);
10
9
  useEffect(() => {
11
- const {
12
- routes
13
- } = props;
10
+ const { routes } = props;
14
11
  handleLoad(routes, location, context.routeManifest);
15
12
  }, [location]);
16
- return /*#__PURE__*/_jsx(_Fragment, {
13
+ return /* @__PURE__ */ jsx(Fragment, {
17
14
  children: props.children
18
15
  });
19
- }
16
+ }
17
+ export {
18
+ RootLayout
19
+ };