@modern-js/server 2.0.0-beta.3 → 2.0.0-beta.6

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 (62) hide show
  1. package/CHANGELOG.md +159 -0
  2. package/dist/js/modern/constants.js +10 -9
  3. package/dist/js/modern/dev-tools/dev-middleware/dev-server-plugin.js +14 -20
  4. package/dist/js/modern/dev-tools/dev-middleware/hmr-client/createSocketUrl.js +14 -19
  5. package/dist/js/modern/dev-tools/dev-middleware/hmr-client/index.js +134 -184
  6. package/dist/js/modern/dev-tools/dev-middleware/hmr-client/types.d.js +0 -0
  7. package/dist/js/modern/dev-tools/dev-middleware/index.js +65 -60
  8. package/dist/js/modern/dev-tools/dev-middleware/socket-server.js +33 -59
  9. package/dist/js/modern/dev-tools/https/global.d.js +0 -0
  10. package/dist/js/modern/dev-tools/https/index.js +28 -5
  11. package/dist/js/modern/dev-tools/mock/getMockData.js +71 -45
  12. package/dist/js/modern/dev-tools/mock/index.js +34 -15
  13. package/dist/js/modern/dev-tools/register/index.js +71 -54
  14. package/dist/js/modern/dev-tools/watcher/dependency-tree.js +25 -34
  15. package/dist/js/modern/dev-tools/watcher/index.js +51 -33
  16. package/dist/js/modern/dev-tools/watcher/stats-cache.js +13 -20
  17. package/dist/js/modern/index.js +7 -4
  18. package/dist/js/modern/server/dev-server.js +191 -215
  19. package/dist/js/modern/server/index.js +7 -4
  20. package/dist/js/node/constants.js +31 -14
  21. package/dist/js/node/dev-tools/dev-middleware/dev-server-plugin.js +38 -24
  22. package/dist/js/node/dev-tools/dev-middleware/hmr-client/createSocketUrl.js +36 -24
  23. package/dist/js/node/dev-tools/dev-middleware/hmr-client/index.js +56 -98
  24. package/dist/js/node/dev-tools/dev-middleware/hmr-client/types.d.js +0 -0
  25. package/dist/js/node/dev-tools/dev-middleware/index.js +94 -72
  26. package/dist/js/node/dev-tools/dev-middleware/socket-server.js +59 -66
  27. package/dist/js/node/dev-tools/https/global.d.js +0 -0
  28. package/dist/js/node/dev-tools/https/index.js +56 -13
  29. package/dist/js/node/dev-tools/mock/getMockData.js +90 -51
  30. package/dist/js/node/dev-tools/mock/index.js +66 -28
  31. package/dist/js/node/dev-tools/register/index.js +100 -64
  32. package/dist/js/node/dev-tools/watcher/dependency-tree.js +55 -43
  33. package/dist/js/node/dev-tools/watcher/index.js +83 -47
  34. package/dist/js/node/dev-tools/watcher/stats-cache.js +44 -30
  35. package/dist/js/node/index.js +29 -15
  36. package/dist/js/node/server/dev-server.js +220 -237
  37. package/dist/js/node/server/index.js +30 -11
  38. package/dist/js/node/types.js +15 -0
  39. package/dist/js/treeshaking/constants.js +21 -0
  40. package/dist/js/treeshaking/dev-tools/dev-middleware/dev-server-plugin.js +74 -0
  41. package/dist/js/treeshaking/dev-tools/dev-middleware/hmr-client/createSocketUrl.js +51 -0
  42. package/dist/js/treeshaking/dev-tools/dev-middleware/hmr-client/index.js +157 -0
  43. package/dist/js/treeshaking/dev-tools/dev-middleware/hmr-client/types.d.js +1 -0
  44. package/dist/js/treeshaking/dev-tools/dev-middleware/index.js +363 -0
  45. package/dist/js/treeshaking/dev-tools/dev-middleware/socket-server.js +209 -0
  46. package/dist/js/treeshaking/dev-tools/https/global.d.js +1 -0
  47. package/dist/js/treeshaking/dev-tools/https/index.js +161 -0
  48. package/dist/js/treeshaking/dev-tools/mock/getMockData.js +327 -0
  49. package/dist/js/treeshaking/dev-tools/mock/index.js +191 -0
  50. package/dist/js/treeshaking/dev-tools/register/index.js +153 -0
  51. package/dist/js/treeshaking/dev-tools/watcher/dependency-tree.js +150 -0
  52. package/dist/js/treeshaking/dev-tools/watcher/index.js +200 -0
  53. package/dist/js/treeshaking/dev-tools/watcher/stats-cache.js +128 -0
  54. package/dist/js/treeshaking/index.js +9 -0
  55. package/dist/js/treeshaking/server/dev-server.js +800 -0
  56. package/dist/js/treeshaking/server/index.js +92 -0
  57. package/dist/js/treeshaking/types.js +1 -0
  58. package/dist/types/dev-tools/mock/getMockData.d.ts +2 -0
  59. package/dist/types/dev-tools/watcher/dependency-tree.d.ts +2 -0
  60. package/dist/types/dev-tools/watcher/index.d.ts +1 -1
  61. package/dist/types/index.d.ts +2 -0
  62. package/package.json +15 -12
