@veloxts/cli 0.4.12 → 0.4.13
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/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/dev.d.ts +4 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +29 -15
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/make.d.ts +17 -0
- package/dist/commands/make.d.ts.map +1 -0
- package/dist/commands/make.js +219 -0
- package/dist/commands/make.js.map +1 -0
- package/dist/dev/error-parser.d.ts +67 -0
- package/dist/dev/error-parser.d.ts.map +1 -0
- package/dist/dev/error-parser.js +384 -0
- package/dist/dev/error-parser.js.map +1 -0
- package/dist/dev/hmr-runner.d.ts +67 -9
- package/dist/dev/hmr-runner.d.ts.map +1 -1
- package/dist/dev/hmr-runner.js +305 -57
- package/dist/dev/hmr-runner.js.map +1 -1
- package/dist/dev/index.d.ts +6 -0
- package/dist/dev/index.d.ts.map +1 -1
- package/dist/dev/index.js +8 -0
- package/dist/dev/index.js.map +1 -1
- package/dist/dev/reload-reporter.d.ts +197 -0
- package/dist/dev/reload-reporter.d.ts.map +1 -0
- package/dist/dev/reload-reporter.js +370 -0
- package/dist/dev/reload-reporter.js.map +1 -0
- package/dist/dev/timing-tracker.d.ts +130 -0
- package/dist/dev/timing-tracker.d.ts.map +1 -0
- package/dist/dev/timing-tracker.js +175 -0
- package/dist/dev/timing-tracker.js.map +1 -0
- package/dist/generators/generators/factory.d.ts +5 -5
- package/dist/generators/generators/factory.js +8 -8
- package/dist/generators/generators/migration.d.ts +7 -7
- package/dist/generators/generators/migration.js +12 -12
- package/dist/generators/generators/model.d.ts +7 -7
- package/dist/generators/generators/model.js +12 -12
- package/dist/generators/generators/procedure.d.ts +6 -6
- package/dist/generators/generators/procedure.js +12 -12
- package/dist/generators/generators/seeder.d.ts +5 -5
- package/dist/generators/generators/seeder.js +9 -9
- package/dist/generators/generators/seeder.js.map +1 -1
- package/dist/generators/types.d.ts +1 -1
- package/dist/generators/types.d.ts.map +1 -1
- package/dist/migrations/commands/run.js +1 -1
- package/dist/migrations/commands/run.js.map +1 -1
- package/dist/migrations/commands/status.js +1 -1
- package/dist/migrations/commands/status.js.map +1 -1
- package/dist/migrations/errors.js +1 -1
- package/dist/migrations/errors.js.map +1 -1
- package/dist/seeding/commands/seed.js +2 -2
- package/dist/seeding/commands/seed.js.map +1 -1
- package/dist/seeding/errors.js +1 -1
- package/dist/seeding/errors.js.map +1 -1
- package/package.json +6 -6
package/dist/dev/hmr-runner.js
CHANGED
|
@@ -1,41 +1,121 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* HMR Runner -
|
|
2
|
+
* HMR Runner - Hot Module Replacement for Development
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Manages a Node.js process with hot-hook enabled for fast module replacement.
|
|
5
|
+
* Provides rich feedback with timing information and helpful error messages.
|
|
6
6
|
*
|
|
7
7
|
* @see https://github.com/Julien-R44/hot-hook
|
|
8
8
|
*/
|
|
9
9
|
import { spawn } from 'node:child_process';
|
|
10
10
|
import pc from 'picocolors';
|
|
11
|
-
import { error
|
|
11
|
+
import { error } from '../utils/output.js';
|
|
12
|
+
import { parseDevError } from './error-parser.js';
|
|
13
|
+
import { createReloadReporter } from './reload-reporter.js';
|
|
14
|
+
import { createTimingTracker } from './timing-tracker.js';
|
|
15
|
+
// ============================================================================
|
|
16
|
+
// Constants
|
|
17
|
+
// ============================================================================
|
|
18
|
+
/**
|
|
19
|
+
* Delay before assuming server is ready (ms).
|
|
20
|
+
* Used as fallback when no explicit ready signal is received.
|
|
21
|
+
*/
|
|
22
|
+
const STARTUP_DETECTION_DELAY_MS = 100;
|
|
23
|
+
/**
|
|
24
|
+
* Timeout for graceful shutdown before force kill (ms).
|
|
25
|
+
*/
|
|
26
|
+
const GRACEFUL_SHUTDOWN_TIMEOUT_MS = 5000;
|
|
27
|
+
/**
|
|
28
|
+
* Timeout for process to exit during restart (ms).
|
|
29
|
+
*/
|
|
30
|
+
const RESTART_EXIT_TIMEOUT_MS = 2000;
|
|
31
|
+
/**
|
|
32
|
+
* Placeholder duration for hot updates (ms).
|
|
33
|
+
*
|
|
34
|
+
* Note: hot-hook doesn't currently provide timing information in IPC messages.
|
|
35
|
+
* This is a reasonable estimate since hot updates typically complete in <10ms.
|
|
36
|
+
* TODO: Request timing data from hot-hook or measure via timestamps.
|
|
37
|
+
*/
|
|
38
|
+
const HOT_UPDATE_ESTIMATED_DURATION_MS = 5;
|
|
39
|
+
// ============================================================================
|
|
40
|
+
// Type Guards
|
|
41
|
+
// ============================================================================
|
|
42
|
+
/**
|
|
43
|
+
* Validate that an unknown value is a valid HotHookMessage.
|
|
44
|
+
*
|
|
45
|
+
* Performs runtime type checking to ensure IPC messages from hot-hook
|
|
46
|
+
* conform to the expected shape before processing.
|
|
47
|
+
*
|
|
48
|
+
* @param value - Unknown value to validate
|
|
49
|
+
* @returns Type predicate indicating if value is HotHookMessage
|
|
50
|
+
*/
|
|
51
|
+
function isHotHookMessage(value) {
|
|
52
|
+
if (typeof value !== 'object' || value === null) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
const obj = value;
|
|
56
|
+
// Validate each optional property has the correct type if present
|
|
57
|
+
if (obj.type !== undefined && typeof obj.type !== 'string') {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
if (obj.file !== undefined && typeof obj.file !== 'string') {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
if (obj.error !== undefined && typeof obj.error !== 'string') {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
if (obj.boundary !== undefined && typeof obj.boundary !== 'string') {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
// ============================================================================
|
|
72
|
+
// HMRRunner Class
|
|
73
|
+
// ============================================================================
|
|
12
74
|
/**
|
|
13
75
|
* HMR Runner manages a Node.js process with hot-hook enabled
|
|
14
|
-
* for
|
|
76
|
+
* for fast hot module replacement during development.
|
|
15
77
|
*/
|
|
16
78
|
export class HMRRunner {
|
|
17
79
|
options;
|
|
18
80
|
child = null;
|
|
19
81
|
isShuttingDown = false;
|
|
20
|
-
|
|
82
|
+
isStartingUp = false;
|
|
83
|
+
startupTimer = null;
|
|
84
|
+
// Integrated modules
|
|
85
|
+
timing;
|
|
86
|
+
reporter;
|
|
21
87
|
constructor(options) {
|
|
22
88
|
this.options = options;
|
|
89
|
+
this.timing = createTimingTracker();
|
|
90
|
+
this.reporter = createReloadReporter({
|
|
91
|
+
verbose: options.verbose ?? false,
|
|
92
|
+
clearOnRestart: options.clearOnRestart ?? true,
|
|
93
|
+
});
|
|
23
94
|
}
|
|
95
|
+
// --------------------------------------------------------------------------
|
|
96
|
+
// Public API
|
|
97
|
+
// --------------------------------------------------------------------------
|
|
24
98
|
/**
|
|
25
99
|
* Start the HMR-enabled development server
|
|
26
100
|
*/
|
|
27
101
|
async start() {
|
|
28
|
-
this.
|
|
102
|
+
this.reporter.printHMRStatus();
|
|
103
|
+
if (this.options.debug) {
|
|
104
|
+
this.reporter.printDebugStatus();
|
|
105
|
+
}
|
|
106
|
+
this.timing.start('startup');
|
|
107
|
+
this.isStartingUp = true;
|
|
29
108
|
await this.spawnProcess();
|
|
30
109
|
this.setupSignalHandlers();
|
|
31
110
|
}
|
|
32
111
|
/**
|
|
33
|
-
* Stop the HMR runner
|
|
112
|
+
* Stop the HMR runner gracefully
|
|
34
113
|
*/
|
|
35
114
|
async stop() {
|
|
36
115
|
if (this.isShuttingDown)
|
|
37
116
|
return;
|
|
38
117
|
this.isShuttingDown = true;
|
|
118
|
+
this.timing.start('shutdown');
|
|
39
119
|
if (this.child) {
|
|
40
120
|
this.child.kill('SIGTERM');
|
|
41
121
|
// Wait for graceful shutdown with timeout
|
|
@@ -45,40 +125,47 @@ export class HMRRunner {
|
|
|
45
125
|
this.child.kill('SIGKILL');
|
|
46
126
|
}
|
|
47
127
|
resolve();
|
|
48
|
-
},
|
|
128
|
+
}, GRACEFUL_SHUTDOWN_TIMEOUT_MS);
|
|
49
129
|
this.child?.on('exit', () => {
|
|
50
130
|
clearTimeout(timeout);
|
|
51
131
|
resolve();
|
|
52
132
|
});
|
|
53
133
|
});
|
|
54
134
|
}
|
|
135
|
+
const duration = this.timing.end('shutdown');
|
|
136
|
+
if (this.options.verbose) {
|
|
137
|
+
console.log(pc.dim(` Shutdown completed in ${duration}ms`));
|
|
138
|
+
}
|
|
139
|
+
// Print final statistics in verbose mode
|
|
140
|
+
this.reporter.printStatistics();
|
|
55
141
|
}
|
|
142
|
+
// --------------------------------------------------------------------------
|
|
143
|
+
// Private: Process Management
|
|
144
|
+
// --------------------------------------------------------------------------
|
|
56
145
|
/**
|
|
57
|
-
* Restart the process (
|
|
146
|
+
* Restart the process (called when HMR fails or non-boundary file changes)
|
|
58
147
|
*/
|
|
59
|
-
async restart() {
|
|
60
|
-
this.
|
|
61
|
-
|
|
148
|
+
async restart(reason, filePath) {
|
|
149
|
+
this.reporter.reportFullRestart(reason, filePath);
|
|
150
|
+
this.timing.start('restart');
|
|
62
151
|
if (this.child) {
|
|
63
152
|
this.child.kill('SIGTERM');
|
|
64
153
|
await new Promise((resolve) => {
|
|
65
|
-
|
|
66
|
-
|
|
154
|
+
const exitHandler = () => resolve();
|
|
155
|
+
this.child?.once('exit', exitHandler);
|
|
156
|
+
// Timeout in case process doesn't exit gracefully
|
|
157
|
+
setTimeout(() => {
|
|
158
|
+
this.child?.removeListener('exit', exitHandler);
|
|
159
|
+
resolve();
|
|
160
|
+
}, RESTART_EXIT_TIMEOUT_MS);
|
|
67
161
|
});
|
|
68
162
|
}
|
|
163
|
+
this.isStartingUp = true;
|
|
69
164
|
await this.spawnProcess();
|
|
70
165
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
console.log(pc.dim(' Hot module replacement enabled for:'));
|
|
75
|
-
console.log(pc.dim(' • src/procedures/**/*.ts'));
|
|
76
|
-
console.log(pc.dim(' • src/schemas/**/*.ts'));
|
|
77
|
-
console.log(pc.dim(' • src/handlers/**/*.ts'));
|
|
78
|
-
console.log('');
|
|
79
|
-
console.log(pc.dim(' Config/database changes require full restart.'));
|
|
80
|
-
console.log('');
|
|
81
|
-
}
|
|
166
|
+
/**
|
|
167
|
+
* Spawn the Node.js process with hot-hook enabled
|
|
168
|
+
*/
|
|
82
169
|
async spawnProcess() {
|
|
83
170
|
const env = {
|
|
84
171
|
...process.env,
|
|
@@ -89,60 +176,221 @@ export class HMRRunner {
|
|
|
89
176
|
HOT_HOOK_ENABLED: 'true',
|
|
90
177
|
};
|
|
91
178
|
// Spawn with hot-hook register via Node.js loader
|
|
92
|
-
//
|
|
179
|
+
// tsx provides TypeScript support, hot-hook provides HMR
|
|
93
180
|
this.child = spawn('node', ['--import=tsx', '--import=hot-hook/register', this.options.entry], {
|
|
94
181
|
stdio: ['inherit', 'inherit', 'inherit', 'ipc'],
|
|
95
182
|
env,
|
|
96
183
|
cwd: process.cwd(),
|
|
97
184
|
});
|
|
98
|
-
//
|
|
99
|
-
this.child.on('message', (message) =>
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
185
|
+
// Set up IPC message handler
|
|
186
|
+
this.child.on('message', (message) => this.handleIPCMessage(message));
|
|
187
|
+
// Set up process event handlers
|
|
188
|
+
this.child.on('error', (err) => this.handleProcessError(err));
|
|
189
|
+
this.child.on('exit', (code, signal) => this.handleProcessExit(code, signal));
|
|
190
|
+
// Detect startup completion
|
|
191
|
+
// The server will send a message or we detect via stdout
|
|
192
|
+
this.setupStartupDetection();
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Setup detection for when the server is ready
|
|
196
|
+
*/
|
|
197
|
+
setupStartupDetection() {
|
|
198
|
+
// Give the server time to start, then report ready
|
|
199
|
+
// Ideally we'd listen for a specific ready message from the server
|
|
200
|
+
this.startupTimer = setTimeout(() => {
|
|
201
|
+
if (this.isStartingUp) {
|
|
202
|
+
this.reportStartupComplete();
|
|
203
|
+
}
|
|
204
|
+
}, STARTUP_DETECTION_DELAY_MS);
|
|
205
|
+
// Also listen for early exit (startup failure)
|
|
206
|
+
this.child?.once('exit', () => {
|
|
207
|
+
if (this.startupTimer) {
|
|
208
|
+
clearTimeout(this.startupTimer);
|
|
209
|
+
this.startupTimer = null;
|
|
118
210
|
}
|
|
119
211
|
});
|
|
120
|
-
|
|
121
|
-
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Report that startup is complete
|
|
215
|
+
*/
|
|
216
|
+
reportStartupComplete() {
|
|
217
|
+
if (!this.isStartingUp)
|
|
218
|
+
return;
|
|
219
|
+
this.isStartingUp = false;
|
|
220
|
+
const label = this.timing.isInProgress('restart') ? 'restart' : 'startup';
|
|
221
|
+
const duration = this.timing.end(label);
|
|
222
|
+
const url = `http://${this.options.host}:${this.options.port}`;
|
|
223
|
+
this.reporter.reportStartupComplete(url, duration);
|
|
224
|
+
}
|
|
225
|
+
// --------------------------------------------------------------------------
|
|
226
|
+
// Private: IPC Message Handling
|
|
227
|
+
// --------------------------------------------------------------------------
|
|
228
|
+
/**
|
|
229
|
+
* Handle IPC messages from hot-hook
|
|
230
|
+
*/
|
|
231
|
+
handleIPCMessage(message) {
|
|
232
|
+
// Validate message shape before processing
|
|
233
|
+
if (!isHotHookMessage(message)) {
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
switch (message.type) {
|
|
237
|
+
case 'hot-hook:update':
|
|
238
|
+
this.handleHotUpdate(message);
|
|
239
|
+
break;
|
|
240
|
+
case 'hot-hook:full-reload':
|
|
241
|
+
this.handleFullReloadRequest(message);
|
|
242
|
+
break;
|
|
243
|
+
case 'hot-hook:error':
|
|
244
|
+
this.handleHMRError(message);
|
|
245
|
+
break;
|
|
246
|
+
case 'velox:ready':
|
|
247
|
+
// Custom message from VeloxTS server indicating ready
|
|
248
|
+
this.reportStartupComplete();
|
|
249
|
+
break;
|
|
250
|
+
default:
|
|
251
|
+
// Ignore unknown messages
|
|
252
|
+
break;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Handle successful hot module update
|
|
257
|
+
*/
|
|
258
|
+
handleHotUpdate(msg) {
|
|
259
|
+
// Report startup complete if this is the first update after restart
|
|
260
|
+
if (this.isStartingUp) {
|
|
261
|
+
this.reportStartupComplete();
|
|
262
|
+
}
|
|
263
|
+
const file = msg.file ?? 'unknown';
|
|
264
|
+
// Use estimated duration since hot-hook doesn't provide timing data
|
|
265
|
+
// See HOT_UPDATE_ESTIMATED_DURATION_MS constant for details
|
|
266
|
+
this.reporter.reportHotUpdate(file, HOT_UPDATE_ESTIMATED_DURATION_MS);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Handle request for full process reload
|
|
270
|
+
*/
|
|
271
|
+
handleFullReloadRequest(msg) {
|
|
272
|
+
const reason = msg.file
|
|
273
|
+
? `${this.getBasename(msg.file)} changed (outside HMR boundaries)`
|
|
274
|
+
: 'File changed outside HMR boundaries';
|
|
275
|
+
this.restart(reason, msg.file).catch((err) => {
|
|
276
|
+
this.handleRestartError(err);
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Handle HMR-specific error
|
|
281
|
+
*/
|
|
282
|
+
handleHMRError(msg) {
|
|
283
|
+
const errorMsg = msg.error ?? 'Unknown HMR error';
|
|
284
|
+
this.reporter.reportHMRFallback(errorMsg);
|
|
285
|
+
const reason = 'HMR update failed';
|
|
286
|
+
this.restart(reason, msg.file).catch((err) => {
|
|
287
|
+
this.handleRestartError(err);
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
// --------------------------------------------------------------------------
|
|
291
|
+
// Private: Error Handling
|
|
292
|
+
// --------------------------------------------------------------------------
|
|
293
|
+
/**
|
|
294
|
+
* Handle process spawn/runtime errors
|
|
295
|
+
*/
|
|
296
|
+
handleProcessError(err) {
|
|
297
|
+
const parsed = parseDevError(err);
|
|
298
|
+
if (parsed.type === 'port-in-use') {
|
|
299
|
+
// Port in use is a fatal error
|
|
300
|
+
this.reporter.reportCompilationError(err, undefined, parsed.suggestion);
|
|
301
|
+
error(`Port ${this.options.port} is already in use.`);
|
|
302
|
+
console.log(` ${pc.dim(`Try: velox dev --port ${Number(this.options.port) + 1}`)}`);
|
|
303
|
+
process.exit(1);
|
|
304
|
+
}
|
|
305
|
+
// For recoverable errors, report and attempt restart
|
|
306
|
+
if (parsed.isRecoverable) {
|
|
307
|
+
this.reporter.reportRuntimeError(err);
|
|
122
308
|
if (!this.isShuttingDown) {
|
|
123
|
-
this.restart().catch(() => {
|
|
309
|
+
this.restart('Runtime error', parsed.filePath).catch(() => {
|
|
124
310
|
process.exit(1);
|
|
125
311
|
});
|
|
126
312
|
}
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
313
|
+
}
|
|
314
|
+
else {
|
|
315
|
+
this.reportFatalError(parsed);
|
|
316
|
+
process.exit(1);
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Handle process exit
|
|
321
|
+
*/
|
|
322
|
+
handleProcessExit(code, signal) {
|
|
323
|
+
if (this.startupTimer) {
|
|
324
|
+
clearTimeout(this.startupTimer);
|
|
325
|
+
this.startupTimer = null;
|
|
326
|
+
}
|
|
327
|
+
if (this.isShuttingDown)
|
|
328
|
+
return;
|
|
329
|
+
if (code !== 0 && code !== null) {
|
|
330
|
+
// Process crashed - check if it was during startup
|
|
331
|
+
if (this.isStartingUp) {
|
|
332
|
+
error('Server failed to start. Check for syntax or configuration errors.');
|
|
333
|
+
console.log(` ${pc.dim('Watching for changes...')}`);
|
|
334
|
+
this.isStartingUp = false;
|
|
335
|
+
// Don't exit - wait for file changes to fix the error
|
|
132
336
|
}
|
|
133
|
-
|
|
337
|
+
else {
|
|
338
|
+
// Runtime crash
|
|
339
|
+
this.reporter.reportRuntimeError();
|
|
340
|
+
console.log(` ${pc.dim(`Process exited with code ${code}`)}`);
|
|
341
|
+
console.log(` ${pc.dim('Watching for changes...')}`);
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
else if (signal) {
|
|
345
|
+
// Process was killed by signal
|
|
346
|
+
if (this.options.verbose) {
|
|
347
|
+
console.log(pc.dim(` Process killed by signal: ${signal}`));
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
/**
|
|
352
|
+
* Handle restart failure
|
|
353
|
+
*/
|
|
354
|
+
handleRestartError(err) {
|
|
355
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
356
|
+
error(`Failed to restart: ${message}`);
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Report a fatal error that cannot be recovered
|
|
360
|
+
*/
|
|
361
|
+
reportFatalError(parsed) {
|
|
362
|
+
this.reporter.reportCompilationError(parsed.originalError, parsed.filePath, parsed.suggestion);
|
|
134
363
|
}
|
|
364
|
+
// --------------------------------------------------------------------------
|
|
365
|
+
// Private: Signal Handling
|
|
366
|
+
// --------------------------------------------------------------------------
|
|
367
|
+
/**
|
|
368
|
+
* Setup process signal handlers for graceful shutdown
|
|
369
|
+
*/
|
|
135
370
|
setupSignalHandlers() {
|
|
136
371
|
const shutdown = async (signal) => {
|
|
137
372
|
console.log(`\n${pc.yellow('⚠')} Received ${signal}, shutting down...`);
|
|
138
373
|
await this.stop();
|
|
139
|
-
console.log(pc.dim('
|
|
374
|
+
console.log(pc.dim('Development server stopped.'));
|
|
140
375
|
process.exit(0);
|
|
141
376
|
};
|
|
142
377
|
process.on('SIGINT', () => shutdown('SIGINT'));
|
|
143
378
|
process.on('SIGTERM', () => shutdown('SIGTERM'));
|
|
144
379
|
}
|
|
380
|
+
// --------------------------------------------------------------------------
|
|
381
|
+
// Private: Utilities
|
|
382
|
+
// --------------------------------------------------------------------------
|
|
383
|
+
/**
|
|
384
|
+
* Get basename from file path
|
|
385
|
+
*/
|
|
386
|
+
getBasename(filePath) {
|
|
387
|
+
const parts = filePath.split('/');
|
|
388
|
+
return parts[parts.length - 1] || filePath;
|
|
389
|
+
}
|
|
145
390
|
}
|
|
391
|
+
// ============================================================================
|
|
392
|
+
// Factory Function
|
|
393
|
+
// ============================================================================
|
|
146
394
|
/**
|
|
147
395
|
* Run the development server with HMR enabled
|
|
148
396
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hmr-runner.js","sourceRoot":"","sources":["../../src/dev/hmr-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hmr-runner.js","sourceRoot":"","sources":["../../src/dev/hmr-runner.ts"],"names":[],"mappings":"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"}
|
package/dist/dev/index.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Development Server Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides hot module replacement, file watching, timing measurement,
|
|
5
|
+
* reload feedback, and error parsing for the development server.
|
|
3
6
|
*/
|
|
4
7
|
export * from './hmr-runner.js';
|
|
5
8
|
export * from './watch-config.js';
|
|
9
|
+
export * from './timing-tracker.js';
|
|
10
|
+
export * from './reload-reporter.js';
|
|
11
|
+
export * from './error-parser.js';
|
|
6
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/dev/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dev/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dev/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
|
package/dist/dev/index.js
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Development Server Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides hot module replacement, file watching, timing measurement,
|
|
5
|
+
* reload feedback, and error parsing for the development server.
|
|
3
6
|
*/
|
|
7
|
+
// Core HMR functionality
|
|
4
8
|
export * from './hmr-runner.js';
|
|
5
9
|
export * from './watch-config.js';
|
|
10
|
+
// Phase 1: Foundation modules for improved HMR feedback
|
|
11
|
+
export * from './timing-tracker.js';
|
|
12
|
+
export * from './reload-reporter.js';
|
|
13
|
+
export * from './error-parser.js';
|
|
6
14
|
//# sourceMappingURL=index.js.map
|
package/dist/dev/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dev/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dev/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,yBAAyB;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAElC,wDAAwD;AACxD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
|