@sagmans/dsh-tui 0.4.0 → 0.5.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 (200) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +270 -68
  3. package/lib/agent/present.js +1 -1
  4. package/lib/agent/present.js.map +1 -1
  5. package/lib/agent/prompt-history.d.ts.map +1 -1
  6. package/lib/agent/prompt-history.js +5 -3
  7. package/lib/agent/prompt-history.js.map +1 -1
  8. package/lib/agent/status.d.ts +1 -1
  9. package/lib/cards.d.ts +83 -13
  10. package/lib/cards.d.ts.map +1 -1
  11. package/lib/cards.js +96 -28
  12. package/lib/cards.js.map +1 -1
  13. package/lib/export.d.ts +3 -3
  14. package/lib/export.d.ts.map +1 -1
  15. package/lib/export.js +23 -13
  16. package/lib/export.js.map +1 -1
  17. package/lib/fold-cursor.d.ts +12 -5
  18. package/lib/fold-cursor.d.ts.map +1 -1
  19. package/lib/fold-cursor.js +16 -5
  20. package/lib/fold-cursor.js.map +1 -1
  21. package/lib/gates.d.ts.map +1 -1
  22. package/lib/gates.js +42 -9
  23. package/lib/gates.js.map +1 -1
  24. package/lib/index.d.ts.map +1 -1
  25. package/lib/index.js +459 -72
  26. package/lib/index.js.map +1 -1
  27. package/lib/injection.d.ts +9 -0
  28. package/lib/injection.d.ts.map +1 -0
  29. package/lib/injection.js +128 -0
  30. package/lib/injection.js.map +1 -0
  31. package/lib/input/actions.d.ts +19 -2
  32. package/lib/input/actions.d.ts.map +1 -1
  33. package/lib/input/actions.js +57 -11
  34. package/lib/input/actions.js.map +1 -1
  35. package/lib/input/cancel.d.ts +55 -0
  36. package/lib/input/cancel.d.ts.map +1 -0
  37. package/lib/input/cancel.js +47 -0
  38. package/lib/input/cancel.js.map +1 -0
  39. package/lib/input/completion.d.ts +5 -2
  40. package/lib/input/completion.d.ts.map +1 -1
  41. package/lib/input/completion.js +79 -4
  42. package/lib/input/completion.js.map +1 -1
  43. package/lib/input/file-search.d.ts +105 -0
  44. package/lib/input/file-search.d.ts.map +1 -0
  45. package/lib/input/file-search.js +665 -0
  46. package/lib/input/file-search.js.map +1 -0
  47. package/lib/input/fuzzy.d.ts +42 -0
  48. package/lib/input/fuzzy.d.ts.map +1 -0
  49. package/lib/input/fuzzy.js +289 -0
  50. package/lib/input/fuzzy.js.map +1 -0
  51. package/lib/input/keymap.d.ts +3 -1
  52. package/lib/input/keymap.d.ts.map +1 -1
  53. package/lib/input/keymap.js +14 -3
  54. package/lib/input/keymap.js.map +1 -1
  55. package/lib/input/match.d.ts +12 -4
  56. package/lib/input/match.d.ts.map +1 -1
  57. package/lib/input/match.js +50 -51
  58. package/lib/input/match.js.map +1 -1
  59. package/lib/input/submission.d.ts +10 -0
  60. package/lib/input/submission.d.ts.map +1 -1
  61. package/lib/input/submission.js +7 -6
  62. package/lib/input/submission.js.map +1 -1
  63. package/lib/keys-command.d.ts +19 -3
  64. package/lib/keys-command.d.ts.map +1 -1
  65. package/lib/keys-command.js +34 -31
  66. package/lib/keys-command.js.map +1 -1
  67. package/lib/settings-notice.d.ts +5 -0
  68. package/lib/settings-notice.d.ts.map +1 -1
  69. package/lib/settings-notice.js +9 -7
  70. package/lib/settings-notice.js.map +1 -1
  71. package/lib/stash/paths.d.ts +8 -8
  72. package/lib/stash/paths.d.ts.map +1 -1
  73. package/lib/stash/paths.js +19 -18
  74. package/lib/stash/paths.js.map +1 -1
  75. package/lib/stash/schema.d.ts +11 -12
  76. package/lib/stash/schema.d.ts.map +1 -1
  77. package/lib/stash/schema.js +10 -29
  78. package/lib/stash/schema.js.map +1 -1
  79. package/lib/stash/store.js +10 -10
  80. package/lib/stash/store.js.map +1 -1
  81. package/lib/stash.d.ts +37 -6
  82. package/lib/stash.d.ts.map +1 -1
  83. package/lib/stash.js +93 -36
  84. package/lib/stash.js.map +1 -1
  85. package/lib/terminal/external-editor.d.ts +93 -0
  86. package/lib/terminal/external-editor.d.ts.map +1 -0
  87. package/lib/terminal/external-editor.js +263 -0
  88. package/lib/terminal/external-editor.js.map +1 -0
  89. package/lib/terminal/host-writes.d.ts +39 -0
  90. package/lib/terminal/host-writes.d.ts.map +1 -0
  91. package/lib/terminal/host-writes.js +136 -0
  92. package/lib/terminal/host-writes.js.map +1 -0
  93. package/lib/terminal/signals.d.ts +25 -0
  94. package/lib/terminal/signals.d.ts.map +1 -0
  95. package/lib/terminal/signals.js +39 -0
  96. package/lib/terminal/signals.js.map +1 -0
  97. package/lib/terminal/warning-screen.d.ts +19 -1
  98. package/lib/terminal/warning-screen.d.ts.map +1 -1
  99. package/lib/terminal/warning-screen.js +37 -1
  100. package/lib/terminal/warning-screen.js.map +1 -1
  101. package/lib/terminal-text.d.ts +72 -0
  102. package/lib/terminal-text.d.ts.map +1 -0
  103. package/lib/terminal-text.js +603 -0
  104. package/lib/terminal-text.js.map +1 -0
  105. package/lib/text.d.ts +45 -6
  106. package/lib/text.d.ts.map +1 -1
  107. package/lib/text.js +106 -46
  108. package/lib/text.js.map +1 -1
  109. package/lib/theme-command.d.ts +7 -4
  110. package/lib/theme-command.d.ts.map +1 -1
  111. package/lib/theme-command.js +32 -12
  112. package/lib/theme-command.js.map +1 -1
  113. package/lib/theme-files.d.ts +110 -0
  114. package/lib/theme-files.d.ts.map +1 -0
  115. package/lib/theme-files.js +352 -0
  116. package/lib/theme-files.js.map +1 -0
  117. package/lib/theme-schema.d.ts +121 -0
  118. package/lib/theme-schema.d.ts.map +1 -0
  119. package/lib/theme-schema.js +87 -0
  120. package/lib/theme-schema.js.map +1 -0
  121. package/lib/theme-settings.d.ts +43 -10
  122. package/lib/theme-settings.d.ts.map +1 -1
  123. package/lib/theme-settings.js +103 -43
  124. package/lib/theme-settings.js.map +1 -1
  125. package/lib/theme-tokens.d.ts +39 -7
  126. package/lib/theme-tokens.d.ts.map +1 -1
  127. package/lib/theme-tokens.js +96 -13
  128. package/lib/theme-tokens.js.map +1 -1
  129. package/lib/theme.d.ts +24 -2
  130. package/lib/theme.d.ts.map +1 -1
  131. package/lib/theme.js +49 -6
  132. package/lib/theme.js.map +1 -1
  133. package/lib/tool-display.d.ts +57 -0
  134. package/lib/tool-display.d.ts.map +1 -0
  135. package/lib/tool-display.js +51 -0
  136. package/lib/tool-display.js.map +1 -0
  137. package/lib/transcript.d.ts +28 -0
  138. package/lib/transcript.d.ts.map +1 -1
  139. package/lib/transcript.js +126 -37
  140. package/lib/transcript.js.map +1 -1
  141. package/lib/ui/diff.d.ts +49 -0
  142. package/lib/ui/diff.d.ts.map +1 -0
  143. package/lib/ui/diff.js +208 -0
  144. package/lib/ui/diff.js.map +1 -0
  145. package/lib/ui/dock.d.ts.map +1 -1
  146. package/lib/ui/dock.js +9 -6
  147. package/lib/ui/dock.js.map +1 -1
  148. package/lib/ui/editor.d.ts.map +1 -1
  149. package/lib/ui/editor.js +4 -2
  150. package/lib/ui/editor.js.map +1 -1
  151. package/lib/ui/frame.d.ts +16 -5
  152. package/lib/ui/frame.d.ts.map +1 -1
  153. package/lib/ui/frame.js +32 -13
  154. package/lib/ui/frame.js.map +1 -1
  155. package/lib/ui/keymap-picker.d.ts +16 -0
  156. package/lib/ui/keymap-picker.d.ts.map +1 -0
  157. package/lib/ui/keymap-picker.js +41 -0
  158. package/lib/ui/keymap-picker.js.map +1 -0
  159. package/lib/ui/layout.d.ts +33 -0
  160. package/lib/ui/layout.d.ts.map +1 -0
  161. package/lib/ui/layout.js +33 -0
  162. package/lib/ui/layout.js.map +1 -0
  163. package/lib/ui/markdown.d.ts +25 -3
  164. package/lib/ui/markdown.d.ts.map +1 -1
  165. package/lib/ui/markdown.js +12 -8
  166. package/lib/ui/markdown.js.map +1 -1
  167. package/lib/ui/picker-card.d.ts +42 -0
  168. package/lib/ui/picker-card.d.ts.map +1 -0
  169. package/lib/ui/picker-card.js +148 -0
  170. package/lib/ui/picker-card.js.map +1 -0
  171. package/lib/ui/picker.d.ts +40 -2
  172. package/lib/ui/picker.d.ts.map +1 -1
  173. package/lib/ui/picker.js +50 -6
  174. package/lib/ui/picker.js.map +1 -1
  175. package/lib/ui/prompt.d.ts +10 -2
  176. package/lib/ui/prompt.d.ts.map +1 -1
  177. package/lib/ui/prompt.js +21 -2
  178. package/lib/ui/prompt.js.map +1 -1
  179. package/lib/ui/rows.d.ts +8 -6
  180. package/lib/ui/rows.d.ts.map +1 -1
  181. package/lib/ui/rows.js +10 -18
  182. package/lib/ui/rows.js.map +1 -1
  183. package/lib/ui/stash-picker.d.ts +2 -2
  184. package/lib/ui/stash-picker.d.ts.map +1 -1
  185. package/lib/ui/stash-picker.js +4 -4
  186. package/lib/ui/stash-picker.js.map +1 -1
  187. package/lib/ui/status.d.ts.map +1 -1
  188. package/lib/ui/status.js +18 -16
  189. package/lib/ui/status.js.map +1 -1
  190. package/lib/ui/theme-picker.d.ts +18 -0
  191. package/lib/ui/theme-picker.d.ts.map +1 -0
  192. package/lib/ui/theme-picker.js +68 -0
  193. package/lib/ui/theme-picker.js.map +1 -0
  194. package/lib/ui/view.d.ts +146 -22
  195. package/lib/ui/view.d.ts.map +1 -1
  196. package/lib/ui/view.js +461 -154
  197. package/lib/ui/view.js.map +1 -1
  198. package/package.json +45 -11
  199. package/themes/deepseek-blue.yaml +183 -0
  200. package/themes/violet-orbit.yaml +178 -0
