@pentoshi/clai 3.7.9 → 3.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -4
- package/dist/commands/update.js +11 -3
- package/dist/commands/update.js.map +1 -1
- package/dist/prompts/embedded.js +2 -2
- package/dist/prompts/embedded.js.map +1 -1
- package/dist/prompts/index.js +3 -2
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/system.agent.md +3 -3
- package/dist/prompts/system.ask.md +1 -1
- package/dist/repl/slash-commands.js +4 -0
- package/dist/repl/slash-commands.js.map +1 -1
- package/dist/tools/definitions.js +48 -5
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/fs.d.ts +18 -3
- package/dist/tools/fs.js +471 -40
- package/dist/tools/fs.js.map +1 -1
- package/dist/tools/registry.js +10 -1
- package/dist/tools/registry.js.map +1 -1
- package/dist/tui-v2/actions/format-shortcuts.d.ts +12 -0
- package/dist/tui-v2/actions/format-shortcuts.js +257 -0
- package/dist/tui-v2/actions/format-shortcuts.js.map +1 -0
- package/dist/tui-v2/actions/keymap.js +7 -4
- package/dist/tui-v2/actions/keymap.js.map +1 -1
- package/dist/tui-v2/app/App.js +77 -21
- package/dist/tui-v2/app/App.js.map +1 -1
- package/dist/tui-v2/app/command-handlers.js +2 -1
- package/dist/tui-v2/app/command-handlers.js.map +1 -1
- package/dist/tui-v2/app/commands/config-commands.d.ts +1 -0
- package/dist/tui-v2/app/commands/config-commands.js +6 -5
- package/dist/tui-v2/app/commands/config-commands.js.map +1 -1
- package/dist/tui-v2/app/commands/picker-commands.js +3 -1
- package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
- package/dist/tui-v2/app/commands/session-commands.js +19 -2
- package/dist/tui-v2/app/commands/session-commands.js.map +1 -1
- package/dist/tui-v2/app/plan-lifecycle.js +1 -1
- package/dist/tui-v2/app/plan-lifecycle.js.map +1 -1
- package/dist/tui-v2/components/overlay/overlay-host.js +1 -1
- package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
- package/dist/tui-v2/components/pager/pager-line.d.ts +31 -0
- package/dist/tui-v2/components/pager/pager-line.js +184 -0
- package/dist/tui-v2/components/pager/pager-line.js.map +1 -0
- package/dist/tui-v2/components/pager/pager.d.ts +7 -2
- package/dist/tui-v2/components/pager/pager.js +66 -187
- package/dist/tui-v2/components/pager/pager.js.map +1 -1
- package/dist/tui-v2/components/status/status-line.d.ts +9 -1
- package/dist/tui-v2/components/status/status-line.js +3 -3
- package/dist/tui-v2/components/status/status-line.js.map +1 -1
- package/dist/tui-v2/components/toast/toast-host.d.ts +5 -2
- package/dist/tui-v2/components/toast/toast-host.js +63 -28
- package/dist/tui-v2/components/toast/toast-host.js.map +1 -1
- package/dist/tui-v2/components/transcript/search-bar.d.ts +9 -5
- package/dist/tui-v2/components/transcript/search-bar.js +49 -3
- package/dist/tui-v2/components/transcript/search-bar.js.map +1 -1
- package/dist/tui-v2/components/transcript/transcript-row.d.ts +9 -0
- package/dist/tui-v2/components/transcript/transcript-row.js +24 -7
- package/dist/tui-v2/components/transcript/transcript-row.js.map +1 -1
- package/dist/tui-v2/components/transcript/transcript-view.js +121 -13
- package/dist/tui-v2/components/transcript/transcript-view.js.map +1 -1
- package/dist/tui-v2/components/transcript/use-native-selection-copy.js +7 -4
- package/dist/tui-v2/components/transcript/use-native-selection-copy.js.map +1 -1
- package/dist/tui-v2/composer/composer-action-port.d.ts +12 -0
- package/dist/tui-v2/composer/composer-action-port.js +20 -0
- package/dist/tui-v2/composer/composer-action-port.js.map +1 -0
- package/dist/tui-v2/composer/composer-editor.js +34 -2
- package/dist/tui-v2/composer/composer-editor.js.map +1 -1
- package/dist/tui-v2/composer/textarea-keybindings.d.ts +5 -3
- package/dist/tui-v2/composer/textarea-keybindings.js +29 -2
- package/dist/tui-v2/composer/textarea-keybindings.js.map +1 -1
- package/dist/tui-v2/controllers/overlay-controller.d.ts +6 -1
- package/dist/tui-v2/controllers/overlay-controller.js +2 -1
- package/dist/tui-v2/controllers/overlay-controller.js.map +1 -1
- package/dist/tui-v2/controllers/toast-controller.d.ts +17 -5
- package/dist/tui-v2/controllers/toast-controller.js +33 -7
- package/dist/tui-v2/controllers/toast-controller.js.map +1 -1
- package/dist/tui-v2/notify.d.ts +21 -0
- package/dist/tui-v2/notify.js +27 -0
- package/dist/tui-v2/notify.js.map +1 -0
- package/dist/tui-v2/rendering/format-help.d.ts +16 -0
- package/dist/tui-v2/rendering/format-help.js +95 -0
- package/dist/tui-v2/rendering/format-help.js.map +1 -0
- package/dist/tui-v2/rendering/pager-markdown.d.ts +40 -0
- package/dist/tui-v2/rendering/pager-markdown.js +82 -0
- package/dist/tui-v2/rendering/pager-markdown.js.map +1 -0
- package/dist/tui-v2/rendering/plan-view.d.ts +1 -2
- package/dist/tui-v2/rendering/plan-view.js +39 -55
- package/dist/tui-v2/rendering/plan-view.js.map +1 -1
- package/dist/version.generated.d.ts +6 -0
- package/dist/version.generated.js +7 -0
- package/dist/version.generated.js.map +1 -0
- package/package.json +5 -1
|
@@ -1,48 +1,83 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "@opentui/react/jsx-runtime";
|
|
2
2
|
import { TextAttributes } from "@opentui/core";
|
|
3
3
|
import { useToastState } from "../../state/use-toast.js";
|
|
4
|
-
|
|
4
|
+
/** Soft elevated surface — slight whitish shade on near-black. */
|
|
5
|
+
const TOAST_SURFACE_DARK = "#1c2028";
|
|
6
|
+
const TOAST_SURFACE_LIGHT = "#f4f5f7";
|
|
7
|
+
/** Outer box height (includes heavy border rows). */
|
|
8
|
+
const TOAST_HEIGHT = 5;
|
|
9
|
+
/** Gap between stacked toasts. */
|
|
10
|
+
const TOAST_STRIDE = 6;
|
|
11
|
+
function toastSurface(theme) {
|
|
12
|
+
const bg = theme.background.toLowerCase();
|
|
13
|
+
const isDark = bg.startsWith("#0") ||
|
|
14
|
+
bg.startsWith("#1") ||
|
|
15
|
+
bg === "#0b0e14" ||
|
|
16
|
+
bg === "#11151c";
|
|
17
|
+
return isDark ? TOAST_SURFACE_DARK : TOAST_SURFACE_LIGHT;
|
|
18
|
+
}
|
|
19
|
+
function levelGlyph(level) {
|
|
5
20
|
switch (level) {
|
|
6
21
|
case "success":
|
|
7
|
-
return {
|
|
22
|
+
return { glyph: "✓", fg: "#4ADE80" };
|
|
8
23
|
case "warn":
|
|
9
|
-
return {
|
|
24
|
+
return { glyph: "!", fg: "#FACC15" };
|
|
10
25
|
case "error":
|
|
11
|
-
return {
|
|
26
|
+
return { glyph: "✗", fg: "#F87171" };
|
|
12
27
|
default:
|
|
13
|
-
return {
|
|
28
|
+
return { glyph: "·", fg: "#F8FAFC" };
|
|
14
29
|
}
|
|
15
30
|
}
|
|
31
|
+
function ToastPill(props) {
|
|
32
|
+
const { item, theme, top, left, width } = props;
|
|
33
|
+
const { glyph, fg: glyphFg } = levelGlyph(item.level);
|
|
34
|
+
const surface = toastSurface(theme);
|
|
35
|
+
// Border = YOU badge plate (prompt bg).
|
|
36
|
+
const border = theme.prompt;
|
|
37
|
+
const label = `${glyph} ${item.message}`;
|
|
38
|
+
return (_jsx("box", { border: true, borderStyle: "heavy", style: {
|
|
39
|
+
position: "absolute",
|
|
40
|
+
top,
|
|
41
|
+
left,
|
|
42
|
+
width,
|
|
43
|
+
height: TOAST_HEIGHT,
|
|
44
|
+
zIndex: 1000,
|
|
45
|
+
borderColor: border,
|
|
46
|
+
backgroundColor: theme.background,
|
|
47
|
+
flexDirection: "column",
|
|
48
|
+
paddingLeft: 0,
|
|
49
|
+
paddingRight: 0,
|
|
50
|
+
paddingTop: 0,
|
|
51
|
+
paddingBottom: 0,
|
|
52
|
+
}, children: _jsx("box", { style: {
|
|
53
|
+
flexGrow: 1,
|
|
54
|
+
width: "100%",
|
|
55
|
+
minHeight: 1,
|
|
56
|
+
backgroundColor: surface,
|
|
57
|
+
flexDirection: "row",
|
|
58
|
+
alignItems: "center",
|
|
59
|
+
justifyContent: "center",
|
|
60
|
+
paddingLeft: 2,
|
|
61
|
+
paddingRight: 2,
|
|
62
|
+
}, children: _jsx("text", { selectable: false, content: label, style: {
|
|
63
|
+
fg: glyphFg,
|
|
64
|
+
attributes: TextAttributes.BOLD,
|
|
65
|
+
} }) }) }));
|
|
66
|
+
}
|
|
16
67
|
export function ToastHost(props) {
|
|
17
68
|
const { toast, theme, termWidth, termHeight } = props;
|
|
18
69
|
const items = useToastState(toast);
|
|
19
70
|
if (items.length === 0)
|
|
20
71
|
return null;
|
|
21
|
-
const maxWidth = Math.min(
|
|
72
|
+
const maxWidth = Math.min(56, Math.max(34, Math.floor(termWidth * 0.52)));
|
|
22
73
|
const ordered = [...items].reverse();
|
|
23
|
-
const maxStack = Math.max(1, Math.floor((termHeight -
|
|
74
|
+
const maxStack = Math.max(1, Math.min(3, Math.floor((termHeight - 8) / TOAST_STRIDE)));
|
|
24
75
|
const visible = ordered.slice(0, maxStack);
|
|
25
76
|
return (_jsx(_Fragment, { children: visible.map((item, index) => {
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
return (_jsxs("box", { border: true, borderStyle: "rounded", style: {
|
|
31
|
-
position: "absolute",
|
|
32
|
-
top,
|
|
33
|
-
left,
|
|
34
|
-
width: toastWidth,
|
|
35
|
-
zIndex: 999,
|
|
36
|
-
borderColor: chrome.border,
|
|
37
|
-
backgroundColor: theme.statusBackground,
|
|
38
|
-
paddingLeft: 1,
|
|
39
|
-
paddingRight: 1,
|
|
40
|
-
flexDirection: "row",
|
|
41
|
-
}, children: [_jsx("text", { style: {
|
|
42
|
-
fg: chrome.fg,
|
|
43
|
-
bg: chrome.bg,
|
|
44
|
-
attributes: TextAttributes.BOLD,
|
|
45
|
-
}, children: chrome.label }), _jsx("text", { content: " " }), _jsx("text", { style: { fg: theme.foreground, attributes: TextAttributes.BOLD }, children: item.message })] }, item.id));
|
|
77
|
+
const toastWidth = Math.min(maxWidth, Math.max(30, item.message.length + 10));
|
|
78
|
+
const left = Math.max(0, termWidth - toastWidth - 2);
|
|
79
|
+
const top = 1 + index * TOAST_STRIDE;
|
|
80
|
+
return (_jsx(ToastPill, { item: item, theme: theme, top: top, left: left, width: toastWidth }, item.id));
|
|
46
81
|
}) }));
|
|
47
82
|
}
|
|
48
83
|
//# sourceMappingURL=toast-host.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toast-host.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/toast/toast-host.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"toast-host.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/toast/toast-host.tsx"],"names":[],"mappings":";AAUA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAO/C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AASzD,kEAAkE;AAClE,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAEtC,qDAAqD;AACrD,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,kCAAkC;AAClC,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,SAAS,YAAY,CAAC,KAAY;IAChC,MAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IAC1C,MAAM,MAAM,GACV,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,EAAE,KAAK,SAAS;QAChB,EAAE,KAAK,SAAS,CAAC;IACnB,OAAO,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAED,SAAS,UAAU,CAAC,KAAiB;IACnC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;QACvC,KAAK,MAAM;YACT,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;QACvC,KAAK,OAAO;YACV,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;QACvC;YACE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;IACzC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,KAMlB;IACC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAChD,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,wCAAwC;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,KAAK,GAAG,GAAG,KAAK,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;IAE1C,OAAO,CAGL,cACE,MAAM,QACN,WAAW,EAAC,OAAO,EACnB,KAAK,EAAE;YACL,QAAQ,EAAE,UAAU;YACpB,GAAG;YACH,IAAI;YACJ,KAAK;YACL,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,MAAM;YACnB,eAAe,EAAE,KAAK,CAAC,UAAU;YACjC,aAAa,EAAE,QAAQ;YACvB,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,CAAC;SACjB,YAGD,cACE,KAAK,EAAE;gBACL,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,CAAC;gBACZ,eAAe,EAAE,OAAO;gBACxB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,QAAQ;gBACpB,cAAc,EAAE,QAAQ;gBACxB,WAAW,EAAE,CAAC;gBACd,YAAY,EAAE,CAAC;aAChB,YAED,eACE,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,EACd,KAAK,EAAE;oBACL,EAAE,EAAE,OAAO;oBACX,UAAU,EAAE,cAAc,CAAC,IAAI;iBAChC,GACD,GACE,GACF,CACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IACtD,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CACzD,CAAC;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE3C,OAAO,CACL,4BACG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CACzB,QAAQ,EACR,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CACvC,CAAC;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,GAAG,YAAY,CAAC;YACrC,OAAO,CACL,KAAC,SAAS,IAER,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,UAAU,IALZ,IAAI,CAAC,EAAE,CAMZ,CACH,CAAC;QACJ,CAAC,CAAC,GACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/** @jsxImportSource @opentui/react */
|
|
2
2
|
/**
|
|
3
|
-
* Transcript search
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
3
|
+
* Transcript search chrome (CHAT/V2-057).
|
|
4
|
+
*
|
|
5
|
+
* Two modes:
|
|
6
|
+
* 1. Filter open — focused input, type a term, Enter jumps + leaves sticky find.
|
|
7
|
+
* 2. Sticky find (bar closed, query kept) — rendered as a status strip so
|
|
8
|
+
* n/N / Esc are obvious (same model as the pager).
|
|
8
9
|
*/
|
|
9
10
|
import type { ReactNode } from "react";
|
|
10
11
|
import type { Theme } from "../../rendering/theme.js";
|
|
@@ -15,5 +16,8 @@ export interface SearchBarProps {
|
|
|
15
16
|
readonly activeOrdinal: number;
|
|
16
17
|
readonly onQueryChange: (value: string) => void;
|
|
17
18
|
readonly onSubmit: () => void;
|
|
19
|
+
/** When true, show the focused input. When false, show sticky find strip. */
|
|
20
|
+
readonly editing: boolean;
|
|
18
21
|
}
|
|
22
|
+
/** Focused filter input while typing a search term. */
|
|
19
23
|
export declare function SearchBar(props: SearchBarProps): ReactNode;
|
|
@@ -1,7 +1,53 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
|
|
2
|
+
import { TextAttributes } from "@opentui/core";
|
|
3
|
+
function matchLabel(query, matchCount, activeOrdinal) {
|
|
4
|
+
if (!query.trim())
|
|
5
|
+
return "";
|
|
6
|
+
if (matchCount <= 0)
|
|
7
|
+
return "no matches";
|
|
8
|
+
// Before first Enter, only show total; after, show current/total.
|
|
9
|
+
if (activeOrdinal <= 0)
|
|
10
|
+
return `${matchCount} match${matchCount === 1 ? "" : "es"}`;
|
|
11
|
+
return `${activeOrdinal}/${matchCount}`;
|
|
12
|
+
}
|
|
13
|
+
/** Focused filter input while typing a search term. */
|
|
2
14
|
export function SearchBar(props) {
|
|
3
|
-
const { theme, query, matchCount, activeOrdinal, onQueryChange, onSubmit } = props;
|
|
4
|
-
const status = matchCount
|
|
5
|
-
|
|
15
|
+
const { theme, query, matchCount, activeOrdinal, onQueryChange, onSubmit, editing, } = props;
|
|
16
|
+
const status = matchLabel(query, matchCount, activeOrdinal);
|
|
17
|
+
if (!editing) {
|
|
18
|
+
// Sticky find strip after Enter — n/N navigate, Esc clears.
|
|
19
|
+
return (_jsxs("box", { style: {
|
|
20
|
+
flexDirection: "row",
|
|
21
|
+
backgroundColor: theme.rowB,
|
|
22
|
+
paddingLeft: 1,
|
|
23
|
+
paddingRight: 1,
|
|
24
|
+
height: 1,
|
|
25
|
+
alignItems: "center",
|
|
26
|
+
width: "100%",
|
|
27
|
+
}, children: [_jsx("text", { selectable: false, content: " find ", style: {
|
|
28
|
+
fg: theme.background,
|
|
29
|
+
bg: theme.cyan,
|
|
30
|
+
attributes: TextAttributes.BOLD,
|
|
31
|
+
} }), _jsx("text", { selectable: false, content: " " }), _jsx("text", { selectable: false, content: query.trim() || "…", style: { fg: theme.foreground, attributes: TextAttributes.BOLD } }), _jsx("text", { selectable: false, content: " " }), _jsx("text", { selectable: false, content: status, style: {
|
|
32
|
+
fg: matchCount > 0 ? theme.activity : theme.muted,
|
|
33
|
+
attributes: TextAttributes.BOLD,
|
|
34
|
+
} }), _jsx("text", { selectable: false, content: " \u00B7 n/N:next \u00B7 ^r:edit \u00B7 esc:close", style: { fg: theme.muted } })] }));
|
|
35
|
+
}
|
|
36
|
+
return (_jsxs("box", { style: {
|
|
37
|
+
flexDirection: "row",
|
|
38
|
+
backgroundColor: theme.rowB,
|
|
39
|
+
paddingLeft: 1,
|
|
40
|
+
paddingRight: 1,
|
|
41
|
+
height: 1,
|
|
42
|
+
alignItems: "center",
|
|
43
|
+
width: "100%",
|
|
44
|
+
}, children: [_jsx("text", { selectable: false, content: " ^R ", style: {
|
|
45
|
+
fg: theme.background,
|
|
46
|
+
bg: theme.cyan,
|
|
47
|
+
attributes: TextAttributes.BOLD,
|
|
48
|
+
} }), _jsx("text", { selectable: false, content: " ", style: { fg: theme.muted } }), _jsx("text", { selectable: false, content: "filter ", style: { fg: theme.muted } }), _jsx("input", { focused: true, value: query, onInput: onQueryChange, onSubmit: onSubmit, textColor: theme.foreground, backgroundColor: theme.rowB, placeholder: "search chat\u2026", placeholderColor: theme.muted, style: { flexGrow: 1, minWidth: 12 } }), _jsx("text", { selectable: false, content: " " }), status ? (_jsx("text", { selectable: false, content: `${status} · `, style: {
|
|
49
|
+
fg: matchCount > 0 ? theme.activity : theme.muted,
|
|
50
|
+
attributes: TextAttributes.BOLD,
|
|
51
|
+
} })) : null, _jsx("text", { selectable: false, content: "enter:jump \u00B7 esc:close", style: { fg: theme.muted } })] }));
|
|
6
52
|
}
|
|
7
53
|
//# sourceMappingURL=search-bar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-bar.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/search-bar.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"search-bar.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/search-bar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,13 @@ import type { AppServices } from "../../bootstrap/composition-root.js";
|
|
|
12
12
|
import type { TranscriptStore } from "../../state/transcript-store.js";
|
|
13
13
|
import { type TranscriptItem, type TranscriptState } from "../../state/transcript-types.js";
|
|
14
14
|
import type { Theme } from "../../rendering/theme.js";
|
|
15
|
+
/** Active ^R search highlight for a transcript row. */
|
|
16
|
+
export interface TranscriptSearchMark {
|
|
17
|
+
/** This item contains at least one match for the current query. */
|
|
18
|
+
readonly matched: boolean;
|
|
19
|
+
/** This item is the currently selected n/N match. */
|
|
20
|
+
readonly active: boolean;
|
|
21
|
+
}
|
|
15
22
|
export declare function TranscriptRow(props: {
|
|
16
23
|
item: TranscriptItem;
|
|
17
24
|
state: TranscriptState;
|
|
@@ -22,4 +29,6 @@ export declare function TranscriptRow(props: {
|
|
|
22
29
|
onOpenUserPrompt: (prompt: string) => void;
|
|
23
30
|
/** Chat-pane columns so markdown tables reflow beside the plan pane. */
|
|
24
31
|
contentWidth?: number | undefined;
|
|
32
|
+
/** Optional ^R search highlight for this item. */
|
|
33
|
+
searchMark?: TranscriptSearchMark | undefined;
|
|
25
34
|
}): ReactNode;
|
|
@@ -7,14 +7,18 @@ import { ToolCard } from "./tool-card.js";
|
|
|
7
7
|
import { NoticeRow } from "./notice-row.js";
|
|
8
8
|
import { CompactedRow } from "./compacted-row.js";
|
|
9
9
|
export function TranscriptRow(props) {
|
|
10
|
-
const { item, state, theme, store, spool, services, onOpenUserPrompt, contentWidth, } = props;
|
|
10
|
+
const { item, state, theme, store, spool, services, onOpenUserPrompt, contentWidth, searchMark, } = props;
|
|
11
|
+
let body;
|
|
11
12
|
switch (item.kind) {
|
|
12
13
|
case "user":
|
|
13
|
-
|
|
14
|
+
body = _jsx(UserMessage, { item: item, theme: theme, onOpen: onOpenUserPrompt });
|
|
15
|
+
break;
|
|
14
16
|
case "assistant":
|
|
15
|
-
|
|
17
|
+
body = (_jsx(AssistantMessage, { item: item, theme: theme, contentWidth: contentWidth }));
|
|
18
|
+
break;
|
|
16
19
|
case "thinking":
|
|
17
|
-
|
|
20
|
+
body = (_jsx(ThinkingBlock, { item: item, theme: theme, expanded: isItemExpanded(state, item), onToggle: () => store.toggleItemOverride(item.id, state.expandThinkingGlobal) }));
|
|
21
|
+
break;
|
|
18
22
|
case "tool": {
|
|
19
23
|
// task.update spam — only show failures in the main chat.
|
|
20
24
|
// (The Tasks pane still reflects every successful update.)
|
|
@@ -23,12 +27,14 @@ export function TranscriptRow(props) {
|
|
|
23
27
|
item.status !== "blocked") {
|
|
24
28
|
return null;
|
|
25
29
|
}
|
|
26
|
-
|
|
30
|
+
body = (_jsx(ToolCard, { item: item, theme: theme, spool: spool, services: services, expanded: isItemExpanded(state, item), onToggle: () => store.toggleItemOverride(item.id, state.expandOutputGlobal), fileDiffExpanded: isFileDiffExpanded(state, item.id), onToggleFileDiff: () => store.toggleFileDiffOverride(item.id, state.expandFileDiffsGlobal), onCollapseAllFileDiffs: () => store.setFileDiffsGlobal(false), onExpandAllFileDiffs: () => store.setFileDiffsGlobal(true) }));
|
|
31
|
+
break;
|
|
27
32
|
}
|
|
28
33
|
case "notice":
|
|
29
|
-
|
|
34
|
+
body = _jsx(NoticeRow, { item: item, theme: theme });
|
|
35
|
+
break;
|
|
30
36
|
case "compacted":
|
|
31
|
-
|
|
37
|
+
body = (_jsx(CompactedRow, { item: item, theme: theme, services: services, contentWidth: contentWidth, expanded: isItemExpanded(state, item), onToggle: () => {
|
|
32
38
|
// Ctrl+O / toggle: open pager (do not dump multi‑KB memory in chat).
|
|
33
39
|
const summary = item.summary;
|
|
34
40
|
const title = item.beforeTokens > 0 || item.afterTokens > 0
|
|
@@ -36,10 +42,21 @@ export function TranscriptRow(props) {
|
|
|
36
42
|
: "Compacted context";
|
|
37
43
|
services.overlay.openPager(title, summary);
|
|
38
44
|
} }));
|
|
45
|
+
break;
|
|
39
46
|
default: {
|
|
40
47
|
const unreachable = item;
|
|
41
48
|
throw new Error(`unhandled transcript item: ${JSON.stringify(unreachable)}`);
|
|
42
49
|
}
|
|
43
50
|
}
|
|
51
|
+
// Search highlight wrapper — active match gets a strong wash; other hits a soft one.
|
|
52
|
+
if (!searchMark?.matched)
|
|
53
|
+
return body;
|
|
54
|
+
return (_jsx("box", { border: true, borderStyle: "rounded", style: {
|
|
55
|
+
width: "100%",
|
|
56
|
+
flexDirection: "column",
|
|
57
|
+
backgroundColor: searchMark.active ? theme.selection : theme.rowA,
|
|
58
|
+
borderColor: searchMark.active ? theme.activity : theme.cyan,
|
|
59
|
+
marginBottom: 0,
|
|
60
|
+
}, children: body }));
|
|
44
61
|
}
|
|
45
62
|
//# sourceMappingURL=transcript-row.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript-row.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-row.tsx"],"names":[],"mappings":";AAaA,OAAO,EACL,kBAAkB,EAClB,cAAc,GAGf,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"transcript-row.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-row.tsx"],"names":[],"mappings":"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"}
|
|
@@ -15,9 +15,10 @@ import { chordFromKeyEvent } from "../../actions/chord-from-key.js";
|
|
|
15
15
|
import { useTranscriptState } from "../../state/use-transcript-store.js";
|
|
16
16
|
import { useSessionState } from "../../state/use-session-state.js";
|
|
17
17
|
import { transcriptItems } from "../../state/transcript-types.js";
|
|
18
|
-
import { findMatches, nextMatchIndex } from "../../state/transcript-search.js";
|
|
18
|
+
import { findMatches, nextMatchIndex, prevMatchIndex, } from "../../state/transcript-search.js";
|
|
19
19
|
import { TranscriptRow } from "./transcript-row.js";
|
|
20
20
|
import { SearchBar } from "./search-bar.js";
|
|
21
|
+
import { notify } from "../../notify.js";
|
|
21
22
|
import { IntroCard } from "./intro-card.js";
|
|
22
23
|
import { EMPTY_SCROLL_METRICS, publishTranscriptScrollMetrics, registerTranscriptAutoScroll, registerTranscriptJumpHandlers, registerTranscriptScrollPort, } from "./transcript-scroll-port.js";
|
|
23
24
|
import { useNativeSelectionCopy } from "./use-native-selection-copy.js";
|
|
@@ -110,10 +111,22 @@ export function TranscriptView(props) {
|
|
|
110
111
|
}
|
|
111
112
|
return parts.join("|");
|
|
112
113
|
}, [state, session.running]);
|
|
114
|
+
/** Filter input visible (typing a term). */
|
|
113
115
|
const [searchOpen, setSearchOpen] = useState(false);
|
|
116
|
+
/** Sticky query kept after Enter so n/N + highlights work (pager model). */
|
|
114
117
|
const [query, setQuery] = useState("");
|
|
115
118
|
const [matchIndex, setMatchIndex] = useState(-1);
|
|
116
119
|
const matches = useMemo(() => findMatches(state, query), [state, query]);
|
|
120
|
+
const matchedItemIds = useMemo(() => {
|
|
121
|
+
const set = new Set();
|
|
122
|
+
for (const m of matches)
|
|
123
|
+
set.add(m.itemId);
|
|
124
|
+
return set;
|
|
125
|
+
}, [matches]);
|
|
126
|
+
const activeMatchItemId = matchIndex >= 0 && matchIndex < matches.length
|
|
127
|
+
? matches[matchIndex].itemId
|
|
128
|
+
: undefined;
|
|
129
|
+
const searchActive = query.trim().length > 0;
|
|
117
130
|
// Drag-select on response/thinking text → OSC 52 copy on release.
|
|
118
131
|
useNativeSelectionCopy(services);
|
|
119
132
|
/**
|
|
@@ -284,24 +297,86 @@ export function TranscriptView(props) {
|
|
|
284
297
|
setFollowing(true);
|
|
285
298
|
}
|
|
286
299
|
function openSearch() {
|
|
287
|
-
|
|
300
|
+
// Allow re-opening the filter to edit the sticky query.
|
|
301
|
+
if (searchOpen)
|
|
288
302
|
return;
|
|
289
|
-
|
|
303
|
+
// Another overlay (pager/picker) owns focus — do not stack.
|
|
304
|
+
if (services.focus.hasOverlay() && services.focus.activeContext() !== "transcript-search") {
|
|
305
|
+
return;
|
|
306
|
+
}
|
|
307
|
+
if (!closeOverlay.current) {
|
|
308
|
+
try {
|
|
309
|
+
closeOverlay.current = services.focus.pushOverlay("transcript-search");
|
|
310
|
+
}
|
|
311
|
+
catch {
|
|
312
|
+
// Overlay already open — still show the bar if we own search.
|
|
313
|
+
return;
|
|
314
|
+
}
|
|
315
|
+
}
|
|
290
316
|
setSearchOpen(true);
|
|
317
|
+
followBottom.current = false;
|
|
291
318
|
}
|
|
292
|
-
|
|
319
|
+
/** Drop filter input + sticky query + highlights. */
|
|
320
|
+
function clearSearch() {
|
|
293
321
|
setSearchOpen(false);
|
|
294
322
|
setQuery("");
|
|
295
323
|
setMatchIndex(-1);
|
|
296
324
|
closeOverlay.current?.();
|
|
297
325
|
closeOverlay.current = undefined;
|
|
298
326
|
}
|
|
299
|
-
|
|
300
|
-
|
|
327
|
+
/** Close only the filter input; keep sticky query for n/N + highlights. */
|
|
328
|
+
function leaveFilterKeepQuery() {
|
|
329
|
+
setSearchOpen(false);
|
|
330
|
+
closeOverlay.current?.();
|
|
331
|
+
closeOverlay.current = undefined;
|
|
332
|
+
services.focus.focusRegion("transcript");
|
|
333
|
+
}
|
|
334
|
+
function jumpToMatch(index) {
|
|
335
|
+
if (index < 0 || matches.length === 0) {
|
|
336
|
+
setMatchIndex(-1);
|
|
337
|
+
return;
|
|
338
|
+
}
|
|
301
339
|
setMatchIndex(index);
|
|
302
340
|
const match = matches[index];
|
|
303
|
-
if (match)
|
|
341
|
+
if (!match)
|
|
342
|
+
return;
|
|
343
|
+
followBottom.current = false;
|
|
344
|
+
// Defer until after paint so the row id exists in the scroll tree.
|
|
345
|
+
queueMicrotask(() => {
|
|
304
346
|
scrollRef.current?.scrollChildIntoView(match.itemId);
|
|
347
|
+
publishScrollRemainder(scrollRef.current);
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
function submitSearch() {
|
|
351
|
+
const needle = query.trim();
|
|
352
|
+
if (!needle) {
|
|
353
|
+
// Empty submit just closes the filter.
|
|
354
|
+
clearSearch();
|
|
355
|
+
return;
|
|
356
|
+
}
|
|
357
|
+
if (matches.length === 0) {
|
|
358
|
+
notify(services, "No matches", { key: "find", level: "warn", durationMs: 1400 });
|
|
359
|
+
// Keep filter open so the user can edit the term.
|
|
360
|
+
return;
|
|
361
|
+
}
|
|
362
|
+
const index = nextMatchIndex(matches, matchIndex);
|
|
363
|
+
jumpToMatch(index);
|
|
364
|
+
// Pager model: leave sticky find strip + n/N, hide the input.
|
|
365
|
+
leaveFilterKeepQuery();
|
|
366
|
+
notify(services, `Find · ${index + 1}/${matches.length}`, {
|
|
367
|
+
key: "find",
|
|
368
|
+
durationMs: 1200,
|
|
369
|
+
});
|
|
370
|
+
}
|
|
371
|
+
function nextSearchMatch() {
|
|
372
|
+
if (!searchActive || matches.length === 0)
|
|
373
|
+
return;
|
|
374
|
+
jumpToMatch(nextMatchIndex(matches, matchIndex));
|
|
375
|
+
}
|
|
376
|
+
function prevSearchMatch() {
|
|
377
|
+
if (!searchActive || matches.length === 0)
|
|
378
|
+
return;
|
|
379
|
+
jumpToMatch(prevMatchIndex(matches, matchIndex));
|
|
305
380
|
}
|
|
306
381
|
function resendPrompt(prompt) {
|
|
307
382
|
void (async () => {
|
|
@@ -349,17 +424,45 @@ export function TranscriptView(props) {
|
|
|
349
424
|
if (key.eventType === "release")
|
|
350
425
|
return;
|
|
351
426
|
const chord = chordFromKeyEvent(key);
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
427
|
+
// ── Filter input open: Esc closes everything; other keys go to <input>.
|
|
428
|
+
if (searchOpen) {
|
|
429
|
+
if (chord === "escape") {
|
|
430
|
+
key.preventDefault();
|
|
431
|
+
clearSearch();
|
|
432
|
+
}
|
|
433
|
+
// Enter is handled by SearchBar onSubmit → submitSearch.
|
|
355
434
|
return;
|
|
356
435
|
}
|
|
436
|
+
// ── Sticky find (query kept, bar closed): n/N + Esc + ^R to re-edit.
|
|
437
|
+
if (searchActive) {
|
|
438
|
+
if (chord === "escape") {
|
|
439
|
+
key.preventDefault();
|
|
440
|
+
clearSearch();
|
|
441
|
+
return;
|
|
442
|
+
}
|
|
443
|
+
if (chord === "n") {
|
|
444
|
+
key.preventDefault();
|
|
445
|
+
nextSearchMatch();
|
|
446
|
+
return;
|
|
447
|
+
}
|
|
448
|
+
if (chord === "shift+n") {
|
|
449
|
+
key.preventDefault();
|
|
450
|
+
prevSearchMatch();
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
453
|
+
if (chord === "ctrl+r") {
|
|
454
|
+
key.preventDefault();
|
|
455
|
+
openSearch();
|
|
456
|
+
return;
|
|
457
|
+
}
|
|
458
|
+
}
|
|
357
459
|
if (chord === "ctrl+r") {
|
|
358
460
|
key.preventDefault();
|
|
359
461
|
openSearch();
|
|
462
|
+
return;
|
|
360
463
|
}
|
|
361
464
|
// Arrow / page scroll when transcript owns focus.
|
|
362
|
-
if (
|
|
465
|
+
if (services.focus.activeContext() === "transcript") {
|
|
363
466
|
const sb = scrollRef.current;
|
|
364
467
|
if (!sb)
|
|
365
468
|
return;
|
|
@@ -406,7 +509,7 @@ export function TranscriptView(props) {
|
|
|
406
509
|
}
|
|
407
510
|
}
|
|
408
511
|
});
|
|
409
|
-
return (_jsxs("box", { style: { flexDirection: "column", flexGrow: 1, width: "100%", position: "relative" }, onMouseDown: onTranscriptMouseDown, onMouseDrag: onTranscriptMouseDrag, onMouseUp: onTranscriptMouseUp, onMouseDragEnd: onTranscriptMouseUp, onMouseScroll: onWheelScroll, children: [searchOpen ? (_jsx(SearchBar, { theme: theme, query: query, matchCount: matches.length, activeOrdinal: matchIndex + 1, onQueryChange: (value) => {
|
|
512
|
+
return (_jsxs("box", { style: { flexDirection: "column", flexGrow: 1, width: "100%", position: "relative" }, onMouseDown: onTranscriptMouseDown, onMouseDrag: onTranscriptMouseDrag, onMouseUp: onTranscriptMouseUp, onMouseDragEnd: onTranscriptMouseUp, onMouseScroll: onWheelScroll, children: [searchOpen || searchActive ? (_jsx(SearchBar, { theme: theme, query: query, matchCount: matches.length, activeOrdinal: matchIndex >= 0 ? matchIndex + 1 : 0, editing: searchOpen, onQueryChange: (value) => {
|
|
410
513
|
setQuery(value);
|
|
411
514
|
setMatchIndex(-1);
|
|
412
515
|
}, onSubmit: submitSearch })) : null, _jsxs("scrollbox", { ref: scrollRef,
|
|
@@ -415,6 +518,11 @@ export function TranscriptView(props) {
|
|
|
415
518
|
focused: focused,
|
|
416
519
|
// Native auto-follow: when content grows and the user is (or returns)
|
|
417
520
|
// at the bottom, stay pinned to the latest agent output.
|
|
418
|
-
stickyScroll: true, stickyStart: items.length > 0 ? "bottom" : "top", viewportCulling: true, scrollY: true, scrollX: false, scrollbarOptions: HIDDEN_SCROLLBARS, verticalScrollbarOptions: HIDDEN_SCROLLBARS, horizontalScrollbarOptions: HIDDEN_SCROLLBARS, style: { flexGrow: 1, width: "100%" }, onMouseScroll: onWheelScroll, children: [_jsx(IntroCard, { services: services, theme: theme, width: introWidth }), items.map((item) => (_jsx(TranscriptRow, { item: item, state: state, theme: theme, store: services.transcript, spool: services.session.spool, services: services, onOpenUserPrompt: openUserPrompt, contentWidth: paneWidth
|
|
521
|
+
stickyScroll: true, stickyStart: items.length > 0 ? "bottom" : "top", viewportCulling: true, scrollY: true, scrollX: false, scrollbarOptions: HIDDEN_SCROLLBARS, verticalScrollbarOptions: HIDDEN_SCROLLBARS, horizontalScrollbarOptions: HIDDEN_SCROLLBARS, style: { flexGrow: 1, width: "100%" }, onMouseScroll: onWheelScroll, children: [_jsx(IntroCard, { services: services, theme: theme, width: introWidth }), items.map((item) => (_jsx(TranscriptRow, { item: item, state: state, theme: theme, store: services.transcript, spool: services.session.spool, services: services, onOpenUserPrompt: openUserPrompt, contentWidth: paneWidth, searchMark: searchActive && matchedItemIds.has(item.id)
|
|
522
|
+
? {
|
|
523
|
+
matched: true,
|
|
524
|
+
active: item.id === activeMatchItemId,
|
|
525
|
+
}
|
|
526
|
+
: undefined }, item.id)))] })] }));
|
|
419
527
|
}
|
|
420
528
|
//# sourceMappingURL=transcript-view.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript-view.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-view.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transcript-view.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-view.tsx"],"names":[],"mappings":"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"}
|