@modern-js/runtime 2.0.0-beta.4 → 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.
- package/dist/js/modern/document/Body.js +2 -2
- package/dist/js/modern/document/Root.js +1 -1
- package/dist/js/modern/router/cli/index.js +7 -9
- package/dist/js/modern/router/runtime/plugin.js +10 -1
- package/dist/js/modern/router/runtime/utils.js +8 -4
- package/dist/js/modern/ssr/cli/index.js +2 -2
- package/dist/js/node/cli/index.js +13 -11
- package/dist/js/node/common.js +7 -3
- package/dist/js/node/core/app-config.js +8 -3
- package/dist/js/node/core/compatible.js +41 -37
- package/dist/js/node/core/index.js +17 -6
- package/dist/js/node/core/loader/index.js +7 -3
- package/dist/js/node/core/loader/loaderManager.js +19 -14
- package/dist/js/node/core/loader/useLoader.js +22 -22
- package/dist/js/node/core/plugin.js +17 -10
- package/dist/js/node/document/Body.js +8 -4
- package/dist/js/node/document/DocumentContext.js +7 -3
- package/dist/js/node/document/DocumentStructrueContext.js +7 -3
- package/dist/js/node/document/Head.js +8 -3
- package/dist/js/node/document/Html.js +7 -3
- package/dist/js/node/document/Root.js +9 -4
- package/dist/js/node/document/Script.js +7 -3
- package/dist/js/node/document/Scripts.js +7 -3
- package/dist/js/node/document/cli/index.js +28 -28
- package/dist/js/node/document/constants.js +20 -3
- package/dist/js/node/document/index.js +11 -11
- package/dist/js/node/exports/head.js +6 -4
- package/dist/js/node/exports/loadable.js +6 -4
- package/dist/js/node/exports/server.js +7 -3
- package/dist/js/node/exports/styled.js +6 -4
- package/dist/js/node/index.js +15 -3
- package/dist/js/node/router/cli/index.js +29 -31
- package/dist/js/node/router/index.js +8 -4
- package/dist/js/node/router/runtime/DefaultNotFound.js +7 -3
- package/dist/js/node/router/runtime/index.js +9 -5
- package/dist/js/node/router/runtime/plugin.js +34 -22
- package/dist/js/node/router/runtime/plugin.node.js +37 -34
- package/dist/js/node/router/runtime/root/index.js +7 -3
- package/dist/js/node/router/runtime/root/load.js +14 -8
- package/dist/js/node/router/runtime/server.js +3 -3
- package/dist/js/node/router/runtime/types.js +15 -0
- package/dist/js/node/router/runtime/utils.js +48 -38
- package/dist/js/node/router/runtime/withRouter.js +24 -22
- package/dist/js/node/runtime-context.js +8 -3
- package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +109 -128
- package/dist/js/node/ssr/cli/index.js +21 -21
- package/dist/js/node/ssr/index.js +34 -32
- package/dist/js/node/ssr/index.node.js +30 -28
- package/dist/js/node/ssr/prefetch.js +11 -9
- package/dist/js/node/ssr/react/index.js +8 -3
- package/dist/js/node/ssr/react/nossr/index.js +7 -3
- package/dist/js/node/ssr/react/prerender/index.js +24 -22
- package/dist/js/node/ssr/react/prerender/type.js +15 -0
- package/dist/js/node/ssr/react/prerender/util.js +11 -3
- package/dist/js/node/ssr/react/withCallback/index.js +7 -3
- package/dist/js/node/ssr/serverRender/helmet.js +5 -3
- package/dist/js/node/ssr/serverRender/index.js +8 -6
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +8 -3
- package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToStream/index.js +14 -10
- package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +22 -22
- package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToStream/template.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToStream/type.js +15 -0
- package/dist/js/node/ssr/serverRender/renderToString/entry.js +19 -17
- package/dist/js/node/ssr/serverRender/renderToString/index.js +13 -9
- package/dist/js/node/ssr/serverRender/renderToString/loadable.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToString/reduce.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +7 -3
- package/dist/js/node/ssr/serverRender/renderToString/template.js +8 -3
- package/dist/js/node/ssr/serverRender/renderToString/type.js +7 -3
- package/dist/js/node/ssr/serverRender/types.js +7 -3
- package/dist/js/node/ssr/serverRender/utils.js +8 -3
- package/dist/js/node/ssr/utils.js +25 -19
- package/dist/js/node/state/cli/index.js +5 -3
- package/dist/js/node/state/index.js +8 -4
- package/dist/js/node/state/plugins.js +10 -3
- package/dist/js/node/state/runtime/index.js +10 -5
- package/dist/js/node/state/runtime/plugin.js +23 -23
- package/dist/js/node/state/types.js +15 -0
- package/dist/js/treeshaking/document/Body.js +2 -2
- package/dist/js/treeshaking/document/Root.js +1 -1
- package/dist/js/treeshaking/router/cli/index.js +7 -9
- package/dist/js/treeshaking/router/runtime/plugin.js +11 -1
- package/dist/js/treeshaking/router/runtime/utils.js +8 -4
- package/dist/js/treeshaking/ssr/cli/index.js +2 -2
- package/dist/types/router/runtime/plugin.d.ts +1 -1
- package/dist/types/router/runtime/types.d.ts +1 -1
- package/package.json +14 -11
- package/types/index.d.ts +2 -2
- package/types/router.d.ts +2 -2
|
@@ -1,7 +1,21 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
4
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
|
+
};
|
|
5
19
|
var __export = (target, all) => {
|
|
6
20
|
for (var name in all)
|
|
7
21
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -15,31 +29,15 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
29
|
return to;
|
|
16
30
|
};
|
|
17
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var
|
|
19
|
-
__export(
|
|
32
|
+
var utils_exports = {};
|
|
33
|
+
__export(utils_exports, {
|
|
20
34
|
formatClient: () => formatClient,
|
|
21
35
|
formatServer: () => formatServer,
|
|
22
36
|
isCrossOrigin: () => isCrossOrigin,
|
|
23
37
|
isReact18: () => isReact18,
|
|
24
38
|
mockResponse: () => mockResponse
|
|
25
39
|
});
|
|
26
|
-
module.exports = __toCommonJS(
|
|
27
|
-
var __defProp2 = Object.defineProperty;
|
|
28
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
29
|
-
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
30
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
31
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
32
|
-
var __spreadValues = (a, b) => {
|
|
33
|
-
for (var prop in b || (b = {}))
|
|
34
|
-
if (__hasOwnProp2.call(b, prop))
|
|
35
|
-
__defNormalProp(a, prop, b[prop]);
|
|
36
|
-
if (__getOwnPropSymbols)
|
|
37
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
38
|
-
if (__propIsEnum.call(b, prop))
|
|
39
|
-
__defNormalProp(a, prop, b[prop]);
|
|
40
|
-
}
|
|
41
|
-
return a;
|
|
42
|
-
};
|
|
40
|
+
module.exports = __toCommonJS(utils_exports);
|
|
43
41
|
const isReact18 = () => process.env.IS_REACT18 === "true";
|
|
44
42
|
const formatServer = (request) => {
|
|
45
43
|
const {
|
|
@@ -98,3 +96,11 @@ const isCrossOrigin = (url = "", base) => {
|
|
|
98
96
|
return false;
|
|
99
97
|
}
|
|
100
98
|
};
|
|
99
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
100
|
+
0 && (module.exports = {
|
|
101
|
+
formatClient,
|
|
102
|
+
formatServer,
|
|
103
|
+
isCrossOrigin,
|
|
104
|
+
isReact18,
|
|
105
|
+
mockResponse
|
|
106
|
+
});
|
|
@@ -15,11 +15,11 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
15
|
return to;
|
|
16
16
|
};
|
|
17
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var
|
|
19
|
-
__export(
|
|
18
|
+
var cli_exports = {};
|
|
19
|
+
__export(cli_exports, {
|
|
20
20
|
default: () => cli_default
|
|
21
21
|
});
|
|
22
|
-
module.exports = __toCommonJS(
|
|
22
|
+
module.exports = __toCommonJS(cli_exports);
|
|
23
23
|
var import_utils = require("@modern-js/utils");
|
|
24
24
|
const PLUGIN_IDENTIFIER = "state";
|
|
25
25
|
var cli_default = () => ({
|
|
@@ -96,3 +96,5 @@ var cli_default = () => ({
|
|
|
96
96
|
};
|
|
97
97
|
}
|
|
98
98
|
});
|
|
99
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
100
|
+
0 && (module.exports = {});
|
|
@@ -22,12 +22,16 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
22
22
|
mod
|
|
23
23
|
));
|
|
24
24
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
-
var
|
|
26
|
-
__export(
|
|
25
|
+
var state_exports = {};
|
|
26
|
+
__export(state_exports, {
|
|
27
27
|
default: () => import_runtime2.default,
|
|
28
28
|
state: () => import_runtime.default
|
|
29
29
|
});
|
|
30
|
-
module.exports = __toCommonJS(
|
|
30
|
+
module.exports = __toCommonJS(state_exports);
|
|
31
31
|
var import_runtime = __toESM(require("./runtime"));
|
|
32
32
|
var import_runtime2 = __toESM(require("./runtime"));
|
|
33
|
-
__reExport(
|
|
33
|
+
__reExport(state_exports, require("./runtime"), module.exports);
|
|
34
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
35
|
+
0 && (module.exports = {
|
|
36
|
+
state
|
|
37
|
+
});
|
|
@@ -21,14 +21,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
21
21
|
mod
|
|
22
22
|
));
|
|
23
23
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
24
|
-
var
|
|
25
|
-
__export(
|
|
24
|
+
var plugins_exports = {};
|
|
25
|
+
__export(plugins_exports, {
|
|
26
26
|
autoActions: () => autoActions,
|
|
27
27
|
devtools: () => import_plugin_devtools.default,
|
|
28
28
|
effects: () => effects,
|
|
29
29
|
immer: () => immer
|
|
30
30
|
});
|
|
31
|
-
module.exports = __toCommonJS(
|
|
31
|
+
module.exports = __toCommonJS(plugins_exports);
|
|
32
32
|
var import_plugin_effects = require("@modern-js-reduck/plugin-effects");
|
|
33
33
|
var import_plugin_auto_actions = __toESM(require("@modern-js-reduck/plugin-auto-actions"));
|
|
34
34
|
var import_plugin_immutable = __toESM(require("@modern-js-reduck/plugin-immutable"));
|
|
@@ -36,3 +36,10 @@ var import_plugin_devtools = __toESM(require("@modern-js-reduck/plugin-devtools"
|
|
|
36
36
|
const effects = () => import_plugin_effects.plugin;
|
|
37
37
|
const immer = () => import_plugin_immutable.default;
|
|
38
38
|
const autoActions = () => import_plugin_auto_actions.default;
|
|
39
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
40
|
+
0 && (module.exports = {
|
|
41
|
+
autoActions,
|
|
42
|
+
devtools,
|
|
43
|
+
effects,
|
|
44
|
+
immer
|
|
45
|
+
});
|
|
@@ -22,14 +22,19 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
22
22
|
mod
|
|
23
23
|
));
|
|
24
24
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
-
var
|
|
26
|
-
__export(
|
|
25
|
+
var runtime_exports = {};
|
|
26
|
+
__export(runtime_exports, {
|
|
27
27
|
createStore: () => import_store.createStore,
|
|
28
28
|
default: () => import_plugin.default,
|
|
29
29
|
model: () => import_store.model
|
|
30
30
|
});
|
|
31
|
-
module.exports = __toCommonJS(
|
|
32
|
-
__reExport(
|
|
31
|
+
module.exports = __toCommonJS(runtime_exports);
|
|
32
|
+
__reExport(runtime_exports, require("@modern-js-reduck/react"), module.exports);
|
|
33
33
|
var import_store = require("@modern-js-reduck/store");
|
|
34
34
|
var import_plugin = __toESM(require("./plugin"));
|
|
35
|
-
__reExport(
|
|
35
|
+
__reExport(runtime_exports, require("./plugin"), module.exports);
|
|
36
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
37
|
+
0 && (module.exports = {
|
|
38
|
+
createStore,
|
|
39
|
+
model
|
|
40
|
+
});
|
|
@@ -1,9 +1,26 @@
|
|
|
1
1
|
var __create = Object.create;
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
|
+
var __defProps = Object.defineProperties;
|
|
3
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
8
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
9
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
12
|
+
var __spreadValues = (a, b) => {
|
|
13
|
+
for (var prop in b || (b = {}))
|
|
14
|
+
if (__hasOwnProp.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
if (__getOwnPropSymbols)
|
|
17
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
+
if (__propIsEnum.call(b, prop))
|
|
19
|
+
__defNormalProp(a, prop, b[prop]);
|
|
20
|
+
}
|
|
21
|
+
return a;
|
|
22
|
+
};
|
|
23
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
7
24
|
var __export = (target, all) => {
|
|
8
25
|
for (var name in all)
|
|
9
26
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -22,11 +39,11 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
22
39
|
mod
|
|
23
40
|
));
|
|
24
41
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
-
var
|
|
26
|
-
__export(
|
|
42
|
+
var plugin_exports = {};
|
|
43
|
+
__export(plugin_exports, {
|
|
27
44
|
default: () => plugin_default
|
|
28
45
|
});
|
|
29
|
-
module.exports = __toCommonJS(
|
|
46
|
+
module.exports = __toCommonJS(plugin_exports);
|
|
30
47
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
48
|
var import_react = require("react");
|
|
32
49
|
var import_store = require("@modern-js-reduck/store");
|
|
@@ -35,26 +52,7 @@ var import_hoist_non_react_statics = __toESM(require("hoist-non-react-statics"))
|
|
|
35
52
|
var import_plugins = require("../plugins");
|
|
36
53
|
var import_core = require("../../core");
|
|
37
54
|
var import_common = require("../../common");
|
|
38
|
-
__reExport(
|
|
39
|
-
var __defProp2 = Object.defineProperty;
|
|
40
|
-
var __defProps = Object.defineProperties;
|
|
41
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
42
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
43
|
-
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
44
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
45
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
46
|
-
var __spreadValues = (a, b) => {
|
|
47
|
-
for (var prop in b || (b = {}))
|
|
48
|
-
if (__hasOwnProp2.call(b, prop))
|
|
49
|
-
__defNormalProp(a, prop, b[prop]);
|
|
50
|
-
if (__getOwnPropSymbols)
|
|
51
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
52
|
-
if (__propIsEnum.call(b, prop))
|
|
53
|
-
__defNormalProp(a, prop, b[prop]);
|
|
54
|
-
}
|
|
55
|
-
return a;
|
|
56
|
-
};
|
|
57
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
55
|
+
__reExport(plugin_exports, require("../plugins"), module.exports);
|
|
58
56
|
const StatePluginHandleMap = {
|
|
59
57
|
immer: import_plugins.immer,
|
|
60
58
|
effects: import_plugins.effects,
|
|
@@ -119,3 +117,5 @@ const state = (config) => ({
|
|
|
119
117
|
}
|
|
120
118
|
});
|
|
121
119
|
var plugin_default = state;
|
|
120
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
121
|
+
0 && (module.exports = {});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __copyProps = (to, from, except, desc) => {
|
|
6
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
7
|
+
for (let key of __getOwnPropNames(from))
|
|
8
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
9
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
10
|
+
}
|
|
11
|
+
return to;
|
|
12
|
+
};
|
|
13
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
14
|
+
var types_exports = {};
|
|
15
|
+
module.exports = __toCommonJS(types_exports);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useContext } from "react";
|
|
3
3
|
import { DOCUMENT_CHUNKSMAP_PLACEHOLDER, DOCUMENT_SSRDATASCRIPT_PLACEHOLDER } from "./constants";
|
|
4
4
|
import { DocumentStructrueContext } from "./DocumentStructrueContext";
|
|
@@ -8,7 +8,7 @@ function Body(props) {
|
|
|
8
8
|
var children = props.children;
|
|
9
9
|
return /* @__PURE__ */ jsxs("body", {
|
|
10
10
|
children: [
|
|
11
|
-
hasSetRoot ? null : DefaultRoot,
|
|
11
|
+
hasSetRoot ? null : /* @__PURE__ */ jsx(DefaultRoot, {}),
|
|
12
12
|
children,
|
|
13
13
|
"".concat(DOCUMENT_CHUNKSMAP_PLACEHOLDER),
|
|
14
14
|
"".concat(DOCUMENT_SSRDATASCRIPT_PLACEHOLDER)
|
|
@@ -14,7 +14,7 @@ function Root(props) {
|
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
function DefaultRoot(props) {
|
|
17
|
-
var ref = useContext(DocumentContext),
|
|
17
|
+
var ref = useContext(DocumentContext), _templateParams = ref.templateParams, _mountId = _templateParams.mountId, mountId = _mountId === void 0 ? "root" : _mountId;
|
|
18
18
|
return /* @__PURE__ */ jsxs("div", {
|
|
19
19
|
id: "".concat(mountId),
|
|
20
20
|
children: [
|
|
@@ -53,6 +53,10 @@ function _objectSpreadProps(target, source) {
|
|
|
53
53
|
import { getEntryOptions, createRuntimeExportsUtils, PLUGIN_SCHEMAS } from "@modern-js/utils";
|
|
54
54
|
var PLUGIN_IDENTIFIER = "router";
|
|
55
55
|
var ROUTES_IDENTIFIER = "routes";
|
|
56
|
+
var isV5 = function(config) {
|
|
57
|
+
var ref, ref1;
|
|
58
|
+
return (config === null || config === void 0 ? void 0 : (ref = config.runtime) === null || ref === void 0 ? void 0 : (ref1 = ref.router) === null || ref1 === void 0 ? void 0 : ref1.mode) === "react-router-5";
|
|
59
|
+
};
|
|
56
60
|
var cli_default = function() {
|
|
57
61
|
return {
|
|
58
62
|
name: "@modern-js/plugin-router",
|
|
@@ -79,15 +83,13 @@ var cli_default = function() {
|
|
|
79
83
|
},
|
|
80
84
|
modifyEntryImports: function modifyEntryImports(param) {
|
|
81
85
|
var entrypoint = param.entrypoint, imports = param.imports;
|
|
82
|
-
var ref, ref1;
|
|
83
86
|
var entryName = entrypoint.entryName, fileSystemRoutes = entrypoint.fileSystemRoutes;
|
|
84
87
|
var userConfig = api.useResolvedConfigContext();
|
|
85
|
-
var isLegacy = Boolean(userConfig === null || userConfig === void 0 ? void 0 : (ref = userConfig.runtime) === null || ref === void 0 ? void 0 : (ref1 = ref.router) === null || ref1 === void 0 ? void 0 : ref1.legacy);
|
|
86
88
|
var packageName = api.useAppContext().packageName;
|
|
87
89
|
var runtimeConfig = getEntryOptions(entryName, userConfig.runtime, userConfig.runtimeByEntries, packageName);
|
|
88
90
|
runtimeConfigMap.set(entryName, runtimeConfig);
|
|
89
91
|
if (runtimeConfig === null || runtimeConfig === void 0 ? void 0 : runtimeConfig.router) {
|
|
90
|
-
if (!
|
|
92
|
+
if (!isV5(userConfig)) {
|
|
91
93
|
imports.push({
|
|
92
94
|
value: "@modern-js/runtime/plugins",
|
|
93
95
|
specifiers: [
|
|
@@ -107,13 +109,11 @@ var cli_default = function() {
|
|
|
107
109
|
},
|
|
108
110
|
modifyEntryRuntimePlugins: function modifyEntryRuntimePlugins(param) {
|
|
109
111
|
var entrypoint = param.entrypoint, plugins = param.plugins;
|
|
110
|
-
var ref, ref1;
|
|
111
112
|
var entryName = entrypoint.entryName, fileSystemRoutes = entrypoint.fileSystemRoutes;
|
|
112
113
|
var serverRoutes = api.useAppContext().serverRoutes;
|
|
113
114
|
var userConfig = api.useResolvedConfigContext();
|
|
114
|
-
var isLegacy = Boolean(userConfig === null || userConfig === void 0 ? void 0 : (ref = userConfig.runtime) === null || ref === void 0 ? void 0 : (ref1 = ref.router) === null || ref1 === void 0 ? void 0 : ref1.legacy);
|
|
115
115
|
var runtimeConfig = runtimeConfigMap.get(entryName);
|
|
116
|
-
if (runtimeConfig.router && !
|
|
116
|
+
if (runtimeConfig.router && !isV5(userConfig)) {
|
|
117
117
|
var serverBase = serverRoutes.filter(function(route) {
|
|
118
118
|
return route.entryName === entryName;
|
|
119
119
|
}).map(function(route) {
|
|
@@ -136,10 +136,8 @@ var cli_default = function() {
|
|
|
136
136
|
};
|
|
137
137
|
},
|
|
138
138
|
addRuntimeExports: function addRuntimeExports() {
|
|
139
|
-
var ref, ref1;
|
|
140
139
|
var userConfig = api.useResolvedConfigContext();
|
|
141
|
-
|
|
142
|
-
if (!isLegacy) {
|
|
140
|
+
if (!isV5(userConfig)) {
|
|
143
141
|
pluginsExportsUtils.addExport("export { default as router } from '@modern-js/runtime/router'");
|
|
144
142
|
}
|
|
145
143
|
}
|
|
@@ -51,7 +51,7 @@ function _objectSpreadProps(target, source) {
|
|
|
51
51
|
return target;
|
|
52
52
|
}
|
|
53
53
|
import { jsx } from "react/jsx-runtime";
|
|
54
|
-
import { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements } from "react-router-dom";
|
|
54
|
+
import { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements, useMatches, useLocation } from "react-router-dom";
|
|
55
55
|
import hoistNonReactStatics from "hoist-non-react-statics";
|
|
56
56
|
import { renderRoutes, urlJoin } from "./utils";
|
|
57
57
|
var finalRouteConfig = {
|
|
@@ -79,6 +79,16 @@ var routerPlugin = function(param) {
|
|
|
79
79
|
name: "@modern-js/plugin-router",
|
|
80
80
|
setup: function() {
|
|
81
81
|
return {
|
|
82
|
+
init: function init(param, next) {
|
|
83
|
+
var context = param.context;
|
|
84
|
+
context.router = {
|
|
85
|
+
useMatches: useMatches,
|
|
86
|
+
useLocation: useLocation
|
|
87
|
+
};
|
|
88
|
+
return next({
|
|
89
|
+
context: context
|
|
90
|
+
});
|
|
91
|
+
},
|
|
82
92
|
hoc: function(param, next) {
|
|
83
93
|
var App = param.App;
|
|
84
94
|
if (!finalRouteConfig && !createRoutes) {
|
|
@@ -84,9 +84,6 @@ import { DefaultNotFound } from "./DefaultNotFound";
|
|
|
84
84
|
import { RootLayout } from "./root";
|
|
85
85
|
var renderNestedRoute = function(nestedRoute, parent) {
|
|
86
86
|
var children = nestedRoute.children, index = nestedRoute.index, id = nestedRoute.id, Component = nestedRoute.component;
|
|
87
|
-
var childElements = children === null || children === void 0 ? void 0 : children.map(function(childRoute) {
|
|
88
|
-
return renderNestedRoute(childRoute, nestedRoute);
|
|
89
|
-
});
|
|
90
87
|
var routeProps = {
|
|
91
88
|
caseSensitive: nestedRoute.caseSensitive,
|
|
92
89
|
path: nestedRoute.path,
|
|
@@ -112,11 +109,15 @@ var renderNestedRoute = function(nestedRoute, parent) {
|
|
|
112
109
|
fallback: /* @__PURE__ */ jsx(Loading, {}),
|
|
113
110
|
children: /* @__PURE__ */ jsx(Component, {})
|
|
114
111
|
});
|
|
115
|
-
} else {
|
|
112
|
+
} else if (!(parent === null || parent === void 0 ? void 0 : parent.index)) {
|
|
116
113
|
element = /* @__PURE__ */ jsx(Suspense, {
|
|
117
114
|
children: /* @__PURE__ */ jsx(Component, {})
|
|
118
115
|
});
|
|
116
|
+
} else {
|
|
117
|
+
element = /* @__PURE__ */ jsx(Component, {});
|
|
119
118
|
}
|
|
119
|
+
} else {
|
|
120
|
+
nestedRoute.loading = parent === null || parent === void 0 ? void 0 : parent.loading;
|
|
120
121
|
}
|
|
121
122
|
if (!parent && element) {
|
|
122
123
|
element = /* @__PURE__ */ jsx(RootLayout, {
|
|
@@ -129,6 +130,9 @@ var renderNestedRoute = function(nestedRoute, parent) {
|
|
|
129
130
|
if (element) {
|
|
130
131
|
routeProps.element = element;
|
|
131
132
|
}
|
|
133
|
+
var childElements = children === null || children === void 0 ? void 0 : children.map(function(childRoute) {
|
|
134
|
+
return renderNestedRoute(childRoute, nestedRoute);
|
|
135
|
+
});
|
|
132
136
|
var routeElement = index ? /* @__PURE__ */ jsx(Route, _objectSpreadProps(_objectSpread({}, routeProps), {
|
|
133
137
|
index: true
|
|
134
138
|
}), id) : /* @__PURE__ */ jsx(Route, _objectSpreadProps(_objectSpread({}, routeProps), {
|
|
@@ -157,8 +157,8 @@ var cli_default = function() {
|
|
|
157
157
|
if (typeof ssrConfig === "object" && ssrConfig.mode === "stream") {
|
|
158
158
|
var ref1;
|
|
159
159
|
var runtimeConfig = getEntryOptions(entryName, userConfig.runtime, userConfig.runtimeByEntries, packageName);
|
|
160
|
-
if (runtimeConfig === null || runtimeConfig === void 0 ? void 0 : (ref1 = runtimeConfig.router) === null || ref1 === void 0 ? void 0 : ref1.
|
|
161
|
-
throw new Error("
|
|
160
|
+
if ((runtimeConfig === null || runtimeConfig === void 0 ? void 0 : (ref1 = runtimeConfig.router) === null || ref1 === void 0 ? void 0 : ref1.mode) === "react-router-5") {
|
|
161
|
+
throw new Error("router v5 plugin doesn't support streaming SSR, check your config 'runtime.router'");
|
|
162
162
|
}
|
|
163
163
|
if (fileSystemRoutes && !entrypoint.nestedRoutesEntry) {
|
|
164
164
|
throw new Error("You should switch to file-system based router to support streaming SSR.");
|
|
@@ -27,7 +27,7 @@ export declare type SingleRouteConfig = RouteProps & {
|
|
|
27
27
|
component?: React.ComponentType;
|
|
28
28
|
};
|
|
29
29
|
export declare type RouterConfig = {
|
|
30
|
-
|
|
30
|
+
mode?: 'react-router-5';
|
|
31
31
|
routesConfig: {
|
|
32
32
|
globalApp?: React.ComponentType<any>;
|
|
33
33
|
routes: (NestedRoute | PageRoute)[];
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"modern",
|
|
12
12
|
"modern.js"
|
|
13
13
|
],
|
|
14
|
-
"version": "2.0.0-beta.
|
|
14
|
+
"version": "2.0.0-beta.5",
|
|
15
15
|
"engines": {
|
|
16
16
|
"node": ">=14.17.6"
|
|
17
17
|
},
|
|
@@ -94,6 +94,9 @@
|
|
|
94
94
|
"loadable": [
|
|
95
95
|
"./dist/types/exports/loadable.d.ts"
|
|
96
96
|
],
|
|
97
|
+
"cli": [
|
|
98
|
+
"./dist/types/cli/index.d.ts"
|
|
99
|
+
],
|
|
97
100
|
"head": [
|
|
98
101
|
"./dist/types/exports/head.d.ts"
|
|
99
102
|
],
|
|
@@ -137,6 +140,9 @@
|
|
|
137
140
|
"@modern-js-reduck/plugin-immutable": "^1.1.4",
|
|
138
141
|
"@modern-js-reduck/react": "^1.1.4",
|
|
139
142
|
"@modern-js-reduck/store": "^1.1.4",
|
|
143
|
+
"@modern-js/plugin": "2.0.0-beta.4",
|
|
144
|
+
"@modern-js/types": "2.0.0-beta.4",
|
|
145
|
+
"@modern-js/utils": "2.0.0-beta.4",
|
|
140
146
|
"@types/loadable__component": "^5.13.4",
|
|
141
147
|
"@types/react-helmet": "^6.1.2",
|
|
142
148
|
"@types/redux-logger": "^3.0.9",
|
|
@@ -151,16 +157,18 @@
|
|
|
151
157
|
"react-side-effect": "^2.1.1",
|
|
152
158
|
"redux-logger": "^3.0.6",
|
|
153
159
|
"serialize-javascript": "^6.0.0",
|
|
154
|
-
"styled-components": "^5.3.1"
|
|
155
|
-
"@modern-js/plugin": "2.0.0-beta.4",
|
|
156
|
-
"@modern-js/utils": "2.0.0-beta.4",
|
|
157
|
-
"@modern-js/types": "2.0.0-beta.4"
|
|
160
|
+
"styled-components": "^5.3.1"
|
|
158
161
|
},
|
|
159
162
|
"peerDependencies": {
|
|
160
163
|
"react": ">=17",
|
|
161
164
|
"react-dom": ">=17"
|
|
162
165
|
},
|
|
163
166
|
"devDependencies": {
|
|
167
|
+
"@modern-js/core": "2.0.0-beta.4",
|
|
168
|
+
"@modern-js/server-core": "2.0.0-beta.4",
|
|
169
|
+
"@scripts/build": "2.0.0-beta.4",
|
|
170
|
+
"@modern-js/app-tools": "2.0.0-beta.4",
|
|
171
|
+
"@scripts/jest-config": "2.0.0-beta.4",
|
|
164
172
|
"@testing-library/react": "^13.4.0",
|
|
165
173
|
"@testing-library/react-hooks": "^8.0.1",
|
|
166
174
|
"@remix-run/web-fetch": "^4.1.3",
|
|
@@ -174,12 +182,7 @@
|
|
|
174
182
|
"react": "^18",
|
|
175
183
|
"react-dom": "^18",
|
|
176
184
|
"ts-jest": "^27.0.4",
|
|
177
|
-
"typescript": "^4"
|
|
178
|
-
"@modern-js/core": "2.0.0-beta.4",
|
|
179
|
-
"@modern-js/server-core": "2.0.0-beta.4",
|
|
180
|
-
"@scripts/build": "2.0.0-beta.4",
|
|
181
|
-
"@modern-js/app-tools": "2.0.0-beta.4",
|
|
182
|
-
"@scripts/jest-config": "2.0.0-beta.4"
|
|
185
|
+
"typescript": "^4"
|
|
183
186
|
},
|
|
184
187
|
"sideEffects": false,
|
|
185
188
|
"modernConfig": {},
|
package/types/index.d.ts
CHANGED
package/types/router.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { RouterConfig } from '../dist/types';
|
|
2
2
|
import '../dist/types/router';
|
|
3
3
|
|
|
4
|
-
declare module '@modern-js/
|
|
5
|
-
interface
|
|
4
|
+
declare module '@modern-js/app-tools' {
|
|
5
|
+
interface RuntimeUserConfig {
|
|
6
6
|
router?: RouterConfig | boolean;
|
|
7
7
|
}
|
|
8
8
|
}
|