vite-node 3.0.9 → 3.1.0-beta.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/chunk-hmr.cjs +193 -231
- package/dist/chunk-hmr.mjs +193 -231
- package/dist/cli.cjs +100 -113
- package/dist/cli.mjs +100 -113
- package/dist/client.cjs +387 -468
- package/dist/client.mjs +387 -468
- package/dist/constants.cjs +27 -33
- package/dist/constants.mjs +27 -33
- package/dist/server.cjs +354 -516
- package/dist/server.mjs +354 -516
- package/dist/source-map.cjs +258 -341
- package/dist/source-map.mjs +258 -341
- package/dist/utils.cjs +137 -152
- package/dist/utils.mjs +137 -152
- package/package.json +1 -1
package/dist/cli.cjs
CHANGED
|
@@ -21,125 +21,112 @@ require('es-module-lexer');
|
|
|
21
21
|
require('./constants.cjs');
|
|
22
22
|
require('node:events');
|
|
23
23
|
|
|
24
|
-
var version = "3.0.
|
|
24
|
+
var version = "3.1.0-beta.2";
|
|
25
25
|
|
|
26
26
|
const cli = cac("vite-node");
|
|
27
|
-
cli.option("-r, --root <path>", "Use specified root directory").option("-c, --config <path>", "Use specified config file").option("-m, --mode <mode>", "Set env mode").option("-w, --watch",
|
|
27
|
+
cli.option("-r, --root <path>", "Use specified root directory").option("-c, --config <path>", "Use specified config file").option("-m, --mode <mode>", "Set env mode").option("-w, --watch", "Restart on file changes, similar to \"nodemon\"").option("--script", "Use vite-node as a script runner").option("--options <options>", "Use specified Vite server options").option("-v, --version", "Output the version number").option("-h, --help", "Display help for command");
|
|
28
28
|
cli.command("[...files]").allowUnknownOptions().action(run);
|
|
29
29
|
cli.parse(process.argv, { run: false });
|
|
30
|
-
if (cli.args.length === 0)
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
30
|
+
if (cli.args.length === 0) cli.runMatchedCommand();
|
|
31
|
+
else {
|
|
32
|
+
const i = cli.rawArgs.indexOf(cli.args[0]) + 1;
|
|
33
|
+
const scriptArgs = cli.rawArgs.slice(i).filter((it) => it !== "--");
|
|
34
|
+
const executeArgs = [
|
|
35
|
+
...cli.rawArgs.slice(0, i),
|
|
36
|
+
"--",
|
|
37
|
+
...scriptArgs
|
|
38
|
+
];
|
|
39
|
+
cli.parse(executeArgs);
|
|
37
40
|
}
|
|
38
41
|
async function run(files, options = {}) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
if (!options.watch) {
|
|
108
|
-
await server$1.close();
|
|
109
|
-
}
|
|
110
|
-
(_b = server$1.emitter) == null ? void 0 : _b.on("message", (payload) => {
|
|
111
|
-
hmr.handleMessage(runner, server$1.emitter, files, payload);
|
|
112
|
-
});
|
|
113
|
-
if (options.watch) {
|
|
114
|
-
process.on("uncaughtException", (err) => {
|
|
115
|
-
console.error(browser.s.red("[vite-node] Failed to execute file: \n"), err);
|
|
116
|
-
});
|
|
117
|
-
}
|
|
42
|
+
var _server$emitter;
|
|
43
|
+
if (options.script) {
|
|
44
|
+
files = [files[0]];
|
|
45
|
+
options = {};
|
|
46
|
+
process.argv = [
|
|
47
|
+
process.argv[0],
|
|
48
|
+
path.resolve(files[0]),
|
|
49
|
+
...process.argv.slice(2).filter((arg) => arg !== "--script" && arg !== files[0])
|
|
50
|
+
];
|
|
51
|
+
} else process.argv = [...process.argv.slice(0, 2), ...options["--"] || []];
|
|
52
|
+
if (options.version) {
|
|
53
|
+
cli.version(version);
|
|
54
|
+
cli.outputVersion();
|
|
55
|
+
process.exit(0);
|
|
56
|
+
}
|
|
57
|
+
if (options.help) {
|
|
58
|
+
cli.version(version).outputHelp();
|
|
59
|
+
process.exit(0);
|
|
60
|
+
}
|
|
61
|
+
if (!files.length) {
|
|
62
|
+
console.error(browser.s.red("No files specified."));
|
|
63
|
+
cli.version(version).outputHelp();
|
|
64
|
+
process.exit(1);
|
|
65
|
+
}
|
|
66
|
+
const serverOptions = options.options ? parseServerOptions(options.options) : {};
|
|
67
|
+
const server$1 = await vite.createServer({
|
|
68
|
+
logLevel: "error",
|
|
69
|
+
configFile: options.config,
|
|
70
|
+
root: options.root,
|
|
71
|
+
mode: options.mode,
|
|
72
|
+
server: {
|
|
73
|
+
hmr: !!options.watch,
|
|
74
|
+
watch: options.watch ? void 0 : null
|
|
75
|
+
},
|
|
76
|
+
plugins: [options.watch && hmr.viteNodeHmrPlugin()]
|
|
77
|
+
});
|
|
78
|
+
if (Number(vite.version.split(".")[0]) < 6) await server$1.pluginContainer.buildStart({});
|
|
79
|
+
else await server$1.environments.client.pluginContainer.buildStart({});
|
|
80
|
+
const env = vite.loadEnv(server$1.config.mode, server$1.config.envDir, "");
|
|
81
|
+
for (const key in env) {
|
|
82
|
+
var _process$env;
|
|
83
|
+
(_process$env = process.env)[key] ?? (_process$env[key] = env[key]);
|
|
84
|
+
}
|
|
85
|
+
const node = new server.ViteNodeServer(server$1, serverOptions);
|
|
86
|
+
sourceMap.installSourcemapsSupport({ getSourceMap: (source) => node.getSourceMap(source) });
|
|
87
|
+
const runner = new client.ViteNodeRunner({
|
|
88
|
+
root: server$1.config.root,
|
|
89
|
+
base: server$1.config.base,
|
|
90
|
+
fetchModule(id) {
|
|
91
|
+
return node.fetchModule(id);
|
|
92
|
+
},
|
|
93
|
+
resolveId(id, importer) {
|
|
94
|
+
return node.resolveId(id, importer);
|
|
95
|
+
},
|
|
96
|
+
createHotContext(runner, url) {
|
|
97
|
+
return hmr.createHotContext(runner, server$1.emitter, files, url);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
await runner.executeId("/@vite/env");
|
|
101
|
+
for (const file of files) await runner.executeFile(file);
|
|
102
|
+
if (!options.watch) await server$1.close();
|
|
103
|
+
(_server$emitter = server$1.emitter) === null || _server$emitter === void 0 || _server$emitter.on("message", (payload) => {
|
|
104
|
+
hmr.handleMessage(runner, server$1.emitter, files, payload);
|
|
105
|
+
});
|
|
106
|
+
if (options.watch) process.on("uncaughtException", (err) => {
|
|
107
|
+
console.error(browser.s.red("[vite-node] Failed to execute file: \n"), err);
|
|
108
|
+
});
|
|
118
109
|
}
|
|
119
110
|
function parseServerOptions(serverOptions) {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
(dep) => new RegExp(dep)
|
|
142
|
-
)
|
|
143
|
-
}
|
|
144
|
-
};
|
|
111
|
+
var _serverOptions$deps, _serverOptions$deps2, _serverOptions$deps3, _serverOptions$deps4, _serverOptions$deps5, _serverOptions$deps6, _serverOptions$transf, _serverOptions$transf2;
|
|
112
|
+
const inlineOptions = ((_serverOptions$deps = serverOptions.deps) === null || _serverOptions$deps === void 0 ? void 0 : _serverOptions$deps.inline) === true ? true : utils.toArray((_serverOptions$deps2 = serverOptions.deps) === null || _serverOptions$deps2 === void 0 ? void 0 : _serverOptions$deps2.inline);
|
|
113
|
+
return {
|
|
114
|
+
...serverOptions,
|
|
115
|
+
deps: {
|
|
116
|
+
...serverOptions.deps,
|
|
117
|
+
inlineFiles: utils.toArray((_serverOptions$deps3 = serverOptions.deps) === null || _serverOptions$deps3 === void 0 ? void 0 : _serverOptions$deps3.inlineFiles),
|
|
118
|
+
inline: inlineOptions !== true ? inlineOptions.map((dep) => {
|
|
119
|
+
return dep.startsWith("/") && dep.endsWith("/") ? new RegExp(dep) : dep;
|
|
120
|
+
}) : true,
|
|
121
|
+
external: utils.toArray((_serverOptions$deps4 = serverOptions.deps) === null || _serverOptions$deps4 === void 0 ? void 0 : _serverOptions$deps4.external).map((dep) => {
|
|
122
|
+
return dep.startsWith("/") && dep.endsWith("/") ? new RegExp(dep) : dep;
|
|
123
|
+
}),
|
|
124
|
+
moduleDirectories: ((_serverOptions$deps5 = serverOptions.deps) === null || _serverOptions$deps5 === void 0 ? void 0 : _serverOptions$deps5.moduleDirectories) ? utils.toArray((_serverOptions$deps6 = serverOptions.deps) === null || _serverOptions$deps6 === void 0 ? void 0 : _serverOptions$deps6.moduleDirectories) : void 0
|
|
125
|
+
},
|
|
126
|
+
transformMode: {
|
|
127
|
+
...serverOptions.transformMode,
|
|
128
|
+
ssr: utils.toArray((_serverOptions$transf = serverOptions.transformMode) === null || _serverOptions$transf === void 0 ? void 0 : _serverOptions$transf.ssr).map((dep) => new RegExp(dep)),
|
|
129
|
+
web: utils.toArray((_serverOptions$transf2 = serverOptions.transformMode) === null || _serverOptions$transf2 === void 0 ? void 0 : _serverOptions$transf2.web).map((dep) => new RegExp(dep))
|
|
130
|
+
}
|
|
131
|
+
};
|
|
145
132
|
}
|
package/dist/cli.mjs
CHANGED
|
@@ -19,125 +19,112 @@ import 'es-module-lexer';
|
|
|
19
19
|
import './constants.mjs';
|
|
20
20
|
import 'node:events';
|
|
21
21
|
|
|
22
|
-
var version = "3.0.
|
|
22
|
+
var version = "3.1.0-beta.2";
|
|
23
23
|
|
|
24
24
|
const cli = cac("vite-node");
|
|
25
|
-
cli.option("-r, --root <path>", "Use specified root directory").option("-c, --config <path>", "Use specified config file").option("-m, --mode <mode>", "Set env mode").option("-w, --watch",
|
|
25
|
+
cli.option("-r, --root <path>", "Use specified root directory").option("-c, --config <path>", "Use specified config file").option("-m, --mode <mode>", "Set env mode").option("-w, --watch", "Restart on file changes, similar to \"nodemon\"").option("--script", "Use vite-node as a script runner").option("--options <options>", "Use specified Vite server options").option("-v, --version", "Output the version number").option("-h, --help", "Display help for command");
|
|
26
26
|
cli.command("[...files]").allowUnknownOptions().action(run);
|
|
27
27
|
cli.parse(process.argv, { run: false });
|
|
28
|
-
if (cli.args.length === 0)
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
if (cli.args.length === 0) cli.runMatchedCommand();
|
|
29
|
+
else {
|
|
30
|
+
const i = cli.rawArgs.indexOf(cli.args[0]) + 1;
|
|
31
|
+
const scriptArgs = cli.rawArgs.slice(i).filter((it) => it !== "--");
|
|
32
|
+
const executeArgs = [
|
|
33
|
+
...cli.rawArgs.slice(0, i),
|
|
34
|
+
"--",
|
|
35
|
+
...scriptArgs
|
|
36
|
+
];
|
|
37
|
+
cli.parse(executeArgs);
|
|
35
38
|
}
|
|
36
39
|
async function run(files, options = {}) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
}
|
|
105
|
-
if (!options.watch) {
|
|
106
|
-
await server.close();
|
|
107
|
-
}
|
|
108
|
-
(_b = server.emitter) == null ? void 0 : _b.on("message", (payload) => {
|
|
109
|
-
handleMessage(runner, server.emitter, files, payload);
|
|
110
|
-
});
|
|
111
|
-
if (options.watch) {
|
|
112
|
-
process.on("uncaughtException", (err) => {
|
|
113
|
-
console.error(s.red("[vite-node] Failed to execute file: \n"), err);
|
|
114
|
-
});
|
|
115
|
-
}
|
|
40
|
+
var _server$emitter;
|
|
41
|
+
if (options.script) {
|
|
42
|
+
files = [files[0]];
|
|
43
|
+
options = {};
|
|
44
|
+
process.argv = [
|
|
45
|
+
process.argv[0],
|
|
46
|
+
resolve(files[0]),
|
|
47
|
+
...process.argv.slice(2).filter((arg) => arg !== "--script" && arg !== files[0])
|
|
48
|
+
];
|
|
49
|
+
} else process.argv = [...process.argv.slice(0, 2), ...options["--"] || []];
|
|
50
|
+
if (options.version) {
|
|
51
|
+
cli.version(version);
|
|
52
|
+
cli.outputVersion();
|
|
53
|
+
process.exit(0);
|
|
54
|
+
}
|
|
55
|
+
if (options.help) {
|
|
56
|
+
cli.version(version).outputHelp();
|
|
57
|
+
process.exit(0);
|
|
58
|
+
}
|
|
59
|
+
if (!files.length) {
|
|
60
|
+
console.error(s.red("No files specified."));
|
|
61
|
+
cli.version(version).outputHelp();
|
|
62
|
+
process.exit(1);
|
|
63
|
+
}
|
|
64
|
+
const serverOptions = options.options ? parseServerOptions(options.options) : {};
|
|
65
|
+
const server = await createServer({
|
|
66
|
+
logLevel: "error",
|
|
67
|
+
configFile: options.config,
|
|
68
|
+
root: options.root,
|
|
69
|
+
mode: options.mode,
|
|
70
|
+
server: {
|
|
71
|
+
hmr: !!options.watch,
|
|
72
|
+
watch: options.watch ? void 0 : null
|
|
73
|
+
},
|
|
74
|
+
plugins: [options.watch && viteNodeHmrPlugin()]
|
|
75
|
+
});
|
|
76
|
+
if (Number(version$1.split(".")[0]) < 6) await server.pluginContainer.buildStart({});
|
|
77
|
+
else await server.environments.client.pluginContainer.buildStart({});
|
|
78
|
+
const env = loadEnv(server.config.mode, server.config.envDir, "");
|
|
79
|
+
for (const key in env) {
|
|
80
|
+
var _process$env;
|
|
81
|
+
(_process$env = process.env)[key] ?? (_process$env[key] = env[key]);
|
|
82
|
+
}
|
|
83
|
+
const node = new ViteNodeServer(server, serverOptions);
|
|
84
|
+
installSourcemapsSupport({ getSourceMap: (source) => node.getSourceMap(source) });
|
|
85
|
+
const runner = new ViteNodeRunner({
|
|
86
|
+
root: server.config.root,
|
|
87
|
+
base: server.config.base,
|
|
88
|
+
fetchModule(id) {
|
|
89
|
+
return node.fetchModule(id);
|
|
90
|
+
},
|
|
91
|
+
resolveId(id, importer) {
|
|
92
|
+
return node.resolveId(id, importer);
|
|
93
|
+
},
|
|
94
|
+
createHotContext(runner, url) {
|
|
95
|
+
return createHotContext(runner, server.emitter, files, url);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
await runner.executeId("/@vite/env");
|
|
99
|
+
for (const file of files) await runner.executeFile(file);
|
|
100
|
+
if (!options.watch) await server.close();
|
|
101
|
+
(_server$emitter = server.emitter) === null || _server$emitter === void 0 || _server$emitter.on("message", (payload) => {
|
|
102
|
+
handleMessage(runner, server.emitter, files, payload);
|
|
103
|
+
});
|
|
104
|
+
if (options.watch) process.on("uncaughtException", (err) => {
|
|
105
|
+
console.error(s.red("[vite-node] Failed to execute file: \n"), err);
|
|
106
|
+
});
|
|
116
107
|
}
|
|
117
108
|
function parseServerOptions(serverOptions) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
(dep) => new RegExp(dep)
|
|
140
|
-
)
|
|
141
|
-
}
|
|
142
|
-
};
|
|
109
|
+
var _serverOptions$deps, _serverOptions$deps2, _serverOptions$deps3, _serverOptions$deps4, _serverOptions$deps5, _serverOptions$deps6, _serverOptions$transf, _serverOptions$transf2;
|
|
110
|
+
const inlineOptions = ((_serverOptions$deps = serverOptions.deps) === null || _serverOptions$deps === void 0 ? void 0 : _serverOptions$deps.inline) === true ? true : toArray((_serverOptions$deps2 = serverOptions.deps) === null || _serverOptions$deps2 === void 0 ? void 0 : _serverOptions$deps2.inline);
|
|
111
|
+
return {
|
|
112
|
+
...serverOptions,
|
|
113
|
+
deps: {
|
|
114
|
+
...serverOptions.deps,
|
|
115
|
+
inlineFiles: toArray((_serverOptions$deps3 = serverOptions.deps) === null || _serverOptions$deps3 === void 0 ? void 0 : _serverOptions$deps3.inlineFiles),
|
|
116
|
+
inline: inlineOptions !== true ? inlineOptions.map((dep) => {
|
|
117
|
+
return dep.startsWith("/") && dep.endsWith("/") ? new RegExp(dep) : dep;
|
|
118
|
+
}) : true,
|
|
119
|
+
external: toArray((_serverOptions$deps4 = serverOptions.deps) === null || _serverOptions$deps4 === void 0 ? void 0 : _serverOptions$deps4.external).map((dep) => {
|
|
120
|
+
return dep.startsWith("/") && dep.endsWith("/") ? new RegExp(dep) : dep;
|
|
121
|
+
}),
|
|
122
|
+
moduleDirectories: ((_serverOptions$deps5 = serverOptions.deps) === null || _serverOptions$deps5 === void 0 ? void 0 : _serverOptions$deps5.moduleDirectories) ? toArray((_serverOptions$deps6 = serverOptions.deps) === null || _serverOptions$deps6 === void 0 ? void 0 : _serverOptions$deps6.moduleDirectories) : void 0
|
|
123
|
+
},
|
|
124
|
+
transformMode: {
|
|
125
|
+
...serverOptions.transformMode,
|
|
126
|
+
ssr: toArray((_serverOptions$transf = serverOptions.transformMode) === null || _serverOptions$transf === void 0 ? void 0 : _serverOptions$transf.ssr).map((dep) => new RegExp(dep)),
|
|
127
|
+
web: toArray((_serverOptions$transf2 = serverOptions.transformMode) === null || _serverOptions$transf2 === void 0 ? void 0 : _serverOptions$transf2.web).map((dep) => new RegExp(dep))
|
|
128
|
+
}
|
|
129
|
+
};
|
|
143
130
|
}
|