@nwire/cli 0.7.1 → 0.8.0

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 (84) hide show
  1. package/README.md +62 -20
  2. package/dist/__tests__/bench.test.d.ts +2 -0
  3. package/dist/__tests__/bench.test.d.ts.map +1 -0
  4. package/dist/__tests__/bench.test.js +94 -0
  5. package/dist/__tests__/bench.test.js.map +1 -0
  6. package/dist/__tests__/replay.test.d.ts +2 -0
  7. package/dist/__tests__/replay.test.d.ts.map +1 -0
  8. package/dist/__tests__/replay.test.js +202 -0
  9. package/dist/__tests__/replay.test.js.map +1 -0
  10. package/dist/__tests__/trace.test.d.ts +2 -0
  11. package/dist/__tests__/trace.test.d.ts.map +1 -0
  12. package/dist/__tests__/trace.test.js +136 -0
  13. package/dist/__tests__/trace.test.js.map +1 -0
  14. package/dist/__tests__/watch.test.d.ts +2 -0
  15. package/dist/__tests__/watch.test.d.ts.map +1 -0
  16. package/dist/__tests__/watch.test.js +109 -0
  17. package/dist/__tests__/watch.test.js.map +1 -0
  18. package/dist/cache-runner.js +62 -14
  19. package/dist/cache-runner.js.map +1 -1
  20. package/dist/cli.js +8 -0
  21. package/dist/cli.js.map +1 -1
  22. package/dist/commands/bench.d.ts +103 -0
  23. package/dist/commands/bench.d.ts.map +1 -0
  24. package/dist/commands/bench.js +203 -0
  25. package/dist/commands/bench.js.map +1 -0
  26. package/dist/commands/dev.d.ts.map +1 -1
  27. package/dist/commands/dev.js +31 -20
  28. package/dist/commands/dev.js.map +1 -1
  29. package/dist/commands/doctor.d.ts.map +1 -1
  30. package/dist/commands/doctor.js +29 -5
  31. package/dist/commands/doctor.js.map +1 -1
  32. package/dist/commands/infra.d.ts.map +1 -1
  33. package/dist/commands/infra.js +7 -0
  34. package/dist/commands/infra.js.map +1 -1
  35. package/dist/commands/logs.d.ts.map +1 -1
  36. package/dist/commands/logs.js +64 -11
  37. package/dist/commands/logs.js.map +1 -1
  38. package/dist/commands/replay.d.ts +45 -0
  39. package/dist/commands/replay.d.ts.map +1 -0
  40. package/dist/commands/replay.js +159 -0
  41. package/dist/commands/replay.js.map +1 -0
  42. package/dist/commands/run.d.ts.map +1 -1
  43. package/dist/commands/run.js +14 -4
  44. package/dist/commands/run.js.map +1 -1
  45. package/dist/commands/studio.d.ts.map +1 -1
  46. package/dist/commands/studio.js +7 -1
  47. package/dist/commands/studio.js.map +1 -1
  48. package/dist/commands/test.d.ts.map +1 -1
  49. package/dist/commands/test.js +3 -0
  50. package/dist/commands/test.js.map +1 -1
  51. package/dist/commands/trace.d.ts +40 -0
  52. package/dist/commands/trace.d.ts.map +1 -0
  53. package/dist/commands/trace.js +195 -0
  54. package/dist/commands/trace.js.map +1 -0
  55. package/dist/commands/watch.d.ts +33 -0
  56. package/dist/commands/watch.d.ts.map +1 -0
  57. package/dist/commands/watch.js +152 -0
  58. package/dist/commands/watch.js.map +1 -0
  59. package/dist/lib/dev-entry.d.ts +39 -0
  60. package/dist/lib/dev-entry.d.ts.map +1 -0
  61. package/dist/lib/dev-entry.js +102 -0
  62. package/dist/lib/dev-entry.js.map +1 -0
  63. package/dist/lib/exec.d.ts +7 -0
  64. package/dist/lib/exec.d.ts.map +1 -1
  65. package/dist/lib/exec.js +19 -1
  66. package/dist/lib/exec.js.map +1 -1
  67. package/dist/lib/run-task.d.ts.map +1 -1
  68. package/dist/lib/run-task.js +6 -1
  69. package/dist/lib/run-task.js.map +1 -1
  70. package/dist/lib/sse.d.ts +24 -0
  71. package/dist/lib/sse.d.ts.map +1 -0
  72. package/dist/lib/sse.js +63 -0
  73. package/dist/lib/sse.js.map +1 -0
  74. package/dist/lib/wire-discovery.d.ts +9 -0
  75. package/dist/lib/wire-discovery.d.ts.map +1 -0
  76. package/dist/lib/wire-discovery.js +82 -0
  77. package/dist/lib/wire-discovery.js.map +1 -0
  78. package/dist/load-config.d.ts +3 -3
  79. package/dist/load-config.d.ts.map +1 -1
  80. package/dist/load-config.js +15 -3
  81. package/dist/load-config.js.map +1 -1
  82. package/dist/ls-runner.js +2 -2
  83. package/dist/ls-runner.js.map +1 -1
  84. package/package.json +5 -3
