@modern-js/server 2.21.1 → 2.22.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 CHANGED
@@ -1,5 +1,19 @@
1
1
  # @modern-js/server
2
2
 
3
+ ## 2.22.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [3d48836]
8
+ - Updated dependencies [5050e8e]
9
+ - Updated dependencies [4991c8a]
10
+ - Updated dependencies [cb9e1ec]
11
+ - Updated dependencies [ea961e7]
12
+ - @modern-js/utils@2.22.0
13
+ - @modern-js/prod-server@2.22.0
14
+ - @modern-js/server-utils@2.22.0
15
+ - @modern-js/types@2.22.0
16
+
3
17
  ## 2.21.1
4
18
 
5
19
  ### Patch Changes
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "getDefaultDevOptions", {
6
6
  enumerable: true,
7
- get: () => getDefaultDevOptions
7
+ get: function() {
8
+ return getDefaultDevOptions;
9
+ }
8
10
  });
9
11
  const _constants = require("@modern-js/utils/universal/constants");
10
12
  const getDefaultDevOptions = () => {
@@ -10,8 +10,12 @@ function _export(target, all) {
10
10
  });
11
11
  }
12
12
  _export(exports, {
13
- createSocketUrl: () => createSocketUrl,
14
- formatURL: () => formatURL
13
+ createSocketUrl: function() {
14
+ return createSocketUrl;
15
+ },
16
+ formatURL: function() {
17
+ return formatURL;
18
+ }
15
19
  });
16
20
  const _constants = require("@modern-js/utils/universal/constants");
17
21
  function createSocketUrl(resourceQuery) {
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "default", {
6
6
  enumerable: true,
7
- get: () => DevMiddleware
7
+ get: function() {
8
+ return DevMiddleware;
9
+ }
8
10
  });
9
11
  const _define_property = require("@swc/helpers/_/_define_property");
10
12
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
@@ -51,6 +53,7 @@ class DevMiddleware extends _events.EventEmitter {
51
53
  stats: false,
52
54
  callbacks,
53
55
  hmrClientPath: enableHMR ? getHMRClientPath(devOptions.client) : void 0,
56
+ serverSideRender: true,
54
57
  ...devOptions.devMiddleware
55
58
  });
56
59
  return middleware;
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "default", {
6
6
  enumerable: true,
7
- get: () => SocketServer
7
+ get: function() {
8
+ return SocketServer;
9
+ }
8
10
  });
9
11
  const _define_property = require("@swc/helpers/_/_define_property");
10
12
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "genHttpsOptions", {
6
6
  enumerable: true,
7
- get: () => genHttpsOptions
7
+ get: function() {
8
+ return genHttpsOptions;
9
+ }
8
10
  });
9
11
  const _utils = require("@modern-js/utils");
10
12
  const genHttpsOptions = async (userOptions, pwd) => {
@@ -10,8 +10,12 @@ function _export(target, all) {
10
10
  });
11
11
  }
12
12
  _export(exports, {
13
- default: () => _default,
14
- getMatched: () => getMatched
13
+ default: function() {
14
+ return _default;
15
+ },
16
+ getMatched: function() {
17
+ return getMatched;
18
+ }
15
19
  });
16
20
  const _pathtoregexp = require("path-to-regexp");
17
21
  const VALID_METHODS = [
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "createMockHandler", {
6
6
  enumerable: true,
7
- get: () => createMockHandler
7
+ get: function() {
8
+ return createMockHandler;
9
+ }
8
10
  });
9
11
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
10
12
  const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "enableRegister", {
6
6
  enumerable: true,
7
- get: () => enableRegister
7
+ get: function() {
8
+ return enableRegister;
9
+ }
8
10
  });
9
11
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
10
12
  const _path = /* @__PURE__ */ _interop_require_default._(require("path"));
@@ -10,8 +10,12 @@ function _export(target, all) {
10
10
  });
11
11
  }
12
12
  _export(exports, {
13
- defaultIgnores: () => defaultIgnores,
14
- DependencyTree: () => DependencyTree
13
+ defaultIgnores: function() {
14
+ return defaultIgnores;
15
+ },
16
+ DependencyTree: function() {
17
+ return DependencyTree;
18
+ }
15
19
  });
16
20
  const _define_property = require("@swc/helpers/_/_define_property");
17
21
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
@@ -10,10 +10,18 @@ function _export(target, all) {
10
10
  });
11
11
  }
12
12
  _export(exports, {
13
- default: () => Watcher,
14
- defaultWatchOptions: () => defaultWatchOptions,
15
- getWatchedFiles: () => getWatchedFiles,
16
- mergeWatchOptions: () => mergeWatchOptions
13
+ default: function() {
14
+ return Watcher;
15
+ },
16
+ defaultWatchOptions: function() {
17
+ return defaultWatchOptions;
18
+ },
19
+ getWatchedFiles: function() {
20
+ return getWatchedFiles;
21
+ },
22
+ mergeWatchOptions: function() {
23
+ return mergeWatchOptions;
24
+ }
17
25
  });
