neex 0.4.3 → 0.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +43 -73
  2. package/bun.lock +38 -356
  3. package/dist/bin/neex.js +4 -0
  4. package/dist/{cli.js → src/cli.js} +8 -18
  5. package/dist/{commands → src/commands}/run-commands/run.js +0 -1
  6. package/dist/src/index.js +70 -0
  7. package/dist/{logger.js → src/logger.js} +0 -1
  8. package/dist/src/project-manager.js +208 -0
  9. package/dist/{runner.js → src/runner.js} +0 -1
  10. package/dist/{types.js → src/types.js} +0 -1
  11. package/package.json +3 -17
  12. package/.env +0 -2
  13. package/Screenshot 1404-03-20 at 17.20.45.png +0 -0
  14. package/Screenshot 1404-03-20 at 17.20.56.png +0 -0
  15. package/Screenshot 1404-03-20 at 17.21.04.png +0 -0
  16. package/dist/cli.d.ts +0 -1
  17. package/dist/cli.js.map +0 -1
  18. package/dist/commands/process-command/process.d.ts +0 -2
  19. package/dist/commands/process-command/process.js +0 -150
  20. package/dist/commands/process-command/process.js.map +0 -1
  21. package/dist/commands/project-command/build.d.ts +0 -3
  22. package/dist/commands/project-command/build.js +0 -42
  23. package/dist/commands/project-command/build.js.map +0 -1
  24. package/dist/commands/project-command/cache.d.ts +0 -3
  25. package/dist/commands/project-command/cache.js +0 -57
  26. package/dist/commands/project-command/cache.js.map +0 -1
  27. package/dist/commands/project-command/dev.d.ts +0 -3
  28. package/dist/commands/project-command/dev.js +0 -52
  29. package/dist/commands/project-command/dev.js.map +0 -1
  30. package/dist/commands/project-command/start.d.ts +0 -3
  31. package/dist/commands/project-command/start.js +0 -46
  32. package/dist/commands/project-command/start.js.map +0 -1
  33. package/dist/commands/run-commands/run.d.ts +0 -2
  34. package/dist/commands/run-commands/run.js.map +0 -1
  35. package/dist/index.d.ts +0 -30
  36. package/dist/index.js +0 -66
  37. package/dist/index.js.map +0 -1
  38. package/dist/logger.d.ts +0 -31
  39. package/dist/logger.js.map +0 -1
  40. package/dist/process-manager.d.ts +0 -60
  41. package/dist/process-manager.js +0 -277
  42. package/dist/process-manager.js.map +0 -1
  43. package/dist/project-manager.d.ts +0 -74
  44. package/dist/project-manager.js +0 -605
  45. package/dist/project-manager.js.map +0 -1
  46. package/dist/runner.d.ts +0 -17
  47. package/dist/runner.js.map +0 -1
  48. package/dist/server.d.ts +0 -2
  49. package/dist/server.js +0 -67
  50. package/dist/server.js.map +0 -1
  51. package/dist/types.d.ts +0 -37
  52. package/dist/types.js.map +0 -1
  53. package/dist/typescript-runner.d.ts +0 -12
  54. package/dist/typescript-runner.js +0 -162
  55. package/dist/typescript-runner.js.map +0 -1
