@umijs/server 4.0.72 → 4.0.74
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/ssr.js +10 -12
- package/package.json +2 -2
package/dist/ssr.js
CHANGED
|
@@ -37,8 +37,7 @@ var import_react = __toESM(require("react"));
|
|
|
37
37
|
var ReactDomServer = __toESM(require("react-dom/server"));
|
|
38
38
|
var import_react_router_dom = require("react-router-dom");
|
|
39
39
|
var import_stream = require("stream");
|
|
40
|
-
var
|
|
41
|
-
var createJSXProvider = (Provider) => {
|
|
40
|
+
var createJSXProvider = (Provider, serverInsertedHTMLCallbacks) => {
|
|
42
41
|
const JSXProvider = (props) => {
|
|
43
42
|
const addInsertedHtml = import_react.default.useCallback(
|
|
44
43
|
(handler) => {
|
|
@@ -102,19 +101,16 @@ function createJSXGenerator(opts) {
|
|
|
102
101
|
const element = await opts.getClientRootComponent(
|
|
103
102
|
context
|
|
104
103
|
);
|
|
105
|
-
const JSXProvider = createJSXProvider(
|
|
106
|
-
opts.ServerInsertedHTMLContext.Provider
|
|
107
|
-
);
|
|
108
104
|
return {
|
|
109
|
-
element
|
|
105
|
+
element,
|
|
110
106
|
manifest
|
|
111
107
|
};
|
|
112
108
|
};
|
|
113
109
|
}
|
|
114
|
-
var getGenerateStaticHTML = () => {
|
|
110
|
+
var getGenerateStaticHTML = (serverInsertedHTMLCallbacks) => {
|
|
115
111
|
return ReactDomServer.renderToString(
|
|
116
112
|
import_react.default.createElement(import_react.default.Fragment, {
|
|
117
|
-
children: Array.from(serverInsertedHTMLCallbacks).map(
|
|
113
|
+
children: Array.from(serverInsertedHTMLCallbacks || []).map(
|
|
118
114
|
(callback) => callback()
|
|
119
115
|
)
|
|
120
116
|
})
|
|
@@ -122,13 +118,15 @@ var getGenerateStaticHTML = () => {
|
|
|
122
118
|
};
|
|
123
119
|
function createMarkupGenerator(opts) {
|
|
124
120
|
const jsxGeneratorDeferrer = createJSXGenerator(opts);
|
|
125
|
-
const JSXProvider = createJSXProvider(
|
|
126
|
-
opts.ServerInsertedHTMLContext.Provider
|
|
127
|
-
);
|
|
128
121
|
return async (url) => {
|
|
129
122
|
const jsx = await jsxGeneratorDeferrer(url);
|
|
130
123
|
if (jsx) {
|
|
131
124
|
return new Promise(async (resolve, reject) => {
|
|
125
|
+
const serverInsertedHTMLCallbacks = /* @__PURE__ */ new Set();
|
|
126
|
+
const JSXProvider = createJSXProvider(
|
|
127
|
+
opts.ServerInsertedHTMLContext.Provider,
|
|
128
|
+
serverInsertedHTMLCallbacks
|
|
129
|
+
);
|
|
132
130
|
let chunks = [];
|
|
133
131
|
const writable = new import_stream.Writable();
|
|
134
132
|
writable._write = (chunk, _encoding, next) => {
|
|
@@ -137,7 +135,7 @@ function createMarkupGenerator(opts) {
|
|
|
137
135
|
};
|
|
138
136
|
writable.on("finish", async () => {
|
|
139
137
|
let html = Buffer.concat(chunks).toString("utf8");
|
|
140
|
-
html += await getGenerateStaticHTML();
|
|
138
|
+
html += await getGenerateStaticHTML(serverInsertedHTMLCallbacks);
|
|
141
139
|
if (opts.helmetContext) {
|
|
142
140
|
html = html.replace(
|
|
143
141
|
/(<\/head>)/,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@umijs/server",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.74",
|
|
4
4
|
"description": "@umijs/server",
|
|
5
5
|
"homepage": "https://github.com/umijs/umi/tree/master/packages/server#readme",
|
|
6
6
|
"bugs": "https://github.com/umijs/umi/issues",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"react": "18.1.0",
|
|
20
20
|
"react-dom": "18.1.0",
|
|
21
21
|
"react-router-dom": "6.3.0",
|
|
22
|
-
"@umijs/bundler-utils": "4.0.
|
|
22
|
+
"@umijs/bundler-utils": "4.0.74"
|
|
23
23
|
},
|
|
24
24
|
"publishConfig": {
|
|
25
25
|
"access": "public"
|