mindweave 3.2.8 → 3.3.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 (65) hide show
  1. package/dist/cli/App.js +293 -19
  2. package/dist/cli/App.js.map +1 -1
  3. package/dist/cli/altScreen.js +6 -0
  4. package/dist/cli/altScreen.js.map +1 -1
  5. package/dist/cli/blockHeights.js +3 -0
  6. package/dist/cli/blockHeights.js.map +1 -1
  7. package/dist/cli/chatAnchor.js +17 -0
  8. package/dist/cli/chatAnchor.js.map +1 -1
  9. package/dist/cli/components/BlockView.js +10 -1
  10. package/dist/cli/components/BlockView.js.map +1 -1
  11. package/dist/cli/components/KeyManager.js +63 -7
  12. package/dist/cli/components/KeyManager.js.map +1 -1
  13. package/dist/cli/components/Picker.js +31 -5
  14. package/dist/cli/components/Picker.js.map +1 -1
  15. package/dist/cli/components/PromptInput.js +41 -9
  16. package/dist/cli/components/PromptInput.js.map +1 -1
  17. package/dist/cli/components/ToolLine.js +6 -0
  18. package/dist/cli/components/ToolLine.js.map +1 -1
  19. package/dist/cli/components/WorkGroup.js +27 -10
  20. package/dist/cli/components/WorkGroup.js.map +1 -1
  21. package/dist/cli/framebuffer/writer.js +29 -6
  22. package/dist/cli/framebuffer/writer.js.map +1 -1
  23. package/dist/cli/help.js +1 -0
  24. package/dist/cli/help.js.map +1 -1
  25. package/dist/cli/messageQueue.js +7 -2
  26. package/dist/cli/messageQueue.js.map +1 -1
  27. package/dist/cli/pickerSearch.js +59 -0
  28. package/dist/cli/pickerSearch.js.map +1 -0
  29. package/dist/cli/selectionGrow.js +86 -3
  30. package/dist/cli/selectionGrow.js.map +1 -1
  31. package/dist/cli/toolDisplay.js +20 -5
  32. package/dist/cli/toolDisplay.js.map +1 -1
  33. package/dist/cli/transcript.js +24 -7
  34. package/dist/cli/transcript.js.map +1 -1
  35. package/dist/cli/wheelStep.js +2 -2
  36. package/dist/cli/workLines.js +26 -7
  37. package/dist/cli/workLines.js.map +1 -1
  38. package/dist/core/turnRunner.js +7 -1
  39. package/dist/core/turnRunner.js.map +1 -1
  40. package/dist/dynamo/engine.js +8 -4
  41. package/dist/dynamo/engine.js.map +1 -1
  42. package/dist/dynamo/prompt.js +9 -0
  43. package/dist/dynamo/prompt.js.map +1 -1
  44. package/dist/memory/compaction.js +15 -3
  45. package/dist/memory/compaction.js.map +1 -1
  46. package/dist/memory/localCommand.js +138 -0
  47. package/dist/memory/localCommand.js.map +1 -0
  48. package/dist/memory/store.js +4 -1
  49. package/dist/memory/store.js.map +1 -1
  50. package/dist/memory/types.js.map +1 -1
  51. package/dist/tools/detail.js +2 -0
  52. package/dist/tools/detail.js.map +1 -1
  53. package/dist/tools/rebuildDetail.js +49 -1
  54. package/dist/tools/rebuildDetail.js.map +1 -1
  55. package/dist/tools/runCommand.js +8 -4
  56. package/dist/tools/runCommand.js.map +1 -1
  57. package/dist/tools/untrusted.js +7 -0
  58. package/dist/tools/untrusted.js.map +1 -1
  59. package/dist/tools/userCommand.js +52 -0
  60. package/dist/tools/userCommand.js.map +1 -0
  61. package/dist/tools/viewImage.js +14 -2
  62. package/dist/tools/viewImage.js.map +1 -1
  63. package/dist/tools/webSearch.js +42 -20
  64. package/dist/tools/webSearch.js.map +1 -1
  65. package/package.json +3 -3
@@ -22,6 +22,7 @@
22
22
  import * as nodeFs from "node:fs";
23
23
  import { SHOW_CURSOR, TERMINAL_RESTORE } from "./terminalRestore.js";
24
24
  import { caretToOutputEnd } from "./exitCursor.js";
25
+ import { setFramebufferClosed } from "./framebuffer/writer.js";
25
26
  const ENTER = "\x1b[?1049h";
26
27
  const HIDE_CURSOR = "\x1b[?25l";
