@modern-js/runtime 2.0.0-beta.3 → 2.0.0-beta.4
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/CHANGELOG.md +126 -0
- package/dist/js/modern/cli/index.js +49 -19
- package/dist/js/modern/cli/types.d.js +0 -0
- package/dist/js/modern/common.js +4 -1
- package/dist/js/modern/core/app-config.js +8 -9
- package/dist/js/modern/core/compatible.js +195 -169
- package/dist/js/modern/core/index.js +14 -6
- package/dist/js/modern/core/loader/index.js +4 -1
- package/dist/js/modern/core/loader/loaderManager.js +75 -77
- package/dist/js/modern/core/loader/useLoader.js +96 -69
- package/dist/js/modern/core/plugin.js +37 -20
- package/dist/js/modern/document/Body.js +20 -14
- package/dist/js/modern/document/DocumentContext.js +6 -3
- package/dist/js/modern/document/DocumentStructrueContext.js +6 -3
- package/dist/js/modern/document/Head.js +18 -17
- package/dist/js/modern/document/Html.js +42 -58
- package/dist/js/modern/document/Root.js +22 -20
- package/dist/js/modern/document/Script.js +20 -0
- package/dist/js/modern/document/Scripts.js +7 -7
- package/dist/js/modern/document/cli/index.js +175 -85
- package/dist/js/modern/document/constants.js +41 -15
- package/dist/js/modern/document/index.js +2 -1
- package/dist/js/modern/document/type.d.js +0 -0
- package/dist/js/modern/exports/head.js +6 -3
- package/dist/js/modern/exports/loadable.js +6 -3
- package/dist/js/modern/exports/server.js +4 -1
- package/dist/js/modern/exports/styled.js +6 -3
- package/dist/js/modern/index.js +22 -2
- package/dist/js/modern/modern-app.env.d.js +0 -0
- package/dist/js/modern/router/cli/index.js +75 -57
- package/dist/js/modern/router/index.js +7 -3
- package/dist/js/modern/router/runtime/DefaultNotFound.js +11 -10
- package/dist/js/modern/router/runtime/index.js +8 -3
- package/dist/js/modern/router/runtime/plugin.js +70 -37
- package/dist/js/modern/router/runtime/plugin.node.js +88 -83
- package/dist/js/modern/router/runtime/root/index.js +10 -10
- package/dist/js/modern/router/runtime/root/load.js +57 -36
- package/dist/js/modern/router/runtime/server.js +1 -1
- package/dist/js/modern/router/runtime/types.js +0 -1
- package/dist/js/modern/router/runtime/utils.js +84 -63
- package/dist/js/modern/router/runtime/withRouter.js +31 -15
- package/dist/js/modern/runtime-context.js +7 -3
- package/dist/js/modern/ssr/cli/babel-plugin-ssr-loader-id.js +130 -0
- package/dist/js/modern/ssr/cli/index.js +102 -79
- package/dist/js/modern/ssr/index.js +89 -71
- package/dist/js/modern/ssr/index.node.js +59 -37
- package/dist/js/modern/ssr/prefetch.js +64 -45
- package/dist/js/modern/ssr/react/index.js +6 -2
- package/dist/js/modern/ssr/react/nossr/index.js +8 -7
- package/dist/js/modern/ssr/react/prerender/index.js +53 -28
- package/dist/js/modern/ssr/react/prerender/util.js +38 -26
- package/dist/js/modern/ssr/react/withCallback/index.js +6 -7
- package/dist/js/modern/ssr/serverRender/helmet.js +18 -12
- package/dist/js/modern/ssr/serverRender/index.js +34 -13
- package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +10 -12
- package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.share.js +11 -5
- package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +37 -38
- package/dist/js/modern/ssr/serverRender/renderToStream/index.js +36 -18
- package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +7 -7
- package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +56 -34
- package/dist/js/modern/ssr/serverRender/renderToStream/styledComponent.js +6 -5
- package/dist/js/modern/ssr/serverRender/renderToStream/template.js +13 -9
- package/dist/js/modern/ssr/serverRender/renderToString/entry.js +101 -84
- package/dist/js/modern/ssr/serverRender/renderToString/index.js +32 -9
- package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +21 -18
- package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +6 -3
- package/dist/js/modern/ssr/serverRender/renderToString/styledComponent.js +6 -3
- package/dist/js/modern/ssr/serverRender/renderToString/template.js +22 -22
- package/dist/js/modern/ssr/serverRender/renderToString/type.js +9 -6
- package/dist/js/modern/ssr/serverRender/types.js +3 -1
- package/dist/js/modern/ssr/serverRender/utils.js +11 -9
- package/dist/js/modern/ssr/type.d.js +0 -0
- package/dist/js/modern/ssr/utils.js +41 -21
- package/dist/js/modern/state/cli/index.js +43 -32
- package/dist/js/modern/state/index.js +7 -3
- package/dist/js/modern/state/plugins.js +13 -7
- package/dist/js/modern/state/runtime/index.js +9 -4
- package/dist/js/modern/state/runtime/plugin.js +56 -40
- package/dist/js/modern/state/types.js +0 -1
- package/dist/js/node/cli/index.js +77 -30
- package/dist/js/node/cli/types.d.js +0 -0
- package/dist/js/node/common.js +22 -7
- package/dist/js/node/core/app-config.js +24 -14
- package/dist/js/node/core/compatible.js +223 -186
- package/dist/js/node/core/index.js +34 -100
- package/dist/js/node/core/loader/index.js +27 -11
- package/dist/js/node/core/loader/loaderManager.js +97 -83
- package/dist/js/node/core/loader/useLoader.js +120 -83
- package/dist/js/node/core/plugin.js +58 -35
- package/dist/js/node/document/Body.js +36 -23
- package/dist/js/node/document/DocumentContext.js +29 -9
- package/dist/js/node/document/DocumentStructrueContext.js +29 -9
- package/dist/js/node/document/Head.js +38 -27
- package/dist/js/node/document/Html.js +62 -65
- package/dist/js/node/document/Root.js +42 -31
- package/dist/js/node/document/Script.js +36 -0
- package/dist/js/node/document/Scripts.js +26 -14
- package/dist/js/node/document/cli/index.js +188 -95
- package/dist/js/node/document/constants.js +56 -28
- package/dist/js/node/document/index.js +25 -93
- package/dist/js/node/document/type.d.js +0 -0
- package/dist/js/node/exports/head.js +31 -22
- package/dist/js/node/exports/loadable.js +31 -22
- package/dist/js/node/exports/server.js +22 -7
- package/dist/js/node/exports/styled.js +31 -22
- package/dist/js/node/index.js +32 -61
- package/dist/js/node/modern-app.env.d.js +0 -0
- package/dist/js/node/router/cli/index.js +88 -62
- package/dist/js/node/router/index.js +30 -31
- package/dist/js/node/router/runtime/DefaultNotFound.js +28 -17
- package/dist/js/node/router/runtime/index.js +28 -33
- package/dist/js/node/router/runtime/plugin.js +89 -44
- package/dist/js/node/router/runtime/plugin.node.js +110 -93
- package/dist/js/node/router/runtime/root/index.js +33 -21
- package/dist/js/node/router/runtime/root/load.js +74 -42
- package/dist/js/node/router/runtime/server.js +17 -16
- package/dist/js/node/router/runtime/types.js +0 -5
- package/dist/js/node/router/runtime/utils.js +99 -72
- package/dist/js/node/router/runtime/withRouter.js +51 -22
- package/dist/js/node/runtime-context.js +25 -10
- package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +158 -0
- package/dist/js/node/ssr/cli/index.js +119 -85
- package/dist/js/node/ssr/index.js +123 -104
- package/dist/js/node/ssr/index.node.js +84 -59
- package/dist/js/node/ssr/prefetch.js +82 -51
- package/dist/js/node/ssr/react/index.js +23 -17
- package/dist/js/node/ssr/react/nossr/index.js +33 -16
- package/dist/js/node/ssr/react/prerender/index.js +80 -45
- package/dist/js/node/ssr/react/prerender/util.js +55 -36
- package/dist/js/node/ssr/react/withCallback/index.js +25 -15
- package/dist/js/node/ssr/serverRender/helmet.js +35 -17
- package/dist/js/node/ssr/serverRender/index.js +53 -19
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +36 -20
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +27 -10
- package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +61 -47
- package/dist/js/node/ssr/serverRender/renderToStream/index.js +65 -30
- package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +25 -12
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +75 -43
- package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +25 -11
- package/dist/js/node/ssr/serverRender/renderToStream/template.js +32 -16
- package/dist/js/node/ssr/serverRender/renderToString/entry.js +133 -103
- package/dist/js/node/ssr/serverRender/renderToString/index.js +60 -20
- package/dist/js/node/ssr/serverRender/renderToString/loadable.js +41 -26
- package/dist/js/node/ssr/serverRender/renderToString/reduce.js +23 -7
- package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +23 -8
- package/dist/js/node/ssr/serverRender/renderToString/template.js +39 -28
- package/dist/js/node/ssr/serverRender/renderToString/type.js +27 -12
- package/dist/js/node/ssr/serverRender/types.js +21 -10
- package/dist/js/node/ssr/serverRender/utils.js +26 -13
- package/dist/js/node/ssr/type.d.js +0 -0
- package/dist/js/node/ssr/utils.js +57 -29
- package/dist/js/node/state/cli/index.js +56 -37
- package/dist/js/node/state/index.js +30 -31
- package/dist/js/node/state/plugins.js +36 -22
- package/dist/js/node/state/runtime/index.js +32 -51
- package/dist/js/node/state/runtime/plugin.js +89 -68
- package/dist/js/node/state/types.js +0 -5
- package/dist/js/treeshaking/cli/index.js +180 -52
- package/dist/js/treeshaking/cli/types.d.js +1 -0
- package/dist/js/treeshaking/common.js +4 -3
- package/dist/js/treeshaking/core/app-config.js +8 -13
- package/dist/js/treeshaking/core/compatible.js +473 -276
- package/dist/js/treeshaking/core/index.js +5 -6
- package/dist/js/treeshaking/core/loader/index.js +2 -1
- package/dist/js/treeshaking/core/loader/loaderManager.js +395 -224
- package/dist/js/treeshaking/core/loader/useLoader.js +181 -83
- package/dist/js/treeshaking/core/plugin.js +164 -48
- package/dist/js/treeshaking/document/Body.js +15 -11
- package/dist/js/treeshaking/document/DocumentContext.js +7 -6
- package/dist/js/treeshaking/document/DocumentStructrueContext.js +8 -7
- package/dist/js/treeshaking/document/Head.js +18 -17
- package/dist/js/treeshaking/document/Html.js +86 -93
- package/dist/js/treeshaking/document/Root.js +23 -21
- package/dist/js/treeshaking/document/Script.js +15 -0
- package/dist/js/treeshaking/document/Scripts.js +7 -9
- package/dist/js/treeshaking/document/cli/index.js +381 -168
- package/dist/js/treeshaking/document/constants.js +34 -16
- package/dist/js/treeshaking/document/index.js +2 -1
- package/dist/js/treeshaking/document/type.d.js +1 -0
- package/dist/js/treeshaking/exports/head.js +4 -3
- package/dist/js/treeshaking/exports/loadable.js +4 -3
- package/dist/js/treeshaking/exports/server.js +4 -3
- package/dist/js/treeshaking/exports/styled.js +4 -3
- package/dist/js/treeshaking/index.js +3 -2
- package/dist/js/treeshaking/modern-app.env.d.js +1 -0
- package/dist/js/treeshaking/router/cli/index.js +147 -99
- package/dist/js/treeshaking/router/index.js +4 -3
- package/dist/js/treeshaking/router/runtime/DefaultNotFound.js +14 -15
- package/dist/js/treeshaking/router/runtime/index.js +5 -3
- package/dist/js/treeshaking/router/runtime/plugin.js +119 -62
- package/dist/js/treeshaking/router/runtime/plugin.node.js +375 -152
- package/dist/js/treeshaking/router/runtime/root/index.js +17 -15
- package/dist/js/treeshaking/router/runtime/root/load.js +290 -95
- package/dist/js/treeshaking/router/runtime/server.js +1 -1
- package/dist/js/treeshaking/router/runtime/types.js +1 -1
- package/dist/js/treeshaking/router/runtime/utils.js +227 -143
- package/dist/js/treeshaking/router/runtime/withRouter.js +67 -18
- package/dist/js/treeshaking/runtime-context.js +4 -3
- package/dist/js/treeshaking/ssr/cli/babel-plugin-ssr-loader-id.js +122 -0
- package/dist/js/treeshaking/ssr/cli/index.js +210 -138
- package/dist/js/treeshaking/ssr/index.js +305 -144
- package/dist/js/treeshaking/ssr/index.node.js +234 -66
- package/dist/js/treeshaking/ssr/prefetch.js +196 -79
- package/dist/js/treeshaking/ssr/react/index.js +3 -2
- package/dist/js/treeshaking/ssr/react/nossr/index.js +57 -14
- package/dist/js/treeshaking/ssr/react/prerender/index.js +226 -89
- package/dist/js/treeshaking/ssr/react/prerender/type.js +1 -0
- package/dist/js/treeshaking/ssr/react/prerender/util.js +96 -86
- package/dist/js/treeshaking/ssr/react/withCallback/index.js +16 -15
- package/dist/js/treeshaking/ssr/serverRender/helmet.js +38 -34
- package/dist/js/treeshaking/ssr/serverRender/index.js +165 -37
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +33 -31
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.share.js +7 -7
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +109 -58
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +157 -42
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +20 -20
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +114 -63
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/styledComponent.js +11 -10
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +61 -20
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/type.js +1 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +380 -208
- package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +161 -40
- package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +51 -45
- package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +9 -8
- package/dist/js/treeshaking/ssr/serverRender/renderToString/styledComponent.js +9 -8
- package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +142 -64
- package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +7 -6
- package/dist/js/treeshaking/ssr/serverRender/types.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/utils.js +67 -26
- package/dist/js/treeshaking/ssr/type.d.js +1 -0
- package/dist/js/treeshaking/ssr/utils.js +128 -64
- package/dist/js/treeshaking/state/cli/index.js +70 -68
- package/dist/js/treeshaking/state/index.js +4 -3
- package/dist/js/treeshaking/state/plugins.js +12 -11
- package/dist/js/treeshaking/state/runtime/index.js +5 -4
- package/dist/js/treeshaking/state/runtime/plugin.js +189 -77
- package/dist/js/treeshaking/state/types.js +1 -1
- package/dist/types/cli/index.d.ts +2 -0
- package/dist/types/core/loader/loaderManager.d.ts +1 -0
- package/dist/types/core/loader/useLoader.d.ts +5 -0
- package/dist/types/core/plugin.d.ts +6 -1
- package/dist/types/document/Script.d.ts +4 -0
- package/dist/types/document/cli/index.d.ts +2 -0
- package/dist/types/document/constants.d.ts +2 -0
- package/dist/types/document/index.d.ts +1 -0
- package/dist/types/router/cli/index.d.ts +2 -0
- package/dist/types/router/runtime/index.d.ts +1 -0
- package/dist/types/router/runtime/plugin.d.ts +4 -1
- package/dist/types/router/runtime/types.d.ts +4 -1
- package/dist/types/ssr/cli/babel-plugin-ssr-loader-id.d.ts +1 -0
- package/dist/types/ssr/cli/index.d.ts +2 -0
- package/dist/types/state/cli/index.d.ts +2 -0
- package/dist/types/state/types.d.ts +1 -0
- package/package.json +19 -11
|
@@ -1,34 +1,68 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.
|
|
4
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var stdin_exports = {};
|
|
19
|
+
__export(stdin_exports, {
|
|
20
|
+
getLocation: () => getLocation,
|
|
21
|
+
getRouteComponents: () => getRouteComponents,
|
|
22
|
+
renderRoutes: () => renderRoutes,
|
|
23
|
+
standardSlash: () => standardSlash,
|
|
24
|
+
urlJoin: () => urlJoin
|
|
5
25
|
});
|
|
6
|
-
exports
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
26
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
27
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
28
|
+
var import_react = require("react");
|
|
29
|
+
var import_react_router_dom = require("react-router-dom");
|
|
30
|
+
var import_DefaultNotFound = require("./DefaultNotFound");
|
|
31
|
+
var import_root = require("./root");
|
|
32
|
+
var __defProp2 = Object.defineProperty;
|
|
33
|
+
var __defProps = Object.defineProperties;
|
|
34
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
35
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
36
|
+
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
37
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
38
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
39
|
+
var __spreadValues = (a, b) => {
|
|
40
|
+
for (var prop in b || (b = {}))
|
|
41
|
+
if (__hasOwnProp2.call(b, prop))
|
|
42
|
+
__defNormalProp(a, prop, b[prop]);
|
|
43
|
+
if (__getOwnPropSymbols)
|
|
44
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
45
|
+
if (__propIsEnum.call(b, prop))
|
|
46
|
+
__defNormalProp(a, prop, b[prop]);
|
|
47
|
+
}
|
|
48
|
+
return a;
|
|
49
|
+
};
|
|
50
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
51
|
+
var __objRest = (source, exclude) => {
|
|
52
|
+
var target = {};
|
|
53
|
+
for (var prop in source)
|
|
54
|
+
if (__hasOwnProp2.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
55
|
+
target[prop] = source[prop];
|
|
56
|
+
if (source != null && __getOwnPropSymbols)
|
|
57
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
58
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
59
|
+
target[prop] = source[prop];
|
|
60
|
+
}
|
|
61
|
+
return target;
|
|
62
|
+
};
|
|
24
63
|
const renderNestedRoute = (nestedRoute, parent) => {
|
|
25
|
-
const {
|
|
26
|
-
|
|
27
|
-
index,
|
|
28
|
-
id,
|
|
29
|
-
component: Component
|
|
30
|
-
} = nestedRoute;
|
|
31
|
-
const childElements = children === null || children === void 0 ? void 0 : children.map(childRoute => {
|
|
64
|
+
const { children, index, id, component: Component } = nestedRoute;
|
|
65
|
+
const childElements = children == null ? void 0 : children.map((childRoute) => {
|
|
32
66
|
return renderNestedRoute(childRoute, nestedRoute);
|
|
33
67
|
});
|
|
34
68
|
const routeProps = {
|
|
@@ -41,73 +75,73 @@ const renderNestedRoute = (nestedRoute, parent) => {
|
|
|
41
75
|
shouldRevalidate: nestedRoute.shouldRevalidate,
|
|
42
76
|
handle: nestedRoute.handle,
|
|
43
77
|
index: nestedRoute.index,
|
|
78
|
+
element: nestedRoute.element,
|
|
44
79
|
errorElement: nestedRoute.errorElement
|
|
45
80
|
};
|
|
46
81
|
if (nestedRoute.error) {
|
|
47
|
-
const errorElement =
|
|
82
|
+
const errorElement = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(nestedRoute.error, {});
|
|
48
83
|
routeProps.errorElement = errorElement;
|
|
49
84
|
}
|
|
50
85
|
let element;
|
|
51
86
|
if (Component) {
|
|
52
|
-
if (parent
|
|
87
|
+
if (parent == null ? void 0 : parent.loading) {
|
|
53
88
|
const Loading = parent.loading;
|
|
54
|
-
element =
|
|
55
|
-
fallback:
|
|
56
|
-
children:
|
|
89
|
+
element = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.Suspense, {
|
|
90
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Loading, {}),
|
|
91
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, {})
|
|
57
92
|
});
|
|
58
93
|
} else {
|
|
59
|
-
element =
|
|
60
|
-
children:
|
|
94
|
+
element = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.Suspense, {
|
|
95
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, {})
|
|
61
96
|
});
|
|
62
97
|
}
|
|
63
98
|
}
|
|
64
99
|
if (!parent && element) {
|
|
65
|
-
element =
|
|
100
|
+
element = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_root.RootLayout, {
|
|
66
101
|
routes: [nestedRoute],
|
|
67
102
|
children: element
|
|
68
103
|
});
|
|
69
104
|
}
|
|
70
|
-
|
|
71
|
-
|
|
105
|
+
if (element) {
|
|
106
|
+
routeProps.element = element;
|
|
107
|
+
}
|
|
108
|
+
const routeElement = index ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_router_dom.Route, __spreadProps(__spreadValues({}, routeProps), {
|
|
72
109
|
index: true
|
|
73
|
-
}), id) :
|
|
110
|
+
}), id) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_router_dom.Route, __spreadProps(__spreadValues({}, routeProps), {
|
|
74
111
|
index: false,
|
|
75
112
|
children: childElements
|
|
76
113
|
}), id);
|
|
77
114
|
return routeElement;
|
|
78
115
|
};
|
|
79
116
|
function getRouteComponents(routes, globalApp) {
|
|
80
|
-
const Layout =
|
|
81
|
-
|
|
82
|
-
Component
|
|
83
|
-
} = _ref,
|
|
84
|
-
props = _objectWithoutProperties(_ref, _excluded);
|
|
117
|
+
const Layout = (_a) => {
|
|
118
|
+
var _b = _a, { Component } = _b, props = __objRest(_b, ["Component"]);
|
|
85
119
|
const GlobalLayout = globalApp;
|
|
86
120
|
if (!GlobalLayout) {
|
|
87
|
-
return
|
|
121
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, __spreadValues({}, props));
|
|
88
122
|
}
|
|
89
|
-
return
|
|
90
|
-
Component
|
|
123
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GlobalLayout, __spreadValues({
|
|
124
|
+
Component
|
|
91
125
|
}, props));
|
|
92
126
|
};
|
|
93
127
|
const routeElements = [];
|
|
94
128
|
for (const route of routes) {
|
|
95
|
-
if (route.type ===
|
|
129
|
+
if (route.type === "nested") {
|
|
96
130
|
const routeElement = renderNestedRoute(route);
|
|
97
131
|
routeElements.push(routeElement);
|
|
98
132
|
} else {
|
|
99
|
-
const routeElement =
|
|
133
|
+
const routeElement = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_router_dom.Route, {
|
|
100
134
|
path: route.path,
|
|
101
|
-
element:
|
|
135
|
+
element: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Layout, {
|
|
102
136
|
Component: route.component
|
|
103
137
|
})
|
|
104
138
|
}, route.path);
|
|
105
139
|
routeElements.push(routeElement);
|
|
106
140
|
}
|
|
107
141
|
}
|
|
108
|
-
routeElements.push(
|
|
142
|
+
routeElements.push(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_router_dom.Route, {
|
|
109
143
|
path: "*",
|
|
110
|
-
element:
|
|
144
|
+
element: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DefaultNotFound.DefaultNotFound, {})
|
|
111
145
|
}, "*"));
|
|
112
146
|
return routeElements;
|
|
113
147
|
}
|
|
@@ -115,10 +149,7 @@ function renderRoutes(routesConfig) {
|
|
|
115
149
|
if (!routesConfig) {
|
|
116
150
|
return null;
|
|
117
151
|
}
|
|
118
|
-
const {
|
|
119
|
-
routes,
|
|
120
|
-
globalApp
|
|
121
|
-
} = routesConfig;
|
|
152
|
+
const { routes, globalApp } = routesConfig;
|
|
122
153
|
if (!routes) {
|
|
123
154
|
return null;
|
|
124
155
|
}
|
|
@@ -126,37 +157,33 @@ function renderRoutes(routesConfig) {
|
|
|
126
157
|
return routeElements;
|
|
127
158
|
}
|
|
128
159
|
function getLocation(serverContext) {
|
|
129
|
-
var
|
|
130
|
-
const {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
} = (serverContext === null || serverContext === void 0 ? void 0 : serverContext.request) || {};
|
|
134
|
-
const cleanUrl = url === null || url === void 0 ? void 0 : (_url$replace = url.replace('http://', '')) === null || _url$replace === void 0 ? void 0 : _url$replace.replace('https://', '');
|
|
135
|
-
const index = (cleanUrl || '').indexOf(pathname);
|
|
160
|
+
var _a;
|
|
161
|
+
const { pathname, url } = (serverContext == null ? void 0 : serverContext.request) || {};
|
|
162
|
+
const cleanUrl = (_a = url == null ? void 0 : url.replace("http://", "")) == null ? void 0 : _a.replace("https://", "");
|
|
163
|
+
const index = (cleanUrl || "").indexOf(pathname);
|
|
136
164
|
if (index === -1) {
|
|
137
165
|
return pathname;
|
|
138
166
|
}
|
|
139
167
|
return cleanUrl.substring(index);
|
|
140
168
|
}
|
|
141
169
|
const urlJoin = (...parts) => {
|
|
142
|
-
const separator =
|
|
143
|
-
const replace = new RegExp(`${separator}{1,}`,
|
|
170
|
+
const separator = "/";
|
|
171
|
+
const replace = new RegExp(`${separator}{1,}`, "g");
|
|
144
172
|
return standardSlash(parts.join(separator).replace(replace, separator));
|
|
145
173
|
};
|
|
146
|
-
exports.urlJoin = urlJoin;
|
|
147
174
|
function standardSlash(str) {
|
|
148
175
|
let addr = str;
|
|
149
|
-
if (!addr || typeof addr !==
|
|
176
|
+
if (!addr || typeof addr !== "string") {
|
|
150
177
|
return addr;
|
|
151
178
|
}
|
|
152
|
-
if (addr.startsWith(
|
|
179
|
+
if (addr.startsWith(".")) {
|
|
153
180
|
addr = addr.slice(1);
|
|
154
181
|
}
|
|
155
|
-
if (!addr.startsWith(
|
|
182
|
+
if (!addr.startsWith("/")) {
|
|
156
183
|
addr = `/${addr}`;
|
|
157
184
|
}
|
|
158
|
-
if (addr.endsWith(
|
|
185
|
+
if (addr.endsWith("/") && addr !== "/") {
|
|
159
186
|
addr = addr.slice(0, addr.length - 1);
|
|
160
187
|
}
|
|
161
188
|
return addr;
|
|
162
|
-
}
|
|
189
|
+
}
|
|
@@ -1,26 +1,55 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.
|
|
4
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var stdin_exports = {};
|
|
19
|
+
__export(stdin_exports, {
|
|
20
|
+
withRouter: () => withRouter
|
|
5
21
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
23
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
24
|
+
var import_react_router_dom = require("react-router-dom");
|
|
25
|
+
var __defProp2 = Object.defineProperty;
|
|
26
|
+
var __defProps = Object.defineProperties;
|
|
27
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
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
|
+
};
|
|
43
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
44
|
+
const withRouter = (Component) => {
|
|
45
|
+
return (props) => {
|
|
46
|
+
const location = (0, import_react_router_dom.useLocation)();
|
|
47
|
+
const params = (0, import_react_router_dom.useParams)();
|
|
48
|
+
const navigate = (0, import_react_router_dom.useNavigate)();
|
|
49
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, __spreadProps(__spreadValues({}, props), {
|
|
50
|
+
location,
|
|
51
|
+
params,
|
|
52
|
+
navigate
|
|
23
53
|
}));
|
|
24
54
|
};
|
|
25
55
|
};
|
|
26
|
-
exports.withRouter = withRouter;
|
|
@@ -1,11 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.
|
|
4
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var stdin_exports = {};
|
|
19
|
+
__export(stdin_exports, {
|
|
20
|
+
RuntimeReactContext: () => RuntimeReactContext,
|
|
21
|
+
ServerRouterContext: () => ServerRouterContext
|
|
5
22
|
});
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
const RuntimeReactContext =
|
|
9
|
-
|
|
10
|
-
const ServerRouterContext = /*#__PURE__*/(0, _react.createContext)({});
|
|
11
|
-
exports.ServerRouterContext = ServerRouterContext;
|
|
23
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
24
|
+
var import_react = require("react");
|
|
25
|
+
const RuntimeReactContext = (0, import_react.createContext)({});
|
|
26
|
+
const ServerRouterContext = (0, import_react.createContext)({});
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
21
|
+
mod
|
|
22
|
+
));
|
|
23
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
24
|
+
var stdin_exports = {};
|
|
25
|
+
__export(stdin_exports, {
|
|
26
|
+
default: () => stdin_default
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
29
|
+
var import_crypto = __toESM(require("crypto"));
|
|
30
|
+
var import_buffer = require("buffer");
|
|
31
|
+
var t = __toESM(require("@babel/types"));
|
|
32
|
+
var import_lodash = require("@modern-js/utils/lodash");
|
|
33
|
+
var __getOwnPropNames2 = Object.getOwnPropertyNames;
|
|
34
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
35
|
+
return mod || (0, cb[__getOwnPropNames2(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
36
|
+
};
|
|
37
|
+
var require_babel_plugin_ssr_loader_id = __commonJS({
|
|
38
|
+
"src/ssr/cli/babel-plugin-ssr-loader-id.ts"(exports, module2) {
|
|
39
|
+
const RUNTIME_PACKAGE_NAMES = ["@modern-js/runtime"];
|
|
40
|
+
const FUNCTION_USE_LOADER_NAME = "useLoader";
|
|
41
|
+
function getHash(filepath) {
|
|
42
|
+
const cwd = process.cwd();
|
|
43
|
+
const point = filepath.indexOf(cwd);
|
|
44
|
+
let relativePath = filepath;
|
|
45
|
+
if (point !== -1) {
|
|
46
|
+
relativePath = filepath.substring(point + cwd.length);
|
|
47
|
+
}
|
|
48
|
+
const fileBuf = import_buffer.Buffer.from(relativePath);
|
|
49
|
+
const fsHash = import_crypto.default.createHash("md5");
|
|
50
|
+
const md5 = fsHash.update(fileBuf).digest("hex");
|
|
51
|
+
return md5;
|
|
52
|
+
}
|
|
53
|
+
function getUseLoaderPath(path, calleeName) {
|
|
54
|
+
const { node } = path;
|
|
55
|
+
if (!calleeName || node.callee.name !== calleeName) {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
const arg1 = (0, import_lodash.get)(node, "arguments.0");
|
|
59
|
+
if (t.isFunction(arg1) || t.isFunctionExpression(arg1) || t.isArrowFunctionExpression(arg1) || t.isIdentifier(arg1) || t.isCallExpression(arg1) || t.isMemberExpression(arg1)) {
|
|
60
|
+
const loaderPath = path.get("arguments.0");
|
|
61
|
+
if (isDuplicateInnerLoader(loaderPath)) {
|
|
62
|
+
return false;
|
|
63
|
+
} else {
|
|
64
|
+
return loaderPath;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
console.warn("useLoader 中 loaderId 生成失败,请检查 useLoader");
|
|
68
|
+
throw path.buildCodeFrameError(`
|
|
69
|
+
please check the usage of ${path.node.name}
|
|
70
|
+
`);
|
|
71
|
+
}
|
|
72
|
+
function isDuplicateInnerLoader(path) {
|
|
73
|
+
const { node } = path;
|
|
74
|
+
if (t.isFunctionExpression(node.callee)) {
|
|
75
|
+
if (t.isBlockStatement(node.callee.body)) {
|
|
76
|
+
if ((0, import_lodash.get)(node.callee.body, "body.0.declarations.0.id.name") === "innerLoader" && (0, import_lodash.get)(node.callee.body, "body.2.argument.name") === "innerLoader") {
|
|
77
|
+
return true;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
function getSelfRunLoaderExpression(loaderExpression, id) {
|
|
84
|
+
return t.callExpression(
|
|
85
|
+
t.functionExpression(
|
|
86
|
+
null,
|
|
87
|
+
[],
|
|
88
|
+
t.blockStatement([
|
|
89
|
+
t.variableDeclaration("var", [
|
|
90
|
+
t.variableDeclarator(t.identifier("innerLoader"), loaderExpression)
|
|
91
|
+
]),
|
|
92
|
+
t.expressionStatement(
|
|
93
|
+
t.assignmentExpression(
|
|
94
|
+
"=",
|
|
95
|
+
t.memberExpression(t.identifier("innerLoader"), t.identifier("id")),
|
|
96
|
+
t.stringLiteral(id)
|
|
97
|
+
)
|
|
98
|
+
),
|
|
99
|
+
t.returnStatement(t.identifier("innerLoader"))
|
|
100
|
+
])
|
|
101
|
+
),
|
|
102
|
+
[]
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
module2.exports = function() {
|
|
106
|
+
let useLoader = null;
|
|
107
|
+
let hash = "";
|
|
108
|
+
let index = 0;
|
|
109
|
+
function genId() {
|
|
110
|
+
return `${hash}_${index++}`;
|
|
111
|
+
}
|
|
112
|
+
return {
|
|
113
|
+
name: "babel-plugin-ssr-loader-id",
|
|
114
|
+
pre() {
|
|
115
|
+
index = 0;
|
|
116
|
+
useLoader = null;
|
|
117
|
+
hash = "";
|
|
118
|
+
},
|
|
119
|
+
visitor: {
|
|
120
|
+
ImportDeclaration(path, state) {
|
|
121
|
+
if (useLoader) {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
if (!RUNTIME_PACKAGE_NAMES.includes((0, import_lodash.get)(path, "node.source.value"))) {
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
hash = getHash(state.file.opts.filename);
|
|
128
|
+
(0, import_lodash.get)(path, "node.specifiers", []).forEach(({ imported, local }) => {
|
|
129
|
+
if (!imported) {
|
|
130
|
+
throw path.buildCodeFrameError(
|
|
131
|
+
`please \`import { useLoader } from ${RUNTIME_PACKAGE_NAMES[0]}\``
|
|
132
|
+
);
|
|
133
|
+
}
|
|
134
|
+
if (!useLoader && imported.name === FUNCTION_USE_LOADER_NAME) {
|
|
135
|
+
useLoader = local.name;
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
return false;
|
|
139
|
+
},
|
|
140
|
+
CallExpression(path) {
|
|
141
|
+
let loaderPath = getUseLoaderPath(path, useLoader);
|
|
142
|
+
if (loaderPath) {
|
|
143
|
+
if (!Array.isArray(loaderPath)) {
|
|
144
|
+
loaderPath = [loaderPath];
|
|
145
|
+
}
|
|
146
|
+
loaderPath.forEach((p) => {
|
|
147
|
+
p.replaceWith(getSelfRunLoaderExpression(p.node, genId()));
|
|
148
|
+
});
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
};
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
var stdin_default = require_babel_plugin_ssr_loader_id();
|