@modern-js/runtime 2.19.1 → 2.21.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/CHANGELOG.md +51 -0
- package/dist/cjs/cli/index.js +6 -10
- package/dist/cjs/core/compatible.js +4 -47
- package/dist/cjs/core/index.js +4 -16
- package/dist/cjs/core/loader/index.js +2 -6
- package/dist/cjs/core/loader/loaderManager.js +2 -6
- package/dist/cjs/core/loader/useLoader.js +2 -6
- package/dist/cjs/document/Body.js +2 -41
- package/dist/cjs/document/Comment.js +2 -6
- package/dist/cjs/document/DocumentContext.js +2 -6
- package/dist/cjs/document/DocumentStructureContext.js +2 -6
- package/dist/cjs/document/Head.js +2 -41
- package/dist/cjs/document/Html.js +2 -6
- package/dist/cjs/document/Links.js +2 -6
- package/dist/cjs/document/Root.js +2 -41
- package/dist/cjs/document/Script.js +2 -6
- package/dist/cjs/document/Scripts.js +2 -6
- package/dist/cjs/document/cli/index.js +9 -10
- package/dist/cjs/document/index.js +12 -24
- package/dist/cjs/exports/head.js +3 -19
- package/dist/cjs/exports/loadable.js +3 -19
- package/dist/cjs/exports/styled.js +3 -19
- package/dist/cjs/router/index.js +3 -19
- package/dist/cjs/router/runtime/DefaultNotFound.js +2 -6
- package/dist/cjs/router/runtime/DeferredDataScripts.node.js +4 -4
- package/dist/cjs/router/runtime/PrefetchLink.js +9 -48
- package/dist/cjs/router/runtime/index.js +57 -70
- package/dist/cjs/router/runtime/plugin.js +10 -14
- package/dist/cjs/router/runtime/plugin.node.js +11 -54
- package/dist/cjs/router/runtime/server.js +2 -14
- package/dist/cjs/router/runtime/utils.js +9 -12
- package/dist/cjs/router/runtime/withRouter.js +6 -10
- package/dist/cjs/ssr/cli/babel-plugin-ssr-loader-id.js +4 -47
- package/dist/cjs/ssr/cli/index.js +3 -7
- package/dist/cjs/ssr/cli/loadable-bundler-plugin.js +5 -21
- package/dist/cjs/ssr/index.js +4 -20
- package/dist/cjs/ssr/index.node.js +4 -20
- package/dist/cjs/ssr/react/nossr/index.js +2 -41
- package/dist/cjs/ssr/react/prerender/index.js +8 -63
- package/dist/cjs/ssr/react/withCallback/index.js +2 -41
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +6 -2
- package/dist/cjs/ssr/serverRender/renderToStream/bulidTemplate.before.js +5 -9
- package/dist/cjs/ssr/serverRender/renderToStream/index.js +2 -6
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +10 -12
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +11 -11
- package/dist/cjs/ssr/serverRender/renderToString/entry.js +28 -77
- package/dist/cjs/ssr/serverRender/renderToString/index.js +2 -6
- package/dist/cjs/ssr/serverRender/renderToString/loadable.js +7 -4
- package/dist/cjs/ssr/serverRender/renderToString/reduce.js +2 -6
- package/dist/cjs/ssr/serverRender/renderToString/template.js +6 -18
- package/dist/cjs/ssr/serverRender/utils.js +7 -1
- package/dist/cjs/ssr/utils.js +2 -6
- package/dist/cjs/state/index.js +3 -19
- package/dist/cjs/state/plugins.js +4 -8
- package/dist/cjs/state/runtime/index.js +4 -20
- package/dist/cjs/state/runtime/plugin.js +4 -20
- package/dist/esm/cli/index.js +3 -132
- package/dist/esm/core/compatible.js +7 -233
- package/dist/esm/core/loader/loaderManager.js +7 -212
- package/dist/esm/core/loader/useLoader.js +4 -117
- package/dist/esm/core/plugin.js +3 -132
- package/dist/esm/document/cli/index.js +12 -198
- package/dist/esm/document/constants.js +1 -13
- package/dist/esm/router/cli/index.js +2 -52
- package/dist/esm/router/runtime/DeferredDataScripts.node.js +2 -59
- package/dist/esm/router/runtime/PrefetchLink.js +7 -251
- package/dist/esm/router/runtime/index.js +6 -4
- package/dist/esm/router/runtime/plugin.js +3 -53
- package/dist/esm/router/runtime/plugin.node.js +10 -252
- package/dist/esm/router/runtime/server.js +1 -1
- package/dist/esm/router/runtime/utils.js +8 -151
- package/dist/esm/router/runtime/withRouter.js +3 -53
- package/dist/esm/ssr/cli/index.js +1 -1
- package/dist/esm/ssr/cli/loadable-bundler-plugin.js +6 -108
- package/dist/esm/ssr/index.js +5 -184
- package/dist/esm/ssr/index.node.js +5 -184
- package/dist/esm/ssr/prefetch.js +4 -133
- package/dist/esm/ssr/react/nossr/index.js +1 -58
- package/dist/esm/ssr/react/prerender/index.js +7 -145
- package/dist/esm/ssr/serverRender/index.js +3 -132
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +7 -30
- package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +3 -73
- package/dist/esm/ssr/serverRender/renderToStream/index.js +3 -132
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +13 -71
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +18 -197
- package/dist/esm/ssr/serverRender/renderToStream/template.js +1 -58
- package/dist/esm/ssr/serverRender/renderToString/entry.js +19 -188
- package/dist/esm/ssr/serverRender/renderToString/index.js +3 -132
- package/dist/esm/ssr/serverRender/renderToString/loadable.js +8 -5
- package/dist/esm/ssr/serverRender/renderToString/template.js +4 -93
- package/dist/esm/ssr/serverRender/time.js +1 -58
- package/dist/esm/ssr/serverRender/time.worker.js +1 -58
- package/dist/esm/ssr/serverRender/utils.js +7 -0
- package/dist/esm/ssr/utils.js +2 -86
- package/dist/esm/state/runtime/plugin.js +3 -110
- package/dist/esm-node/document/cli/index.js +5 -2
- package/dist/esm-node/router/runtime/DeferredDataScripts.node.js +1 -1
- package/dist/esm-node/router/runtime/PrefetchLink.js +1 -1
- package/dist/esm-node/router/runtime/index.js +6 -4
- package/dist/esm-node/router/runtime/plugin.js +1 -1
- package/dist/esm-node/router/runtime/plugin.node.js +3 -3
- package/dist/esm-node/router/runtime/server.js +1 -1
- package/dist/esm-node/router/runtime/utils.js +3 -2
- package/dist/esm-node/router/runtime/withRouter.js +1 -1
- package/dist/esm-node/ssr/cli/index.js +1 -1
- package/dist/esm-node/ssr/cli/loadable-bundler-plugin.js +1 -13
- package/dist/esm-node/ssr/react/prerender/index.js +1 -13
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +6 -2
- package/dist/esm-node/ssr/serverRender/renderToStream/bulidTemplate.before.js +1 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +10 -12
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +11 -11
- package/dist/esm-node/ssr/serverRender/renderToString/entry.js +12 -18
- package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +8 -5
- package/dist/esm-node/ssr/serverRender/renderToString/template.js +1 -13
- package/dist/esm-node/ssr/serverRender/utils.js +5 -0
- package/dist/types/cli/index.d.ts +0 -2
- package/dist/types/core/loader/loaderManager.d.ts +0 -1
- package/dist/types/core/loader/useLoader.d.ts +0 -5
- package/dist/types/core/plugin.d.ts +1 -6
- package/dist/types/document/cli/index.d.ts +0 -2
- package/dist/types/router/cli/index.d.ts +0 -2
- package/dist/types/router/runtime/DeferredDataScripts.d.ts +0 -1
- package/dist/types/router/runtime/DeferredDataScripts.node.d.ts +0 -1
- package/dist/types/router/runtime/PrefetchLink.d.ts +1 -3
- package/dist/types/router/runtime/hooks.d.ts +1 -1
- package/dist/types/router/runtime/index.d.ts +3 -4
- package/dist/types/router/runtime/server.d.ts +1 -1
- package/dist/types/router/runtime/types.d.ts +1 -3
- package/dist/types/router/runtime/utils.d.ts +1 -3
- package/dist/types/router/runtime/withRouter.d.ts +1 -1
- package/dist/types/runtimeContext.d.ts +1 -1
- package/dist/types/ssr/cli/index.d.ts +0 -2
- package/dist/types/ssr/serverRender/renderToStream/type.d.ts +2 -2
- package/dist/types/ssr/serverRender/renderToString/entry.d.ts +1 -0
- package/dist/types/ssr/serverRender/renderToString/type.d.ts +1 -0
- package/dist/types/ssr/serverRender/utils.d.ts +2 -1
- package/dist/types/state/cli/index.d.ts +0 -2
- package/dist/types/state/types.d.ts +0 -1
- package/package.json +28 -21
|
@@ -1,202 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
} catch (error) {
|
|
6
|
-
reject(error);
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
if (info.done) {
|
|
10
|
-
resolve(value);
|
|
11
|
-
} else {
|
|
12
|
-
Promise.resolve(value).then(_next, _throw);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function _async_to_generator(fn) {
|
|
16
|
-
return function() {
|
|
17
|
-
var self = this, args = arguments;
|
|
18
|
-
return new Promise(function(resolve, reject) {
|
|
19
|
-
var gen = fn.apply(self, args);
|
|
20
|
-
function _next(value) {
|
|
21
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
22
|
-
}
|
|
23
|
-
function _throw(err) {
|
|
24
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
25
|
-
}
|
|
26
|
-
_next(void 0);
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
function _define_property(obj, key, value) {
|
|
31
|
-
if (key in obj) {
|
|
32
|
-
Object.defineProperty(obj, key, {
|
|
33
|
-
value: value,
|
|
34
|
-
enumerable: true,
|
|
35
|
-
configurable: true,
|
|
36
|
-
writable: true
|
|
37
|
-
});
|
|
38
|
-
} else {
|
|
39
|
-
obj[key] = value;
|
|
40
|
-
}
|
|
41
|
-
return obj;
|
|
42
|
-
}
|
|
43
|
-
function _object_spread(target) {
|
|
44
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
45
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
46
|
-
var ownKeys2 = Object.keys(source);
|
|
47
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
48
|
-
ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
49
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
50
|
-
}));
|
|
51
|
-
}
|
|
52
|
-
ownKeys2.forEach(function(key) {
|
|
53
|
-
_define_property(target, key, source[key]);
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
return target;
|
|
57
|
-
}
|
|
58
|
-
function ownKeys(object, enumerableOnly) {
|
|
59
|
-
var keys = Object.keys(object);
|
|
60
|
-
if (Object.getOwnPropertySymbols) {
|
|
61
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
62
|
-
if (enumerableOnly) {
|
|
63
|
-
symbols = symbols.filter(function(sym) {
|
|
64
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
keys.push.apply(keys, symbols);
|
|
68
|
-
}
|
|
69
|
-
return keys;
|
|
70
|
-
}
|
|
71
|
-
function _object_spread_props(target, source) {
|
|
72
|
-
source = source != null ? source : {};
|
|
73
|
-
if (Object.getOwnPropertyDescriptors) {
|
|
74
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
75
|
-
} else {
|
|
76
|
-
ownKeys(Object(source)).forEach(function(key) {
|
|
77
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
return target;
|
|
81
|
-
}
|
|
82
|
-
var __generator = function(thisArg, body) {
|
|
83
|
-
var f, y, t, g, _ = {
|
|
84
|
-
label: 0,
|
|
85
|
-
sent: function() {
|
|
86
|
-
if (t[0] & 1)
|
|
87
|
-
throw t[1];
|
|
88
|
-
return t[1];
|
|
89
|
-
},
|
|
90
|
-
trys: [],
|
|
91
|
-
ops: []
|
|
92
|
-
};
|
|
93
|
-
return g = {
|
|
94
|
-
next: verb(0),
|
|
95
|
-
"throw": verb(1),
|
|
96
|
-
"return": verb(2)
|
|
97
|
-
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
98
|
-
return this;
|
|
99
|
-
}), g;
|
|
100
|
-
function verb(n) {
|
|
101
|
-
return function(v) {
|
|
102
|
-
return step([
|
|
103
|
-
n,
|
|
104
|
-
v
|
|
105
|
-
]);
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
function step(op) {
|
|
109
|
-
if (f)
|
|
110
|
-
throw new TypeError("Generator is already executing.");
|
|
111
|
-
while (_)
|
|
112
|
-
try {
|
|
113
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
|
|
114
|
-
return t;
|
|
115
|
-
if (y = 0, t)
|
|
116
|
-
op = [
|
|
117
|
-
op[0] & 2,
|
|
118
|
-
t.value
|
|
119
|
-
];
|
|
120
|
-
switch (op[0]) {
|
|
121
|
-
case 0:
|
|
122
|
-
case 1:
|
|
123
|
-
t = op;
|
|
124
|
-
break;
|
|
125
|
-
case 4:
|
|
126
|
-
_.label++;
|
|
127
|
-
return {
|
|
128
|
-
value: op[1],
|
|
129
|
-
done: false
|
|
130
|
-
};
|
|
131
|
-
case 5:
|
|
132
|
-
_.label++;
|
|
133
|
-
y = op[1];
|
|
134
|
-
op = [
|
|
135
|
-
0
|
|
136
|
-
];
|
|
137
|
-
continue;
|
|
138
|
-
case 7:
|
|
139
|
-
op = _.ops.pop();
|
|
140
|
-
_.trys.pop();
|
|
141
|
-
continue;
|
|
142
|
-
default:
|
|
143
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
144
|
-
_ = 0;
|
|
145
|
-
continue;
|
|
146
|
-
}
|
|
147
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
148
|
-
_.label = op[1];
|
|
149
|
-
break;
|
|
150
|
-
}
|
|
151
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
152
|
-
_.label = t[1];
|
|
153
|
-
t = op;
|
|
154
|
-
break;
|
|
155
|
-
}
|
|
156
|
-
if (t && _.label < t[2]) {
|
|
157
|
-
_.label = t[2];
|
|
158
|
-
_.ops.push(op);
|
|
159
|
-
break;
|
|
160
|
-
}
|
|
161
|
-
if (t[2])
|
|
162
|
-
_.ops.pop();
|
|
163
|
-
_.trys.pop();
|
|
164
|
-
continue;
|
|
165
|
-
}
|
|
166
|
-
op = body.call(thisArg, _);
|
|
167
|
-
} catch (e) {
|
|
168
|
-
op = [
|
|
169
|
-
6,
|
|
170
|
-
e
|
|
171
|
-
];
|
|
172
|
-
y = 0;
|
|
173
|
-
} finally {
|
|
174
|
-
f = t = 0;
|
|
175
|
-
}
|
|
176
|
-
if (op[0] & 5)
|
|
177
|
-
throw op[1];
|
|
178
|
-
return {
|
|
179
|
-
value: op[0] ? op[1] : void 0,
|
|
180
|
-
done: true
|
|
181
|
-
};
|
|
182
|
-
}
|
|
183
|
-
};
|
|
1
|
+
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
|
+
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
3
|
+
import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
|
|
4
|
+
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
184
5
|
import { RenderLevel } from "../types";
|
|
185
6
|
import { ESCAPED_SHELL_STREAM_END_MARK } from "../../../common";
|
|
186
7
|
import { getTemplates } from "./template";
|
|
187
8
|
var ShellChunkStatus;
|
|
188
9
|
(function(ShellChunkStatus2) {
|
|
189
|
-
ShellChunkStatus2[ShellChunkStatus2["
|
|
190
|
-
ShellChunkStatus2[ShellChunkStatus2["
|
|
191
|
-
ShellChunkStatus2[ShellChunkStatus2["FINIESH"] = 2] = "FINIESH";
|
|
10
|
+
ShellChunkStatus2[ShellChunkStatus2["START"] = 0] = "START";
|
|
11
|
+
ShellChunkStatus2[ShellChunkStatus2["FINIESH"] = 1] = "FINIESH";
|
|
192
12
|
})(ShellChunkStatus || (ShellChunkStatus = {}));
|
|
193
13
|
function renderToPipe(rootElement, context, options) {
|
|
194
|
-
var shellChunkStatus = ShellChunkStatus.
|
|
14
|
+
var shellChunkStatus = ShellChunkStatus.START;
|
|
15
|
+
var chunkVec = [];
|
|
195
16
|
var ssrContext = context.ssrContext;
|
|
196
17
|
var forUserPipe = function() {
|
|
197
18
|
var _ref = _async_to_generator(function() {
|
|
198
19
|
var renderToReadableStream, _getTemplates, shellAfter, shellBefore, readableOriginal, reader, injectableStream, err, _getTemplates1, shellAfter1, shellBefore1, fallbackHtml;
|
|
199
|
-
return
|
|
20
|
+
return _ts_generator(this, function(_state) {
|
|
200
21
|
switch (_state.label) {
|
|
201
22
|
case 0:
|
|
202
23
|
try {
|
|
@@ -215,6 +36,7 @@ function renderToPipe(rootElement, context, options) {
|
|
|
215
36
|
return [
|
|
216
37
|
4,
|
|
217
38
|
renderToReadableStream(rootElement, _object_spread_props(_object_spread({}, options), {
|
|
39
|
+
nonce: ssrContext === null || ssrContext === void 0 ? void 0 : ssrContext.nonce,
|
|
218
40
|
onError: function onError(error) {
|
|
219
41
|
var _options_onError;
|
|
220
42
|
ssrContext.logger.error("An error occurs during streaming SSR", error);
|
|
@@ -233,8 +55,8 @@ function renderToPipe(rootElement, context, options) {
|
|
|
233
55
|
}
|
|
234
56
|
function _push() {
|
|
235
57
|
_push = _async_to_generator(function() {
|
|
236
|
-
var _ref2, done, value, concatedChunk;
|
|
237
|
-
return
|
|
58
|
+
var _ref2, done, value, chunk, concatedChunk;
|
|
59
|
+
return _ts_generator(this, function(_state2) {
|
|
238
60
|
switch (_state2.label) {
|
|
239
61
|
case 0:
|
|
240
62
|
return [
|
|
@@ -250,14 +72,13 @@ function renderToPipe(rootElement, context, options) {
|
|
|
250
72
|
];
|
|
251
73
|
}
|
|
252
74
|
if (shellChunkStatus !== ShellChunkStatus.FINIESH) {
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
if (shellChunkStatus === ShellChunkStatus.START && concatedChunk.endsWith(ESCAPED_SHELL_STREAM_END_MARK)) {
|
|
259
|
-
concatedChunk = concatedChunk.replace(ESCAPED_SHELL_STREAM_END_MARK, shellAfter);
|
|
75
|
+
chunk = new TextDecoder().decode(value);
|
|
76
|
+
chunkVec.push(chunk);
|
|
77
|
+
concatedChunk = chunkVec.join("");
|
|
78
|
+
if (concatedChunk.endsWith(ESCAPED_SHELL_STREAM_END_MARK)) {
|
|
79
|
+
concatedChunk = concatedChunk.replace(ESCAPED_SHELL_STREAM_END_MARK, "");
|
|
260
80
|
shellChunkStatus = ShellChunkStatus.FINIESH;
|
|
81
|
+
controller.enqueue(encodeForWebStream("".concat(shellBefore).concat(concatedChunk).concat(shellAfter)));
|
|
261
82
|
}
|
|
262
83
|
controller.enqueue(encodeForWebStream(concatedChunk));
|
|
263
84
|
} else {
|
|
@@ -1,61 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
if (len == null || len > arr.length)
|
|
3
|
-
len = arr.length;
|
|
4
|
-
for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
5
|
-
arr2[i] = arr[i];
|
|
6
|
-
return arr2;
|
|
7
|
-
}
|
|
8
|
-
function _array_with_holes(arr) {
|
|
9
|
-
if (Array.isArray(arr))
|
|
10
|
-
return arr;
|
|
11
|
-
}
|
|
12
|
-
function _iterable_to_array_limit(arr, i) {
|
|
13
|
-
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
14
|
-
if (_i == null)
|
|
15
|
-
return;
|
|
16
|
-
var _arr = [];
|
|
17
|
-
var _n = true;
|
|
18
|
-
var _d = false;
|
|
19
|
-
var _s, _e;
|
|
20
|
-
try {
|
|
21
|
-
for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
|
|
22
|
-
_arr.push(_s.value);
|
|
23
|
-
if (i && _arr.length === i)
|
|
24
|
-
break;
|
|
25
|
-
}
|
|
26
|
-
} catch (err) {
|
|
27
|
-
_d = true;
|
|
28
|
-
_e = err;
|
|
29
|
-
} finally {
|
|
30
|
-
try {
|
|
31
|
-
if (!_n && _i["return"] != null)
|
|
32
|
-
_i["return"]();
|
|
33
|
-
} finally {
|
|
34
|
-
if (_d)
|
|
35
|
-
throw _e;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return _arr;
|
|
39
|
-
}
|
|
40
|
-
function _non_iterable_rest() {
|
|
41
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
42
|
-
}
|
|
43
|
-
function _sliced_to_array(arr, i) {
|
|
44
|
-
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
45
|
-
}
|
|
46
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
47
|
-
if (!o)
|
|
48
|
-
return;
|
|
49
|
-
if (typeof o === "string")
|
|
50
|
-
return _array_like_to_array(o, minLen);
|
|
51
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
52
|
-
if (n === "Object" && o.constructor)
|
|
53
|
-
n = o.constructor.name;
|
|
54
|
-
if (n === "Map" || n === "Set")
|
|
55
|
-
return Array.from(n);
|
|
56
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))
|
|
57
|
-
return _array_like_to_array(o, minLen);
|
|
58
|
-
}
|
|
1
|
+
import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
|
|
59
2
|
import { buildShellAfterTemplate } from "./buildTemplate.after";
|
|
60
3
|
import { buildShellBeforeTemplate } from "./bulidTemplate.before";
|
|
61
4
|
var HTML_SEPARATOR = "<!--<?- html ?>-->";
|
|
@@ -1,184 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
if (info.done) {
|
|
10
|
-
resolve(value);
|
|
11
|
-
} else {
|
|
12
|
-
Promise.resolve(value).then(_next, _throw);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function _async_to_generator(fn) {
|
|
16
|
-
return function() {
|
|
17
|
-
var self = this, args = arguments;
|
|
18
|
-
return new Promise(function(resolve, reject) {
|
|
19
|
-
var gen = fn.apply(self, args);
|
|
20
|
-
function _next(value) {
|
|
21
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
22
|
-
}
|
|
23
|
-
function _throw(err) {
|
|
24
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
25
|
-
}
|
|
26
|
-
_next(void 0);
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
function _class_call_check(instance, Constructor) {
|
|
31
|
-
if (!(instance instanceof Constructor)) {
|
|
32
|
-
throw new TypeError("Cannot call a class as a function");
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
function _defineProperties(target, props) {
|
|
36
|
-
for (var i = 0; i < props.length; i++) {
|
|
37
|
-
var descriptor = props[i];
|
|
38
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
39
|
-
descriptor.configurable = true;
|
|
40
|
-
if ("value" in descriptor)
|
|
41
|
-
descriptor.writable = true;
|
|
42
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
46
|
-
if (protoProps)
|
|
47
|
-
_defineProperties(Constructor.prototype, protoProps);
|
|
48
|
-
if (staticProps)
|
|
49
|
-
_defineProperties(Constructor, staticProps);
|
|
50
|
-
return Constructor;
|
|
51
|
-
}
|
|
52
|
-
function _define_property(obj, key, value) {
|
|
53
|
-
if (key in obj) {
|
|
54
|
-
Object.defineProperty(obj, key, {
|
|
55
|
-
value: value,
|
|
56
|
-
enumerable: true,
|
|
57
|
-
configurable: true,
|
|
58
|
-
writable: true
|
|
59
|
-
});
|
|
60
|
-
} else {
|
|
61
|
-
obj[key] = value;
|
|
62
|
-
}
|
|
63
|
-
return obj;
|
|
64
|
-
}
|
|
65
|
-
function _object_spread(target) {
|
|
66
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
67
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
68
|
-
var ownKeys = Object.keys(source);
|
|
69
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
70
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
71
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
72
|
-
}));
|
|
73
|
-
}
|
|
74
|
-
ownKeys.forEach(function(key) {
|
|
75
|
-
_define_property(target, key, source[key]);
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
return target;
|
|
79
|
-
}
|
|
80
|
-
var __generator = function(thisArg, body) {
|
|
81
|
-
var f, y, t, g, _ = {
|
|
82
|
-
label: 0,
|
|
83
|
-
sent: function() {
|
|
84
|
-
if (t[0] & 1)
|
|
85
|
-
throw t[1];
|
|
86
|
-
return t[1];
|
|
87
|
-
},
|
|
88
|
-
trys: [],
|
|
89
|
-
ops: []
|
|
90
|
-
};
|
|
91
|
-
return g = {
|
|
92
|
-
next: verb(0),
|
|
93
|
-
"throw": verb(1),
|
|
94
|
-
"return": verb(2)
|
|
95
|
-
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
96
|
-
return this;
|
|
97
|
-
}), g;
|
|
98
|
-
function verb(n) {
|
|
99
|
-
return function(v) {
|
|
100
|
-
return step([
|
|
101
|
-
n,
|
|
102
|
-
v
|
|
103
|
-
]);
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
function step(op) {
|
|
107
|
-
if (f)
|
|
108
|
-
throw new TypeError("Generator is already executing.");
|
|
109
|
-
while (_)
|
|
110
|
-
try {
|
|
111
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
|
|
112
|
-
return t;
|
|
113
|
-
if (y = 0, t)
|
|
114
|
-
op = [
|
|
115
|
-
op[0] & 2,
|
|
116
|
-
t.value
|
|
117
|
-
];
|
|
118
|
-
switch (op[0]) {
|
|
119
|
-
case 0:
|
|
120
|
-
case 1:
|
|
121
|
-
t = op;
|
|
122
|
-
break;
|
|
123
|
-
case 4:
|
|
124
|
-
_.label++;
|
|
125
|
-
return {
|
|
126
|
-
value: op[1],
|
|
127
|
-
done: false
|
|
128
|
-
};
|
|
129
|
-
case 5:
|
|
130
|
-
_.label++;
|
|
131
|
-
y = op[1];
|
|
132
|
-
op = [
|
|
133
|
-
0
|
|
134
|
-
];
|
|
135
|
-
continue;
|
|
136
|
-
case 7:
|
|
137
|
-
op = _.ops.pop();
|
|
138
|
-
_.trys.pop();
|
|
139
|
-
continue;
|
|
140
|
-
default:
|
|
141
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
142
|
-
_ = 0;
|
|
143
|
-
continue;
|
|
144
|
-
}
|
|
145
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
146
|
-
_.label = op[1];
|
|
147
|
-
break;
|
|
148
|
-
}
|
|
149
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
150
|
-
_.label = t[1];
|
|
151
|
-
t = op;
|
|
152
|
-
break;
|
|
153
|
-
}
|
|
154
|
-
if (t && _.label < t[2]) {
|
|
155
|
-
_.label = t[2];
|
|
156
|
-
_.ops.push(op);
|
|
157
|
-
break;
|
|
158
|
-
}
|
|
159
|
-
if (t[2])
|
|
160
|
-
_.ops.pop();
|
|
161
|
-
_.trys.pop();
|
|
162
|
-
continue;
|
|
163
|
-
}
|
|
164
|
-
op = body.call(thisArg, _);
|
|
165
|
-
} catch (e) {
|
|
166
|
-
op = [
|
|
167
|
-
6,
|
|
168
|
-
e
|
|
169
|
-
];
|
|
170
|
-
y = 0;
|
|
171
|
-
} finally {
|
|
172
|
-
f = t = 0;
|
|
173
|
-
}
|
|
174
|
-
if (op[0] & 5)
|
|
175
|
-
throw op[1];
|
|
176
|
-
return {
|
|
177
|
-
value: op[0] ? op[1] : void 0,
|
|
178
|
-
done: true
|
|
179
|
-
};
|
|
180
|
-
}
|
|
181
|
-
};
|
|
1
|
+
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
|
+
import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
|
|
3
|
+
import { _ as _create_class } from "@swc/helpers/_/_create_class";
|
|
4
|
+
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
5
|
+
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
6
|
+
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
182
7
|
import React from "react";
|
|
183
8
|
import ReactDomServer from "react-dom/server";
|
|
184
9
|
import { serializeJson } from "@modern-js/utils/runtime-node";
|
|
@@ -188,7 +13,7 @@ import helmetReplace from "../helmet";
|
|
|
188
13
|
import { RenderLevel } from "../types";
|
|
189
14
|
import { time } from "../time";
|
|
190
15
|
import prefetch from "../../prefetch";
|
|
191
|
-
import { ROUTER_DATA_JSON_ID, SSR_DATA_JSON_ID } from "../utils";
|
|
16
|
+
import { ROUTER_DATA_JSON_ID, SSR_DATA_JSON_ID, attributesToString } from "../utils";
|
|
192
17
|
import { toFragments } from "./template";
|
|
193
18
|
import { reduce } from "./reduce";
|
|
194
19
|
import * as loadableRenderer from "./loadable";
|
|
@@ -224,8 +49,9 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
224
49
|
_define_property(this, "fragments", void 0);
|
|
225
50
|
_define_property(this, "pluginConfig", void 0);
|
|
226
51
|
_define_property(this, "host", void 0);
|
|
52
|
+
_define_property(this, "nonce", void 0);
|
|
227
53
|
var ctx = options.ctx, config = options.config;
|
|
228
|
-
var entryName = ctx.entryName, template = ctx.template, host = ctx.request.host;
|
|
54
|
+
var entryName = ctx.entryName, template = ctx.template, host = ctx.request.host, nonce = ctx.nonce;
|
|
229
55
|
this.fragments = toFragments(template, entryName);
|
|
230
56
|
this.entryName = entryName;
|
|
231
57
|
this.host = host;
|
|
@@ -233,6 +59,7 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
233
59
|
this.pluginConfig = config;
|
|
234
60
|
this.metrics = ctx.metrics;
|
|
235
61
|
this.logger = ctx.logger;
|
|
62
|
+
this.nonce = nonce;
|
|
236
63
|
this.result = {
|
|
237
64
|
renderLevel: RenderLevel.CLIENT_RENDER,
|
|
238
65
|
html: "",
|
|
@@ -249,7 +76,7 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
249
76
|
var _this = this;
|
|
250
77
|
return _async_to_generator(function() {
|
|
251
78
|
var _ssrContext_redirection, _ssrContext_redirection1, _ssrContext_redirection2, ssrContext, prefetchData, routerContext, routerData, html, templateData, SSRData, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, fragment, helmetData;
|
|
252
|
-
return
|
|
79
|
+
return _ts_generator(this, function(_state) {
|
|
253
80
|
switch (_state.label) {
|
|
254
81
|
case 0:
|
|
255
82
|
ssrContext = context.ssrContext;
|
|
@@ -328,7 +155,7 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
328
155
|
var _this = this;
|
|
329
156
|
return _async_to_generator(function() {
|
|
330
157
|
var prefetchData, end, prefetchCost, e;
|
|
331
|
-
return
|
|
158
|
+
return _ts_generator(this, function(_state) {
|
|
332
159
|
switch (_state.label) {
|
|
333
160
|
case 0:
|
|
334
161
|
end = time();
|
|
@@ -390,7 +217,8 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
390
217
|
host: this.host,
|
|
391
218
|
result: this.result,
|
|
392
219
|
entryName: this.entryName,
|
|
393
|
-
config: this.pluginConfig
|
|
220
|
+
config: this.pluginConfig,
|
|
221
|
+
nonce: this.nonce
|
|
394
222
|
};
|
|
395
223
|
html = reduce(App, renderContext, [
|
|
396
224
|
styledComponentRenderer.toHtml,
|
|
@@ -415,10 +243,13 @@ var Entry = /* @__PURE__ */ function() {
|
|
|
415
243
|
value: function getSSRDataScript(templateData, routerData) {
|
|
416
244
|
var useInlineScript = this.pluginConfig.inlineScript !== false;
|
|
417
245
|
var ssrData = serializeJson(templateData);
|
|
418
|
-
var
|
|
246
|
+
var attrsStr = attributesToString({
|
|
247
|
+
nonce: this.nonce
|
|
248
|
+
});
|
|
249
|
+
var ssrDataScripts = useInlineScript ? "<script".concat(attrsStr, ">window._SSR_DATA = ").concat(ssrData, "</script>") : '<script type="application/json" id="'.concat(SSR_DATA_JSON_ID, '">').concat(ssrData, "</script>");
|
|
419
250
|
if (routerData) {
|
|
420
251
|
var serializedRouterData = serializeJson(routerData);
|
|
421
|
-
ssrDataScripts += useInlineScript ? "\n<script>window._ROUTER_DATA = ".concat(serializedRouterData, "</script>") : '\n<script type="application/json" id="'.concat(ROUTER_DATA_JSON_ID, '">').concat(serializedRouterData, "</script>");
|
|
252
|
+
ssrDataScripts += useInlineScript ? "\n<script".concat(attrsStr, ">window._ROUTER_DATA = ").concat(serializedRouterData, "</script>") : '\n<script type="application/json" id="'.concat(ROUTER_DATA_JSON_ID, '">').concat(serializedRouterData, "</script>");
|
|
422
253
|
}
|
|
423
254
|
return {
|
|
424
255
|
SSRDataScript: ssrDataScripts
|