@@ -1,21 +1,35 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "Server", {
7
- enumerable: true,
8
- get: function () {
9
- return _server.DevServer;
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
14
  }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var src_exports = {};
19
+ __export(src_exports, {
20
+ Server: () => import_server.DevServer,
21
+ default: () => src_default
11
22
  });
12
- exports.default = void 0;
13
- var _server = require("./server");
14
- var _default = options => {
23
+ module.exports = __toCommonJS(src_exports);
24
+ var import_server = require("./server");
25
+ var src_default = (options) => {
15
26
  if (options == null) {
16
- throw new Error('can not start mserver without options');
27
+ throw new Error("can not start mserver without options");
17
28
  }
18
- const server = new _server.DevServer(options);
29
+ const server = new import_server.DevServer(options);
19
30
  return server.init();
20
31
  };
21
- exports.default = _default;
32
+ // Annotate the CommonJS export names for ESM import in node:
33
+ 0 && (module.exports = {
34
+ Server
35
+ });
@@ -1,62 +1,105 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __reflectGet = Reflect.get;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __spreadValues = (a, b) => {
14
+ for (var prop in b || (b = {}))
15
+ if (__hasOwnProp.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ if (__getOwnPropSymbols)
18
+ for (var prop of __getOwnPropSymbols(b)) {
19
+ if (__propIsEnum.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ }
22
+ return a;
23
+ };
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __export = (target, all) => {
26
+ for (var name in all)
27
+ __defProp(target, name, { get: all[name], enumerable: true });
28
+ };
29
+ var __copyProps = (to, from, except, desc) => {
30
+ if (from && typeof from === "object" || typeof from === "function") {
31
+ for (let key of __getOwnPropNames(from))
32
+ if (!__hasOwnProp.call(to, key) && key !== except)
33
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
34
+ }
35
+ return to;
36
+ };
37
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
38
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
39
+ mod
40
+ ));
41
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
42
+ var __superGet = (cls, obj, key) => __reflectGet(__getProtoOf(cls), key, obj);
43
+ var __async = (__this, __arguments, generator) => {
44
+ return new Promise((resolve, reject) => {
45
+ var fulfilled = (value) => {
46
+ try {
47
+ step(generator.next(value));
48
+ } catch (e) {
49
+ reject(e);
50
+ }
51
+ };
52
+ var rejected = (value) => {
53
+ try {
54
+ step(generator.throw(value));
55
+ } catch (e) {
56
+ reject(e);
57
+ }
58
+ };
59
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
60
+ step((generator = generator.apply(__this, __arguments)).next());
61
+ });
62
+ };
63
+ var dev_server_exports = {};
64
+ __export(dev_server_exports, {
65
+ ModernDevServer: () => ModernDevServer
5
66
  });
6
- exports.ModernDevServer = void 0;
7
- var _http = require("http");
8
- var _path = _interopRequireDefault(require("path"));
9
- var _https = require("https");
10
- var _utils = require("@modern-js/utils");
11
- var _prodServer = require("@modern-js/prod-server");
12
- var _constants = require("@modern-js/utils/constants");
13
- var _constants2 = require("../constants");
14
- var _mock = require("../dev-tools/mock");
15
- var _register = require("../dev-tools/register");
16
- var _watcher = _interopRequireWildcard(require("../dev-tools/watcher"));
17
- var _devMiddleware = _interopRequireDefault(require("../dev-tools/dev-middleware"));
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
20
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
24
- class ModernDevServer extends _prodServer.ModernServer {
67
+ module.exports = __toCommonJS(dev_server_exports);
68
+ var import_http = require("http");
69
+ var import_path = __toESM(require("path"));
70
+ var import_https = require("https");
71
+ var import_utils = require("@modern-js/utils");
72
+ var import_prod_server = require("@modern-js/prod-server");
73
+ var import_constants = require("@modern-js/utils/constants");
74
+ var import_constants2 = require("../constants");
75
+ var import_mock = require("../dev-tools/mock");
76
+ var import_register = require("../dev-tools/register");
77
+ var import_watcher = __toESM(require("../dev-tools/watcher"));
78
+ var import_dev_middleware = __toESM(require("../dev-tools/dev-middleware"));
79
+ class ModernDevServer extends import_prod_server.ModernServer {
25
80
  constructor(options) {
26
81
  super(options);
27
-
28
- // dev server should work in pwd
29
- _defineProperty(this, "mockHandler", null);
30
- _defineProperty(this, "dev", void 0);
31
- _defineProperty(this, "devMiddleware", void 0);
32
- _defineProperty(this, "watcher", void 0);
82
+ this.mockHandler = null;
33
83
  this.workDir = this.pwd;
34
-
35
- // set dev server options, like webpack-dev-server
36
84
  this.dev = this.getDevOptions(options);
37
-
38
- // create dev middleware instance
39
- this.devMiddleware = new _devMiddleware.default({
85
+ this.devMiddleware = new import_dev_middleware.default({
40
86
  dev: this.dev,
41
87
  compiler: options.compiler,
42
88
  devMiddleware: options.devMiddleware
43
89
  });
44
- (0, _register.enableRegister)(this.pwd, this.conf);
90
+ (0, import_register.enableRegister)(this.pwd, this.conf);
45
91
  }
46
92
  getDevOptions(options) {
47
- const devOptions = typeof options.dev === 'boolean' ? {} : options.dev;
48
- const defaultOptions = (0, _constants2.getDefaultDevOptions)();
49
- return _objectSpread(_objectSpread(_objectSpread({}, defaultOptions), devOptions), {}, {
50
- client: _objectSpread(_objectSpread({}, defaultOptions.client), devOptions === null || devOptions === void 0 ? void 0 : devOptions.client)
93
+ const devOptions = typeof options.dev === "boolean" ? {} : options.dev;
94
+ const defaultOptions = (0, import_constants2.getDefaultDevOptions)();
95
+ return __spreadProps(__spreadValues(__spreadValues({}, defaultOptions), devOptions), {
96
+ client: __spreadValues(__spreadValues({}, defaultOptions.client), devOptions == null ? void 0 : devOptions.client)
51
97
  });
52
98
  }
53
99
  addMiddlewareHandler(handlers) {
54
- handlers.forEach(handler => {
100
+ handlers.forEach((handler) => {
55
101
  this.addHandler((ctx, next) => {
56
- const {
57
- req,
58
- res
59
- } = ctx;
102
+ const { req, res } = ctx;
60
103
  return handler(req, res, next);
61
104
  });
62
105
  });
@@ -68,186 +111,132 @@ class ModernDevServer extends _prodServer.ModernServer {
68
111
  };
69
112
  const befores = [];
70
113
  const afters = [];
71
- setupMiddlewares.forEach(handler => {
72
- handler({
73
- unshift: (...handlers) => befores.unshift(...handlers),
74
- push: (...handlers) => afters.push(...handlers)
75
- }, serverOptions);
114
+ setupMiddlewares.forEach((handler) => {
115
+ handler(
116
+ {
117
+ unshift: (...handlers) => befores.unshift(...handlers),
118
+ push: (...handlers) => afters.push(...handlers)
119
+ },
120
+ serverOptions
121
+ );
76
122
  });
77
- return {
78
- befores,
79
- afters
80
- };
81
- }
82
-
83
- // Complete the preparation of services
84
- async onInit(runner, app) {
85
- this.runner = runner;
86
- const {
87
- dev
88
- } = this;
89
-
90
- // Order: devServer.before => setupMiddlewares.unshift => internal middlewares => setupMiddlewares.push => devServer.after
91
- const {
92
- befores,
93
- afters
94
- } = this.applySetupMiddlewares();
95
-
96
- // before dev handler
97
- const beforeHandlers = await this.setupBeforeDevMiddleware();
98
- this.addMiddlewareHandler([...beforeHandlers, ...befores]);
99
- await this.applyDefaultMiddlewares(app);
100
-
101
- // after dev handler
102
- const afterHandlers = await this.setupAfterDevMiddleware();
103
- this.addMiddlewareHandler([...afters, ...afterHandlers]);
104
- await super.onInit(runner, app);
105
-
106
- // watch mock/ server/ api/ dir file change
107
- if (dev.watch) {
108
- this.startWatcher();
109
- app.on('close', async () => {
110
- var _this$watcher;
111
- await ((_this$watcher = this.watcher) === null || _this$watcher === void 0 ? void 0 : _this$watcher.close());
112
- });
113
- }
123
+ return { befores, afters };
114
124
  }
115
- async applyDefaultMiddlewares(app) {
116
- const {
117
- pwd,
118
- dev,
119
- devMiddleware
120
- } = this;
121
- this.addHandler((ctx, next) => {
122
- // allow hmr request cross-domain, because the user may use global proxy
123
- ctx.res.setHeader('Access-Control-Allow-Origin', '*');
124
- if (ctx.path.includes('hot-update')) {
125
- ctx.res.setHeader('Access-Control-Allow-Credentials', 'false');
126
- }
127
-
128
- // 用户在 devServer 上配置的 headers 不会对 html 的请求生效,加入下面代码,使配置的 headers 对所有请求生效
129
- const confHeaders = dev.headers;
130
- if (confHeaders) {
131
- for (const [key, value] of Object.entries(confHeaders)) {
132
- ctx.res.setHeader(key, value);
133
- }
125
+ onInit(runner, app) {
126
+ return __async(this, null, function* () {
127
+ this.runner = runner;
128
+ const { dev } = this;
129
+ const { befores, afters } = this.applySetupMiddlewares();
130
+ const beforeHandlers = yield this.setupBeforeDevMiddleware();
131
+ this.addMiddlewareHandler([...beforeHandlers, ...befores]);
132
+ yield this.applyDefaultMiddlewares(app);
133
+ const afterHandlers = yield this.setupAfterDevMiddleware();
134
+ this.addMiddlewareHandler([...afters, ...afterHandlers]);
135
+ yield __superGet(ModernDevServer.prototype, this, "onInit").call(this, runner, app);
136
+ if (dev.watch) {
137
+ this.startWatcher();
138
+ app.on("close", () => __async(this, null, function* () {
139
+ var _a;
140
+ yield (_a = this.watcher) == null ? void 0 : _a.close();
141
+ }));
134
142
  }
135
- next();
136
- });
137
-
138
- // mock handler
139
- this.mockHandler = (0, _mock.createMockHandler)({
140
- pwd
141
143
  });
142
- this.addHandler((ctx, next) => {
143
- if (this.mockHandler) {
144
- this.mockHandler(ctx, next);
145
- } else {
144
+ }
145
+ applyDefaultMiddlewares(app) {
146
+ return __async(this, null, function* () {
147
+ const { pwd, dev, devMiddleware } = this;
148
+ this.addHandler((ctx, next) => {
149
+ ctx.res.setHeader("Access-Control-Allow-Origin", "*");
150
+ if (ctx.path.includes("hot-update")) {
151
+ ctx.res.setHeader("Access-Control-Allow-Credentials", "false");
152
+ }
153
+ const confHeaders = dev.headers;
154
+ if (confHeaders) {
155
+ for (const [key, value] of Object.entries(confHeaders)) {
156
+ ctx.res.setHeader(key, value);
157
+ }
158
+ }
146
159
  next();
147
- }
148
- });
149
-
150
- // dev proxy handler, each proxy has own handler
151
- const proxyHandlers = (0, _prodServer.createProxyHandler)(dev.proxy);
152
- if (proxyHandlers) {
153
- proxyHandlers.forEach(handler => {
154
- this.addHandler(handler);
155
160
  });
156
- }
157
-
158
- // do webpack build / plugin apply / socket server when pass compiler instance
159
- devMiddleware.init(app);
160
- devMiddleware.on('change', stats => {
161
- // Reset only when client compile done
162
- if (stats.toJson({
163
- all: false
164
- }).name === 'client') {
165
- this.onRepack({
166
- routes: this.getRoutes()
161
+ this.mockHandler = (0, import_mock.createMockHandler)({ pwd });
162
+ this.addHandler((ctx, next) => {
163
+ if (this.mockHandler) {
164
+ this.mockHandler(ctx, next);
165
+ } else {
166
+ next();
167
+ }
168
+ });
169
+ const proxyHandlers = (0, import_prod_server.createProxyHandler)(dev.proxy);
170
+ if (proxyHandlers) {
171
+ proxyHandlers.forEach((handler) => {
172
+ this.addHandler(handler);
167
173
  });
168
174
  }
169
- });
170
- this.addHandler((ctx, next) => {
171
- const {
172
- req,
173
- res
174
- } = ctx;
175
- if (devMiddleware.middleware) {
176
- devMiddleware.middleware(req, res, next);
177
- } else {
178
- next();
175
+ devMiddleware.init(app);
176
+ devMiddleware.on("change", (stats) => {
177
+ if (stats.toJson({ all: false }).name === "client") {
178
+ this.onRepack({ routes: this.getRoutes() });
179
+ }
180
+ });
181
+ this.addHandler((ctx, next) => {
182
+ const { req, res } = ctx;
183
+ if (devMiddleware.middleware) {
184
+ devMiddleware.middleware(req, res, next);
185
+ } else {
186
+ next();
187
+ }
188
+ });
189
+ if (dev.historyApiFallback) {
190
+ const { default: connectHistoryApiFallback } = yield Promise.resolve().then(() => __toESM(require("connect-history-api-fallback")));
191
+ const historyApiFallbackMiddleware = connectHistoryApiFallback(
192
+ typeof dev.historyApiFallback === "boolean" ? {} : dev.historyApiFallback
193
+ );
194
+ this.addHandler(
195
+ (ctx, next) => historyApiFallbackMiddleware(ctx.req, ctx.res, next)
196
+ );
179
197
  }
180
198
  });
181
- if (dev.historyApiFallback) {
182
- const {
183
- default: connectHistoryApiFallback
184
- } = await Promise.resolve().then(() => _interopRequireWildcard(require('connect-history-api-fallback')));
185
- const historyApiFallbackMiddleware = connectHistoryApiFallback(typeof dev.historyApiFallback === 'boolean' ? {} : dev.historyApiFallback);
186
- this.addHandler((ctx, next) => historyApiFallbackMiddleware(ctx.req, ctx.res, next));
187
- }
188
199
  }
189
200
  onRepack(options = {}) {
190
- // reset the routing management instance every times the service starts
191
201
  if (Array.isArray(options.routes)) {
192
202
  this.router.reset(this.filterRoutes(options.routes));
193
203
  }
194
-
195
- // clean ssr bundle cache
196
204
  this.cleanSSRCache();
197
-
198
- // reset static file
199
205
  this.reader.updateFile();
200
206
  super.onRepack(options);
201
207
  }
202
- async createHTTPServer(handler) {
203
- const {
204
- dev
205
- } = this;
206
- const devHttpsOption = typeof dev === 'object' && dev.https;
207
- if (devHttpsOption) {
208
- const {
209
- genHttpsOptions
210
- } = require("../dev-tools/https");
211
- const httpsOptions = await genHttpsOptions(devHttpsOption);
212
- return (0, _https.createServer)(httpsOptions, handler);
213
- } else {
214
- return (0, _http.createServer)(handler);
215
- }
208
+ createHTTPServer(handler) {
209
+ return __async(this, null, function* () {
210
+ const { dev } = this;
211
+ const devHttpsOption = typeof dev === "object" && dev.https;
212
+ if (devHttpsOption) {
213
+ const { genHttpsOptions } = require("../dev-tools/https");
214
+ const httpsOptions = yield genHttpsOptions(devHttpsOption);
215
+ return (0, import_https.createServer)(httpsOptions, handler);
216
+ } else {
217
+ return (0, import_http.createServer)(handler);
218
+ }
219
+ });
216
220
  }
217
221
  warmupSSRBundle() {
218
- // not warmup ssr bundle on development
219
222
  }
220
223
  onServerChange({
221
224
  filepath,
222
225
  event
223
226
  }) {
224
- const {
225
- pwd
226
- } = this;
227
- const {
228
- mock
229
- } = _prodServer.AGGRED_DIR;
230
- const mockPath = _path.default.normalize(_path.default.join(pwd, mock));
227
+ const { pwd } = this;
228
+ const { mock } = import_prod_server.AGGRED_DIR;
229
+ const mockPath = import_path.default.normalize(import_path.default.join(pwd, mock));
231
230
  this.runner.reset();
232
231
  if (filepath.startsWith(mockPath)) {
233
- this.mockHandler = (0, _mock.createMockHandler)({
234
- pwd
235
- });
232
+ this.mockHandler = (0, import_mock.createMockHandler)({ pwd });
236
233
  } else {
237
234
  try {
238
- const success = this.runner.onApiChange([{
239
- filename: filepath,
240
- event
241
- }]);
242
-
243
- // onApiChange 钩子被调用,且返回 true,则表示无需重新编译
244
- // onApiChange 的类型是 WaterFall,WaterFall 钩子的返回值类型目前有问题
245
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
246
- // @ts-expect-error
235
+ const success = this.runner.onApiChange([
236
+ { filename: filepath, event }
237
+ ]);
247
238
  if (success !== true) {
248
- super.onServerChange({
249
- filepath
250
- });
239
+ super.onServerChange({ filepath });
251
240
  }
252
241
  } catch (e) {
253
242
  this.logger.error(e);
@@ -255,65 +244,56 @@ class ModernDevServer extends _prodServer.ModernServer {
255
244
  }
256
245
  }
257
246
  createContext(req, res) {
258
- return super.createContext(req, res, {
259
- etag: true
260
- });
247
+ return super.createContext(req, res, { etag: true });
261
248
  }
262
- async setupBeforeDevMiddleware() {
263
- const {
264
- runner,
265
- conf,
266
- dev
267
- } = this;
268
- const setupMids = dev.before || [];
269
- const pluginMids = await runner.beforeDevServer(conf);
270
- return [...setupMids, ...pluginMids].flat();
249
+ setupBeforeDevMiddleware() {
250
+ return __async(this, null, function* () {
251
+ const { runner, conf, dev } = this;
252
+ const setupMids = dev.before || [];
253
+ const pluginMids = yield runner.beforeDevServer(conf);
254
+ return [...setupMids, ...pluginMids].flat();
255
+ });
271
256
  }
272
- async setupAfterDevMiddleware() {
273
- const {
274
- runner,
275
- conf,
276
- dev
277
- } = this;
278
- const setupMids = dev.after || [];
279
- const pluginMids = await runner.afterDevServer(conf);
280
- return [...pluginMids, ...setupMids].flat();
257
+ setupAfterDevMiddleware() {
258
+ return __async(this, null, function* () {
259
+ const { runner, conf, dev } = this;
260
+ const setupMids = dev.after || [];
261
+ const pluginMids = yield runner.afterDevServer(conf);
262
+ return [...pluginMids, ...setupMids].flat();
263
+ });
281
264
  }
282
265
  cleanSSRCache() {
283
- const {
284
- distDir
285
- } = this;
266
+ const { distDir } = this;
286
267
  const bundles = this.router.getBundles();
287
- bundles.forEach(bundle => {
288
- const filepath = _path.default.join(distDir, bundle);
268
+ bundles.forEach((bundle) => {
269
+ const filepath = import_path.default.join(distDir, bundle);
289
270
  if (require.cache[filepath]) {
290
271
  delete require.cache[filepath];
291
272
  }
292
273
  });
293
- const loadable = _path.default.join(distDir, _constants.LOADABLE_STATS_FILE);
274
+ const loadable = import_path.default.join(distDir, import_constants.LOADABLE_STATS_FILE);
294
275
  if (require.cache[loadable]) {
295
276
  delete require.cache[loadable];
296
277
  }
297
278
  }
298
279
  startWatcher() {
299
- var _this$conf$server;
300
- const {
301
- pwd,
302
- distDir
303
- } = this;
304
- const {
305
- mock
306
- } = _prodServer.AGGRED_DIR;
307
- const defaultWatched = [`${mock}/**/*`, `${_utils.SERVER_DIR}/**/*`, `${_utils.API_DIR}/**`, `${_utils.SHARED_DIR}/**/*`, `${distDir}/${_utils.LOADER_ROUTES_DIR}/**`];
308
- const watchOptions = (0, _watcher.mergeWatchOptions)((_this$conf$server = this.conf.server) === null || _this$conf$server === void 0 ? void 0 : _this$conf$server.watchOptions);
309
- const defaultWatchedPaths = defaultWatched.map(p => {
310
- const finalPath = _path.default.isAbsolute(p) ? p : _path.default.join(pwd, p);
311
- return _path.default.normalize(finalPath);
280
+ var _a;
281
+ const { pwd, distDir } = this;
282
+ const { mock } = import_prod_server.AGGRED_DIR;
283
+ const defaultWatched = [
284
+ `${mock}/**/*`,
285
+ `${import_utils.SERVER_DIR}/**/*`,
286
+ `${import_utils.API_DIR}/**`,
287
+ `${import_utils.SHARED_DIR}/**/*`,
288
+ `${distDir}/${import_utils.LOADER_ROUTES_DIR}/**`
289
+ ];
290
+ const watchOptions = (0, import_watcher.mergeWatchOptions)((_a = this.conf.server) == null ? void 0 : _a.watchOptions);
291
+ const defaultWatchedPaths = defaultWatched.map((p) => {
292
+ const finalPath = import_path.default.isAbsolute(p) ? p : import_path.default.join(pwd, p);
293
+ return import_path.default.normalize(finalPath);
312
294
  });
313
- const watcher = new _watcher.default();
295
+ const watcher = new import_watcher.default();
314
296
  watcher.createDepTree();
315
-
316
- // 监听文件变动,如果有变动则给 client,也就是 start 启动的插件发消息
317
297
  watcher.listen(defaultWatchedPaths, watchOptions, (filepath, event) => {
318
298
  watcher.updateDepTree();
319
299
  watcher.cleanDepCache(filepath);
@@ -325,4 +305,7 @@ class ModernDevServer extends _prodServer.ModernServer {
325
305
  this.watcher = watcher;
326
306
  }
327
307
  }
328
- exports.ModernDevServer = ModernDevServer;
308
+ // Annotate the CommonJS export names for ESM import in node:
309
+ 0 && (module.exports = {
310
+ ModernDevServer
311
+ });
@@ -1,15 +1,31 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var server_exports = {};
19
+ __export(server_exports, {
20
+ DevServer: () => DevServer
5
21
  });
6
- exports.DevServer = void 0;
7
- var _prodServer = require("@modern-js/prod-server");
8
- var _devServer = require("./dev-server");
9
- const createDevServer = options => {
10
- return new _devServer.ModernDevServer(options);
22
+ module.exports = __toCommonJS(server_exports);
23
+ var import_prod_server = require("@modern-js/prod-server");
24
+ var import_dev_server = require("./dev-server");
25
+ const createDevServer = (options) => {
26
+ return new import_dev_server.ModernDevServer(options);
11
27
  };
12
- class DevServer extends _prodServer.Server {
28
+ class DevServer extends import_prod_server.Server {
13
29
  constructor(options) {
14
30
  super(options);
15
31
  if (options.dev) {
@@ -17,4 +33,7 @@ class DevServer extends _prodServer.Server {
17
33
  }
18
34
  }
19
35
  }
20
- exports.DevServer = DevServer;
36
+ // Annotate the CommonJS export names for ESM import in node:
37
+ 0 && (module.exports = {
38
+ DevServer
39
+ });
@@ -0,0 +1,15 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from === "object" || typeof from === "function") {
7
+ for (let key of __getOwnPropNames(from))
8
+ if (!__hasOwnProp.call(to, key) && key !== except)
9
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
+ }
11
+ return to;
12
+ };
13
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
+ var types_exports = {};
15
+ module.exports = __toCommonJS(types_exports);