package/lib/export.d.ts CHANGED
@@ -8,9 +8,9 @@ export declare function defaultExportFile(sessionId: string): string;
8
8
  *
9
9
  * The dump outlives the screen it came from, so each row is given the markdown
10
10
  * construct that carries its meaning rather than whichever mark the surface
11
- * happened to draw, and every fragment is escaped for display for the same
12
- * reason a rendered row is: the file may be opened in a terminal, and it is
13
- * full of model and tool output.
11
+ * happened to draw, and every fragment is drawn the way the screen drew it only
12
+ * without colour: the file may be opened in a terminal, so it must not carry a
13
+ * sequence that terminal would obey.
14
14
  */
15
15
  export declare function transcriptToText(entries: readonly TranscriptEntry[]): string;
16
16
  //# sourceMappingURL=export.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,gBAAgB,CAAA;AAelD,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE3D;AAmBD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,MAAM,CAsD5E"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAatD,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,gBAAgB,CAAA;AAelD,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE3D;AAmBD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,MAAM,CAsD5E"}
package/lib/export.js CHANGED
@@ -1,5 +1,15 @@
1
1
  import { rowText } from "./cards.js";
2
- import { displayText } from "./text.js";
2
+ import { renderTerminalText } from "./terminal-text.js";
3
+ /**
4
+ * A fragment as a document holds it.
5
+ *
6
+ * A file has no terminal to style it, so nothing is coloured; and a sequence is
7
+ * consumed rather than printed as the bytes that produced it, because the dump
8
+ * is meant to be read. A line feed survives, since markdown is made of lines.
9
+ */
10
+ function documentText(raw) {
11
+ return renderTerminalText(raw, { color: 'none' });
12
+ }
3
13
  /** Directory-relative default the reader can find without being told. */
