@modern-js/server 2.48.0 → 2.48.2
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/constants.js +1 -1
- package/dist/cjs/dev-tools/dev-middleware/index.js +0 -4
- package/dist/cjs/dev-tools/dev-middleware/socketServer.js +2 -7
- package/dist/cjs/dev-tools/watcher/dependencyTree.js +0 -3
- package/dist/cjs/dev-tools/watcher/index.js +1 -3
- package/dist/cjs/dev-tools/watcher/statsCache.js +2 -3
- package/dist/cjs/server/devServer.js +6 -40
- package/dist/cjs/server/devServerOld.js +3 -9
- package/dist/cjs/server/workerSSRRender.js +1 -1
- package/dist/esm/constants.js +1 -1
- package/dist/esm/dev-tools/dev-middleware/index.js +42 -58
- package/dist/esm/dev-tools/dev-middleware/socketServer.js +130 -179
- package/dist/esm/dev-tools/watcher/dependencyTree.js +59 -80
- package/dist/esm/dev-tools/watcher/index.js +63 -82
- package/dist/esm/dev-tools/watcher/statsCache.js +55 -76
- package/dist/esm/server/devServer.js +432 -522
- package/dist/esm/server/devServerOld.js +455 -515
- package/dist/esm/server/workerSSRRender.js +1 -1
- package/dist/esm-node/constants.js +1 -1
- package/dist/esm-node/dev-tools/dev-middleware/index.js +0 -4
- package/dist/esm-node/dev-tools/dev-middleware/socketServer.js +2 -7
- package/dist/esm-node/dev-tools/watcher/dependencyTree.js +0 -3
- package/dist/esm-node/dev-tools/watcher/index.js +1 -3
- package/dist/esm-node/dev-tools/watcher/statsCache.js +2 -3
- package/dist/esm-node/server/devServer.js +6 -40
- package/dist/esm-node/server/devServerOld.js +3 -9
- package/dist/esm-node/server/workerSSRRender.js +1 -1
- package/dist/types/server/devServer.d.ts +1 -1
- package/dist/types/server/devServerOld.d.ts +1 -1
- package/dist/types/types.d.ts +3 -3
- package/package.json +10 -10
|
@@ -14,7 +14,7 @@ function _workerSSRRender() {
|
|
|
14
14
|
case 0:
|
|
15
15
|
headers = ctx.headers, params = ctx.params;
|
|
16
16
|
urlPath = renderOptions.route.urlPath;
|
|
17
|
-
url = "http://0.0.0.0:".concat(PORT, "/").concat(urlPath);
|
|
17
|
+
url = urlPath.startsWith("/") ? "http://0.0.0.0:".concat(PORT).concat(urlPath) : "http://0.0.0.0:".concat(PORT, "/").concat(urlPath);
|
|
18
18
|
return [
|
|
19
19
|
4,
|
|
20
20
|
axios.get(url, {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
1
|
import { EventEmitter } from "events";
|
|
3
2
|
import SocketServer from "./socketServer";
|
|
4
3
|
const noop = () => {
|
|
@@ -49,9 +48,6 @@ class DevMiddleware extends EventEmitter {
|
|
|
49
48
|
}
|
|
50
49
|
constructor({ dev, devMiddleware }) {
|
|
51
50
|
super();
|
|
52
|
-
_define_property(this, "middleware", void 0);
|
|
53
|
-
_define_property(this, "devOptions", void 0);
|
|
54
|
-
_define_property(this, "socketServer", void 0);
|
|
55
51
|
this.devOptions = dev;
|
|
56
52
|
this.socketServer = new SocketServer(dev);
|
|
57
53
|
if (devMiddleware) {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
1
|
import ws from "ws";
|
|
3
2
|
import { logger } from "@modern-js/utils";
|
|
4
3
|
class SocketServer {
|
|
@@ -134,12 +133,8 @@ class SocketServer {
|
|
|
134
133
|
connection.send(message);
|
|
135
134
|
}
|
|
136
135
|
constructor(options) {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
_define_property(this, "options", void 0);
|
|
140
|
-
_define_property(this, "app", void 0);
|
|
141
|
-
_define_property(this, "stats", void 0);
|
|
142
|
-
_define_property(this, "timer", null);
|
|
136
|
+
this.sockets = [];
|
|
137
|
+
this.timer = null;
|
|
143
138
|
this.options = options;
|
|
144
139
|
}
|
|
145
140
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
1
|
import minimatch from "minimatch";
|
|
3
2
|
const defaultIgnores = [
|
|
4
3
|
"**/coverage/**",
|
|
@@ -56,8 +55,6 @@ class DependencyTree {
|
|
|
56
55
|
}).length > 0));
|
|
57
56
|
}
|
|
58
57
|
constructor() {
|
|
59
|
-
_define_property(this, "tree", void 0);
|
|
60
|
-
_define_property(this, "ignore", void 0);
|
|
61
58
|
this.tree = /* @__PURE__ */ new Map();
|
|
62
59
|
this.ignore = [
|
|
63
60
|
...defaultIgnores
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
1
|
import path from "path";
|
|
3
2
|
import { fs, chokidar } from "@modern-js/utils";
|
|
4
3
|
import { DependencyTree } from "./dependencyTree";
|
|
@@ -90,8 +89,7 @@ class Watcher {
|
|
|
90
89
|
return this.watcher.close();
|
|
91
90
|
}
|
|
92
91
|
constructor() {
|
|
93
|
-
|
|
94
|
-
_define_property(this, "watcher", void 0);
|
|
92
|
+
this.dependencyTree = null;
|
|
95
93
|
}
|
|
96
94
|
}
|
|
97
95
|
export {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
1
|
import fs from "fs";
|
|
3
2
|
import crypto from "crypto";
|
|
4
3
|
class StatsCache {
|
|
@@ -50,8 +49,8 @@ class StatsCache {
|
|
|
50
49
|
return crypto.createHash("md5").update(fs.readFileSync(filename)).digest("hex");
|
|
51
50
|
}
|
|
52
51
|
constructor() {
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
this.cachedHash = {};
|
|
53
|
+
this.cachedSize = {};
|
|
55
54
|
}
|
|
56
55
|
}
|
|
57
56
|
export {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
1
|
import { createServer } from "http";
|
|
3
2
|
import path from "path";
|
|
4
3
|
import { createServer as createHttpsServer } from "https";
|
|
@@ -11,31 +10,6 @@ import { createMockHandler } from "../dev-tools/mock";
|
|
|
11
10
|
import { enableRegister } from "../dev-tools/register";
|
|
12
11
|
import Watcher, { mergeWatchOptions } from "../dev-tools/watcher";
|
|
13
12
|
import { workerSSRRender } from "./workerSSRRender";
|
|
14
|
-
const transformToRsbuildServerOptions = (dev) => {
|
|
15
|
-
var _dev_devMiddleware, _dev_before, _dev_after;
|
|
16
|
-
const rsbuildOptions = {
|
|
17
|
-
hmr: Boolean(dev.hot),
|
|
18
|
-
client: dev.client,
|
|
19
|
-
writeToDisk: (_dev_devMiddleware = dev.devMiddleware) === null || _dev_devMiddleware === void 0 ? void 0 : _dev_devMiddleware.writeToDisk,
|
|
20
|
-
compress: dev.compress,
|
|
21
|
-
headers: dev.headers,
|
|
22
|
-
historyApiFallback: dev.historyApiFallback,
|
|
23
|
-
proxy: dev.proxy,
|
|
24
|
-
publicDir: false
|
|
25
|
-
};
|
|
26
|
-
if (((_dev_before = dev.before) === null || _dev_before === void 0 ? void 0 : _dev_before.length) || ((_dev_after = dev.after) === null || _dev_after === void 0 ? void 0 : _dev_after.length)) {
|
|
27
|
-
rsbuildOptions.setupMiddlewares = [
|
|
28
|
-
...dev.setupMiddlewares || [],
|
|
29
|
-
(middlewares) => {
|
|
30
|
-
middlewares.unshift(...dev.before || []);
|
|
31
|
-
middlewares.push(...dev.after || []);
|
|
32
|
-
}
|
|
33
|
-
];
|
|
34
|
-
} else if (dev.setupMiddlewares) {
|
|
35
|
-
rsbuildOptions.setupMiddlewares = dev.setupMiddlewares;
|
|
36
|
-
}
|
|
37
|
-
return rsbuildOptions;
|
|
38
|
-
};
|
|
39
13
|
class ModernDevServer extends ModernServer {
|
|
40
14
|
getDevOptions(options) {
|
|
41
15
|
const devOptions = options.dev;
|
|
@@ -63,10 +37,8 @@ class ModernDevServer extends ModernServer {
|
|
|
63
37
|
const { middlewares: rsbuildMiddlewares, close, onUpgrade } = (
|
|
64
38
|
// https://github.com/web-infra-dev/rsbuild/blob/32fbb85e22158d5c4655505ce75e3452ce22dbb1/packages/shared/src/types/server.ts#L112
|
|
65
39
|
await this.getMiddlewares({
|
|
66
|
-
|
|
67
|
-
compress: !isUseStreamingSSR(this.getRoutes()) && !isUseSSRPreload() && dev.compress
|
|
68
|
-
htmlFallback: false,
|
|
69
|
-
publicDir: false
|
|
40
|
+
// TODO: move to uni-builder
|
|
41
|
+
compress: !isUseStreamingSSR(this.getRoutes()) && !isUseSSRPreload() && dev.compress
|
|
70
42
|
})
|
|
71
43
|
);
|
|
72
44
|
app.on("upgrade", onUpgrade);
|
|
@@ -137,7 +109,7 @@ class ModernDevServer extends ModernServer {
|
|
|
137
109
|
}
|
|
138
110
|
// override the ModernServer renderHandler logic
|
|
139
111
|
getRenderHandler() {
|
|
140
|
-
if (this.
|
|
112
|
+
if (this.useSSRWorker) {
|
|
141
113
|
var _this_conf_server, _conf_security;
|
|
142
114
|
const { distDir, staticGenerate, conf, metaName } = this;
|
|
143
115
|
const ssrConfig = (_this_conf_server = this.conf.server) === null || _this_conf_server === void 0 ? void 0 : _this_conf_server.ssr;
|
|
@@ -278,17 +250,11 @@ class ModernDevServer extends ModernServer {
|
|
|
278
250
|
}
|
|
279
251
|
constructor(options) {
|
|
280
252
|
super(options);
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
_define_property(this, "useWorkerSSR", void 0);
|
|
284
|
-
_define_property(this, "appContext", void 0);
|
|
285
|
-
_define_property(this, "getMiddlewares", void 0);
|
|
286
|
-
_define_property(this, "rsbuild", void 0);
|
|
287
|
-
_define_property(this, "watcher", void 0);
|
|
288
|
-
_define_property(this, "closeCb", []);
|
|
253
|
+
this.mockHandler = null;
|
|
254
|
+
this.closeCb = [];
|
|
289
255
|
this.appContext = options.appContext;
|
|
290
256
|
this.workDir = this.pwd;
|
|
291
|
-
this.
|
|
257
|
+
this.useSSRWorker = Boolean(options.useSSRWorker);
|
|
292
258
|
this.dev = this.getDevOptions(options);
|
|
293
259
|
this.getMiddlewares = options.getMiddlewares;
|
|
294
260
|
this.rsbuild = options.rsbuild;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
1
|
import { createServer } from "http";
|
|
3
2
|
import path from "path";
|
|
4
3
|
import { createServer as createHttpsServer } from "https";
|
|
@@ -72,7 +71,7 @@ class ModernDevServer extends ModernServer {
|
|
|
72
71
|
}
|
|
73
72
|
// override the ModernServer renderHandler logic
|
|
74
73
|
getRenderHandler() {
|
|
75
|
-
if (this.
|
|
74
|
+
if (this.useSSRWorker) {
|
|
76
75
|
var _this_conf_server, _conf_security;
|
|
77
76
|
const { distDir, staticGenerate, conf, metaName } = this;
|
|
78
77
|
const ssrConfig = (_this_conf_server = this.conf.server) === null || _this_conf_server === void 0 ? void 0 : _this_conf_server.ssr;
|
|
@@ -296,15 +295,10 @@ class ModernDevServer extends ModernServer {
|
|
|
296
295
|
}
|
|
297
296
|
constructor(options) {
|
|
298
297
|
super(options);
|
|
299
|
-
|
|
300
|
-
_define_property(this, "dev", void 0);
|
|
301
|
-
_define_property(this, "useWorkerSSR", void 0);
|
|
302
|
-
_define_property(this, "appContext", void 0);
|
|
303
|
-
_define_property(this, "devMiddleware", void 0);
|
|
304
|
-
_define_property(this, "watcher", void 0);
|
|
298
|
+
this.mockHandler = null;
|
|
305
299
|
this.appContext = options.appContext;
|
|
306
300
|
this.workDir = this.pwd;
|
|
307
|
-
this.
|
|
301
|
+
this.useSSRWorker = Boolean(options.useSSRWorker);
|
|
308
302
|
this.dev = this.getDevOptions(options);
|
|
309
303
|
this.devMiddleware = new DevMiddleware({
|
|
310
304
|
dev: this.dev,
|
|
@@ -4,7 +4,7 @@ const PORT = 9230;
|
|
|
4
4
|
async function workerSSRRender(ctx, renderOptions, _runner) {
|
|
5
5
|
const { headers, params } = ctx;
|
|
6
6
|
const { urlPath } = renderOptions.route;
|
|
7
|
-
const url = `http://0.0.0.0:${PORT}/${urlPath}`;
|
|
7
|
+
const url = urlPath.startsWith("/") ? `http://0.0.0.0:${PORT}${urlPath}` : `http://0.0.0.0:${PORT}/${urlPath}`;
|
|
8
8
|
const resposne = await axios.get(url, {
|
|
9
9
|
timeout: 5e3,
|
|
10
10
|
responseType: "text",
|
|
@@ -11,7 +11,7 @@ import type { ModernDevServerOptionsNew } from '../types';
|
|
|
11
11
|
export declare class ModernDevServer extends ModernServer {
|
|
12
12
|
private mockHandler;
|
|
13
13
|
private readonly dev;
|
|
14
|
-
private readonly
|
|
14
|
+
private readonly useSSRWorker;
|
|
15
15
|
private readonly appContext;
|
|
16
16
|
private getMiddlewares;
|
|
17
17
|
private rsbuild;
|
|
@@ -11,7 +11,7 @@ import type { ModernDevServerOptions } from '../types';
|
|
|
11
11
|
export declare class ModernDevServer extends ModernServer {
|
|
12
12
|
private mockHandler;
|
|
13
13
|
private readonly dev;
|
|
14
|
-
private readonly
|
|
14
|
+
private readonly useSSRWorker;
|
|
15
15
|
private readonly appContext;
|
|
16
16
|
private readonly devMiddleware;
|
|
17
17
|
private watcher?;
|
package/dist/types/types.d.ts
CHANGED
|
@@ -36,12 +36,12 @@ export type DevMiddleware = (options: DevMiddlewareOptions) => DevMiddlewareAPI;
|
|
|
36
36
|
export type ExtraOptions = {
|
|
37
37
|
dev: boolean | Partial<DevServerOptions>;
|
|
38
38
|
devMiddleware?: DevMiddleware;
|
|
39
|
-
|
|
39
|
+
useSSRWorker?: boolean;
|
|
40
40
|
};
|
|
41
41
|
export type ModernDevServerOptions = ModernServerOptions & ExtraOptions;
|
|
42
42
|
export type ExtraOptionsNew = {
|
|
43
|
-
dev:
|
|
44
|
-
|
|
43
|
+
dev: Pick<DevServerOptions, 'watch' | 'https' | 'compress' | 'devMiddleware'>;
|
|
44
|
+
useSSRWorker?: boolean;
|
|
45
45
|
rsbuild: RsbuildInstance;
|
|
46
46
|
getMiddlewares: (overrides?: DevMiddlewaresConfig) => ReturnType<DevServerAPIs['getMiddlewares']>;
|
|
47
47
|
};
|
package/package.json
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"modern",
|
|
16
16
|
"modern.js"
|
|
17
17
|
],
|
|
18
|
-
"version": "2.48.
|
|
18
|
+
"version": "2.48.2",
|
|
19
19
|
"jsnext:source": "./src/index.ts",
|
|
20
20
|
"types": "./dist/types/index.d.ts",
|
|
21
21
|
"main": "./dist/cjs/index.js",
|
|
@@ -48,14 +48,14 @@
|
|
|
48
48
|
"path-to-regexp": "^6.2.0",
|
|
49
49
|
"ws": "^8.13.0",
|
|
50
50
|
"axios": "^1.6.0",
|
|
51
|
-
"@modern-js/server
|
|
52
|
-
"@modern-js/
|
|
53
|
-
"@modern-js/
|
|
54
|
-
"@modern-js/
|
|
55
|
-
"@modern-js/
|
|
51
|
+
"@modern-js/prod-server": "2.48.2",
|
|
52
|
+
"@modern-js/server-utils": "2.48.2",
|
|
53
|
+
"@modern-js/types": "2.48.2",
|
|
54
|
+
"@modern-js/utils": "2.48.2",
|
|
55
|
+
"@modern-js/runtime-utils": "2.48.2"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
|
-
"@rsbuild/shared": "0.4.
|
|
58
|
+
"@rsbuild/shared": "0.4.15",
|
|
59
59
|
"@types/connect-history-api-fallback": "^1.3.5",
|
|
60
60
|
"@types/jest": "^29",
|
|
61
61
|
"@types/minimatch": "^3.0.5",
|
|
@@ -68,9 +68,9 @@
|
|
|
68
68
|
"typescript": "^5",
|
|
69
69
|
"webpack": "^5.89.0",
|
|
70
70
|
"websocket": "^1",
|
|
71
|
-
"@
|
|
72
|
-
"@
|
|
73
|
-
"@scripts/jest-config": "2.48.
|
|
71
|
+
"@scripts/build": "2.48.2",
|
|
72
|
+
"@modern-js/server-core": "2.48.2",
|
|
73
|
+
"@scripts/jest-config": "2.48.2"
|
|
74
74
|
},
|
|
75
75
|
"peerDependencies": {
|
|
76
76
|
"devcert": "^1.2.2",
|