@@ -1,605 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.ProjectManager = void 0;
30
- const child_process_1 = require("child_process");
31
- const path_1 = require("path");
32
- const fs_1 = require("fs");
33
- const chalk_1 = __importDefault(require("chalk"));
34
- const figures_1 = __importDefault(require("figures"));
35
- const chokidar_1 = require("chokidar");
36
- const typescript_runner_js_1 = require("./typescript-runner.js");
37
- const logger_js_1 = __importDefault(require("./logger.js"));
38
- const net = __importStar(require("net"));
39
- const readline = __importStar(require("readline"));
40
- class ProjectManager {
41
- constructor() {
42
- this.server = null;
43
- this.watcher = null;
44
- this.buildWatcher = null;
45
- this.isRestarting = false;
46
- this.tsRunner = new typescript_runner_js_1.FastTypeScriptRunner();
47
- }
48
- async startDev(options) {
49
- try {
50
- const entryPath = (0, path_1.resolve)(process.cwd(), options.entry);
51
- if (!(0, fs_1.existsSync)(entryPath)) {
52
- throw new Error(`Entry file ${options.entry} not found`);
53
- }
54
- logger_js_1.default.printLine(`Starting development server with ${options.compiler === 'auto' ? 'esbuild' : options.compiler} compiler...`, 'info');
55
- // Initialize cache if enabled
56
- if (options.cache) {
57
- this.ensureCacheDir();
58
- }
59
- await this.startDevServer(entryPath, options);
60
- this.setupFileWatcher(options);
61
- this.setupCleanup();
62
- }
63
- catch (error) {
64
- this.handleError(error);
65
- }
66
- }
67
- async build(options) {
68
- try {
69
- logger_js_1.default.printLine('Building project...', 'info');
70
- const startTime = Date.now();
71
- // Create output directory if it doesn't exist
72
- if (!(0, fs_1.existsSync)(options.outDir)) {
73
- (0, fs_1.mkdirSync)(options.outDir, { recursive: true });
74
- }
75
- const compiler = options.compiler === 'auto' ? 'esbuild' : options.compiler;
76
- if (options.watch) {
77
- await this.startBuildWatch(compiler, options);
78
- }
79
- else {
80
- await this.executeBuild(compiler, options, startTime);
81
- }
82
- }
83
- catch (error) {
84
- this.handleError(error);
85
- }
86
- }
87
- async start(options) {
88
- try {
89
- const outDir = options.outDir;
90
- const entryFile = options.entry;
91
- const entryPath = (0, path_1.resolve)(process.cwd(), outDir, entryFile);
92
- if (!(0, fs_1.existsSync)(entryPath)) {
93
- logger_js_1.default.printLine('Build not found. Building project first...', 'warn');
94
- await this.build({
95
- outDir: options.outDir,
96
- minify: true,
97
- sourcemap: false,
98
- watch: false,
99
- compiler: 'esbuild',
100
- target: 'ES2022'
101
- });
102
- }
103
- await this.startProductionServer(entryPath, options);
104
- }
105
- catch (error) {
106
- this.handleError(error);
107
- }
108
- }
109
- async isPortAvailable(port) {
110
- return new Promise((resolve) => {
111
- const server = net.createServer();
112
- server.unref();
113
- server.on('error', () => {
114
- resolve(false);
115
- });
116
- server.on('listening', () => {
117
- server.close(() => {
118
- resolve(true);
119
- });
120
- });
121
- server.listen(port);
122
- });
123
- }
124
- /**
125
- * Get the final port to use based on priority:
126
- * 1. Command line argument (-p/--port)
127
- * 2. Environment variable (PORT)
128
- * 3. Default (8000)
129
- */
130
- determineTargetPort(options) {
131
- let port;
132
- let source;
133
- // Priority 1: Command line argument
134
- if (options.port && options.port.trim() !== '' && options.port !== '8000') {
135
- port = parseInt(options.port);
136
- source = 'command line';
137
- }
138
- // Priority 2: Environment variable
139
- else if (process.env.PORT && process.env.PORT.trim() !== '') {
140
- port = parseInt(process.env.PORT);
141
- source = '.env file';
142
- }
143
- // Priority 3: Default
144
- else {
145
- port = 8000;
146
- source = 'default';
147
- }
148
- // Validate port number
149
- if (isNaN(port) || port < 1 || port > 65535) {
150
- logger_js_1.default.printLine(`Invalid port number: ${port}. Using default port 8000.`, 'warn');
151
- port = 8000;
152
- source = 'default (corrected)';
153
- }
154
- logger_js_1.default.printLine(`Target port: ${port} (from ${source})`, 'info');
155
- return port;
156
- }
157
- async findAvailablePort(targetPort) {
158
- // Check if target port is available
159
- const isTargetAvailable = await this.isPortAvailable(targetPort);
160
- if (isTargetAvailable) {
161
- logger_js_1.default.printLine(`✓ Port ${targetPort} is available`, 'info');
162
- return targetPort;
163
- }
164
- logger_js_1.default.printLine(`Port ${targetPort} is already in use. Searching for alternatives...`, 'warn');
165
- // Try ports from targetPort+1 to targetPort+20
166
- for (let offset = 1; offset <= 20; offset++) {
167
- const tryPort = targetPort + offset;
168
- const available = await this.isPortAvailable(tryPort);
169
- if (available) {
170
- logger_js_1.default.printLine(`✓ Found available port: ${tryPort}`, 'info');
171
- return tryPort;
172
- }
173
- logger_js_1.default.printLine(`✗ Port ${tryPort} is in use`, 'warn');
174
- }
175
- // If no port found in range, prompt user
176
- logger_js_1.default.printLine(`All ports from ${targetPort} to ${targetPort + 20} are in use.`, 'warn');
177
- return await this.promptForPort();
178
- }
179
- async promptForPort() {
180
- const rl = readline.createInterface({
181
- input: process.stdin,
182
- output: process.stdout
183
- });
184
- return new Promise((resolve) => {
185
- logger_js_1.default.printLine('', 'info');
186
- logger_js_1.default.printLine('Unable to find an available port automatically.', 'warn');
187
- logger_js_1.default.printLine('Options:', 'info');
188
- logger_js_1.default.printLine(' 1. Set PORT in your .env file: PORT=your_custom_port', 'info');
189
- logger_js_1.default.printLine(' 2. Use -p flag: neex dev src/server.ts -p your_custom_port', 'info');
190
- logger_js_1.default.printLine(' 3. Enter a custom port now', 'info');
191
- logger_js_1.default.printLine('', 'info');
192
- const askForPort = () => {
193
- rl.question(chalk_1.default.cyan('Enter a port number (or press Ctrl+C to exit): '), async (answer) => {
194
- const port = parseInt(answer.trim());
195
- if (isNaN(port) || port < 1 || port > 65535) {
196
- logger_js_1.default.printLine('Please enter a valid port number (1-65535)', 'error');
197
- askForPort();
198
- return;
199
- }
200
- if (port < 1024) {
201
- logger_js_1.default.printLine('Warning: Ports below 1024 may require administrator privileges', 'warn');
202
- }
203
- const available = await this.isPortAvailable(port);
204
- if (!available) {
205
- logger_js_1.default.printLine(`Port ${port} is already in use. Try another port.`, 'error');
206
- askForPort();
207
- return;
208
- }
209
- rl.close();
210
- resolve(port);
211
- });
212
- };
213
- askForPort();
214
- });
215
- }
216
- async startDevServer(entryPath, options) {
217
- if (this.server) {
218
- this.server.kill('SIGTERM');
219
- await new Promise(resolve => setTimeout(resolve, 200));
220
- }
221
- try {
222
- const startTime = Date.now();
223
- const compiler = options.compiler === 'auto' ? 'esbuild' : options.compiler;
224
- // Build the project first
225
- const buildOptions = {
226
- outDir: '.neex/dev',
227
- minify: false,
228
- sourcemap: true,
229
- watch: false,
230
- compiler,
231
- target: 'ES2022'
232
- };
233
- await this.executeBuild(compiler, buildOptions, startTime, true);
234
- // Get the built file path
235
- const entryName = entryPath.split('/').pop()?.replace('.ts', '.js') || 'server.js';
236
- const builtPath = (0, path_1.resolve)(process.cwd(), '.neex/dev', entryName);
237
- if (!(0, fs_1.existsSync)(builtPath)) {
238
- throw new Error(`Built file not found: ${builtPath}`);
239
- }
240
- // Determine port to use
241
- const targetPort = this.determineTargetPort(options);
242
- const finalPort = await this.findAvailablePort(targetPort);
243
- // Prepare Node.js arguments
244
- const nodeArgs = [];
245
- if (options.inspect)
246
- nodeArgs.push('--inspect');
247
- if (options.inspectBrk)
248
- nodeArgs.push('--inspect-brk');
249
- // Start the server process
250
- this.server = (0, child_process_1.spawn)('node', [...nodeArgs, builtPath], {
251
- stdio: 'inherit',
252
- env: {
253
- ...process.env,
254
- PORT: finalPort.toString(),
255
- NODE_ENV: 'development',
256
- TS_NODE_DEV: 'true'
257
- }
258
- });
259
- this.server.on('error', (err) => {
260
- logger_js_1.default.printLine(`Server error: ${err.message}`, 'error');
261
- });
262
- this.server.on('exit', (code, signal) => {
263
- if (code !== 0 && signal !== 'SIGTERM') {
264
- logger_js_1.default.printLine(`Server crashed with code ${code}`, 'error');
265
- }
266
- });
267
- const totalTime = Date.now() - startTime;
268
- logger_js_1.default.printLine(`${chalk_1.default.green(figures_1.default.tick)} Server started successfully on port ${chalk_1.default.bold.cyan(finalPort)} (${totalTime}ms)`, 'info');
269
- logger_js_1.default.printLine(`${chalk_1.default.gray('Local:')} http://localhost:${finalPort}`, 'info');
270
- }
271
- catch (error) {
272
- this.handleError(error);
273
- }
274
- }
275
- async startProductionServer(entryPath, options) {
276
- logger_js_1.default.printLine('Starting production server...', 'info');
277
- // Determine port to use
278
- const targetPort = this.determineTargetPort(options);
279
- const finalPort = await this.findAvailablePort(targetPort);
280
- const nodeArgs = [];
281
- if (options.inspect)
282
- nodeArgs.push('--inspect');
283
- if (options.maxMemory)
284
- nodeArgs.push(`--max-old-space-size=${options.maxMemory.replace('M', '')}`);
285
- let serverCommand = 'node';
286
- let serverArgs = [...nodeArgs, entryPath];
287
- if (options.cluster) {
288
- serverCommand = 'npx';
289
- serverArgs = ['pm2', 'start', entryPath, '--name', 'neex-app', '--instances', options.workers || 'max'];
290
- }
291
- this.server = (0, child_process_1.spawn)(serverCommand, serverArgs, {
292
- stdio: 'inherit',
293
- env: {
294
- ...process.env,
295
- PORT: finalPort.toString(),
296
- NODE_ENV: 'production'
297
- }
298
- });
299
- this.server.on('error', (err) => {
300
- logger_js_1.default.printLine(`Server error: ${err.message}`, 'error');
301
- process.exit(1);
302
- });
303
- logger_js_1.default.printLine(`${chalk_1.default.green(figures_1.default.tick)} Production server started successfully on port ${chalk_1.default.bold.cyan(finalPort)}`, 'info');
304
- logger_js_1.default.printLine(`${chalk_1.default.gray('Local:')} http://localhost:${finalPort}`, 'info');
305
- }
306
- async executeBuild(compiler, options, startTime, isDev = false) {
307
- const buildCommand = this.getBuildCommand(compiler, options, isDev);
308
- return new Promise((resolve, reject) => {
309
- const build = (0, child_process_1.spawn)('sh', ['-c', buildCommand], {
310
- stdio: isDev ? 'pipe' : 'inherit'
311
- });
312
- build.on('close', (code) => {
313
- if (code === 0) {
314
- const buildTime = Date.now() - startTime;
315
- if (!isDev) {
316
- logger_js_1.default.printLine(`Build completed successfully in ${buildTime}ms`, 'info');
317
- logger_js_1.default.printLine(`Output: ${options.outDir}`, 'info');
318
- }
319
- resolve();
320
- }
321
- else {
322
- const error = new Error(`Build failed with code ${code}`);
323
- if (!isDev) {
324
- logger_js_1.default.printLine(`Build failed with code ${code}`, 'error');
325
- }
326
- reject(error);
327
- }
328
- });
329
- build.on('error', (err) => {
330
- reject(err);
331
- });
332
- });
333
- }
334
- async startBuildWatch(compiler, options) {
335
- logger_js_1.default.printLine('Starting build in watch mode...', 'info');
336
- this.buildWatcher = (0, chokidar_1.watch)(['src/**/*'], {
337
- ignored: [
338
- '**/*.map',
339
- '**/*.d.ts',
340
- '**/node_modules/**'
341
- ],
342
- persistent: true,
343
- ignoreInitial: false,
344
- awaitWriteFinish: {
345
- stabilityThreshold: 200,
346
- pollInterval: 50
347
- }
348
- });
349
- let buildTimer = null;
350
- let isBuilding = false;
351
- const handleBuild = async () => {
352
- if (isBuilding)
353
- return;
354
- if (buildTimer) {
355
- clearTimeout(buildTimer);
356
- }
357
- buildTimer = setTimeout(async () => {
358
- isBuilding = true;
359
- try {
360
- const startTime = Date.now();
361
- await this.executeBuild(compiler, options, startTime);
362
- }
363
- catch (error) {
364
- logger_js_1.default.printLine('Build failed', 'error');
365
- }
366
- finally {
367
- isBuilding = false;
368
- }
369
- }, 300);
370
- };
371
- this.buildWatcher
372
- .on('change', handleBuild)
373
- .on('add', handleBuild)
374
- .on('unlink', handleBuild);
375
- // Initial build
376
- await handleBuild();
377
- }
378
- setupFileWatcher(options) {
379
- this.watcher = (0, chokidar_1.watch)(options.watch, {
380
- ignored: [
381
- ...options.ignore,
382
- /(^|[\/\\])\../,
383
- '**/*.map',
384
- '**/*.d.ts',
385
- '**/node_modules/**',
386
- '**/.neex/**'
387
- ],
388
- persistent: true,
389
- ignoreInitial: true,
390
- awaitWriteFinish: {
391
- stabilityThreshold: 200,
392
- pollInterval: 50
393
- }
394
- });
395
- let restartTimer = null;
396
- const handleFileChange = (path, event) => {
397
- const ext = path.split('.').pop()?.toLowerCase();
398
- if (!ext || !options.ext.includes(ext)) {
399
- return;
400
- }
401
- if (this.isRestarting) {
402
- return;
403
- }
404
- if (restartTimer) {
405
- clearTimeout(restartTimer);
406
- }
407
- this.isRestarting = true;
408
- restartTimer = setTimeout(async () => {
409
- if (options.clear) {
410
- process.stdout.write('\x1Bc');
411
- }
412
- logger_js_1.default.printLine(`${event}: ${path}`, 'info');
413
- logger_js_1.default.printLine('Restarting server...', 'info');
414
- try {
415
- await this.startDevServer((0, path_1.resolve)(process.cwd(), options.entry), options);
416
- }
417
- catch (error) {
418
- logger_js_1.default.printLine('Failed to restart server', 'error');
419
- }
420
- finally {
421
- this.isRestarting = false;
422
- }
423
- }, parseInt(options.delay));
424
- };
425
- this.watcher
426
- .on('change', (path) => handleFileChange(path, 'Changed'))
427
- .on('add', (path) => handleFileChange(path, 'Added'))
428
- .on('unlink', (path) => handleFileChange(path, 'Removed'));
429
- }
430
- setupCleanup() {
431
- const handleSignal = (signal) => {
432
- logger_js_1.default.printLine('\nShutting down server...', 'info');
433
- if (this.server) {
434
- this.server.kill('SIGTERM');
435
- }
436
- if (this.watcher) {
437
- this.watcher.close();
438
- }
439
- if (this.buildWatcher) {
440
- this.buildWatcher.close();
441
- }
442
- // Clean up dev build directory
443
- const devBuildDir = (0, path_1.resolve)(process.cwd(), '.neex/dev');
444
- if ((0, fs_1.existsSync)(devBuildDir)) {
445
- try {
446
- (0, fs_1.rmSync)(devBuildDir, { recursive: true, force: true });
447
- }
448
- catch (error) {
449
- // Ignore cleanup errors
450
- }
451
- }
452
- process.exit(0);
453
- };
454
- process.on('SIGINT', () => handleSignal('SIGINT'));
455
- process.on('SIGTERM', () => handleSignal('SIGTERM'));
456
- process.on('SIGQUIT', () => handleSignal('SIGQUIT'));
457
- }
458
- getBuildCommand(compiler, options, isDev = false) {
459
- const srcPattern = isDev ? 'src/**/*.ts' : 'src/**/*.ts';
460
- switch (compiler) {
461
- case 'swc':
462
- return `npx swc src -d ${options.outDir} --config-file .swcrc`;
463
- case 'esbuild':
464
- const esbuildFlags = [
465
- `--outdir=${options.outDir}`,
466
- '--platform=node',
467
- `--target=${options.target.toLowerCase()}`,
468
- '--format=cjs',
469
- options.sourcemap ? '--sourcemap' : '',
470
- options.minify && !isDev ? '--minify' : '',
471
- '--bundle',
472
- '--external:node_modules/*'
473
- ].filter(Boolean).join(' ');
474
- return `npx esbuild ${srcPattern} ${esbuildFlags}`;
475
- case 'tsc':
476
- default:
477
- return `npx tsc --outDir ${options.outDir}${options.sourcemap ? ' --sourceMap' : ''}`;
478
- }
479
- }
480
- ensureCacheDir() {
481
- const cacheDir = this.getCachePath();
482
- if (!(0, fs_1.existsSync)(cacheDir)) {
483
- (0, fs_1.mkdirSync)(cacheDir, { recursive: true });
484
- }
485
- }
486
- handleError(error) {
487
- if (error instanceof Error) {
488
- logger_js_1.default.printLine(`Error: ${error.message}`, 'error');
489
- }
490
- else {
491
- logger_js_1.default.printLine('An unknown error occurred', 'error');
492
- }
493
- process.exit(1);
494
- }
495
- calculateDirectorySize(dirPath) {
496
- let totalSize = 0;
497
- try {
498
- const files = (0, fs_1.readdirSync)(dirPath);
499
- for (const file of files) {
500
- const filePath = (0, path_1.join)(dirPath, file);
501
- const stats = (0, fs_1.statSync)(filePath);
502
- if (stats.isDirectory()) {
503
- totalSize += this.calculateDirectorySize(filePath);
504
- }
505
- else {
506
- totalSize += stats.size;
507
- }
508
- }
509
- }
510
- catch (error) {
511
- // Ignore errors and return 0
512
- }
513
- return totalSize;
514
- }
515
- formatFileSize(bytes) {
516
- if (bytes === 0)
517
- return '0B';
518
- const k = 1024;
519
- const sizes = ['B', 'KB', 'MB', 'GB'];
520
- const i = Math.floor(Math.log(bytes) / Math.log(k));
521
- return parseFloat((bytes / Math.pow(k, i)).toFixed(1)) + sizes[i];
522
- }
523
- countFiles(dirPath) {
524
- let count = 0;
525
- try {
526
- const files = (0, fs_1.readdirSync)(dirPath);
527
- for (const file of files) {
528
- const filePath = (0, path_1.join)(dirPath, file);
529
- const stats = (0, fs_1.statSync)(filePath);
530
- if (stats.isDirectory()) {
531
- count += this.countFiles(filePath);
532
- }
533
- else {
534
- count++;
535
- }
536
- }
537
- }
538
- catch (error) {
539
- // Ignore errors
540
- }
541
- return count;
542
- }
543
- // Public methods for cache management
544
- clearCache() {
545
- const cacheDir = this.getCachePath();
546
- if ((0, fs_1.existsSync)(cacheDir)) {
547
- try {
548
- (0, fs_1.rmSync)(cacheDir, { recursive: true, force: true });
549
- logger_js_1.default.printLine('Cache cleared successfully', 'info');
550
- }
551
- catch (error) {
552
- logger_js_1.default.printLine('Failed to clear cache', 'error');
553
- }
554
- }
555
- else {
556
- logger_js_1.default.printLine('Cache directory does not exist', 'warn');
557
- }
558
- // Also clear TypeScript runner cache
559
- this.tsRunner.clearCache();
560
- }
561
- getCacheStats() {
562
- const cacheDir = this.getCachePath();
563
- if (!(0, fs_1.existsSync)(cacheDir)) {
564
- return {
565
- size: '0B',
566
- files: 0,
567
- lastUpdated: 'Never'
568
- };
569
- }
570
- try {
571
- const totalSize = this.calculateDirectorySize(cacheDir);
572
- const fileCount = this.countFiles(cacheDir);
573
- const stats = (0, fs_1.statSync)(cacheDir);
574
- return {
575
- size: this.formatFileSize(totalSize),
576
- files: fileCount,
577
- lastUpdated: stats.mtime.toISOString()
578
- };
579
- }
580
- catch (error) {
581
- return {
582
- size: '0B',
583
- files: 0,
584
- lastUpdated: 'Error reading cache'
585
- };
586
- }
587
- }
588
- getCachePath() {
589
- return (0, path_1.join)(process.cwd(), '.neex', 'cache');
590
- }
591
- cleanup(signal) {
592
- logger_js_1.default.printLine('\nShutting down server...', 'info');
593
- if (this.server) {
594
- this.server.kill('SIGTERM');
595
- }
596
- if (this.watcher) {
597
- this.watcher.close();
598
- }
599
- if (this.buildWatcher) {
600
- this.buildWatcher.close();
601
- }
602
- }
603
- }
604
- exports.ProjectManager = ProjectManager;
605
- //# sourceMappingURL=project-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"project-manager.js","sourceRoot":"","sources":["../src/project-manager.ts"],"names":[],"mappings":"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"}
package/dist/runner.d.ts DELETED
@@ -1,17 +0,0 @@
1
- /// <reference types="node" />
2
- import { RunOptions, RunResult } from './types';
3
- export declare class Runner {
4
- private options;
5
- private activeProcesses;
6
- private serverInfo;
7
- private portRegex;
8
- private urlRegex;
9
- constructor(options: RunOptions);
10
- private resolveScriptAndCwd;
11
- detectServerInfo(command: string, data: string): void;
12
- runCommand(originalCommand: string): Promise<RunResult>;
13
- runSequential(commands: string[]): Promise<RunResult[]>;
14
- runParallel(commands: string[]): Promise<RunResult[]>;
15
- run(commands: string[]): Promise<RunResult[]>;
16
- cleanup(signal?: NodeJS.Signals): void;
17
- }