@modern-js/prod-server 2.40.0 → 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/workerServer.js
CHANGED
|
@@ -29,6 +29,7 @@ var import_hook_api = require("./libs/hook-api/index.worker");
|
|
|
29
29
|
var import_route = require("./libs/route");
|
|
30
30
|
var import_metrics = require("./libs/metrics");
|
|
31
31
|
var import_reporter = require("./libs/reporter");
|
|
32
|
+
const calcFallback = (metaName) => `x-${metaName.split(/[-_]/)[0]}-ssr-fallback`;
|
|
32
33
|
class ReturnResponse {
|
|
33
34
|
/**
|
|
34
35
|
* Iterate a Object
|
|
@@ -91,7 +92,8 @@ const checkIsSent = (context) => {
|
|
|
91
92
|
const middlewarePipeline = (0, import_plugin.createAsyncPipeline)();
|
|
92
93
|
const createHandler = (manifest) => {
|
|
93
94
|
const routeMgr = new import_route.RouteMatchManager();
|
|
94
|
-
const { pages, routes, options: manifestOpts
|
|
95
|
+
const { pages, routes, options: manifestOpts } = manifest;
|
|
96
|
+
const { metaName = "modern-js", forceCSR = false } = manifestOpts || {};
|
|
95
97
|
routeMgr.reset(routes);
|
|
96
98
|
return async (options) => {
|
|
97
99
|
var _page_serverHooks_afterMatch, _page_serverHooks;
|
|
@@ -103,7 +105,7 @@ const createHandler = (manifest) => {
|
|
|
103
105
|
}
|
|
104
106
|
const entryName = pageMatch.spec.urlPath;
|
|
105
107
|
const page = pages[entryName];
|
|
106
|
-
if (
|
|
108
|
+
if (forceCSR && url.searchParams.get("csr") === "1") {
|
|
107
109
|
return createResponse(page.template);
|
|
108
110
|
}
|
|
109
111
|
const logger = (0, import_logger.createLogger)({
|
|
@@ -125,6 +127,9 @@ const createHandler = (manifest) => {
|
|
|
125
127
|
if (checkIsSent(hookContext)) {
|
|
126
128
|
return new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers);
|
|
127
129
|
}
|
|
130
|
+
if (forceCSR && middlewarsHookContext.request.headers[calcFallback(metaName)]) {
|
|
131
|
+
return createResponse(page.template);
|
|
132
|
+
}
|
|
128
133
|
const responseLike = {
|
|
129
134
|
headers: {},
|
|
130
135
|
statusCode: 200,
|
|
@@ -217,6 +222,7 @@ function createWorkerHookContext(url, logger, metrics, reporter) {
|
|
|
217
222
|
reporter
|
|
218
223
|
};
|
|
219
224
|
}
|
|
225
|
+
let appliedMiddlewares = false;
|
|
220
226
|
function applyMiddlewares(ctx, middleware) {
|
|
221
227
|
if (middleware) {
|
|
222
228
|
const middlewares = (() => {
|
|
@@ -228,9 +234,12 @@ function applyMiddlewares(ctx, middleware) {
|
|
|
228
234
|
];
|
|
229
235
|
}
|
|
230
236
|
})();
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
237
|
+
if (!appliedMiddlewares) {
|
|
238
|
+
middlewares.forEach((middleware2) => {
|
|
239
|
+
middlewarePipeline.use(middleware2);
|
|
240
|
+
});
|
|
241
|
+
appliedMiddlewares = true;
|
|
242
|
+
}
|
|
234
243
|
middlewarePipeline.run(ctx, {
|
|
235
244
|
onLast: () => void 0
|
|
236
245
|
});
|
package/dist/esm/workerServer.js
CHANGED
|
@@ -10,6 +10,9 @@ import { createAfterMatchContext, createAfterRenderContext, createMiddlewareCont
|
|
|
10
10
|
import { RouteMatchManager } from "./libs/route";
|
|
11
11
|
import { metrics as defaultMetrics } from "./libs/metrics";
|
|
12
12
|
import { defaultReporter } from "./libs/reporter";
|
|
13
|
+
var calcFallback = function(metaName) {
|
|
14
|
+
return "x-".concat(metaName.split(/[-_]/)[0], "-ssr-fallback");
|
|
15
|
+
};
|
|
13
16
|
var ReturnResponse = /* @__PURE__ */ function() {
|
|
14
17
|
"use strict";
|
|
15
18
|
function ReturnResponse2(body, status) {
|
|
@@ -88,10 +91,11 @@ var checkIsSent = function(context) {
|
|
|
88
91
|
var middlewarePipeline = createAsyncPipeline();
|
|
89
92
|
var createHandler = function(manifest) {
|
|
90
93
|
var routeMgr = new RouteMatchManager();
|
|
91
|
-
var pages = manifest.pages, routes = manifest.routes,
|
|
94
|
+
var pages = manifest.pages, routes = manifest.routes, manifestOpts = manifest.options;
|
|
95
|
+
var _ref = manifestOpts || {}, _ref_metaName = _ref.metaName, metaName = _ref_metaName === void 0 ? "modern-js" : _ref_metaName, _ref_forceCSR = _ref.forceCSR, forceCSR = _ref_forceCSR === void 0 ? false : _ref_forceCSR;
|
|
92
96
|
routeMgr.reset(routes);
|
|
93
97
|
return function() {
|
|
94
|
-
var
|
|
98
|
+
var _ref2 = _async_to_generator(function(options) {
|
|
95
99
|
var _page_serverHooks_afterMatch, _page_serverHooks, request, loadableStats, routeManifest, url, pageMatch, entryName, page, logger, metrics, reporter, hookContext, afterMatchHookContext, _page_serverHooks1, _page_serverHooks_afterRender, _page_serverHooks2, middlewarsHookContext, responseLike, params, baseUrl, serverRenderContext, body, afterRenderHookContext, e;
|
|
96
100
|
function createServerRequest(url2, baseUrl2, request2, params2) {
|
|
97
101
|
var pathname = url2.pathname, host = url2.host, searchParams = url2.searchParams;
|
|
@@ -125,7 +129,7 @@ var createHandler = function(manifest) {
|
|
|
125
129
|
}
|
|
126
130
|
entryName = pageMatch.spec.urlPath;
|
|
127
131
|
page = pages[entryName];
|
|
128
|
-
if (
|
|
132
|
+
if (forceCSR && url.searchParams.get("csr") === "1") {
|
|
129
133
|
return [
|
|
130
134
|
2,
|
|
131
135
|
createResponse(page.template)
|
|
@@ -168,6 +172,12 @@ var createHandler = function(manifest) {
|
|
|
168
172
|
new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers)
|
|
169
173
|
];
|
|
170
174
|
}
|
|
175
|
+
if (forceCSR && middlewarsHookContext.request.headers[calcFallback(metaName)]) {
|
|
176
|
+
return [
|
|
177
|
+
2,
|
|
178
|
+
createResponse(page.template)
|
|
179
|
+
];
|
|
180
|
+
}
|
|
171
181
|
responseLike = {
|
|
172
182
|
headers: {},
|
|
173
183
|
statusCode: 200,
|
|
@@ -238,7 +248,7 @@ var createHandler = function(manifest) {
|
|
|
238
248
|
});
|
|
239
249
|
});
|
|
240
250
|
return function(options) {
|
|
241
|
-
return
|
|
251
|
+
return _ref2.apply(this, arguments);
|
|
242
252
|
};
|
|
243
253
|
}();
|
|
244
254
|
};
|
|
@@ -267,6 +277,7 @@ function createWorkerHookContext(url, logger, metrics, reporter) {
|
|
|
267
277
|
reporter
|
|
268
278
|
};
|
|
269
279
|
}
|
|
280
|
+
var appliedMiddlewares = false;
|
|
270
281
|
function applyMiddlewares(ctx, middleware) {
|
|
271
282
|
if (middleware) {
|
|
272
283
|
var middlewares = function() {
|
|
@@ -278,9 +289,12 @@ function applyMiddlewares(ctx, middleware) {
|
|
|
278
289
|
];
|
|
279
290
|
}
|
|
280
291
|
}();
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
292
|
+
if (!appliedMiddlewares) {
|
|
293
|
+
middlewares.forEach(function(middleware2) {
|
|
294
|
+
middlewarePipeline.use(middleware2);
|
|
295
|
+
});
|
|
296
|
+
appliedMiddlewares = true;
|
|
297
|
+
}
|
|
284
298
|
middlewarePipeline.run(ctx, {
|
|
285
299
|
onLast: function() {
|
|
286
300
|
return void 0;
|
|
@@ -5,6 +5,7 @@ import { createAfterMatchContext, createAfterRenderContext, createMiddlewareCont
|
|
|
5
5
|
import { RouteMatchManager } from "./libs/route";
|
|
6
6
|
import { metrics as defaultMetrics } from "./libs/metrics";
|
|
7
7
|
import { defaultReporter } from "./libs/reporter";
|
|
8
|
+
const calcFallback = (metaName) => `x-${metaName.split(/[-_]/)[0]}-ssr-fallback`;
|
|
8
9
|
class ReturnResponse {
|
|
9
10
|
/**
|
|
10
11
|
* Iterate a Object
|
|
@@ -67,7 +68,8 @@ const checkIsSent = (context) => {
|
|
|
67
68
|
const middlewarePipeline = createAsyncPipeline();
|
|
68
69
|
const createHandler = (manifest) => {
|
|
69
70
|
const routeMgr = new RouteMatchManager();
|
|
70
|
-
const { pages, routes, options: manifestOpts
|
|
71
|
+
const { pages, routes, options: manifestOpts } = manifest;
|
|
72
|
+
const { metaName = "modern-js", forceCSR = false } = manifestOpts || {};
|
|
71
73
|
routeMgr.reset(routes);
|
|
72
74
|
return async (options) => {
|
|
73
75
|
var _page_serverHooks_afterMatch, _page_serverHooks;
|
|
@@ -79,7 +81,7 @@ const createHandler = (manifest) => {
|
|
|
79
81
|
}
|
|
80
82
|
const entryName = pageMatch.spec.urlPath;
|
|
81
83
|
const page = pages[entryName];
|
|
82
|
-
if (
|
|
84
|
+
if (forceCSR && url.searchParams.get("csr") === "1") {
|
|
83
85
|
return createResponse(page.template);
|
|
84
86
|
}
|
|
85
87
|
const logger = createLogger({
|
|
@@ -101,6 +103,9 @@ const createHandler = (manifest) => {
|
|
|
101
103
|
if (checkIsSent(hookContext)) {
|
|
102
104
|
return new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers);
|
|
103
105
|
}
|
|
106
|
+
if (forceCSR && middlewarsHookContext.request.headers[calcFallback(metaName)]) {
|
|
107
|
+
return createResponse(page.template);
|
|
108
|
+
}
|
|
104
109
|
const responseLike = {
|
|
105
110
|
headers: {},
|
|
106
111
|
statusCode: 200,
|
|
@@ -193,6 +198,7 @@ function createWorkerHookContext(url, logger, metrics, reporter) {
|
|
|
193
198
|
reporter
|
|
194
199
|
};
|
|
195
200
|
}
|
|
201
|
+
let appliedMiddlewares = false;
|
|
196
202
|
function applyMiddlewares(ctx, middleware) {
|
|
197
203
|
if (middleware) {
|
|
198
204
|
const middlewares = (() => {
|
|
@@ -204,9 +210,12 @@ function applyMiddlewares(ctx, middleware) {
|
|
|
204
210
|
];
|
|
205
211
|
}
|
|
206
212
|
})();
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
213
|
+
if (!appliedMiddlewares) {
|
|
214
|
+
middlewares.forEach((middleware2) => {
|
|
215
|
+
middlewarePipeline.use(middleware2);
|
|
216
|
+
});
|
|
217
|
+
appliedMiddlewares = true;
|
|
218
|
+
}
|
|
210
219
|
middlewarePipeline.run(ctx, {
|
|
211
220
|
onLast: () => void 0
|
|
212
221
|
});
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
/// <reference types="node" />
|
|
4
4
|
/// <reference types="node/http" />
|
|
5
|
-
/// <reference types=".dts-temp/
|
|
5
|
+
/// <reference types=".dts-temp/MyKuaUY5TchUfAps6LPPb/src/type" />
|
|
6
6
|
import { IncomingMessage, ServerResponse } from 'http';
|
|
7
7
|
import qs from 'querystring';
|
|
8
8
|
import type { ModernServerContext as ModernServerContextInterface, Reporter as ModernServerReporter, ServerTiming as ModernServerTiming } from '@modern-js/types';
|
package/dist/types/utils.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node/http" />
|
|
3
|
-
/// <reference types=".dts-temp/
|
|
3
|
+
/// <reference types=".dts-temp/MyKuaUY5TchUfAps6LPPb/src/type" />
|
|
4
4
|
import { IncomingMessage } from 'http';
|
|
5
5
|
import type { OutputNormalizedConfig, HtmlNormalizedConfig } from '@modern-js/server-core';
|
|
6
6
|
export declare const debug: any;
|
package/package.json
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"modern",
|
|
16
16
|
"modern.js"
|
|
17
17
|
],
|
|
18
|
-
"version": "2.
|
|
18
|
+
"version": "2.41.0",
|
|
19
19
|
"jsnext:source": "./src/index.ts",
|
|
20
20
|
"types": "./dist/types/index.d.ts",
|
|
21
21
|
"main": "./dist/cjs/index.js",
|
|
@@ -63,24 +63,24 @@
|
|
|
63
63
|
}
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
|
-
"@swc/helpers": "0.5.
|
|
67
|
-
"cookie": "
|
|
66
|
+
"@swc/helpers": "0.5.3",
|
|
67
|
+
"cookie": "0.5.0",
|
|
68
68
|
"etag": "^1.8.1",
|
|
69
69
|
"fresh": "^0.5.2",
|
|
70
|
-
"http-proxy-middleware": "^2.0.
|
|
70
|
+
"http-proxy-middleware": "^2.0.4",
|
|
71
71
|
"ignore-styles": "^5.0.1",
|
|
72
72
|
"lru-cache": "^6.0.0",
|
|
73
73
|
"merge-deep": "^3.0.3",
|
|
74
74
|
"node-html-parser": "^6.1.5",
|
|
75
75
|
"path-to-regexp": "^6.2.0",
|
|
76
76
|
"serve-static": "^1.14.1",
|
|
77
|
-
"@modern-js/plugin": "2.
|
|
78
|
-
"@modern-js/server-core": "2.
|
|
79
|
-
"@modern-js/utils": "2.
|
|
80
|
-
"@modern-js/runtime-utils": "2.
|
|
77
|
+
"@modern-js/plugin": "2.41.0",
|
|
78
|
+
"@modern-js/server-core": "2.41.0",
|
|
79
|
+
"@modern-js/utils": "2.41.0",
|
|
80
|
+
"@modern-js/runtime-utils": "2.41.0"
|
|
81
81
|
},
|
|
82
82
|
"devDependencies": {
|
|
83
|
-
"@types/cookie": "
|
|
83
|
+
"@types/cookie": "0.5.1",
|
|
84
84
|
"@types/etag": "^1.8.1",
|
|
85
85
|
"@types/fresh": "^0.5.0",
|
|
86
86
|
"@types/jest": "^29",
|
|
@@ -89,17 +89,17 @@
|
|
|
89
89
|
"@types/node": "^14",
|
|
90
90
|
"@types/serve-static": "^1.13.10",
|
|
91
91
|
"@types/ws": "^8.5.5",
|
|
92
|
-
"axios": "^1.
|
|
92
|
+
"axios": "^1.6.0",
|
|
93
93
|
"jest": "^29",
|
|
94
94
|
"memfs": "^3.5.1",
|
|
95
95
|
"node-mocks-http": "^1.11.0",
|
|
96
96
|
"portfinder": "^1.0.28",
|
|
97
97
|
"typescript": "^5",
|
|
98
98
|
"ws": "^8.13.0",
|
|
99
|
-
"@modern-js/server-core": "2.
|
|
100
|
-
"@
|
|
101
|
-
"@
|
|
102
|
-
"@scripts/jest-config": "2.
|
|
99
|
+
"@modern-js/server-core": "2.41.0",
|
|
100
|
+
"@scripts/build": "2.41.0",
|
|
101
|
+
"@modern-js/types": "2.41.0",
|
|
102
|
+
"@scripts/jest-config": "2.41.0"
|
|
103
103
|
},
|
|
104
104
|
"sideEffects": false,
|
|
105
105
|
"publishConfig": {
|