@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,13 +1,31 @@
|
|
|
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
|
+
aggKeysFromPropsList: () => aggKeysFromPropsList,
|
|
21
|
+
aggMatchesFromPropsList: () => aggMatchesFromPropsList,
|
|
22
|
+
exist: () => exist,
|
|
23
|
+
getInnermostProperty: () => getInnermostProperty,
|
|
24
|
+
getOutermostProperty: () => getOutermostProperty
|
|
5
25
|
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const REQUEST_META = ['header', 'query'];
|
|
10
|
-
const getInnermostProperty = function getInnermostProperty(propsList, propName) {
|
|
26
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
27
|
+
const REQUEST_META = ["header", "query"];
|
|
28
|
+
const getInnermostProperty = function getInnermostProperty2(propsList, propName) {
|
|
11
29
|
for (let i = propsList.length - 1; i >= 0; i--) {
|
|
12
30
|
const props = propsList[i];
|
|
13
31
|
if (props.hasOwnProperty(propName)) {
|
|
@@ -16,8 +34,7 @@ const getInnermostProperty = function getInnermostProperty(propsList, propName)
|
|
|
16
34
|
}
|
|
17
35
|
return null;
|
|
18
36
|
};
|
|
19
|
-
|
|
20
|
-
const getOutermostProperty = function getOutermostProperty(propsList, propName) {
|
|
37
|
+
const getOutermostProperty = function getOutermostProperty2(propsList, propName) {
|
|
21
38
|
for (const props of propsList) {
|
|
22
39
|
if (props.hasOwnProperty(propName)) {
|
|
23
40
|
return props[propName];
|
|
@@ -25,43 +42,46 @@ const getOutermostProperty = function getOutermostProperty(propsList, propName)
|
|
|
25
42
|
}
|
|
26
43
|
return null;
|
|
27
44
|
};
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
45
|
+
const aggKeysFromPropsList = function aggKeysFromPropsList2(propsList, propName) {
|
|
46
|
+
const initResult = REQUEST_META.reduce(
|
|
47
|
+
(result, next) => {
|
|
48
|
+
const key = next;
|
|
49
|
+
result[key] = [];
|
|
50
|
+
return result;
|
|
51
|
+
},
|
|
52
|
+
{}
|
|
53
|
+
);
|
|
54
|
+
const res = propsList.filter((props) => usefulObject(props[propName])).reduce((result, next) => {
|
|
55
|
+
REQUEST_META.forEach((key) => {
|
|
37
56
|
const prop = next[propName];
|
|
38
|
-
if (prop
|
|
57
|
+
if ((prop == null ? void 0 : prop.hasOwnProperty(key)) && usefulArray(prop[key])) {
|
|
39
58
|
result[key] = unique(result[key].concat(prop[key]));
|
|
40
59
|
}
|
|
41
60
|
});
|
|
42
61
|
return result;
|
|
43
62
|
}, initResult);
|
|
44
63
|
return REQUEST_META.reduce((result, next) => {
|
|
45
|
-
var
|
|
64
|
+
var _a;
|
|
46
65
|
const key = next;
|
|
47
|
-
if (result[key] && ((
|
|
66
|
+
if (result[key] && ((_a = result[key]) == null ? void 0 : _a.length) === 0) {
|
|
48
67
|
delete result[key];
|
|
49
68
|
}
|
|
50
69
|
return result;
|
|
51
70
|
}, res);
|
|
52
71
|
};
|
|
53
|
-
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
72
|
+
const aggMatchesFromPropsList = function aggMatchesFromPropsList2(propsList, propName) {
|
|
73
|
+
const initResult = REQUEST_META.reduce(
|
|
74
|
+
(result, next) => {
|
|
75
|
+
const key = next;
|
|
76
|
+
result[key] = {};
|
|
77
|
+
return result;
|
|
78
|
+
},
|
|
79
|
+
{}
|
|
80
|
+
);
|
|
81
|
+
const res = propsList.filter((props) => usefulObject(props[propName])).reduce((result, next) => {
|
|
82
|
+
REQUEST_META.forEach((key) => {
|
|
62
83
|
const prop = next[propName];
|
|
63
|
-
|
|
64
|
-
if (prop !== null && prop !== void 0 && prop.hasOwnProperty(key) && usefulObject(prop[key])) {
|
|
84
|
+
if ((prop == null ? void 0 : prop.hasOwnProperty(key)) && usefulObject(prop[key])) {
|
|
65
85
|
result[key] = Object.assign(result[key], prop[key]);
|
|
66
86
|
}
|
|
67
87
|
});
|
|
@@ -75,7 +95,6 @@ const aggMatchesFromPropsList = function aggMatchesFromPropsList(propsList, prop
|
|
|
75
95
|
return result;
|
|
76
96
|
}, res);
|
|
77
97
|
};
|
|
78
|
-
exports.aggMatchesFromPropsList = aggMatchesFromPropsList;
|
|
79
98
|
function unique(arr) {
|
|
80
99
|
return Array.from(new Set(arr));
|
|
81
100
|
}
|
|
@@ -93,4 +112,4 @@ function usefulArray(target) {
|
|
|
93
112
|
}
|
|
94
113
|
function exist(target) {
|
|
95
114
|
return target != null;
|
|
96
|
-
}
|
|
115
|
+
}
|
|
@@ -1,18 +1,29 @@
|
|
|
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
|
+
WithCallback: () => WithCallback
|
|
5
21
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
callback,
|
|
12
|
-
children
|
|
13
|
-
}) => {
|
|
14
|
-
const once = (0, _react.useRef)(false);
|
|
15
|
-
(0, _react.useLayoutEffect)(() => {
|
|
22
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
23
|
+
var import_react = require("react");
|
|
24
|
+
const WithCallback = ({ callback, children }) => {
|
|
25
|
+
const once = (0, import_react.useRef)(false);
|
|
26
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
16
27
|
if (once.current) {
|
|
17
28
|
return;
|
|
18
29
|
}
|
|
@@ -21,4 +32,3 @@ const WithCallback = ({
|
|
|
21
32
|
}, [callback]);
|
|
22
33
|
return children;
|
|
23
34
|
};
|
|
24
|
-
exports.WithCallback = WithCallback;
|
|
@@ -1,19 +1,31 @@
|
|
|
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
|
+
default: () => helmet
|
|
5
21
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
// 用于 react-helmet 正则替换
|
|
9
|
-
|
|
22
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
23
|
+
var import_os = require("os");
|
|
10
24
|
const RE_HTML_ATTR = /<html[^>]*>/;
|
|
11
25
|
const RE_BODY_ATTR = /<body[^>]*>/;
|
|
12
26
|
const RE_LAST_IN_HEAD = /<\/head>/;
|
|
13
27
|
const RE_TITLE = /<title[^>]*>([\s\S\n\r]*?)<\/title>/;
|
|
14
|
-
const TEST_TITLE_CONTENT =
|
|
15
|
-
|
|
16
|
-
// 通过 react-helmet 修改模板
|
|
28
|
+
const TEST_TITLE_CONTENT = new RegExp("(?<=<title[^>]*>)([\\s\\S\\n\\r]*?)([.|\\S])([\\s\\S\\n\\r]*?)(?=<\\/title>)");
|
|
17
29
|
function helmet(content, helmetData) {
|
|
18
30
|
let result = content;
|
|
19
31
|
const bodyAttributes = helmetData.bodyAttributes.toString();
|
|
@@ -31,15 +43,21 @@ function helmet(content, helmetData) {
|
|
|
31
43
|
const script = helmetData.script.toString();
|
|
32
44
|
const style = helmetData.style.toString();
|
|
33
45
|
const title = helmetData.title.toString();
|
|
34
|
-
|
|
35
|
-
// 如果模板中存在 title,且 helmetData title 有内容则做替换
|
|
36
46
|
const existTitleTag = RE_TITLE.test(content);
|
|
37
47
|
const shouldReplaceTitle = existTitleTag && TEST_TITLE_CONTENT.test(title.trim());
|
|
38
48
|
if (shouldReplaceTitle) {
|
|
39
49
|
result = result.replace(RE_TITLE, title);
|
|
40
50
|
}
|
|
41
|
-
const helmetStr = [
|
|
42
|
-
|
|
43
|
-
|
|
51
|
+
const helmetStr = [
|
|
52
|
+
base,
|
|
53
|
+
link,
|
|
54
|
+
meta,
|
|
55
|
+
noscript,
|
|
56
|
+
script,
|
|
57
|
+
style,
|
|
58
|
+
!existTitleTag ? title : ""
|
|
59
|
+
].reduce((pre, cur) => {
|
|
60
|
+
return pre + (cur.length > 0 ? ` ${cur}${import_os.EOL}` : "");
|
|
61
|
+
}, "");
|
|
44
62
|
return result.replace(RE_LAST_IN_HEAD, `${helmetStr}</head>`);
|
|
45
|
-
}
|
|
63
|
+
}
|
|
@@ -1,20 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const pipe = await require("./renderToStream").render(options);
|
|
15
|
-
return pipe;
|
|
16
|
-
} else {
|
|
17
|
-
const html = await require("./renderToString").render(options);
|
|
18
|
-
return html;
|
|
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 });
|
|
19
14
|
}
|
|
20
|
-
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var stdin_exports = {};
|
|
19
|
+
__export(stdin_exports, {
|
|
20
|
+
default: () => serverRender
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
23
|
+
var import_utils = require("../utils");
|
|
24
|
+
var __async = (__this, __arguments, generator) => {
|
|
25
|
+
return new Promise((resolve, reject) => {
|
|
26
|
+
var fulfilled = (value) => {
|
|
27
|
+
try {
|
|
28
|
+
step(generator.next(value));
|
|
29
|
+
} catch (e) {
|
|
30
|
+
reject(e);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
var rejected = (value) => {
|
|
34
|
+
try {
|
|
35
|
+
step(generator.throw(value));
|
|
36
|
+
} catch (e) {
|
|
37
|
+
reject(e);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
41
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
function serverRender(options) {
|
|
45
|
+
return __async(this, null, function* () {
|
|
46
|
+
if ((0, import_utils.isReact18)() && options.config.mode === "stream") {
|
|
47
|
+
const pipe = yield require("./renderToStream").render(options);
|
|
48
|
+
return pipe;
|
|
49
|
+
} else {
|
|
50
|
+
const html = yield require("./renderToString").render(options);
|
|
51
|
+
return html;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
@@ -1,26 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.
|
|
4
|
-
|
|
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
|
+
buildShellAfterTemplate: () => buildShellAfterTemplate
|
|
5
27
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
28
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
29
|
+
var import_serialize_javascript = __toESM(require("serialize-javascript"));
|
|
30
|
+
var import_buildTemplate = require("./buildTemplate.share");
|
|
10
31
|
function buildShellAfterTemplate(afterAppTemplate, options) {
|
|
11
32
|
const callbacks = [injectSSRDataScript];
|
|
12
|
-
return (0,
|
|
33
|
+
return (0, import_buildTemplate.buildTemplate)(afterAppTemplate, callbacks);
|
|
13
34
|
function injectSSRDataScript(template) {
|
|
14
35
|
const ssrDataScript = buildSSRDataScript();
|
|
15
|
-
return template.replace(
|
|
36
|
+
return template.replace("<!--<?- SSRDataScript ?>-->", ssrDataScript);
|
|
16
37
|
function buildSSRDataScript() {
|
|
17
|
-
const {
|
|
18
|
-
|
|
19
|
-
renderLevel
|
|
20
|
-
} = options;
|
|
21
|
-
const {
|
|
22
|
-
request
|
|
23
|
-
} = ssrContext;
|
|
38
|
+
const { ssrContext, renderLevel } = options;
|
|
39
|
+
const { request } = ssrContext;
|
|
24
40
|
const SSRData = {
|
|
25
41
|
context: {
|
|
26
42
|
request: {
|
|
@@ -36,10 +52,10 @@ function buildShellAfterTemplate(afterAppTemplate, options) {
|
|
|
36
52
|
renderLevel
|
|
37
53
|
};
|
|
38
54
|
return `
|
|
39
|
-
<script>window._SSR_DATA = ${(0,
|
|
55
|
+
<script>window._SSR_DATA = ${(0, import_serialize_javascript.default)(SSRData, {
|
|
40
56
|
isJSON: true
|
|
41
|
-
})}
|
|
57
|
+
})}<\/script>
|
|
42
58
|
`;
|
|
43
59
|
}
|
|
44
60
|
}
|
|
45
|
-
}
|
|
61
|
+
}
|
|
@@ -1,13 +1,30 @@
|
|
|
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
|
+
HEAD_REG_EXP: () => HEAD_REG_EXP,
|
|
21
|
+
buildTemplate: () => buildTemplate
|
|
5
22
|
});
|
|
6
|
-
exports
|
|
7
|
-
exports.buildTemplate = buildTemplate;
|
|
8
|
-
// share script
|
|
23
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
9
24
|
const HEAD_REG_EXP = /<head(.|\n)*>(.|\n)*<\/head>/;
|
|
10
|
-
exports.HEAD_REG_EXP = HEAD_REG_EXP;
|
|
11
25
|
function buildTemplate(template, callbacks) {
|
|
12
|
-
return callbacks.reduce(
|
|
13
|
-
|
|
26
|
+
return callbacks.reduce(
|
|
27
|
+
(template2, buildTemplateCb) => buildTemplateCb(template2),
|
|
28
|
+
template
|
|
29
|
+
);
|
|
30
|
+
}
|
|
@@ -1,69 +1,83 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.
|
|
4
|
-
|
|
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
|
+
buildShellBeforeTemplate: () => buildShellBeforeTemplate
|
|
5
27
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
const CSS_CHUNKS_PLACEHOLDER = '<!--<?- chunksMap.css ?>-->';
|
|
13
|
-
|
|
14
|
-
// build head template
|
|
28
|
+
module.exports = __toCommonJS(stdin_exports);
|
|
29
|
+
var import_react_helmet = __toESM(require("react-helmet"));
|
|
30
|
+
var import_react_router_dom = require("react-router-dom");
|
|
31
|
+
var import_helmet = __toESM(require("../helmet"));
|
|
32
|
+
var import_buildTemplate = require("./buildTemplate.share");
|
|
33
|
+
const CSS_CHUNKS_PLACEHOLDER = "<!--<?- chunksMap.css ?>-->";
|
|
15
34
|
function getHeadTemplate(beforeEntryTemplate, context) {
|
|
16
|
-
const callbacks = [
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
35
|
+
const callbacks = [
|
|
36
|
+
(headTemplate2) => {
|
|
37
|
+
const helmetData = import_react_helmet.default.renderStatic();
|
|
38
|
+
return helmetData ? (0, import_helmet.default)(headTemplate2, helmetData) : headTemplate2;
|
|
39
|
+
},
|
|
40
|
+
injectCss
|
|
41
|
+
];
|
|
42
|
+
const [headTemplate = ""] = beforeEntryTemplate.match(import_buildTemplate.HEAD_REG_EXP) || [];
|
|
23
43
|
if (!headTemplate.length) {
|
|
24
|
-
return
|
|
44
|
+
return "";
|
|
25
45
|
}
|
|
26
|
-
return (0,
|
|
27
|
-
function injectCss(
|
|
28
|
-
return
|
|
46
|
+
return (0, import_buildTemplate.buildTemplate)(headTemplate, callbacks);
|
|
47
|
+
function injectCss(headTemplate2) {
|
|
48
|
+
return headTemplate2.replace(CSS_CHUNKS_PLACEHOLDER, getCssChunks());
|
|
29
49
|
function getCssChunks() {
|
|
30
|
-
const {
|
|
31
|
-
routeManifest,
|
|
32
|
-
routerContext,
|
|
33
|
-
routes
|
|
34
|
-
} = context;
|
|
50
|
+
const { routeManifest, routerContext, routes } = context;
|
|
35
51
|
if (!routeManifest || !routerContext || !routes) {
|
|
36
|
-
return
|
|
52
|
+
return "";
|
|
37
53
|
}
|
|
38
|
-
const {
|
|
39
|
-
routeAssets
|
|
40
|
-
} = routeManifest;
|
|
54
|
+
const { routeAssets } = routeManifest;
|
|
41
55
|
const cssChunks = [];
|
|
42
|
-
const matches = (0,
|
|
43
|
-
matches
|
|
44
|
-
// root layout css chunks should't be loaded
|
|
56
|
+
const matches = (0, import_react_router_dom.matchRoutes)(routes, routerContext.location);
|
|
57
|
+
matches == null ? void 0 : matches.forEach((match, index) => {
|
|
45
58
|
if (!index) {
|
|
46
59
|
return;
|
|
47
60
|
}
|
|
48
61
|
const routeId = match.route.id;
|
|
49
62
|
if (routeId) {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
63
|
+
const routeManifest2 = routeAssets[routeId];
|
|
64
|
+
if (routeManifest2) {
|
|
65
|
+
const { assets = [] } = routeManifest2;
|
|
66
|
+
const _cssChunks = assets.filter(
|
|
67
|
+
(asset) => asset == null ? void 0 : asset.endsWith(".css")
|
|
68
|
+
);
|
|
69
|
+
cssChunks.push(..._cssChunks);
|
|
70
|
+
}
|
|
55
71
|
}
|
|
56
72
|
});
|
|
57
|
-
const styleLinks = cssChunks.map(chunk => {
|
|
73
|
+
const styleLinks = cssChunks.map((chunk) => {
|
|
58
74
|
return `<link href="${chunk}" rel="stylesheet" />`;
|
|
59
75
|
});
|
|
60
|
-
return `${styleLinks.join(
|
|
76
|
+
return `${styleLinks.join("")}`;
|
|
61
77
|
}
|
|
62
78
|
}
|
|
63
79
|
}
|
|
64
|
-
|
|
65
|
-
// build script
|
|
66
80
|
function buildShellBeforeTemplate(beforeAppTemplate, context) {
|
|
67
81
|
const headTemplate = getHeadTemplate(beforeAppTemplate, context);
|
|
68
|
-
return beforeAppTemplate.replace(
|
|
69
|
-
}
|
|
82
|
+
return beforeAppTemplate.replace(import_buildTemplate.HEAD_REG_EXP, headTemplate);
|
|
83
|
+
}
|