@modern-js/runtime 2.18.0 → 2.19.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 (41) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/cjs/router/runtime/DeferredDataScripts.node.js +6 -6
  3. package/dist/cjs/router/runtime/index.js +5 -5
  4. package/dist/cjs/router/runtime/plugin.js +2 -2
  5. package/dist/cjs/router/runtime/plugin.node.js +2 -2
  6. package/dist/cjs/router/runtime/utils.js +4 -5
  7. package/dist/cjs/ssr/cli/index.js +3 -3
  8. package/dist/cjs/ssr/index.js +3 -3
  9. package/dist/cjs/ssr/prefetch.js +2 -2
  10. package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +2 -2
  11. package/dist/cjs/ssr/serverRender/renderToStream/index.js +2 -2
  12. package/dist/cjs/ssr/serverRender/renderToString/entry.js +3 -3
  13. package/dist/cjs/ssr/serverRender/renderToString/index.js +2 -2
  14. package/dist/esm/router/runtime/DeferredDataScripts.node.js +1 -1
  15. package/dist/esm/router/runtime/index.js +2 -2
  16. package/dist/esm/router/runtime/plugin.js +1 -1
  17. package/dist/esm/router/runtime/plugin.node.js +1 -1
  18. package/dist/esm/router/runtime/utils.js +1 -2
  19. package/dist/esm/ssr/cli/index.js +3 -3
  20. package/dist/esm/ssr/index.js +1 -1
  21. package/dist/esm/ssr/prefetch.js +1 -1
  22. package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +1 -1
  23. package/dist/esm/ssr/serverRender/renderToStream/index.js +1 -1
  24. package/dist/esm/ssr/serverRender/renderToString/entry.js +1 -1
  25. package/dist/esm/ssr/serverRender/renderToString/index.js +1 -1
  26. package/dist/esm-node/router/runtime/DeferredDataScripts.node.js +1 -1
  27. package/dist/esm-node/router/runtime/index.js +2 -2
  28. package/dist/esm-node/router/runtime/plugin.js +1 -1
  29. package/dist/esm-node/router/runtime/plugin.node.js +1 -1
  30. package/dist/esm-node/router/runtime/utils.js +1 -2
  31. package/dist/esm-node/ssr/cli/index.js +3 -3
  32. package/dist/esm-node/ssr/index.js +1 -1
  33. package/dist/esm-node/ssr/prefetch.js +1 -1
  34. package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +1 -1
  35. package/dist/esm-node/ssr/serverRender/renderToStream/index.js +1 -1
  36. package/dist/esm-node/ssr/serverRender/renderToString/entry.js +1 -1
  37. package/dist/esm-node/ssr/serverRender/renderToString/index.js +1 -1
  38. package/dist/types/router/runtime/index.d.ts +1 -1
  39. package/dist/types/router/runtime/utils.d.ts +1 -1
  40. package/dist/types/runtimeContext.d.ts +1 -1
  41. package/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # @modern-js/runtime
2
2
 
3
+ ## 2.19.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 8a3a2e5: feat: support modifyRoutes hook for router v5
8
+ feat: 为 router v5 支持 modifyRoutes hook
9
+
10
+ ### Patch Changes
11
+
12
+ - 579d3d5: fix: config hook can't get nomarlized config
13
+ fix: config hook 不能拿到固定后的 config
14
+ - Updated dependencies [1134fe2]
15
+ - @modern-js/utils@2.19.0
16
+ - @modern-js/plugin@2.19.0
17
+ - @modern-js/types@2.19.0
18
+
19
+ ## 2.18.1
20
+
21
+ ### Patch Changes
22
+
23
+ - 8fb93d1: fix: replace route id correctly
24
+ fix: 正确地替换 route id
25
+ - @modern-js/plugin@2.18.1
26
+ - @modern-js/types@2.18.1
27
+ - @modern-js/utils@2.18.1
28
+
3
29
  ## 2.18.0
4
30
 
5
31
  ### Minor Changes
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "default", {
9
9
  const _jsxruntime = require("react/jsx-runtime");
10
10
  const _react = require("react");
11
11
  const _reactrouterdom = require("react-router-dom");
12
- const _serialize = require("@modern-js/utils/universal/serialize");
12
+ const _runtimenode = require("@modern-js/utils/runtime-node");
13
13
  const _common = require("../../common");
14
14
  const _utils = require("./utils");
15
15
  const setupFnStr = `function s(r,e){_ROUTER_DATA.r=_ROUTER_DATA.r||{},_ROUTER_DATA.r[r]=_ROUTER_DATA.r[r]||{};return new Promise((function(A,R){_ROUTER_DATA.r[r][e]={resolve:A,reject:R}}))};`;
@@ -32,7 +32,7 @@ const DeferredDataScripts = () => {
32
32
  errors: (0, _utils.serializeErrors)(staticContext.errors)
33
33
  };
34
34
  let initialScripts = [
35
- `_ROUTER_DATA = ${(0, _serialize.serializeJson)(_ROUTER_DATA)};`,
35
+ `_ROUTER_DATA = ${(0, _runtimenode.serializeJson)(_ROUTER_DATA)};`,
36
36
  `_ROUTER_DATA.s = ${setupFnStr}`,
37
37
  `_ROUTER_DATA.r = ${resolveFnStr}`,
38
38
  `_ROUTER_DATA.p = ${preResolvedFnStr}`
@@ -56,12 +56,12 @@ const DeferredDataScripts = () => {
56
56
  message: trackedPromise._error.message,
57
57
  stack: process.env.NODE_ENV !== "production" ? trackedPromise._error.stack : void 0
58
58
  };
59
- return `${JSON.stringify(key)}: _ROUTER_DATA.p(${void 0}, ${(0, _serialize.serializeJson)(error)})`;
59
+ return `${JSON.stringify(key)}: _ROUTER_DATA.p(${void 0}, ${(0, _runtimenode.serializeJson)(error)})`;
60
60
  } else {
61
61
  if (typeof trackedPromise._data === "undefined") {
62
62
  throw new Error(`The deferred data for ${key} was not resolved, did you forget to return data from a deferred promise`);
63
63
  }
64
- return `${JSON.stringify(key)}: _ROUTER_DATA.p(${(0, _serialize.serializeJson)(trackedPromise._data)})`;
64
+ return `${JSON.stringify(key)}: _ROUTER_DATA.p(${(0, _runtimenode.serializeJson)(trackedPromise._data)})`;
65
65
  }
66
66
  }