27
28
  /**
@@ -128,6 +129,9 @@ export function enterAltScreen(options = {}) {
128
129
  export function exitAltScreen() {
129
130
  if (!guarded && !active)
130
131
  return;
132
+ // The full-screen shell is the one that owns a buffer of its own; once it is left, anything
133
+ // still drawn would land in the user's terminal (see setFramebufferClosed).
134
+ const leftOwnScreen = active;
131
135
  guarded = false;
132
136
  active = false;
133
137
  // writeSync, NOT process.stdout.write, because every caller of this is on its way out.
@@ -149,5 +153,7 @@ export function exitAltScreen() {
149
153
  catch {
150
154
  // A closed or redirected stdout. Nothing to restore and nothing to report.
151
155
  }
156
+ if (leftOwnScreen)
157
+ setFramebufferClosed(true);
152
158
  }
153
159
  //# sourceMappingURL=altScreen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"altScreen.js","sourceRoot":"","sources":["../../src/cli/altScreen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"altScreen.js","sourceRoot":"","sources":["../../src/cli/altScreen.ts"],"names":[],"mappings":"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"}
@@ -101,6 +101,9 @@ export function estimateHeight(block, columns) {
101
101
  case "notice":
102
102
  rows = textRows(block.title, columns) + textRows(block.body, columns);
103
103
  break;
104
+ case "help":
105
+ rows = 1 + textRows(block.text, columns);
106
+ break;
104
107
  case "tool":
105
108
  rows = 1 + (block.expanded && block.full ? textRows(block.full, columns) : Math.min(textRows(block.detail, columns), DETAIL_GUESS_CAP));
106
109
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"blockHeights.js","sourceRoot":"","sources":["../../src/cli/blockHeights.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockHeights.js","sourceRoot":"","sources":["../../src/cli/blockHeights.ts"],"names":[],"mappings":"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"}
@@ -81,6 +81,23 @@ export function growScroll(scrollUp, prevHeight, height) {
81
81
  return scrollUp;
82
82
  return scrollUp + (height - prevHeight);
83
83
  }
84
+ /**
85
+ * Where the reader should sit after the VIEWPORT changed height: the footer grew (a menu
86
+ * opened, the input took another line) or shrank, and the chat gave up or got back rows.
87
+ *
88
+ * The first frame after such a change is laid out with the old viewport height still in
89
+ * the scroll arithmetic, so it holds the TOP of the window where it was and clips the
90
+ * bottom. The measured height arrives a frame later, and the arithmetic (which holds the
91
+ * newest line a fixed distance from the bottom) then moved the window by the whole
92
+ * difference: the reader saw the text jump and settle. Moving `scrollUp` by the same
93
+ * amount in the same update leaves both frames showing the same rows. Pinned to the newest
94
+ * is left alone: that view is aligned to the bottom by the layout and has nothing to hold.
95
+ */
96
+ export function viewportScroll(scrollUp, prevRows, rows) {
97
+ if (scrollUp <= 0 || prevRows === rows)
98
+ return scrollUp;
99
+ return Math.max(0, scrollUp + (prevRows - rows));
100
+ }
84
101
  /**
85
102
  * Where the reader should sit after the transcript re-wraps at a new width.
86
103
  *
@@ -1 +1 @@
1
- {"version":3,"file":"chatAnchor.js","sourceRoot":"","sources":["../../src/cli/chatAnchor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatAnchor.js","sourceRoot":"","sources":["../../src/cli/chatAnchor.ts"],"names":[],"mappings":"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"}
@@ -14,12 +14,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
14
  */
15
15
  import { memo } from "react";
16
16
  import { Box, Text } from "ink";
17
+ import { registerExpandable } from "../expandHits.js";
17
18
  import { renderMarkdown } from "../markdown.js";
18
19
  import { wrapAnsi, visibleWidth } from "../wrap.js";
19
20
  import { BAD, USER_BG, USER_FG } from "../theme.js";
20
21
  import { compactionLines } from "../compaction.js";
21
22
  import { ToolLine } from "./ToolLine.js";
22
- import { WorkGroup } from "./WorkGroup.js";
23
+ import { WorkGroup, shadeRows } from "./WorkGroup.js";
23
24
  import { SubagentView } from "./SubagentView.js";
24
25
  /**
25
26
  * Text pre-wrapped to `width`, one <Text> row per line — see the file header.
@@ -96,6 +97,14 @@ function BlockViewInner({ block, columns, tightTop, hovered, hoveredItem }) {
96
97
  const railWidth = Math.max(8, columns - 4);
97
98
  return (_jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { minWidth: 2, children: _jsx(Text, { children: "●" }) }), _jsx(Text, { bold: true, children: block.title })] }), block.body.split("\n").flatMap((line, i) => wrapAnsi(line, railWidth).map((row, j) => (_jsxs(Box, { flexDirection: "row", width: columns, children: [_jsx(Text, { dimColor: true, children: " │ " }), _jsx(Box, { width: railWidth, children: _jsx(Text, { wrap: "truncate-end", children: row }) })] }, `${i}-${j}`))))] }));
98
99
  }
100
+ case "help": {
101
+ // Mindweave's own text, not part of the conversation, so it is set apart from it: a row in
102
+ // the same style as the folded ones, with the text on the shaded band under it. It is not
103
+ // folded, it is asked for; a click anywhere on it takes it away and the conversation is
104
+ // as it was.
105
+ const rows = shadeRows(block.text.split("\n"), columns - 4);
106
+ return (_jsxs(Box, { ref: (node) => registerExpandable(block.id, node), marginTop: tightTop ? 0 : 1, flexDirection: "column", width: columns, children: [_jsxs(Box, { flexDirection: "row", width: columns, children: [_jsx(Box, { minWidth: 2, children: _jsx(Text, { children: "●" }) }), _jsx(Text, { bold: true, dimColor: !hovered, children: "Commands and shortcuts" }), _jsx(Text, { dimColor: true, children: " click to close" }), _jsx(Text, { dimColor: !hovered, bold: hovered, children: " ▾" })] }), rows.map((r, j) => (_jsxs(Box, { flexDirection: "row", width: columns, children: [_jsx(Text, { children: " " }), _jsxs(Text, { backgroundColor: USER_BG, color: USER_FG, children: [" ", r.kind !== undefined ? _jsx(Text, { dimColor: true, children: r.kind }) : null, r.text, " ".repeat(r.pad), " "] })] }, j)))] }));
107
+ }
99
108
  case "compaction": {
100
109
  // The bars are pre-composed as plain rows (compaction.ts) so the layout is
101
110
  // testable without a terminal. Each row is printed verbatim and truncated, never
@@ -1 +1 @@
1
- {"version":3,"file":"BlockView.js","sourceRoot":"","sources":["../../../src/cli/components/BlockView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BlockView.js","sourceRoot":"","sources":["../../../src/cli/components/BlockView.tsx"],"names":[],"mappings":"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"}
@@ -15,8 +15,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
15
  */