18
26
  const _define_property = require("@swc/helpers/_/_define_property");
19
27
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "StatsCache", {
6
6
  enumerable: true,
7
- get: () => StatsCache
7
+ get: function() {
8
+ return StatsCache;
9
+ }
8
10
  });
9
11
  const _define_property = require("@swc/helpers/_/_define_property");
10
12
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
package/dist/cjs/index.js CHANGED
@@ -10,8 +10,12 @@ function _export(target, all) {
10
10
  });
11
11
  }
12
12
  _export(exports, {
13
- Server: () => _server.DevServer,
14
- default: () => _default
13
+ Server: function() {
14
+ return _server.DevServer;
15
+ },
16
+ default: function() {
17
+ return _default;
18
+ }
15
19
  });
16
20
  const _server = require("./server");
17
21
  const _default = (options) => {
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "ModernDevServer", {
6
6
  enumerable: true,
7
- get: () => ModernDevServer
7
+ get: function() {
8
+ return ModernDevServer;
9
+ }
8
10
  });
9
11
  const _define_property = require("@swc/helpers/_/_define_property");
10
12
  const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
@@ -163,6 +165,32 @@ class ModernDevServer extends _prodserver.ModernServer {
163
165
  }
164
166
  warmupSSRBundle() {
165
167
  }
168
+ initReader() {
169
+ var _this_dev, _this_dev_devMiddleware;
170
+ let isInit = false;
171
+ if (this.devMiddleware && ((_this_dev = this.dev) === null || _this_dev === void 0 ? void 0 : (_this_dev_devMiddleware = _this_dev.devMiddleware) === null || _this_dev_devMiddleware === void 0 ? void 0 : _this_dev_devMiddleware.writeToDisk) === false) {
172
+ this.addHandler((ctx, next) => {
173
+ if (isInit) {
174
+ return next();
175
+ }
176
+ isInit = true;
177
+ if (!ctx.res.locals.webpack) {
178
+ this.reader.init();
179
+ return next();
180
+ }
181
+ const { devMiddleware: webpackDevMid } = ctx.res.locals.webpack;
182
+ const { outputFileSystem } = webpackDevMid;
183
+ if (outputFileSystem) {
184
+ this.reader.init(outputFileSystem);
185
+ } else {
186
+ this.reader.init();
187
+ }
188
+ return next();
189
+ });
190
+ } else {
191
+ super.initReader();
192
+ }
193
+ }
166
194
  async onServerChange({ filepath, event }) {
167
195
  const { pwd } = this;
168
196
  const { mock } = _prodserver.AGGRED_DIR;
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "DevServer", {
6
6
  enumerable: true,
7
- get: () => DevServer
7
+ get: function() {
8
+ return DevServer;
9
+ }
8
10
  });
9
11
  const _prodserver = require("@modern-js/prod-server");
10
12
  const _devServer = require("./devServer");
@@ -84,7 +84,8 @@ var DevMiddleware = /* @__PURE__ */ function(EventEmitter2) {
84
84
  headers: devOptions.headers,
85
85
  stats: false,
86
86
  callbacks: callbacks,
87
- hmrClientPath: enableHMR ? getHMRClientPath(devOptions.client) : void 0
87
+ hmrClientPath: enableHMR ? getHMRClientPath(devOptions.client) : void 0,
88
+ serverSideRender: true
88
89
  }, devOptions.devMiddleware));
89
90
  return middleware;
90
91
  }
@@ -349,6 +349,36 @@ export var ModernDevServer = /* @__PURE__ */ function(ModernServer2) {
349
349
  value: function warmupSSRBundle() {
350
350
  }
351
351
  },
