@modern-js/runtime 2.39.2 → 2.41.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 +0 -23
- package/dist/cjs/core/loader/loaderManager.js +7 -7
- package/dist/cjs/router/cli/index.js +0 -13
- package/dist/cjs/ssr/prefetch.js +37 -16
- package/dist/cjs/ssr/serverRender/renderToStream/index.js +2 -2
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +3 -3
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +3 -3
- package/dist/cjs/ssr/serverRender/renderToString/entry.js +5 -8
- package/dist/cjs/ssr/serverRender/renderToString/index.js +0 -5
- package/dist/cjs/ssr/serverRender/renderToString/loadable.js +14 -9
- package/dist/cjs/ssr/serverRender/tracker.js +33 -28
- package/dist/cjs/state/cli/index.js +0 -13
- package/dist/esm/cli/index.js +1 -23
- package/dist/esm/core/loader/loaderManager.js +7 -7
- package/dist/esm/router/cli/index.js +0 -13
- package/dist/esm/ssr/cli/babel-plugin-ssr-loader-id.js +3 -3
- package/dist/esm/ssr/prefetch.js +51 -18
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +6 -6
- package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +14 -14
- package/dist/esm/ssr/serverRender/renderToStream/index.js +2 -2
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +3 -3
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +3 -3
- package/dist/esm/ssr/serverRender/renderToString/entry.js +13 -18
- package/dist/esm/ssr/serverRender/renderToString/index.js +1 -6
- package/dist/esm/ssr/serverRender/renderToString/loadable.js +68 -63
- package/dist/esm/ssr/serverRender/tracker.js +31 -27
- package/dist/esm/state/cli/index.js +0 -13
- package/dist/esm-node/cli/index.js +1 -24
- package/dist/esm-node/core/loader/loaderManager.js +7 -7
- package/dist/esm-node/router/cli/index.js +0 -13
- package/dist/esm-node/ssr/prefetch.js +37 -16
- package/dist/esm-node/ssr/serverRender/renderToStream/index.js +2 -2
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +3 -3
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +3 -3
- package/dist/esm-node/ssr/serverRender/renderToString/entry.js +5 -8
- package/dist/esm-node/ssr/serverRender/renderToString/index.js +0 -5
- package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +14 -9
- package/dist/esm-node/ssr/serverRender/tracker.js +33 -28
- package/dist/esm-node/state/cli/index.js +0 -13
- package/dist/types/ssr/prefetch.d.ts +4 -2
- package/dist/types/ssr/serverRender/tracker.d.ts +9 -8
- package/package.json +11 -11
package/dist/esm/ssr/prefetch.js
CHANGED
|
@@ -4,33 +4,44 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
4
4
|
import { renderToStaticMarkup } from "react-dom/server";
|
|
5
5
|
import { run } from "@modern-js/runtime-utils/node";
|
|
6
6
|
import { ChunkExtractor } from "@loadable/server";
|
|
7
|
+
import { time } from "@modern-js/runtime-utils/time";
|
|
8
|
+
import { SSRTimings, SSRErrors } from "./serverRender/tracker";
|
|
7
9
|
var prefetch = function() {
|
|
8
|
-
var _ref = _async_to_generator(function(App, context, config) {
|
|
10
|
+
var _ref = _async_to_generator(function(App, context, config, tracker) {
|
|
9
11
|
return _ts_generator(this, function(_state) {
|
|
10
12
|
return [
|
|
11
13
|
2,
|
|
12
14
|
run(context.ssrContext.request.headers, /* @__PURE__ */ _async_to_generator(function() {
|
|
13
|
-
var _context_store, ssrContext, loadableStats, extractor, loadersData;
|
|
15
|
+
var _context_store, ssrContext, loadableStats, end, extractor, cost, error, loadersData, end1, cost1, e, error1;
|
|
14
16
|
return _ts_generator(this, function(_state2) {
|
|
15
17
|
switch (_state2.label) {
|
|
16
18
|
case 0:
|
|
17
19
|
ssrContext = context.ssrContext;
|
|
18
20
|
loadableStats = ssrContext.loadableStats;
|
|
19
21
|
if (!config.disablePrerender) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
22
|
+
try {
|
|
23
|
+
end = time();
|
|
24
|
+
if (loadableStats) {
|
|
25
|
+
extractor = new ChunkExtractor({
|
|
26
|
+
stats: loadableStats,
|
|
27
|
+
entrypoints: [
|
|
28
|
+
ssrContext.entryName
|
|
29
|
+
].filter(Boolean)
|
|
30
|
+
});
|
|
31
|
+
renderToStaticMarkup(extractor.collectChunks(/* @__PURE__ */ _jsx(App, {
|
|
32
|
+
context
|
|
33
|
+
})));
|
|
34
|
+
} else {
|
|
35
|
+
renderToStaticMarkup(/* @__PURE__ */ _jsx(App, {
|
|
36
|
+
context
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
cost = end();
|
|
40
|
+
tracker.trackTiming(SSRTimings.PRERENDER, cost);
|
|
41
|
+
} catch (e2) {
|
|
42
|
+
error = e2;
|
|
43
|
+
tracker.trackError(SSRErrors.PRERENDER, error);
|
|
44
|
+
throw e2;
|
|
34
45
|
}
|
|
35
46
|
}
|
|
36
47
|
if (!context.loaderManager.hasPendingLoaders()) {
|
|
@@ -42,12 +53,34 @@ var prefetch = function() {
|
|
|
42
53
|
}
|
|
43
54
|
];
|
|
44
55
|
}
|
|
56
|
+
loadersData = {};
|
|
57
|
+
_state2.label = 1;
|
|
58
|
+
case 1:
|
|
59
|
+
_state2.trys.push([
|
|
60
|
+
1,
|
|
61
|
+
3,
|
|
62
|
+
,
|
|
63
|
+
4
|
|
64
|
+
]);
|
|
65
|
+
end1 = time();
|
|
45
66
|
return [
|
|
46
67
|
4,
|
|
47
68
|
context.loaderManager.awaitPendingLoaders()
|
|
48
69
|
];
|
|
49
|
-
case
|
|
70
|
+
case 2:
|
|
50
71
|
loadersData = _state2.sent();
|
|
72
|
+
cost1 = end1();
|
|
73
|
+
tracker.trackTiming(SSRTimings.USE_LOADER, cost1);
|
|
74
|
+
return [
|
|
75
|
+
3,
|
|
76
|
+
4
|
|
77
|
+
];
|
|
78
|
+
case 3:
|
|
79
|
+
e = _state2.sent();
|
|
80
|
+
error1 = e;
|
|
81
|
+
tracker.trackError(SSRErrors.USE_LOADER, error1);
|
|
82
|
+
throw e;
|
|
83
|
+
case 4:
|
|
51
84
|
Object.keys(loadersData).forEach(function(id) {
|
|
52
85
|
var data = loadersData[id];
|
|
53
86
|
if (data._error) {
|
|
@@ -72,7 +105,7 @@ var prefetch = function() {
|
|
|
72
105
|
];
|
|
73
106
|
});
|
|
74
107
|
});
|
|
75
|
-
return function prefetch2(App, context, config) {
|
|
108
|
+
return function prefetch2(App, context, config, tracker) {
|
|
76
109
|
return _ref.apply(this, arguments);
|
|
77
110
|
};
|
|
78
111
|
}();
|
|
@@ -3,7 +3,11 @@ import { serializeJson } from "@modern-js/runtime-utils/node";
|
|
|
3
3
|
import { attributesToString } from "../utils";
|
|
4
4
|
import { buildTemplate } from "./buildTemplate.share";
|
|
5
5
|
function buildShellAfterTemplate(afterAppTemplate, options) {
|
|
6
|
-
var
|
|
6
|
+
var callbacks = [
|
|
7
|
+
injectSSRDataScript
|
|
8
|
+
];
|
|
9
|
+
return buildTemplate(afterAppTemplate, callbacks);
|
|
10
|
+
function injectSSRDataScript(template) {
|
|
7
11
|
var ssrDataScript = buildSSRDataScript();
|
|
8
12
|
return template.replace("<!--<?- SSRDataScript ?>-->", ssrDataScript);
|
|
9
13
|
function buildSSRDataScript() {
|
|
@@ -36,11 +40,7 @@ function buildShellAfterTemplate(afterAppTemplate, options) {
|
|
|
36
40
|
});
|
|
37
41
|
return "\n <script".concat(attrsStr, ">window._SSR_DATA = ").concat(serializeJson(SSRData), "</script>\n ");
|
|
38
42
|
}
|
|
39
|
-
}
|
|
40
|
-
var callbacks = [
|
|
41
|
-
injectSSRDataScript
|
|
42
|
-
];
|
|
43
|
-
return buildTemplate(afterAppTemplate, callbacks);
|
|
43
|
+
}
|
|
44
44
|
}
|
|
45
45
|
export {
|
|
46
46
|
buildShellAfterTemplate
|
|
@@ -6,7 +6,20 @@ import helmetReplace from "../helmet";
|
|
|
6
6
|
import { CSS_CHUNKS_PLACEHOLDER } from "../utils";
|
|
7
7
|
import { HEAD_REG_EXP, buildTemplate } from "./buildTemplate.share";
|
|
8
8
|
function getHeadTemplate(beforeEntryTemplate, context) {
|
|
9
|
-
var
|
|
9
|
+
var callbacks = [
|
|
10
|
+
function(headTemplate2) {
|
|
11
|
+
var helmetData = ReactHelmet.renderStatic();
|
|
12
|
+
return helmetData ? helmetReplace(headTemplate2, helmetData) : headTemplate2;
|
|
13
|
+
},
|
|
14
|
+
// @TODO: prefetch scripts of lazy component
|
|
15
|
+
injectCss
|
|
16
|
+
];
|
|
17
|
+
var _ref = _sliced_to_array(beforeEntryTemplate.match(HEAD_REG_EXP) || [], 1), tmp = _ref[0], headTemplate = tmp === void 0 ? "" : tmp;
|
|
18
|
+
if (!headTemplate.length) {
|
|
19
|
+
return "";
|
|
20
|
+
}
|
|
21
|
+
return buildTemplate(headTemplate, callbacks);
|
|
22
|
+
function injectCss(headTemplate2) {
|
|
10
23
|
return headTemplate2.replace(CSS_CHUNKS_PLACEHOLDER, getCssChunks());
|
|
11
24
|
function getCssChunks() {
|
|
12
25
|
var routeManifest = context.routeManifest, routerContext = context.routerContext, routes = context.routes;
|
|
@@ -38,20 +51,7 @@ function getHeadTemplate(beforeEntryTemplate, context) {
|
|
|
38
51
|
});
|
|
39
52
|
return "".concat(styleLinks.join(""));
|
|
40
53
|
}
|
|
41
|
-
};
|
|
42
|
-
var callbacks = [
|
|
43
|
-
function(headTemplate2) {
|
|
44
|
-
var helmetData = ReactHelmet.renderStatic();
|
|
45
|
-
return helmetData ? helmetReplace(headTemplate2, helmetData) : headTemplate2;
|
|
46
|
-
},
|
|
47
|
-
// @TODO: prefetch scripts of lazy component
|
|
48
|
-
injectCss
|
|
49
|
-
];
|
|
50
|
-
var _ref = _sliced_to_array(beforeEntryTemplate.match(HEAD_REG_EXP) || [], 1), tmp = _ref[0], headTemplate = tmp === void 0 ? "" : tmp;
|
|
51
|
-
if (!headTemplate.length) {
|
|
52
|
-
return "";
|
|
53
54
|
}
|
|
54
|
-
return buildTemplate(headTemplate, callbacks);
|
|
55
55
|
}
|
|
56
56
|
function buildShellBeforeTemplate(beforeAppTemplate, context) {
|
|
57
57
|
var headTemplate = getHeadTemplate(beforeAppTemplate, context);
|
|
@@ -29,11 +29,11 @@ var render = function(param) {
|
|
|
29
29
|
ssrContext.cacheConfig = cacheConfig;
|
|
30
30
|
}
|
|
31
31
|
var cost = end();
|
|
32
|
-
tracker.trackTiming(SSRTimings.
|
|
32
|
+
tracker.trackTiming(SSRTimings.RENDER_SHELL, cost);
|
|
33
33
|
},
|
|
34
34
|
onAllReady: function onAllReady() {
|
|
35
35
|
var cost = end();
|
|
36
|
-
tracker.trackTiming(SSRTimings.
|
|
36
|
+
tracker.trackTiming(SSRTimings.RENDER_HTML, cost);
|
|
37
37
|
},
|
|
38
38
|
onShellError: function onShellError(e) {
|
|
39
39
|
tracker.trackError(SSRErrors.RENDER_SHELL, e);
|
|
@@ -11,7 +11,7 @@ var ShellChunkStatus;
|
|
|
11
11
|
ShellChunkStatus2[ShellChunkStatus2["FINIESH"] = 1] = "FINIESH";
|
|
12
12
|
})(ShellChunkStatus || (ShellChunkStatus = {}));
|
|
13
13
|
function renderToPipe(rootElement, context, options) {
|
|
14
|
-
var shellChunkStatus =
|
|
14
|
+
var shellChunkStatus = 0;
|
|
15
15
|
var ssrContext = context.ssrContext;
|
|
16
16
|
var chunkVec = [];
|
|
17
17
|
var forUserPipe = function(stream) {
|
|
@@ -30,12 +30,12 @@ function renderToPipe(rootElement, context, options) {
|
|
|
30
30
|
var injectableTransform = new Transform({
|
|
31
31
|
transform: function transform(chunk, _encoding, callback) {
|
|
32
32
|
try {
|
|
33
|
-
if (shellChunkStatus !==
|
|
33
|
+
if (shellChunkStatus !== 1) {
|
|
34
34
|
chunkVec.push(chunk.toString());
|
|
35
35
|
var concatedChunk = chunkVec.join("");
|
|
36
36
|
if (concatedChunk.endsWith(ESCAPED_SHELL_STREAM_END_MARK)) {
|
|
37
37
|
concatedChunk = concatedChunk.replace(ESCAPED_SHELL_STREAM_END_MARK, "");
|
|
38
|
-
shellChunkStatus =
|
|
38
|
+
shellChunkStatus = 1;
|
|
39
39
|
this.push("".concat(shellBefore).concat(concatedChunk).concat(shellAfter));
|
|
40
40
|
}
|
|
41
41
|
} else {
|
|
@@ -12,7 +12,7 @@ var ShellChunkStatus;
|
|
|
12
12
|
ShellChunkStatus2[ShellChunkStatus2["FINIESH"] = 1] = "FINIESH";
|
|
13
13
|
})(ShellChunkStatus || (ShellChunkStatus = {}));
|
|
14
14
|
function renderToPipe(rootElement, context, options) {
|
|
15
|
-
var shellChunkStatus =
|
|
15
|
+
var shellChunkStatus = 0;
|
|
16
16
|
var chunkVec = [];
|
|
17
17
|
var ssrContext = context.ssrContext;
|
|
18
18
|
var forUserPipe = function() {
|
|
@@ -70,13 +70,13 @@ function renderToPipe(rootElement, context, options) {
|
|
|
70
70
|
2
|
|
71
71
|
];
|
|
72
72
|
}
|
|
73
|
-
if (shellChunkStatus !==
|
|
73
|
+
if (shellChunkStatus !== 1) {
|
|
74
74
|
chunk = new TextDecoder().decode(value);
|
|
75
75
|
chunkVec.push(chunk);
|
|
76
76
|
concatedChunk = chunkVec.join("");
|
|
77
77
|
if (concatedChunk.endsWith(ESCAPED_SHELL_STREAM_END_MARK)) {
|
|
78
78
|
concatedChunk = concatedChunk.replace(ESCAPED_SHELL_STREAM_END_MARK, "");
|
|
79
|
-
shellChunkStatus =
|
|
79
|
+
shellChunkStatus = 1;
|
|
80
80
|
controller.enqueue(encodeForWebStream("".concat(shellBefore).concat(concatedChunk).concat(shellAfter)));
|
|
81
81
|
}
|
|
82
82
|
} else {
|
|
@@ -41,7 +41,8 @@ var buildTemplateData = function(context, data, renderLevel, tracker) {
|
|
|
41
41
|
renderLevel
|
|
42
42
|
};
|
|
43
43
|
};
|
|
44
|
-
var Entry
|
|
44
|
+
var Entry;
|
|
45
|
+
Entry = /* @__PURE__ */ function() {
|
|
45
46
|
"use strict";
|
|
46
47
|
function Entry2(options) {
|
|
47
48
|
_class_call_check(this, Entry2);
|
|
@@ -152,41 +153,35 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
152
153
|
value: function prefetch1(context) {
|
|
153
154
|
var _this = this;
|
|
154
155
|
return _async_to_generator(function() {
|
|
155
|
-
var prefetchData,
|
|
156
|
+
var prefetchData, e;
|
|
156
157
|
return _ts_generator(this, function(_state) {
|
|
157
158
|
switch (_state.label) {
|
|
158
159
|
case 0:
|
|
159
|
-
end = time();
|
|
160
|
-
_state.label = 1;
|
|
161
|
-
case 1:
|
|
162
160
|
_state.trys.push([
|
|
163
|
-
|
|
164
|
-
|
|
161
|
+
0,
|
|
162
|
+
2,
|
|
165
163
|
,
|
|
166
|
-
|
|
164
|
+
3
|
|
167
165
|
]);
|
|
168
166
|
return [
|
|
169
167
|
4,
|
|
170
|
-
prefetch(_this.App, context, _this.pluginConfig)
|
|
168
|
+
prefetch(_this.App, context, _this.pluginConfig, _this.tracker)
|
|
171
169
|
];
|
|
172
|
-
case
|
|
170
|
+
case 1:
|
|
173
171
|
prefetchData = _state.sent();
|
|
174
172
|
_this.result.renderLevel = RenderLevel.SERVER_PREFETCH;
|
|
175
|
-
prefetchCost = end();
|
|
176
|
-
_this.tracker.trackTiming(SSRTimings.SSR_PREFETCH, prefetchCost);
|
|
177
173
|
return [
|
|
178
174
|
3,
|
|
179
|
-
|
|
175
|
+
3
|
|
180
176
|
];
|
|
181
|
-
case
|
|
177
|
+
case 2:
|
|
182
178
|
e = _state.sent();
|
|
183
179
|
_this.result.renderLevel = RenderLevel.CLIENT_RENDER;
|
|
184
|
-
_this.tracker.trackError(SSRErrors.PREFETCH, e);
|
|
185
180
|
return [
|
|
186
181
|
3,
|
|
187
|
-
|
|
182
|
+
3
|
|
188
183
|
];
|
|
189
|
-
case
|
|
184
|
+
case 3:
|
|
190
185
|
return [
|
|
191
186
|
2,
|
|
192
187
|
prefetchData || {}
|
|
@@ -236,7 +231,7 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
236
231
|
case 2:
|
|
237
232
|
html = _state.sent();
|
|
238
233
|
cost = end();
|
|
239
|
-
_this.tracker.trackTiming(SSRTimings.
|
|
234
|
+
_this.tracker.trackTiming(SSRTimings.RENDER_HTML, cost);
|
|
240
235
|
_this.result.renderLevel = RenderLevel.SERVER_RENDER;
|
|
241
236
|
return [
|
|
242
237
|
3,
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
2
|
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
3
3
|
import { run } from "@modern-js/runtime-utils/node";
|
|
4
|
-
import { time } from "@modern-js/runtime-utils/time";
|
|
5
4
|
import { PreRender } from "../../react/prerender";
|
|
6
|
-
import { SSRTimings } from "../tracker";
|
|
7
5
|
import SSREntry from "./entry";
|
|
8
6
|
var render = function(param) {
|
|
9
7
|
var App = param.App, context = param.context, config = param.config;
|
|
10
8
|
var ssrContext = context.ssrContext;
|
|
11
9
|
return run(ssrContext.request.headers, /* @__PURE__ */ _async_to_generator(function() {
|
|
12
|
-
var entry,
|
|
10
|
+
var entry, html, cacheConfig;
|
|
13
11
|
return _ts_generator(this, function(_state) {
|
|
14
12
|
switch (_state.label) {
|
|
15
13
|
case 0:
|
|
@@ -19,15 +17,12 @@ var render = function(param) {
|
|
|
19
17
|
config
|
|
20
18
|
});
|
|
21
19
|
entry.metrics.emitCounter("app.visit.count", 1);
|
|
22
|
-
end = time();
|
|
23
20
|
return [
|
|
24
21
|
4,
|
|
25
22
|
entry.renderToHtml(context)
|
|
26
23
|
];
|
|
27
24
|
case 1:
|
|
28
25
|
html = _state.sent();
|
|
29
|
-
cost = end();
|
|
30
|
-
entry.tracker.trackTiming(SSRTimings.SSR_RENDER_TOTAL, cost);
|
|
31
26
|
cacheConfig = PreRender.config();
|
|
32
27
|
if (cacheConfig) {
|
|
33
28
|
context.ssrContext.cacheConfig = cacheConfig;
|
|
@@ -31,6 +31,36 @@ var checkIsInline = function(chunk, enableInline) {
|
|
|
31
31
|
return false;
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
|
+
var readAsset = function() {
|
|
35
|
+
var _ref = _async_to_generator(function(chunk) {
|
|
36
|
+
var fs, path, filepath;
|
|
37
|
+
return _ts_generator(this, function(_state) {
|
|
38
|
+
switch (_state.label) {
|
|
39
|
+
case 0:
|
|
40
|
+
return [
|
|
41
|
+
4,
|
|
42
|
+
import("fs/promises")
|
|
43
|
+
];
|
|
44
|
+
case 1:
|
|
45
|
+
fs = _state.sent();
|
|
46
|
+
return [
|
|
47
|
+
4,
|
|
48
|
+
import("path")
|
|
49
|
+
];
|
|
50
|
+
case 2:
|
|
51
|
+
path = _state.sent();
|
|
52
|
+
filepath = path.resolve(__dirname, chunk.filename);
|
|
53
|
+
return [
|
|
54
|
+
2,
|
|
55
|
+
fs.readFile(filepath, "utf-8")
|
|
56
|
+
];
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
return function readAsset2(chunk) {
|
|
61
|
+
return _ref.apply(this, arguments);
|
|
62
|
+
};
|
|
63
|
+
}();
|
|
34
64
|
var checkIsNode = function() {
|
|
35
65
|
var _process_release;
|
|
36
66
|
return typeof process !== "undefined" && ((_process_release = process.release) === null || _process_release === void 0 ? void 0 : _process_release.name) === "node";
|
|
@@ -151,40 +181,27 @@ var LoadableCollector = /* @__PURE__ */ function() {
|
|
|
151
181
|
return !jsChunkReg.test(template) && !((_this_existsAssets = _this.existsAssets) === null || _this_existsAssets === void 0 ? void 0 : _this_existsAssets.includes(chunk.path));
|
|
152
182
|
}).map(function() {
|
|
153
183
|
var _ref = _async_to_generator(function(chunk) {
|
|
154
|
-
var
|
|
184
|
+
var script;
|
|
155
185
|
return _ts_generator(this, function(_state2) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
2,
|
|
172
|
-
fs.readFile(filepath, "utf-8").then(function(content) {
|
|
173
|
-
return "<script>".concat(content, "</script>");
|
|
174
|
-
}).catch(function(_) {
|
|
175
|
-
return "";
|
|
176
|
-
})
|
|
177
|
-
];
|
|
178
|
-
case 2:
|
|
179
|
-
return [
|
|
180
|
-
2,
|
|
181
|
-
"<script".concat(attributes, ' src="').concat(chunk.url, '"></script>')
|
|
182
|
-
];
|
|
183
|
-
case 3:
|
|
184
|
-
return [
|
|
185
|
-
2
|
|
186
|
-
];
|
|
186
|
+
script = "<script".concat(attributes, ' src="').concat(chunk.url, '"></script>');
|
|
187
|
+
if (checkIsInline(chunk, enableInlineScripts) && checkIsNode()) {
|
|
188
|
+
return [
|
|
189
|
+
2,
|
|
190
|
+
readAsset(chunk).then(function(content) {
|
|
191
|
+
return "<script>".concat(content, "</script>");
|
|
192
|
+
}).catch(function(_) {
|
|
193
|
+
return script;
|
|
194
|
+
})
|
|
195
|
+
];
|
|
196
|
+
} else {
|
|
197
|
+
return [
|
|
198
|
+
2,
|
|
199
|
+
script
|
|
200
|
+
];
|
|
187
201
|
}
|
|
202
|
+
return [
|
|
203
|
+
2
|
|
204
|
+
];
|
|
188
205
|
});
|
|
189
206
|
});
|
|
190
207
|
return function(chunk) {
|
|
@@ -224,39 +241,27 @@ var LoadableCollector = /* @__PURE__ */ function() {
|
|
|
224
241
|
return !cssChunkReg.test(template) && !((_this_existsAssets = _this.existsAssets) === null || _this_existsAssets === void 0 ? void 0 : _this_existsAssets.includes(chunk.path));
|
|
225
242
|
}).map(function() {
|
|
226
243
|
var _ref = _async_to_generator(function(chunk) {
|
|
227
|
-
var
|
|
244
|
+
var link;
|
|
228
245
|
return _ts_generator(this, function(_state2) {
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
fs.readFile(chunk.path).then(function(content) {
|
|
245
|
-
return "<style>".concat(content, "</style>");
|
|
246
|
-
}).catch(function(_) {
|
|
247
|
-
return "";
|
|
248
|
-
})
|
|
249
|
-
];
|
|
250
|
-
case 2:
|
|
251
|
-
return [
|
|
252
|
-
2,
|
|
253
|
-
"<link".concat(atrributes, ' href="').concat(chunk.url, '" rel="stylesheet" />')
|
|
254
|
-
];
|
|
255
|
-
case 3:
|
|
256
|
-
return [
|
|
257
|
-
2
|
|
258
|
-
];
|
|
246
|
+
link = "<link".concat(atrributes, ' href="').concat(chunk.url, '" rel="stylesheet" />');
|
|
247
|
+
if (checkIsInline(chunk, enableInlineStyles) && checkIsNode()) {
|
|
248
|
+
return [
|
|
249
|
+
2,
|
|
250
|
+
readAsset(chunk).then(function(content) {
|
|
251
|
+
return "<style>".concat(content, "</style>");
|
|
252
|
+
}).catch(function(_) {
|
|
253
|
+
return link;
|
|
254
|
+
})
|
|
255
|
+
];
|
|
256
|
+
} else {
|
|
257
|
+
return [
|
|
258
|
+
2,
|
|
259
|
+
link
|
|
260
|
+
];
|
|
259
261
|
}
|
|
262
|
+
return [
|
|
263
|
+
2
|
|
264
|
+
];
|
|
260
265
|
});
|
|
261
266
|
});
|
|
262
267
|
return function(chunk) {
|
|
@@ -1,52 +1,56 @@
|
|
|
1
1
|
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
2
|
var SSRTimings;
|
|
3
3
|
(function(SSRTimings2) {
|
|
4
|
-
SSRTimings2[SSRTimings2["
|
|
5
|
-
SSRTimings2[SSRTimings2["
|
|
6
|
-
SSRTimings2[SSRTimings2["
|
|
7
|
-
SSRTimings2[SSRTimings2["
|
|
4
|
+
SSRTimings2[SSRTimings2["PRERENDER"] = 0] = "PRERENDER";
|
|
5
|
+
SSRTimings2[SSRTimings2["RENDER_HTML"] = 1] = "RENDER_HTML";
|
|
6
|
+
SSRTimings2[SSRTimings2["RENDER_SHELL"] = 2] = "RENDER_SHELL";
|
|
7
|
+
SSRTimings2[SSRTimings2["USE_LOADER"] = 3] = "USE_LOADER";
|
|
8
8
|
})(SSRTimings || (SSRTimings = {}));
|
|
9
9
|
var SSRErrors;
|
|
10
10
|
(function(SSRErrors2) {
|
|
11
|
-
SSRErrors2[SSRErrors2["
|
|
12
|
-
SSRErrors2[SSRErrors2["
|
|
13
|
-
SSRErrors2[SSRErrors2["
|
|
14
|
-
SSRErrors2[SSRErrors2["
|
|
11
|
+
SSRErrors2[SSRErrors2["PRERENDER"] = 0] = "PRERENDER";
|
|
12
|
+
SSRErrors2[SSRErrors2["USE_LOADER"] = 1] = "USE_LOADER";
|
|
13
|
+
SSRErrors2[SSRErrors2["RENDER_HTML"] = 2] = "RENDER_HTML";
|
|
14
|
+
SSRErrors2[SSRErrors2["RENDER_STREAM"] = 3] = "RENDER_STREAM";
|
|
15
|
+
SSRErrors2[SSRErrors2["RENDER_SHELL"] = 4] = "RENDER_SHELL";
|
|
15
16
|
})(SSRErrors || (SSRErrors = {}));
|
|
16
17
|
var _obj;
|
|
17
|
-
var errors = (_obj = {}, _define_property(_obj,
|
|
18
|
-
reporter: "SSR Error - App
|
|
19
|
-
logger: "App
|
|
20
|
-
metrics: "app.
|
|
21
|
-
}), _define_property(_obj,
|
|
18
|
+
var errors = (_obj = {}, _define_property(_obj, 0, {
|
|
19
|
+
reporter: "SSR Error - App Prerender",
|
|
20
|
+
logger: "App Prerender",
|
|
21
|
+
metrics: "app.prerender.error"
|
|
22
|
+
}), _define_property(_obj, 1, {
|
|
23
|
+
reporter: "SSR Error - App run useLoader",
|
|
24
|
+
logger: "App run useLoader",
|
|
25
|
+
metrics: "app.useloader.error"
|
|
26
|
+
}), _define_property(_obj, 2, {
|
|
22
27
|
reporter: "SSR Error - App Render To HTML",
|
|
23
28
|
logger: "App Render To HTML",
|
|
24
29
|
metrics: "app.render.html.error"
|
|
25
|
-
}), _define_property(_obj,
|
|
30
|
+
}), _define_property(_obj, 3, {
|
|
26
31
|
reporter: "SSR Error - App Render To Streaming",
|
|
27
32
|
logger: "An error occurs during streaming SSR",
|
|
28
33
|
metrics: "app.render.streaming.error"
|
|
29
|
-
}), _define_property(_obj,
|
|
34
|
+
}), _define_property(_obj, 4, {
|
|
30
35
|
metrics: "app.render.streaming.shell.error"
|
|
31
36
|
}), _obj);
|
|
32
37
|
var _obj1;
|
|
33
|
-
var timings = (_obj1 = {}, _define_property(_obj1,
|
|
34
|
-
reporter: "ssr-
|
|
35
|
-
serverTiming: "ssr-
|
|
36
|
-
metrics: "app.
|
|
37
|
-
logger: "App
|
|
38
|
-
}), _define_property(_obj1,
|
|
38
|
+
var timings = (_obj1 = {}, _define_property(_obj1, 0, {
|
|
39
|
+
reporter: "ssr-prerender",
|
|
40
|
+
serverTiming: "ssr-prerender",
|
|
41
|
+
metrics: "app.prerender.cost",
|
|
42
|
+
logger: "App Prerender cost = %d ms"
|
|
43
|
+
}), _define_property(_obj1, 1, {
|
|
39
44
|
reporter: "ssr-render-html",
|
|
40
45
|
serverTiming: "ssr-render-html",
|
|
41
46
|
metrics: "app.render.html.cost",
|
|
42
47
|
logger: "App Render To HTML cost = %d ms"
|
|
43
|
-
}), _define_property(_obj1,
|
|
44
|
-
reporter: "ssr-render-total",
|
|
45
|
-
serverTiming: "ssr-render-total",
|
|
46
|
-
metrics: "app.render.cost",
|
|
47
|
-
logger: "App Render Total cost = %d ms"
|
|
48
|
-
}), _define_property(_obj1, SSRTimings.SSR_RENDER_SHELL, {
|
|
48
|
+
}), _define_property(_obj1, 2, {
|
|
49
49
|
reporter: "ssr-render-shell"
|
|
50
|
+
}), _define_property(_obj1, 3, {
|
|
51
|
+
reporter: "use-loader",
|
|
52
|
+
serverTiming: "use-loader",
|
|
53
|
+
logger: "App run useLoader cost = %d ms"
|
|
50
54
|
}), _obj1);
|
|
51
55
|
function createSSRTracker(param) {
|
|
52
56
|
var reporter = param.reporter, serverTiming = param.serverTiming, metrics = param.metrics, logger = param.logger;
|
|
@@ -58,19 +58,6 @@ var statePlugin = function() {
|
|
|
58
58
|
plugins
|
|
59
59
|
};
|
|
60
60
|
},
|
|
61
|
-
validateSchema: function validateSchema() {
|
|
62
|
-
return [
|
|
63
|
-
{
|
|
64
|
-
target: "runtime.state",
|
|
65
|
-
schema: {
|
|
66
|
-
type: [
|
|
67
|
-
"boolean",
|
|
68
|
-
"object"
|
|
69
|
-
]
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
];
|
|
73
|
-
},
|
|
74
61
|
addRuntimeExports: function addRuntimeExports() {
|
|
75
62
|
pluginsExportsUtils.addExport("export { default as state } from '@modern-js/runtime/model'");
|
|
76
63
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import path from "path";
|
|
2
|
-
import { isReact18, cleanRequireCache
|
|
2
|
+
import { isReact18, cleanRequireCache } from "@modern-js/utils";
|
|
3
3
|
import { statePlugin } from "../state/cli";
|
|
4
4
|
import { ssrPlugin } from "../ssr/cli";
|
|
5
5
|
import { routerPlugin } from "../router/cli";
|
|
@@ -51,29 +51,6 @@ const runtimePlugin = () => ({
|
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
53
|
},
|
|
54
|
-
validateSchema() {
|
|
55
|
-
return [
|
|
56
|
-
{
|
|
57
|
-
target: "runtime",
|
|
58
|
-
schema: {
|
|
59
|
-
type: "object",
|
|
60
|
-
additionalProperties: false
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
target: "runtimeByEntries",
|
|
65
|
-
schema: {
|
|
66
|
-
type: "object",
|
|
67
|
-
patternProperties: {
|
|
68
|
-
[ENTRY_NAME_PATTERN]: {
|
|
69
|
-
type: "object"
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
|
-
additionalProperties: false
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
];
|
|
76
|
-
},
|
|
77
54
|
async beforeRestart() {
|
|
78
55
|
cleanRequireCache([
|
|
79
56
|
require.resolve("../state/cli"),
|