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