16
16
  import { Box, Text, useInput } from "ink";
17
17
  import TextInput from "ink-text-input";
18
- import { useState } from "react";
18
+ import { useLayoutEffect, useState } from "react";
19
+ import { matchesWords, wordsOf } from "../commandArgs.js";
19
20
  import { stripMouse } from "../mouse.js";
21
+ import { setPickerSearchActive, setPickerSearchText } from "../pickerSearch.js";
20
22
  import { ACTION_ACTIVATE, ACTION_BACK, ACTION_EDIT, ACTION_REMOVE, ACTION_SHOW, actionsFor, countLabel, } from "../keyManager.js";
21
23
  import { MiniTabPanel as Panel, MiniTabRow as Row, miniTabPosition as position, miniTabWindowStart as windowStart, MINITAB_WINDOW as WINDOW } from "./minitabs.js";
22
24
  import { ACCENT, GOOD, WARN } from "../theme.js";
@@ -44,6 +46,9 @@ export function KeyManager({ providers, keysOf, nextSlot, reveal, width, onActiv
44
46
  return { kind: "providers" };
45
47
  });
46
48
  const [sel, setSel] = useState(0);
49
+ // The words typed to find a provider. They are drawn in the input box (see pickerSearch.ts),
50
+ // and only the provider list is a search: the screens under it are not.
51
+ const [query, setQuery] = useState("");
47
52
  const [value, setValue] = useState("");
48
53
  const [shown, setShown] = useState(null);
49
54
  const keys = mode.kind === "keys" || mode.kind === "actions" ? keysOf(mode.provider) : [];
