@modern-js/runtime 2.49.3-alpha.0 → 2.49.3

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 (238) hide show
  1. package/dist/cjs/router/runtime/plugin.js +11 -2
  2. package/dist/cjs/router/runtime/plugin.node.js +2 -2
  3. package/dist/esm/router/runtime/plugin.js +2 -2
  4. package/dist/esm/router/runtime/plugin.node.js +2 -2
  5. package/dist/esm-node/router/runtime/plugin.js +11 -2
  6. package/dist/esm-node/router/runtime/plugin.node.js +2 -2
  7. package/dist/types/router/runtime/plugin.d.ts +1 -1
  8. package/dist/types/router/runtime/plugin.node.d.ts +1 -1
  9. package/dist/types/router/runtime/types.d.ts +1 -1
  10. package/package.json +10 -10
  11. package/dist/js/modern/cli/index.js +0 -72
  12. package/dist/js/modern/common.js +0 -4
  13. package/dist/js/modern/config.js +0 -0
  14. package/dist/js/modern/core/app-config.js +0 -10
  15. package/dist/js/modern/core/compatible.js +0 -285
  16. package/dist/js/modern/core/index.js +0 -16
  17. package/dist/js/modern/core/loader/index.js +0 -4
  18. package/dist/js/modern/core/loader/loaderManager.js +0 -165
  19. package/dist/js/modern/core/loader/useLoader.js +0 -114
  20. package/dist/js/modern/core/plugin.js +0 -58
  21. package/dist/js/modern/document/Body.js +0 -23
  22. package/dist/js/modern/document/DocumentContext.js +0 -9
  23. package/dist/js/modern/document/DocumentStructrueContext.js +0 -11
  24. package/dist/js/modern/document/Head.js +0 -27
  25. package/dist/js/modern/document/Html.js +0 -78
  26. package/dist/js/modern/document/Links.js +0 -10
  27. package/dist/js/modern/document/Root.js +0 -33
  28. package/dist/js/modern/document/Script.js +0 -20
  29. package/dist/js/modern/document/Scripts.js +0 -10
  30. package/dist/js/modern/document/cli/index.js +0 -228
  31. package/dist/js/modern/document/constants.js +0 -49
  32. package/dist/js/modern/document/index.js +0 -10
  33. package/dist/js/modern/exports/head.js +0 -6
  34. package/dist/js/modern/exports/loadable.js +0 -6
  35. package/dist/js/modern/exports/server.js +0 -4
  36. package/dist/js/modern/exports/styled.js +0 -6
  37. package/dist/js/modern/index.js +0 -22
  38. package/dist/js/modern/router/cli/index.js +0 -120
  39. package/dist/js/modern/router/index.js +0 -7
  40. package/dist/js/modern/router/runtime/DefaultNotFound.js +0 -14
  41. package/dist/js/modern/router/runtime/index.js +0 -9
  42. package/dist/js/modern/router/runtime/plugin.js +0 -104
  43. package/dist/js/modern/router/runtime/plugin.node.js +0 -149
  44. package/dist/js/modern/router/runtime/server.js +0 -1
  45. package/dist/js/modern/router/runtime/types.js +0 -0
  46. package/dist/js/modern/router/runtime/utils.js +0 -196
  47. package/dist/js/modern/router/runtime/withRouter.js +0 -36
  48. package/dist/js/modern/runtime-context.js +0 -7
  49. package/dist/js/modern/ssr/cli/babel-plugin-ssr-loader-id.js +0 -130
  50. package/dist/js/modern/ssr/cli/index.js +0 -172
  51. package/dist/js/modern/ssr/index.js +0 -159
  52. package/dist/js/modern/ssr/index.node.js +0 -79
  53. package/dist/js/modern/ssr/prefetch.js +0 -69
  54. package/dist/js/modern/ssr/react/index.js +0 -6
  55. package/dist/js/modern/ssr/react/nossr/index.js +0 -14
  56. package/dist/js/modern/ssr/react/prerender/index.js +0 -108
  57. package/dist/js/modern/ssr/react/prerender/type.js +0 -0
  58. package/dist/js/modern/ssr/react/prerender/util.js +0 -96
  59. package/dist/js/modern/ssr/react/withCallback/index.js +0 -15
  60. package/dist/js/modern/ssr/serverRender/helmet.js +0 -44
  61. package/dist/js/modern/ssr/serverRender/index.js +0 -35
  62. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -36
  63. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -11
  64. package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -61
  65. package/dist/js/modern/ssr/serverRender/renderToStream/index.js +0 -58
  66. package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +0 -24
  67. package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +0 -94
  68. package/dist/js/modern/ssr/serverRender/renderToStream/styledComponent.js +0 -12
  69. package/dist/js/modern/ssr/serverRender/renderToStream/template.js +0 -22
  70. package/dist/js/modern/ssr/serverRender/renderToStream/type.js +0 -0
  71. package/dist/js/modern/ssr/serverRender/renderToString/entry.js +0 -171
  72. package/dist/js/modern/ssr/serverRender/renderToString/index.js +0 -52
  73. package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +0 -48
  74. package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +0 -8
  75. package/dist/js/modern/ssr/serverRender/renderToString/styledComponent.js +0 -11
  76. package/dist/js/modern/ssr/serverRender/renderToString/template.js +0 -58
  77. package/dist/js/modern/ssr/serverRender/renderToString/type.js +0 -9
  78. package/dist/js/modern/ssr/serverRender/types.js +0 -4
  79. package/dist/js/modern/ssr/serverRender/utils.js +0 -22
  80. package/dist/js/modern/ssr/utils.js +0 -81
  81. package/dist/js/modern/state/cli/index.js +0 -83
  82. package/dist/js/modern/state/index.js +0 -7
  83. package/dist/js/modern/state/plugins.js +0 -13
  84. package/dist/js/modern/state/runtime/index.js +0 -9
  85. package/dist/js/modern/state/runtime/plugin.js +0 -97
  86. package/dist/js/modern/state/types.js +0 -0
  87. package/dist/js/node/cli/index.js +0 -99
  88. package/dist/js/node/common.js +0 -27
  89. package/dist/js/node/config.js +0 -15
  90. package/dist/js/node/core/app-config.js +0 -34
  91. package/dist/js/node/core/compatible.js +0 -312
  92. package/dist/js/node/core/index.js +0 -47
  93. package/dist/js/node/core/loader/index.js +0 -33
  94. package/dist/js/node/core/loader/loaderManager.js +0 -195
  95. package/dist/js/node/core/loader/useLoader.js +0 -132
  96. package/dist/js/node/core/plugin.js +0 -80
  97. package/dist/js/node/document/Body.js +0 -43
  98. package/dist/js/node/document/DocumentContext.js +0 -38
  99. package/dist/js/node/document/DocumentStructrueContext.js +0 -40
  100. package/dist/js/node/document/Head.js +0 -51
  101. package/dist/js/node/document/Html.js +0 -101
  102. package/dist/js/node/document/Links.js +0 -33
  103. package/dist/js/node/document/Root.js +0 -57
  104. package/dist/js/node/document/Script.js +0 -40
  105. package/dist/js/node/document/Scripts.js +0 -33
  106. package/dist/js/node/document/cli/index.js +0 -240
  107. package/dist/js/node/document/constants.js +0 -86
  108. package/dist/js/node/document/index.js +0 -26
  109. package/dist/js/node/exports/head.js +0 -34
  110. package/dist/js/node/exports/loadable.js +0 -34
  111. package/dist/js/node/exports/server.js +0 -27
  112. package/dist/js/node/exports/styled.js +0 -34
  113. package/dist/js/node/index.js +0 -44
  114. package/dist/js/node/router/cli/index.js +0 -135
  115. package/dist/js/node/router/index.js +0 -37
  116. package/dist/js/node/router/runtime/DefaultNotFound.js +0 -37
  117. package/dist/js/node/router/runtime/index.js +0 -33
  118. package/dist/js/node/router/runtime/plugin.js +0 -127
  119. package/dist/js/node/router/runtime/plugin.node.js +0 -175
  120. package/dist/js/node/router/runtime/server.js +0 -17
  121. package/dist/js/node/router/runtime/types.js +0 -15
  122. package/dist/js/node/router/runtime/utils.js +0 -221
  123. package/dist/js/node/router/runtime/withRouter.js +0 -57
  124. package/dist/js/node/runtime-context.js +0 -31
  125. package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +0 -139
  126. package/dist/js/node/ssr/cli/index.js +0 -190
  127. package/dist/js/node/ssr/index.js +0 -185
  128. package/dist/js/node/ssr/index.node.js +0 -107
  129. package/dist/js/node/ssr/prefetch.js +0 -90
  130. package/dist/js/node/ssr/react/index.js +0 -30
  131. package/dist/js/node/ssr/react/nossr/index.js +0 -43
  132. package/dist/js/node/ssr/react/prerender/index.js +0 -130
  133. package/dist/js/node/ssr/react/prerender/type.js +0 -15
  134. package/dist/js/node/ssr/react/prerender/util.js +0 -123
  135. package/dist/js/node/ssr/react/withCallback/index.js +0 -38
  136. package/dist/js/node/ssr/serverRender/helmet.js +0 -65
  137. package/dist/js/node/ssr/serverRender/index.js +0 -56
  138. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -65
  139. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -35
  140. package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -87
  141. package/dist/js/node/ssr/serverRender/renderToStream/index.js +0 -87
  142. package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +0 -47
  143. package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +0 -111
  144. package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +0 -35
  145. package/dist/js/node/ssr/serverRender/renderToStream/template.js +0 -45
  146. package/dist/js/node/ssr/serverRender/renderToStream/type.js +0 -15
  147. package/dist/js/node/ssr/serverRender/renderToString/entry.js +0 -196
  148. package/dist/js/node/ssr/serverRender/renderToString/index.js +0 -81
  149. package/dist/js/node/ssr/serverRender/renderToString/loadable.js +0 -71
  150. package/dist/js/node/ssr/serverRender/renderToString/reduce.js +0 -31
  151. package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +0 -34
  152. package/dist/js/node/ssr/serverRender/renderToString/template.js +0 -82
  153. package/dist/js/node/ssr/serverRender/renderToString/type.js +0 -32
  154. package/dist/js/node/ssr/serverRender/types.js +0 -27
  155. package/dist/js/node/ssr/serverRender/utils.js +0 -46
  156. package/dist/js/node/ssr/utils.js +0 -106
  157. package/dist/js/node/state/cli/index.js +0 -100
  158. package/dist/js/node/state/index.js +0 -37
  159. package/dist/js/node/state/plugins.js +0 -45
  160. package/dist/js/node/state/runtime/index.js +0 -40
  161. package/dist/js/node/state/runtime/plugin.js +0 -121
  162. package/dist/js/node/state/types.js +0 -15
  163. package/dist/js/treeshaking/cli/index.js +0 -186
  164. package/dist/js/treeshaking/common.js +0 -4
  165. package/dist/js/treeshaking/config.js +0 -1
  166. package/dist/js/treeshaking/core/app-config.js +0 -9
  167. package/dist/js/treeshaking/core/compatible.js +0 -485
  168. package/dist/js/treeshaking/core/index.js +0 -7
  169. package/dist/js/treeshaking/core/loader/index.js +0 -2
  170. package/dist/js/treeshaking/core/loader/loaderManager.js +0 -406
  171. package/dist/js/treeshaking/core/loader/useLoader.js +0 -188
  172. package/dist/js/treeshaking/core/plugin.js +0 -176
  173. package/dist/js/treeshaking/document/Body.js +0 -18
  174. package/dist/js/treeshaking/document/DocumentContext.js +0 -7
  175. package/dist/js/treeshaking/document/DocumentStructrueContext.js +0 -9
  176. package/dist/js/treeshaking/document/Head.js +0 -24
  177. package/dist/js/treeshaking/document/Html.js +0 -99
  178. package/dist/js/treeshaking/document/Links.js +0 -8
  179. package/dist/js/treeshaking/document/Root.js +0 -26
  180. package/dist/js/treeshaking/document/Script.js +0 -15
  181. package/dist/js/treeshaking/document/Scripts.js +0 -8
  182. package/dist/js/treeshaking/document/cli/index.js +0 -393
  183. package/dist/js/treeshaking/document/constants.js +0 -35
  184. package/dist/js/treeshaking/document/index.js +0 -10
  185. package/dist/js/treeshaking/exports/head.js +0 -4
  186. package/dist/js/treeshaking/exports/loadable.js +0 -4
  187. package/dist/js/treeshaking/exports/server.js +0 -4
  188. package/dist/js/treeshaking/exports/styled.js +0 -4
  189. package/dist/js/treeshaking/index.js +0 -3
  190. package/dist/js/treeshaking/router/cli/index.js +0 -148
  191. package/dist/js/treeshaking/router/index.js +0 -4
  192. package/dist/js/treeshaking/router/runtime/DefaultNotFound.js +0 -14
  193. package/dist/js/treeshaking/router/runtime/index.js +0 -6
  194. package/dist/js/treeshaking/router/runtime/plugin.js +0 -132
  195. package/dist/js/treeshaking/router/runtime/plugin.node.js +0 -390
  196. package/dist/js/treeshaking/router/runtime/server.js +0 -1
  197. package/dist/js/treeshaking/router/runtime/types.js +0 -1
  198. package/dist/js/treeshaking/router/runtime/utils.js +0 -260
  199. package/dist/js/treeshaking/router/runtime/withRouter.js +0 -67
  200. package/dist/js/treeshaking/runtime-context.js +0 -4
  201. package/dist/js/treeshaking/ssr/cli/babel-plugin-ssr-loader-id.js +0 -122
  202. package/dist/js/treeshaking/ssr/cli/index.js +0 -217
  203. package/dist/js/treeshaking/ssr/index.js +0 -315
  204. package/dist/js/treeshaking/ssr/index.node.js +0 -240
  205. package/dist/js/treeshaking/ssr/prefetch.js +0 -199
  206. package/dist/js/treeshaking/ssr/react/index.js +0 -3
  207. package/dist/js/treeshaking/ssr/react/nossr/index.js +0 -58
  208. package/dist/js/treeshaking/ssr/react/prerender/index.js +0 -237
  209. package/dist/js/treeshaking/ssr/react/prerender/type.js +0 -1
  210. package/dist/js/treeshaking/ssr/react/prerender/util.js +0 -108
  211. package/dist/js/treeshaking/ssr/react/withCallback/index.js +0 -16
  212. package/dist/js/treeshaking/ssr/serverRender/helmet.js +0 -42
  213. package/dist/js/treeshaking/ssr/serverRender/index.js +0 -169
  214. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -34
  215. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -7
  216. package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -115
  217. package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +0 -165
  218. package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +0 -22
  219. package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +0 -119
  220. package/dist/js/treeshaking/ssr/serverRender/renderToStream/styledComponent.js +0 -11
  221. package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +0 -63
  222. package/dist/js/treeshaking/ssr/serverRender/renderToStream/type.js +0 -1
  223. package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +0 -393
  224. package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +0 -165
  225. package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +0 -56
  226. package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +0 -10
  227. package/dist/js/treeshaking/ssr/serverRender/renderToString/styledComponent.js +0 -9
  228. package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +0 -156
  229. package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +0 -7
  230. package/dist/js/treeshaking/ssr/serverRender/types.js +0 -2
  231. package/dist/js/treeshaking/ssr/serverRender/utils.js +0 -69
  232. package/dist/js/treeshaking/ssr/utils.js +0 -134
  233. package/dist/js/treeshaking/state/cli/index.js +0 -71
  234. package/dist/js/treeshaking/state/index.js +0 -4
  235. package/dist/js/treeshaking/state/plugins.js +0 -14
  236. package/dist/js/treeshaking/state/runtime/index.js +0 -5
  237. package/dist/js/treeshaking/state/runtime/plugin.js +0 -198
  238. package/dist/js/treeshaking/state/types.js +0 -1
