vite-node 4.0.0-beta.1 → 4.0.0-beta.11
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/LICENSE +1 -1
- package/README.md +4 -2
- package/dist/chunk-hmr.cjs +28 -56
- package/dist/chunk-hmr.mjs +28 -56
- package/dist/{chunk-browser.cjs → chunk-index.cjs} +26 -25
- package/dist/{chunk-browser.mjs → chunk-index.mjs} +26 -25
- package/dist/cli.cjs +19 -40
- package/dist/cli.d.ts +2 -2
- package/dist/cli.mjs +19 -40
- package/dist/client.cjs +45 -109
- package/dist/client.d.ts +2 -2
- package/dist/client.mjs +43 -107
- package/dist/constants.cjs +1 -1
- package/dist/constants.mjs +1 -1
- package/dist/hmr.cjs +1 -1
- package/dist/hmr.d.ts +4 -7
- package/dist/hmr.mjs +1 -1
- package/dist/{index.d-DGmxD2U7.d.ts → index.d-uN06xifv.d.ts} +6 -7
- package/dist/index.d.ts +2 -2
- package/dist/server.cjs +46 -104
- package/dist/server.d.ts +3 -3
- package/dist/server.mjs +46 -104
- package/dist/source-map.cjs +296 -409
- package/dist/source-map.d.ts +4 -4
- package/dist/source-map.mjs +297 -410
- package/dist/{trace-mapping.d-DLVdEqOp.d.ts → trace-mapping.d-BWFx6tPc.d.ts} +6 -1
- package/dist/types.d.ts +2 -2
- package/dist/utils.cjs +17 -37
- package/dist/utils.d.ts +5 -5
- package/dist/utils.mjs +17 -37
- package/package.json +3 -3
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2021-Present Vitest
|
|
3
|
+
Copyright (c) 2021-Present VoidZero Inc. and Vitest contributors
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
package/README.md
CHANGED
|
@@ -91,10 +91,12 @@ import { installSourcemapsSupport } from 'vite-node/source-map'
|
|
|
91
91
|
const server = await createServer({
|
|
92
92
|
optimizeDeps: {
|
|
93
93
|
// It's recommended to disable deps optimization
|
|
94
|
-
|
|
94
|
+
noDiscovery: true,
|
|
95
|
+
include: undefined,
|
|
95
96
|
},
|
|
96
97
|
})
|
|
97
|
-
|
|
98
|
+
|
|
99
|
+
// For old Vite, this is needed to initialize the plugins.
|
|
98
100
|
if (Number(viteVersion.split('.')[0]) < 6) {
|
|
99
101
|
await server.pluginContainer.buildStart({})
|
|
100
102
|
}
|
package/dist/chunk-hmr.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var node_events = require('node:events');
|
|
4
4
|
var createDebug = require('debug');
|
|
5
|
-
var
|
|
5
|
+
var index = require('./chunk-index.cjs');
|
|
6
6
|
var utils = require('./utils.cjs');
|
|
7
7
|
|
|
8
8
|
function createHmrEmitter() {
|
|
@@ -19,24 +19,20 @@ function viteNodeHmrPlugin() {
|
|
|
19
19
|
},
|
|
20
20
|
configureServer(server) {
|
|
21
21
|
const _send = server.ws.send;
|
|
22
|
-
server.emitter = emitter
|
|
23
|
-
|
|
24
|
-
_send(payload);
|
|
25
|
-
emitter.emit("message", payload);
|
|
22
|
+
server.emitter = emitter, server.ws.send = function(payload) {
|
|
23
|
+
_send(payload), emitter.emit("message", payload);
|
|
26
24
|
};
|
|
27
25
|
// eslint-disable-next-line ts/ban-ts-comment
|
|
28
26
|
// @ts-ignore Vite 6 compat
|
|
29
27
|
const environments = server.environments;
|
|
30
28
|
if (environments) environments.ssr.hot.send = function(payload) {
|
|
31
|
-
_send(payload);
|
|
32
|
-
emitter.emit("message", payload);
|
|
29
|
+
_send(payload), emitter.emit("message", payload);
|
|
33
30
|
};
|
|
34
31
|
}
|
|
35
32
|
};
|
|
36
33
|
}
|
|
37
34
|
|
|
38
|
-
const debugHmr = createDebug("vite-node:hmr");
|
|
39
|
-
const cache = /* @__PURE__ */ new WeakMap();
|
|
35
|
+
const debugHmr = createDebug("vite-node:hmr"), cache = /* @__PURE__ */ new WeakMap();
|
|
40
36
|
function getCache(runner) {
|
|
41
37
|
if (!cache.has(runner)) cache.set(runner, {
|
|
42
38
|
hotModulesMap: /* @__PURE__ */ new Map(),
|
|
@@ -54,38 +50,28 @@ function getCache(runner) {
|
|
|
54
50
|
}
|
|
55
51
|
function sendMessageBuffer(runner, emitter) {
|
|
56
52
|
const maps = getCache(runner);
|
|
57
|
-
maps.messageBuffer.forEach((msg) => emitter.emit("custom", msg));
|
|
58
|
-
maps.messageBuffer.length = 0;
|
|
53
|
+
maps.messageBuffer.forEach((msg) => emitter.emit("custom", msg)), maps.messageBuffer.length = 0;
|
|
59
54
|
}
|
|
60
55
|
async function reload(runner, files) {
|
|
61
|
-
|
|
62
|
-
Array.from(runner.moduleCache.keys()).forEach((fsPath) => {
|
|
56
|
+
return Array.from(runner.moduleCache.keys()).forEach((fsPath) => {
|
|
63
57
|
if (!fsPath.includes("node_modules")) runner.moduleCache.delete(fsPath);
|
|
64
|
-
});
|
|
65
|
-
return Promise.all(files.map((file) => runner.executeId(file)));
|
|
58
|
+
}), Promise.all(files.map((file) => runner.executeId(file)));
|
|
66
59
|
}
|
|
67
60
|
async function notifyListeners(runner, event, data) {
|
|
68
|
-
const maps = getCache(runner);
|
|
69
|
-
const cbs = maps.customListenersMap.get(event);
|
|
61
|
+
const maps = getCache(runner), cbs = maps.customListenersMap.get(event);
|
|
70
62
|
if (cbs) await Promise.all(cbs.map((cb) => cb(data)));
|
|
71
63
|
}
|
|
72
64
|
async function queueUpdate(runner, p) {
|
|
73
65
|
const maps = getCache(runner);
|
|
74
|
-
maps.queued.push(p)
|
|
75
|
-
|
|
76
|
-
maps.pending = true;
|
|
77
|
-
await Promise.resolve();
|
|
78
|
-
maps.pending = false;
|
|
66
|
+
if (maps.queued.push(p), !maps.pending) {
|
|
67
|
+
maps.pending = true, await Promise.resolve(), maps.pending = false;
|
|
79
68
|
const loading = [...maps.queued];
|
|
80
|
-
maps.queued = [];
|
|
81
|
-
(await Promise.all(loading)).forEach((fn) => fn && fn());
|
|
69
|
+
maps.queued = [], (await Promise.all(loading)).forEach((fn) => fn && fn());
|
|
82
70
|
}
|
|
83
71
|
}
|
|
84
72
|
async function fetchUpdate(runner, { path, acceptedPath }) {
|
|
85
|
-
path = utils.normalizeRequestId(path);
|
|
86
|
-
|
|
87
|
-
const maps = getCache(runner);
|
|
88
|
-
const mod = maps.hotModulesMap.get(path);
|
|
73
|
+
path = utils.normalizeRequestId(path), acceptedPath = utils.normalizeRequestId(acceptedPath);
|
|
74
|
+
const maps = getCache(runner), mod = maps.hotModulesMap.get(path);
|
|
89
75
|
if (!mod)
|
|
90
76
|
// In a code-splitting project,
|
|
91
77
|
// it is common that the hot-updating module is not loaded yet.
|
|
@@ -107,7 +93,7 @@ async function fetchUpdate(runner, { path, acceptedPath }) {
|
|
|
107
93
|
return () => {
|
|
108
94
|
for (const { deps, fn } of qualifiedCallbacks) fn(deps.map((dep) => dep === acceptedPath ? fetchedModule : void 0));
|
|
109
95
|
const loggedPath = isSelfUpdate ? path : `${acceptedPath} via ${path}`;
|
|
110
|
-
console.log(`${
|
|
96
|
+
console.log(`${index.C.cyan("[vite-node]")} hot updated: ${loggedPath}`);
|
|
111
97
|
};
|
|
112
98
|
}
|
|
113
99
|
function warnFailedFetch(err, path) {
|
|
@@ -121,26 +107,18 @@ async function handleMessage(runner, emitter, files, payload) {
|
|
|
121
107
|
sendMessageBuffer(runner, emitter);
|
|
122
108
|
break;
|
|
123
109
|
case "update":
|
|
124
|
-
await notifyListeners(runner, "vite:beforeUpdate", payload)
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
// css-update
|
|
128
|
-
console.error(`${browser.s.cyan("[vite-node]")} no support css hmr.}`);
|
|
129
|
-
return null;
|
|
130
|
-
}));
|
|
131
|
-
await notifyListeners(runner, "vite:afterUpdate", payload);
|
|
110
|
+
await notifyListeners(runner, "vite:beforeUpdate", payload), await Promise.all(payload.updates.map((update) => {
|
|
111
|
+
return update.type === "js-update" ? queueUpdate(runner, fetchUpdate(runner, update)) : (console.error(`${index.C.cyan("[vite-node]")} no support css hmr.}`), null);
|
|
112
|
+
})), await notifyListeners(runner, "vite:afterUpdate", payload);
|
|
132
113
|
break;
|
|
133
114
|
case "full-reload":
|
|
134
|
-
await notifyListeners(runner, "vite:beforeFullReload", payload);
|
|
135
|
-
maps.customListenersMap.delete("vite:beforeFullReload");
|
|
136
|
-
await reload(runner, files);
|
|
115
|
+
await notifyListeners(runner, "vite:beforeFullReload", payload), maps.customListenersMap.delete("vite:beforeFullReload"), await reload(runner, files);
|
|
137
116
|
break;
|
|
138
117
|
case "custom":
|
|
139
118
|
await notifyListeners(runner, payload.event, payload.data);
|
|
140
119
|
break;
|
|
141
120
|
case "prune":
|
|
142
|
-
await notifyListeners(runner, "vite:beforePrune", payload)
|
|
143
|
-
payload.paths.forEach((path) => {
|
|
121
|
+
await notifyListeners(runner, "vite:beforePrune", payload), payload.paths.forEach((path) => {
|
|
144
122
|
const fn = maps.pruneMap.get(path);
|
|
145
123
|
if (fn) fn(maps.dataMap.get(path));
|
|
146
124
|
});
|
|
@@ -148,7 +126,7 @@ async function handleMessage(runner, emitter, files, payload) {
|
|
|
148
126
|
case "error": {
|
|
149
127
|
await notifyListeners(runner, "vite:error", payload);
|
|
150
128
|
const err = payload.err;
|
|
151
|
-
console.error(`${
|
|
129
|
+
console.error(`${index.C.cyan("[vite-node]")} Internal Server Error\n${err.message}\n${err.stack}`);
|
|
152
130
|
break;
|
|
153
131
|
}
|
|
154
132
|
}
|
|
@@ -171,8 +149,7 @@ function createHotContext(runner, emitter, files, ownerPath) {
|
|
|
171
149
|
mod.callbacks.push({
|
|
172
150
|
deps,
|
|
173
151
|
fn: callback
|
|
174
|
-
});
|
|
175
|
-
maps.hotModulesMap.set(ownerPath, mod);
|
|
152
|
+
}), maps.hotModulesMap.set(ownerPath, mod);
|
|
176
153
|
}
|
|
177
154
|
const hot = {
|
|
178
155
|
get data() {
|
|
@@ -198,21 +175,18 @@ function createHotContext(runner, emitter, files, ownerPath) {
|
|
|
198
175
|
maps.pruneMap.set(ownerPath, cb);
|
|
199
176
|
},
|
|
200
177
|
invalidate() {
|
|
201
|
-
notifyListeners(runner, "vite:invalidate", {
|
|
178
|
+
return notifyListeners(runner, "vite:invalidate", {
|
|
202
179
|
path: ownerPath,
|
|
203
180
|
message: void 0,
|
|
204
181
|
firstInvalidatedBy: ownerPath
|
|
205
|
-
});
|
|
206
|
-
return reload(runner, files);
|
|
182
|
+
}), reload(runner, files);
|
|
207
183
|
},
|
|
208
184
|
on(event, cb) {
|
|
209
185
|
const addToMap = (map) => {
|
|
210
186
|
const existing = map.get(event) || [];
|
|
211
|
-
existing.push(cb);
|
|
212
|
-
map.set(event, existing);
|
|
187
|
+
existing.push(cb), map.set(event, existing);
|
|
213
188
|
};
|
|
214
|
-
addToMap(maps.customListenersMap);
|
|
215
|
-
addToMap(newListeners);
|
|
189
|
+
addToMap(maps.customListenersMap), addToMap(newListeners);
|
|
216
190
|
},
|
|
217
191
|
off(event, cb) {
|
|
218
192
|
const removeFromMap = (map) => {
|
|
@@ -225,16 +199,14 @@ function createHotContext(runner, emitter, files, ownerPath) {
|
|
|
225
199
|
}
|
|
226
200
|
map.set(event, pruned);
|
|
227
201
|
};
|
|
228
|
-
removeFromMap(maps.customListenersMap);
|
|
229
|
-
removeFromMap(newListeners);
|
|
202
|
+
removeFromMap(maps.customListenersMap), removeFromMap(newListeners);
|
|
230
203
|
},
|
|
231
204
|
send(event, data) {
|
|
232
205
|
maps.messageBuffer.push(JSON.stringify({
|
|
233
206
|
type: "custom",
|
|
234
207
|
event,
|
|
235
208
|
data
|
|
236
|
-
}));
|
|
237
|
-
sendMessageBuffer(runner, emitter);
|
|
209
|
+
})), sendMessageBuffer(runner, emitter);
|
|
238
210
|
}
|
|
239
211
|
};
|
|
240
212
|
return hot;
|
package/dist/chunk-hmr.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EventEmitter } from 'node:events';
|
|
2
2
|
import createDebug from 'debug';
|
|
3
|
-
import {
|
|
3
|
+
import { C } from './chunk-index.mjs';
|
|
4
4
|
import { normalizeRequestId } from './utils.mjs';
|
|
5
5
|
|
|
6
6
|
function createHmrEmitter() {
|
|
@@ -17,24 +17,20 @@ function viteNodeHmrPlugin() {
|
|
|
17
17
|
},
|
|
18
18
|
configureServer(server) {
|
|
19
19
|
const _send = server.ws.send;
|
|
20
|
-
server.emitter = emitter
|
|
21
|
-
|
|
22
|
-
_send(payload);
|
|
23
|
-
emitter.emit("message", payload);
|
|
20
|
+
server.emitter = emitter, server.ws.send = function(payload) {
|
|
21
|
+
_send(payload), emitter.emit("message", payload);
|
|
24
22
|
};
|
|
25
23
|
// eslint-disable-next-line ts/ban-ts-comment
|
|
26
24
|
// @ts-ignore Vite 6 compat
|
|
27
25
|
const environments = server.environments;
|
|
28
26
|
if (environments) environments.ssr.hot.send = function(payload) {
|
|
29
|
-
_send(payload);
|
|
30
|
-
emitter.emit("message", payload);
|
|
27
|
+
_send(payload), emitter.emit("message", payload);
|
|
31
28
|
};
|
|
32
29
|
}
|
|
33
30
|
};
|
|
34
31
|
}
|
|
35
32
|
|
|
36
|
-
const debugHmr = createDebug("vite-node:hmr");
|
|
37
|
-
const cache = /* @__PURE__ */ new WeakMap();
|
|
33
|
+
const debugHmr = createDebug("vite-node:hmr"), cache = /* @__PURE__ */ new WeakMap();
|
|
38
34
|
function getCache(runner) {
|
|
39
35
|
if (!cache.has(runner)) cache.set(runner, {
|
|
40
36
|
hotModulesMap: /* @__PURE__ */ new Map(),
|
|
@@ -52,38 +48,28 @@ function getCache(runner) {
|
|
|
52
48
|
}
|
|
53
49
|
function sendMessageBuffer(runner, emitter) {
|
|
54
50
|
const maps = getCache(runner);
|
|
55
|
-
maps.messageBuffer.forEach((msg) => emitter.emit("custom", msg));
|
|
56
|
-
maps.messageBuffer.length = 0;
|
|
51
|
+
maps.messageBuffer.forEach((msg) => emitter.emit("custom", msg)), maps.messageBuffer.length = 0;
|
|
57
52
|
}
|
|
58
53
|
async function reload(runner, files) {
|
|
59
|
-
|
|
60
|
-
Array.from(runner.moduleCache.keys()).forEach((fsPath) => {
|
|
54
|
+
return Array.from(runner.moduleCache.keys()).forEach((fsPath) => {
|
|
61
55
|
if (!fsPath.includes("node_modules")) runner.moduleCache.delete(fsPath);
|
|
62
|
-
});
|
|
63
|
-
return Promise.all(files.map((file) => runner.executeId(file)));
|
|
56
|
+
}), Promise.all(files.map((file) => runner.executeId(file)));
|
|
64
57
|
}
|
|
65
58
|
async function notifyListeners(runner, event, data) {
|
|
66
|
-
const maps = getCache(runner);
|
|
67
|
-
const cbs = maps.customListenersMap.get(event);
|
|
59
|
+
const maps = getCache(runner), cbs = maps.customListenersMap.get(event);
|
|
68
60
|
if (cbs) await Promise.all(cbs.map((cb) => cb(data)));
|
|
69
61
|
}
|
|
70
62
|
async function queueUpdate(runner, p) {
|
|
71
63
|
const maps = getCache(runner);
|
|
72
|
-
maps.queued.push(p)
|
|
73
|
-
|
|
74
|
-
maps.pending = true;
|
|
75
|
-
await Promise.resolve();
|
|
76
|
-
maps.pending = false;
|
|
64
|
+
if (maps.queued.push(p), !maps.pending) {
|
|
65
|
+
maps.pending = true, await Promise.resolve(), maps.pending = false;
|
|
77
66
|
const loading = [...maps.queued];
|
|
78
|
-
maps.queued = [];
|
|
79
|
-
(await Promise.all(loading)).forEach((fn) => fn && fn());
|
|
67
|
+
maps.queued = [], (await Promise.all(loading)).forEach((fn) => fn && fn());
|
|
80
68
|
}
|
|
81
69
|
}
|
|
82
70
|
async function fetchUpdate(runner, { path, acceptedPath }) {
|
|
83
|
-
path = normalizeRequestId(path);
|
|
84
|
-
|
|
85
|
-
const maps = getCache(runner);
|
|
86
|
-
const mod = maps.hotModulesMap.get(path);
|
|
71
|
+
path = normalizeRequestId(path), acceptedPath = normalizeRequestId(acceptedPath);
|
|
72
|
+
const maps = getCache(runner), mod = maps.hotModulesMap.get(path);
|
|
87
73
|
if (!mod)
|
|
88
74
|
// In a code-splitting project,
|
|
89
75
|
// it is common that the hot-updating module is not loaded yet.
|
|
@@ -105,7 +91,7 @@ async function fetchUpdate(runner, { path, acceptedPath }) {
|
|
|
105
91
|
return () => {
|
|
106
92
|
for (const { deps, fn } of qualifiedCallbacks) fn(deps.map((dep) => dep === acceptedPath ? fetchedModule : void 0));
|
|
107
93
|
const loggedPath = isSelfUpdate ? path : `${acceptedPath} via ${path}`;
|
|
108
|
-
console.log(`${
|
|
94
|
+
console.log(`${C.cyan("[vite-node]")} hot updated: ${loggedPath}`);
|
|
109
95
|
};
|
|
110
96
|
}
|
|
111
97
|
function warnFailedFetch(err, path) {
|
|
@@ -119,26 +105,18 @@ async function handleMessage(runner, emitter, files, payload) {
|
|
|
119
105
|
sendMessageBuffer(runner, emitter);
|
|
120
106
|
break;
|
|
121
107
|
case "update":
|
|
122
|
-
await notifyListeners(runner, "vite:beforeUpdate", payload)
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
// css-update
|
|
126
|
-
console.error(`${s.cyan("[vite-node]")} no support css hmr.}`);
|
|
127
|
-
return null;
|
|
128
|
-
}));
|
|
129
|
-
await notifyListeners(runner, "vite:afterUpdate", payload);
|
|
108
|
+
await notifyListeners(runner, "vite:beforeUpdate", payload), await Promise.all(payload.updates.map((update) => {
|
|
109
|
+
return update.type === "js-update" ? queueUpdate(runner, fetchUpdate(runner, update)) : (console.error(`${C.cyan("[vite-node]")} no support css hmr.}`), null);
|
|
110
|
+
})), await notifyListeners(runner, "vite:afterUpdate", payload);
|
|
130
111
|
break;
|
|
131
112
|
case "full-reload":
|
|
132
|
-
await notifyListeners(runner, "vite:beforeFullReload", payload);
|
|
133
|
-
maps.customListenersMap.delete("vite:beforeFullReload");
|
|
134
|
-
await reload(runner, files);
|
|
113
|
+
await notifyListeners(runner, "vite:beforeFullReload", payload), maps.customListenersMap.delete("vite:beforeFullReload"), await reload(runner, files);
|
|
135
114
|
break;
|
|
136
115
|
case "custom":
|
|
137
116
|
await notifyListeners(runner, payload.event, payload.data);
|
|
138
117
|
break;
|
|
139
118
|
case "prune":
|
|
140
|
-
await notifyListeners(runner, "vite:beforePrune", payload)
|
|
141
|
-
payload.paths.forEach((path) => {
|
|
119
|
+
await notifyListeners(runner, "vite:beforePrune", payload), payload.paths.forEach((path) => {
|
|
142
120
|
const fn = maps.pruneMap.get(path);
|
|
143
121
|
if (fn) fn(maps.dataMap.get(path));
|
|
144
122
|
});
|
|
@@ -146,7 +124,7 @@ async function handleMessage(runner, emitter, files, payload) {
|
|
|
146
124
|
case "error": {
|
|
147
125
|
await notifyListeners(runner, "vite:error", payload);
|
|
148
126
|
const err = payload.err;
|
|
149
|
-
console.error(`${
|
|
127
|
+
console.error(`${C.cyan("[vite-node]")} Internal Server Error\n${err.message}\n${err.stack}`);
|
|
150
128
|
break;
|
|
151
129
|
}
|
|
152
130
|
}
|
|
@@ -169,8 +147,7 @@ function createHotContext(runner, emitter, files, ownerPath) {
|
|
|
169
147
|
mod.callbacks.push({
|
|
170
148
|
deps,
|
|
171
149
|
fn: callback
|
|
172
|
-
});
|
|
173
|
-
maps.hotModulesMap.set(ownerPath, mod);
|
|
150
|
+
}), maps.hotModulesMap.set(ownerPath, mod);
|
|
174
151
|
}
|
|
175
152
|
const hot = {
|
|
176
153
|
get data() {
|
|
@@ -196,21 +173,18 @@ function createHotContext(runner, emitter, files, ownerPath) {
|
|
|
196
173
|
maps.pruneMap.set(ownerPath, cb);
|
|
197
174
|
},
|
|
198
175
|
invalidate() {
|
|
199
|
-
notifyListeners(runner, "vite:invalidate", {
|
|
176
|
+
return notifyListeners(runner, "vite:invalidate", {
|
|
200
177
|
path: ownerPath,
|
|
201
178
|
message: void 0,
|
|
202
179
|
firstInvalidatedBy: ownerPath
|
|
203
|
-
});
|
|
204
|
-
return reload(runner, files);
|
|
180
|
+
}), reload(runner, files);
|
|
205
181
|
},
|
|
206
182
|
on(event, cb) {
|
|
207
183
|
const addToMap = (map) => {
|
|
208
184
|
const existing = map.get(event) || [];
|
|
209
|
-
existing.push(cb);
|
|
210
|
-
map.set(event, existing);
|
|
185
|
+
existing.push(cb), map.set(event, existing);
|
|
211
186
|
};
|
|
212
|
-
addToMap(maps.customListenersMap);
|
|
213
|
-
addToMap(newListeners);
|
|
187
|
+
addToMap(maps.customListenersMap), addToMap(newListeners);
|
|
214
188
|
},
|
|
215
189
|
off(event, cb) {
|
|
216
190
|
const removeFromMap = (map) => {
|
|
@@ -223,16 +197,14 @@ function createHotContext(runner, emitter, files, ownerPath) {
|
|
|
223
197
|
}
|
|
224
198
|
map.set(event, pruned);
|
|
225
199
|
};
|
|
226
|
-
removeFromMap(maps.customListenersMap);
|
|
227
|
-
removeFromMap(newListeners);
|
|
200
|
+
removeFromMap(maps.customListenersMap), removeFromMap(newListeners);
|
|
228
201
|
},
|
|
229
202
|
send(event, data) {
|
|
230
203
|
maps.messageBuffer.push(JSON.stringify({
|
|
231
204
|
type: "custom",
|
|
232
205
|
event,
|
|
233
206
|
data
|
|
234
|
-
}));
|
|
235
|
-
sendMessageBuffer(runner, emitter);
|
|
207
|
+
})), sendMessageBuffer(runner, emitter);
|
|
236
208
|
}
|
|
237
209
|
};
|
|
238
210
|
return hot;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
// src/index.ts
|
|
4
|
-
var
|
|
4
|
+
var d = {
|
|
5
5
|
reset: [0, 0],
|
|
6
6
|
bold: [1, 22, "\x1B[22m\x1B[1m"],
|
|
7
7
|
dim: [2, 22, "\x1B[22m\x1B[2m"],
|
|
@@ -43,41 +43,42 @@ var f = {
|
|
|
43
43
|
bgMagentaBright: [105, 49],
|
|
44
44
|
bgCyanBright: [106, 49],
|
|
45
45
|
bgWhiteBright: [107, 49]
|
|
46
|
-
}
|
|
47
|
-
function
|
|
48
|
-
return String(
|
|
46
|
+
};
|
|
47
|
+
function g(e) {
|
|
48
|
+
return String(e);
|
|
49
49
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
function
|
|
53
|
-
let e = typeof process != "undefined" ? process : void 0,
|
|
54
|
-
return !("NO_COLOR" in
|
|
50
|
+
g.open = "";
|
|
51
|
+
g.close = "";
|
|
52
|
+
function h() {
|
|
53
|
+
let e = typeof process != "undefined" ? process : void 0, n = (e == null ? void 0 : e.env) || {}, a = n.FORCE_TTY !== "false", i = (e == null ? void 0 : e.argv) || [];
|
|
54
|
+
return !("NO_COLOR" in n || i.includes("--no-color")) && ("FORCE_COLOR" in n || i.includes("--color") || (e == null ? void 0 : e.platform) === "win32" || a && n.TERM !== "dumb" || "CI" in n) || typeof window != "undefined" && !!window.chrome;
|
|
55
55
|
}
|
|
56
|
-
function
|
|
57
|
-
let e =
|
|
56
|
+
function f() {
|
|
57
|
+
let e = h(), n = (r, t, u, o) => {
|
|
58
58
|
let l = "", s = 0;
|
|
59
59
|
do
|
|
60
|
-
l += r.substring(s, o) +
|
|
60
|
+
l += r.substring(s, o) + u, s = o + t.length, o = r.indexOf(t, s);
|
|
61
61
|
while (~o);
|
|
62
62
|
return l + r.substring(s);
|
|
63
|
-
},
|
|
63
|
+
}, a = (r, t, u = r) => {
|
|
64
64
|
let o = (l) => {
|
|
65
65
|
let s = String(l), b = s.indexOf(t, r.length);
|
|
66
|
-
return ~b ? r +
|
|
66
|
+
return ~b ? r + n(s, t, u, b) + t : r + s + t;
|
|
67
67
|
};
|
|
68
68
|
return o.open = r, o.close = t, o;
|
|
69
|
-
},
|
|
69
|
+
}, i = {
|
|
70
70
|
isColorSupported: e
|
|
71
|
-
},
|
|
72
|
-
for (let
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
}, c = (r) => `\x1B[${r}m`;
|
|
72
|
+
for (let r in d) {
|
|
73
|
+
let t = d[r];
|
|
74
|
+
i[r] = e ? a(
|
|
75
|
+
c(t[0]),
|
|
76
|
+
c(t[1]),
|
|
76
77
|
t[2]
|
|
77
|
-
) :
|
|
78
|
-
|
|
78
|
+
) : g;
|
|
79
|
+
}
|
|
80
|
+
return i;
|
|
79
81
|
}
|
|
82
|
+
var C = f();
|
|
80
83
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
exports.s = s;
|
|
84
|
+
exports.C = C;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/index.ts
|
|
2
|
-
var
|
|
2
|
+
var d = {
|
|
3
3
|
reset: [0, 0],
|
|
4
4
|
bold: [1, 22, "\x1B[22m\x1B[1m"],
|
|
5
5
|
dim: [2, 22, "\x1B[22m\x1B[2m"],
|
|
@@ -41,41 +41,42 @@ var f = {
|
|
|
41
41
|
bgMagentaBright: [105, 49],
|
|
42
42
|
bgCyanBright: [106, 49],
|
|
43
43
|
bgWhiteBright: [107, 49]
|
|
44
|
-
}
|
|
45
|
-
function
|
|
46
|
-
return String(
|
|
44
|
+
};
|
|
45
|
+
function g(e) {
|
|
46
|
+
return String(e);
|
|
47
47
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
function
|
|
51
|
-
let e = typeof process != "undefined" ? process : void 0,
|
|
52
|
-
return !("NO_COLOR" in
|
|
48
|
+
g.open = "";
|
|
49
|
+
g.close = "";
|
|
50
|
+
function h() {
|
|
51
|
+
let e = typeof process != "undefined" ? process : void 0, n = (e == null ? void 0 : e.env) || {}, a = n.FORCE_TTY !== "false", i = (e == null ? void 0 : e.argv) || [];
|
|
52
|
+
return !("NO_COLOR" in n || i.includes("--no-color")) && ("FORCE_COLOR" in n || i.includes("--color") || (e == null ? void 0 : e.platform) === "win32" || a && n.TERM !== "dumb" || "CI" in n) || typeof window != "undefined" && !!window.chrome;
|
|
53
53
|
}
|
|
54
|
-
function
|
|
55
|
-
let e =
|
|
54
|
+
function f() {
|
|
55
|
+
let e = h(), n = (r, t, u, o) => {
|
|
56
56
|
let l = "", s = 0;
|
|
57
57
|
do
|
|
58
|
-
l += r.substring(s, o) +
|
|
58
|
+
l += r.substring(s, o) + u, s = o + t.length, o = r.indexOf(t, s);
|
|
59
59
|
while (~o);
|
|
60
60
|
return l + r.substring(s);
|
|
61
|
-
},
|
|
61
|
+
}, a = (r, t, u = r) => {
|
|
62
62
|
let o = (l) => {
|
|
63
63
|
let s = String(l), b = s.indexOf(t, r.length);
|
|
64
|
-
return ~b ? r +
|
|
64
|
+
return ~b ? r + n(s, t, u, b) + t : r + s + t;
|
|
65
65
|
};
|
|
66
66
|
return o.open = r, o.close = t, o;
|
|
67
|
-
},
|
|
67
|
+
}, i = {
|
|
68
68
|
isColorSupported: e
|
|
69
|
-
},
|
|
70
|
-
for (let
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
69
|
+
}, c = (r) => `\x1B[${r}m`;
|
|
70
|
+
for (let r in d) {
|
|
71
|
+
let t = d[r];
|
|
72
|
+
i[r] = e ? a(
|
|
73
|
+
c(t[0]),
|
|
74
|
+
c(t[1]),
|
|
74
75
|
t[2]
|
|
75
|
-
) :
|
|
76
|
-
|
|
76
|
+
) : g;
|
|
77
|
+
}
|
|
78
|
+
return i;
|
|
77
79
|
}
|
|
80
|
+
var C = f();
|
|
78
81
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
export { s };
|
|
82
|
+
export { C };
|
package/dist/cli.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var path = require('node:path');
|
|
4
4
|
var cac = require('cac');
|
|
5
|
-
var
|
|
5
|
+
var index = require('./chunk-index.cjs');
|
|
6
6
|
var vite = require('vite');
|
|
7
7
|
var client = require('./client.cjs');
|
|
8
8
|
var hmr = require('./chunk-hmr.cjs');
|
|
@@ -21,17 +21,12 @@ require('node:perf_hooks');
|
|
|
21
21
|
require('es-module-lexer');
|
|
22
22
|
require('./constants.cjs');
|
|
23
23
|
|
|
24
|
-
var version = "4.0.0-beta.
|
|
24
|
+
var version = "4.0.0-beta.11";
|
|
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", "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
|
-
cli.command("[...files]").allowUnknownOptions().action(run);
|
|
29
|
-
cli.parse(process.argv, { run: false });
|
|
30
|
-
if (cli.args.length === 0) cli.runMatchedCommand();
|
|
27
|
+
if (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"), cli.command("[...files]").allowUnknownOptions().action(run), cli.parse(process.argv, { run: false }), cli.args.length === 0) cli.runMatchedCommand();
|
|
31
28
|
else {
|
|
32
|
-
const i = cli.rawArgs.indexOf(cli.args[0]) + 1
|
|
33
|
-
const scriptArgs = cli.rawArgs.slice(i).filter((it) => it !== "--");
|
|
34
|
-
const executeArgs = [
|
|
29
|
+
const i = cli.rawArgs.indexOf(cli.args[0]) + 1, scriptArgs = cli.rawArgs.slice(i).filter((it) => it !== "--"), executeArgs = [
|
|
35
30
|
...cli.rawArgs.slice(0, i),
|
|
36
31
|
"--",
|
|
37
32
|
...scriptArgs
|
|
@@ -40,31 +35,16 @@ else {
|
|
|
40
35
|
}
|
|
41
36
|
async function run(files, options = {}) {
|
|
42
37
|
var _server$emitter;
|
|
43
|
-
if (options.script) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
process.argv
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
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({
|
|
38
|
+
if (options.script) files = [files[0]], options = {}, process.argv = [
|
|
39
|
+
process.argv[0],
|
|
40
|
+
path.resolve(files[0]),
|
|
41
|
+
...process.argv.slice(2).filter((arg) => arg !== "--script" && arg !== files[0])
|
|
42
|
+
];
|
|
43
|
+
else process.argv = [...process.argv.slice(0, 2), ...options["--"] || []];
|
|
44
|
+
if (options.version) cli.version(version), cli.outputVersion(), process.exit(0);
|
|
45
|
+
if (options.help) cli.version(version).outputHelp(), process.exit(0);
|
|
46
|
+
if (!files.length) console.error(index.C.red("No files specified.")), cli.version(version).outputHelp(), process.exit(1);
|
|
47
|
+
const serverOptions = options.options ? parseServerOptions(options.options) : {}, server$1 = await vite.createServer({
|
|
68
48
|
logLevel: "error",
|
|
69
49
|
configFile: options.config,
|
|
70
50
|
root: options.root,
|
|
@@ -103,11 +83,10 @@ async function run(files, options = {}) {
|
|
|
103
83
|
await runner.executeId("/@vite/env");
|
|
104
84
|
for (const file of files) await runner.executeFile(file);
|
|
105
85
|
if (!options.watch) await server$1.close();
|
|
106
|
-
(_server$emitter = server$1.emitter) === null || _server$emitter === void 0 || _server$emitter.on("message", (payload) => {
|
|
86
|
+
if ((_server$emitter = server$1.emitter) === null || _server$emitter === void 0 || _server$emitter.on("message", (payload) => {
|
|
107
87
|
hmr.handleMessage(runner, server$1.emitter, files, payload);
|
|
108
|
-
})
|
|
109
|
-
|
|
110
|
-
console.error(browser.s.red("[vite-node] Failed to execute file: \n"), err);
|
|
88
|
+
}), options.watch) process.on("uncaughtException", (err) => {
|
|
89
|
+
console.error(index.C.red("[vite-node] Failed to execute file: \n"), err);
|
|
111
90
|
});
|
|
112
91
|
}
|
|
113
92
|
function parseServerOptions(serverOptions) {
|
|
@@ -119,10 +98,10 @@ function parseServerOptions(serverOptions) {
|
|
|
119
98
|
...serverOptions.deps,
|
|
120
99
|
inlineFiles: utils.toArray((_serverOptions$deps3 = serverOptions.deps) === null || _serverOptions$deps3 === void 0 ? void 0 : _serverOptions$deps3.inlineFiles),
|
|
121
100
|
inline: inlineOptions !== true ? inlineOptions.map((dep) => {
|
|
122
|
-
return dep
|
|
101
|
+
return dep[0] === "/" && dep.endsWith("/") ? new RegExp(dep) : dep;
|
|
123
102
|
}) : true,
|
|
124
103
|
external: utils.toArray((_serverOptions$deps4 = serverOptions.deps) === null || _serverOptions$deps4 === void 0 ? void 0 : _serverOptions$deps4.external).map((dep) => {
|
|
125
|
-
return dep
|
|
104
|
+
return dep[0] === "/" && dep.endsWith("/") ? new RegExp(dep) : dep;
|
|
126
105
|
}),
|
|
127
106
|
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
|
|
128
107
|
},
|
package/dist/cli.d.ts
CHANGED