@@ -8,12 +8,14 @@
8
8
  * sees the dev session from any other shell.
9
9
  */
10
10
  import { defineCommand } from "citty";
11
- import { resolve } from "node:path";
12
- import { appendFileSync, closeSync, existsSync, openSync } from "node:fs";
11
+ import { appendFileSync, closeSync, openSync } from "node:fs";
13
12
  import { spawn } from "node:child_process";
14
13
  import { randomUUID } from "node:crypto";
15
14
  import { palette } from "../lib/colors.js";
15
+ /** Windows toggle — `shell:true` so `pnpm.cmd` resolves on spawn. */
16
+ const IS_WIN = process.platform === "win32";
16
17
  import { detectProject } from "../lib/project.js";
18
+ import { resolveDevEntry, devEntryCandidates } from "../lib/dev-entry.js";
17
19
  import { ensureDir as ensureProcDir, logPath as procLogPath, removeRecord, writeRecord, } from "../lib/process-state.js";
18
20
  export const devCommand = defineCommand({
19
21
  meta: {
@@ -22,26 +24,23 @@ export const devCommand = defineCommand({
22
24
  },
23
25
  async run() {
24
26
  const cwd = process.cwd();
25
- // Resolve in order:
26
- // 1. apps/dev-all/run.ts — explicit multi-wire dev topology
27
- // 2. apps/<single-wire>/{run,main}.ts — the obvious single-wire case
28
- const candidates = [resolve(cwd, "apps/dev-all/run.ts")];
29
27
  const project = detectProject(cwd);
30
- if (project.wires.length === 1) {
31
- const only = project.wires[0];
32
- candidates.push(resolve(cwd, "apps", only, "run.ts"), resolve(cwd, "apps", only, "main.ts"));
33
- }
34
- const entry = candidates.find((p) => existsSync(p));
35
- if (!entry) {
28
+ // Resolution covers every recognized project shape:
29
+ // 1. apps/dev-all/run.ts (multi-wire)
30
+ // 2. apps/<single>/{run,main}.ts
31
+ // 3. app/{main,run,index}.ts (singular small-example shape)
32
+ // 4. package.json scripts.dev (last resort — honors whatever the
33
+ // consumer scripts already encode, e.g. vite-node app/main.ts)
34
+ const resolved = resolveDevEntry(cwd);
35
+ if (!resolved) {
36
36
  // eslint-disable-next-line no-console
37
37
  console.error(palette.err("nwire dev:") +
38
- ` no dev entry found in ${cwd} (looked for ${candidates
39
- .map((p) => p.replace(cwd + "/", ""))
40
- .join(", ")})`);
38
+ ` no dev entry found in ${cwd}\n` +
39
+ ` looked for: ${devEntryCandidates().join(", ")}`);
41
40
  process.exit(1);
42
41
  }
43
- const subtitle = entry.includes("/dev-all/") ? "dev-all" : (project.wires[0] ?? "wire");
44
- const entryRel = entry.replace(cwd + "/", "");
42
+ const subtitle = resolved.kind === "vite-node" ? resolved.label : `pnpm run ${resolved.script}`;
43
+ const entryRel = resolved.kind === "vite-node" ? resolved.rel : `package.json scripts.${resolved.script}`;
45
44
  // ── Banner ──────────────────────────────────────────────────────
46
45
  // Single block before stdio passthrough takes over. The child's
47
46
  // boot logs (runApp's "ready" banner, ports, etc.) flow through
@@ -61,9 +60,13 @@ export const devCommand = defineCommand({
61
60
  // capture, no log buffering. The trade-off: `nwire logs <id>`
62
61
  // can't tail the live stream (only what we tee to disk). For dev
63
62
  // sessions that's fine — the user is watching the terminal.
64
- const child = spawn("pnpm", ["exec", "vite-node", "--watch", entry], {
63
+ const spawnCmd = resolved.kind === "vite-node"
64
+ ? ["pnpm", ["exec", "vite-node", "--watch", resolved.entry]]
65
+ : ["pnpm", ["run", resolved.script]];
66
+ const child = spawn(spawnCmd[0], spawnCmd[1], {
65
67
  stdio: ["inherit", "pipe", "pipe"],
66
68
  cwd,
69
+ shell: IS_WIN,
67
70
  });
68
71
  // Tee child stdio through to BOTH the user's terminal AND the
69
72
  // per-process log file so `nwire logs <id>` works from another
@@ -84,7 +87,9 @@ export const devCommand = defineCommand({
84
87
  port,
85
88
  startedAt,
86
89
  cwd,
87
- command: `vite-node --watch ${entryRel}`,
90
+ command: resolved.kind === "vite-node"
91
+ ? `vite-node --watch ${resolved.rel}`
92
+ : `pnpm run ${resolved.script} (${resolved.command})`,
88
93
  logPath: logFile,
89
94
  lastUpdated: new Date().toISOString(),
90
95
  };
@@ -129,7 +134,13 @@ export const devCommand = defineCommand({
129
134
  setTimeout(() => {
130
135
  if (child.exitCode === null && child.signalCode === null) {
131
136
  try {
132
- child.kill("SIGKILL");
137
+ // Windows has no signal mechanism — SIGTERM and SIGKILL
138
+ // collapse to the same TerminateProcess call. Skip the
139
+ // explicit SIGKILL and let Node use the platform default.
140
+ if (IS_WIN)
141
+ child.kill();
142
+ else
143
+ child.kill("SIGKILL");
133
144
  }
134
145
  catch {
135
146
  // gone
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAQH,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAChD,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;CAC7D;AAED,UAAU,SAAS;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAuND,eAAO,MAAM,MAAM,EAAE,SAAS,KAAK,EAWlC,CAAC;AAsFF;;;GAGG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,KAAK,CAAC;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,CAAC,CAAC,CAmBxD;AAED,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;AAI3C,eAAO,MAAM,aAAa;;;;;;;;;;EAkCxB,CAAC"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAWH,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAChD,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;CAC7D;AAED,UAAU,SAAS;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AA4OD,eAAO,MAAM,MAAM,EAAE,SAAS,KAAK,EAYlC,CAAC;AAuFF;;;GAGG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,KAAK,CAAC;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,CAAC,CAAC,CAmBxD;AAED,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;AAI3C,eAAO,MAAM,aAAa;;;;;;;;;;EAkCxB,CAAC"}
@@ -20,9 +20,11 @@
20
20
  */
21
21
  import { defineCommand } from "citty";
22
22
  import { existsSync, readFileSync, readdirSync, statSync } from "node:fs";
23
- import { join } from "node:path";
23
+ import { join, relative } from "node:path";
24
24
  import { createServer } from "node:net";
25
25
  import { palette } from "../lib/colors.js";
26
+ /** Windows toggle — `shell:true` so `.cmd` shims like `pnpm` resolve. */
27
+ const IS_WIN = process.platform === "win32";
26
28
  // ─── individual checks ──────────────────────────────────────────────
27
29
  const nodeVersionCheck = {
28
30
  name: "node-version",
@@ -44,7 +46,7 @@ const pkgManagerCheck = {
44
46
  run: async () => {
45
47
  try {
46
48
  const { spawnSync } = await import("node:child_process");
47
- const r = spawnSync("pnpm", ["--version"], { encoding: "utf8" });
49
+ const r = spawnSync("pnpm", ["--version"], { encoding: "utf8", shell: IS_WIN });
48
50
  if (r.status === 0)
49
51
  return { status: "pass", message: `pnpm ${r.stdout.trim()}` };
50
52
  }
@@ -178,7 +180,7 @@ const inspectMountCheck = {
178
180
  const looksLikeL4 = /createApp|app\.start\(\)/.test(text);
179
181
  const hasInspect = /\.inspect\(/.test(text);
180
182
  if (looksLikeL4 && !hasInspect) {
181
- offenders.push(entry.replace(ctx.cwd + "/", ""));
183
+ offenders.push(relative(ctx.cwd, entry));
182
184
  }
183
185
  }
184
186
  if (offenders.length === 0)
@@ -223,7 +225,8 @@ const envFileCheck = {
223
225
  const text = readFileSync(p, "utf8");
224
226
  // Crude — any non-empty value that looks like a real key (length>20, alphanumeric)
225
227
  // for *_SECRET, *_KEY, *_PASSWORD, *_TOKEN names.
226
- const lines = text.split("\n");
228
+ // CRLF-safe Windows `.env` files often arrive with \r\n.
229
+ const lines = text.split(/\r?\n/);
227
230
  for (const line of lines) {
228
231
  const m = /^([A-Z_]+(SECRET|KEY|PASSWORD|TOKEN))=(.+)$/.exec(line);
229
232
  if (m && m[3] && m[3].length > 20 && !/^(dev|test|changeme)/.test(m[3])) {
@@ -240,10 +243,30 @@ const envFileCheck = {
240
243
  };
241
244
  },
242
245
  };
246
+ const templatesCheck = {
247
+ name: "templates",
248
+ description: "Scaffold templates available via `pnpm create nwire <name>`",
249
+ run: () => {
250
+ // Static — the create-nwire package ships three templates by convention.
251
+ // This check exists so users running `nwire doctor` see what they can
252
+ // scaffold without leaving the terminal.
253
+ const available = [
254
+ "L1 — minimal (httpInterface + endpoint; folder-organized routes/)",
255
+ "L2 — service (resources/errors/middleware/store/routes folders; in-memory CRUD)",
256
+ "L4 — enterprise (modules/<bc>/{events,actions,workflows,projections,routes})",
257
+ ];
258
+ return {
259
+ status: "info",
260
+ message: `${available.length} templates available`,
261
+ hint: available.join("\n "),
262
+ };
263
+ },
264
+ };
243
265
  export const CHECKS = [
244
266
  nodeVersionCheck,
245
267
  pkgManagerCheck,
246
268
  workspaceCheck,
269
+ templatesCheck,
247
270
  cacheCheck,
248
271
  probePortCheck,
249
272
  studioPortCheck,
@@ -313,7 +336,8 @@ function renderHuman(results) {
313
336
  console.log(` ${icon} ${palette.bold(name)} ${result.message}`);
314
337
  if (result.hint) {
315
338
  // wrap multi-line hints (from inspect-mount listing files)
316
- for (const line of result.hint.split("\n")) {
339
+ // CRLF-safe hint strings are framework-internal but consistency wins.
340
+ for (const line of result.hint.split(/\r?\n/)) {
317
341
  console.log(palette.hint(` ${line}`));
318
342
  }
319
343
  }
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAW,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAkBxC,uEAAuE;AAEvE,MAAM,gBAAgB,GAAU;IAC9B,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,8BAA8B;IAC3C,GAAG,EAAE,GAAG,EAAE;QACR,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,KAAK,IAAI,EAAE;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACrF,OAAO;YACL,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,QAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,aAAa;YACnD,IAAI,EAAE,8CAA8C;SACrD,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,eAAe,GAAU;IAC7B,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,mBAAmB;IAChC,GAAG,EAAE,KAAK,IAAI,EAAE;QACd,IAAI,CAAC;YACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YACzD,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;QACD,OAAO;YACL,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,sEAAsE;SAC7E,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,cAAc,GAAU;IAC5B,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,0CAA0C;IACvD,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB;gBAC1B,IAAI,EAAE,iEAAiE;aACxE,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;YACtC,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,oCAAoC;gBAC7C,IAAI,EAAE,wEAAwE;aAC/E,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,OAAO,QAAQ,MAAM,WAAW,SAAS,EAAE,EAAE,CAAC;IAC1F,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,GAAU;IACxB,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,sCAAsC;IACnD,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,8BAA8B;gBACvC,IAAI,EAAE,wDAAwD;aAC/D,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;QACtC,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;YACd,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,eAAe,IAAI,OAAO;gBACnC,IAAI,EAAE,oEAAoE;aAC3E,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,IAAI,QAAQ,EAAE,CAAC;IACtE,CAAC;CACF,CAAC;AAEF,MAAM,cAAc,GAAU;IAC5B,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,wCAAwC;IACrD,GAAG,EAAE,KAAK,IAAI,EAAE;QACd,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QAC9D,OAAO;YACL,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,iBAAiB;YAC1B,IAAI,EAAE,0HAA0H;SACjI,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,eAAe,GAAU;IAC7B,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,oCAAoC;IACjD,GAAG,EAAE,KAAK,IAAI,EAAE;QACd,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QAC9D,OAAO;YACL,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,iBAAiB;YAC1B,IAAI,EAAE,kEAAkE;SACzE,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,qBAAqB,GAAU;IACnC,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EAAE,sDAAsD;IACnE,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;QACnF,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAChC,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,oFAAoF;YACpF,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1C,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC;QAC1F,OAAO;YACL,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,iBAAiB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC;YAC1E,IAAI,EAAE,wFAAwF;SAC/F,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,iBAAiB,GAAU;IAC/B,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,2CAA2C;IACxD,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;QACX,qFAAqF;QACrF,yEAAyE;QACzE,uDAAuD;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAChF,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,SAAS;YACvE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzC,MAAM,WAAW,GAAG,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1D,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC/B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;QAC7F,OAAO;YACL,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,GAAG,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,2BAA2B;YAC/F,IAAI,EAAE,wDAAwD,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;SAC7F,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,aAAa,GAAU;IAC3B,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,yCAAyC;IACtD,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;QAC9E,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;QAC7F,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,qCAAqC;gBAC9C,IAAI,EAAE,uJAAuJ;aAC9J,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sDAAsD,EAAE,CAAC;IAC7F,CAAC;CACF,CAAC;AAEF,MAAM,YAAY,GAAU;IAC1B,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,qDAAqD;IAClE,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC7B,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YACrC,mFAAmF;YACnF,kDAAkD;YAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;QAChG,OAAO;YACL,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,uBAAuB,SAAS,CAAC,MAAM,YAAY,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;YAC/F,IAAI,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,4DAA4D;SAC1F,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAqB;IACtC,gBAAgB;IAChB,eAAe;IACf,cAAc;IACd,UAAU;IACV,cAAc;IACd,eAAe;IACf,qBAAqB;IACrB,iBAAiB;IACjB,aAAa;IACb,YAAY;CACb,CAAC;AAEF,uEAAuE;AAEvE,8EAA8E;AAC9E,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAW,EAAE,KAAa;IACvC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO;IACtB,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,EAAE,CAAC;QACP,IAAI,CAAC;YACH,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,EAAE,CAAC,WAAW,EAAE;YAAE,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;;YAC9C,MAAM,IAAI,CAAC;IAClB,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACzB,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;QAC3B,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACpC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;YACzB,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,uEAAuE;AAEvE,MAAM,WAAW,GAA2B;IAC1C,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;CACV,CAAC;AACF,MAAM,YAAY,GAA0C;IAC1D,IAAI,EAAE,OAAO,CAAC,EAAE;IAChB,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,IAAI,EAAE,OAAO,CAAC,GAAG;IACjB,IAAI,EAAE,OAAO,CAAC,GAAG;CAClB,CAAC;AAEF,SAAS,WAAW,CAAC,OAA6D;IAChF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACnE,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACnE,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,2DAA2D;YAC3D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CACT,KAAK,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,OAAO,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CACnI,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,OAA6D;IAC/E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9C,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,GAAG,MAAM;KACV,CAAC,CAAC,CAAC;IACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAG/B;IACC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC/F,MAAM,OAAO,GAAiD,EAAE,CAAC;IACjE,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK;gBACL,MAAM,EAAE;oBACN,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,gBAAiB,GAAa,CAAC,OAAO,EAAE;iBAClD;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAID,sEAAsE;AAEtE,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC;IACzC,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,gDAAgD;KAC9D;IACD,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,4CAA4C;YACzD,OAAO,EAAE,KAAK;SACf;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uDAAuD;SACrE;KACF;IACD,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;QAChB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QACjD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,kCAAkC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,IAAI,CAAC,IAAI;YAAE,UAAU,CAAC,OAAO,CAAC,CAAC;;YAC9B,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"infra.d.ts","sourceRoot":"","sources":["../../src/commands/infra.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAgDH,eAAO,MAAM,YAAY,qDA0FvB,CAAC"}
1
+ {"version":3,"file":"infra.d.ts","sourceRoot":"","sources":["../../src/commands/infra.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAwDH,eAAO,MAAM,YAAY,qDA0FvB,CAAC"}
@@ -15,6 +15,12 @@ import { spawn } from "node:child_process";
15
15
  import { existsSync } from "node:fs";
16
16
  import { resolve } from "node:path";
17
17
  import { palette } from "../lib/colors.js";
18
+ /**
19
+ * Windows toggle — `docker` ships as `.exe` on Docker Desktop but as a
20
+ * `.bat`/`.cmd` shim with Rancher Desktop and WSL, so `shell:true` is
21
+ * the only resolution path that works across all three setups.
22
+ */
23
+ const IS_WIN = process.platform === "win32";
18
24
  /**
19
25
  * Build the `docker compose` command. When `withTelemetry` is set AND
20
26
  * `docker-compose.telemetry.yml` exists, include it via `-f` overlay so
@@ -32,6 +38,7 @@ function runCompose(args, withTelemetry) {
32
38
  const child = spawn("docker", [...composeArgs, ...args], {
33
39
  stdio: "inherit",
34
40
  cwd: process.cwd(),
41
+ shell: IS_WIN,
35
42
  });
36
43
  child.on("close", (code) => resolveExit(code ?? 1));
37
44
  child.on("error", (err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"infra.js","sourceRoot":"","sources":["../../src/commands/infra.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"infra.js","sourceRoot":"","sources":["../../src/commands/infra.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,eAAO,MAAM,WAAW;;;;;;;;;;;;EAgEtB,CAAC"}
1
+ {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgBH,eAAO,MAAM,WAAW;;;;;;;;;;;;EAoHtB,CAAC"}
@@ -6,8 +6,7 @@
6
6
  * until the user hits Ctrl+C.
7
7
  */
8
8
  import { defineCommand } from "citty";
9
- import { existsSync, readFileSync } from "node:fs";
10
- import { spawn } from "node:child_process";
9
+ import { closeSync, createReadStream, existsSync, openSync, readFileSync, statSync, watch, } from "node:fs";
11
10
  import { palette } from "../lib/colors.js";
12
11
  import { listRecords } from "../lib/process-state.js";
13
12
  export const logsCommand = defineCommand({
@@ -54,20 +53,74 @@ export const logsCommand = defineCommand({
54
53
  process.stdout.write(readFileSync(record.logPath, "utf8"));
55
54
  process.exit(0);
56
55
  }
57
- // `tail -F` follows the file across truncations/recreations and is
58
- // available on every supported developer platform.
59
- const child = spawn("tail", ["-F", record.logPath], { stdio: "inherit" });
60
- const stop = (signal) => {
56
+ // Cross-platform follow — `tail -F` doesn't exist on Windows, so we
57
+ // emit the current contents, then watch the file with `fs.watch` and
58
+ // stream new bytes from the last-known offset every time it grows.
59
+ // `fs.watch` recurses through truncations on POSIX and survives
60
+ // recreate-on-rotate on both platforms.
61
+ let offset = 0;
62
+ try {
63
+ const stat = statSync(record.logPath);
64
+ offset = stat.size;
65
+ const fd = openSync(record.logPath, "r");
66
+ const buf = Buffer.alloc(stat.size);
67
+ // Synchronous read keeps initial ordering identical to `tail` —
68
+ // print historical bytes first, then start watching.
69
+ const { readSync } = await import("node:fs");
70
+ readSync(fd, buf, 0, stat.size, 0);
71
+ closeSync(fd);
72
+ process.stdout.write(buf);
73
+ }
74
+ catch {
75
+ // file gone between listing and reading — fall through to watch
76
+ }
77
+ let reading = false;
78
+ const drain = async () => {
79
+ if (reading)
80
+ return;
81
+ reading = true;
61
82
  try {
62
- child.kill(signal);
83
+ const stat = statSync(record.logPath);
84
+ if (stat.size < offset) {
85
+ // truncated — restart from zero
86
+ offset = 0;
87
+ }
88
+ if (stat.size > offset) {
89
+ await new Promise((resolve) => {
90
+ const stream = createReadStream(record.logPath, {
91
+ start: offset,
92
+ end: stat.size - 1,
93
+ });
94
+ stream.on("data", (chunk) => process.stdout.write(chunk));
95
+ stream.on("end", () => {
96
+ offset = stat.size;
97
+ resolve();
98
+ });
99
+ stream.on("error", () => resolve());
100
+ });
101
+ }
63
102
  }
64
103
  catch {
65
- // gone
104
+ // transient missing file — wait for next watch event
105
+ }
106
+ finally {
107
+ reading = false;
66
108
  }
67
109
  };
68
- process.on("SIGINT", () => stop("SIGINT"));
69
- process.on("SIGTERM", () => stop("SIGTERM"));
70
- child.on("exit", (code) => process.exit(code ?? 0));
110
+ const watcher = watch(record.logPath, { persistent: true }, () => {
111
+ void drain();
112
+ });
113
+ const stop = () => {
114
+ try {
115
+ watcher.close();
116
+ }
117
+ catch {
118
+ // already closed
119
+ }
120
+ process.exit(0);
121
+ };
122
+ process.on("SIGINT", stop);
123
+ process.on("SIGTERM", stop);
71
124
  },
72
125
  });
73
126
  //# sourceMappingURL=logs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { Recording } from "@nwire/hooks";
2
+ interface WireReplayResponse {
3
+ readonly matches: boolean;
4
+ readonly drift: ReadonlyArray<string>;
5
+ readonly recorded: Recording;
6
+ readonly replayed: {
7
+ readonly stepCount: number;
8
+ readonly outcome: string;
9
+ };
10
+ }
11
+ export declare function loadRecording(path: string): Recording;
12
+ export declare function renderReplayResult(res: WireReplayResponse): string;
13
+ /**
14
+ * Render an offline-only step trace from the recording. No drift can be
15
+ * shown — we only have one side of the comparison — but the user still
16
+ * sees what *was* captured plus a one-line hint pointing them at the
17
+ * online surface for the real diff.
18
+ */
19
+ export declare function renderOfflineDiff(recording: Recording): string;
20
+ export interface PostReplayOpts {
21
+ readonly url: string;
22
+ readonly recording: Recording;
23
+ readonly hook?: string;
24
+ readonly signal?: AbortSignal;
25
+ }
26
+ /**
27
+ * POST the recording at the wire. Resolves to the parsed wire response
28
+ * when the endpoint is mounted, or to `null` when the wire returns 404 /
29
+ * 501 (endpoint missing). Throws on any other transport failure.
30
+ */
31
+ export declare function postReplay(opts: PostReplayOpts): Promise<WireReplayResponse | null>;
32
+ export declare const replayCommand: import("citty").CommandDef<{
33
+ file: {
34
+ type: "positional";
35
+ description: string;
36
+ required: true;
37
+ };
38
+ hook: {
39
+ type: "string";
40
+ description: string;
41
+ required: false;
42
+ };
43
+ }>;
44
+ export {};
45
+ //# sourceMappingURL=replay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/commands/replay.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,cAAc,CAAC;AAO/D,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,OAAO,EAAG,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAK,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,OAAO,EAAI,MAAM,CAAC;KAC5B,CAAC;CACH;AAID,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAarD;AAID,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,kBAAkB,GAAG,MAAM,CAiClE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAuB9D;AAID,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAQ,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAI,WAAW,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAiBzF;AAID,eAAO,MAAM,aAAa;;;;;;;;;;;EA8DxB,CAAC"}