@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.
Files changed (31) hide show
  1. package/dist/cjs/constants.js +1 -1
  2. package/dist/cjs/dev-tools/dev-middleware/index.js +0 -4
  3. package/dist/cjs/dev-tools/dev-middleware/socketServer.js +2 -7
  4. package/dist/cjs/dev-tools/watcher/dependencyTree.js +0 -3
  5. package/dist/cjs/dev-tools/watcher/index.js +1 -3
  6. package/dist/cjs/dev-tools/watcher/statsCache.js +2 -3
  7. package/dist/cjs/server/devServer.js +6 -40
  8. package/dist/cjs/server/devServerOld.js +3 -9
  9. package/dist/cjs/server/workerSSRRender.js +1 -1
  10. package/dist/esm/constants.js +1 -1
  11. package/dist/esm/dev-tools/dev-middleware/index.js +42 -58
  12. package/dist/esm/dev-tools/dev-middleware/socketServer.js +130 -179
  13. package/dist/esm/dev-tools/watcher/dependencyTree.js +59 -80
  14. package/dist/esm/dev-tools/watcher/index.js +63 -82
  15. package/dist/esm/dev-tools/watcher/statsCache.js +55 -76
  16. package/dist/esm/server/devServer.js +432 -522
  17. package/dist/esm/server/devServerOld.js +455 -515
  18. package/dist/esm/server/workerSSRRender.js +1 -1
  19. package/dist/esm-node/constants.js +1 -1
  20. package/dist/esm-node/dev-tools/dev-middleware/index.js +0 -4
  21. package/dist/esm-node/dev-tools/dev-middleware/socketServer.js +2 -7
  22. package/dist/esm-node/dev-tools/watcher/dependencyTree.js +0 -3
  23. package/dist/esm-node/dev-tools/watcher/index.js +1 -3
  24. package/dist/esm-node/dev-tools/watcher/statsCache.js +2 -3
  25. package/dist/esm-node/server/devServer.js +6 -40
  26. package/dist/esm-node/server/devServerOld.js +3 -9
  27. package/dist/esm-node/server/workerSSRRender.js +1 -1
  28. package/dist/types/server/devServer.d.ts +1 -1
  29. package/dist/types/server/devServerOld.d.ts +1 -1
  30. package/dist/types/types.d.ts +3 -3
  31. 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, {
@@ -8,7 +8,7 @@ const getDefaultDevOptions = () => {
8
8
  // By default it is set to "location.hostname"
9
9
  host: "",
10
10
  // By default it is set to "location.protocol === 'https:' ? 'wss' : 'ws'""
11
- protocol: ""
11
+ protocol: void 0
12
12
  },
13
13
  https: false,
14
14
  devMiddleware: {
@@ -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
- _define_property(this, "wsServer", void 0);
138
- _define_property(this, "sockets", []);
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
- _define_property(this, "dependencyTree", null);
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
- _define_property(this, "cachedHash", {});
54
- _define_property(this, "cachedSize", {});
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
- ...transformToRsbuildServerOptions(this.dev),
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.useWorkerSSR) {
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
- _define_property(this, "mockHandler", null);
282
- _define_property(this, "dev", void 0);
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.useWorkerSSR = Boolean(options.useWorkerSSR);
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.useWorkerSSR) {
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
- _define_property(this, "mockHandler", null);
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.useWorkerSSR = Boolean(options.useWorkerSSR);
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 useWorkerSSR;
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 useWorkerSSR;
14
+ private readonly useSSRWorker;
15
15
  private readonly appContext;
16
16
  private readonly devMiddleware;
17
17
  private watcher?;
@@ -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
- useWorkerSSR?: boolean;
39
+ useSSRWorker?: boolean;
40
40
  };
41
41
  export type ModernDevServerOptions = ModernServerOptions & ExtraOptions;
42
42
  export type ExtraOptionsNew = {
43
- dev: Partial<DevServerOptions>;
44
- useWorkerSSR?: boolean;
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.0",
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-utils": "2.48.0",
52
- "@modern-js/types": "2.48.0",
53
- "@modern-js/utils": "2.48.0",
54
- "@modern-js/runtime-utils": "2.48.0",
55
- "@modern-js/prod-server": "2.48.0"
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.8",
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
- "@modern-js/server-core": "2.48.0",
72
- "@scripts/build": "2.48.0",
73
- "@scripts/jest-config": "2.48.0"
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",