4
14
  export const DEFAULT_EXPORT_PREFIX = 'dsh-session';
5
15
  /** How the dump marks a nested call that returned an error, which the screen carried as colour. */
@@ -30,37 +40,37 @@ function fenceFor(text) {
30
40
  }
31
41
  /** Comment text with any closing marker defused, so the comment stays one. */
32
42
  function commentBody(text) {
33
- return displayText(text).replaceAll(COMMENT_CLOSE, COMMENT_CLOSE_DEFUSED);
43
+ return documentText(text).replaceAll(COMMENT_CLOSE, COMMENT_CLOSE_DEFUSED);
34
44
  }
35
45
  /**
36
46
  * Render the visible transcript as markdown.
37
47
  *
38
48
  * The dump outlives the screen it came from, so each row is given the markdown
39
49
  * construct that carries its meaning rather than whichever mark the surface
40
- * happened to draw, and every fragment is escaped for display for the same
41
- * reason a rendered row is: the file may be opened in a terminal, and it is
42
- * full of model and tool output.
50
+ * happened to draw, and every fragment is drawn the way the screen drew it only
51
+ * without colour: the file may be opened in a terminal, so it must not carry a
52
+ * sequence that terminal would obey.
43
53
  */
44
54
  export function transcriptToText(entries) {
45
55
  const lines = [];
46
56
  for (const entry of entries) {
47
57
  switch (entry.kind) {
48
58
  case 'user':
49
- lines.push('', `> ${displayText(entry.text).replace(/\n/gu, '\n> ')}`);
59
+ lines.push('', `> ${documentText(entry.text).replace(/\n/gu, '\n> ')}`);
50
60
  break;
51
61
  case 'assistant':
52
- lines.push('', displayText(entry.text));
62
+ lines.push('', documentText(entry.text));
53
63
  break;
54
64
  case 'notice':
55
65
  lines.push('', `<!-- ${commentBody(entry.text)} -->`);
56
66
  break;
57
67
  case 'marker':
58
- lines.push('', `--- ${displayText(entry.text)} ---`);
68
+ lines.push('', `--- ${documentText(entry.text)} ---`);
59
69
  break;
60
70
  case 'reasoning': {
61
71
  // The thought is on screen now, so it belongs in the dump; only the
62
72
  // count is metadata, and the body is the part a reader came for.
63
- const body = entry.body.split('\n').map(displayText);
73
+ const body = entry.body.split('\n').map(line => documentText(line));
64
74
  const fence = fenceFor(body.join('\n'));
65
75
  lines.push('', `<!-- ${commentBody(entry.summary)} -->`, `${fence}reasoning`);
66
76
  lines.push(...body);
@@ -71,18 +81,18 @@ export function transcriptToText(entries) {
71
81
  const mark = entry.card.failed ? 'ERROR' : 'tool';
72
82
  // The dump is the words, not the screen: row classes exist so the
73
83
  // surface can style a line, and a file has no use for them.
74
- const rows = entry.card.detail.map(row => displayText(rowText(row)));
84
+ const rows = entry.card.detail.map(row => documentText(rowText(row)));
75
85
  const more = entry.card.totalLines > entry.card.detail.length
76
86
  ? `… ${entry.card.totalLines - entry.card.detail.length} more lines`
77
87
  : undefined;
78
- const fence = fenceFor([displayText(entry.card.title), ...rows, more ?? ''].join('\n'));
79
- lines.push('', `### ${mark}: ${displayText(entry.card.title)}`);
88
+ const fence = fenceFor([documentText(entry.card.title), ...rows, more ?? ''].join('\n'));
89
+ lines.push('', `### ${mark}: ${documentText(entry.card.title)}`);
80
90
  // The calls are what the reader saw under the card, so a dump that
81
91
  // dropped them would lose the only record of what the program reached.
82
92
  const subCalls = entry.card.subCalls ?? [];
83
93
  for (const call of subCalls) {
84
94
  const text = call.argument === undefined ? call.title : `${call.title} ${call.argument}`;
85
- lines.push(`- ${displayText(text)}${call.failed ? SUBCALL_FAILED_SUFFIX : ''}`);
95
+ lines.push(`- ${documentText(text)}${call.failed ? SUBCALL_FAILED_SUFFIX : ''}`);
86
96
  }
87
97
  const dropped = (entry.card.subCallsTotal ?? subCalls.length) - subCalls.length;
88
98
  if (dropped > 0)
package/lib/export.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,30 @@
1
+ import type { SessionId } from '@deepseek-ai/dsh-session';
1
2
  import type { ForkEvent } from './agent/fork.ts';
2
3
  /**
3
- * The fold's place in a session's durable event sequence.
4
+ * The fold's place in one session's durable event sequence.
4
5
  *
5
6
  * A resumed session is folded while its agent's loop is already live, so the
6
7
  * same event reaches the surface twice: once on the stream, once from the log
7
8
  * the fold is reading. Every durable event carries a monotonic sequence number,
8
9
  * which is what tells a row that has already been drawn from one that has not.
10
+ *
11
+ * The session is part of the question rather than the caller's memory: numbers
12
+ * restart with every session, and a transcript that starts on a session other
13
+ * than the one just read — what `/new` does — would otherwise measure the new
14
+ * conversation against the old one's numbering and drop all of it.
9
15
  */
10
- /** Consumes durable events in sequence order, each exactly once. */
16
+ /** Consumes durable events in sequence order, each exactly once per session. */
11
17
  export declare class FoldCursor {
18
+ private session;
12
19
  private through;
13
20
  /**
14
21
  * Start a fresh transcript.
15
22
  *
16
- * Sequence numbers are per session, so a fold that begins a new transcript
17
- * must not measure its events against the previous session's numbering.
23
+ * A fold re-reads a session from its first event — the same session the
24
+ * cursor may already know — so the place it reached has to be given up.
18
25
  */
19
26
  reset(): void;
20
27
  /** Whether an event still has to be folded, and record it when it does. */
21
- accept(event: ForkEvent): boolean;
28
+ accept(session: SessionId, event: ForkEvent): boolean;
22
29
  }
23
30
  //# sourceMappingURL=fold-cursor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fold-cursor.d.ts","sourceRoot":"","sources":["../src/fold-cursor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD;;;;;;;GAOG;AAEH,oEAAoE;AACpE,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAoB;IAEnC;;;;;OAKG;IACH,KAAK,IAAI,IAAI;IAIb,2EAA2E;IAC3E,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;CAOlC"}
1
+ {"version":3,"file":"fold-cursor.d.ts","sourceRoot":"","sources":["../src/fold-cursor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD;;;;;;;;;;;;GAYG;AAEH,gFAAgF;AAChF,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,OAAO,CAAoB;IAEnC;;;;;OAKG;IACH,KAAK,IAAI,IAAI;IAKb,2EAA2E;IAC3E,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO;CAWtD"}
@@ -1,25 +1,36 @@
1
1
  /**
2
- * The fold's place in a session's durable event sequence.
2
+ * The fold's place in one session's durable event sequence.
3
3
  *
4
4
  * A resumed session is folded while its agent's loop is already live, so the
5
5
  * same event reaches the surface twice: once on the stream, once from the log
6
6
  * the fold is reading. Every durable event carries a monotonic sequence number,
7
7
  * which is what tells a row that has already been drawn from one that has not.
8
+ *
9
+ * The session is part of the question rather than the caller's memory: numbers
10
+ * restart with every session, and a transcript that starts on a session other
11
+ * than the one just read — what `/new` does — would otherwise measure the new
12
+ * conversation against the old one's numbering and drop all of it.
8
13
  */
9
- /** Consumes durable events in sequence order, each exactly once. */
14
+ /** Consumes durable events in sequence order, each exactly once per session. */
10
15
  export class FoldCursor {
16
+ session;
11
17
  through;
12
18
  /**
13
19
  * Start a fresh transcript.
14
20
  *
15
- * Sequence numbers are per session, so a fold that begins a new transcript
16
- * must not measure its events against the previous session's numbering.
21
+ * A fold re-reads a session from its first event — the same session the
22
+ * cursor may already know — so the place it reached has to be given up.
17
23
  */
18
24
  reset() {
25
+ this.session = undefined;
19
26
  this.through = undefined;
20
27
  }
21
28
  /** Whether an event still has to be folded, and record it when it does. */
22
- accept(event) {
29
+ accept(session, event) {
30
+ if (session !== this.session) {
31
+ this.session = session;
32
+ this.through = undefined;
33
+ }
23
34
  if (typeof event.seq === 'number') {
24
35
  if (this.through !== undefined && event.seq <= this.through)
25
36
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"fold-cursor.js","sourceRoot":"","sources":["../src/fold-cursor.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAEH,oEAAoE;AACpE,MAAM,OAAO,UAAU;IACb,OAAO,CAAoB;IAEnC;;;;;OAKG;IACH,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;IAC1B,CAAC;IAED,2EAA2E;IAC3E,MAAM,CAAC,KAAgB;QACrB,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO,KAAK,CAAA;YACzE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,CAAA;QAC1B,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
1
+ {"version":3,"file":"fold-cursor.js","sourceRoot":"","sources":["../src/fold-cursor.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AAEH,gFAAgF;AAChF,MAAM,OAAO,UAAU;IACb,OAAO,CAAuB;IAC9B,OAAO,CAAoB;IAEnC;;;;;OAKG;IACH,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;IAC1B,CAAC;IAED,2EAA2E;IAC3E,MAAM,CAAC,OAAkB,EAAE,KAAgB;QACzC,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;YACtB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;QAC1B,CAAC;QACD,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO,KAAK,CAAA;YACzE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,CAAA;QAC1B,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AACA,OAAO,EAA0D,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAIxG,yEAAyE;AACzE,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,UAAU,GAAG,WAAW,CAAA;AAEvE,0EAA0E;AAC1E,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAA;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAA;IACvC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,CAAA;IAC1C;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,SAAS,CAAA;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE/C,MAAM,WAAW,SAAS;IACxB,4EAA4E;IAC5E,eAAe,IAAI,MAAM,CAAA;IACzB,gFAAgF;IAChF,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,qFAAqF;IACrF,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC/B,gDAAgD;IAChD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B;;;OAGG;IACH,OAAO,CAAC,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAA;CACpC;AAED,6CAA6C;AAC7C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;CAC3B;AAED,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;CAC3B;AAMD;;;;;;GAMG;AACH,qBAAa,YAAY;IAIrB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,IAAI;IANvB,OAAO,CAAC,OAAO,CAA6B;gBAGzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS;IAC3C,kFAAkF;IACjE,IAAI,EAAE,MAAM,MAAM;IAGrC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,0EAA0E;IAC1E,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAQpD,MAAM,IAAI,IAAI;IAId,IAAI,IAAI,QAAQ;CAgBjB;AAED,6CAA6C;AAC7C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,EAAE,CAAA;IACjG,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;CAC9B;AAED,iDAAiD;AACjD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;IACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CACzB;AAMD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,EAAE,CAyBhE;AAKD,+GAA+G;AAC/G,eAAO,MAAM,iBAAiB,IAAI,CAAA;AA4DlC;;;;;;;GAOG;AACH,qBAAa,YAAY;IAoBrB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,8EAA8E;IAC9E,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,IAAI;IAvBvB,OAAO,CAAC,KAAK,CAAI;IACjB,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,KAAK,CAAK;IAClB,kDAAkD;IAClD,OAAO,CAAC,QAAQ,CAAQ;IACxB;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAQ;gBAGL,SAAS,EAAE,SAAS,YAAY,EAAE;IACnD,8EAA8E;IAC7D,KAAK,EAAE,SAAS;IACjC,kFAAkF;IACjE,IAAI,EAAE,MAAM,MAAM;IASrC;;;;;;;;OAQG;IACH,OAAO,CAAC,UAAU;IAKlB,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;;;;OAMG;IACH,MAAM,IAAI,IAAI;IAId,OAAO,KAAK,OAAO,GAElB;IAED;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAOf;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAOhB,yDAAyD;IACzD,OAAO,CAAC,UAAU;IAKlB,2FAA2F;IAC3F,OAAO,CAAC,IAAI;IAUZ;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB,yEAAyE;IACzE,OAAO,CAAC,MAAM;IAcd,iFAAiF;IACjF,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,SAAS;IAuFjD;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAyBvB,qEAAqE;IACrE,OAAO,CAAC,OAAO;IAaf;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,MAAM;IAYd,IAAI,IAAI,QAAQ;CA0DjB"}
1
+ {"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
package/lib/gates.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { matchesKey } from '@earendil-works/pi-tui';
2
- import { actionLabel, keyName, keysFor, matchesAction, moveHint } from "./input/actions.js";
2
+ import { actionLabel, keyName, keysFor, matchesAction } from "./input/actions.js";
3
3
  import { pastedText } from "./input.js";
4
4
  import { matchScore } from "./input/match.js";
5
5
  function lines(value) {
@@ -122,13 +122,36 @@ function namedKeys(map, id, verb) {
122
122
  *
123
123
  * A text field keeps its own exits: the arrows and escape are the field's, not
124
124
  * the question's, so a reader who moved question.up or question.skip somewhere
125
- * else still leaves with these. The hint therefore names them as the terminal
126
- * spells them instead of promising a key the row does not answer.
125
+ * else still leaves with these. The question's own movement keys leave it as
126
+ * well, which is how the navigation aliases reach a reader who is typing rather
127
+ * than filtering. The arrows stay one token because they are pinned together
128
+ * rather than listed one direction at a time.
127
129
  */
128
- const CUSTOM_ROW_EXITS = '↑↓ or esc';
130
+ function customRowExits(map) {
131
+ const names = ['↑↓'];
132
+ for (const id of ['question.up', 'question.down']) {
133
+ for (const key of keysFor(map, id)) {
134
+ const name = keyName(key);
135
+ if (name !== 'up' && name !== 'down' && !names.includes(name))
136
+ names.push(name);
137
+ }
138
+ }
139
+ return names.join('/');
140
+ }
141
+ /**
142
+ * Whether a press leaves the free-text row for the option list.
143
+ *
144
+ * The arrows are the field's own, so they leave whatever the map says, which
145
+ * keeps a reader who moved the question keys from being stranded in the field;
146
+ * the question's own keys follow the map so a rebound alias still works here.
147
+ */
148
+ function leavesCustomRow(map, data) {
149
+ return matchesKey(data, 'up') || matchesKey(data, 'down')
150
+ || matchesAction(map, 'question.up', data) || matchesAction(map, 'question.down', data);
151
+ }
129
152
  /** The keys that answer the free-text row, where typing is the answer rather than a filter. */
130
153
  function customHint(map) {
131
- return `type or paste an answer · ${namedKeys(map, 'question.confirm', 'confirm')} · ${CUSTOM_ROW_EXITS} to options`;
154
+ return `type or paste an answer · ${namedKeys(map, 'question.confirm', 'confirm')} · ${namedKeys(map, 'question.cancel', 'abandon')} · ${customRowExits(map)} or esc to options`;
132
155
  }
133
156
  /**
134
157
  * The question-id suffix that declares a typed answer a credential. The seam
@@ -290,6 +313,15 @@ export class QuestionGate {
290
313
  this.absorb(this.typingAnswer(question) ? data : paste);
291
314
  return undefined;
292
315
  }
316
+ // Abandoning the batch is the one decision that belongs to no row: the
317
+ // reader asked to be out of the questions, and the row the cursor happens
318
+ // to sit on is not an answer to that. It settles the way an aborted call
319
+ // does, with no answers at all, so a partial batch is never handed over as
320
+ // if the reader had walked through it.
321
+ if (matchesAction(this.keys(), 'question.cancel', data)) {
322
+ this.cancel();
323
+ return [];
324
+ }
293
325
  // The free-text row is a text field, so the keys that walk or pick a list
294
326
  // would otherwise take the very characters an answer is made of.
295
327
  if (this.atCustom)
@@ -387,8 +419,9 @@ export class QuestionGate {
387
419
  }
388
420
  // The keys that leave a text field are the field's own, not the question's:
389
421
  // a skip the reader moved elsewhere must not quietly mean "walk back". The
390
- // hint spells these literally for the same reason (CUSTOM_ROW_EXITS).
391
- if (matchesKey(data, 'up') || matchesKey(data, 'down')) {
422
+ // rows the question does own still work here, and the hint names both
423
+ // (customRowExits).
424
+ if (leavesCustomRow(this.keys(), data)) {
392
425
  this.atCustom = false;
393
426
  return undefined;
394
427
  }
@@ -467,7 +500,7 @@ export class QuestionGate {
467
500
  // The editor is the only place the text lands, so it is drawn even while
468
501
  // empty: a question answered by typing needs somewhere to paste a key.
469
502
  answerInput: this.input,
470
- hint: `type or paste an answer · ${namedKeys(this.keys(), 'question.confirm', 'confirm')} · ${namedKeys(this.keys(), 'question.skip', 'skip')}`,
503
+ hint: `type or paste an answer · ${namedKeys(this.keys(), 'question.confirm', 'confirm')} · ${namedKeys(this.keys(), 'question.skip', 'skip')} · ${namedKeys(this.keys(), 'question.cancel', 'abandon')}`,
471
504
  };
472
505
  }
473
506
  if (this.typed !== '')
@@ -504,7 +537,7 @@ export class QuestionGate {
504
537
  answerInput: this.atCustom || written ? this.input : undefined,
505
538
  hint: this.atCustom
506
539
  ? customHint(this.keys())
507
- : `${namedKeys(this.keys(), 'question.toggle', question.multiSelect ? 'toggle' : 'select')} · digits pick · ${CUSTOM_ROW_SHORTHAND} · type to filter · ${namedKeys(this.keys(), 'question.confirm', 'confirm')} · ${namedKeys(this.keys(), 'question.skip', 'skip')}`,
540
+ : `${namedKeys(this.keys(), 'question.toggle', question.multiSelect ? 'toggle' : 'select')} · digits pick · ${CUSTOM_ROW_SHORTHAND} · type to filter · ${namedKeys(this.keys(), 'question.confirm', 'confirm')} · ${namedKeys(this.keys(), 'question.skip', 'skip')} · ${namedKeys(this.keys(), 'question.cancel', 'abandon')}`,
508
541
  };
509
542
  }
510
543
  }
package/lib/gates.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AA2FlD,eAAO,MAAM,IAAI,QAAQ,CAAA;AAEzB;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,UAAsB,CAAA;AA2CzC;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,GAAE;IAC/C,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAC1B,GAAG,IAAI,CAMZ;AAED;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAw3DzD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAoGlD,eAAO,MAAM,IAAI,QAAQ,CAAA;AAEzB;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,UAAsB,CAAA;AA2CzC;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,GAAE;IAC/C,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAC1B,GAAG,IAAI,CAMZ;AAED;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CA2wEzD"}