@modern-js/runtime 2.35.1 → 2.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cli/index.js +48 -30
- package/dist/cjs/common.js +27 -18
- package/dist/cjs/config.js +15 -3
- package/dist/cjs/core/appConfig.js +25 -15
- package/dist/cjs/core/compatible.js +60 -43
- package/dist/cjs/core/index.js +47 -40
- package/dist/cjs/core/loader/index.js +35 -9
- package/dist/cjs/core/loader/loaderManager.js +37 -18
- package/dist/cjs/core/loader/useLoader.js +45 -23
- package/dist/cjs/core/plugin.js +39 -31
- package/dist/cjs/core/types.js +15 -3
- package/dist/cjs/document/Body.js +35 -19
- package/dist/cjs/document/Comment.js +29 -14
- package/dist/cjs/document/DocumentContext.js +36 -10
- package/dist/cjs/document/DocumentStructureContext.js +36 -10
- package/dist/cjs/document/Head.js +40 -31
- package/dist/cjs/document/Html.js +34 -19
- package/dist/cjs/document/Links.js +28 -13
- package/dist/cjs/document/Root.js +37 -28
- package/dist/cjs/document/Script.js +29 -14
- package/dist/cjs/document/Scripts.js +28 -13
- package/dist/cjs/document/Style.js +29 -14
- package/dist/cjs/document/cli/index.js +68 -51
- package/dist/cjs/document/constants.js +64 -72
- package/dist/cjs/document/index.js +42 -15
- package/dist/cjs/exports/head.js +38 -11
- package/dist/cjs/exports/loadable.js +38 -11
- package/dist/cjs/exports/server.js +24 -7
- package/dist/cjs/exports/styled.js +38 -11
- package/dist/cjs/index.js +41 -38
- package/dist/cjs/router/cli/index.js +31 -22
- package/dist/cjs/router/index.js +39 -18
- package/dist/cjs/router/runtime/DefaultNotFound.js +26 -11
- package/dist/cjs/router/runtime/DeferredDataScripts.js +21 -8
- package/dist/cjs/router/runtime/DeferredDataScripts.node.js +47 -34
- package/dist/cjs/router/runtime/PrefetchLink.js +81 -47
- package/dist/cjs/router/runtime/fetch.js +24 -7
- package/dist/cjs/router/runtime/fetch.node.js +25 -8
- package/dist/cjs/router/runtime/fetch.worker.js +24 -7
- package/dist/cjs/router/runtime/hooks.js +26 -9
- package/dist/cjs/router/runtime/index.js +158 -208
- package/dist/cjs/router/runtime/plugin.js +62 -46
- package/dist/cjs/router/runtime/plugin.node.js +65 -48
- package/dist/cjs/router/runtime/server.js +20 -4
- package/dist/cjs/router/runtime/shouldRevalidate.js +38 -0
- package/dist/cjs/router/runtime/types.js +15 -3
- package/dist/cjs/router/runtime/utils.js +61 -48
- package/dist/cjs/router/runtime/withRouter.js +30 -15
- package/dist/cjs/runtimeContext.js +28 -18
- package/dist/cjs/ssr/cli/babel-plugin-ssr-loader-id.js +40 -23
- package/dist/cjs/ssr/cli/index.js +48 -30
- package/dist/cjs/ssr/cli/loadable-bundler-plugin.js +31 -13
- package/dist/cjs/ssr/index.js +71 -52
- package/dist/cjs/ssr/index.node.js +44 -25
- package/dist/cjs/ssr/prefetch.js +29 -16
- package/dist/cjs/ssr/react/index.js +27 -17
- package/dist/cjs/ssr/react/nossr/index.js +38 -12
- package/dist/cjs/ssr/react/prerender/index.js +52 -27
- package/dist/cjs/ssr/react/prerender/type.js +15 -3
- package/dist/cjs/ssr/react/prerender/util.js +31 -24
- package/dist/cjs/ssr/react/withCallback/index.js +27 -11
- package/dist/cjs/ssr/serverRender/helmet.js +23 -15
- package/dist/cjs/ssr/serverRender/index.js +24 -11
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +30 -13
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.share.js +25 -15
- package/dist/cjs/ssr/serverRender/renderToStream/bulidTemplate.before.js +46 -20
- package/dist/cjs/ssr/serverRender/renderToStream/index.js +49 -23
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +30 -17
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +30 -17
- package/dist/cjs/ssr/serverRender/renderToStream/template.js +28 -11
- package/dist/cjs/ssr/serverRender/renderToString/buildHtml.js +31 -24
- package/dist/cjs/ssr/serverRender/renderToString/entry.js +81 -59
- package/dist/cjs/ssr/serverRender/renderToString/index.js +44 -18
- package/dist/cjs/ssr/serverRender/renderToString/loadable.js +33 -16
- package/dist/cjs/ssr/serverRender/renderToString/render.js +39 -13
- package/dist/cjs/ssr/serverRender/renderToString/styledComponent.js +28 -11
- package/dist/cjs/ssr/serverRender/renderToString/type.js +24 -7
- package/dist/cjs/ssr/serverRender/tracker.js +27 -18
- package/dist/cjs/ssr/serverRender/types.js +25 -8
- package/dist/cjs/ssr/serverRender/utils.js +31 -24
- package/dist/cjs/ssr/utils.js +42 -25
- package/dist/cjs/state/cli/index.js +28 -19
- package/dist/cjs/state/index.js +39 -18
- package/dist/cjs/state/plugins.js +46 -29
- package/dist/cjs/state/runtime/index.js +39 -11
- package/dist/cjs/state/runtime/plugin.js +55 -28
- package/dist/esm/cli/index.js +6 -2
- package/dist/esm/common.js +8 -3
- package/dist/esm/config.js +0 -1
- package/dist/esm/core/appConfig.js +6 -2
- package/dist/esm/core/compatible.js +20 -15
- package/dist/esm/core/index.js +13 -3
- package/dist/esm/core/loader/index.js +4 -1
- package/dist/esm/core/loader/loaderManager.js +13 -9
- package/dist/esm/core/loader/useLoader.js +5 -2
- package/dist/esm/core/plugin.js +15 -10
- package/dist/esm/core/types.js +0 -1
- package/dist/esm/document/Body.js +4 -1
- package/dist/esm/document/Comment.js +4 -1
- package/dist/esm/document/DocumentContext.js +4 -1
- package/dist/esm/document/DocumentStructureContext.js +4 -1
- package/dist/esm/document/Head.js +6 -2
- package/dist/esm/document/Html.js +9 -6
- package/dist/esm/document/Links.js +4 -1
- package/dist/esm/document/Root.js +6 -2
- package/dist/esm/document/Script.js +4 -1
- package/dist/esm/document/Scripts.js +4 -1
- package/dist/esm/document/Style.js +4 -1
- package/dist/esm/document/cli/index.js +14 -9
- package/dist/esm/document/constants.js +42 -20
- package/dist/esm/exports/head.js +4 -1
- package/dist/esm/exports/loadable.js +4 -1
- package/dist/esm/exports/server.js +4 -1
- package/dist/esm/exports/styled.js +4 -1
- package/dist/esm/index.js +13 -2
- package/dist/esm/router/cli/index.js +11 -7
- package/dist/esm/router/index.js +6 -2
- package/dist/esm/router/runtime/DefaultNotFound.js +4 -1
- package/dist/esm/router/runtime/DeferredDataScripts.js +4 -1
- package/dist/esm/router/runtime/DeferredDataScripts.node.js +10 -7
- package/dist/esm/router/runtime/PrefetchLink.js +31 -11
- package/dist/esm/router/runtime/fetch.js +3 -1
- package/dist/esm/router/runtime/fetch.node.js +3 -1
- package/dist/esm/router/runtime/fetch.worker.js +3 -1
- package/dist/esm/router/runtime/hooks.js +3 -1
- package/dist/esm/router/runtime/index.js +72 -6
- package/dist/esm/router/runtime/plugin.js +22 -16
- package/dist/esm/router/runtime/plugin.node.js +20 -15
- package/dist/esm/router/runtime/shouldRevalidate.js +14 -0
- package/dist/esm/router/runtime/types.js +0 -1
- package/dist/esm/router/runtime/utils.js +23 -14
- package/dist/esm/router/runtime/withRouter.js +7 -4
- package/dist/esm/runtimeContext.js +6 -2
- package/dist/esm/ssr/cli/babel-plugin-ssr-loader-id.js +107 -98
- package/dist/esm/ssr/cli/index.js +17 -13
- package/dist/esm/ssr/cli/loadable-bundler-plugin.js +105 -96
- package/dist/esm/ssr/index.js +18 -14
- package/dist/esm/ssr/index.node.js +14 -10
- package/dist/esm/ssr/prefetch.js +7 -4
- package/dist/esm/ssr/react/index.js +6 -2
- package/dist/esm/ssr/react/nossr/index.js +4 -1
- package/dist/esm/ssr/react/prerender/index.js +4 -1
- package/dist/esm/ssr/react/prerender/type.js +0 -1
- package/dist/esm/ssr/react/prerender/util.js +12 -5
- package/dist/esm/ssr/react/withCallback/index.js +4 -1
- package/dist/esm/ssr/serverRender/helmet.js +4 -1
- package/dist/esm/ssr/serverRender/index.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +7 -4
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
- package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/index.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/template.js +6 -3
- package/dist/esm/ssr/serverRender/renderToString/buildHtml.js +12 -5
- package/dist/esm/ssr/serverRender/renderToString/entry.js +5 -3
- package/dist/esm/ssr/serverRender/renderToString/index.js +6 -3
- package/dist/esm/ssr/serverRender/renderToString/loadable.js +5 -2
- package/dist/esm/ssr/serverRender/renderToString/render.js +4 -1
- package/dist/esm/ssr/serverRender/renderToString/styledComponent.js +4 -1
- package/dist/esm/ssr/serverRender/renderToString/type.js +4 -1
- package/dist/esm/ssr/serverRender/tracker.js +8 -3
- package/dist/esm/ssr/serverRender/types.js +3 -1
- package/dist/esm/ssr/serverRender/utils.js +12 -5
- package/dist/esm/ssr/utils.js +13 -7
- package/dist/esm/state/cli/index.js +10 -6
- package/dist/esm/state/index.js +6 -2
- package/dist/esm/state/plugins.js +10 -4
- package/dist/esm/state/runtime/index.js +4 -1
- package/dist/esm/state/runtime/plugin.js +10 -7
- package/dist/esm-node/cli/index.js +6 -2
- package/dist/esm-node/common.js +8 -3
- package/dist/esm-node/config.js +0 -1
- package/dist/esm-node/core/appConfig.js +6 -2
- package/dist/esm-node/core/compatible.js +8 -3
- package/dist/esm-node/core/index.js +13 -3
- package/dist/esm-node/core/loader/index.js +4 -1
- package/dist/esm-node/core/loader/loaderManager.js +6 -2
- package/dist/esm-node/core/loader/useLoader.js +4 -1
- package/dist/esm-node/core/plugin.js +9 -4
- package/dist/esm-node/core/types.js +0 -1
- package/dist/esm-node/document/Body.js +4 -1
- package/dist/esm-node/document/Comment.js +4 -1
- package/dist/esm-node/document/DocumentContext.js +4 -1
- package/dist/esm-node/document/DocumentStructureContext.js +4 -1
- package/dist/esm-node/document/Head.js +6 -2
- package/dist/esm-node/document/Html.js +4 -1
- package/dist/esm-node/document/Links.js +4 -1
- package/dist/esm-node/document/Root.js +6 -2
- package/dist/esm-node/document/Script.js +4 -1
- package/dist/esm-node/document/Scripts.js +4 -1
- package/dist/esm-node/document/Style.js +4 -1
- package/dist/esm-node/document/cli/index.js +8 -3
- package/dist/esm-node/document/constants.js +42 -20
- package/dist/esm-node/exports/head.js +4 -1
- package/dist/esm-node/exports/loadable.js +4 -1
- package/dist/esm-node/exports/server.js +4 -1
- package/dist/esm-node/exports/styled.js +4 -1
- package/dist/esm-node/index.js +13 -2
- package/dist/esm-node/router/cli/index.js +6 -2
- package/dist/esm-node/router/index.js +6 -2
- package/dist/esm-node/router/runtime/DefaultNotFound.js +4 -1
- package/dist/esm-node/router/runtime/DeferredDataScripts.js +4 -1
- package/dist/esm-node/router/runtime/DeferredDataScripts.node.js +4 -1
- package/dist/esm-node/router/runtime/PrefetchLink.js +27 -7
- package/dist/esm-node/router/runtime/fetch.js +3 -1
- package/dist/esm-node/router/runtime/fetch.node.js +3 -1
- package/dist/esm-node/router/runtime/fetch.worker.js +3 -1
- package/dist/esm-node/router/runtime/hooks.js +3 -1
- package/dist/esm-node/router/runtime/index.js +72 -6
- package/dist/esm-node/router/runtime/plugin.js +10 -4
- package/dist/esm-node/router/runtime/plugin.node.js +8 -3
- package/dist/esm-node/router/runtime/shouldRevalidate.js +14 -0
- package/dist/esm-node/router/runtime/types.js +0 -1
- package/dist/esm-node/router/runtime/utils.js +16 -7
- package/dist/esm-node/router/runtime/withRouter.js +4 -1
- package/dist/esm-node/runtimeContext.js +6 -2
- package/dist/esm-node/ssr/cli/babel-plugin-ssr-loader-id.js +108 -99
- package/dist/esm-node/ssr/cli/index.js +6 -2
- package/dist/esm-node/ssr/cli/loadable-bundler-plugin.js +92 -83
- package/dist/esm-node/ssr/index.js +6 -2
- package/dist/esm-node/ssr/index.node.js +6 -2
- package/dist/esm-node/ssr/prefetch.js +4 -1
- package/dist/esm-node/ssr/react/index.js +6 -2
- package/dist/esm-node/ssr/react/nossr/index.js +4 -1
- package/dist/esm-node/ssr/react/prerender/index.js +4 -1
- package/dist/esm-node/ssr/react/prerender/type.js +0 -1
- package/dist/esm-node/ssr/react/prerender/util.js +12 -5
- package/dist/esm-node/ssr/react/withCallback/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/helmet.js +4 -1
- package/dist/esm-node/ssr/serverRender/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
- package/dist/esm-node/ssr/serverRender/renderToStream/bulidTemplate.before.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/template.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/buildHtml.js +12 -5
- package/dist/esm-node/ssr/serverRender/renderToString/entry.js +3 -1
- package/dist/esm-node/ssr/serverRender/renderToString/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/render.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/styledComponent.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/type.js +4 -1
- package/dist/esm-node/ssr/serverRender/tracker.js +8 -3
- package/dist/esm-node/ssr/serverRender/types.js +3 -1
- package/dist/esm-node/ssr/serverRender/utils.js +12 -5
- package/dist/esm-node/ssr/utils.js +10 -4
- package/dist/esm-node/state/cli/index.js +6 -2
- package/dist/esm-node/state/index.js +6 -2
- package/dist/esm-node/state/plugins.js +10 -4
- package/dist/esm-node/state/runtime/index.js +4 -1
- package/dist/esm-node/state/runtime/plugin.js +4 -1
- package/dist/types/router/runtime/index.d.ts +1 -0
- package/dist/types/router/runtime/shouldRevalidate.d.ts +2 -0
- package/package.json +10 -12
- package/dist/cjs/state/types.js +0 -4
- package/dist/esm/state/types.js +0 -1
- package/dist/esm-node/state/types.js +0 -1
- package/dist/types/state/types.d.ts +0 -16
|
@@ -1,91 +1,100 @@
|
|
|
1
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
2
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
3
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
4
|
+
};
|
|
1
5
|
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
6
|
import path from "path";
|
|
3
7
|
import { fs } from "@modern-js/utils";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
8
|
+
var require_loadable_bundler_plugin = __commonJS({
|
|
9
|
+
"src/ssr/cli/loadable-bundler-plugin.ts"(exports, module) {
|
|
10
|
+
class LoadablePlugin {
|
|
11
|
+
apply(compiler) {
|
|
12
|
+
this.compiler = compiler;
|
|
13
|
+
compiler.options.output.chunkLoadingGlobal = this.opts.chunkLoadingGlobal;
|
|
14
|
+
if (this.opts.outputAsset || this.opts.writeToDisk) {
|
|
15
|
+
compiler.hooks.make.tap(LoadablePlugin.name, (compilation) => {
|
|
16
|
+
compilation.hooks.processAssets.tap({
|
|
17
|
+
name: LoadablePlugin.name,
|
|
18
|
+
stage: compiler.webpack.Compilation.PROCESS_ASSETS_STAGE_REPORT
|
|
19
|
+
}, () => {
|
|
20
|
+
const asset = this.handleEmit(compilation);
|
|
21
|
+
if (asset) {
|
|
22
|
+
compilation.emitAsset(this.opts.filename, asset);
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
handleEmit(compilation) {
|
|
29
|
+
const stats = compilation.getStats().toJson({
|
|
30
|
+
all: false,
|
|
31
|
+
assets: true,
|
|
32
|
+
// rspack not support cachedAssets,
|
|
33
|
+
cachedAssets: true,
|
|
34
|
+
chunks: true,
|
|
35
|
+
chunkGroups: true,
|
|
36
|
+
entrypoints: true,
|
|
37
|
+
// rspack not support chunkGroupChildren.
|
|
38
|
+
chunkGroupChildren: true,
|
|
39
|
+
hash: true,
|
|
40
|
+
ids: true,
|
|
41
|
+
outputPath: true,
|
|
42
|
+
publicPath: true
|
|
18
43
|
});
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
chunkGroupChildren: true,
|
|
33
|
-
hash: true,
|
|
34
|
-
ids: true,
|
|
35
|
-
outputPath: true,
|
|
36
|
-
publicPath: true
|
|
37
|
-
});
|
|
38
|
-
const output = {
|
|
39
|
-
...stats,
|
|
40
|
-
generator: "loadable-components",
|
|
41
|
-
chunks: [
|
|
42
|
-
...stats.chunks || []
|
|
43
|
-
].map((chunk) => {
|
|
44
|
-
return {
|
|
45
|
-
id: chunk.id,
|
|
46
|
-
files: [
|
|
47
|
-
...chunk.files || []
|
|
48
|
-
]
|
|
44
|
+
const output = {
|
|
45
|
+
...stats,
|
|
46
|
+
generator: "loadable-components",
|
|
47
|
+
chunks: [
|
|
48
|
+
...stats.chunks || []
|
|
49
|
+
].map((chunk) => {
|
|
50
|
+
return {
|
|
51
|
+
id: chunk.id,
|
|
52
|
+
files: [
|
|
53
|
+
...chunk.files || []
|
|
54
|
+
]
|
|
55
|
+
};
|
|
56
|
+
})
|
|
49
57
|
};
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
if (this.opts.writeToDisk) {
|
|
54
|
-
this.writeAssetsFile(result);
|
|
55
|
-
}
|
|
56
|
-
if (this.opts.outputAsset) {
|
|
57
|
-
return {
|
|
58
|
-
source() {
|
|
59
|
-
return result;
|
|
60
|
-
},
|
|
61
|
-
size() {
|
|
62
|
-
return result.length;
|
|
58
|
+
const result = JSON.stringify(output, null, 2);
|
|
59
|
+
if (this.opts.writeToDisk) {
|
|
60
|
+
this.writeAssetsFile(result);
|
|
63
61
|
}
|
|
64
|
-
|
|
62
|
+
if (this.opts.outputAsset) {
|
|
63
|
+
return {
|
|
64
|
+
source() {
|
|
65
|
+
return result;
|
|
66
|
+
},
|
|
67
|
+
size() {
|
|
68
|
+
return result.length;
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
writeAssetsFile(manifest) {
|
|
75
|
+
var _this_compiler;
|
|
76
|
+
const outputFolder = (_this_compiler = this.compiler) === null || _this_compiler === void 0 ? void 0 : _this_compiler.options.output.path;
|
|
77
|
+
const outputFile = path.resolve(outputFolder || "", this.opts.filename);
|
|
78
|
+
fs.outputFileSync(outputFile, manifest);
|
|
79
|
+
}
|
|
80
|
+
constructor({ filename = "loadable-stats.json", path: path2, writeToDisk, outputAsset = true, chunkLoadingGlobal = "__LOADABLE_LOADED_CHUNKS__" } = {
|
|
81
|
+
filename: "loadable-stats.json",
|
|
82
|
+
outputAsset: true,
|
|
83
|
+
chunkLoadingGlobal: "__LOADABLE_LOADED_CHUNKS__"
|
|
84
|
+
}) {
|
|
85
|
+
_define_property(this, "opts", void 0);
|
|
86
|
+
_define_property(this, "compiler", void 0);
|
|
87
|
+
this.opts = {
|
|
88
|
+
filename,
|
|
89
|
+
path: path2,
|
|
90
|
+
writeToDisk,
|
|
91
|
+
outputAsset,
|
|
92
|
+
chunkLoadingGlobal
|
|
93
|
+
};
|
|
94
|
+
this.compiler = null;
|
|
95
|
+
}
|
|
65
96
|
}
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
writeAssetsFile(manifest) {
|
|
69
|
-
var _this_compiler;
|
|
70
|
-
const outputFolder = (_this_compiler = this.compiler) === null || _this_compiler === void 0 ? void 0 : _this_compiler.options.output.path;
|
|
71
|
-
const outputFile = path.resolve(outputFolder || "", this.opts.filename);
|
|
72
|
-
fs.outputFileSync(outputFile, manifest);
|
|
73
|
-
}
|
|
74
|
-
constructor({ filename = "loadable-stats.json", path: path2, writeToDisk, outputAsset = true, chunkLoadingGlobal = "__LOADABLE_LOADED_CHUNKS__" } = {
|
|
75
|
-
filename: "loadable-stats.json",
|
|
76
|
-
outputAsset: true,
|
|
77
|
-
chunkLoadingGlobal: "__LOADABLE_LOADED_CHUNKS__"
|
|
78
|
-
}) {
|
|
79
|
-
_define_property(this, "opts", void 0);
|
|
80
|
-
_define_property(this, "compiler", void 0);
|
|
81
|
-
this.opts = {
|
|
82
|
-
filename,
|
|
83
|
-
path: path2,
|
|
84
|
-
writeToDisk,
|
|
85
|
-
outputAsset,
|
|
86
|
-
chunkLoadingGlobal
|
|
87
|
-
};
|
|
88
|
-
this.compiler = null;
|
|
97
|
+
module.exports = LoadablePlugin;
|
|
89
98
|
}
|
|
90
|
-
}
|
|
91
|
-
|
|
99
|
+
});
|
|
100
|
+
export default require_loadable_bundler_plugin();
|
|
@@ -6,7 +6,7 @@ import { RenderLevel } from "./serverRender/types";
|
|
|
6
6
|
import { WithCallback } from "./react/withCallback";
|
|
7
7
|
import { formatClient, mockResponse, isReact18 } from "./utils";
|
|
8
8
|
import { ROUTER_DATA_JSON_ID, SSR_DATA_JSON_ID } from "./serverRender/utils";
|
|
9
|
-
|
|
9
|
+
const ssr = (config) => ({
|
|
10
10
|
name: "@modern-js/plugin-ssr",
|
|
11
11
|
setup: () => {
|
|
12
12
|
const mockResp = mockResponse();
|
|
@@ -128,5 +128,9 @@ export const ssr = (config) => ({
|
|
|
128
128
|
};
|
|
129
129
|
}
|
|
130
130
|
});
|
|
131
|
-
|
|
131
|
+
var ssr_default = ssr;
|
|
132
132
|
export * from "./react";
|
|
133
|
+
export {
|
|
134
|
+
ssr_default as default,
|
|
135
|
+
ssr
|
|
136
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { formatServer } from "./utils";
|
|
2
2
|
import render from "./serverRender";
|
|
3
3
|
import { createSSRTracker } from "./serverRender/tracker";
|
|
4
|
-
|
|
4
|
+
const ssr = (config = {}) => ({
|
|
5
5
|
name: "@modern-js/plugin-ssr",
|
|
6
6
|
setup: () => {
|
|
7
7
|
return {
|
|
@@ -41,5 +41,9 @@ export const ssr = (config = {}) => ({
|
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
43
|
});
|
|
44
|
-
|
|
44
|
+
var index_node_default = ssr;
|
|
45
45
|
export * from "./react";
|
|
46
|
+
export {
|
|
47
|
+
index_node_default as default,
|
|
48
|
+
ssr
|
|
49
|
+
};
|
|
@@ -46,4 +46,7 @@ const prefetch = async (App, context, config) => run(context.ssrContext.request.
|
|
|
46
46
|
storeState: context === null || context === void 0 ? void 0 : (_context_store = context.store) === null || _context_store === void 0 ? void 0 : _context_store.getState()
|
|
47
47
|
};
|
|
48
48
|
});
|
|
49
|
-
|
|
49
|
+
var prefetch_default = prefetch;
|
|
50
|
+
export {
|
|
51
|
+
prefetch_default as default
|
|
52
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useEffect, useState } from "react";
|
|
2
2
|
let csr = false;
|
|
3
|
-
|
|
3
|
+
const NoSSR = (props) => {
|
|
4
4
|
const [isMounted, setMounted] = useState(csr);
|
|
5
5
|
useEffect(() => {
|
|
6
6
|
csr = true;
|
|
@@ -9,3 +9,6 @@ export const NoSSR = (props) => {
|
|
|
9
9
|
const { children, fallback = null } = props;
|
|
10
10
|
return React.createElement(React.Fragment, null, isMounted ? children : fallback);
|
|
11
11
|
};
|
|
12
|
+
export {
|
|
13
|
+
NoSSR
|
|
14
|
+
};
|
|
@@ -83,4 +83,7 @@ function factory(Component) {
|
|
|
83
83
|
}
|
|
84
84
|
const NullComponent = () => null;
|
|
85
85
|
const SprSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);
|
|
86
|
-
|
|
86
|
+
const PreRender = factory(SprSideEffects);
|
|
87
|
+
export {
|
|
88
|
+
PreRender
|
|
89
|
+
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -2,7 +2,7 @@ const REQUEST_META = [
|
|
|
2
2
|
"header",
|
|
3
3
|
"query"
|
|
4
4
|
];
|
|
5
|
-
|
|
5
|
+
const getInnermostProperty = function getInnermostProperty2(propsList, propName) {
|
|
6
6
|
for (let i = propsList.length - 1; i >= 0; i--) {
|
|
7
7
|
const props = propsList[i];
|
|
8
8
|
if (props.hasOwnProperty(propName)) {
|
|
@@ -11,7 +11,7 @@ export const getInnermostProperty = function getInnermostProperty2(propsList, pr
|
|
|
11
11
|
}
|
|
12
12
|
return null;
|
|
13
13
|
};
|
|
14
|
-
|
|
14
|
+
const getOutermostProperty = function getOutermostProperty2(propsList, propName) {
|
|
15
15
|
for (const props of propsList) {
|
|
16
16
|
if (props.hasOwnProperty(propName)) {
|
|
17
17
|
return props[propName];
|
|
@@ -19,7 +19,7 @@ export const getOutermostProperty = function getOutermostProperty2(propsList, pr
|
|
|
19
19
|
}
|
|
20
20
|
return null;
|
|
21
21
|
};
|
|
22
|
-
|
|
22
|
+
const aggKeysFromPropsList = function aggKeysFromPropsList2(propsList, propName) {
|
|
23
23
|
const initResult = REQUEST_META.reduce((result, next) => {
|
|
24
24
|
const key = next;
|
|
25
25
|
result[key] = [];
|
|
@@ -43,7 +43,7 @@ export const aggKeysFromPropsList = function aggKeysFromPropsList2(propsList, pr
|
|
|
43
43
|
return result;
|
|
44
44
|
}, res);
|
|
45
45
|
};
|
|
46
|
-
|
|
46
|
+
const aggMatchesFromPropsList = function aggMatchesFromPropsList2(propsList, propName) {
|
|
47
47
|
const initResult = REQUEST_META.reduce((result, next) => {
|
|
48
48
|
const key = next;
|
|
49
49
|
result[key] = {};
|
|
@@ -81,6 +81,13 @@ function usefulArray(target) {
|
|
|
81
81
|
}
|
|
82
82
|
return Array.isArray(target) && target.length > 0;
|
|
83
83
|
}
|
|
84
|
-
|
|
84
|
+
function exist(target) {
|
|
85
85
|
return target != null;
|
|
86
86
|
}
|
|
87
|
+
export {
|
|
88
|
+
aggKeysFromPropsList,
|
|
89
|
+
aggMatchesFromPropsList,
|
|
90
|
+
exist,
|
|
91
|
+
getInnermostProperty,
|
|
92
|
+
getOutermostProperty
|
|
93
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useRef, useLayoutEffect } from "react";
|
|
2
|
-
|
|
2
|
+
const WithCallback = ({ callback, children }) => {
|
|
3
3
|
const once = useRef(false);
|
|
4
4
|
useLayoutEffect(() => {
|
|
5
5
|
if (once.current) {
|
|
@@ -12,3 +12,6 @@ export const WithCallback = ({ callback, children }) => {
|
|
|
12
12
|
]);
|
|
13
13
|
return children;
|
|
14
14
|
};
|
|
15
|
+
export {
|
|
16
|
+
WithCallback
|
|
17
|
+
};
|
|
@@ -4,7 +4,7 @@ const RE_BODY_ATTR = /<body[^>]*>/;
|
|
|
4
4
|
const RE_LAST_IN_HEAD = /<\/head>/;
|
|
5
5
|
const RE_TITLE = /<title[^>]*>([\s\S\n\r]*?)<\/title>/;
|
|
6
6
|
const TEST_TITLE_CONTENT = RegExp("(?<=<title[^>]*>)([\\s\\S\\n\\r]*?)([.|\\S])([\\s\\S\\n\\r]*?)(?=<\\/title>)");
|
|
7
|
-
|
|
7
|
+
function helmet(content, helmetData) {
|
|
8
8
|
let result = content;
|
|
9
9
|
const bodyAttributes = helmetData.bodyAttributes.toString();
|
|
10
10
|
if (bodyAttributes) {
|
|
@@ -39,3 +39,6 @@ export default function helmet(content, helmetData) {
|
|
|
39
39
|
}, "");
|
|
40
40
|
return result.replace(RE_LAST_IN_HEAD, `${helmetStr}</head>`);
|
|
41
41
|
}
|
|
42
|
+
export {
|
|
43
|
+
helmet as default
|
|
44
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isReact18 } from "../utils";
|
|
2
2
|
import { CSS_CHUNKS_PLACEHOLDER } from "./utils";
|
|
3
|
-
|
|
3
|
+
async function serverRender(options) {
|
|
4
4
|
var _options_context_ssrContext;
|
|
5
5
|
if ((_options_context_ssrContext = options.context.ssrContext) === null || _options_context_ssrContext === void 0 ? void 0 : _options_context_ssrContext.template) {
|
|
6
6
|
var _options_context_ssrContext1;
|
|
@@ -14,3 +14,6 @@ export default async function serverRender(options) {
|
|
|
14
14
|
return html;
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
+
export {
|
|
18
|
+
serverRender as default
|
|
19
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { serializeJson } from "@modern-js/runtime-utils/node";
|
|
2
2
|
import { attributesToString } from "../utils";
|
|
3
3
|
import { buildTemplate } from "./buildTemplate.share";
|
|
4
|
-
|
|
4
|
+
function buildShellAfterTemplate(afterAppTemplate, options) {
|
|
5
5
|
const callbacks = [
|
|
6
6
|
injectSSRDataScript
|
|
7
7
|
];
|
|
@@ -44,3 +44,6 @@ export function buildShellAfterTemplate(afterAppTemplate, options) {
|
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
+
export {
|
|
48
|
+
buildShellAfterTemplate
|
|
49
|
+
};
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
const HEAD_REG_EXP = /<head(.|\n)*>(.|\n)*<\/head>/;
|
|
2
|
+
function buildTemplate(template, callbacks) {
|
|
3
3
|
return callbacks.reduce((template2, buildTemplateCb) => buildTemplateCb(template2), template);
|
|
4
4
|
}
|
|
5
|
+
export {
|
|
6
|
+
HEAD_REG_EXP,
|
|
7
|
+
buildTemplate
|
|
8
|
+
};
|
|
@@ -48,7 +48,10 @@ function getHeadTemplate(beforeEntryTemplate, context) {
|
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
-
|
|
51
|
+
function buildShellBeforeTemplate(beforeAppTemplate, context) {
|
|
52
52
|
const headTemplate = getHeadTemplate(beforeAppTemplate, context);
|
|
53
53
|
return beforeAppTemplate.replace(HEAD_REG_EXP, headTemplate);
|
|
54
54
|
}
|
|
55
|
+
export {
|
|
56
|
+
buildShellBeforeTemplate
|
|
57
|
+
};
|
|
@@ -4,7 +4,7 @@ import { time } from "@modern-js/runtime-utils/time";
|
|
|
4
4
|
import { PreRender } from "../../react/prerender";
|
|
5
5
|
import { SSRErrors, SSRTimings } from "../tracker";
|
|
6
6
|
import renderToPipe from "./renderToPipe";
|
|
7
|
-
|
|
7
|
+
const render = ({ App, context }) => {
|
|
8
8
|
const { ssrContext } = context;
|
|
9
9
|
if (!ssrContext) {
|
|
10
10
|
throw new Error('The "ssrContext" must not be undefined, but received undefined');
|
|
@@ -40,3 +40,6 @@ export const render = ({ App, context }) => {
|
|
|
40
40
|
return pipe;
|
|
41
41
|
});
|
|
42
42
|
};
|
|
43
|
+
export {
|
|
44
|
+
render
|
|
45
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { buildShellAfterTemplate } from "./buildTemplate.after";
|
|
2
2
|
import { buildShellBeforeTemplate } from "./bulidTemplate.before";
|
|
3
3
|
const HTML_SEPARATOR = "<!--<?- html ?>-->";
|
|
4
|
-
|
|
4
|
+
const getTemplates = (context, renderLevel) => {
|
|
5
5
|
const { ssrContext } = context;
|
|
6
6
|
const [beforeAppTemplate = "", afterAppHtmlTemplate = ""] = ssrContext.template.split(HTML_SEPARATOR) || [];
|
|
7
7
|
const builtBeforeTemplate = buildShellBeforeTemplate(beforeAppTemplate, context);
|
|
@@ -14,3 +14,6 @@ export const getTemplates = (context, renderLevel) => {
|
|
|
14
14
|
shellAfter: builtAfterTemplate
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
|
+
export {
|
|
18
|
+
getTemplates
|
|
19
|
+
};
|
|
@@ -1,19 +1,26 @@
|
|
|
1
|
-
|
|
1
|
+
function buildHtml(template, callbacks) {
|
|
2
2
|
return callbacks.reduce((tmp, cb) => cb(tmp), template);
|
|
3
3
|
}
|
|
4
|
-
|
|
4
|
+
function createReplaceHtml(html) {
|
|
5
5
|
const HTML_REG = /<!--<\?-\s*html\s*\?>-->/;
|
|
6
6
|
return (template) => template.replace(HTML_REG, html);
|
|
7
7
|
}
|
|
8
|
-
|
|
8
|
+
function createReplaceSSRDataScript(data) {
|
|
9
9
|
const SSR_DATA_REG = /<!--<\?-\s*SSRDataScript\s*\?>-->/;
|
|
10
10
|
return (template) => template.replace(SSR_DATA_REG, data);
|
|
11
11
|
}
|
|
12
|
-
|
|
12
|
+
function createReplaceChunkJs(js) {
|
|
13
13
|
const CHUNK_JS_REG = /<!--<\?-\s*chunksMap\.js\s*\?>-->/;
|
|
14
14
|
return (template) => template.replace(CHUNK_JS_REG, js);
|
|
15
15
|
}
|
|
16
|
-
|
|
16
|
+
function createReplaceChunkCss(css) {
|
|
17
17
|
const CHUNK_CSS_REG = /<!--<\?-\s*chunksMap\.css\s*\?>-->/;
|
|
18
18
|
return (template) => template.replace(CHUNK_CSS_REG, css);
|
|
19
19
|
}
|
|
20
|
+
export {
|
|
21
|
+
buildHtml,
|
|
22
|
+
createReplaceChunkCss,
|
|
23
|
+
createReplaceChunkJs,
|
|
24
|
+
createReplaceHtml,
|
|
25
|
+
createReplaceSSRDataScript
|
|
26
|
+
};
|
|
@@ -3,7 +3,7 @@ import { time } from "@modern-js/runtime-utils/time";
|
|
|
3
3
|
import { PreRender } from "../../react/prerender";
|
|
4
4
|
import { SSRTimings } from "../tracker";
|
|
5
5
|
import SSREntry from "./entry";
|
|
6
|
-
|
|
6
|
+
const render = ({ App, context, config }) => {
|
|
7
7
|
const ssrContext = context.ssrContext;
|
|
8
8
|
return run(ssrContext.request.headers, async () => {
|
|
9
9
|
const entry = new SSREntry({
|
|
@@ -23,3 +23,6 @@ export const render = ({ App, context, config }) => {
|
|
|
23
23
|
return html;
|
|
24
24
|
});
|
|
25
25
|
};
|
|
26
|
+
export {
|
|
27
|
+
render
|
|
28
|
+
};
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
var RenderLevel;
|
|
2
2
|
(function(RenderLevel2) {
|
|
3
3
|
RenderLevel2[RenderLevel2["CLIENT_RENDER"] = 0] = "CLIENT_RENDER";
|
|
4
4
|
RenderLevel2[RenderLevel2["SERVER_PREFETCH"] = 1] = "SERVER_PREFETCH";
|
|
5
5
|
RenderLevel2[RenderLevel2["SERVER_RENDER"] = 2] = "SERVER_RENDER";
|
|
6
6
|
})(RenderLevel || (RenderLevel = {}));
|
|
7
|
+
export {
|
|
8
|
+
RenderLevel
|
|
9
|
+
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
var SSRTimings;
|
|
2
2
|
(function(SSRTimings2) {
|
|
3
3
|
SSRTimings2[SSRTimings2["SSR_RENDER_TOTAL"] = 0] = "SSR_RENDER_TOTAL";
|
|
4
4
|
SSRTimings2[SSRTimings2["SSR_PREFETCH"] = 1] = "SSR_PREFETCH";
|
|
5
5
|
SSRTimings2[SSRTimings2["SSR_RENDER_HTML"] = 2] = "SSR_RENDER_HTML";
|
|
6
6
|
SSRTimings2[SSRTimings2["SSR_RENDER_SHELL"] = 3] = "SSR_RENDER_SHELL";
|
|
7
7
|
})(SSRTimings || (SSRTimings = {}));
|
|
8
|
-
|
|
8
|
+
var SSRErrors;
|
|
9
9
|
(function(SSRErrors2) {
|
|
10
10
|
SSRErrors2[SSRErrors2["PREFETCH"] = 0] = "PREFETCH";
|
|
11
11
|
SSRErrors2[SSRErrors2["RENDER_HTML"] = 1] = "RENDER_HTML";
|
|
@@ -55,7 +55,7 @@ const timings = {
|
|
|
55
55
|
reporter: "ssr-render-shell"
|
|
56
56
|
}
|
|
57
57
|
};
|
|
58
|
-
|
|
58
|
+
function createSSRTracker({ reporter, serverTiming, metrics, logger }) {
|
|
59
59
|
const tracker = {
|
|
60
60
|
get sessionId() {
|
|
61
61
|
return reporter.sessionId;
|
|
@@ -76,3 +76,8 @@ export function createSSRTracker({ reporter, serverTiming, metrics, logger }) {
|
|
|
76
76
|
};
|
|
77
77
|
return tracker;
|
|
78
78
|
}
|
|
79
|
+
export {
|
|
80
|
+
SSRErrors,
|
|
81
|
+
SSRTimings,
|
|
82
|
+
createSSRTracker
|
|
83
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
const CSS_CHUNKS_PLACEHOLDER = "<!--<?- chunksMap.css ?>-->";
|
|
2
|
+
const SSR_DATA_JSON_ID = "__MODERN_SSR_DATA__";
|
|
3
|
+
const ROUTER_DATA_JSON_ID = "__MODERN_ROUTER_DATA__";
|
|
4
|
+
function getLoadableScripts(extractor) {
|
|
5
5
|
const check = (scripts2) => (scripts2 || "").includes("__LOADABLE_REQUIRED_CHUNKS___ext");
|
|
6
6
|
const scripts = extractor.getScriptTags();
|
|
7
7
|
if (!check(scripts)) {
|
|
@@ -9,8 +9,15 @@ export function getLoadableScripts(extractor) {
|
|
|
9
9
|
}
|
|
10
10
|
return scripts.split("</script>").slice(0, 2).map((i) => `${i}</script>`).join("");
|
|
11
11
|
}
|
|
12
|
-
|
|
12
|
+
function attributesToString(attributes) {
|
|
13
13
|
return Object.entries(attributes).reduce((str, [key, value]) => {
|
|
14
14
|
return value === void 0 ? str : `${str} ${key}="${value}"`;
|
|
15
15
|
}, "");
|
|
16
16
|
}
|
|
17
|
+
export {
|
|
18
|
+
CSS_CHUNKS_PLACEHOLDER,
|
|
19
|
+
ROUTER_DATA_JSON_ID,
|
|
20
|
+
SSR_DATA_JSON_ID,
|
|
21
|
+
attributesToString,
|
|
22
|
+
getLoadableScripts
|
|
23
|
+
};
|