@tuannvm/ccodex 0.3.0 → 0.3.3
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/aliases.d.ts.map +1 -1
- package/dist/aliases.js +31 -31
- package/dist/aliases.js.map +1 -1
- package/dist/claude.d.ts.map +1 -1
- package/dist/claude.js +87 -82
- package/dist/claude.js.map +1 -1
- package/dist/cli.js +60 -59
- package/dist/cli.js.map +1 -1
- package/dist/config.js +7 -7
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/powershell.d.ts.map +1 -1
- package/dist/powershell.js +11 -13
- package/dist/powershell.js.map +1 -1
- package/dist/proxy.d.ts +1 -1
- package/dist/proxy.d.ts.map +1 -1
- package/dist/proxy.js +230 -203
- package/dist/proxy.js.map +1 -1
- package/dist/status.d.ts +1 -1
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +28 -21
- package/dist/status.js.map +1 -1
- package/dist/types.d.ts +3 -3
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +82 -87
- package/dist/utils.js.map +1 -1
- package/package.json +9 -1
package/dist/utils.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { existsSync } from
|
|
2
|
-
import { homedir, platform } from
|
|
3
|
-
import { join, delimiter, isAbsolute, resolve, sep } from
|
|
4
|
-
import spawnCmd from
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { spawn } from 'child_process';
|
|
8
|
-
const exec = promisify(execCallback);
|
|
1
|
+
import { existsSync } from "fs";
|
|
2
|
+
import { homedir, platform } from "os";
|
|
3
|
+
import { join, delimiter, isAbsolute, resolve, sep } from "path";
|
|
4
|
+
import spawnCmd from "cross-spawn";
|
|
5
|
+
import { execSync } from "child_process";
|
|
6
|
+
import { spawn } from "child_process";
|
|
9
7
|
/**
|
|
10
8
|
* Debug logging helper
|
|
11
9
|
*/
|
|
@@ -20,31 +18,31 @@ export function debugLog(message, ...args) {
|
|
|
20
18
|
export async function execCommand(cmd, args = [], timeoutMs = 10000) {
|
|
21
19
|
return new Promise((resolve, reject) => {
|
|
22
20
|
const child = spawnCmd(cmd, args, {
|
|
23
|
-
stdio: [
|
|
21
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
24
22
|
});
|
|
25
|
-
let stdout =
|
|
26
|
-
let stderr =
|
|
27
|
-
child.stdout?.on(
|
|
23
|
+
let stdout = "";
|
|
24
|
+
let stderr = "";
|
|
25
|
+
child.stdout?.on("data", (data) => {
|
|
28
26
|
stdout += data.toString();
|
|
29
27
|
});
|
|
30
|
-
child.stderr?.on(
|
|
28
|
+
child.stderr?.on("data", (data) => {
|
|
31
29
|
stderr += data.toString();
|
|
32
30
|
});
|
|
33
31
|
// Add timeout to prevent hangs
|
|
34
32
|
const timeout = setTimeout(() => {
|
|
35
33
|
child.kill();
|
|
36
|
-
reject(new Error(`Command timed out: ${cmd} ${args.join(
|
|
34
|
+
reject(new Error(`Command timed out: ${cmd} ${args.join(" ")}`));
|
|
37
35
|
}, timeoutMs);
|
|
38
|
-
child.on(
|
|
36
|
+
child.on("close", (code) => {
|
|
39
37
|
clearTimeout(timeout);
|
|
40
38
|
if (code === 0) {
|
|
41
39
|
resolve(stdout.trim());
|
|
42
40
|
}
|
|
43
41
|
else {
|
|
44
|
-
reject(new Error(`Command failed: ${cmd} ${args.join(
|
|
42
|
+
reject(new Error(`Command failed: ${cmd} ${args.join(" ")}\n${stderr}`));
|
|
45
43
|
}
|
|
46
44
|
});
|
|
47
|
-
child.on(
|
|
45
|
+
child.on("error", (error) => {
|
|
48
46
|
clearTimeout(timeout);
|
|
49
47
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
50
48
|
reject(err);
|
|
@@ -56,18 +54,16 @@ export async function execCommand(cmd, args = [], timeoutMs = 10000) {
|
|
|
56
54
|
* Returns absolute/relative executable path if found, otherwise null.
|
|
57
55
|
*/
|
|
58
56
|
export function resolveCommandPath(cmd) {
|
|
59
|
-
const pathEnv = process.env.PATH ||
|
|
57
|
+
const pathEnv = process.env.PATH || "";
|
|
60
58
|
const pathDirs = pathEnv.split(delimiter).filter(Boolean);
|
|
61
59
|
// If cmd already has a path separator, test directly
|
|
62
|
-
if (cmd.includes(
|
|
60
|
+
if (cmd.includes("/") || cmd.includes("\\")) {
|
|
63
61
|
return existsSync(cmd) ? cmd : null;
|
|
64
62
|
}
|
|
65
|
-
if (process.platform ===
|
|
66
|
-
const pathext = (process.env.PATHEXT ||
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
const hasKnownExt = pathext.some(ext => cmd.toUpperCase().endsWith(ext.toUpperCase()));
|
|
70
|
-
const candidates = hasKnownExt ? [cmd] : [cmd, ...pathext.map(ext => `${cmd}${ext}`)];
|
|
63
|
+
if (process.platform === "win32") {
|
|
64
|
+
const pathext = (process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM").split(";").filter(Boolean);
|
|
65
|
+
const hasKnownExt = pathext.some((ext) => cmd.toUpperCase().endsWith(ext.toUpperCase()));
|
|
66
|
+
const candidates = hasKnownExt ? [cmd] : [cmd, ...pathext.map((ext) => `${cmd}${ext}`)];
|
|
71
67
|
for (const dir of pathDirs) {
|
|
72
68
|
for (const candidate of candidates) {
|
|
73
69
|
const fullPath = join(dir, candidate);
|
|
@@ -120,29 +116,29 @@ export function detectPlatform() {
|
|
|
120
116
|
const osPlatform = platform();
|
|
121
117
|
let os;
|
|
122
118
|
// Explicitly handle supported platforms
|
|
123
|
-
if (osPlatform ===
|
|
124
|
-
os =
|
|
119
|
+
if (osPlatform === "darwin") {
|
|
120
|
+
os = "darwin";
|
|
125
121
|
}
|
|
126
|
-
else if (osPlatform ===
|
|
127
|
-
os =
|
|
122
|
+
else if (osPlatform === "linux") {
|
|
123
|
+
os = "linux";
|
|
128
124
|
}
|
|
129
|
-
else if (osPlatform ===
|
|
130
|
-
os =
|
|
125
|
+
else if (osPlatform === "win32") {
|
|
126
|
+
os = "windows";
|
|
131
127
|
}
|
|
132
128
|
else {
|
|
133
129
|
throw new Error(`Unsupported platform: ${osPlatform}. ccodex supports darwin, linux, and win32.`);
|
|
134
130
|
}
|
|
135
131
|
// Detect shell
|
|
136
132
|
let shell = null;
|
|
137
|
-
const shellEnv = process.env.SHELL ||
|
|
138
|
-
if (shellEnv.includes(
|
|
139
|
-
shell =
|
|
133
|
+
const shellEnv = process.env.SHELL || "";
|
|
134
|
+
if (shellEnv.includes("zsh")) {
|
|
135
|
+
shell = "zsh";
|
|
140
136
|
}
|
|
141
|
-
else if (shellEnv.includes(
|
|
142
|
-
shell =
|
|
137
|
+
else if (shellEnv.includes("bash")) {
|
|
138
|
+
shell = "bash";
|
|
143
139
|
}
|
|
144
|
-
else if (os ===
|
|
145
|
-
shell = process.env.PSModulePath ?
|
|
140
|
+
else if (os === "windows") {
|
|
141
|
+
shell = process.env.PSModulePath ? "powershell" : "cmd";
|
|
146
142
|
}
|
|
147
143
|
return {
|
|
148
144
|
os,
|
|
@@ -155,24 +151,24 @@ export function detectPlatform() {
|
|
|
155
151
|
* Returns appropriate config file based on platform and shell
|
|
156
152
|
*/
|
|
157
153
|
export function getShellRcFile(platform) {
|
|
158
|
-
if (platform.os ===
|
|
154
|
+
if (platform.os === "windows") {
|
|
159
155
|
// Windows doesn't use rc files the same way
|
|
160
156
|
// Return a placeholder path for documentation purposes
|
|
161
|
-
return join(platform.home,
|
|
157
|
+
return join(platform.home, ".ccodex-config.ps1");
|
|
162
158
|
}
|
|
163
|
-
if (platform.shell ===
|
|
164
|
-
return join(platform.home,
|
|
159
|
+
if (platform.shell === "zsh") {
|
|
160
|
+
return join(platform.home, ".zshrc");
|
|
165
161
|
}
|
|
166
|
-
else if (platform.shell ===
|
|
167
|
-
return join(platform.home,
|
|
162
|
+
else if (platform.shell === "bash") {
|
|
163
|
+
return join(platform.home, ".bashrc");
|
|
168
164
|
}
|
|
169
|
-
return join(platform.home,
|
|
165
|
+
return join(platform.home, ".zshrc"); // default to zsh on Unix
|
|
170
166
|
}
|
|
171
167
|
/**
|
|
172
168
|
* Sleep for ms milliseconds
|
|
173
169
|
*/
|
|
174
170
|
export function sleep(ms) {
|
|
175
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
171
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
176
172
|
}
|
|
177
173
|
/**
|
|
178
174
|
* Make HTTP GET request with timeout
|
|
@@ -214,7 +210,7 @@ export function safeJsonParse(str, validator) {
|
|
|
214
210
|
return parsed;
|
|
215
211
|
}
|
|
216
212
|
catch (error) {
|
|
217
|
-
debugLog(
|
|
213
|
+
debugLog("safeJsonParse failed:", str.substring(0, 100), error);
|
|
218
214
|
return null;
|
|
219
215
|
}
|
|
220
216
|
}
|
|
@@ -234,7 +230,7 @@ export function fileExists(path) {
|
|
|
234
230
|
* Ensure directory exists
|
|
235
231
|
*/
|
|
236
232
|
export async function ensureDir(path) {
|
|
237
|
-
const fs = await import(
|
|
233
|
+
const fs = await import("fs/promises");
|
|
238
234
|
try {
|
|
239
235
|
await fs.mkdir(path, { recursive: true });
|
|
240
236
|
}
|
|
@@ -247,31 +243,31 @@ export async function ensureDir(path) {
|
|
|
247
243
|
* Read file content
|
|
248
244
|
*/
|
|
249
245
|
export async function readFile(path) {
|
|
250
|
-
const fs = await import(
|
|
251
|
-
return await fs.readFile(path,
|
|
246
|
+
const fs = await import("fs/promises");
|
|
247
|
+
return await fs.readFile(path, "utf-8");
|
|
252
248
|
}
|
|
253
249
|
/**
|
|
254
250
|
* Write file content
|
|
255
251
|
*/
|
|
256
252
|
export async function writeFile(path, content) {
|
|
257
|
-
const fs = await import(
|
|
258
|
-
await fs.writeFile(path, content,
|
|
253
|
+
const fs = await import("fs/promises");
|
|
254
|
+
await fs.writeFile(path, content, "utf-8");
|
|
259
255
|
}
|
|
260
256
|
/**
|
|
261
257
|
* Append to file
|
|
262
258
|
*/
|
|
263
259
|
export async function appendFile(path, content) {
|
|
264
|
-
const fs = await import(
|
|
265
|
-
await fs.appendFile(path, content,
|
|
260
|
+
const fs = await import("fs/promises");
|
|
261
|
+
await fs.appendFile(path, content, "utf-8");
|
|
266
262
|
}
|
|
267
263
|
/**
|
|
268
264
|
* Make file executable
|
|
269
265
|
* Only applies chmod on Unix/macOS; no-op on Windows
|
|
270
266
|
*/
|
|
271
267
|
export async function makeExecutable(path) {
|
|
272
|
-
const fs = await import(
|
|
268
|
+
const fs = await import("fs/promises");
|
|
273
269
|
// chmod doesn't work on Windows the same way
|
|
274
|
-
if (process.platform ===
|
|
270
|
+
if (process.platform === "win32") {
|
|
275
271
|
debugLog(`Skipping chmod on Windows for ${path}`);
|
|
276
272
|
return;
|
|
277
273
|
}
|
|
@@ -288,14 +284,14 @@ export async function makeExecutable(path) {
|
|
|
288
284
|
* Copy file
|
|
289
285
|
*/
|
|
290
286
|
export async function copyFile(src, dest) {
|
|
291
|
-
const fs = await import(
|
|
287
|
+
const fs = await import("fs/promises");
|
|
292
288
|
await fs.copyFile(src, dest);
|
|
293
289
|
}
|
|
294
290
|
/**
|
|
295
291
|
* Get user ID (cross-platform)
|
|
296
292
|
*/
|
|
297
293
|
export function getUid() {
|
|
298
|
-
if (typeof process.getuid ===
|
|
294
|
+
if (typeof process.getuid === "function") {
|
|
299
295
|
return process.getuid();
|
|
300
296
|
}
|
|
301
297
|
// Fallback for Windows - use a sensible default
|
|
@@ -307,20 +303,19 @@ export function getUid() {
|
|
|
307
303
|
* Returns paths that are considered safe sources for tar/brew/npm
|
|
308
304
|
*/
|
|
309
305
|
function getTrustedCommandDirs() {
|
|
310
|
-
const { homedir } = require('os');
|
|
311
306
|
const home = homedir();
|
|
312
307
|
const allowed = [
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
308
|
+
"/usr/bin", // Standard system bin
|
|
309
|
+
"/usr/local/bin", // System local bin
|
|
310
|
+
"/bin", // Core system bin
|
|
311
|
+
"/opt/homebrew/bin", // Homebrew Apple Silicon
|
|
312
|
+
"/usr/local/bin", // Homebrew Intel
|
|
313
|
+
"/opt/homebrew", // Homebrew base
|
|
314
|
+
"/usr/local", // Local software base
|
|
320
315
|
];
|
|
321
316
|
// Add user-local paths
|
|
322
317
|
if (home) {
|
|
323
|
-
allowed.push(join(home,
|
|
318
|
+
allowed.push(join(home, ".local", "bin"), join(home, ".npm", "global", "bin"), join(home, "node_modules", ".bin"));
|
|
324
319
|
}
|
|
325
320
|
return allowed;
|
|
326
321
|
}
|
|
@@ -334,14 +329,14 @@ function validateCommandPath(cmd, cmdPath) {
|
|
|
334
329
|
}
|
|
335
330
|
const realPath = resolve(cmdPath);
|
|
336
331
|
const allowedDirs = getTrustedCommandDirs();
|
|
337
|
-
const isAllowed = allowedDirs.some(allowedDir => {
|
|
332
|
+
const isAllowed = allowedDirs.some((allowedDir) => {
|
|
338
333
|
const resolvedAllowed = resolve(allowedDir);
|
|
339
334
|
return realPath.startsWith(resolvedAllowed + sep) || realPath === resolvedAllowed;
|
|
340
335
|
});
|
|
341
336
|
if (!isAllowed) {
|
|
342
337
|
throw new Error(`${cmd} binary not from trusted location.\n` +
|
|
343
338
|
`Path: ${realPath}\n` +
|
|
344
|
-
`Allowed directories: ${allowedDirs.join(
|
|
339
|
+
`Allowed directories: ${allowedDirs.join(", ")}\n\n` +
|
|
345
340
|
`For security, only commands from trusted locations are executed.\n` +
|
|
346
341
|
`If you installed ${cmd} manually, move it to a trusted directory.`);
|
|
347
342
|
}
|
|
@@ -364,35 +359,35 @@ export async function requireTrustedCommand(cmd) {
|
|
|
364
359
|
*/
|
|
365
360
|
export async function runCmdBounded(cmd, args, timeoutMs = 15000, maxOut = 1_000_000) {
|
|
366
361
|
return await new Promise((resolve, reject) => {
|
|
367
|
-
const cp = spawn(cmd, args, { stdio: [
|
|
368
|
-
let stdout =
|
|
369
|
-
let stderr =
|
|
362
|
+
const cp = spawn(cmd, args, { stdio: ["ignore", "pipe", "pipe"] });
|
|
363
|
+
let stdout = "";
|
|
364
|
+
let stderr = "";
|
|
370
365
|
let killed = false;
|
|
371
366
|
const timer = setTimeout(() => {
|
|
372
367
|
killed = true;
|
|
373
368
|
// Platform-aware termination: SIGKILL on Unix, default kill on Windows
|
|
374
|
-
if (process.platform ===
|
|
369
|
+
if (process.platform === "win32") {
|
|
375
370
|
cp.kill(); // Windows: uses default termination
|
|
376
371
|
}
|
|
377
372
|
else {
|
|
378
|
-
cp.kill(
|
|
373
|
+
cp.kill("SIGKILL"); // Unix: force kill
|
|
379
374
|
}
|
|
380
375
|
}, timeoutMs);
|
|
381
|
-
cp.stdout?.on(
|
|
376
|
+
cp.stdout?.on("data", (d) => {
|
|
382
377
|
if (stdout.length < maxOut) {
|
|
383
378
|
stdout += d.toString();
|
|
384
379
|
}
|
|
385
380
|
});
|
|
386
|
-
cp.stderr?.on(
|
|
381
|
+
cp.stderr?.on("data", (d) => {
|
|
387
382
|
if (stderr.length < maxOut) {
|
|
388
383
|
stderr += d.toString();
|
|
389
384
|
}
|
|
390
385
|
});
|
|
391
|
-
cp.on(
|
|
386
|
+
cp.on("error", (error) => {
|
|
392
387
|
clearTimeout(timer);
|
|
393
388
|
reject(error);
|
|
394
389
|
});
|
|
395
|
-
cp.on(
|
|
390
|
+
cp.on("close", (code) => {
|
|
396
391
|
clearTimeout(timer);
|
|
397
392
|
if (killed) {
|
|
398
393
|
reject(new Error(`Command timeout after ${timeoutMs}ms: ${cmd}`));
|
|
@@ -414,10 +409,10 @@ const INSTALL_LOCK_MAX_WAIT_MS = 30 * 1000; // 30 seconds
|
|
|
414
409
|
* Returns false if PID doesn't exist, true if possibly alive
|
|
415
410
|
*/
|
|
416
411
|
function isPidAlive(pid) {
|
|
417
|
-
if (process.platform ===
|
|
412
|
+
if (process.platform === "win32") {
|
|
418
413
|
// On Windows, use tasklist to check if process exists
|
|
419
414
|
try {
|
|
420
|
-
const result = execSync(`tasklist /FI "PID eq ${pid}" 2>nul`, { encoding:
|
|
415
|
+
const result = execSync(`tasklist /FI "PID eq ${pid}" 2>nul`, { encoding: "utf8" });
|
|
421
416
|
return result.includes(String(pid));
|
|
422
417
|
}
|
|
423
418
|
catch {
|
|
@@ -434,12 +429,12 @@ function isPidAlive(pid) {
|
|
|
434
429
|
}
|
|
435
430
|
}
|
|
436
431
|
export async function withInstallLock(lockPath, fn) {
|
|
437
|
-
const fs = await import(
|
|
432
|
+
const fs = await import("fs/promises");
|
|
438
433
|
const start = Date.now();
|
|
439
434
|
while (true) {
|
|
440
435
|
try {
|
|
441
436
|
// Try to create lock file exclusively
|
|
442
|
-
const fh = await fs.open(lockPath,
|
|
437
|
+
const fh = await fs.open(lockPath, "wx");
|
|
443
438
|
// Write PID and timestamp
|
|
444
439
|
await fh.writeFile(JSON.stringify({ pid: process.pid, ts: Date.now() }));
|
|
445
440
|
try {
|
|
@@ -454,10 +449,10 @@ export async function withInstallLock(lockPath, fn) {
|
|
|
454
449
|
}
|
|
455
450
|
catch (e) {
|
|
456
451
|
// Lock file exists
|
|
457
|
-
if (e?.code !==
|
|
452
|
+
if (e?.code !== "EEXIST")
|
|
458
453
|
throw e;
|
|
459
454
|
// Read lock file to check PID
|
|
460
|
-
const lockContent = await fs.readFile(lockPath,
|
|
455
|
+
const lockContent = await fs.readFile(lockPath, "utf-8").catch(() => null);
|
|
461
456
|
let lockData = null;
|
|
462
457
|
if (lockContent) {
|
|
463
458
|
try {
|
|
@@ -465,7 +460,7 @@ export async function withInstallLock(lockPath, fn) {
|
|
|
465
460
|
}
|
|
466
461
|
catch {
|
|
467
462
|
// Malformed lock file - treat as invalid/stale
|
|
468
|
-
debugLog(
|
|
463
|
+
debugLog("Lock file contains invalid JSON, treating as stale");
|
|
469
464
|
lockData = null;
|
|
470
465
|
}
|
|
471
466
|
}
|
|
@@ -482,10 +477,10 @@ export async function withInstallLock(lockPath, fn) {
|
|
|
482
477
|
}
|
|
483
478
|
// Check timeout
|
|
484
479
|
if (Date.now() - start > INSTALL_LOCK_MAX_WAIT_MS) {
|
|
485
|
-
throw new Error(
|
|
480
|
+
throw new Error("Timed out waiting for install lock. Another install may be in progress.");
|
|
486
481
|
}
|
|
487
482
|
// Wait before retry
|
|
488
|
-
await new Promise(resolve => setTimeout(resolve, 250));
|
|
483
|
+
await new Promise((resolve) => setTimeout(resolve, 250));
|
|
489
484
|
}
|
|
490
485
|
}
|
|
491
486
|
}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tuannvm/ccodex",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"description": "TypeScript reimplementation of ccodex - run Claude Code with OpenAI GPT models via CLIProxyAPI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -10,6 +10,10 @@
|
|
|
10
10
|
"scripts": {
|
|
11
11
|
"build": "tsc",
|
|
12
12
|
"dev": "tsc --watch",
|
|
13
|
+
"lint": "eslint src --ext .ts",
|
|
14
|
+
"lint:fix": "eslint src --ext .ts --fix",
|
|
15
|
+
"format": "prettier --write \"src/**/*.ts\"",
|
|
16
|
+
"format:check": "prettier --check \"src/**/*.ts\"",
|
|
13
17
|
"prepack": "npm run build",
|
|
14
18
|
"prepublishOnly": "npm run build"
|
|
15
19
|
},
|
|
@@ -31,6 +35,10 @@
|
|
|
31
35
|
"devDependencies": {
|
|
32
36
|
"@types/cross-spawn": "^6.0.6",
|
|
33
37
|
"@types/node": "^20.0.0",
|
|
38
|
+
"@typescript-eslint/eslint-plugin": "^7.0.0",
|
|
39
|
+
"@typescript-eslint/parser": "^7.0.0",
|
|
40
|
+
"eslint": "^8.57.0",
|
|
41
|
+
"prettier": "^3.2.0",
|
|
34
42
|
"typescript": "^5.0.0"
|
|
35
43
|
},
|
|
36
44
|
"dependencies": {
|