@hs-x/cli 0.1.3 → 0.2.1

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 (145) hide show
  1. package/README.md +97 -986
  2. package/dist/account-store.d.ts +45 -22
  3. package/dist/account-store.d.ts.map +1 -1
  4. package/dist/account-store.js +73 -16
  5. package/dist/account-store.js.map +1 -1
  6. package/dist/cli/index.d.ts.map +1 -1
  7. package/dist/cli/index.js +177 -16
  8. package/dist/cli/index.js.map +1 -1
  9. package/dist/cli/kit.d.ts +1 -1
  10. package/dist/cli/kit.d.ts.map +1 -1
  11. package/dist/cli/kit.js.map +1 -1
  12. package/dist/commands/account.d.ts +6 -6
  13. package/dist/commands/account.d.ts.map +1 -1
  14. package/dist/commands/account.js +25 -23
  15. package/dist/commands/account.js.map +1 -1
  16. package/dist/commands/api.d.ts +1 -1
  17. package/dist/commands/completion.d.ts.map +1 -1
  18. package/dist/commands/completion.js +6 -4
  19. package/dist/commands/completion.js.map +1 -1
  20. package/dist/commands/connect.d.ts +16 -0
  21. package/dist/commands/connect.d.ts.map +1 -1
  22. package/dist/commands/connect.js +143 -17
  23. package/dist/commands/connect.js.map +1 -1
  24. package/dist/commands/control-plane-read.d.ts +3 -3
  25. package/dist/commands/control-plane-read.d.ts.map +1 -1
  26. package/dist/commands/control-plane-read.js +21 -33
  27. package/dist/commands/control-plane-read.js.map +1 -1
  28. package/dist/commands/deploy-promote.d.ts +1 -1
  29. package/dist/commands/deploy-promote.d.ts.map +1 -1
  30. package/dist/commands/deploy-promote.js +3 -3
  31. package/dist/commands/deploy-promote.js.map +1 -1
  32. package/dist/commands/deploy.d.ts.map +1 -1
  33. package/dist/commands/deploy.js +114 -7
  34. package/dist/commands/deploy.js.map +1 -1
  35. package/dist/commands/dev.d.ts +5 -0
  36. package/dist/commands/dev.d.ts.map +1 -1
  37. package/dist/commands/dev.js +233 -2
  38. package/dist/commands/dev.js.map +1 -1
  39. package/dist/commands/doctor.d.ts +1 -1
  40. package/dist/commands/doctor.js +2 -2
  41. package/dist/commands/doctor.js.map +1 -1
  42. package/dist/commands/flags.d.ts +1 -1
  43. package/dist/commands/flags.d.ts.map +1 -1
  44. package/dist/commands/flags.js +59 -35
  45. package/dist/commands/flags.js.map +1 -1
  46. package/dist/commands/help-command.d.ts +15 -1
  47. package/dist/commands/help-command.d.ts.map +1 -1
  48. package/dist/commands/help-command.js +316 -31
  49. package/dist/commands/help-command.js.map +1 -1
  50. package/dist/commands/init.d.ts +11 -8
  51. package/dist/commands/init.d.ts.map +1 -1
  52. package/dist/commands/init.js +435 -246
  53. package/dist/commands/init.js.map +1 -1
  54. package/dist/commands/link.d.ts +1 -26
  55. package/dist/commands/link.d.ts.map +1 -1
  56. package/dist/commands/link.js +11 -236
  57. package/dist/commands/link.js.map +1 -1
  58. package/dist/commands/login.d.ts +4 -12
  59. package/dist/commands/login.d.ts.map +1 -1
  60. package/dist/commands/login.js +196 -390
  61. package/dist/commands/login.js.map +1 -1
  62. package/dist/commands/migrate.d.ts +12 -7
  63. package/dist/commands/migrate.d.ts.map +1 -1
  64. package/dist/commands/migrate.js +311 -205
  65. package/dist/commands/migrate.js.map +1 -1
  66. package/dist/commands/rollback.d.ts +1 -20
  67. package/dist/commands/rollback.d.ts.map +1 -1
  68. package/dist/commands/rollback.js +6 -275
  69. package/dist/commands/rollback.js.map +1 -1
  70. package/dist/commands/status.d.ts +1 -1
  71. package/dist/commands/status.js +1 -1
  72. package/dist/commands/status.js.map +1 -1
  73. package/dist/commands/unlink.d.ts +1 -21
  74. package/dist/commands/unlink.d.ts.map +1 -1
  75. package/dist/commands/unlink.js +12 -94
  76. package/dist/commands/unlink.js.map +1 -1
  77. package/dist/commands/update.js +7 -7
  78. package/dist/commands/update.js.map +1 -1
  79. package/dist/commands/validate.d.ts +2 -2
  80. package/dist/commands/validate.d.ts.map +1 -1
  81. package/dist/commands/validate.js +1 -1
  82. package/dist/commands/validate.js.map +1 -1
  83. package/dist/config.d.ts +1 -0
  84. package/dist/config.d.ts.map +1 -1
  85. package/dist/config.js +7 -0
  86. package/dist/config.js.map +1 -1
  87. package/dist/constants.d.ts +1 -1
  88. package/dist/constants.d.ts.map +1 -1
  89. package/dist/constants.js +5 -4
  90. package/dist/constants.js.map +1 -1
  91. package/dist/control-plane-fetch.d.ts.map +1 -1
  92. package/dist/control-plane-fetch.js +2 -2
  93. package/dist/control-plane-fetch.js.map +1 -1
  94. package/dist/control-plane-loader.d.ts +1 -1
  95. package/dist/control-plane-loader.js +1 -1
  96. package/dist/dev/invoke.d.ts +44 -0
  97. package/dist/dev/invoke.d.ts.map +1 -0
  98. package/dist/dev/invoke.js +155 -0
  99. package/dist/dev/invoke.js.map +1 -0
  100. package/dist/errors-registry.d.ts.map +1 -1
  101. package/dist/errors-registry.js +86 -1
  102. package/dist/errors-registry.js.map +1 -1
  103. package/dist/help.d.ts +10 -0
  104. package/dist/help.d.ts.map +1 -1
  105. package/dist/help.js +212 -5
  106. package/dist/help.js.map +1 -1
  107. package/dist/init/templates.d.ts +11 -3
  108. package/dist/init/templates.d.ts.map +1 -1
  109. package/dist/init/templates.js +115 -27
  110. package/dist/init/templates.js.map +1 -1
  111. package/dist/project-binding.d.ts +17 -0
  112. package/dist/project-binding.d.ts.map +1 -0
  113. package/dist/project-binding.js +30 -0
  114. package/dist/project-binding.js.map +1 -0
  115. package/dist/prompt.d.ts +21 -0
  116. package/dist/prompt.d.ts.map +1 -1
  117. package/dist/prompt.js +186 -50
  118. package/dist/prompt.js.map +1 -1
  119. package/dist/reporter/human.d.ts +5 -0
  120. package/dist/reporter/human.d.ts.map +1 -1
  121. package/dist/reporter/human.js +48 -18
  122. package/dist/reporter/human.js.map +1 -1
  123. package/dist/reporter/json.d.ts +6 -0
  124. package/dist/reporter/json.d.ts.map +1 -1
  125. package/dist/reporter/json.js +16 -0
  126. package/dist/reporter/json.js.map +1 -1
  127. package/dist/reporter/style.d.ts +2 -1
  128. package/dist/reporter/style.d.ts.map +1 -1
  129. package/dist/reporter/style.js +14 -3
  130. package/dist/reporter/style.js.map +1 -1
  131. package/dist/reporter/types.d.ts +9 -0
  132. package/dist/reporter/types.d.ts.map +1 -1
  133. package/dist/reporter/types.js.map +1 -1
  134. package/dist/services/account-store.d.ts +9 -4
  135. package/dist/services/account-store.d.ts.map +1 -1
  136. package/dist/services/account-store.js +46 -22
  137. package/dist/services/account-store.js.map +1 -1
  138. package/dist/services/control-plane.js +3 -2
  139. package/dist/services/control-plane.js.map +1 -1
  140. package/dist/services/live.d.ts +1 -1
  141. package/dist/services/reporter.d.ts +3 -0
  142. package/dist/services/reporter.d.ts.map +1 -1
  143. package/dist/services/reporter.js +2 -0
  144. package/dist/services/reporter.js.map +1 -1
  145. package/package.json +21 -8