@@ -51,8 +56,22 @@ export function KeyManager({ providers, keysOf, nextSlot, reveal, width, onActiv
51
56
  // "Add a new key" is one more row after the keys, and it is there however many there
52
57
  // already are — that is what makes adding a second, or a fifth, obvious.
53
58
  const canAdd = mode.kind === "keys" ? nextSlot(mode.provider) !== null : false;
59
+ // The providers that match what was typed, by name, by how many keys they hold, or by id.
60
+ const found = (() => {
61
+ const words = wordsOf(query);
62
+ return words.length === 0 ? providers : providers.filter((p) => matchesWords(words, p.label, countLabel(p.count), p.id));
63
+ })();
64
+ const searching = mode.kind === "providers";
65
+ useLayoutEffect(() => {
66
+ setPickerSearchActive(searching);
67
+ setPickerSearchText(searching ? query : "");
68
+ }, [searching, query]);
69
+ useLayoutEffect(() => () => {
70
+ setPickerSearchText("");
71
+ setPickerSearchActive(true);
72
+ }, []);
54
73
  const count = mode.kind === "providers"
55
- ? providers.length
74
+ ? found.length
56
75
  : mode.kind === "keys"
57
76
  ? keys.length + (canAdd ? 1 : 0)
58
77
  : mode.kind === "actions"
@@ -69,7 +88,25 @@ export function KeyManager({ providers, keysOf, nextSlot, reveal, width, onActiv
69
88
  else
70
89
  setMode({ kind: "keys", provider: mode.provider });
71
90
  }
72
- useInput((input, key) => {
91
+ useInput((raw, key) => {
92
+ // Wheel reports arrive as typed text once reporting is on; they are not keystrokes.
93
+ const input = stripMouse(raw);
94
+ if (input === "" && raw !== "")
95
+ return;
96
+ // On the provider list, Esc takes the search away first and only then goes back, and
97
+ // Backspace edits it. With nothing typed both do what they always did.
98
+ if (mode.kind === "providers" && query) {
99
+ if (key.escape) {
100
+ setQuery("");
101
+ setSel(0);
102
+ return;
103
+ }
104
+ if (key.backspace || key.delete) {
105
+ setQuery((q) => q.slice(0, -1));
106
+ setSel(0);
107
+ return;
108
+ }
109
+ }
73
110
  if (key.escape)
74
111
  return back();
75
112
  // Backspace and Delete step back exactly as Escape does. Deleting what you just chose
@@ -78,7 +115,21 @@ export function KeyManager({ providers, keysOf, nextSlot, reveal, width, onActiv
78
115
  // list is empty stepping back is the only thing left to do.
79
116
  if ((key.backspace || key.delete) && mode.kind !== "enter")
80
117
  return back();
81
- if (mode.kind === "enter" || count === 0)
118
+ if (mode.kind === "enter")
119
+ return;
120
+ // Typing on the provider list is a search. A single digit with nothing typed yet is
121
+ // still the shortcut for that row, as it was; once there are words, digits are part of them.
122
+ if (mode.kind === "providers" && !key.upArrow && !key.downArrow && !key.return) {
123
+ const n = Number.parseInt(input, 10);
124
+ if (!query && Number.isInteger(n) && n >= 1 && n <= Math.min(9, count))
125
+ return commit(n - 1);
126
+ if (input && !key.ctrl && !key.meta && !key.tab && !/[\u0000-\u001f]/.test(input)) {
127
+ setQuery((q) => q + input);
128
+ setSel(0);
129
+ return;
130
+ }
131
+ }
132
+ if (count === 0)
82
133
  return;
83
134
  if (key.upArrow)
84
135
  setSel((s) => (s - 1 + count) % count);
@@ -96,10 +147,11 @@ export function KeyManager({ providers, keysOf, nextSlot, reveal, width, onActiv
96
147
  function commit(index) {
97
148
  setShown(null);
98
149
  if (mode.kind === "providers") {
99
- const provider = providers[index];
150
+ const provider = found[index];
100
151
  if (!provider)
101
152
  return;
102
153
  setSel(0);
154
+ setQuery("");
103
155
  // A provider with no keys goes straight to the field: there is no list to show, and
104
156
  // one more press to reach the only thing you could have wanted is a press wasted.
105
157
  const slot = nextSlot(provider);
@@ -159,7 +211,11 @@ export function KeyManager({ providers, keysOf, nextSlot, reveal, width, onActiv
159
211
  const addRow = canAdd && start + win > keys.length;
160
212
  return (_jsxs(Panel, { title: `${mode.provider.label} · ${countLabel(keys.length)}`, counter: position(sel, count, win), rows: Math.min(win, keys.length - start) + (addRow ? 1 : 0), maxRows: maxRows, width: width, hint: "\u2191/\u2193 \u00B7 Enter to choose \u00B7 Esc or \u232B back", children: [keys.slice(start, start + win).map((r, i) => (_jsx(Row, { on: start + i === sel, n: start + i + 1, numWidth: String(keys.length + 1).length, left: `key ${r.slot}`, mid: r.hint, right: r.active ? "● active" : "", rightColor: r.active ? GOOD : undefined, width: width }, r.slot))), addRow ? _jsx(Row, { on: sel === keys.length, n: keys.length + 1, numWidth: String(keys.length + 1).length, left: "Add a new key", width: width }) : null] }));
161
213
  }
162
- const start = windowStart(sel, providers.length, win);
163
- return (_jsx(Panel, { title: "Keys", counter: position(sel, providers.length, win), rows: Math.min(win, providers.length - start), maxRows: maxRows, width: width, hint: "\u2191/\u2193 \u00B7 Enter to choose \u00B7 Esc or \u232B close", children: providers.slice(start, start + win).map((p, i) => (_jsx(Row, { on: start + i === sel, n: start + i + 1, numWidth: String(providers.length).length, left: p.label, right: countLabel(p.count), rightColor: p.count > 0 ? GOOD : undefined, width: width }, p.id))) }));
214
+ const start = windowStart(sel, found.length, win);
215
+ return (_jsx(Panel, { title: "Keys", counter: position(sel, found.length, win), rows: Math.min(win, found.length - start), maxRows: maxRows, width: width, hint: query
216
+ ? found.length === 0
217
+ ? "nothing matches · ⌫ edit · Esc clears the search"
218
+ : "↑/↓ · Enter to choose · ⌫ edit · Esc clears the search"
219
+ : "type to search · ↑/↓ · Enter to choose · Esc or ⌫ close", children: found.slice(start, start + win).map((p, i) => (_jsx(Row, { on: start + i === sel, n: start + i + 1, numWidth: String(found.length).length, left: p.label, right: countLabel(p.count), rightColor: p.count > 0 ? GOOD : undefined, width: width }, p.id))) }));
164
220
  }
165
221
  //# sourceMappingURL=KeyManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KeyManager.js","sourceRoot":"","sources":["../../../src/cli/components/KeyManager.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KeyManager.js","sourceRoot":"","sources":["../../../src/cli/components/KeyManager.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EACL,eAAe,EACf,WAAW,EACX,WAAW,EACX,aAAa,EACb,WAAW,EACX,UAAU,EACV,UAAU,GAGX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,IAAI,KAAK,EAAE,UAAU,IAAI,GAAG,EAAE,eAAe,IAAI,QAAQ,EAAE,kBAAkB,IAAI,WAAW,EAAE,cAAc,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AACnK,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,CAAC;AAoCvB,MAAM,UAAU,UAAU,CAAC,EACzB,SAAS,EACT,MAAM,EACN,QAAQ,EACR,MAAM,EACN,KAAK,EACL,UAAU,EACV,MAAM,EACN,QAAQ,EACR,OAAO,EACP,MAAM,GAAG,IAAI,EACb,aAAa,GAAG,IAAI,EACpB,OAAO,GAAG,MAAM,GACA;IAChB,yFAAyF;IACzF,wFAAwF;IACxF,6EAA6E;IAC7E,EAAE;IACF,uFAAuF;IACvF,mFAAmF;IACnF,sFAAsF;IACtF,qFAAqF;IACrF,6CAA6C;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAO,GAAG,EAAE;QAC1C,oFAAoF;QACpF,iDAAiD;QACjD,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;YACrC,IAAI,aAAa,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,KAAK,IAAI;gBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YAC1H,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;QACnD,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClC,6FAA6F;IAC7F,wEAAwE;IACxE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAExD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjF,qFAAqF;IACrF,yEAAyE;IACzE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAE/E,0FAA0F;IAC1F,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE;QAClB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3H,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;IAC5C,eAAe,CAAC,GAAG,EAAE;QACnB,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IACvB,eAAe,CACb,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACxB,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,KAAK,GACT,IAAI,CAAC,IAAI,KAAK,WAAW;QACvB,CAAC,CAAC,KAAK,CAAC,MAAM;QACd,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM;YACpB,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS;gBACvB,CAAC,CAAC,OAAO,CAAC,MAAM;gBAChB,CAAC,CAAC,CAAC,CAAC;IAEZ,SAAS,IAAI;QACX,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,MAAM,CAAC,CAAC,CAAC,CAAC;QACV,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO,EAAE,CAAC;aACpC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;;YACzD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CACN,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACX,oFAAoF;QACpF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,KAAK,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE;YAAE,OAAO;QACvC,qFAAqF;QACrF,uEAAuE;QACvE,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,EAAE,CAAC;YACvC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACb,MAAM,CAAC,CAAC,CAAC,CAAC;gBACV,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAChC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC;QACD,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO,IAAI,EAAE,CAAC;QAC9B,sFAAsF;QACtF,sFAAsF;QACtF,sFAAsF;QACtF,4DAA4D;QAC5D,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,EAAE,CAAC;QAC1E,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO;QAClC,oFAAoF;QACpF,6FAA6F;QAC7F,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/E,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7F,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClF,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;gBAC3B,MAAM,CAAC,CAAC,CAAC,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC;QACD,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO;QACxB,IAAI,GAAG,CAAC,OAAO;YAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;aACnD,IAAI,GAAG,CAAC,SAAS;YAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;aAClD,IAAI,GAAG,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,CAAC;aAC5B,CAAC;YACJ,gEAAgE;YAChE,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC;gBAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,MAAM,EAAE,CACrB,CAAC;IAEF,SAAS,MAAM,CAAC,KAAa;QAC3B,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ;gBAAE,OAAO;YACtB,MAAM,CAAC,CAAC,CAAC,CAAC;YACV,QAAQ,CAAC,EAAE,CAAC,CAAC;YACb,oFAAoF;YACpF,kFAAkF;YAClF,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,QAAQ,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,KAAK,IAAI;gBAAE,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/G,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACzB,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrC,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO;gBAC1B,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACb,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,MAAM,CAAC,CAAC,CAAC,CAAC;YACV,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC;YAC7C,IAAI,MAAM,KAAK,WAAW;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;gBAC3B,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACb,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACnG,CAAC;YACD,MAAM,CAAC,CAAC,CAAC,CAAC;YACV,IAAI,MAAM,KAAK,eAAe;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAChD,IAAI,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9D,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1B,OAAO,CACL,KAAC,KAAK,IACJ,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAC1H,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,qCAAgC,YAErC,MAAC,GAAG,IAAC,UAAU,EAAE,CAAC,aAChB,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,YAAG,QAAQ,GAAQ,EAC3C,KAAC,SAAS,IACR,KAAK,EAAE,KAAK;wBACZ,6EAA6E;wBAC7E,8EAA8E;wBAC9E,wEAAwE;wBACxE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACxC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;4BACd,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;4BACrB,IAAI,GAAG;gCAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;4BAC/C,QAAQ,CAAC,EAAE,CAAC,CAAC;4BACb,MAAM,CAAC,CAAC,CAAC,CAAC;4BACV,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACrD,CAAC,EACD,WAAW,EAAC,yBAAyB,EACrC,IAAI,EAAC,GAAG,GACR,IACE,GACA,CACT,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CACL,MAAC,KAAK,IACJ,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,UAAU,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAC/G,IAAI,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACtC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,8CAA8C,CAAC,CAAC,CAAC,wCAAwC,aAEtG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACrB,KAAC,GAAG,IAAS,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,IAAjD,CAAC,CAAoD,CAChE,CAAC,EACD,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,YAC9B,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAC,cAAc,YAAE,KAAK,KAAK,EAAE,GAAQ,GACxD,CACP,CAAC,CAAC,CAAC,IAAI,IACF,CACT,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,IAAI,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;QACnD,OAAO,CACL,MAAC,KAAK,IACJ,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAC5D,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,EAClC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3D,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,iEAAwC,aAE5C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC5C,KAAC,GAAG,IAEF,EAAE,EAAE,KAAK,GAAG,CAAC,KAAK,GAAG,EACrB,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,CAAC,EAChB,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EACxC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EACrB,GAAG,EAAE,CAAC,CAAC,IAAI,EACX,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EACjC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACvC,KAAK,EAAE,KAAK,IARP,CAAC,CAAC,IAAI,CASX,CACH,CAAC,EACD,MAAM,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAC,eAAe,EAAC,KAAK,EAAE,KAAK,GAAI,CAAC,CAAC,CAAC,IAAI,IAC5I,CACT,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,CACL,KAAC,KAAK,IACJ,KAAK,EAAC,MAAM,EACZ,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,EACzC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,EACzC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EACF,KAAK;YACH,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gBAClB,CAAC,CAAC,kDAAkD;gBACpD,CAAC,CAAC,wDAAwD;YAC5D,CAAC,CAAC,0DAA0D,YAG/D,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC7C,KAAC,GAAG,IAEF,EAAE,EAAE,KAAK,GAAG,CAAC,KAAK,GAAG,EACrB,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,CAAC,EAChB,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EACrC,IAAI,EAAE,CAAC,CAAC,KAAK,EACb,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAC1B,UAAU,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAC1C,KAAK,EAAE,KAAK,IAPP,CAAC,CAAC,EAAE,CAQT,CACH,CAAC,GACI,CACT,CAAC;AACJ,CAAC"}
@@ -13,11 +13,12 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
13
13
  * `active` so exactly one input owner is live at a time (the prompt is disabled
14
14
  * while a picker is open).
15
15
  */
16
- import { useMemo, useState } from "react";
16
+ import { useLayoutEffect, useMemo, useState } from "react";
17
17
  import { Box, Text, useInput } from "ink";
18
18
  import { clipRows } from "../wrap.js";
19
19
  import { matchesWords, wordsOf } from "../commandArgs.js";
20
20
  import { stripMouse } from "../mouse.js";
21
+ import { setPickerSearchText } from "../pickerSearch.js";
21
22
  import { ACCENT } from "../theme.js";
22
23
  const MAX_VISIBLE = 10;
23
24
  /**
@@ -36,7 +37,7 @@ const MAX_VISIBLE = 10;
36
37
  */
37
38
  const MAX_TITLE_ROWS = 6;
38
39
  const MAX_NOTE_ROWS = 4;
39
- export function Picker({ title, items, onSelect, onCancel, width, active = true, initialIndex = 0, maxTitleRows = MAX_TITLE_ROWS, note, maxNoteRows = MAX_NOTE_ROWS, describeSelection = false, rightAlignDescription = false, maxRows = MAX_VISIBLE, initialFilter = "", }) {
40
+ export function Picker({ title, items, onSelect, onCancel, width, active = true, initialIndex = 0, maxTitleRows = MAX_TITLE_ROWS, note, maxNoteRows = MAX_NOTE_ROWS, describeSelection = false, rightAlignDescription = false, maxRows = MAX_VISIBLE, initialFilter = "", searchBox = false, }) {
40
41
  // Same window size as the command menu (App clamps maxRows to a safe ceiling), so the
41
42
  // picker box and the command box are the SAME fixed height.
42
43
  const visible = Math.max(1, maxRows);
@@ -49,6 +50,17 @@ export function Picker({ title, items, onSelect, onCancel, width, active = true,
49
50
  }, [items, filter]);
50
51
  const [sel, setSel] = useState(initialFilter ? 0 : Math.min(Math.max(0, initialIndex), Math.max(0, items.length - 1)));
51
52
  const count = matching.length;
53
+ // What is typed here is drawn by the input box when this picker is a search (see
54
+ // pickerSearch.ts). Set before the frame is painted so the box never shows the old words.
55
+ useLayoutEffect(() => {
56
+ if (searchBox)
57
+ setPickerSearchText(filter);
58
+ }, [searchBox, filter]);
59
+ // And put away with the picker, so the next one starts from nothing.
60
+ useLayoutEffect(() => () => {
61
+ if (searchBox)
62
+ setPickerSearchText("");
63
+ }, [searchBox]);
52
64
  useInput((raw, key) => {
53
65
  // With wheel reporting on, a scroll arrives as bytes like `[<65;43;30M` that Ink
54
66
  // hands over as typed text, and the filter filled up with them. A chunk that was
@@ -65,8 +77,16 @@ export function Picker({ title, items, onSelect, onCancel, width, active = true,
65
77
  if (picked !== undefined)
66
78
  onSelect(picked);
67
79
  }
68
- else if (key.escape)
69
- onCancel();
80
+ else if (key.escape) {
81
+ // A search is left in two steps: the first Esc takes the words away and shows the whole
82
+ // list, the second closes. Anything else closes at once, as it always did.
83
+ if (searchBox && filter) {
84
+ setFilter("");
85
+ setSel(0);
86
+ }
87
+ else
88
+ onCancel();
89
+ }
70
90
  else if (key.backspace || key.delete) {
71
91
  // Backspace edits the filter while there is one. With none, it closes: the input
72
92
  // line above is empty, so a delete is the natural "take it back" — the same
@@ -136,7 +156,13 @@ export function Picker({ title, items, onSelect, onCancel, width, active = true,
136
156
  return (_jsxs(Box, { width: rowWidth, flexShrink: 0, children: [_jsx(Box, { flexGrow: 1, flexShrink: 1, overflow: "hidden", children: _jsxs(Text, { color: activeRow ? ACCENT : undefined, bold: activeRow, wrap: "truncate-end", children: [activeRow ? "› " : " ", item.label] }) }), _jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: true, children: " " + item.description }) })] }, idx));
137
157
  }
138
158
  return (_jsxs(Box, { width: rowWidth, flexShrink: 0, children: [_jsxs(Text, { color: activeRow ? ACCENT : undefined, bold: activeRow, children: [activeRow ? "› " : " ", item.label.padEnd(labelWidth)] }), item.description && !describeSelection ? (_jsx(Box, { width: descWidth, children: _jsx(Text, { dimColor: true, wrap: "truncate-end", children: " " + item.description }) })) : null] }, idx));
139
- }), noteGap ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { children: " " }) })) : null, noteRows.map((line, i) => (_jsx(Box, { width: rowWidth, flexShrink: 0, children: _jsx(Text, { dimColor: true, wrap: "truncate-end", children: line }) }, `n${i}`))), Array.from({ length: pad }).map((_, i) => (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { children: " " }) }, `pad${i}`))), _jsx(Box, { flexShrink: 0, children: filter ? (
159
+ }), noteGap ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { children: " " }) })) : null, noteRows.map((line, i) => (_jsx(Box, { width: rowWidth, flexShrink: 0, children: _jsx(Text, { dimColor: true, wrap: "truncate-end", children: line }) }, `n${i}`))), Array.from({ length: pad }).map((_, i) => (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { children: " " }) }, `pad${i}`))), _jsx(Box, { flexShrink: 0, children: searchBox ? (
160
+ // The words are in the input box; this row only says what the keys do.
161
+ _jsx(Text, { dimColor: true, children: filter
162
+ ? count === 0
163
+ ? "nothing matches · ⌫ edit · Esc clears the search"
164
+ : "↑/↓ move · Enter select · ⌫ edit · Esc clears the search"
165
+ : "type to search · ↑/↓ move · Enter select · Esc back" })) : filter ? (
140
166
  // The filter lives on the hint row, which always exists, so typing never changes
141
167
  // the box's height.
142
168
  _jsx(Box, { width: rowWidth, children: _jsxs(Text, { wrap: "truncate-start", children: [_jsx(Text, { color: ACCENT, children: filter }), _jsx(Text, { dimColor: true, children: count === 0 ? " · no matches · ⌫ edit · Esc back" : " · ↑/↓ move · Enter select · ⌫ edit · Esc back" })] }) })) : (_jsx(Text, { dimColor: true, children: items.length > visible ? "type to filter · ↑/↓ move · Enter select · Esc back" : "↑/↓ move · Enter select · Esc or ⌫ back" })) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"Picker.js","sourceRoot":"","sources":["../../../src/cli/components/Picker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Picker.js","sourceRoot":"","sources":["../../../src/cli/components/Picker.tsx"],"names":[],"mappings":"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"}
@@ -22,9 +22,11 @@ import { cleanInputText } from "../inputText.js";
22
22
  import { latestScreen } from "../framebuffer/overlay.js";
23
23
  import { feedPasteChunk, initPasteState } from "../pasteAssembler.js";
24
24
  import { stripMouse } from "../mouse.js";
25
+ import { usePickerSearchActive, usePickerSearchText } from "../pickerSearch.js";
25
26
  import { killToLineEnd, wordEnd, wordStart } from "../wordEdit.js";
26
27
  import { declareCaret } from "../caretPark.js";
27
- import { ACCENT } from "../theme.js";
28
+ import { isUserCommandText } from "../../memory/localCommand.js";
29
+ import { ACCENT, WARN } from "../theme.js";
28
30
  /** The widest the command-name column gets; a longer name is cut with an ellipsis instead of wrapping onto the next row. */
29
31
  const NAME_COLUMN_MAX = 18;
30
32
  /** The completions a command menu offers for what is typed (pure). */
@@ -62,6 +64,9 @@ const PASTE_COALESCE_MS = 30;
62
64
  const PASTE_CHUNK_MIN = 40;
63
65
  // The longest single line still read as typing followed by Enter when it arrives in one chunk.
64
66
  const TYPED_THEN_ENTER_MAX = 2000;
67
+ /** How long a held box (see `opening`) waits before it says it is loading. Long enough that
68
+ * the usual instant open never shows it. */
69
+ const SLOW_OPEN_MS = 700;
65
70
  const INITIAL = { value: "", cursor: 0, histIdx: null, selected: 0, draft: "", range: null };
66
71
  /** The selected span as a safe, ordered pair inside the buffer, or null if there is none. */
67
72
  function span(s) {
@@ -183,7 +188,7 @@ const DEFAULT_MAX_SUGGESTIONS = 6;
183
188
  /** Rows the text area may grow to before it scrolls instead. Enough for a real
184
189
  * paragraph; small enough that the chat above it is never squeezed away. */
185
190
  const DEFAULT_MAX_INPUT_ROWS = 8;
186
- export function PromptInput({ onSubmit, disabled = false, placeholder = "", width, history = [], completions = [], pathComplete, onLargePaste, onDroppedPaths, registerCaretClick, registerTextSelect, maxMenuRows = DEFAULT_MAX_SUGGESTIONS, onMenuChange, placeCursor = false, menuAbove = false, settleKey = 0, onQueuePop, maxInputRows = DEFAULT_MAX_INPUT_ROWS, overlay, opening = false, fill, }) {
191
+ export function PromptInput({ onSubmit, disabled = false, placeholder = "", width, history = [], completions = [], pathComplete, onLargePaste, onDroppedPaths, registerCaretClick, registerTextSelect, maxMenuRows = DEFAULT_MAX_SUGGESTIONS, onMenuChange, placeCursor = false, menuAbove = false, settleKey = 0, onQueuePop, maxInputRows = DEFAULT_MAX_INPUT_ROWS, overlay, opening = false, searchPlaceholder, fill, }) {
187
192
  const [state, rawDispatch] = useReducer(reduce, INITIAL);
188
193
  // The buffer as it is NOW, not as it was at the last render. Ink renders on a timer, so a
189
194
  // key that arrives a few milliseconds after the one before it runs against the committed
@@ -641,6 +646,33 @@ export function PromptInput({ onSubmit, disabled = false, placeholder = "", widt
641
646
  // own, so the rows are no longer holding anything up, and keeping them would leave a
642
647
  // band of blank above the prompt for the rest of the session.
643
648
  const boxRows = overlay || menu || opening ? menuBoxRows + 1 : 0;
649
+ // What the command list was showing when the command was submitted. Submitting clears
650
+ // the input, which closes the list, so a box held open for a surface that is still on its
651
+ // way would otherwise be an empty one for as long as the work takes. It keeps showing the
652
+ // list instead, and only its contents change when the surface arrives.
653
+ const lastMenu = useRef(null);
654
+ if (menu)
655
+ lastMenu.current = { menu, sel };
656
+ else if (!opening)
657
+ lastMenu.current = null;
658
+ // A command that waits on something slow (a model list from a server that is not
659
+ // answering) would look like an Enter that did nothing. Past this, the held list says so.
660
+ const [slowOpen, setSlowOpen] = useState(false);
661
+ useEffect(() => {
662
+ if (!opening) {
663
+ setSlowOpen(false);
664
+ return;
665
+ }
666
+ const t = setTimeout(() => setSlowOpen(true), SLOW_OPEN_MS);
667
+ return () => clearTimeout(t);
668
+ }, [opening]);
669
+ // The box is the search field while the open surface is a search: it shows the picker's words.
670
+ const searchText = usePickerSearchText();
671
+ const searchActive = usePickerSearchActive();
672
+ const searching = !!overlay && searchPlaceholder !== undefined && searchActive;
673
+ // A line that starts with `!` is a command for the shell, not a message: the box says so by taking
674
+ // another colour (amber, which neither the ordinary box nor a search uses) for as long as it does.
675
+ const shellMode = !overlay && isUserCommandText(value);
644
676
  const holdRef = useRef(0);
645
677
  const heldAt = useRef(settleKey);
646
678
  if (heldAt.current !== settleKey) {
@@ -653,11 +685,11 @@ export function PromptInput({ onSubmit, disabled = false, placeholder = "", widt
653
685
  const holdPad = menuAbove ? Math.max(0, holdRef.current - boxRows) : 0;
654
686
  const menuBox = overlay || menu || opening ? (_jsx(Box, { flexDirection: "column", width: width, height: menuBoxRows, flexShrink: 0, ...(menuAbove ? { marginBottom: 1 } : { borderStyle: "single", borderColor: "gray", paddingX: 1, marginTop: 1 }), overflow: "hidden", children: overlay ? (overlay) : menu ? (_jsx(SuggestionMenu, { matches: menu.items, selected: sel, width: width, mode: menu.mode, maxRows: maxMenuRows, bare: menuAbove })) : (
655
687
  // `opening`: a command that opens a surface here was submitted, and the surface
656
- // is a moment away. The frame is held open with an empty body so the transition
657
- // from the command list to what it opens is a change of CONTENT inside one box
658
- // that never leaves the screen.
659
- _jsx(Box, { flexDirection: "column", height: menuBoxRows - 2 })) })) : null;
660
- return (_jsxs(Box, { flexDirection: "column", width: width, flexShrink: 0, children: [holdPad > 0 ? _jsx(Box, { flexShrink: 0, height: holdPad }) : null, menuAbove ? menuBox : null, _jsx(Box, { flexDirection: "column", width: width, flexShrink: 0, borderStyle: "single", borderColor: "gray", paddingX: 1, children: _jsx(Field, { value: value, cursor: cursor, active: !disabled && !overlay, placeholder: overlay ? "" : placeholder, width: fieldWidth, maxRows: maxInputRows, placeCursor: placeCursor }) }), menuAbove ? null : menuBox] }));
688
+ // is a moment away. The frame is held open, still showing the list it came from,
689
+ // so the transition from the command list to what it opens is a change of
690
+ // CONTENT inside one box that never leaves the screen.
691
+ _jsx(Box, { flexDirection: "column", height: menuBoxRows - 2, children: slowOpen ? (_jsx(Text, { dimColor: true, children: "Loading\u2026" })) : lastMenu.current ? (_jsx(SuggestionMenu, { matches: lastMenu.current.menu.items, selected: lastMenu.current.sel, width: width, mode: lastMenu.current.menu.mode, maxRows: maxMenuRows, bare: menuAbove })) : null })) })) : null;
692
+ return (_jsxs(Box, { flexDirection: "column", width: width, flexShrink: 0, children: [holdPad > 0 ? _jsx(Box, { flexShrink: 0, height: holdPad }) : null, menuAbove ? menuBox : null, _jsx(Box, { flexDirection: "column", width: width, flexShrink: 0, borderStyle: "single", borderColor: searching ? ACCENT : shellMode ? WARN : "gray", paddingX: 1, children: _jsx(Field, { markColor: shellMode ? WARN : ACCENT, value: searching ? searchText : value, cursor: searching ? searchText.length : cursor, active: searching || (!disabled && !overlay), placeholder: searching ? searchPlaceholder : overlay ? "" : placeholder, width: fieldWidth, maxRows: maxInputRows, placeCursor: placeCursor }) }), menuAbove ? null : menuBox] }));
661
693
  }
662
694
  /** The `@token` ending at the cursor (back to the nearest whitespace), or null.
663
695
  * Used to drive the file-path picker while typing a `@mention`. */
@@ -736,7 +768,7 @@ function SuggestionMenu({ matches, selected, width, mode, maxRows, bare = false,
736
768
  * the tip vanished and the box looked cut in half. The wrapping and the cursor maths
737
769
  * live in inputView.ts, where they are unit-tested.
738
770
  */
739
- function Field({ value, cursor, active, placeholder, width, maxRows, placeCursor, }) {
771
+ function Field({ value, cursor, active, placeholder, width, maxRows, placeCursor, markColor = ACCENT, }) {
740
772
  // ---- NO EARLY RETURN ABOVE THIS BLOCK ----
741
773
  // Every hook here runs before the empty-value branch below returns. A hook underneath
742
774
  // an early return runs a different number of times on the two renders either side of
@@ -805,6 +837,6 @@ function Field({ value, cursor, active, placeholder, width, maxRows, placeCursor
805
837
  // typed — so the box would hide exactly the letter being written, and only once a line
806
838
  // was full. The reserved column is never wasted: the caret is always somewhere.
807
839
  const view = inputView(value, cursor, Math.max(1, width - 1), maxRows);
808
- return (_jsxs(Box, { flexDirection: "column", flexShrink: 0, children: [view.hiddenAbove > 0 ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: true, children: ` ↑ ${view.hiddenAbove} more line${view.hiddenAbove === 1 ? "" : "s"}` }) })) : null, view.rows.map((row, i) => (_jsxs(Box, { flexShrink: 0, children: [_jsx(Text, { bold: true, color: ACCENT, children: i === 0 && view.hiddenAbove === 0 ? "> " : " " }), _jsx(Box, { width: width, overflow: "hidden", ref: active && i === view.cursorRow ? caretRowRef : undefined, children: _jsx(Text, { wrap: "truncate-end", children: row.text }) })] }, i))), view.hiddenBelow > 0 ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: true, children: ` ↓ ${view.hiddenBelow} more line${view.hiddenBelow === 1 ? "" : "s"}` }) })) : null] }));
840
+ return (_jsxs(Box, { flexDirection: "column", flexShrink: 0, children: [view.hiddenAbove > 0 ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: true, children: ` ↑ ${view.hiddenAbove} more line${view.hiddenAbove === 1 ? "" : "s"}` }) })) : null, view.rows.map((row, i) => (_jsxs(Box, { flexShrink: 0, children: [_jsx(Text, { bold: true, color: markColor, children: i === 0 && view.hiddenAbove === 0 ? "> " : " " }), _jsx(Box, { width: width, overflow: "hidden", ref: active && i === view.cursorRow ? caretRowRef : undefined, children: _jsx(Text, { wrap: "truncate-end", children: row.text }) })] }, i))), view.hiddenBelow > 0 ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: true, children: ` ↓ ${view.hiddenBelow} more line${view.hiddenBelow === 1 ? "" : "s"}` }) })) : null] }));
809
841
  }
810
842
  //# sourceMappingURL=PromptInput.js.map