67
67
  }).join(",\n");
@@ -101,7 +101,7 @@ const DeferredDataScript = ({ data, routeId, dataKey }) => {
101
101
  async: true,
102
102
  suppressHydrationWarning: true,
103
103
  dangerouslySetInnerHTML: {
104
- __html: `_ROUTER_DATA.r(${JSON.stringify(routeId)}, ${JSON.stringify(dataKey)}, ${(0, _serialize.serializeJson)(data2)});`
104
+ __html: `_ROUTER_DATA.r(${JSON.stringify(routeId)}, ${JSON.stringify(dataKey)}, ${(0, _runtimenode.serializeJson)(data2)});`
105
105
  }
106
106
  })
107
107
  }) : null
@@ -112,7 +112,7 @@ const ErrorDeferredDataScript = ({ routeId, dataKey }) => {
112
112
  return /* @__PURE__ */ (0, _jsxruntime.jsx)("script", {
113
113
  suppressHydrationWarning: true,
114
114
  dangerouslySetInnerHTML: {
115
- __html: `_ROUTER_DATA.r(${JSON.stringify(routeId)}, ${JSON.stringify(dataKey)}, ${void 0}, ${(0, _serialize.serializeJson)({
115
+ __html: `_ROUTER_DATA.r(${JSON.stringify(routeId)}, ${JSON.stringify(dataKey)}, ${void 0}, ${(0, _runtimenode.serializeJson)({
116
116
  message: error.message,
117
117
  stack: error.stack
118
118
  })});`
@@ -73,15 +73,15 @@ _export(exports, {
73
73
  createPath: () => _reactrouterdom.createPath,
74
74
  unstable_useBlocker: () => _reactrouterdom.unstable_useBlocker,
75
75
  unstable_usePrompt: () => _reactrouterdom.unstable_usePrompt,
76
- defer: () => _remixrouter.defer,
77
- json: () => _remixrouter.json,
78
- redirect: () => _remixrouter.redirect
76
+ defer: () => _router.defer,
77
+ json: () => _router.json,
78
+ redirect: () => _router.redirect
79
79
  });
80
80
  const _reactrouterdom = require("react-router-dom");
81
81
  const _plugin = require("./plugin");
82
82
  _export_star(require("./withRouter"), exports);
83
83
  const _PrefetchLink = require("./PrefetchLink");
84
- const _remixrouter = require("@modern-js/utils/universal/remix-router");
84
+ const _router = require("@modern-js/utils/runtime/router");
85
85
  function _export_star(from, to) {
86
86
  Object.keys(from).forEach(function(k) {
87
87
  if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
@@ -97,6 +97,6 @@ function _export_star(from, to) {
97
97
  }
98
98
  const _default = _plugin.routerPlugin;
99
99
  const useRouteLoaderData = (routeId) => {
100
- const realRouteId = routeId.replace(/\((.*?)\)/g, "[$1]");
100
+ const realRouteId = routeId.replace(/\[(.*?)\]/g, "($1)");
101
101
  return (0, _reactrouterdom.useRouteLoaderData)(realRouteId);
102
102
  };
@@ -19,7 +19,7 @@ const _jsxruntime = require("react/jsx-runtime");
19
19
  const _react = /* @__PURE__ */ _interop_require_default(require("react"));
20
20
  const _reactrouterdom = require("react-router-dom");
21
21
  const _hoistnonreactstatics = /* @__PURE__ */ _interop_require_default(require("hoist-non-react-statics"));
22
- const _runtime = require("@modern-js/utils/runtime");
22
+ const _runtimebrowser = require("@modern-js/utils/runtime-browser");
23
23
  const _hooks = require("./hooks");
24
24
  const _utils = require("./utils");
25
25
  function _interop_require_default(obj) {
@@ -44,7 +44,7 @@ const routerPlugin = ({ serverBase = [], supportHtml5History = true, basename =
44
44
  const select = (pathname) => serverBase.find((baseUrl) => pathname.search(baseUrl) === 0) || "/";
45
45
  let routes = [];
46
46
  finalRouteConfig = routesConfig;
47
- window._SERVER_DATA = (0, _runtime.parsedJSONFromElement)("__MODERN_SERVER_DATA__");
47
+ window._SERVER_DATA = (0, _runtimebrowser.parsedJSONFromElement)("__MODERN_SERVER_DATA__");
48
48
  return {
49
49
  name: "@modern-js/plugin-router",
50
50
  registerHook: {
@@ -16,7 +16,7 @@ _export(exports, {
16
16
  });
17
17
  const _jsxruntime = require("react/jsx-runtime");
18
18
  const _react = /* @__PURE__ */ _interop_require_wildcard(require("react"));
19
- const _remixrouter = require("@modern-js/utils/universal/remix-router");
19
+ const _router = require("@modern-js/utils/runtime/router");
20
20
  const _server = require("react-router-dom/server");
21
21
  const _hoistnonreactstatics = /* @__PURE__ */ _interop_require_default(require("hoist-non-react-statics"));
22
22
  const _reactrouterdom = require("react-router-dom");
@@ -117,7 +117,7 @@ const routerPlugin = ({ basename = "", routesConfig, createRoutes }) => {
117
117
  routesConfig,
118
118
  ssrMode
119
119
  }));
120
- const { query } = (0, _remixrouter.createStaticHandler)(routes, {
120
+ const { query } = (0, _router.createStaticHandler)(routes, {
121
121
  basename: _basename
122
122
  });
123
123
  const remixRequest = createFetchRequest(request);
@@ -21,8 +21,7 @@ _export(exports, {
21
21
  const _jsxruntime = require("react/jsx-runtime");
22
22
  const _react = /* @__PURE__ */ _interop_require_default(require("react"));
23
23
  const _reactrouterdom = require("react-router-dom");
24
- const _remixrouter = require("@modern-js/utils/universal/remix-router");
25
- const _nestedRoutes = require("@modern-js/utils/universal/nestedRoutes");
24
+ const _router = require("@modern-js/utils/runtime/router");
26
25
  const _DefaultNotFound = require("./DefaultNotFound");
27
26
  const _DeferredDataScripts = /* @__PURE__ */ _interop_require_default(require("./DeferredDataScripts"));
28
27
  function _interop_require_default(obj) {
@@ -46,7 +45,7 @@ function getRouteComponents(routes, { globalApp, ssrMode, props }) {
46
45
  const routeElements = [];
47
46
  for (const route of routes) {
48
47
  if (route.type === "nested") {
49
- const routeElement = (0, _nestedRoutes.renderNestedRoute)(route, {
48
+ const routeElement = (0, _router.renderNestedRoute)(route, {
50
49
  DeferredDataComponent: ssrMode === "stream" ? _DeferredDataScripts.default : void 0,
51
50
  props
52
51
  });
@@ -120,7 +119,7 @@ function serializeErrors(errors) {
120
119
  const entries = Object.entries(errors);
121
120
  const serialized = {};
122
121
  for (const [key, val] of entries) {
123
- if ((0, _remixrouter.isRouteErrorResponse)(val)) {
122
+ if ((0, _router.isRouteErrorResponse)(val)) {
124
123
  serialized[key] = {
125
124
  ...val,
126
125
  __type: "RouteErrorResponse"
@@ -145,7 +144,7 @@ function deserializeErrors(errors) {
145
144
  const serialized = {};
146
145
  for (const [key, val] of entries) {
147
146
  if (val && val.__type === "RouteErrorResponse") {
148
- serialized[key] = new _remixrouter.ErrorResponse(val.status, val.statusText, val.data, val.internal === true);
147
+ serialized[key] = new _router.ErrorResponse(val.status, val.statusText, val.data, val.internal === true);
149
148
  } else if (val && val.__type === "Error") {
150
149
  const error = new Error(val.message);
151
150
  error.stack = val.stack;
@@ -42,7 +42,7 @@ const _default = () => {
42
42
  config() {
43
43
  const appContext = api.useAppContext();
44
44
  pluginsExportsUtils = (0, _utils.createRuntimeExportsUtils)(appContext.internalDirectory, "plugins");
45
- const userConfig = api.useResolvedConfigContext();
45
+ const userConfig = api.useConfigContext();
46
46
  const { bundlerType = "webpack" } = api.useAppContext();
47
47
  const babelConfig = (() => {
48
48
  if (bundlerType === "webpack") {
@@ -70,8 +70,8 @@ const _default = () => {
70
70
  return {
71
71
  source: {
72
72
  alias: {
73
- // ensure that all packages use the same storage in @modern-js/utils/ssr
74
- "@modern-js/utils/ssr": require.resolve("@modern-js/utils/ssr"),
73
+ // ensure that all packages use the same storage in @modern-js/utils/runtime-node
74
+ "@modern-js/utils/runtime-node": require.resolve("@modern-js/utils/runtime-node"),
75
75
  "@modern-js/runtime/plugins": pluginsExportsUtils.getPath()
76
76
  },
77
77
  globalVars: (values, { target }) => {
@@ -16,7 +16,7 @@ _export(exports, {
16
16
  const _jsxruntime = require("react/jsx-runtime");
17
17
  const _component = require("@loadable/component");
18
18
  const _hoistnonreactstatics = /* @__PURE__ */ _interop_require_default(require("hoist-non-react-statics"));
19
- const _runtime = require("@modern-js/utils/runtime");
19
+ const _runtimebrowser = require("@modern-js/utils/runtime-browser");
20
20
  const _types = require("./serverRender/types");
21
21
  const _withCallback = require("./react/withCallback");
22
22
  const _utils = require("./utils");
@@ -46,8 +46,8 @@ const ssr = (config) => {
46
46
  setup: () => {
47
47
  const mockResp = (0, _utils.mockResponse)();
48
48
  if (config.inlineScript === false) {
49
- window._SSR_DATA = (0, _runtime.parsedJSONFromElement)(_utils1.SSR_DATA_JSON_ID);
50
- window._ROUTER_DATA = (0, _runtime.parsedJSONFromElement)(_utils1.ROUTER_DATA_JSON_ID);
49
+ window._SSR_DATA = (0, _runtimebrowser.parsedJSONFromElement)(_utils1.SSR_DATA_JSON_ID);
50
+ window._ROUTER_DATA = (0, _runtimebrowser.parsedJSONFromElement)(_utils1.ROUTER_DATA_JSON_ID);
51
51
  }
52
52
  return {
53
53
  client: async ({ App, context, ModernRender, ModernHydrate }) => {
@@ -8,10 +8,10 @@ Object.defineProperty(exports, "default", {
8
8
  });
9
9
  const _jsxruntime = require("react/jsx-runtime");
10
10
  const _server = require("react-dom/server");
11
- const _ssr = require("@modern-js/utils/ssr");
11
+ const _runtimenode = require("@modern-js/utils/runtime-node");
12
12
  const _server1 = require("@loadable/server");
13
13
  const prefetch = async (App, context) => {
14
- return (0, _ssr.run)(context.ssrContext.request.headers, async () => {
14
+ return (0, _runtimenode.run)(context.ssrContext.request.headers, async () => {
15
15
  var _context_store;
16
16
  const { ssrContext } = context;
17
17
  const { loadableStats } = ssrContext;
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "buildShellAfterTemplate", {
6
6
  enumerable: true,
7
7
  get: () => buildShellAfterTemplate
8
8
  });
9
- const _serialize = require("@modern-js/utils/universal/serialize");
9
+ const _runtimenode = require("@modern-js/utils/runtime-node");
10
10
  const _buildTemplateshare = require("./buildTemplate.share");
11
11
  function buildShellAfterTemplate(afterAppTemplate, options) {
12
12
  const callbacks = [
@@ -40,7 +40,7 @@ function buildShellAfterTemplate(afterAppTemplate, options) {
40
40
  renderLevel
41
41
  };
42
42
  return `
43
- <script>window._SSR_DATA = ${(0, _serialize.serializeJson)(SSRData)}</script>
43
+ <script>window._SSR_DATA = ${(0, _runtimenode.serializeJson)(SSRData)}</script>
44
44
  `;
45
45
  }
46
46
  }
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "render", {
7
7
  get: () => render
8
8
  });
9
9
  const _react = require("react");
10
- const _ssr = require("@modern-js/utils/ssr");
10
+ const _runtimenode = require("@modern-js/utils/runtime-node");
11
11
  const _prerender = require("../../react/prerender");
12
12
  const _time = require("../time");
13
13
  const _renderToPipe = /* @__PURE__ */ _interop_require_default(require("./renderToPipe"));
@@ -21,7 +21,7 @@ const render = ({ App, context }) => {
21
21
  if (!ssrContext) {
22
22
  throw new Error('The "ssrContext" must not be undefined, but received undefined');
23
23
  }
24
- return (0, _ssr.run)(ssrContext.request.headers, async () => {
24
+ return (0, _runtimenode.run)(ssrContext.request.headers, async () => {
25
25
  const end = (0, _time.time)();
26
26
  const rootElement = (0, _react.createElement)(App, {
27
27
  context: Object.assign(context || {}, {
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "default", {
8
8
  });
9
9
  const _react = /* @__PURE__ */ _interop_require_default(require("react"));
10
10
  const _server = /* @__PURE__ */ _interop_require_default(require("react-dom/server"));
11
- const _serialize = require("@modern-js/utils/universal/serialize");
11
+ const _runtimenode = require("@modern-js/utils/runtime-node");
12
12
  const _reacthelmet = /* @__PURE__ */ _interop_require_default(require("react-helmet"));
13
13
  const _utils = require("../../../router/runtime/utils");
14
14
  const _helmet = /* @__PURE__ */ _interop_require_default(require("../helmet"));
@@ -183,10 +183,10 @@ class Entry {
183
183
  }
184
184
  getSSRDataScript(templateData, routerData) {
185
185
  const useInlineScript = this.pluginConfig.inlineScript !== false;
186
- const ssrData = (0, _serialize.serializeJson)(templateData);
186
+ const ssrData = (0, _runtimenode.serializeJson)(templateData);
187
187
  let ssrDataScripts = useInlineScript ? `<script>window._SSR_DATA = ${ssrData}</script>` : `<script type="application/json" id="${_utils1.SSR_DATA_JSON_ID}">${ssrData}</script>`;
188
188
  if (routerData) {
189
- const serializedRouterData = (0, _serialize.serializeJson)(routerData);
189
+ const serializedRouterData = (0, _runtimenode.serializeJson)(routerData);
190
190
  ssrDataScripts += useInlineScript ? `
191
191
  <script>window._ROUTER_DATA = ${serializedRouterData}</script>` : `
192
192
  <script type="application/json" id="${_utils1.ROUTER_DATA_JSON_ID}">${serializedRouterData}</script>`;
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "render", {
6
6
  enumerable: true,
7
7
  get: () => render
8
8
  });
9
- const _ssr = require("@modern-js/utils/ssr");
9
+ const _runtimenode = require("@modern-js/utils/runtime-node");
10
10
  const _prerender = require("../../react/prerender");
11
11
  const _time = require("../time");
12
12
  const _entry = /* @__PURE__ */ _interop_require_default(require("./entry"));
@@ -17,7 +17,7 @@ function _interop_require_default(obj) {
17
17
  }
18
18
  const render = ({ App, context, config }) => {
19
19
  const ssrContext = context.ssrContext;
20
- return (0, _ssr.run)(ssrContext.request.headers, async () => {
20
+ return (0, _runtimenode.run)(ssrContext.request.headers, async () => {
21
21
  const entry = new _entry.default({
22
22
  ctx: ssrContext,
23
23
  App,
@@ -59,7 +59,7 @@ function _unsupported_iterable_to_array(o, minLen) {
59
59
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
60
60
  import { Suspense, useEffect, useRef, useMemo, useContext } from "react";
61
61
  import { Await, UNSAFE_DataRouterContext as DataRouterContext, useAsyncError } from "react-router-dom";
62
- import { serializeJson } from "@modern-js/utils/universal/serialize";
62
+ import { serializeJson } from "@modern-js/utils/runtime-node";
63
63
  import { JSX_SHELL_STREAM_END_MARK } from "../../common";
64
64
  import { serializeErrors } from "./utils";
65
65
  var setupFnStr = "function s(r,e){_ROUTER_DATA.r=_ROUTER_DATA.r||{},_ROUTER_DATA.r[r]=_ROUTER_DATA.r[r]||{};return new Promise((function(A,R){_ROUTER_DATA.r[r][e]={resolve:A,reject:R}}))};";
@@ -5,7 +5,7 @@ export { modifyRoutes } from "./plugin";
5
5
  export * from "./withRouter";
6
6
  export { Link, NavLink } from "./PrefetchLink";
7
7
  export var useRouteLoaderData = function(routeId) {
8
- var realRouteId = routeId.replace(/\((.*?)\)/g, "[$1]");
8
+ var realRouteId = routeId.replace(/\[(.*?)\]/g, "($1)");
9
9
  return useRouteData(realRouteId);
10
10
  };
11
11
  export {
@@ -63,4 +63,4 @@ export {
63
63
  unstable_useBlocker,
64
64
  unstable_usePrompt
65
65
  } from "react-router-dom";
66
- export { defer, json, redirect } from "@modern-js/utils/universal/remix-router";
66
+ export { defer, json, redirect } from "@modern-js/utils/runtime/router";
@@ -53,7 +53,7 @@ function _object_spread_props(target, source) {
53
53
  import { jsx as _jsx } from "react/jsx-runtime";
54
54
  import { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements, useMatches, useLocation } from "react-router-dom";
55
55
  import hoistNonReactStatics from "hoist-non-react-statics";
56
- import { parsedJSONFromElement } from "@modern-js/utils/runtime";
56
+ import { parsedJSONFromElement } from "@modern-js/utils/runtime-browser";
57
57
  import { modifyRoutes as modifyRoutesHook } from "./hooks";
58
58
  import { deserializeErrors, renderRoutes, urlJoin } from "./utils";
59
59
  export var finalRouteConfig = {
@@ -248,7 +248,7 @@ var __generator = function(thisArg, body) {
248
248
  };
249
249
  import { jsx as _jsx } from "react/jsx-runtime";
250
250
  import { useContext } from "react";
251
- import { createStaticHandler } from "@modern-js/utils/universal/remix-router";
251
+ import { createStaticHandler } from "@modern-js/utils/runtime/router";
252
252
  import { createStaticRouter, StaticRouterProvider } from "react-router-dom/server";
253
253
  import hoistNonReactStatics from "hoist-non-react-statics";
254
254
  import { createRoutesFromElements } from "react-router-dom";
@@ -149,8 +149,7 @@ function _unsupported_iterable_to_array(o, minLen) {
149
149
  }
150
150
  import { jsx as _jsx } from "react/jsx-runtime";
151
151
  import { Route } from "react-router-dom";
152
- import { ErrorResponse, isRouteErrorResponse } from "@modern-js/utils/universal/remix-router";
153
- import { renderNestedRoute } from "@modern-js/utils/universal/nestedRoutes";
152
+ import { ErrorResponse, isRouteErrorResponse, renderNestedRoute } from "@modern-js/utils/runtime/router";
154
153
  import { DefaultNotFound } from "./DefaultNotFound";
155
154
  import DeferredDataScripts from "./DeferredDataScripts";
156
155
  export function getRouteComponents(routes, param) {
@@ -48,7 +48,7 @@ export default function() {
48
48
  config: function config() {
49
49
  var appContext = api.useAppContext();
50
50
  pluginsExportsUtils = createRuntimeExportsUtils(appContext.internalDirectory, "plugins");
51
- var userConfig = api.useResolvedConfigContext();
51
+ var userConfig = api.useConfigContext();
52
52
  var _api_useAppContext = api.useAppContext(), _api_useAppContext_bundlerType = _api_useAppContext.bundlerType, bundlerType = _api_useAppContext_bundlerType === void 0 ? "webpack" : _api_useAppContext_bundlerType;
53
53
  var babelConfig = function() {
54
54
  if (bundlerType === "webpack") {
@@ -76,8 +76,8 @@ export default function() {
76
76
  return {
77
77
  source: {
78
78
  alias: {
79
- // ensure that all packages use the same storage in @modern-js/utils/ssr
80
- "@modern-js/utils/ssr": require.resolve("@modern-js/utils/ssr"),
79
+ // ensure that all packages use the same storage in @modern-js/utils/runtime-node
80
+ "@modern-js/utils/runtime-node": require.resolve("@modern-js/utils/runtime-node"),
81
81
  "@modern-js/runtime/plugins": pluginsExportsUtils.getPath()
82
82
  },
83
83
  globalVars: function(values, param) {
@@ -184,7 +184,7 @@ var __generator = function(thisArg, body) {
184
184
  import { jsx as _jsx } from "react/jsx-runtime";
185
185
  import { loadableReady } from "@loadable/component";
186
186
  import hoistNonReactStatics from "hoist-non-react-statics";
187
- import { parsedJSONFromElement } from "@modern-js/utils/runtime";
187
+ import { parsedJSONFromElement } from "@modern-js/utils/runtime-browser";
188
188
  import { RenderLevel } from "./serverRender/types";
189
189
  import { WithCallback } from "./react/withCallback";
190
190
  import { formatClient, mockResponse, isReact18 } from "./utils";
@@ -131,7 +131,7 @@ var __generator = function(thisArg, body) {
131
131
  };
132
132
  import { jsx as _jsx } from "react/jsx-runtime";
133
133
  import { renderToStaticMarkup } from "react-dom/server";
134
- import { run } from "@modern-js/utils/ssr";
134
+ import { run } from "@modern-js/utils/runtime-node";
135
135
  import { ChunkExtractor } from "@loadable/server";
136
136
  var prefetch = function() {
137
137
  var _ref = _async_to_generator(function(App, context) {
@@ -26,7 +26,7 @@ function _object_spread(target) {
26
26
  }
27
27
  return target;
28
28
  }
29
- import { serializeJson } from "@modern-js/utils/universal/serialize";
29
+ import { serializeJson } from "@modern-js/utils/runtime-node";
30
30
  import { buildTemplate } from "./buildTemplate.share";
31
31
  export function buildShellAfterTemplate(afterAppTemplate, options) {
32
32
  var injectSSRDataScript = function injectSSRDataScript2(template) {
@@ -130,7 +130,7 @@ var __generator = function(thisArg, body) {
130
130
  }
131
131
  };
132
132
  import { createElement } from "react";
133
- import { run } from "@modern-js/utils/ssr";
133
+ import { run } from "@modern-js/utils/runtime-node";
134
134
  import { PreRender } from "../../react/prerender";
135
135
  import { time } from "../time";
136
136
  import renderToPipe from "./renderToPipe";
@@ -181,7 +181,7 @@ var __generator = function(thisArg, body) {
181
181
  };
182
182
  import React from "react";
183
183
  import ReactDomServer from "react-dom/server";
184
- import { serializeJson } from "@modern-js/utils/universal/serialize";
184
+ import { serializeJson } from "@modern-js/utils/runtime-node";
185
185
  import ReactHelmet from "react-helmet";
186
186
  import { serializeErrors } from "../../../router/runtime/utils";
187
187
  import helmetReplace from "../helmet";
@@ -129,7 +129,7 @@ var __generator = function(thisArg, body) {
129
129
  };
130
130
  }
131
131
  };
132
- import { run } from "@modern-js/utils/ssr";
132
+ import { run } from "@modern-js/utils/runtime-node";
133
133
  import { PreRender } from "../../react/prerender";
134
134
  import { time } from "../time";
135
135
  import SSREntry from "./entry";
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { Suspense, useEffect, useRef, useMemo, useContext } from "react";
3
3
  import { Await, UNSAFE_DataRouterContext as DataRouterContext, useAsyncError } from "react-router-dom";
4
- import { serializeJson } from "@modern-js/utils/universal/serialize";
4
+ import { serializeJson } from "@modern-js/utils/runtime-node";
5
5
  import { JSX_SHELL_STREAM_END_MARK } from "../../common";
6
6
  import { serializeErrors } from "./utils";
7
7
  const setupFnStr = `function s(r,e){_ROUTER_DATA.r=_ROUTER_DATA.r||{},_ROUTER_DATA.r[r]=_ROUTER_DATA.r[r]||{};return new Promise((function(A,R){_ROUTER_DATA.r[r][e]={resolve:A,reject:R}}))};`;
@@ -5,7 +5,7 @@ export { modifyRoutes } from "./plugin";
5
5
  export * from "./withRouter";
6
6
  export { Link, NavLink } from "./PrefetchLink";
7
7
  export const useRouteLoaderData = (routeId) => {
8
- const realRouteId = routeId.replace(/\((.*?)\)/g, "[$1]");
8
+ const realRouteId = routeId.replace(/\[(.*?)\]/g, "($1)");
9
9
  return useRouteData(realRouteId);
10
10
  };
11
11
  export {
@@ -63,4 +63,4 @@ export {
63
63
  unstable_useBlocker,
64
64
  unstable_usePrompt
65
65
  } from "react-router-dom";
66
- export { defer, json, redirect } from "@modern-js/utils/universal/remix-router";
66
+ export { defer, json, redirect } from "@modern-js/utils/runtime/router";
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements, useMatches, useLocation } from "react-router-dom";
3
3
  import hoistNonReactStatics from "hoist-non-react-statics";
4
- import { parsedJSONFromElement } from "@modern-js/utils/runtime";
4
+ import { parsedJSONFromElement } from "@modern-js/utils/runtime-browser";
5
5
  import { modifyRoutes as modifyRoutesHook } from "./hooks";
6
6
  import { deserializeErrors, renderRoutes, urlJoin } from "./utils";
7
7
  export let finalRouteConfig = {
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useContext } from "react";
3
- import { createStaticHandler } from "@modern-js/utils/universal/remix-router";
3
+ import { createStaticHandler } from "@modern-js/utils/runtime/router";
4
4
  import { createStaticRouter, StaticRouterProvider } from "react-router-dom/server";
5
5
  import hoistNonReactStatics from "hoist-non-react-statics";
6
6
  import { createRoutesFromElements } from "react-router-dom";
@@ -1,7 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Route } from "react-router-dom";
3
- import { ErrorResponse, isRouteErrorResponse } from "@modern-js/utils/universal/remix-router";
4
- import { renderNestedRoute } from "@modern-js/utils/universal/nestedRoutes";
3
+ import { ErrorResponse, isRouteErrorResponse, renderNestedRoute } from "@modern-js/utils/runtime/router";
5
4
  import { DefaultNotFound } from "./DefaultNotFound";
6
5
  import DeferredDataScripts from "./DeferredDataScripts";
7
6
  export function getRouteComponents(routes, { globalApp, ssrMode, props }) {
@@ -29,7 +29,7 @@ export default () => {
29
29
  config() {
30
30
  const appContext = api.useAppContext();
31
31
  pluginsExportsUtils = createRuntimeExportsUtils(appContext.internalDirectory, "plugins");
32
- const userConfig = api.useResolvedConfigContext();
32
+ const userConfig = api.useConfigContext();
33
33
  const { bundlerType = "webpack" } = api.useAppContext();
34
34
  const babelConfig = (() => {
35
35
  if (bundlerType === "webpack") {
@@ -57,8 +57,8 @@ export default () => {
57
57
  return {
58
58
  source: {
59
59
  alias: {
60
- // ensure that all packages use the same storage in @modern-js/utils/ssr
61
- "@modern-js/utils/ssr": require.resolve("@modern-js/utils/ssr"),
60
+ // ensure that all packages use the same storage in @modern-js/utils/runtime-node
61
+ "@modern-js/utils/runtime-node": require.resolve("@modern-js/utils/runtime-node"),
62
62
  "@modern-js/runtime/plugins": pluginsExportsUtils.getPath()
63
63
  },
64
64
  globalVars: (values, { target }) => {
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { loadableReady } from "@loadable/component";
3
3
  import hoistNonReactStatics from "hoist-non-react-statics";
4
- import { parsedJSONFromElement } from "@modern-js/utils/runtime";
4
+ import { parsedJSONFromElement } from "@modern-js/utils/runtime-browser";
5
5
  import { RenderLevel } from "./serverRender/types";
6
6
  import { WithCallback } from "./react/withCallback";
7
7
  import { formatClient, mockResponse, isReact18 } from "./utils";
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { renderToStaticMarkup } from "react-dom/server";
3
- import { run } from "@modern-js/utils/ssr";
3
+ import { run } from "@modern-js/utils/runtime-node";
4
4
  import { ChunkExtractor } from "@loadable/server";
5
5
  const prefetch = async (App, context) => {
6
6
  return run(context.ssrContext.request.headers, async () => {
@@ -1,4 +1,4 @@
1
- import { serializeJson } from "@modern-js/utils/universal/serialize";
1
+ import { serializeJson } from "@modern-js/utils/runtime-node";
2
2
  import { buildTemplate } from "./buildTemplate.share";
3
3
  export function buildShellAfterTemplate(afterAppTemplate, options) {
4
4
  const callbacks = [
@@ -1,5 +1,5 @@
1
1
  import { createElement } from "react";
2
- import { run } from "@modern-js/utils/ssr";
2
+ import { run } from "@modern-js/utils/runtime-node";
3
3
  import { PreRender } from "../../react/prerender";
4
4
  import { time } from "../time";
5
5
  import renderToPipe from "./renderToPipe";
@@ -13,7 +13,7 @@ function _define_property(obj, key, value) {
13
13
  }
14
14
  import React from "react";
15
15
  import ReactDomServer from "react-dom/server";
16
- import { serializeJson } from "@modern-js/utils/universal/serialize";
16
+ import { serializeJson } from "@modern-js/utils/runtime-node";
17
17
  import ReactHelmet from "react-helmet";
18
18
  import { serializeErrors } from "../../../router/runtime/utils";
19
19
  import helmetReplace from "../helmet";
@@ -1,4 +1,4 @@
1
- import { run } from "@modern-js/utils/ssr";
1
+ import { run } from "@modern-js/utils/runtime-node";
2
2
  import { PreRender } from "../../react/prerender";
3
3
  import { time } from "../time";
4
4
  import SSREntry from "./entry";
@@ -10,4 +10,4 @@ export type { LinkProps, NavLinkProps } from './PrefetchLink';
10
10
  export declare const useRouteLoaderData: typeof useRouteData;
11
11
  export type { FormEncType, FormMethod, GetScrollRestorationKeyFunction, ParamKeyValuePair, SubmitOptions, URLSearchParamsInit, FetcherWithComponents, BrowserRouterProps, HashRouterProps, HistoryRouterProps, FormProps, ScrollRestorationProps, SubmitFunction, ActionFunction, ActionFunctionArgs, AwaitProps, unstable_Blocker, unstable_BlockerFunction, DataRouteMatch, DataRouteObject, Fetcher, Hash, IndexRouteObject, IndexRouteProps, JsonFunction, LayoutRouteProps, LoaderFunction, LoaderFunctionArgs, Location, MemoryRouterProps, NavigateFunction, NavigateOptions, NavigateProps, Navigation, Navigator, NonIndexRouteObject, OutletProps, Params, ParamParseKey, Path, PathMatch, Pathname, PathPattern, PathRouteProps, RedirectFunction, RelativeRoutingType, RouteMatch, RouteObject, RouteProps, RouterProps, RouterProviderProps, RoutesProps, Search, ShouldRevalidateFunction, To } from 'react-router-dom';
12
12
  export { createBrowserRouter, createHashRouter, createMemoryRouter, RouterProvider, BrowserRouter, HashRouter, MemoryRouter, Router, Await, Form, Navigate, Outlet, Route, Routes, ScrollRestoration, useActionData, useAsyncError, useAsyncValue, useBeforeUnload, useFetcher, useFetchers, useFormAction, useHref, useInRouterContext, useLinkClickHandler, useLoaderData, useLocation, useMatch, useMatches, useNavigate, useNavigation, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRevalidator, useRouteError, useRoutes, useSearchParams, useSubmit, createRoutesFromChildren, createRoutesFromElements, createSearchParams, generatePath, isRouteErrorResponse, matchPath, matchRoutes, renderMatches, resolvePath, createPath, unstable_useBlocker, unstable_usePrompt } from 'react-router-dom';
13
- export { defer, json, redirect } from '@modern-js/utils/universal/remix-router';
13
+ export { defer, json, redirect } from '@modern-js/utils/runtime/router';
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { type NestedRoute, type PageRoute, type SSRMode } from '@modern-js/types';
3
- import { type Router, type StaticHandlerContext } from '@modern-js/utils/universal/remix-router';
3
+ import { type Router, type StaticHandlerContext } from '@modern-js/utils/runtime/router';
4
4
  import { RouterConfig } from './types';
5
5
  export declare function getRouteComponents(routes: (NestedRoute | PageRoute)[], {
6
6
  globalApp,
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { Store } from '@modern-js-reduck/store';
3
- import type { StaticHandlerContext } from '@modern-js/utils/universal/remix-router';
3
+ import type { StaticHandlerContext } from '@modern-js/utils/runtime/router';
4
4
  import { createLoaderManager } from './core/loader/loaderManager';
5
5
  import { runtime } from './core/plugin';
6
6
  import { RouteManifest } from './router/runtime/types';
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.18.0",
18
+ "version": "2.19.0",
19
19
  "engines": {
20
20
  "node": ">=14.17.6"
21
21
  },
@@ -162,9 +162,9 @@
162
162
  "react-side-effect": "^2.1.1",
163
163
  "redux-logger": "^3.0.6",
164
164
  "styled-components": "^5.3.1",
165
- "@modern-js/plugin": "2.18.0",
166
- "@modern-js/types": "2.18.0",
167
- "@modern-js/utils": "2.18.0"
165
+ "@modern-js/plugin": "2.19.0",
166
+ "@modern-js/types": "2.19.0",
167
+ "@modern-js/utils": "2.19.0"
168
168
  },
169
169
  "peerDependencies": {
170
170
  "react": ">=17",
@@ -184,11 +184,11 @@
184
184
  "react-dom": "^18",
185
185
  "ts-jest": "^29.0.5",
186
186
  "typescript": "^4",
187
- "@modern-js/app-tools": "2.18.0",
188
- "@modern-js/core": "2.18.0",
189
- "@modern-js/server-core": "2.18.0",
190
- "@scripts/build": "2.18.0",
191
- "@scripts/jest-config": "2.18.0"
187
+ "@modern-js/app-tools": "2.19.0",
188
+ "@modern-js/core": "2.19.0",
189
+ "@modern-js/server-core": "2.19.0",
190
+ "@scripts/build": "2.19.0",
191
+ "@scripts/jest-config": "2.19.0"
192
192
  },
193
193
  "sideEffects": false,
194
194
  "modernConfig": {},