352
+ {
353
+ key: "initReader",
354
+ value: function initReader() {
355
+ var _this = this;
356
+ var _this_dev, _this_dev_devMiddleware;
357
+ var isInit = false;
358
+ if (this.devMiddleware && ((_this_dev = this.dev) === null || _this_dev === void 0 ? void 0 : (_this_dev_devMiddleware = _this_dev.devMiddleware) === null || _this_dev_devMiddleware === void 0 ? void 0 : _this_dev_devMiddleware.writeToDisk) === false) {
359
+ this.addHandler(function(ctx, next) {
360
+ if (isInit) {
361
+ return next();
362
+ }
363
+ isInit = true;
364
+ if (!ctx.res.locals.webpack) {
365
+ _this.reader.init();
366
+ return next();
367
+ }
368
+ var _ctx_res_locals_webpack = ctx.res.locals.webpack, webpackDevMid = _ctx_res_locals_webpack.devMiddleware;
369
+ var outputFileSystem = webpackDevMid.outputFileSystem;
370
+ if (outputFileSystem) {
371
+ _this.reader.init(outputFileSystem);
372
+ } else {
373
+ _this.reader.init();
374
+ }
375
+ return next();
376
+ });
377
+ } else {
378
+ _get(_get_prototype_of(ModernDevServer2.prototype), "initReader", this).call(this);
379
+ }
380
+ }
381
+ },
352
382
  {
353
383
  key: "onServerChange",
354
384
  value: function onServerChange(param) {
@@ -42,6 +42,7 @@ class DevMiddleware extends EventEmitter {
42
42
  stats: false,
43
43
  callbacks,
44
44
  hmrClientPath: enableHMR ? getHMRClientPath(devOptions.client) : void 0,
45
+ serverSideRender: true,
45
46
  ...devOptions.devMiddleware
46
47
  });
47
48
  return middleware;
@@ -153,6 +153,32 @@ export class ModernDevServer extends ModernServer {
153
153
  }
154
154
  warmupSSRBundle() {
155
155
  }
156
+ initReader() {
157
+ var _this_dev, _this_dev_devMiddleware;
158
+ let isInit = false;
159
+ if (this.devMiddleware && ((_this_dev = this.dev) === null || _this_dev === void 0 ? void 0 : (_this_dev_devMiddleware = _this_dev.devMiddleware) === null || _this_dev_devMiddleware === void 0 ? void 0 : _this_dev_devMiddleware.writeToDisk) === false) {
160
+ this.addHandler((ctx, next) => {
161
+ if (isInit) {
162
+ return next();
163
+ }
164
+ isInit = true;
165
+ if (!ctx.res.locals.webpack) {
166
+ this.reader.init();
167
+ return next();
168
+ }
169
+ const { devMiddleware: webpackDevMid } = ctx.res.locals.webpack;
170
+ const { outputFileSystem } = webpackDevMid;
171
+ if (outputFileSystem) {
172
+ this.reader.init(outputFileSystem);
173
+ } else {
174
+ this.reader.init();
175
+ }
176
+ return next();
177
+ });
178
+ } else {
179
+ super.initReader();
180
+ }
181
+ }
156
182
  async onServerChange({ filepath, event }) {
157
183
  const { pwd } = this;
158
184
  const { mock } = AGGRED_DIR;
@@ -20,6 +20,7 @@ export declare class ModernDevServer extends ModernServer {
20
20
  onRepack(options?: BuildOptions): void;
21
21
  createHTTPServer(handler: (req: IncomingMessage, res: ServerResponse, next?: () => void) => void): Promise<Server<typeof IncomingMessage, typeof ServerResponse> | import("https").Server<typeof IncomingMessage, typeof ServerResponse>>;
22
22
  protected warmupSSRBundle(): void;
23
+ protected initReader(): void;
23
24
  protected onServerChange({
24
25
  filepath,
25
26
  event
@@ -20,6 +20,8 @@ export type DevMiddlewareOptions = {
20
20
  stats?: boolean;
21
21
  /** should trigger when compiler hook called */
22
22
  callbacks: MiddlewareCallbacks;
23
+ /** whether use Server Side Render */
24
+ serverSideRender?: boolean;
23
25
  };
24
26
  /**
25
27
  * The modern/server do nothing about compiler, the devMiddleware need do such things to ensure dev works well:
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.21.1",
18
+ "version": "2.22.0",
19
19
  "jsnext:source": "./src/index.ts",
20
20
  "types": "./dist/types/index.d.ts",
21
21
  "main": "./dist/cjs/index.js",
@@ -47,10 +47,10 @@
47
47
  "minimatch": "^3.0.4",
48
48
  "path-to-regexp": "^6.2.0",
49
49
  "ws": "^8.2.0",
50
- "@modern-js/prod-server": "2.21.1",
51
- "@modern-js/server-utils": "2.21.1",
52
- "@modern-js/types": "2.21.1",
53
- "@modern-js/utils": "2.21.1"
50
+ "@modern-js/prod-server": "2.22.0",
51
+ "@modern-js/server-utils": "2.22.0",
52
+ "@modern-js/types": "2.22.0",
53
+ "@modern-js/utils": "2.22.0"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/connect-history-api-fallback": "^1.3.5",
@@ -65,9 +65,9 @@
65
65
  "typescript": "^5",
66
66
  "webpack": "^5.82.1",
67
67
  "websocket": "^1",
68
- "@modern-js/server-core": "2.21.1",
69
- "@scripts/jest-config": "2.21.1",
70
- "@scripts/build": "2.21.1"
68
+ "@modern-js/server-core": "2.22.0",
69
+ "@scripts/jest-config": "2.22.0",
70
+ "@scripts/build": "2.22.0"
71
71
  },
72
72
  "peerDependencies": {
73
73
  "devcert": "^1.0.0",