@modern-js/runtime 2.3.1-alpha.0 → 2.4.1-alpha.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 +12 -0
- package/README.md +14 -18
- package/dist/js/modern/core/compatible.js +1 -0
- package/dist/js/modern/document/Body.js +2 -2
- package/dist/js/modern/document/{DocumentStructrueContext.js → DocumentStructureContext.js} +2 -2
- package/dist/js/modern/document/Head.js +2 -2
- package/dist/js/modern/document/Html.js +2 -2
- package/dist/js/modern/document/index.js +1 -1
- package/dist/js/modern/router/runtime/fetch.js +5 -0
- package/dist/js/modern/router/runtime/fetch.node.js +4 -0
- package/dist/js/modern/router/runtime/fetch.worker.js +5 -0
- package/dist/js/modern/router/runtime/plugin.node.js +50 -22
- package/dist/js/modern/ssr/cli/index.js +2 -2
- package/dist/js/modern/ssr/prefetch.worker.js +66 -0
- package/dist/js/modern/ssr/react/nossr/index.js +6 -2
- package/dist/js/modern/ssr/serverRender/renderToStream/index.js +1 -1
- package/dist/js/modern/ssr/serverRender/renderToStream/index.worker.js +35 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +5 -3
- package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.worker.js +110 -0
- package/dist/js/modern/ssr/serverRender/renderToString/entry.js +6 -7
- package/dist/js/modern/ssr/serverRender/renderToString/index.js +1 -1
- package/dist/js/modern/ssr/serverRender/renderToString/index.worker.js +49 -0
- package/dist/js/modern/ssr/serverRender/time.js +13 -0
- package/dist/js/modern/ssr/serverRender/time.worker.js +28 -0
- package/dist/js/modern/ssr/serverRender/utils.js +1 -12
- package/dist/js/node/core/compatible.js +1 -0
- package/dist/js/node/document/Body.js +2 -2
- package/dist/js/node/document/{DocumentStructrueContext.js → DocumentStructureContext.js} +6 -6
- package/dist/js/node/document/Head.js +2 -2
- package/dist/js/node/document/Html.js +2 -2
- package/dist/js/node/document/index.js +1 -1
- package/dist/js/node/router/runtime/fetch.js +28 -0
- package/dist/js/node/router/runtime/fetch.node.js +27 -0
- package/dist/js/node/router/runtime/fetch.worker.js +28 -0
- package/dist/js/node/router/runtime/plugin.node.js +46 -21
- package/dist/js/node/ssr/cli/index.js +2 -2
- package/dist/js/node/ssr/prefetch.worker.js +87 -0
- package/dist/js/node/ssr/react/nossr/index.js +6 -2
- package/dist/js/node/ssr/serverRender/renderToStream/index.js +2 -2
- package/dist/js/node/ssr/serverRender/renderToStream/index.worker.js +64 -0
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +6 -2
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.worker.js +129 -0
- package/dist/js/node/ssr/serverRender/renderToString/entry.js +8 -9
- package/dist/js/node/ssr/serverRender/renderToString/index.js +2 -2
- package/dist/js/node/ssr/serverRender/renderToString/index.worker.js +78 -0
- package/dist/js/node/ssr/serverRender/time.js +36 -0
- package/dist/js/node/ssr/serverRender/time.worker.js +51 -0
- package/dist/js/node/ssr/serverRender/utils.js +2 -14
- package/dist/js/treeshaking/core/compatible.js +8 -7
- package/dist/js/treeshaking/core/loader/loaderManager.js +3 -3
- package/dist/js/treeshaking/core/loader/useLoader.js +15 -15
- package/dist/js/treeshaking/document/Body.js +2 -2
- package/dist/js/treeshaking/document/{DocumentStructrueContext.js → DocumentStructureContext.js} +2 -2
- package/dist/js/treeshaking/document/Head.js +2 -2
- package/dist/js/treeshaking/document/Html.js +4 -4
- package/dist/js/treeshaking/document/Root.js +2 -2
- package/dist/js/treeshaking/document/cli/index.js +4 -4
- package/dist/js/treeshaking/document/index.js +1 -1
- package/dist/js/treeshaking/router/cli/index.js +2 -2
- package/dist/js/treeshaking/router/runtime/fetch.js +2 -0
- package/dist/js/treeshaking/router/runtime/fetch.node.js +2 -0
- package/dist/js/treeshaking/router/runtime/fetch.worker.js +2 -0
- package/dist/js/treeshaking/router/runtime/plugin.js +3 -3
- package/dist/js/treeshaking/router/runtime/plugin.node.js +70 -22
- package/dist/js/treeshaking/router/runtime/utils.js +3 -3
- package/dist/js/treeshaking/ssr/cli/index.js +5 -5
- package/dist/js/treeshaking/ssr/index.js +6 -6
- package/dist/js/treeshaking/ssr/index.node.js +1 -1
- package/dist/js/treeshaking/ssr/prefetch.js +2 -2
- package/dist/js/treeshaking/ssr/prefetch.worker.js +191 -0
- package/dist/js/treeshaking/ssr/react/nossr/index.js +3 -3
- package/dist/js/treeshaking/ssr/react/prerender/index.js +2 -2
- package/dist/js/treeshaking/ssr/react/prerender/util.js +2 -2
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +2 -2
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.worker.js +32 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +12 -9
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.worker.js +280 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +6 -8
- package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToString/index.worker.js +167 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/time.js +57 -0
- package/dist/js/treeshaking/ssr/serverRender/time.worker.js +75 -0
- package/dist/js/treeshaking/ssr/serverRender/utils.js +1 -57
- package/dist/js/treeshaking/ssr/utils.js +5 -5
- package/dist/js/treeshaking/state/cli/index.js +2 -2
- package/dist/js/treeshaking/state/runtime/plugin.js +3 -3
- package/dist/types/document/{DocumentStructrueContext.d.ts → DocumentStructureContext.d.ts} +2 -2
- package/dist/types/document/index.d.ts +1 -1
- package/dist/types/router/runtime/fetch.d.ts +2 -0
- package/dist/types/router/runtime/fetch.node.d.ts +2 -0
- package/dist/types/router/runtime/fetch.worker.d.ts +2 -0
- package/dist/types/ssr/prefetch.worker.d.ts +13 -0
- package/dist/types/ssr/react/nossr/index.d.ts +4 -2
- package/dist/types/ssr/serverRender/renderToStream/index.worker.d.ts +6 -0
- package/dist/types/ssr/serverRender/renderToStream/renderToPipe.d.ts +1 -1
- package/dist/types/ssr/serverRender/renderToStream/renderToPipe.worker.d.ts +8 -0
- package/dist/types/ssr/serverRender/renderToString/index.worker.d.ts +6 -0
- package/dist/types/ssr/serverRender/time.d.ts +1 -0
- package/dist/types/ssr/serverRender/time.worker.d.ts +1 -0
- package/dist/types/ssr/serverRender/utils.d.ts +2 -3
- package/package.json +35 -22
|
@@ -0,0 +1,129 @@
|
|
|
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 __async = (__this, __arguments, generator) => {
|
|
36
|
+
return new Promise((resolve, reject) => {
|
|
37
|
+
var fulfilled = (value) => {
|
|
38
|
+
try {
|
|
39
|
+
step(generator.next(value));
|
|
40
|
+
} catch (e) {
|
|
41
|
+
reject(e);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
var rejected = (value) => {
|
|
45
|
+
try {
|
|
46
|
+
step(generator.throw(value));
|
|
47
|
+
} catch (e) {
|
|
48
|
+
reject(e);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
52
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
var renderToPipe_worker_exports = {};
|
|
56
|
+
__export(renderToPipe_worker_exports, {
|
|
57
|
+
default: () => renderToPipe_worker_default
|
|
58
|
+
});
|
|
59
|
+
module.exports = __toCommonJS(renderToPipe_worker_exports);
|
|
60
|
+
var import_types = require("../types");
|
|
61
|
+
var import_template = require("./template");
|
|
62
|
+
function renderToPipe(rootElement, context, options) {
|
|
63
|
+
let isShellStream = true;
|
|
64
|
+
const { ssrContext } = context;
|
|
65
|
+
const forUserPipe = (stream) => __async(this, null, function* () {
|
|
66
|
+
let renderToReadableStream;
|
|
67
|
+
try {
|
|
68
|
+
({ renderToReadableStream } = require("react-dom/server"));
|
|
69
|
+
} catch (e) {
|
|
70
|
+
}
|
|
71
|
+
const { shellAfter, shellBefore } = (0, import_template.getTemplates)(
|
|
72
|
+
context,
|
|
73
|
+
import_types.RenderLevel.SERVER_RENDER
|
|
74
|
+
);
|
|
75
|
+
try {
|
|
76
|
+
let _a;
|
|
77
|
+
const readableOriginal = yield renderToReadableStream(rootElement, __spreadProps(__spreadValues({}, options), {
|
|
78
|
+
onError(error) {
|
|
79
|
+
var _a2;
|
|
80
|
+
ssrContext.logger.error(
|
|
81
|
+
"An error occurs during streaming SSR",
|
|
82
|
+
error
|
|
83
|
+
);
|
|
84
|
+
ssrContext.metrics.emitCounter("app.render.streaming.error", 1);
|
|
85
|
+
(_a2 = options == null ? void 0 : options.onError) == null ? void 0 : _a2.call(options, error);
|
|
86
|
+
}
|
|
87
|
+
}));
|
|
88
|
+
const reader = readableOriginal.getReader();
|
|
89
|
+
const injectableStream = new ReadableStream({
|
|
90
|
+
start(controller) {
|
|
91
|
+
return __async(this, null, function* () {
|
|
92
|
+
const { value } = yield reader.read();
|
|
93
|
+
if (isShellStream) {
|
|
94
|
+
controller.enqueue(encodeForWebStream(shellBefore));
|
|
95
|
+
controller.enqueue(value);
|
|
96
|
+
controller.enqueue(encodeForWebStream(shellAfter));
|
|
97
|
+
isShellStream = false;
|
|
98
|
+
} else {
|
|
99
|
+
controller.enqueue(value);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
return readableOriginal(injectableStream).readableOriginal(stream);
|
|
105
|
+
} catch (err) {
|
|
106
|
+
ssrContext.metrics.emitCounter("app.render.streaming.shell.error", 1);
|
|
107
|
+
const { shellAfter: shellAfter2, shellBefore: shellBefore2 } = (0, import_template.getTemplates)(
|
|
108
|
+
context,
|
|
109
|
+
import_types.RenderLevel.CLIENT_RENDER
|
|
110
|
+
);
|
|
111
|
+
const fallbackHtml = `${shellBefore2}${shellAfter2}`;
|
|
112
|
+
return fallbackHtml;
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
return forUserPipe;
|
|
116
|
+
}
|
|
117
|
+
let encoder;
|
|
118
|
+
function encodeForWebStream(thing) {
|
|
119
|
+
if (!encoder) {
|
|
120
|
+
encoder = new TextEncoder();
|
|
121
|
+
}
|
|
122
|
+
if (typeof thing === "string") {
|
|
123
|
+
return encoder.encode(thing);
|
|
124
|
+
}
|
|
125
|
+
return thing;
|
|
126
|
+
}
|
|
127
|
+
var renderToPipe_worker_default = renderToPipe;
|
|
128
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
129
|
+
0 && (module.exports = {});
|
|
@@ -52,7 +52,7 @@ var import_serialize_javascript = __toESM(require("serialize-javascript"));
|
|
|
52
52
|
var import_react_helmet = __toESM(require("react-helmet"));
|
|
53
53
|
var import_helmet = __toESM(require("../helmet"));
|
|
54
54
|
var import_types = require("../types");
|
|
55
|
-
var
|
|
55
|
+
var import_time = require("../time");
|
|
56
56
|
var import_prefetch = __toESM(require("../../prefetch"));
|
|
57
57
|
var import_template = require("./template");
|
|
58
58
|
var import_reduce = require("./reduce");
|
|
@@ -102,18 +102,19 @@ class Entry {
|
|
|
102
102
|
}
|
|
103
103
|
renderToHtml(context) {
|
|
104
104
|
return __async(this, null, function* () {
|
|
105
|
+
var _a, _b, _c;
|
|
105
106
|
const ssrContext = context.ssrContext;
|
|
106
|
-
if (ssrContext.redirection.url) {
|
|
107
|
+
if ((_a = ssrContext.redirection) == null ? void 0 : _a.url) {
|
|
107
108
|
return "";
|
|
108
109
|
}
|
|
109
110
|
const prefetchData = yield this.prefetch(context);
|
|
110
|
-
if (ssrContext.redirection.url) {
|
|
111
|
+
if ((_b = ssrContext.redirection) == null ? void 0 : _b.url) {
|
|
111
112
|
return "";
|
|
112
113
|
}
|
|
113
114
|
if (this.result.renderLevel >= import_types.RenderLevel.SERVER_PREFETCH) {
|
|
114
115
|
this.result.html = this.renderToString(context);
|
|
115
116
|
}
|
|
116
|
-
if (ssrContext.redirection.url) {
|
|
117
|
+
if ((_c = ssrContext.redirection) == null ? void 0 : _c.url) {
|
|
117
118
|
return "";
|
|
118
119
|
}
|
|
119
120
|
let html = "";
|
|
@@ -127,9 +128,7 @@ class Entry {
|
|
|
127
128
|
if (fragment.isVariable && fragment.content === "SSRDataScript") {
|
|
128
129
|
html += fragment.getValue(SSRData);
|
|
129
130
|
} else {
|
|
130
|
-
|
|
131
|
-
value = value.replace(/\\\\\\u/g, `u`);
|
|
132
|
-
html += value;
|
|
131
|
+
html += fragment.getValue(this.result);
|
|
133
132
|
}
|
|
134
133
|
}
|
|
135
134
|
const helmetData = import_react_helmet.default.renderStatic();
|
|
@@ -139,7 +138,7 @@ class Entry {
|
|
|
139
138
|
prefetch(context) {
|
|
140
139
|
return __async(this, null, function* () {
|
|
141
140
|
let prefetchData;
|
|
142
|
-
const end = (0,
|
|
141
|
+
const end = (0, import_time.time)();
|
|
143
142
|
try {
|
|
144
143
|
prefetchData = yield (0, import_prefetch.default)(this.App, context);
|
|
145
144
|
this.result.renderLevel = import_types.RenderLevel.SERVER_PREFETCH;
|
|
@@ -156,7 +155,7 @@ class Entry {
|
|
|
156
155
|
}
|
|
157
156
|
renderToString(context) {
|
|
158
157
|
let html = "";
|
|
159
|
-
const end = (0,
|
|
158
|
+
const end = (0, import_time.time)();
|
|
160
159
|
const { ssrContext } = context;
|
|
161
160
|
try {
|
|
162
161
|
const App = import_react.default.createElement(this.App, {
|
|
@@ -48,7 +48,7 @@ __export(renderToString_exports, {
|
|
|
48
48
|
module.exports = __toCommonJS(renderToString_exports);
|
|
49
49
|
var import_ssr = require("@modern-js/utils/ssr");
|
|
50
50
|
var import_prerender = require("../../react/prerender");
|
|
51
|
-
var
|
|
51
|
+
var import_time = require("../time");
|
|
52
52
|
var import_entry = __toESM(require("./entry"));
|
|
53
53
|
const render = ({
|
|
54
54
|
App,
|
|
@@ -63,7 +63,7 @@ const render = ({
|
|
|
63
63
|
config
|
|
64
64
|
});
|
|
65
65
|
entry.metrics.emitCounter("app.visit.count", 1);
|
|
66
|
-
const end = (0,
|
|
66
|
+
const end = (0, import_time.time)();
|
|
67
67
|
const html = yield entry.renderToHtml(context);
|
|
68
68
|
const cost = end();
|
|
69
69
|
entry.logger.info("App Render Total cost = %d ms", cost);
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
21
|
+
mod
|
|
22
|
+
));
|
|
23
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
24
|
+
var __async = (__this, __arguments, generator) => {
|
|
25
|
+
return new Promise((resolve, reject) => {
|
|
26
|
+
var fulfilled = (value) => {
|
|
27
|
+
try {
|
|
28
|
+
step(generator.next(value));
|
|
29
|
+
} catch (e) {
|
|
30
|
+
reject(e);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
var rejected = (value) => {
|
|
34
|
+
try {
|
|
35
|
+
step(generator.throw(value));
|
|
36
|
+
} catch (e) {
|
|
37
|
+
reject(e);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
41
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
var index_worker_exports = {};
|
|
45
|
+
__export(index_worker_exports, {
|
|
46
|
+
render: () => render
|
|
47
|
+
});
|
|
48
|
+
module.exports = __toCommonJS(index_worker_exports);
|
|
49
|
+
var import_prerender = require("../../react/prerender");
|
|
50
|
+
var import_time = require("../time");
|
|
51
|
+
var import_entry = __toESM(require("./entry"));
|
|
52
|
+
const render = (_0) => __async(void 0, [_0], function* ({
|
|
53
|
+
App,
|
|
54
|
+
context,
|
|
55
|
+
config
|
|
56
|
+
}) {
|
|
57
|
+
const ssrContext = context.ssrContext;
|
|
58
|
+
const entry = new import_entry.default({
|
|
59
|
+
ctx: ssrContext,
|
|
60
|
+
App,
|
|
61
|
+
config
|
|
62
|
+
});
|
|
63
|
+
entry.metrics.emitCounter("app.visit.count", 1);
|
|
64
|
+
const end = (0, import_time.time)();
|
|
65
|
+
const html = yield entry.renderToHtml(context);
|
|
66
|
+
const cost = end();
|
|
67
|
+
entry.logger.info("App Render Total cost = %d ms", cost);
|
|
68
|
+
entry.metrics.emitTimer("app.render.cost", cost);
|
|
69
|
+
const cacheConfig = import_prerender.PreRender.config();
|
|
70
|
+
if (cacheConfig) {
|
|
71
|
+
context.ssrContext.cacheConfig = cacheConfig;
|
|
72
|
+
}
|
|
73
|
+
return html;
|
|
74
|
+
});
|
|
75
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
76
|
+
0 && (module.exports = {
|
|
77
|
+
render
|
|
78
|
+
});
|
|
@@ -0,0 +1,36 @@
|
|
|
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 time_exports = {};
|
|
19
|
+
__export(time_exports, {
|
|
20
|
+
time: () => time
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(time_exports);
|
|
23
|
+
const getLatency = (hrtime) => {
|
|
24
|
+
const [s, ns] = process.hrtime(hrtime);
|
|
25
|
+
return s * 1e3 + ns / 1e6;
|
|
26
|
+
};
|
|
27
|
+
const time = () => {
|
|
28
|
+
const hrtime = process.hrtime();
|
|
29
|
+
return () => {
|
|
30
|
+
return getLatency(hrtime);
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
34
|
+
0 && (module.exports = {
|
|
35
|
+
time
|
|
36
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
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 time_worker_exports = {};
|
|
19
|
+
__export(time_worker_exports, {
|
|
20
|
+
time: () => time
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(time_worker_exports);
|
|
23
|
+
function processHrtime(previousTimestamp) {
|
|
24
|
+
const now = new Date().getTime();
|
|
25
|
+
const clocktime = now * 1e-3;
|
|
26
|
+
let seconds = Math.floor(clocktime);
|
|
27
|
+
let nanoseconds = Math.floor(clocktime % 1 * 1e9);
|
|
28
|
+
if (previousTimestamp) {
|
|
29
|
+
seconds -= previousTimestamp[0];
|
|
30
|
+
nanoseconds -= previousTimestamp[1];
|
|
31
|
+
if (nanoseconds < 0) {
|
|
32
|
+
seconds--;
|
|
33
|
+
nanoseconds += 1e9;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return [seconds, nanoseconds];
|
|
37
|
+
}
|
|
38
|
+
const getLatency = (hrtime) => {
|
|
39
|
+
const [s, ns] = processHrtime(hrtime);
|
|
40
|
+
return s * 1e3 + ns / 1e6;
|
|
41
|
+
};
|
|
42
|
+
const time = () => {
|
|
43
|
+
const hrtime = processHrtime();
|
|
44
|
+
return () => {
|
|
45
|
+
return getLatency(hrtime);
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
49
|
+
0 && (module.exports = {
|
|
50
|
+
time
|
|
51
|
+
});
|
|
@@ -17,8 +17,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
18
|
var utils_exports = {};
|
|
19
19
|
__export(utils_exports, {
|
|
20
|
-
getLoadableScripts: () => getLoadableScripts
|
|
21
|
-
time: () => time
|
|
20
|
+
getLoadableScripts: () => getLoadableScripts
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(utils_exports);
|
|
24
23
|
function getLoadableScripts(extractor) {
|
|
@@ -29,18 +28,7 @@ function getLoadableScripts(extractor) {
|
|
|
29
28
|
}
|
|
30
29
|
return scripts.split("<\/script>").slice(0, 2).map((i) => `${i}<\/script>`).join("");
|
|
31
30
|
}
|
|
32
|
-
const getLatency = (hrtime) => {
|
|
33
|
-
const [s, ns] = process.hrtime(hrtime);
|
|
34
|
-
return s * 1e3 + ns / 1e6;
|
|
35
|
-
};
|
|
36
|
-
const time = () => {
|
|
37
|
-
const hrtime = process.hrtime();
|
|
38
|
-
return () => {
|
|
39
|
-
return getLatency(hrtime);
|
|
40
|
-
};
|
|
41
|
-
};
|
|
42
31
|
// Annotate the CommonJS export names for ESM import in node:
|
|
43
32
|
0 && (module.exports = {
|
|
44
|
-
getLoadableScripts
|
|
45
|
-
time
|
|
33
|
+
getLoadableScripts
|
|
46
34
|
});
|
|
@@ -270,8 +270,8 @@ var createApp = function(param) {
|
|
|
270
270
|
}, {
|
|
271
271
|
onLast: function(param) {
|
|
272
272
|
var context1 = param.context;
|
|
273
|
-
var
|
|
274
|
-
return App2 === null || App2 === void 0 ? void 0 : (
|
|
273
|
+
var _App2_init;
|
|
274
|
+
return App2 === null || App2 === void 0 ? void 0 : (_App2_init = App2.init) === null || _App2_init === void 0 ? void 0 : _App2_init.call(App2, context1);
|
|
275
275
|
}
|
|
276
276
|
});
|
|
277
277
|
}
|
|
@@ -289,7 +289,7 @@ var createApp = function(param) {
|
|
|
289
289
|
};
|
|
290
290
|
var bootstrap = function() {
|
|
291
291
|
var _ref = _asyncToGenerator(function(BootApp, id, root, ReactDOM) {
|
|
292
|
-
var App, runner, context, runInit, isBrowser,
|
|
292
|
+
var App, runner, context, runInit, isBrowser, _ssrData_data, _ssrData_data1, ssrData, loadersData, initialLoadersState, initialData, rootElement, ModernRender, ModernHydrate, isRedirectResponse, initialData1;
|
|
293
293
|
return __generator(this, function(_state) {
|
|
294
294
|
switch(_state.label){
|
|
295
295
|
case 0:
|
|
@@ -308,8 +308,8 @@ var bootstrap = function() {
|
|
|
308
308
|
}, {
|
|
309
309
|
onLast: function(param) {
|
|
310
310
|
var context1 = param.context;
|
|
311
|
-
var
|
|
312
|
-
return App === null || App === void 0 ? void 0 : (
|
|
311
|
+
var _App_init;
|
|
312
|
+
return App === null || App === void 0 ? void 0 : (_App_init = App.init) === null || _App_init === void 0 ? void 0 : _App_init.call(App, context1);
|
|
313
313
|
}
|
|
314
314
|
});
|
|
315
315
|
};
|
|
@@ -331,7 +331,7 @@ var bootstrap = function() {
|
|
|
331
331
|
2
|
|
332
332
|
];
|
|
333
333
|
ssrData = window._SSR_DATA;
|
|
334
|
-
loadersData = (ssrData === null || ssrData === void 0 ? void 0 : (
|
|
334
|
+
loadersData = (ssrData === null || ssrData === void 0 ? void 0 : (_ssrData_data = ssrData.data) === null || _ssrData_data === void 0 ? void 0 : _ssrData_data.loadersData) || {};
|
|
335
335
|
initialLoadersState = Object.keys(loadersData).reduce(function(res, key) {
|
|
336
336
|
var loaderData = loadersData[key];
|
|
337
337
|
if (loaderData.loading !== false) {
|
|
@@ -347,7 +347,7 @@ var bootstrap = function() {
|
|
|
347
347
|
}, ssrData ? {
|
|
348
348
|
ssrContext: ssrData === null || ssrData === void 0 ? void 0 : ssrData.context
|
|
349
349
|
} : {}));
|
|
350
|
-
context.initialData = ssrData === null || ssrData === void 0 ? void 0 : (
|
|
350
|
+
context.initialData = ssrData === null || ssrData === void 0 ? void 0 : (_ssrData_data1 = ssrData.data) === null || _ssrData_data1 === void 0 ? void 0 : _ssrData_data1.initialData;
|
|
351
351
|
return [
|
|
352
352
|
4,
|
|
353
353
|
runInit(context)
|
|
@@ -430,6 +430,7 @@ var bootstrap = function() {
|
|
|
430
430
|
if (ssrContext) {
|
|
431
431
|
ssrContext.res.statusCode = status;
|
|
432
432
|
ssrContext.res.setHeader("Location", redirectUrl);
|
|
433
|
+
ssrContext.redirection = ssrContext.redirection || {};
|
|
433
434
|
ssrContext.redirection.status = status;
|
|
434
435
|
ssrContext.redirection.url = redirectUrl;
|
|
435
436
|
}
|
|
@@ -293,7 +293,7 @@ var createLoader = function(id) {
|
|
|
293
293
|
};
|
|
294
294
|
var createLoaderManager = function(initialDataMap) {
|
|
295
295
|
var managerOptions = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
296
|
-
var
|
|
296
|
+
var _managerOptions_skipStatic = managerOptions.skipStatic, skipStatic = _managerOptions_skipStatic === void 0 ? false : _managerOptions_skipStatic, _managerOptions_skipNonStatic = managerOptions.skipNonStatic, skipNonStatic = _managerOptions_skipNonStatic === void 0 ? false : _managerOptions_skipNonStatic;
|
|
297
297
|
var loadersMap = /* @__PURE__ */ new Map();
|
|
298
298
|
var getId = createGetId();
|
|
299
299
|
var add = function(loaderFn, loaderOptions) {
|
|
@@ -342,7 +342,7 @@ var createLoaderManager = function(initialDataMap) {
|
|
|
342
342
|
};
|
|
343
343
|
var awaitPendingLoaders = function() {
|
|
344
344
|
var _ref = _asyncToGenerator(function() {
|
|
345
|
-
var pendingLoaders, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step,
|
|
345
|
+
var pendingLoaders, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _step_value, id, loader, promise;
|
|
346
346
|
return __generator(this, function(_state) {
|
|
347
347
|
switch(_state.label){
|
|
348
348
|
case 0:
|
|
@@ -350,7 +350,7 @@ var createLoaderManager = function(initialDataMap) {
|
|
|
350
350
|
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
351
351
|
try {
|
|
352
352
|
for(_iterator = loadersMap[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
353
|
-
|
|
353
|
+
_step_value = _slicedToArray(_step.value, 2), id = _step_value[0], loader = _step_value[1];
|
|
354
354
|
promise = loader.promise;
|
|
355
355
|
if (_instanceof(promise, Promise)) {
|
|
356
356
|
pendingLoaders.push([
|
|
@@ -120,10 +120,10 @@ var useLoader = function(loaderFn) {
|
|
|
120
120
|
delete options._cache;
|
|
121
121
|
}
|
|
122
122
|
var load = useCallback(function(params) {
|
|
123
|
-
var
|
|
123
|
+
var _unlistenLoaderChangeRef_current, _window__SSR_DATA_data_loadersData_id, _window__SSR_DATA, _window__SSR_DATA_data, _loaderRef_current;
|
|
124
124
|
if (typeof params === "undefined") {
|
|
125
|
-
var
|
|
126
|
-
return (
|
|
125
|
+
var _loaderRef_current1;
|
|
126
|
+
return (_loaderRef_current1 = loaderRef.current) === null || _loaderRef_current1 === void 0 ? void 0 : _loaderRef_current1.load();
|
|
127
127
|
}
|
|
128
128
|
var id = loaderManager.add(function() {
|
|
129
129
|
try {
|
|
@@ -139,26 +139,26 @@ var useLoader = function(loaderFn) {
|
|
|
139
139
|
params: params
|
|
140
140
|
}));
|
|
141
141
|
loaderRef.current = loaderManager.get(id);
|
|
142
|
-
(
|
|
142
|
+
(_unlistenLoaderChangeRef_current = unlistenLoaderChangeRef.current) === null || _unlistenLoaderChangeRef_current === void 0 ? void 0 : _unlistenLoaderChangeRef_current.call(unlistenLoaderChangeRef);
|
|
143
143
|
if (isSSRRender) {
|
|
144
144
|
return void 0;
|
|
145
145
|
}
|
|
146
146
|
if (options.skip) {
|
|
147
147
|
return void 0;
|
|
148
148
|
}
|
|
149
|
-
if (context._hydration && ((
|
|
149
|
+
if (context._hydration && ((_window__SSR_DATA_data_loadersData_id = window === null || window === void 0 ? void 0 : (_window__SSR_DATA = window._SSR_DATA) === null || _window__SSR_DATA === void 0 ? void 0 : (_window__SSR_DATA_data = _window__SSR_DATA.data) === null || _window__SSR_DATA_data === void 0 ? void 0 : _window__SSR_DATA_data.loadersData[id]) === null || _window__SSR_DATA_data_loadersData_id === void 0 ? void 0 : _window__SSR_DATA_data_loadersData_id.error) === null) {
|
|
150
150
|
return void 0;
|
|
151
151
|
}
|
|
152
152
|
var res = loaderRef.current.load();
|
|
153
|
-
unlistenLoaderChangeRef.current = (
|
|
153
|
+
unlistenLoaderChangeRef.current = (_loaderRef_current = loaderRef.current) === null || _loaderRef_current === void 0 ? void 0 : _loaderRef_current.onChange(function(_status, _result) {
|
|
154
154
|
setResult(_result);
|
|
155
155
|
if (_status === LoaderStatus.fulfilled) {
|
|
156
|
-
var
|
|
157
|
-
options === null || options === void 0 ? void 0 : (
|
|
156
|
+
var _options_onSuccess;
|
|
157
|
+
options === null || options === void 0 ? void 0 : (_options_onSuccess = options.onSuccess) === null || _options_onSuccess === void 0 ? void 0 : _options_onSuccess.call(options, _result.data);
|
|
158
158
|
}
|
|
159
159
|
if (_status === LoaderStatus.rejected) {
|
|
160
|
-
var
|
|
161
|
-
options === null || options === void 0 ? void 0 : (
|
|
160
|
+
var _options_onError;
|
|
161
|
+
options === null || options === void 0 ? void 0 : (_options_onError = options.onError) === null || _options_onError === void 0 ? void 0 : _options_onError.call(options, _result.error);
|
|
162
162
|
}
|
|
163
163
|
});
|
|
164
164
|
return res;
|
|
@@ -167,19 +167,19 @@ var useLoader = function(loaderFn) {
|
|
|
167
167
|
]);
|
|
168
168
|
useEffect(function() {
|
|
169
169
|
return function() {
|
|
170
|
-
var
|
|
171
|
-
(
|
|
170
|
+
var _unlistenLoaderChangeRef_current;
|
|
171
|
+
(_unlistenLoaderChangeRef_current = unlistenLoaderChangeRef.current) === null || _unlistenLoaderChangeRef_current === void 0 ? void 0 : _unlistenLoaderChangeRef_current.call(unlistenLoaderChangeRef);
|
|
172
172
|
};
|
|
173
173
|
}, []);
|
|
174
174
|
useMemo(function() {
|
|
175
|
-
var
|
|
176
|
-
var p = (
|
|
175
|
+
var _options_params;
|
|
176
|
+
var p = (_options_params = options.params) !== null && _options_params !== void 0 ? _options_params : loaderFn.id;
|
|
177
177
|
invariant(typeof p !== "undefined" && p !== null, "Params is required in useLoader");
|
|
178
178
|
load(p);
|
|
179
179
|
}, [
|
|
180
180
|
options.params
|
|
181
181
|
]);
|
|
182
|
-
var
|
|
182
|
+
var _useState = _slicedToArray(useState(loaderRef.current.result), 2), result = _useState[0], setResult = _useState[1];
|
|
183
183
|
return _objectSpreadProps(_objectSpread({}, result), {
|
|
184
184
|
reload: load
|
|
185
185
|
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useContext } from "react";
|
|
3
3
|
import { DOCUMENT_CHUNKSMAP_PLACEHOLDER, DOCUMENT_SSRDATASCRIPT_PLACEHOLDER } from "./constants";
|
|
4
|
-
import {
|
|
4
|
+
import { DocumentStructureContext } from "./DocumentStructureContext";
|
|
5
5
|
import { DefaultRoot } from "./Root";
|
|
6
6
|
function Body(props) {
|
|
7
|
-
var hasSetRoot = useContext(
|
|
7
|
+
var hasSetRoot = useContext(DocumentStructureContext).hasSetRoot;
|
|
8
8
|
var children = props.children;
|
|
9
9
|
return /* @__PURE__ */ jsxs("body", {
|
|
10
10
|
children: [
|
package/dist/js/treeshaking/document/{DocumentStructrueContext.js → DocumentStructureContext.js}
RENAMED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
var
|
|
2
|
+
var DocumentStructureContext = React.createContext({
|
|
3
3
|
hasSetHead: false,
|
|
4
4
|
hasSetScripts: false,
|
|
5
5
|
hasSetBody: false,
|
|
6
6
|
hasSetRoot: false,
|
|
7
7
|
hasSetLinks: false
|
|
8
8
|
});
|
|
9
|
-
export {
|
|
9
|
+
export { DocumentStructureContext };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useContext } from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { DocumentStructureContext } from "./DocumentStructureContext";
|
|
4
4
|
import { Scripts } from "./Scripts";
|
|
5
5
|
import { Links } from "./Links";
|
|
6
6
|
import { DOCUMENT_META_PLACEHOLDER } from "./constants";
|
|
7
7
|
function Head(props) {
|
|
8
|
-
var
|
|
8
|
+
var _useContext = useContext(DocumentStructureContext), hasSetScripts = _useContext.hasSetScripts, hasSetLinks = _useContext.hasSetLinks;
|
|
9
9
|
var children = props.children;
|
|
10
10
|
return /* @__PURE__ */ jsxs("head", {
|
|
11
11
|
children: [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Body } from "./Body";
|
|
3
|
-
import {
|
|
3
|
+
import { DocumentStructureContext } from "./DocumentStructureContext";
|
|
4
4
|
import { Head } from "./Head";
|
|
5
5
|
function findTargetChild(tag, children) {
|
|
6
6
|
return children.find(function(item) {
|
|
@@ -19,11 +19,11 @@ function findTargetElement(tag, children) {
|
|
|
19
19
|
try {
|
|
20
20
|
for(var _iterator = children[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
21
21
|
var item = _step.value;
|
|
22
|
-
var
|
|
22
|
+
var _item_props;
|
|
23
23
|
if (tag === getEleType(item)) {
|
|
24
24
|
return item;
|
|
25
25
|
}
|
|
26
|
-
if (item === null || item === void 0 ? void 0 : (
|
|
26
|
+
if (item === null || item === void 0 ? void 0 : (_item_props = item.props) === null || _item_props === void 0 ? void 0 : _item_props.children) {
|
|
27
27
|
nextChildren = nextChildren.concat(item.props.children);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -79,7 +79,7 @@ function Html(props) {
|
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
81
|
return /* @__PURE__ */ jsx("html", {
|
|
82
|
-
children: /* @__PURE__ */ jsxs(
|
|
82
|
+
children: /* @__PURE__ */ jsxs(DocumentStructureContext.Provider, {
|
|
83
83
|
value: {
|
|
84
84
|
hasSetHead: hasSetHead,
|
|
85
85
|
hasSetScripts: hasSetScripts,
|
|
@@ -4,7 +4,7 @@ import { DocumentContext } from "./DocumentContext";
|
|
|
4
4
|
import { DOCUMENT_SSR_PLACEHOLDER } from "./constants";
|
|
5
5
|
function Root(props) {
|
|
6
6
|
var rootId = props.rootId, children = props.children;
|
|
7
|
-
var
|
|
7
|
+
var _useContext = useContext(DocumentContext), _useContext_templateParams = _useContext.templateParams, _useContext_templateParams_mountId = _useContext_templateParams.mountId, mountId = _useContext_templateParams_mountId === void 0 ? "root" : _useContext_templateParams_mountId;
|
|
8
8
|
return /* @__PURE__ */ jsxs("div", {
|
|
9
9
|
id: "".concat(rootId || mountId),
|
|
10
10
|
children: [
|
|
@@ -14,7 +14,7 @@ function Root(props) {
|
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
function DefaultRoot(props) {
|
|
17
|
-
var
|
|
17
|
+
var _useContext = useContext(DocumentContext), _useContext_templateParams = _useContext.templateParams, _useContext_templateParams_mountId = _useContext_templateParams.mountId, mountId = _useContext_templateParams_mountId === void 0 ? "root" : _useContext_templateParams_mountId;
|
|
18
18
|
return /* @__PURE__ */ jsxs("div", {
|
|
19
19
|
id: "".concat(mountId),
|
|
20
20
|
children: [
|