@@ -55,7 +55,16 @@ function modifyRoutes(modifyFunction) {
55
55
  console.error("It is not allowed to modify routes config after create router.");
56
56
  }
57
57
  }
58
- const routerPlugin = ({ serverBase = [], supportHtml5History = true, basename = "", originBaseUrl = "", routesConfig, createRoutes }) => {
58
+ const routerPlugin = ({
59
+ serverBase = [],
60
+ supportHtml5History = true,
61
+ basename = "",
62
+ // when the current child app has multiple entries, there is a problem,
63
+ // so we have added a new parameter, the parameter will replace basename and baseUrl after the major version.
64
+ originalBaseUrl = "",
65
+ routesConfig,
66
+ createRoutes
67
+ }) => {
59
68
  const select = (pathname) => serverBase.find((baseUrl) => pathname.search(baseUrl) === 0) || "/";
60
69
  let routes = [];
61
70
  finalRouteConfig = routesConfig;
@@ -91,7 +100,7 @@ const routerPlugin = ({ serverBase = [], supportHtml5History = true, basename =
91
100
  const getRouteApp = () => {
92
101
  const useCreateRouter = (props) => {
93
102
  var _window__SERVER_DATA;
94
- const baseUrl = originBaseUrl || ((_window__SERVER_DATA = window._SERVER_DATA) === null || _window__SERVER_DATA === void 0 ? void 0 : _window__SERVER_DATA.router.baseUrl) || select(location.pathname);
103
+ const baseUrl = originalBaseUrl || ((_window__SERVER_DATA = window._SERVER_DATA) === null || _window__SERVER_DATA === void 0 ? void 0 : _window__SERVER_DATA.router.baseUrl) || select(location.pathname);
95
104
  const _basename = baseUrl === "/" ? (0, import_utils.urlJoin)(baseUrl, basename) : baseUrl;
96
105
  let hydrationData = window._ROUTER_DATA;
97
106
  const runtimeContext = (0, import_react.useContext)(import_core.RuntimeReactContext);
@@ -71,7 +71,7 @@ function createFetchHeaders(requestHeaders) {
71
71
  }
72
72
  return headers;
73
73
  }
74
- const routerPlugin = ({ basename = "", originBaseUrl = "", routesConfig, createRoutes }) => {
74
+ const routerPlugin = ({ basename = "", originalBaseUrl = "", routesConfig, createRoutes }) => {
75
75
  return {
76
76
  name: "@modern-js/plugin-router",
77
77
  registerHook: {
@@ -86,7 +86,7 @@ const routerPlugin = ({ basename = "", originBaseUrl = "", routesConfig, createR
86
86
  });
87
87
  }
88
88
  const { request, mode: ssrMode, nonce } = context.ssrContext;
89
- const baseUrl = originBaseUrl || request.baseUrl;
89
+ const baseUrl = originalBaseUrl || request.baseUrl;
90
90
  const _basename = baseUrl === "/" ? (0, import_utils.urlJoin)(baseUrl, basename) : baseUrl;
91
91
  const { reporter, serverTiming } = context.ssrContext;
92
92
  const requestContext = (0, import_node.createRequestContext)();
@@ -23,7 +23,7 @@ function modifyRoutes(modifyFunction) {
23
23
  }
24
24
  }
25
25
  var routerPlugin = function(param) {
26
- var _param_serverBase = param.serverBase, serverBase = _param_serverBase === void 0 ? [] : _param_serverBase, _param_supportHtml5History = param.supportHtml5History, supportHtml5History = _param_supportHtml5History === void 0 ? true : _param_supportHtml5History, _param_basename = param.basename, basename = _param_basename === void 0 ? "" : _param_basename, _param_originBaseUrl = param.originBaseUrl, originBaseUrl = _param_originBaseUrl === void 0 ? "" : _param_originBaseUrl, routesConfig = param.routesConfig, createRoutes = param.createRoutes;
26
+ var _param_serverBase = param.serverBase, serverBase = _param_serverBase === void 0 ? [] : _param_serverBase, _param_supportHtml5History = param.supportHtml5History, supportHtml5History = _param_supportHtml5History === void 0 ? true : _param_supportHtml5History, _param_basename = param.basename, basename = _param_basename === void 0 ? "" : _param_basename, _param_originalBaseUrl = param.originalBaseUrl, originalBaseUrl = _param_originalBaseUrl === void 0 ? "" : _param_originalBaseUrl, routesConfig = param.routesConfig, createRoutes = param.createRoutes;
27
27
  var select = function(pathname) {
28
28
  return serverBase.find(function(baseUrl) {
29
29
  return pathname.search(baseUrl) === 0;
@@ -65,7 +65,7 @@ var routerPlugin = function(param) {
65
65
  var getRouteApp = function() {
66
66
  var useCreateRouter = function(props) {
67
67
  var _window__SERVER_DATA;
68
- var baseUrl = originBaseUrl || ((_window__SERVER_DATA = window._SERVER_DATA) === null || _window__SERVER_DATA === void 0 ? void 0 : _window__SERVER_DATA.router.baseUrl) || select(location.pathname);
68
+ var baseUrl = originalBaseUrl || ((_window__SERVER_DATA = window._SERVER_DATA) === null || _window__SERVER_DATA === void 0 ? void 0 : _window__SERVER_DATA.router.baseUrl) || select(location.pathname);
69
69
  var _basename = baseUrl === "/" ? urlJoin(baseUrl, basename) : baseUrl;
70
70
  var hydrationData = window._ROUTER_DATA;
71
71
  var runtimeContext = useContext(RuntimeReactContext);
@@ -77,7 +77,7 @@ function createFetchHeaders(requestHeaders) {
77
77
  return headers;
78
78
  }
79
79
  var routerPlugin = function(param) {
80
- var _param_basename = param.basename, basename = _param_basename === void 0 ? "" : _param_basename, _param_originBaseUrl = param.originBaseUrl, originBaseUrl = _param_originBaseUrl === void 0 ? "" : _param_originBaseUrl, routesConfig = param.routesConfig, createRoutes = param.createRoutes;
80
+ var _param_basename = param.basename, basename = _param_basename === void 0 ? "" : _param_basename, _param_originalBaseUrl = param.originalBaseUrl, originalBaseUrl = _param_originalBaseUrl === void 0 ? "" : _param_originalBaseUrl, routesConfig = param.routesConfig, createRoutes = param.createRoutes;
81
81
  return {
82
82
  name: "@modern-js/plugin-router",
83
83
  registerHook: {
@@ -101,7 +101,7 @@ var routerPlugin = function(param) {
101
101
  ];
102
102
  }
103
103
  _context_ssrContext = context.ssrContext, request = _context_ssrContext.request, ssrMode = _context_ssrContext.mode, nonce = _context_ssrContext.nonce;
104
- baseUrl = originBaseUrl || request.baseUrl;
104
+ baseUrl = originalBaseUrl || request.baseUrl;
105
105
  _basename = baseUrl === "/" ? urlJoin(baseUrl, basename) : baseUrl;
106
106
  _context_ssrContext1 = context.ssrContext, reporter = _context_ssrContext1.reporter, serverTiming = _context_ssrContext1.serverTiming;
107
107
  requestContext = createRequestContext();
@@ -19,7 +19,16 @@ function modifyRoutes(modifyFunction) {
19
19
  console.error("It is not allowed to modify routes config after create router.");
20
20
  }
21
21
  }
22
- const routerPlugin = ({ serverBase = [], supportHtml5History = true, basename = "", originBaseUrl = "", routesConfig, createRoutes }) => {
22
+ const routerPlugin = ({
23
+ serverBase = [],
24
+ supportHtml5History = true,
25
+ basename = "",
26
+ // when the current child app has multiple entries, there is a problem,
27
+ // so we have added a new parameter, the parameter will replace basename and baseUrl after the major version.
28
+ originalBaseUrl = "",
29
+ routesConfig,
30
+ createRoutes
31
+ }) => {
23
32
  const select = (pathname) => serverBase.find((baseUrl) => pathname.search(baseUrl) === 0) || "/";
24
33
  let routes = [];
25
34
  finalRouteConfig = routesConfig;
@@ -55,7 +64,7 @@ const routerPlugin = ({ serverBase = [], supportHtml5History = true, basename =
55
64
  const getRouteApp = () => {
56
65
  const useCreateRouter = (props) => {
57
66
  var _window__SERVER_DATA;
58
- const baseUrl = originBaseUrl || ((_window__SERVER_DATA = window._SERVER_DATA) === null || _window__SERVER_DATA === void 0 ? void 0 : _window__SERVER_DATA.router.baseUrl) || select(location.pathname);
67
+ const baseUrl = originalBaseUrl || ((_window__SERVER_DATA = window._SERVER_DATA) === null || _window__SERVER_DATA === void 0 ? void 0 : _window__SERVER_DATA.router.baseUrl) || select(location.pathname);
59
68
  const _basename = baseUrl === "/" ? urlJoin(baseUrl, basename) : baseUrl;
60
69
  let hydrationData = window._ROUTER_DATA;
61
70
  const runtimeContext = useContext(RuntimeReactContext);
@@ -36,7 +36,7 @@ function createFetchHeaders(requestHeaders) {
36
36
  }
37
37
  return headers;
38
38
  }
39
- const routerPlugin = ({ basename = "", originBaseUrl = "", routesConfig, createRoutes }) => {
39
+ const routerPlugin = ({ basename = "", originalBaseUrl = "", routesConfig, createRoutes }) => {
40
40
  return {
41
41
  name: "@modern-js/plugin-router",
42
42
  registerHook: {
@@ -51,7 +51,7 @@ const routerPlugin = ({ basename = "", originBaseUrl = "", routesConfig, createR
51
51
  });
52
52
  }
53
53
  const { request, mode: ssrMode, nonce } = context.ssrContext;
54
- const baseUrl = originBaseUrl || request.baseUrl;
54
+ const baseUrl = originalBaseUrl || request.baseUrl;
55
55
  const _basename = baseUrl === "/" ? urlJoin(baseUrl, basename) : baseUrl;
56
56
  const { reporter, serverTiming } = context.ssrContext;
57
57
  const requestContext = createRequestContext();
@@ -3,4 +3,4 @@ import type { RouterConfig, Routes } from './types';
3
3
  export declare let finalRouteConfig: RouterConfig['routesConfig'];
4
4
  export declare let beforeCreateRouter: boolean;
5
5
  export declare function modifyRoutes(modifyFunction: (routes: Routes) => Routes): void;
6
- export declare const routerPlugin: ({ serverBase, supportHtml5History, basename, originBaseUrl, routesConfig, createRoutes, }: RouterConfig) => Plugin;
6
+ export declare const routerPlugin: ({ serverBase, supportHtml5History, basename, originalBaseUrl, routesConfig, createRoutes, }: RouterConfig) => Plugin;
@@ -2,5 +2,5 @@ import type { Plugin } from '../../core';
2
2
  import { SSRServerContext } from '../../ssr/serverRender/types';
3
3
  import type { RouterConfig } from './types';
4
4
  export declare function createFetchHeaders(requestHeaders: SSRServerContext['request']['headers']): Headers;
5
- export declare const routerPlugin: ({ basename, originBaseUrl, routesConfig, createRoutes, }: RouterConfig) => Plugin;
5
+ export declare const routerPlugin: ({ basename, originalBaseUrl, routesConfig, createRoutes, }: RouterConfig) => Plugin;
6
6
  export declare const modifyRoutes: () => void;
@@ -37,7 +37,7 @@ export type RouterConfig = {
37
37
  oldVersion?: boolean;
38
38
  serverBase?: string[];
39
39
  supportHtml5History?: boolean;
40
- originBaseUrl?: string;
40
+ originalBaseUrl?: string;
41
41
  basename?: string;
42
42
  createRoutes?: () => RouteObject[];
43
43
  };
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.49.3-alpha.0",
18
+ "version": "2.49.3",
19
19
  "engines": {
20
20
  "node": ">=14.17.6"
21
21
  },
@@ -170,10 +170,10 @@
170
170
  "react-side-effect": "^2.1.1",
171
171
  "styled-components": "^5.3.1",
172
172
  "@swc/helpers": "0.5.3",
173
- "@modern-js/plugin": "2.49.2",
174
- "@modern-js/types": "2.49.2",
175
- "@modern-js/utils": "2.49.2",
176
- "@modern-js/runtime-utils": "2.49.2"
173
+ "@modern-js/plugin": "2.49.3",
174
+ "@modern-js/utils": "2.49.3",
175
+ "@modern-js/types": "2.49.3",
176
+ "@modern-js/runtime-utils": "2.49.3"
177
177
  },
178
178
  "peerDependencies": {
179
179
  "react": ">=17",
@@ -194,11 +194,11 @@
194
194
  "ts-jest": "^29.1.0",
195
195
  "typescript": "^5",
196
196
  "webpack": "^5.91.0",
197
- "@scripts/build": "2.49.2",
198
- "@modern-js/server-core": "2.49.2",
199
- "@modern-js/app-tools": "2.49.2",
200
- "@scripts/jest-config": "2.49.2",
201
- "@modern-js/core": "2.49.2"
197
+ "@modern-js/app-tools": "2.49.3",
198
+ "@modern-js/core": "2.49.3",
199
+ "@scripts/build": "2.49.3",
200
+ "@modern-js/server-core": "2.49.3",
201
+ "@scripts/jest-config": "2.49.3"
202
202
  },
203
203
  "sideEffects": false,
204
204
  "publishConfig": {
@@ -1,72 +0,0 @@
1
- var __async = (__this, __arguments, generator) => {
2
- return new Promise((resolve, reject) => {
3
- var fulfilled = (value) => {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- };
10
- var rejected = (value) => {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- };
17
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
- step((generator = generator.apply(__this, __arguments)).next());
19
- });
20
- };
21
- import path from "path";
22
- import { PLUGIN_SCHEMAS, cleanRequireCache, isReact18 } from "@modern-js/utils";
23
- import PluginState from "../state/cli";
24
- import PluginSSR from "../ssr/cli";
25
- import PluginRouter from "../router/cli";
26
- import Document from "../document/cli";
27
- var cli_default = () => ({
28
- name: "@modern-js/runtime",
29
- post: [
30
- "@modern-js/plugin-router",
31
- "@modern-js/plugin-ssr",
32
- "@modern-js/plugin-document",
33
- "@modern-js/plugin-state",
34
- "@modern-js/plugin-design-token"
35
- ],
36
- usePlugins: [PluginState(), PluginSSR(), PluginRouter(), Document()],
37
- setup: (api) => {
38
- return {
39
- config() {
40
- const dir = api.useAppContext().internalDirectory || "";
41
- process.env.IS_REACT18 = isReact18(path.join(dir, "../../")).toString();
42
- return {
43
- runtime: {},
44
- runtimeByEntries: {},
45
- source: {
46
- alias: {
47
- "styled-components": require.resolve("styled-components")
48
- },
49
- globalVars: {
50
- "process.env.IS_REACT18": process.env.IS_REACT18
51
- }
52
- }
53
- };
54
- },
55
- validateSchema() {
56
- return PLUGIN_SCHEMAS["@modern-js/runtime"];
57
- },
58
- beforeRestart() {
59
- return __async(this, null, function* () {
60
- cleanRequireCache([
61
- require.resolve("../state/cli"),
62
- require.resolve("../router/cli"),
63
- require.resolve("../ssr/cli")
64
- ]);
65
- });
66
- }
67
- };
68
- }
69
- });
70
- export {
71
- cli_default as default
72
- };
@@ -1,4 +0,0 @@
1
- const isBrowser = () => typeof window !== "undefined" && window.name !== "nodejs";
2
- export {
3
- isBrowser
4
- };
File without changes
@@ -1,10 +0,0 @@
1
- const APP_CONFIG_SYMBOL = "config";
2
- const getConfig = (Component) => Component[APP_CONFIG_SYMBOL];
3
- const defineConfig = (Component, config) => {
4
- Component[APP_CONFIG_SYMBOL] = config;
5
- return Component;
6
- };
7
- export {
8
- defineConfig,
9
- getConfig
10
- };
@@ -1,285 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
- var __objRest = (source, exclude) => {
18
- var target = {};
19
- for (var prop in source)
20
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
21
- target[prop] = source[prop];
22
- if (source != null && __getOwnPropSymbols)
23
- for (var prop of __getOwnPropSymbols(source)) {
24
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
25
- target[prop] = source[prop];
26
- }
27
- return target;
28
- };
29
- var __async = (__this, __arguments, generator) => {
30
- return new Promise((resolve, reject) => {
31
- var fulfilled = (value) => {
32
- try {
33
- step(generator.next(value));
34
- } catch (e) {
35
- reject(e);
36
- }
37
- };
38
- var rejected = (value) => {
39
- try {
40
- step(generator.throw(value));
41
- } catch (e) {
42
- reject(e);
43
- }
44
- };
45
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
46
- step((generator = generator.apply(__this, __arguments)).next());
47
- });
48
- };
49
- import { jsx } from "react/jsx-runtime";
50
- import React, { useContext, useMemo } from "react";
51
- import hoistNonReactStatics from "hoist-non-react-statics";
52
- import { ROUTE_MANIFEST } from "@modern-js/utils/constants";
53
- import {
54
- RuntimeReactContext
55
- } from "../runtime-context";
56
- import { runtime } from "./plugin";
57
- import { createLoaderManager } from "./loader/loaderManager";
58
- const IS_REACT18 = process.env.IS_REACT18 === "true";
59
- function isClientArgs(id) {
60
- return typeof id === "string" || typeof HTMLElement !== "undefined" && id instanceof HTMLElement;
61
- }
62
- const runnerMap = /* @__PURE__ */ new WeakMap();
63
- const getInitialContext = (runner) => ({
64
- loaderManager: createLoaderManager({}),
65
- runner,
66
- isBrowser: true,
67
- routeManifest: typeof window !== "undefined" && window[ROUTE_MANIFEST]
68
- });
69
- const createApp = ({ plugins }) => {
70
- const appRuntime = runtime.clone();
71
- appRuntime.usePlugin(...plugins);
72
- return (App) => {
73
- const runner = appRuntime.init();
74
- const WrapperComponent = (props) => {
75
- const element = React.createElement(
76
- App || React.Fragment,
77
- __spreadValues({}, props),
78
- props.children
79
- );
80
- const context = useContext(RuntimeReactContext);
81
- return runner.provide(
82
- { element, props: __spreadValues({}, props), context },
83
- {
84
- onLast: ({ element: element2 }) => element2
85
- }
86
- );
87
- };
88
- if (App) {
89
- hoistNonReactStatics(WrapperComponent, App);
90
- }
91
- const HOCApp = runner.hoc(
92
- { App: WrapperComponent },
93
- {
94
- onLast: ({ App: App2 }) => {
95
- const WrapComponent = (_a) => {
96
- var _b = _a, { context } = _b, props = __objRest(_b, ["context"]);
97
- let contextValue = context;
98
- if (!(contextValue == null ? void 0 : contextValue.runner)) {
99
- contextValue = getInitialContext(runner);
100
- runner.init(
101
- { context: contextValue },
102
- {
103
- onLast: ({ context: context1 }) => {
104
- var _a2;
105
- return (_a2 = App2 == null ? void 0 : App2.init) == null ? void 0 : _a2.call(App2, context1);
106
- }
107
- }
108
- );
109
- }
110
- return /* @__PURE__ */ jsx(RuntimeReactContext.Provider, {
111
- value: contextValue,
112
- children: /* @__PURE__ */ jsx(App2, __spreadValues({}, props))
113
- });
114
- };
115
- return hoistNonReactStatics(WrapComponent, App2);
116
- }
117
- }
118
- );
119
- runnerMap.set(HOCApp, runner);
120
- return HOCApp;
121
- };
122
- };
123
- const bootstrap = (BootApp, id, root, ReactDOM) => __async(void 0, null, function* () {
124
- var _a, _b;
125
- let App = BootApp;
126
- let runner = runnerMap.get(App);
127
- if (!runner) {
128
- App = createApp({ plugins: [] })(App);
129
- runner = runnerMap.get(App);
130
- }
131
- const context = getInitialContext(runner);
132
- const runInit = (_context) => runner.init(
133
- { context: _context },
134
- {
135
- onLast: ({ context: context1 }) => {
136
- var _a2;
137
- return (_a2 = App == null ? void 0 : App.init) == null ? void 0 : _a2.call(App, context1);
138
- }
139
- }
140
- );
141
- if (!id) {
142
- return React.createElement(App, {
143
- context
144
- });
145
- }
146
- const isBrowser = typeof window !== "undefined" && window.name !== "nodejs";
147
- if (isBrowser) {
148
- if (isClientArgs(id)) {
149
- const ssrData = window._SSR_DATA;
150
- const loadersData = ((_a = ssrData == null ? void 0 : ssrData.data) == null ? void 0 : _a.loadersData) || {};
151
- const initialLoadersState = Object.keys(loadersData).reduce(
152
- (res, key) => {
153
- const loaderData = loadersData[key];
154
- if (loaderData.loading !== false) {
155
- return res;
156
- }
157
- res[key] = loaderData;
158
- return res;
159
- },
160
- {}
161
- );
162
- Object.assign(context, __spreadValues({
163
- loaderManager: createLoaderManager(initialLoadersState, {
164
- skipStatic: true
165
- })
166
- }, ssrData ? { ssrContext: ssrData == null ? void 0 : ssrData.context } : {}));
167
- context.initialData = (_b = ssrData == null ? void 0 : ssrData.data) == null ? void 0 : _b.initialData;
168
- const initialData = yield runInit(context);
169
- if (initialData) {
170
- context.initialData = initialData;
171
- }
172
- const rootElement = typeof id !== "string" ? id : document.getElementById(id || "root");
173
- if (!ReactDOM) {
174
- throw Error("The `bootstrap` need provide `ReactDOM` parameter");
175
- }
176
- const ModernRender = (App2) => {
177
- if (IS_REACT18) {
178
- if (root) {
179
- root.render(App2);
180
- } else if (ReactDOM.createRoot) {
181
- ReactDOM.createRoot(rootElement).render(App2);
182
- } else {
183
- throw Error(
184
- "The `bootstrap` `ReactDOM` parameter needs to provide the `createRoot` method"
185
- );
186
- }
187
- } else {
188
- if (!ReactDOM.render) {
189
- throw Error(
190
- "The `bootstrap` `ReactDOM` parameter needs to provide the `render` method"
191
- );
192
- }
193
- ReactDOM.render(App2, rootElement);
194
- }
195
- };
196
- const ModernHydrate = (App2, callback) => {
197
- if (IS_REACT18) {
198
- if (!ReactDOM.hydrateRoot) {
199
- throw Error(
200
- "The `bootstrap` `ReactDOM` parameter needs to provide the `hydrateRoot` method"
201
- );
202
- }
203
- ReactDOM.hydrateRoot(rootElement, App2);
204
- } else {
205
- if (!ReactDOM.hydrate) {
206
- throw Error(
207
- "The `bootstrap` `ReactDOM` parameter needs to provide the `hydrate` method"
208
- );
209
- }
210
- ReactDOM.hydrate(App2, rootElement, callback);
211
- }
212
- };
213
- return runner.client(
214
- {
215
- App,
216
- context,
217
- ModernRender,
218
- ModernHydrate
219
- },
220
- {
221
- onLast: ({ App: App2 }) => {
222
- ModernRender(React.createElement(App2, { context }));
223
- }
224
- }
225
- );
226
- } else {
227
- throw Error(
228
- "`bootstrap` needs id in browser environment, it needs to be string or element"
229
- );
230
- }
231
- } else {
232
- Object.assign(context, {
233
- ssrContext: id,
234
- isBrowser: false,
235
- loaderManager: createLoaderManager(
236
- {},
237
- {
238
- skipNonStatic: id.staticGenerate,
239
- skipStatic: process.env.NODE_ENV === "production" && !id.staticGenerate
240
- }
241
- )
242
- });
243
- const isRedirectResponse = (result) => {
244
- if (typeof Response !== "undefined" && result instanceof Response && result.status >= 300 && result.status <= 399) {
245
- const { status } = result;
246
- const redirectUrl = result.headers.get("Location") || "/";
247
- const { ssrContext } = context;
248
- if (ssrContext) {
249
- ssrContext.res.statusCode = status;
250
- ssrContext.res.setHeader("Location", redirectUrl);
251
- ssrContext.redirection.status = status;
252
- ssrContext.redirection.url = redirectUrl;
253
- }
254
- return true;
255
- }
256
- return false;
257
- };
258
- const initialData = yield runInit(context);
259
- if (!isRedirectResponse(initialData)) {
260
- context.initialData = initialData;
261
- return runner.server({
262
- App,
263
- context
264
- });
265
- }
266
- }
267
- });
268
- const useRuntimeContext = () => {
269
- const context = useContext(RuntimeReactContext);
270
- const memoizedContext = useMemo(
271
- () => context.runner.pickContext(
272
- { context, pickedContext: {} },
273
- {
274
- onLast: ({ pickedContext }) => pickedContext
275
- }
276
- ),
277
- [context]
278
- );
279
- return memoizedContext;
280
- };
281
- export {
282
- bootstrap,
283
- createApp,
284
- useRuntimeContext
285
- };
@@ -1,16 +0,0 @@
1
- import { createPlugin, createRuntime, runtime, registerInit } from "./plugin";
2
- import { defineConfig, getConfig } from "./app-config";
3
- export * from "./compatible";
4
- import { RuntimeReactContext, ServerRouterContext } from "../runtime-context";
5
- export * from "./loader";
6
- export * from "@modern-js/plugin";
7
- export {
8
- RuntimeReactContext,
9
- ServerRouterContext,
10
- createPlugin,
11
- createRuntime,
12
- defineConfig,
13
- getConfig,
14
- registerInit,
15
- runtime
16
- };
@@ -1,4 +0,0 @@
1
- import { default as default2 } from "./useLoader";
2
- export {
3
- default2 as useLoader
4
- };