package/dist/prompt.js CHANGED
@@ -1,22 +1,118 @@
1
1
  import readline, { emitKeypressEvents } from 'node:readline';
2
2
  import { BRAND_ORANGE_SGR } from './constants.js';
3
- function withEscapeCancel(rl, stdin, stderr, onCancel) {
3
+ /**
4
+ * Sentinel returned by prompts called with `allowBack: true` when the user
5
+ * presses Esc: the wizard should re-run the PREVIOUS step instead of
6
+ * cancelling. Ctrl+C always cancels (`undefined`).
7
+ */
8
+ export const BACK = Symbol('hs-x.prompt.back');
9
+ // Resolve a readline prompt on Esc (back when the caller allows it, cancel
10
+ // otherwise) or Ctrl+C (always cancel). Without the explicit 'SIGINT'
11
+ // listener, readline's default Ctrl+C handling tears down the whole process;
12
+ // we want a graceful cancel that the caller turns into an exit-130
13
+ // "Cancelled." path.
14
+ function withEscapeCancel(rl, stdin, stderr, onCancel, onBack) {
4
15
  emitKeypressEvents(stdin, rl);
16
+ const settle = (handler) => {
17
+ stderr.write('\n');
18
+ rl.close();
19
+ handler();
20
+ };
5
21
  const handler = (_str, key) => {
6
- if (key?.name === 'escape') {
7
- stderr.write('\n');
8
- rl.close();
9
- onCancel();
10
- }
22
+ if (key?.name === 'escape')
23
+ settle(onBack ?? onCancel);
11
24
  };
12
25
  stdin.on('keypress', handler);
13
- return () => stdin.off('keypress', handler);
26
+ rl.on('SIGINT', () => settle(onCancel));
27
+ return () => {
28
+ stdin.off('keypress', handler);
29
+ };
14
30
  }
15
31
  const ESC = '\x1b[';
16
32
  const RESET = `${ESC}0m`;
17
33
  const DIM = `${ESC}2m`;
18
34
  const BOLD = `${ESC}1m`;
19
35
  const ORANGE = `${ESC}${BRAND_ORANGE_SGR}m`;
36
+ // Match SGR color codes (\x1b[..m) and OSC-8 hyperlink wrappers so we can
37
+ // measure the *visible* width of a styled line.
38
+ // biome-ignore lint/suspicious/noControlCharactersInRegex: ANSI escapes are control chars by nature.
39
+ const ANSI_RE = /\x1b\[[0-9;]*m|\x1b\]8;;[^\x1b\x07]*(?:\x07|\x1b\\)/g;
40
+ function visibleWidth(line) {
41
+ return line.replace(ANSI_RE, '').length;
42
+ }
43
+ // Matches a single ANSI escape (color or OSC-8 link) anchored at the start.
44
+ // biome-ignore lint/suspicious/noControlCharactersInRegex: ANSI escapes are control chars by nature.
45
+ const ANSI_PREFIX_RE = /^(?:\x1b\[[0-9;]*m|\x1b\]8;;[^\x1b\x07]*(?:\x07|\x1b\\))/;
46
+ /**
47
+ * Truncate a styled line to `maxWidth` *visible* columns, preserving ANSI
48
+ * escapes and re-appending a reset. Keeps every rendered line to a single
49
+ * terminal row so the in-place repaint math (and the scrolling viewport) stay
50
+ * exact regardless of terminal width.
51
+ */
52
+ function truncateVisible(line, maxWidth) {
53
+ if (maxWidth <= 1 || visibleWidth(line) <= maxWidth)
54
+ return line;
55
+ let out = '';
56
+ let width = 0;
57
+ let rest = line;
58
+ let styled = false;
59
+ while (rest.length > 0 && width < maxWidth - 1) {
60
+ const m = ANSI_PREFIX_RE.exec(rest);
61
+ if (m) {
62
+ out += m[0];
63
+ rest = rest.slice(m[0].length);
64
+ styled = true;
65
+ continue;
66
+ }
67
+ out += rest[0];
68
+ rest = rest.slice(1);
69
+ width += 1;
70
+ }
71
+ out += '…';
72
+ if (styled)
73
+ out += RESET;
74
+ return out;
75
+ }
76
+ /**
77
+ * Repaints a multi-line block in place. Each line is truncated to the terminal
78
+ * width so it occupies exactly one physical row, which keeps the cursor-up
79
+ * count exact and stale rows from accumulating. (Before truncation, long option
80
+ * descriptions wrapped and the header/options were redrawn below the old frame
81
+ * on every keypress.)
82
+ */
83
+ function createFrameRenderer(stderr) {
84
+ let lastRows = 0;
85
+ return (lines) => {
86
+ if (lastRows > 0) {
87
+ stderr.write(`${ESC}${lastRows}A`); // up to the top of the previous frame
88
+ stderr.write(`\r${ESC}J`); // column 0, then clear to end of screen
89
+ }
90
+ const columns = stderr.columns || 80;
91
+ for (const raw of lines) {
92
+ stderr.write(`${truncateVisible(raw, columns)}\n`);
93
+ }
94
+ lastRows = lines.length;
95
+ };
96
+ }
97
+ /**
98
+ * Pick the slice of options to show so the focused row stays on screen and the
99
+ * rendered frame never exceeds the terminal height (which would break in-place
100
+ * repaint — the cursor cannot move up past rows that have scrolled off). When
101
+ * everything fits, the whole list is shown.
102
+ */
103
+ function computeWindow(total, focused, scrollTop, stderr, reservedRows) {
104
+ const termRows = stderr.rows || 24;
105
+ const size = Math.max(1, Math.min(total, termRows - reservedRows));
106
+ if (size >= total)
107
+ return { start: 0, size: total };
108
+ let start = scrollTop;
109
+ if (focused < start)
110
+ start = focused;
111
+ else if (focused >= start + size)
112
+ start = focused - size + 1;
113
+ start = Math.max(0, Math.min(start, total - size));
114
+ return { start, size };
115
+ }
20
116
  export async function promptText(opts) {
21
117
  const stderr = opts.stderr ?? process.stderr;
22
118
  const stdin = opts.stdin ?? process.stdin;
@@ -35,9 +131,14 @@ export async function promptText(opts) {
35
131
  terminal: true,
36
132
  });
37
133
  let cancelled = false;
134
+ let backed = false;
38
135
  const detach = withEscapeCancel(rl, stdin, stderr, () => {
39
136
  cancelled = true;
40
- });
137
+ }, opts.allowBack
138
+ ? () => {
139
+ backed = true;
140
+ }
141
+ : undefined);
41
142
  const answer = await new Promise((resolve) => {
42
143
  rl.question(` ${arrow} ${wrap(BOLD, opts.message)}${defaultHint} `, (input) => {
43
144
  resolve(input);
@@ -48,6 +149,8 @@ export async function promptText(opts) {
48
149
  rl.close();
49
150
  if (cancelled)
50
151
  return undefined;
152
+ if (backed)
153
+ return BACK;
51
154
  const value = answer.trim() === '' ? (opts.default ?? '') : answer.trim();
52
155
  if (opts.validate) {
53
156
  const err = opts.validate(value);
@@ -77,9 +180,14 @@ export async function promptConfirm(opts) {
77
180
  for (;;) {
78
181
  const rl = readline.createInterface({ input: stdin, output: stderr, terminal: true });
79
182
  let cancelled = false;
183
+ let backed = false;
80
184
  const detach = withEscapeCancel(rl, stdin, stderr, () => {
81
185
  cancelled = true;
82
- });
186
+ }, opts.allowBack
187
+ ? () => {
188
+ backed = true;
189
+ }
190
+ : undefined);
83
191
  const answer = await new Promise((resolve) => {
84
192
  rl.question(` ${arrow} ${wrap(BOLD, opts.message)} ${hint} `, resolve);
85
193
  rl.on('close', () => resolve(''));
@@ -88,6 +196,8 @@ export async function promptConfirm(opts) {
88
196
  rl.close();
89
197
  if (cancelled)
90
198
  return undefined;
199
+ if (backed)
200
+ return BACK;
91
201
  const trimmed = answer.trim().toLowerCase();
92
202
  if (trimmed === '')
93
203
  return defaultValue;
@@ -108,11 +218,7 @@ export async function promptSelect(opts) {
108
218
  const stdinTTY = stdin;
109
219
  const canRawMode = typeof stdinTTY.setRawMode === 'function';
110
220
  if (canRawMode) {
111
- const arrowResult = await promptSelectArrow(opts, stderr, stdinTTY);
112
- if (arrowResult !== undefined)
113
- return arrowResult;
114
- // arrow returned undefined → user cancelled
115
- return undefined;
221
+ return promptSelectArrow(opts, stderr, stdinTTY);
116
222
  }
117
223
  return promptSelectNumbered(opts, stderr, stdin);
118
224
  }
@@ -125,14 +231,15 @@ async function promptSelectArrow(opts, stderr, stdin) {
125
231
  let index = opts.default
126
232
  ? Math.max(0, opts.options.findIndex((o) => o.value === opts.default))
127
233
  : 0;
128
- const render = (initial) => {
129
- if (!initial) {
130
- // Move cursor up (opts.options.length + 1 for the header) and clear
131
- stderr.write(`${ESC}${opts.options.length + 1}A`);
132
- stderr.write(`${ESC}J`);
133
- }
134
- stderr.write(` ${arrow} ${wrap(BOLD, opts.message)}\n`);
135
- for (let i = 0; i < opts.options.length; i++) {
234
+ const paint = createFrameRenderer(stderr);
235
+ let scrollTop = 0;
236
+ const render = () => {
237
+ // header + scroll hint + a little breathing room below the cursor.
238
+ const win = computeWindow(opts.options.length, index, scrollTop, stderr, 4);
239
+ scrollTop = win.start;
240
+ const end = win.start + win.size;
241
+ const lines = [` ${arrow} ${wrap(BOLD, opts.message)}`];
242
+ for (let i = win.start; i < end; i++) {
136
243
  const opt = opts.options[i];
137
244
  if (!opt)
138
245
  continue;
@@ -140,10 +247,22 @@ async function promptSelectArrow(opts, stderr, stdin) {
140
247
  const ptr = isSelected ? wrap(ORANGE, pointer) : ' ';
141
248
  const label = isSelected ? wrap(BOLD, opt.label.padEnd(widest)) : opt.label.padEnd(widest);
142
249
  const desc = opt.description ? ` ${wrap(DIM, `— ${opt.description}`)}` : '';
143
- stderr.write(` ${ptr} ${label}${desc}\n`);
250
+ lines.push(` ${ptr} ${label}${desc}`);
251
+ }
252
+ if (win.size < opts.options.length) {
253
+ const parts = [];
254
+ if (win.start > 0)
255
+ parts.push(`↑ ${win.start} more`);
256
+ if (end < opts.options.length)
257
+ parts.push(`↓ ${opts.options.length - end} more`);
258
+ lines.push(` ${wrap(DIM, `${parts.join(' · ')} (${index + 1}/${opts.options.length})`)}`);
259
+ }
260
+ if (opts.allowBack) {
261
+ lines.push(` ${wrap(DIM, '↑↓ move · enter select · esc back')}`);
144
262
  }
263
+ paint(lines);
145
264
  };
146
- render(true);
265
+ render();
147
266
  stdin.setRawMode(true);
148
267
  stdin.resume();
149
268
  stdin.setEncoding('utf8');
@@ -165,7 +284,7 @@ async function promptSelectArrow(opts, stderr, stdin) {
165
284
  typedDigits = '';
166
285
  if (Number.isFinite(n) && n >= 1 && n <= opts.options.length) {
167
286
  index = n - 1;
168
- render(false);
287
+ render();
169
288
  }
170
289
  };
171
290
  const onData = (chunk) => {
@@ -175,10 +294,10 @@ async function promptSelectArrow(opts, stderr, stdin) {
175
294
  finish(undefined);
176
295
  return;
177
296
  }
178
- // Esc (alone, not part of a longer sequence)
297
+ // Esc (alone, not part of a longer sequence): back when allowed, cancel otherwise.
179
298
  if (chunk === '\x1b') {
180
299
  stderr.write('\n');
181
- finish(undefined);
300
+ finish(opts.allowBack ? BACK : undefined);
182
301
  return;
183
302
  }
184
303
  // Enter
@@ -191,23 +310,23 @@ async function promptSelectArrow(opts, stderr, stdin) {
191
310
  // Escape sequences
192
311
  if (chunk === '\x1b[A' || chunk === '\x1b[D' || chunk === 'k') {
193
312
  index = (index - 1 + opts.options.length) % opts.options.length;
194
- render(false);
313
+ render();
195
314
  return;
196
315
  }
197
316
  if (chunk === '\x1b[B' || chunk === '\x1b[C' || chunk === 'j') {
198
317
  index = (index + 1) % opts.options.length;
199
- render(false);
318
+ render();
200
319
  return;
201
320
  }
202
321
  // Home / End
203
322
  if (chunk === '\x1b[H' || chunk === 'g') {
204
323
  index = 0;
205
- render(false);
324
+ render();
206
325
  return;
207
326
  }
208
327
  if (chunk === '\x1b[F' || chunk === 'G') {
209
328
  index = opts.options.length - 1;
210
- render(false);
329
+ render();
211
330
  return;
212
331
  }
213
332
  // Digits — accumulate briefly for multi-digit jumps
@@ -254,13 +373,15 @@ async function promptSelectNumbered(opts, stderr, stdin) {
254
373
  });
255
374
  rl.close();
256
375
  const trimmed = answer.trim();
376
+ if (opts.allowBack && trimmed.toLowerCase() === 'b')
377
+ return BACK;
257
378
  const choice = trimmed === '' ? defaultIndex + 1 : Number.parseInt(trimmed, 10);
258
379
  if (Number.isInteger(choice) && choice >= 1 && choice <= opts.options.length) {
259
380
  const picked = opts.options[choice - 1];
260
381
  if (picked)
261
382
  return picked.value;
262
383
  }
263
- stderr.write(` ${color ? `${ESC}31m✗${RESET}` : '[x]'} Enter a number 1–${opts.options.length}.\n`);
384
+ stderr.write(` ${color ? `${ESC}31m✗${RESET}` : '[x]'} Enter a number 1–${opts.options.length}${opts.allowBack ? ', or b to go back' : ''}.\n`);
264
385
  }
265
386
  }
266
387
  export async function promptMultiSelect(opts) {
@@ -282,14 +403,16 @@ export async function promptMultiSelect(opts) {
282
403
  const selected = new Set(opts.initial ?? []);
283
404
  let index = 0;
284
405
  let helpHintShown = false;
285
- const render = (initial) => {
286
- const linesToClear = opts.options.length + 2; // header + items + hint
287
- if (!initial) {
288
- stderr.write(`${ESC}${linesToClear}A`);
289
- stderr.write(`${ESC}J`);
290
- }
291
- stderr.write(` ${arrow} ${wrap(BOLD, opts.message)}\n`);
292
- for (let i = 0; i < opts.options.length; i++) {
406
+ let notice;
407
+ const paint = createFrameRenderer(stderr);
408
+ let scrollTop = 0;
409
+ const render = () => {
410
+ // header + hint + scroll indicator + an optional notice line.
411
+ const win = computeWindow(opts.options.length, index, scrollTop, stderr, 5);
412
+ scrollTop = win.start;
413
+ const end = win.start + win.size;
414
+ const lines = [` ${arrow} ${wrap(BOLD, opts.message)}`];
415
+ for (let i = win.start; i < end; i++) {
293
416
  const opt = opts.options[i];
294
417
  if (!opt)
295
418
  continue;
@@ -299,12 +422,23 @@ export async function promptMultiSelect(opts) {
299
422
  const box = isSelected ? wrap(ORANGE, '[x]') : '[ ]';
300
423
  const label = isFocused ? wrap(BOLD, opt.label.padEnd(widest)) : opt.label.padEnd(widest);
301
424
  const desc = opt.description ? ` ${wrap(DIM, `— ${opt.description}`)}` : '';
302
- stderr.write(` ${ptr} ${box} ${label}${desc}\n`);
425
+ lines.push(` ${ptr} ${box} ${label}${desc}`);
426
+ }
427
+ if (win.size < opts.options.length) {
428
+ const parts = [];
429
+ if (win.start > 0)
430
+ parts.push(`↑ ${win.start} more`);
431
+ if (end < opts.options.length)
432
+ parts.push(`↓ ${opts.options.length - end} more`);
433
+ lines.push(` ${wrap(DIM, `${parts.join(' · ')} (${index + 1}/${opts.options.length})`)}`);
303
434
  }
304
- stderr.write(` ${wrap(DIM, helpHintShown ? 'space toggle · a toggle all · enter confirm · esc cancel' : 'space to toggle, a for all, enter to confirm')}\n`);
435
+ lines.push(` ${wrap(DIM, helpHintShown ? 'space toggle · a toggle all · enter confirm · esc cancel' : 'space to toggle, a for all, enter to confirm')}`);
436
+ if (notice)
437
+ lines.push(notice);
438
+ paint(lines);
305
439
  helpHintShown = true;
306
440
  };
307
- render(true);
441
+ render();
308
442
  stdinTTY.setRawMode(true);
309
443
  stdinTTY.resume();
310
444
  stdinTTY.setEncoding('utf8');
@@ -316,6 +450,7 @@ export async function promptMultiSelect(opts) {
316
450
  resolve(value);
317
451
  };
318
452
  const onData = (chunk) => {
453
+ notice = undefined;
319
454
  if (chunk === '\x03' || chunk === '\x1b' || chunk === 'q') {
320
455
  stderr.write('\n');
321
456
  finish(undefined);
@@ -324,7 +459,8 @@ export async function promptMultiSelect(opts) {
324
459
  if (chunk === '\r' || chunk === '\n') {
325
460
  const result = [...selected];
326
461
  if (result.length < minSelected) {
327
- stderr.write(` ${color ? `${ESC}31m✗${RESET}` : '[x]'} Select at least ${minSelected}.\n`);
462
+ notice = ` ${color ? `${ESC}31m✗${RESET}` : '[x]'} Select at least ${minSelected}.`;
463
+ render();
328
464
  return;
329
465
  }
330
466
  finish(result);
@@ -338,7 +474,7 @@ export async function promptMultiSelect(opts) {
338
474
  else
339
475
  selected.add(opt.value);
340
476
  }
341
- render(false);
477
+ render();
342
478
  return;
343
479
  }
344
480
  if (chunk === 'a') {
@@ -349,27 +485,27 @@ export async function promptMultiSelect(opts) {
349
485
  for (const opt of opts.options)
350
486
  selected.add(opt.value);
351
487
  }
352
- render(false);
488
+ render();
353
489
  return;
354
490
  }
355
491
  if (chunk === '\x1b[A' || chunk === 'k') {
356
492
  index = (index - 1 + opts.options.length) % opts.options.length;
357
- render(false);
493
+ render();
358
494
  return;
359
495
  }
360
496
  if (chunk === '\x1b[B' || chunk === 'j') {
361
497
  index = (index + 1) % opts.options.length;
362
- render(false);
498
+ render();
363
499
  return;
364
500
  }
365
501
  if (chunk === '\x1b[H' || chunk === 'g') {
366
502
  index = 0;
367
- render(false);
503
+ render();
368
504
  return;
369
505
  }
370
506
  if (chunk === '\x1b[F' || chunk === 'G') {
371
507
  index = opts.options.length - 1;
372
- render(false);
508
+ render();
373
509
  return;
374
510
  }
375
511
  };
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"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"}
@@ -11,9 +11,12 @@ export declare class HumanReporter implements Reporter {
11
11
  private readonly quiet;
12
12
  private readonly entry;
13
13
  private readonly startedAt;
14
+ private pendingStep;
14
15
  constructor(opts: ReporterOptions & {
15
16
  mode: 'human' | 'plain';
16
17
  });
18
+ private emit;
19
+ private emitOut;
17
20
  banner(): void;
18
21
  header(subject?: string): void;
19
22
  step(label: string): StepHandle;
@@ -22,6 +25,8 @@ export declare class HumanReporter implements Reporter {
22
25
  warn(code: string, msg: string): void;
23
26
  error(code: string, msg: string, ctx?: ErrorContext): void;
24
27
  event(name: string, data?: Record<string, unknown>): void;
28
+ raw(text: string): void;
29
+ rawErr(text: string): void;
25
30
  data(payload: unknown): void;
26
31
  done(summary?: string, _exitCode?: number): void;
27
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"human.d.ts","sourceRoot":"","sources":["../../src/reporter/human.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEpG,qBAAa,aAAc,YAAW,QAAQ;IAC5C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAU;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;gBAE5B,IAAI,EAAE,eAAe,GAAG;QAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAA;KAAE;IAiB/D,MAAM,IAAI,IAAI;IAMd,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAQ9B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAqB/B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKvB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMzB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAOrC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,IAAI;IAuB1D,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAOzD,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAS5B,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,SAAI,GAAG,IAAI;CAO5C"}
1
+ {"version":3,"file":"human.d.ts","sourceRoot":"","sources":["../../src/reporter/human.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAKpG,qBAAa,aAAc,YAAW,QAAQ;IAC5C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAU;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IAIxC,OAAO,CAAC,WAAW,CAAS;gBAEhB,IAAI,EAAE,eAAe,GAAG;QAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAA;KAAE;IAmB/D,OAAO,CAAC,IAAI;IAKZ,OAAO,CAAC,OAAO;IAKf,MAAM,IAAI,IAAI;IAMd,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAQ9B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IA6B/B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKvB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMzB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAOrC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,IAAI;IAuB1D,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAOzD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIvB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1B,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAS5B,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,SAAI,GAAG,IAAI;CAO5C"}