@modern-js/server 2.35.1 → 2.36.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/constants.js +26 -9
- package/dist/cjs/dev-tools/dev-middleware/hmr-client/createSocketUrl.js +27 -17
- package/dist/cjs/dev-tools/dev-middleware/hmr-client/index.js +30 -12
- package/dist/cjs/dev-tools/dev-middleware/index.js +39 -18
- package/dist/cjs/dev-tools/dev-middleware/socketServer.js +41 -19
- package/dist/cjs/dev-tools/https/index.js +29 -12
- package/dist/cjs/dev-tools/mock/getMockData.js +27 -18
- package/dist/cjs/dev-tools/mock/index.js +43 -18
- package/dist/cjs/dev-tools/register/index.js +47 -21
- package/dist/cjs/dev-tools/watcher/dependencyTree.js +43 -24
- package/dist/cjs/dev-tools/watcher/index.js +50 -34
- package/dist/cjs/dev-tools/watcher/statsCache.js +45 -19
- package/dist/cjs/index.js +27 -18
- package/dist/cjs/server/devServer.js +80 -55
- package/dist/cjs/server/index.js +28 -11
- package/dist/cjs/server/workerSSRRender.js +38 -12
- package/dist/cjs/types.js +15 -3
- package/dist/esm/constants.js +4 -1
- package/dist/esm/dev-tools/dev-middleware/hmr-client/createSocketUrl.js +6 -2
- package/dist/esm/dev-tools/dev-middleware/hmr-client/index.js +148 -139
- package/dist/esm/dev-tools/dev-middleware/index.js +5 -4
- package/dist/esm/dev-tools/dev-middleware/socketServer.js +7 -5
- package/dist/esm/dev-tools/https/index.js +4 -1
- package/dist/esm/dev-tools/mock/getMockData.js +6 -2
- package/dist/esm/dev-tools/mock/index.js +4 -1
- package/dist/esm/dev-tools/register/index.js +7 -4
- package/dist/esm/dev-tools/watcher/dependencyTree.js +7 -3
- package/dist/esm/dev-tools/watcher/index.js +9 -4
- package/dist/esm/dev-tools/watcher/statsCache.js +4 -1
- package/dist/esm/index.js +5 -2
- package/dist/esm/server/devServer.js +17 -14
- package/dist/esm/server/index.js +4 -1
- package/dist/esm/server/workerSSRRender.js +6 -3
- package/dist/esm/types.js +0 -1
- package/dist/esm-node/constants.js +4 -1
- package/dist/esm-node/dev-tools/dev-middleware/hmr-client/createSocketUrl.js +6 -2
- package/dist/esm-node/dev-tools/dev-middleware/hmr-client/index.js +134 -125
- package/dist/esm-node/dev-tools/dev-middleware/index.js +4 -3
- package/dist/esm-node/dev-tools/dev-middleware/socketServer.js +3 -1
- package/dist/esm-node/dev-tools/https/index.js +4 -1
- package/dist/esm-node/dev-tools/mock/getMockData.js +6 -2
- package/dist/esm-node/dev-tools/mock/index.js +4 -1
- package/dist/esm-node/dev-tools/register/index.js +4 -1
- package/dist/esm-node/dev-tools/watcher/dependencyTree.js +6 -2
- package/dist/esm-node/dev-tools/watcher/index.js +9 -4
- package/dist/esm-node/dev-tools/watcher/statsCache.js +4 -1
- package/dist/esm-node/index.js +5 -2
- package/dist/esm-node/server/devServer.js +4 -1
- package/dist/esm-node/server/index.js +4 -1
- package/dist/esm-node/server/workerSSRRender.js +4 -1
- package/dist/esm-node/types.js +0 -1
- package/package.json +10 -11
|
@@ -1,18 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Object.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
9
17
|
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var register_exports = {};
|
|
30
|
+
__export(register_exports, {
|
|
31
|
+
enableRegister: () => enableRegister
|
|
10
32
|
});
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const debug = (0,
|
|
33
|
+
module.exports = __toCommonJS(register_exports);
|
|
34
|
+
var import_path = __toESM(require("path"));
|
|
35
|
+
var import_server_utils = require("@modern-js/server-utils");
|
|
36
|
+
var import_utils = require("@modern-js/utils");
|
|
37
|
+
const debug = (0, import_utils.createDebugger)("server");
|
|
16
38
|
const checkDep = (depName, paths) => {
|
|
17
39
|
let packagePath = "";
|
|
18
40
|
try {
|
|
@@ -31,8 +53,8 @@ const enableRegister = (projectRoot, config) => {
|
|
|
31
53
|
"./shared"
|
|
32
54
|
];
|
|
33
55
|
const TS_CONFIG_FILENAME = `tsconfig.json`;
|
|
34
|
-
const tsconfigPath =
|
|
35
|
-
const isTsProject =
|
|
56
|
+
const tsconfigPath = import_path.default.resolve(projectRoot, TS_CONFIG_FILENAME);
|
|
57
|
+
const isTsProject = import_utils.fs.existsSync(tsconfigPath);
|
|
36
58
|
const existTsNode = checkDep("ts-node", [
|
|
37
59
|
projectRoot
|
|
38
60
|
]);
|
|
@@ -46,15 +68,15 @@ const enableRegister = (projectRoot, config) => {
|
|
|
46
68
|
const tsNode = require("ts-node");
|
|
47
69
|
const tsConfigPaths = require("tsconfig-paths");
|
|
48
70
|
const { alias } = config.source;
|
|
49
|
-
const aliasConfig = (0,
|
|
71
|
+
const aliasConfig = (0, import_utils.getAliasConfig)(alias, {
|
|
50
72
|
appDirectory: projectRoot,
|
|
51
73
|
tsconfigPath
|
|
52
74
|
});
|
|
53
75
|
const { paths = {}, absoluteBaseUrl = "./" } = aliasConfig;
|
|
54
76
|
const tsPaths = Object.keys(paths).reduce((o, key) => {
|
|
55
77
|
let tsPath = paths[key];
|
|
56
|
-
if (typeof tsPath === "string" &&
|
|
57
|
-
tsPath =
|
|
78
|
+
if (typeof tsPath === "string" && import_path.default.isAbsolute(tsPath)) {
|
|
79
|
+
tsPath = import_path.default.relative(absoluteBaseUrl, tsPath);
|
|
58
80
|
}
|
|
59
81
|
if (typeof tsPath === "string") {
|
|
60
82
|
tsPath = [
|
|
@@ -70,7 +92,7 @@ const enableRegister = (projectRoot, config) => {
|
|
|
70
92
|
baseUrl: absoluteBaseUrl || "./",
|
|
71
93
|
paths: tsPaths
|
|
72
94
|
});
|
|
73
|
-
const tsConfig = (0,
|
|
95
|
+
const tsConfig = (0, import_utils.readTsConfigByFile)(tsconfigPath);
|
|
74
96
|
const tsNodeOptions = tsConfig["ts-node"];
|
|
75
97
|
tsNode.register({
|
|
76
98
|
project: tsconfigPath,
|
|
@@ -87,7 +109,7 @@ const enableRegister = (projectRoot, config) => {
|
|
|
87
109
|
} else {
|
|
88
110
|
var _config_tools, _config_server;
|
|
89
111
|
debug("use @babel/register");
|
|
90
|
-
const babelConfig = (0,
|
|
112
|
+
const babelConfig = (0, import_server_utils.resolveBabelConfig)(projectRoot, {
|
|
91
113
|
...config.source,
|
|
92
114
|
babelConfig: (_config_tools = config.tools) === null || _config_tools === void 0 ? void 0 : _config_tools.babel,
|
|
93
115
|
server: {
|
|
@@ -102,10 +124,10 @@ const enableRegister = (projectRoot, config) => {
|
|
|
102
124
|
...babelConfig,
|
|
103
125
|
only: [
|
|
104
126
|
function(filePath) {
|
|
105
|
-
if (filePath.includes(`node_modules${
|
|
127
|
+
if (filePath.includes(`node_modules${import_path.default.sep}.modern-js`)) {
|
|
106
128
|
return true;
|
|
107
129
|
}
|
|
108
|
-
return registerDirs.some((registerDir) => filePath.startsWith(
|
|
130
|
+
return registerDirs.some((registerDir) => filePath.startsWith(import_path.default.join(projectRoot, registerDir)));
|
|
109
131
|
}
|
|
110
132
|
],
|
|
111
133
|
extensions: [
|
|
@@ -118,3 +140,7 @@ const enableRegister = (projectRoot, config) => {
|
|
|
118
140
|
});
|
|
119
141
|
}
|
|
120
142
|
};
|
|
143
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
144
|
+
0 && (module.exports = {
|
|
145
|
+
enableRegister
|
|
146
|
+
});
|
|
@@ -1,25 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
6
9
|
for (var name in all)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return defaultIgnores;
|
|
15
|
-
},
|
|
16
|
-
DependencyTree: function() {
|
|
17
|
-
return DependencyTree;
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
17
|
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var dependencyTree_exports = {};
|
|
30
|
+
__export(dependencyTree_exports, {
|
|
31
|
+
DependencyTree: () => DependencyTree,
|
|
32
|
+
defaultIgnores: () => defaultIgnores
|
|
19
33
|
});
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
34
|
+
module.exports = __toCommonJS(dependencyTree_exports);
|
|
35
|
+
var import_define_property = require("@swc/helpers/_/_define_property");
|
|
36
|
+
var import_minimatch = __toESM(require("minimatch"));
|
|
23
37
|
const defaultIgnores = [
|
|
24
38
|
"**/coverage/**",
|
|
25
39
|
"**/node_modules/**",
|
|
@@ -40,9 +54,9 @@ class DependencyTree {
|
|
|
40
54
|
this.tree.clear();
|
|
41
55
|
Object.keys(cache).forEach((path) => {
|
|
42
56
|
if (!this.shouldIgnore(path)) {
|
|
43
|
-
const
|
|
44
|
-
this.tree.set(
|
|
45
|
-
module,
|
|
57
|
+
const module2 = cache[path];
|
|
58
|
+
this.tree.set(module2.filename, {
|
|
59
|
+
module: module2,
|
|
46
60
|
parent: /* @__PURE__ */ new Set(),
|
|
47
61
|
children: /* @__PURE__ */ new Set()
|
|
48
62
|
});
|
|
@@ -69,18 +83,23 @@ class DependencyTree {
|
|
|
69
83
|
}
|
|
70
84
|
}
|
|
71
85
|
shouldIgnore(path) {
|
|
72
|
-
return !path || Boolean(this.ignore.find((rule) =>
|
|
86
|
+
return !path || Boolean(this.ignore.find((rule) => import_minimatch.default.match([
|
|
73
87
|
path
|
|
74
88
|
], rule, {
|
|
75
89
|
dot: true
|
|
76
90
|
}).length > 0));
|
|
77
91
|
}
|
|
78
92
|
constructor() {
|
|
79
|
-
|
|
80
|
-
|
|
93
|
+
(0, import_define_property._)(this, "tree", void 0);
|
|
94
|
+
(0, import_define_property._)(this, "ignore", void 0);
|
|
81
95
|
this.tree = /* @__PURE__ */ new Map();
|
|
82
96
|
this.ignore = [
|
|
83
97
|
...defaultIgnores
|
|
84
98
|
];
|
|
85
99
|
}
|
|
86
100
|
}
|
|
101
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
102
|
+
0 && (module.exports = {
|
|
103
|
+
DependencyTree,
|
|
104
|
+
defaultIgnores
|
|
105
|
+
});
|
|
@@ -1,34 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
6
9
|
for (var name in all)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return Watcher;
|
|
15
|
-
},
|
|
16
|
-
defaultWatchOptions: function() {
|
|
17
|
-
return defaultWatchOptions;
|
|
18
|
-
},
|
|
19
|
-
getWatchedFiles: function() {
|
|
20
|
-
return getWatchedFiles;
|
|
21
|
-
},
|
|
22
|
-
mergeWatchOptions: function() {
|
|
23
|
-
return mergeWatchOptions;
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
24
17
|
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var watcher_exports = {};
|
|
30
|
+
__export(watcher_exports, {
|
|
31
|
+
default: () => Watcher,
|
|
32
|
+
defaultWatchOptions: () => defaultWatchOptions,
|
|
33
|
+
getWatchedFiles: () => getWatchedFiles,
|
|
34
|
+
mergeWatchOptions: () => mergeWatchOptions
|
|
25
35
|
});
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
36
|
+
module.exports = __toCommonJS(watcher_exports);
|
|
37
|
+
var import_define_property = require("@swc/helpers/_/_define_property");
|
|
38
|
+
var import_path = __toESM(require("path"));
|
|
39
|
+
var import_utils = require("@modern-js/utils");
|
|
40
|
+
var import_dependencyTree = require("./dependencyTree");
|
|
41
|
+
var import_statsCache = require("./statsCache");
|
|
32
42
|
const defaultWatchOptions = {
|
|
33
43
|
// 初始化的时候不触发 add、addDir 事件
|
|
34
44
|
ignoreInitial: true,
|
|
@@ -39,7 +49,7 @@ const getWatchedFiles = (watcher) => {
|
|
|
39
49
|
const files = [];
|
|
40
50
|
Object.keys(watched).forEach((dir) => {
|
|
41
51
|
watched[dir].forEach((fileName) => {
|
|
42
|
-
files.push(
|
|
52
|
+
files.push(import_path.default.join(dir, fileName));
|
|
43
53
|
});
|
|
44
54
|
});
|
|
45
55
|
return files;
|
|
@@ -70,13 +80,13 @@ class Watcher {
|
|
|
70
80
|
listen(files, options, callback) {
|
|
71
81
|
const watched = files.filter(Boolean);
|
|
72
82
|
const filenames = watched.map((filename) => filename.replace(/\\/g, "/"));
|
|
73
|
-
const cache = new
|
|
74
|
-
const watcher =
|
|
83
|
+
const cache = new import_statsCache.StatsCache();
|
|
84
|
+
const watcher = import_utils.chokidar.watch(filenames, options);
|
|
75
85
|
watcher.on("ready", () => {
|
|
76
86
|
cache.add(getWatchedFiles(watcher));
|
|
77
87
|
});
|
|
78
88
|
watcher.on("change", (changed) => {
|
|
79
|
-
if (!
|
|
89
|
+
if (!import_utils.fs.existsSync(changed) || cache.isDiff(changed)) {
|
|
80
90
|
cache.refresh(changed);
|
|
81
91
|
callback(changed, "change");
|
|
82
92
|
}
|
|
@@ -96,7 +106,7 @@ class Watcher {
|
|
|
96
106
|
this.watcher = watcher;
|
|
97
107
|
}
|
|
98
108
|
createDepTree() {
|
|
99
|
-
this.dependencyTree = new
|
|
109
|
+
this.dependencyTree = new import_dependencyTree.DependencyTree();
|
|
100
110
|
}
|
|
101
111
|
updateDepTree() {
|
|
102
112
|
var _this_dependencyTree;
|
|
@@ -116,7 +126,13 @@ class Watcher {
|
|
|
116
126
|
return this.watcher.close();
|
|
117
127
|
}
|
|
118
128
|
constructor() {
|
|
119
|
-
|
|
120
|
-
|
|
129
|
+
(0, import_define_property._)(this, "dependencyTree", null);
|
|
130
|
+
(0, import_define_property._)(this, "watcher", void 0);
|
|
121
131
|
}
|
|
122
132
|
}
|
|
133
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
134
|
+
0 && (module.exports = {
|
|
135
|
+
defaultWatchOptions,
|
|
136
|
+
getWatchedFiles,
|
|
137
|
+
mergeWatchOptions
|
|
138
|
+
});
|
|
@@ -1,23 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Object.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
9
17
|
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var statsCache_exports = {};
|
|
30
|
+
__export(statsCache_exports, {
|
|
31
|
+
StatsCache: () => StatsCache
|
|
10
32
|
});
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
33
|
+
module.exports = __toCommonJS(statsCache_exports);
|
|
34
|
+
var import_define_property = require("@swc/helpers/_/_define_property");
|
|
35
|
+
var import_fs = __toESM(require("fs"));
|
|
36
|
+
var import_crypto = __toESM(require("crypto"));
|
|
15
37
|
class StatsCache {
|
|
16
38
|
add(files) {
|
|
17
39
|
const { cachedHash, cachedSize } = this;
|
|
18
40
|
for (const filename of files) {
|
|
19
|
-
if (
|
|
20
|
-
const stats =
|
|
41
|
+
if (import_fs.default.existsSync(filename)) {
|
|
42
|
+
const stats = import_fs.default.statSync(filename);
|
|
21
43
|
if (stats.isFile() && !cachedHash[filename]) {
|
|
22
44
|
cachedHash[filename] = this.hash(stats, filename);
|
|
23
45
|
cachedSize[filename] = stats.size;
|
|
@@ -27,8 +49,8 @@ class StatsCache {
|
|
|
27
49
|
}
|
|
28
50
|
refresh(filename) {
|
|
29
51
|
const { cachedHash, cachedSize } = this;
|
|
30
|
-
if (
|
|
31
|
-
const stats =
|
|
52
|
+
if (import_fs.default.existsSync(filename)) {
|
|
53
|
+
const stats = import_fs.default.statSync(filename);
|
|
32
54
|
if (stats.isFile()) {
|
|
33
55
|
cachedHash[filename] = this.hash(stats, filename);
|
|
34
56
|
cachedSize[filename] = stats.size;
|
|
@@ -43,7 +65,7 @@ class StatsCache {
|
|
|
43
65
|
}
|
|
44
66
|
isDiff(filename) {
|
|
45
67
|
const { cachedHash, cachedSize } = this;
|
|
46
|
-
const stats =
|
|
68
|
+
const stats = import_fs.default.statSync(filename);
|
|
47
69
|
const hash = cachedHash[filename];
|
|
48
70
|
const size = cachedSize[filename];
|
|
49
71
|
if (stats.size !== size) {
|
|
@@ -58,10 +80,14 @@ class StatsCache {
|
|
|
58
80
|
return Boolean(this.cachedHash[filename]);
|
|
59
81
|
}
|
|
60
82
|
hash(stats, filename) {
|
|
61
|
-
return
|
|
83
|
+
return import_crypto.default.createHash("md5").update(import_fs.default.readFileSync(filename)).digest("hex");
|
|
62
84
|
}
|
|
63
85
|
constructor() {
|
|
64
|
-
|
|
65
|
-
|
|
86
|
+
(0, import_define_property._)(this, "cachedHash", {});
|
|
87
|
+
(0, import_define_property._)(this, "cachedSize", {});
|
|
66
88
|
}
|
|
67
89
|
}
|
|
90
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
91
|
+
0 && (module.exports = {
|
|
92
|
+
StatsCache
|
|
93
|
+
});
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,27 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
6
7
|
for (var name in all)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return _server.DevServer;
|
|
15
|
-
},
|
|
16
|
-
default: function() {
|
|
17
|
-
return _default;
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
15
|
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var src_exports = {};
|
|
20
|
+
__export(src_exports, {
|
|
21
|
+
Server: () => import_server.DevServer,
|
|
22
|
+
default: () => src_default
|
|
19
23
|
});
|
|
20
|
-
|
|
21
|
-
|
|
24
|
+
module.exports = __toCommonJS(src_exports);
|
|
25
|
+
var import_server = require("./server");
|
|
26
|
+
var src_default = (options) => {
|
|
22
27
|
if (options == null) {
|
|
23
28
|
throw new Error("can not start server without options");
|
|
24
29
|
}
|
|
25
|
-
const server = new
|
|
30
|
+
const server = new import_server.DevServer(options);
|
|
26
31
|
return server.init();
|
|
27
32
|
};
|
|
33
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
34
|
+
0 && (module.exports = {
|
|
35
|
+
Server
|
|
36
|
+
});
|