@wrongstack/tui 0.292.1 → 0.295.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 +1 -0
- package/dist/app-initial-state.d.ts +1 -1
- package/dist/app-initial-state.d.ts.map +1 -1
- package/dist/app-key-handler.d.ts +79 -0
- package/dist/app-key-handler.d.ts.map +1 -0
- package/dist/app-props.d.ts +25 -27
- package/dist/app-props.d.ts.map +1 -1
- package/dist/app-reducer.d.ts.map +1 -1
- package/dist/app-state.d.ts +31 -62
- package/dist/app-state.d.ts.map +1 -1
- package/dist/app-status-region.d.ts +5 -0
- package/dist/app-status-region.d.ts.map +1 -0
- package/dist/app-view-contract.d.ts +84 -0
- package/dist/app-view-contract.d.ts.map +1 -0
- package/dist/app-view-state.d.ts +19 -0
- package/dist/app-view-state.d.ts.map +1 -0
- package/dist/app-view.d.ts +4 -0
- package/dist/app-view.d.ts.map +1 -0
- package/dist/app.d.ts +3 -3
- package/dist/app.d.ts.map +1 -1
- package/dist/auth-panel-model.d.ts +150 -0
- package/dist/auth-panel-model.d.ts.map +1 -0
- package/dist/brain-contracts.d.ts +8 -0
- package/dist/brain-contracts.d.ts.map +1 -0
- package/dist/brain-panel-model.d.ts +222 -0
- package/dist/brain-panel-model.d.ts.map +1 -0
- package/dist/checkpoint-retention.d.ts +35 -0
- package/dist/checkpoint-retention.d.ts.map +1 -0
- package/dist/components/agents-monitor.d.ts +3 -4
- package/dist/components/agents-monitor.d.ts.map +1 -1
- package/dist/components/animation-style.d.ts +22 -23
- package/dist/components/animation-style.d.ts.map +1 -1
- package/dist/components/audit-panel.d.ts +1 -1
- package/dist/components/audit-panel.d.ts.map +1 -1
- package/dist/components/auth-panel-model.d.ts +1 -149
- package/dist/components/auth-panel-model.d.ts.map +1 -1
- package/dist/components/brain-panel-model.d.ts +1 -106
- package/dist/components/brain-panel-model.d.ts.map +1 -1
- package/dist/components/brain-panel.d.ts +2 -7
- package/dist/components/brain-panel.d.ts.map +1 -1
- package/dist/components/composer-status-chip.d.ts +16 -3
- package/dist/components/composer-status-chip.d.ts.map +1 -1
- package/dist/components/context-panel.d.ts +1 -1
- package/dist/components/context-panel.d.ts.map +1 -1
- package/dist/components/coordinator-panel.d.ts +1 -1
- package/dist/components/coordinator-panel.d.ts.map +1 -1
- package/dist/components/design-picker.d.ts +1 -1
- package/dist/components/design-picker.d.ts.map +1 -1
- package/dist/components/exit-confirm-panel.d.ts +2 -1
- package/dist/components/exit-confirm-panel.d.ts.map +1 -1
- package/dist/components/fleet-monitor.d.ts +1 -1
- package/dist/components/fleet-monitor.d.ts.map +1 -1
- package/dist/components/fleet-panel.d.ts +2 -2
- package/dist/components/fleet-panel.d.ts.map +1 -1
- package/dist/components/history/banner.d.ts +4 -1
- package/dist/components/history/banner.d.ts.map +1 -1
- package/dist/components/history/code-block.d.ts +27 -19
- package/dist/components/history/code-block.d.ts.map +1 -1
- package/dist/components/history/entry.d.ts +4 -2
- package/dist/components/history/entry.d.ts.map +1 -1
- package/dist/components/history/index.d.ts +4 -4
- package/dist/components/history/index.d.ts.map +1 -1
- package/dist/components/history/replay.d.ts +1 -1
- package/dist/components/history/replay.d.ts.map +1 -1
- package/dist/components/history/tool-card.d.ts +2 -2
- package/dist/components/history/tool-card.d.ts.map +1 -1
- package/dist/components/history/tool-group.d.ts +73 -0
- package/dist/components/history/tool-group.d.ts.map +1 -0
- package/dist/components/history/types.d.ts +3 -156
- package/dist/components/history/types.d.ts.map +1 -1
- package/dist/components/history/utils.d.ts +2 -0
- package/dist/components/history/utils.d.ts.map +1 -1
- package/dist/components/history.d.ts +1 -1
- package/dist/components/history.d.ts.map +1 -1
- package/dist/components/input.d.ts.map +1 -1
- package/dist/components/kanban-panel.d.ts +1 -1
- package/dist/components/kanban-panel.d.ts.map +1 -1
- package/dist/components/mailbox-panel.d.ts +1 -0
- package/dist/components/mailbox-panel.d.ts.map +1 -1
- package/dist/components/mode-picker.d.ts +1 -1
- package/dist/components/mode-picker.d.ts.map +1 -1
- package/dist/components/process-list.d.ts.map +1 -1
- package/dist/components/resume-picker.d.ts +1 -1
- package/dist/components/resume-picker.d.ts.map +1 -1
- package/dist/components/scrollable-history.d.ts +61 -33
- package/dist/components/scrollable-history.d.ts.map +1 -1
- package/dist/components/settings-picker.d.ts +9 -2
- package/dist/components/settings-picker.d.ts.map +1 -1
- package/dist/components/status-bar-chips.d.ts +4 -1
- package/dist/components/status-bar-chips.d.ts.map +1 -1
- package/dist/components/status-bar.d.ts +22 -4
- package/dist/components/status-bar.d.ts.map +1 -1
- package/dist/components/statusline-picker.d.ts +1 -1
- package/dist/components/statusline-picker.d.ts.map +1 -1
- package/dist/components/todos-monitor.d.ts +1 -1
- package/dist/components/todos-monitor.d.ts.map +1 -1
- package/dist/context-fill.d.ts +61 -0
- package/dist/context-fill.d.ts.map +1 -0
- package/dist/context-slash.d.ts +1 -1
- package/dist/context-slash.d.ts.map +1 -1
- package/dist/cron-slash.d.ts +2 -1
- package/dist/cron-slash.d.ts.map +1 -1
- package/dist/exit-slash.d.ts +4 -1
- package/dist/exit-slash.d.ts.map +1 -1
- package/dist/heap-watchdog.d.ts +6 -2
- package/dist/heap-watchdog.d.ts.map +1 -1
- package/dist/height-cache.d.ts +58 -10
- package/dist/height-cache.d.ts.map +1 -1
- package/dist/history-entry.d.ts +175 -0
- package/dist/history-entry.d.ts.map +1 -0
- package/dist/history-retention.d.ts +15 -3
- package/dist/history-retention.d.ts.map +1 -1
- package/dist/hit-test.d.ts +4 -0
- package/dist/hit-test.d.ts.map +1 -1
- package/dist/hooks/subagent-history-format.d.ts +45 -0
- package/dist/hooks/subagent-history-format.d.ts.map +1 -0
- package/dist/hooks/use-app-picker-keys.d.ts +36 -0
- package/dist/hooks/use-app-picker-keys.d.ts.map +1 -0
- package/dist/hooks/use-auth-panel.d.ts +1 -1
- package/dist/hooks/use-auth-panel.d.ts.map +1 -1
- package/dist/hooks/use-autonomous-coordinator.d.ts +1 -1
- package/dist/hooks/use-autonomous-coordinator.d.ts.map +1 -1
- package/dist/hooks/use-autonomy-drivers.d.ts +25 -0
- package/dist/hooks/use-autonomy-drivers.d.ts.map +1 -0
- package/dist/hooks/use-brain-events.d.ts +1 -1
- package/dist/hooks/use-brain-events.d.ts.map +1 -1
- package/dist/hooks/use-brain-panel.d.ts +2 -2
- package/dist/hooks/use-brain-panel.d.ts.map +1 -1
- package/dist/hooks/use-chip-staleness-guard.d.ts +83 -0
- package/dist/hooks/use-chip-staleness-guard.d.ts.map +1 -0
- package/dist/hooks/use-client-telemetry.d.ts +17 -0
- package/dist/hooks/use-client-telemetry.d.ts.map +1 -0
- package/dist/hooks/use-core-tui-commands.d.ts +39 -0
- package/dist/hooks/use-core-tui-commands.d.ts.map +1 -0
- package/dist/hooks/use-director-fleet-bridge.d.ts +5 -1
- package/dist/hooks/use-director-fleet-bridge.d.ts.map +1 -1
- package/dist/hooks/use-exit-command.d.ts +2 -1
- package/dist/hooks/use-exit-command.d.ts.map +1 -1
- package/dist/hooks/use-file-search.d.ts +3 -2
- package/dist/hooks/use-file-search.d.ts.map +1 -1
- package/dist/hooks/use-fleet-generation-gate.d.ts +2 -0
- package/dist/hooks/use-fleet-generation-gate.d.ts.map +1 -1
- package/dist/hooks/use-git-session-status.d.ts +11 -0
- package/dist/hooks/use-git-session-status.d.ts.map +1 -0
- package/dist/hooks/use-initial-prompt.d.ts +15 -0
- package/dist/hooks/use-initial-prompt.d.ts.map +1 -0
- package/dist/hooks/use-input-history-persistence.d.ts.map +1 -1
- package/dist/hooks/use-interrupt-ladder.d.ts +29 -0
- package/dist/hooks/use-interrupt-ladder.d.ts.map +1 -0
- package/dist/hooks/use-live-todos.d.ts +1 -1
- package/dist/hooks/use-live-todos.d.ts.map +1 -1
- package/dist/hooks/use-mailbox-view-model.d.ts +13 -0
- package/dist/hooks/use-mailbox-view-model.d.ts.map +1 -0
- package/dist/hooks/use-mode-picker.d.ts +1 -1
- package/dist/hooks/use-mode-picker.d.ts.map +1 -1
- package/dist/hooks/use-next-steps-auto-submit.d.ts +50 -0
- package/dist/hooks/use-next-steps-auto-submit.d.ts.map +1 -0
- package/dist/hooks/use-panel-controllers.d.ts +41 -0
- package/dist/hooks/use-panel-controllers.d.ts.map +1 -0
- package/dist/hooks/use-paste-handling.d.ts +5 -3
- package/dist/hooks/use-paste-handling.d.ts.map +1 -1
- package/dist/hooks/use-picker-keys.d.ts +7 -3
- package/dist/hooks/use-picker-keys.d.ts.map +1 -1
- package/dist/hooks/use-prompt-picker.d.ts.map +1 -1
- package/dist/hooks/use-provider-event-bridge.d.ts +24 -0
- package/dist/hooks/use-provider-event-bridge.d.ts.map +1 -0
- package/dist/hooks/use-queue-manager.d.ts +2 -1
- package/dist/hooks/use-queue-manager.d.ts.map +1 -1
- package/dist/hooks/use-session-interrupt-controller.d.ts +1 -1
- package/dist/hooks/use-session-interrupt-controller.d.ts.map +1 -1
- package/dist/hooks/use-settings-auto-save.d.ts +6 -0
- package/dist/hooks/use-settings-auto-save.d.ts.map +1 -0
- package/dist/hooks/use-slash-picker.d.ts +13 -0
- package/dist/hooks/use-slash-picker.d.ts.map +1 -0
- package/dist/hooks/use-statusbar-view-model.d.ts +54 -0
- package/dist/hooks/use-statusbar-view-model.d.ts.map +1 -0
- package/dist/hooks/use-subagent-events.d.ts +2 -1
- package/dist/hooks/use-subagent-events.d.ts.map +1 -1
- package/dist/hooks/use-terminal-render-lifecycle.d.ts +4 -0
- package/dist/hooks/use-terminal-render-lifecycle.d.ts.map +1 -0
- package/dist/hooks/use-token-counter-refresh.d.ts +2 -1
- package/dist/hooks/use-token-counter-refresh.d.ts.map +1 -1
- package/dist/hooks/use-tui-activity.d.ts +2 -1
- package/dist/hooks/use-tui-activity.d.ts.map +1 -1
- package/dist/hooks/use-tui-controllers.d.ts +1 -5
- package/dist/hooks/use-tui-controllers.d.ts.map +1 -1
- package/dist/hooks/use-tui-environment-state.d.ts +42 -0
- package/dist/hooks/use-tui-environment-state.d.ts.map +1 -0
- package/dist/hooks/use-tui-event-bridge.d.ts +1 -1
- package/dist/hooks/use-tui-event-bridge.d.ts.map +1 -1
- package/dist/hooks/use-tui-slash-commands.d.ts +28 -0
- package/dist/hooks/use-tui-slash-commands.d.ts.map +1 -0
- package/dist/hooks/use-working-dir-chip.d.ts +1 -1
- package/dist/hooks/use-working-dir-chip.d.ts.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33772 -29744
- package/dist/index.js.map +4 -4
- package/dist/ink.d.ts +1 -1
- package/dist/ink.d.ts.map +1 -1
- package/dist/input-key-router.d.ts +35 -0
- package/dist/input-key-router.d.ts.map +1 -0
- package/dist/input-validation.d.ts +1 -1
- package/dist/input-validation.d.ts.map +1 -1
- package/dist/kanban-slash.d.ts +1 -1
- package/dist/kanban-slash.d.ts.map +1 -1
- package/dist/kill-slash.d.ts +1 -1
- package/dist/kill-slash.d.ts.map +1 -1
- package/dist/layout-engine.d.ts +112 -0
- package/dist/layout-engine.d.ts.map +1 -0
- package/dist/layout-store.d.ts +89 -0
- package/dist/layout-store.d.ts.map +1 -0
- package/dist/markdown.d.ts.map +1 -1
- package/dist/memory-context-monitor.d.ts +6 -1
- package/dist/memory-context-monitor.d.ts.map +1 -1
- package/dist/memory-slash.d.ts +2 -2
- package/dist/memory-slash.d.ts.map +1 -1
- package/dist/mouse.d.ts +13 -4
- package/dist/mouse.d.ts.map +1 -1
- package/dist/overlay-key-router.d.ts +43 -0
- package/dist/overlay-key-router.d.ts.map +1 -0
- package/dist/paste-accumulator.d.ts +10 -4
- package/dist/paste-accumulator.d.ts.map +1 -1
- package/dist/ps-slash.d.ts +1 -1
- package/dist/ps-slash.d.ts.map +1 -1
- package/dist/queue-slash.d.ts +2 -2
- package/dist/queue-slash.d.ts.map +1 -1
- package/dist/reducers/activity.d.ts +10 -0
- package/dist/reducers/activity.d.ts.map +1 -0
- package/dist/reducers/composer.d.ts +10 -0
- package/dist/reducers/composer.d.ts.map +1 -0
- package/dist/reducers/conversation.d.ts +10 -0
- package/dist/reducers/conversation.d.ts.map +1 -0
- package/dist/reducers/dialogs.d.ts +10 -0
- package/dist/reducers/dialogs.d.ts.map +1 -0
- package/dist/reducers/fleet.d.ts.map +1 -1
- package/dist/reducers/helpers.d.ts +8 -1
- package/dist/reducers/helpers.d.ts.map +1 -1
- package/dist/reducers/panel-pickers.d.ts +10 -0
- package/dist/reducers/panel-pickers.d.ts.map +1 -0
- package/dist/reducers/settings-panel.d.ts +10 -0
- package/dist/reducers/settings-panel.d.ts.map +1 -0
- package/dist/reducers/settings-values.d.ts +10 -0
- package/dist/reducers/settings-values.d.ts.map +1 -0
- package/dist/reducers/workspace-panels.d.ts +10 -0
- package/dist/reducers/workspace-panels.d.ts.map +1 -0
- package/dist/rehydrate-history.d.ts +1 -1
- package/dist/rehydrate-history.d.ts.map +1 -1
- package/dist/run-blocks-controller.d.ts +30 -0
- package/dist/run-blocks-controller.d.ts.map +1 -0
- package/dist/run-tui.d.ts +22 -20
- package/dist/run-tui.d.ts.map +1 -1
- package/dist/scroll-anchor.d.ts +103 -0
- package/dist/scroll-anchor.d.ts.map +1 -0
- package/dist/settings-contracts.d.ts +58 -0
- package/dist/settings-contracts.d.ts.map +1 -0
- package/dist/shared-types.d.ts +17 -0
- package/dist/shared-types.d.ts.map +1 -0
- package/dist/slash-command-search.d.ts +1 -1
- package/dist/slash-command-search.d.ts.map +1 -1
- package/dist/submit-controller.d.ts +73 -0
- package/dist/submit-controller.d.ts.map +1 -0
- package/dist/submit-prompt-refinement.d.ts +30 -0
- package/dist/submit-prompt-refinement.d.ts.map +1 -0
- package/dist/terminal-title.d.ts +1 -1
- package/dist/terminal-title.d.ts.map +1 -1
- package/dist/theme.d.ts +6 -0
- package/dist/theme.d.ts.map +1 -1
- package/dist/token-previews.d.ts +44 -0
- package/dist/token-previews.d.ts.map +1 -0
- package/dist/tui-host-capabilities.d.ts +66 -0
- package/dist/tui-host-capabilities.d.ts.map +1 -0
- package/dist/ui-contracts.d.ts +136 -0
- package/dist/ui-contracts.d.ts.map +1 -0
- package/dist/ui-glyphs.d.ts +1 -0
- package/dist/ui-glyphs.d.ts.map +1 -1
- package/package.json +13 -6
|
@@ -1,107 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* Brain panel data model — pure types + row derivation shared by the
|
|
3
|
-
* reducer (cursor clamping), the key hook (action dispatch), and the
|
|
4
|
-
* component (render). Mirrors the auth-panel pattern: the TUI never
|
|
5
|
-
* touches config files — every mutation goes through the host bridge,
|
|
6
|
-
* which the CLI implements on top of its BrainRuntime (live apply +
|
|
7
|
-
* persist to the global config).
|
|
8
|
-
*/
|
|
9
|
-
import type { BrainRiskLevel } from './brain-panel.js';
|
|
10
|
-
/** One configured pool entry / council voter, display-mapped. */
|
|
11
|
-
export interface BrainPanelVoter {
|
|
12
|
-
label: string;
|
|
13
|
-
persona?: string | undefined;
|
|
14
|
-
veto?: boolean | undefined;
|
|
15
|
-
weight?: number | undefined;
|
|
16
|
-
}
|
|
17
|
-
/** Display-mapped snapshot of the live Brain settings. */
|
|
18
|
-
export interface BrainPanelSettings {
|
|
19
|
-
mode: 'headless' | 'interactive';
|
|
20
|
-
riskLevel: BrainRiskLevel;
|
|
21
|
-
strategy: 'fallback' | 'round-robin';
|
|
22
|
-
decisionTimeoutMs?: number | undefined;
|
|
23
|
-
humanTimeoutMs?: number | undefined;
|
|
24
|
-
/** Configured pool entries as compact "provider/model" labels. */
|
|
25
|
-
pool: string[];
|
|
26
|
-
/** Resolved pool labels from the last assembly (≤ pool.length). */
|
|
27
|
-
poolResolved: string[];
|
|
28
|
-
usingSessionModel: boolean;
|
|
29
|
-
councilEnabled: boolean;
|
|
30
|
-
councilMinRisk: 'medium' | 'high' | 'critical';
|
|
31
|
-
/** Explicitly configured voters (empty = seats derive from the pool). */
|
|
32
|
-
voters: BrainPanelVoter[];
|
|
33
|
-
/** Effective council seat labels (empty = council disabled). */
|
|
34
|
-
councilSeats: string[];
|
|
35
|
-
judgeLabel?: string | undefined;
|
|
36
|
-
ledgerEnabled: boolean;
|
|
37
|
-
autoDenyAfterFailures?: number | undefined;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Host bridge implemented by the CLI. Every setter returns an error string
|
|
41
|
-
* (shown as the panel hint) or null on success; all setters apply LIVE and
|
|
42
|
-
* persist to the active profile config. Model SELECTION is not part of this
|
|
43
|
-
* bridge — the panel uses the shared /model picker via requestModelPick.
|
|
44
|
-
*/
|
|
45
|
-
export interface BrainPanelHost {
|
|
46
|
-
getSettings(): BrainPanelSettings;
|
|
47
|
-
setMode(mode: 'headless' | 'interactive'): Promise<string | null>;
|
|
48
|
-
setRisk(level: BrainRiskLevel): Promise<string | null>;
|
|
49
|
-
setStrategy(strategy: 'fallback' | 'round-robin'): Promise<string | null>;
|
|
50
|
-
setDecisionTimeout(ms: number | undefined): Promise<string | null>;
|
|
51
|
-
setHumanTimeout(ms: number | undefined): Promise<string | null>;
|
|
52
|
-
addPoolModel(providerId: string, model: string): Promise<string | null>;
|
|
53
|
-
removePoolModel(index: number): Promise<string | null>;
|
|
54
|
-
clearPool(): Promise<string | null>;
|
|
55
|
-
setCouncilEnabled(on: boolean): Promise<string | null>;
|
|
56
|
-
setCouncilMinRisk(risk: 'medium' | 'high' | 'critical'): Promise<string | null>;
|
|
57
|
-
addVoter(providerId: string, model: string): Promise<string | null>;
|
|
58
|
-
removeVoter(index: number): Promise<string | null>;
|
|
59
|
-
cycleVoterPersona(index: number): Promise<string | null>;
|
|
60
|
-
toggleVoterVeto(index: number): Promise<string | null>;
|
|
61
|
-
setJudge(providerId: string, model: string): Promise<string | null>;
|
|
62
|
-
clearJudge(): Promise<string | null>;
|
|
63
|
-
setLedgerEnabled(on: boolean): Promise<string | null>;
|
|
64
|
-
setAutoDeny(count: number | undefined): Promise<string | null>;
|
|
65
|
-
}
|
|
66
|
-
/** One selectable row of the settings view. */
|
|
67
|
-
export type BrainPanelRow = {
|
|
68
|
-
kind: 'mode';
|
|
69
|
-
} | {
|
|
70
|
-
kind: 'risk';
|
|
71
|
-
} | {
|
|
72
|
-
kind: 'strategy';
|
|
73
|
-
} | {
|
|
74
|
-
kind: 'timeout';
|
|
75
|
-
} | {
|
|
76
|
-
kind: 'humanTimeout';
|
|
77
|
-
} | {
|
|
78
|
-
kind: 'poolModel';
|
|
79
|
-
index: number;
|
|
80
|
-
} | {
|
|
81
|
-
kind: 'poolAdd';
|
|
82
|
-
} | {
|
|
83
|
-
kind: 'councilToggle';
|
|
84
|
-
} | {
|
|
85
|
-
kind: 'councilMinRisk';
|
|
86
|
-
} | {
|
|
87
|
-
kind: 'voter';
|
|
88
|
-
index: number;
|
|
89
|
-
} | {
|
|
90
|
-
kind: 'voterAdd';
|
|
91
|
-
} | {
|
|
92
|
-
kind: 'judge';
|
|
93
|
-
} | {
|
|
94
|
-
kind: 'ledgerToggle';
|
|
95
|
-
} | {
|
|
96
|
-
kind: 'autoDeny';
|
|
97
|
-
};
|
|
98
|
-
/** Derive the selectable rows for a settings snapshot. */
|
|
99
|
-
export declare function brainPanelRows(settings: BrainPanelSettings): BrainPanelRow[];
|
|
100
|
-
/** Preset ladders for ←/→ cycling on numeric rows. */
|
|
101
|
-
export declare const DECISION_TIMEOUT_PRESETS: ReadonlyArray<number | undefined>;
|
|
102
|
-
export declare const HUMAN_TIMEOUT_PRESETS: ReadonlyArray<number | undefined>;
|
|
103
|
-
export declare const AUTO_DENY_PRESETS: ReadonlyArray<number | undefined>;
|
|
104
|
-
export declare const PERSONA_CYCLE: readonly ['executor', 'skeptic', 'auditor'];
|
|
105
|
-
/** Cycle helper: step through a preset ladder from the current value. */
|
|
106
|
-
export declare function cyclePreset<T>(presets: ReadonlyArray<T>, current: T, delta: number): T;
|
|
1
|
+
export * from '../brain-panel-model.js';
|
|
107
2
|
//# sourceMappingURL=brain-panel-model.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain-panel-model.d.ts","sourceRoot":"","sources":["../../src/components/brain-panel-model.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"brain-panel-model.d.ts","sourceRoot":"","sources":["../../src/components/brain-panel-model.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC"}
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
|
+
import type { BrainLogEntry, BrainRiskLevel } from '../brain-contracts.js';
|
|
3
|
+
export type { BrainLogEntry, BrainRiskLevel } from '../brain-contracts.js';
|
|
2
4
|
import { type BrainPanelSettings } from './brain-panel-model.js';
|
|
3
|
-
export type BrainRiskLevel = 'off' | 'low' | 'medium' | 'high' | 'all';
|
|
4
|
-
export interface BrainLogEntry {
|
|
5
|
-
kind: string;
|
|
6
|
-
question: string;
|
|
7
|
-
outcome: string;
|
|
8
|
-
age: string;
|
|
9
|
-
}
|
|
10
5
|
export interface BrainPanelProps {
|
|
11
6
|
riskLevel: BrainRiskLevel;
|
|
12
7
|
log: BrainLogEntry[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain-panel.d.ts","sourceRoot":"","sources":["../../src/components/brain-panel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,
|
|
1
|
+
{"version":3,"file":"brain-panel.d.ts","sourceRoot":"","sources":["../../src/components/brain-panel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAKL,KAAK,kBAAkB,EAIxB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,cAAc,CAAC;IAC1B,GAAG,EAAE,aAAa,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,sFAAsF;IACtF,IAAI,CAAC,EAAE,UAAU,GAAG,KAAK,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC1C,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC5B;AA6ND,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,GAAG,EACH,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,IAAI,GACL,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,CAgHtC"}
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
import { type AnimationStyle } from './animation-style.js';
|
|
3
|
+
export interface ComposerActivityIconProps {
|
|
4
|
+
status: ComposerStatus;
|
|
5
|
+
/** Glyph shown when the agent is idle (the flat brand mark). */
|
|
6
|
+
idleGlyph: string;
|
|
7
|
+
/** Recolours the resting/pulsing glyph to the error tone while aborting. */
|
|
8
|
+
disabled: boolean;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Isolated, self-animating activity glyph for the composer top rail. Idle →
|
|
12
|
+
* flat brand glyph (inherits the rail's brand colour); busy → a size-and-colour
|
|
13
|
+
* pulse. Always exactly one column wide so the rail geometry never shifts.
|
|
14
|
+
*/
|
|
15
|
+
export declare function ComposerActivityIcon({ status, idleGlyph, disabled, }: ComposerActivityIconProps): React.ReactElement;
|
|
3
16
|
/**
|
|
4
17
|
* Composer status descriptor. Distinct from the raw runtime status so the
|
|
5
18
|
* chip's render (and its reserved width) is driven by one small, testable
|
|
@@ -47,9 +60,9 @@ export interface ComposerStatusChipProps {
|
|
|
47
60
|
reservedWidth: number;
|
|
48
61
|
}
|
|
49
62
|
/**
|
|
50
|
-
* Isolated, self-animating composer status chip.
|
|
51
|
-
* so animation re-renders never propagate into <Input>. Renders
|
|
52
|
-
* idle/confirm/aborting/queued and
|
|
63
|
+
* Isolated, self-animating composer status chip. Uses Ink's shared animation
|
|
64
|
+
* scheduler so animation re-renders never propagate into <Input>. Renders
|
|
65
|
+
* flat text for idle/confirm/aborting/queued and an animated working word.
|
|
53
66
|
*/
|
|
54
67
|
export declare function ComposerStatusChip({ status, animationStyle, reservedWidth, }: ComposerStatusChipProps): React.ReactElement;
|
|
55
68
|
//# sourceMappingURL=composer-status-chip.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composer-status-chip.d.ts","sourceRoot":"","sources":["../../src/components/composer-status-chip.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"composer-status-chip.d.ts","sourceRoot":"","sources":["../../src/components/composer-status-chip.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EACL,KAAK,cAAc,EAWpB,MAAM,sBAAsB,CAAC;AAmD9B,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,cAAc,CAAC;IACvB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,SAAS,EACT,QAAQ,GACT,EAAE,yBAAyB,GAAG,KAAK,CAAC,YAAY,CA2BhD;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,cAAc,CAQjB;AAqBD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAM1E;AA4FD,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,cAAc,CAAC;IACvB,8EAA8E;IAC9E,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC;IACzC,gFAAgF;IAChF,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,cAAc,EACd,aAAa,GACd,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CA4C9C"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ContextBreakdown } from '@wrongstack/core';
|
|
1
|
+
import type { ContextBreakdown } from '@wrongstack/core/utils';
|
|
2
2
|
import type React from 'react';
|
|
3
3
|
import type { MemoryContextMonitorState } from '../memory-context-monitor.js';
|
|
4
4
|
export interface ContextPanelData {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-panel.d.ts","sourceRoot":"","sources":["../../src/components/context-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"context-panel.d.ts","sourceRoot":"","sources":["../../src/components/context-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAiB9E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACxC,YAAY,EAAE,KAAK,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;QAChC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC5B,CAAC,CAAC;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,yBAAyB,CAAC;CAC1C;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AA2oBD,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CA0IrF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coordinator-panel.d.ts","sourceRoot":"","sources":["../../src/components/coordinator-panel.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"coordinator-panel.d.ts","sourceRoot":"","sources":["../../src/components/coordinator-panel.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAa7C,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAClC,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAgCD,wBAAgB,gBAAgB,CAAC,EAC/B,WAAW,EACX,OAAO,EACP,OAAO,GACR,EAAE,qBAAqB,GAAG,KAAK,CAAC,YAAY,CAqK5C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-picker.d.ts","sourceRoot":"","sources":["../../src/components/design-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"design-picker.d.ts","sourceRoot":"","sources":["../../src/components/design-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAsB7F"}
|
|
@@ -2,6 +2,7 @@ import type React from 'react';
|
|
|
2
2
|
export interface ExitConfirmPanelProps {
|
|
3
3
|
leaderActive: boolean;
|
|
4
4
|
subagentCount: number;
|
|
5
|
+
backgroundCount?: number | undefined;
|
|
5
6
|
}
|
|
6
7
|
export interface ExitConfirmationKey {
|
|
7
8
|
escape?: boolean | undefined;
|
|
@@ -24,5 +25,5 @@ export declare function exitConfirmationDecision(input: string, key: ExitConfirm
|
|
|
24
25
|
* active fleet obvious so the user understands what `/exit` would tear down
|
|
25
26
|
* before they press Enter.
|
|
26
27
|
*/
|
|
27
|
-
export declare function ExitConfirmPanel({ leaderActive, subagentCount, }: ExitConfirmPanelProps): React.ReactElement;
|
|
28
|
+
export declare function ExitConfirmPanel({ leaderActive, subagentCount, backgroundCount, }: ExitConfirmPanelProps): React.ReactElement;
|
|
28
29
|
//# sourceMappingURL=exit-confirm-panel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exit-confirm-panel.d.ts","sourceRoot":"","sources":["../../src/components/exit-confirm-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"exit-confirm-panel.d.ts","sourceRoot":"","sources":["../../src/components/exit-confirm-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,MAAM,wBAAwB,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;AAE3D;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,mBAAmB,GACvB,wBAAwB,CAM1B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,YAAY,EACZ,aAAa,EACb,eAAmB,GACpB,EAAE,qBAAqB,GAAG,KAAK,CAAC,YAAY,CAkC5C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fleet-monitor.d.ts","sourceRoot":"","sources":["../../src/components/fleet-monitor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"fleet-monitor.d.ts","sourceRoot":"","sources":["../../src/components/fleet-monitor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkBlD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpC,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,aAAa,CAAC,EAAE;QACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,SAAS,GAAG,gBAAgB,GAAG,QAAQ,GAAG,IAAI,CAAC;QAC/D,QAAQ,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC3E,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;KAC1B,GAAG,IAAI,CAAC;CACV;AAaD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,EAC1C,GAAG,EAAE,MAAM,EACX,IAAI,SAAK,EACT,KAAK,SAAO,GACX,MAAM,EAAE,CAWV;AAED,sDAAsD;AACtD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAUlD;AAaD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAQvE;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,SAAS,EACT,WAAW,EACX,aAAiB,EACjB,OAAO,EACP,aAAa,GACd,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CA0OxC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { TodoItem } from '@wrongstack/core';
|
|
1
|
+
import type { TodoItem } from '@wrongstack/core/agent';
|
|
2
2
|
import type React from 'react';
|
|
3
|
-
import type { FleetEntry } from '../app.js';
|
|
3
|
+
import type { FleetEntry } from '../app-state.js';
|
|
4
4
|
export interface FleetPanelProps {
|
|
5
5
|
/** Per-subagent state, keyed by subagentId. */
|
|
6
6
|
entries: Record<string, FleetEntry>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fleet-panel.d.ts","sourceRoot":"","sources":["../../src/components/fleet-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"fleet-panel.d.ts","sourceRoot":"","sources":["../../src/components/fleet-panel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
import type { HistoryEntry } from './types.js';
|
|
3
|
+
export declare function brandMarkPinkRow(frame: number): 0 | 1;
|
|
4
|
+
export declare const WORDMARK_LINES: ReadonlyArray<string>;
|
|
3
5
|
export declare function bannerGradientColor(position: number, length: number): string;
|
|
4
|
-
export declare function Banner({ entry, termWidth, }: {
|
|
6
|
+
export declare function Banner({ entry, termWidth, termHeight, }: {
|
|
5
7
|
entry: Extract<HistoryEntry, {
|
|
6
8
|
kind: 'banner';
|
|
7
9
|
}>;
|
|
8
10
|
termWidth?: number;
|
|
11
|
+
termHeight?: number;
|
|
9
12
|
}): React.ReactElement;
|
|
10
13
|
//# sourceMappingURL=banner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/components/history/banner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/components/history/banner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAuB,YAAY,EAAE,MAAM,YAAY,CAAC;AA+BpE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,CAGrD;AAoED,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,MAAM,CAShD,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAG5E;AAgOD,wBAAgB,MAAM,CAAC,EACrB,KAAK,EACL,SAA8B,EAC9B,UAAU,GACX,EAAE;IACD,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,KAAK,CAAC,YAAY,CA6IrB"}
|
|
@@ -11,25 +11,29 @@ export interface DiffFilePreview {
|
|
|
11
11
|
path: string;
|
|
12
12
|
preview: DiffPreview;
|
|
13
13
|
}
|
|
14
|
+
interface OmittedDiffSummary {
|
|
15
|
+
fileCount: number;
|
|
16
|
+
added: number;
|
|
17
|
+
removed: number;
|
|
18
|
+
}
|
|
19
|
+
/** Renderable file previews plus aggregate data for files omitted by the cap. */
|
|
20
|
+
export type DiffFilePreviews = DiffFilePreview[] & {
|
|
21
|
+
omitted?: OmittedDiffSummary | undefined;
|
|
22
|
+
};
|
|
14
23
|
/** Max code-block lines rendered before a "+N more" footer. */
|
|
15
24
|
export declare const MAX_CODE_LINES = 80;
|
|
16
25
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* still need a hard cap (e.g. the approval dialog's tighter box) pass
|
|
23
|
-
* their own number explicitly to `parseUnifiedDiff`; this default is
|
|
24
|
-
* for the unbounded read-everything path.
|
|
25
|
-
*
|
|
26
|
-
* Set to `Number.POSITIVE_INFINITY` so `parseUnifiedDiff`'s `if (all.length
|
|
27
|
-
* <= maxLines)` branch always matches and the slice/footer machinery
|
|
28
|
-
* becomes a no-op. The `DIFF_LINE_SAFETY_CAP` below still bounds
|
|
29
|
-
* individual row text length, which protects against pathological
|
|
30
|
-
* one-liners (minified bundles, huge JSON blobs).
|
|
26
|
+
* Hard ceiling for one file's rendered diff preview. Diff rows are React/Ink
|
|
27
|
+
* elements and therefore retained by the active virtual-history window; an
|
|
28
|
+
* unbounded preview lets a single generated-file edit defeat virtualization.
|
|
29
|
+
* Totals for the whole diff remain available through `added`/`removed`, while
|
|
30
|
+
* the footer reports the hidden portion.
|
|
31
31
|
*/
|
|
32
|
-
export declare const DIFF_MAX_LINES
|
|
32
|
+
export declare const DIFF_MAX_LINES = 200;
|
|
33
|
+
/** Maximum number of per-file diff blocks retained for one tool entry. */
|
|
34
|
+
export declare const MULTI_DIFF_MAX_FILES = 20;
|
|
35
|
+
/** Maximum rendered diff rows retained across every file in one tool entry. */
|
|
36
|
+
export declare const MULTI_DIFF_MAX_ROWS = 400;
|
|
33
37
|
/** Syntax-highlighted, framed code block. */
|
|
34
38
|
export declare function CodeBlock({ code, lang, contentWidth, }: {
|
|
35
39
|
code: string;
|
|
@@ -60,8 +64,12 @@ export interface MultiDiffSummary {
|
|
|
60
64
|
removed: number;
|
|
61
65
|
hiddenAdded: number;
|
|
62
66
|
hiddenRemoved: number;
|
|
63
|
-
/** Number of files whose preview was truncated
|
|
67
|
+
/** Number of rendered files whose preview was truncated (has hidden rows).
|
|
68
|
+
* Does not include files omitted entirely by the multi-file render ceiling;
|
|
69
|
+
* those are tracked separately via {@link omittedFiles}. */
|
|
64
70
|
truncatedFiles: number;
|
|
71
|
+
/** Files omitted entirely by the multi-file render ceiling. Guaranteed non-negative. */
|
|
72
|
+
omittedFiles: number;
|
|
65
73
|
}
|
|
66
74
|
/**
|
|
67
75
|
* Sum the totals of a list of per-file diff previews. Files that were
|
|
@@ -69,7 +77,7 @@ export interface MultiDiffSummary {
|
|
|
69
77
|
* excluded from the rollup so the summary reflects what the user will
|
|
70
78
|
* actually see rendered below.
|
|
71
79
|
*/
|
|
72
|
-
export declare function summarizeMultiFileDiffs(items:
|
|
80
|
+
export declare function summarizeMultiFileDiffs(items: DiffFilePreviews): MultiDiffSummary;
|
|
73
81
|
/**
|
|
74
82
|
* Format a multi-file diff summary as a single dim italic line, suitable
|
|
75
83
|
* for rendering above the per-file blocks. Mirrors the per-file footer's
|
|
@@ -194,7 +202,7 @@ export declare function extractDiffPreview(toolName: string, output: string | un
|
|
|
194
202
|
* {@link extractMultiFileDiffs} instead — this function is kept for the
|
|
195
203
|
* narrower replace-specific test cases.
|
|
196
204
|
*/
|
|
197
|
-
export declare function extractReplaceDiffs(toolName: string, output: string | undefined, input?: unknown | undefined):
|
|
205
|
+
export declare function extractReplaceDiffs(toolName: string, output: string | undefined, input?: unknown | undefined): DiffFilePreviews | undefined;
|
|
198
206
|
/**
|
|
199
207
|
* Pull a list of per-file diffs from a tool result that may span multiple
|
|
200
208
|
* files. Handles:
|
|
@@ -213,5 +221,5 @@ export declare function extractReplaceDiffs(toolName: string, output: string | u
|
|
|
213
221
|
* an empty diff after trimming — the caller treats both as "nothing to
|
|
214
222
|
* render" but the distinction is useful in tests.
|
|
215
223
|
*/
|
|
216
|
-
export declare function extractMultiFileDiffs(toolName: string, output: string | undefined, input?: unknown | undefined):
|
|
224
|
+
export declare function extractMultiFileDiffs(toolName: string, output: string | undefined, input?: unknown | undefined): DiffFilePreviews | undefined;
|
|
217
225
|
//# sourceMappingURL=code-block.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../../../src/components/history/code-block.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAGL,KAAK,IAAI,EAET,KAAK,KAAK,EACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEjB,MAAM,6BAA6B,CAAC;AAarC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1F;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../../../src/components/history/code-block.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { TodoItem } from '@wrongstack/core/agent';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { HistoryEntry } from './types.js';
|
|
4
|
-
export declare const Entry: React.MemoExoticComponent<({ entry, termWidth, setSuggestions, autonomyMode, multiDiffSummaryThreshold, todos, showModelReasoning, }: {
|
|
4
|
+
export declare const Entry: React.MemoExoticComponent<({ entry, termWidth, termHeight, setSuggestions, autonomyMode, multiDiffSummaryThreshold, todos, showModelReasoning, }: {
|
|
5
5
|
entry: HistoryEntry;
|
|
6
6
|
termWidth: number;
|
|
7
|
+
/** Available managed-history rows; used by height-aware entries such as the banner. */
|
|
8
|
+
termHeight?: number | undefined;
|
|
7
9
|
/** Store parsed next steps in the shared suggestion store so /next 1 works. */
|
|
8
10
|
setSuggestions?: ((steps: string[]) => void) | undefined;
|
|
9
11
|
/** Current autonomy mode — when 'auto', first step shows an auto marker. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../../src/components/history/entry.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../../src/components/history/entry.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,KAA6B,MAAM,OAAO,CAAC;AAgBlD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4G/C,eAAO,MAAM,KAAK,oJASf;IACD,KAAK,EAAE,YAAY,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,uFAAuF;IACvF,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,+EAA+E;IAC/E,cAAc,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACzD,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC;gFAC4E;IAC5E,yBAAyB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C;;uDAEmD;IACnD,KAAK,CAAC,EAAE,SAAS,QAAQ,EAAE,GAAG,SAAS,CAAC;IACxC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC1C,KAAG,KAAK,CAAC,YAAY,CAqqBpB,CAAC"}
|
|
@@ -3,13 +3,13 @@ import type { HistoryProps } from './types.js';
|
|
|
3
3
|
export type { AutonomyAgentStatus, HistoryEntry, HistoryProps } from './types.js';
|
|
4
4
|
export type { BodySegment } from './types.js';
|
|
5
5
|
export { Banner } from './banner.js';
|
|
6
|
-
export { CodeBlock, DiffBlock, DiffFileBlock, type DiffFilePreview, type DiffLineKind, type DiffLineRow, type DiffPreview, type MultiDiffSummary, MULTI_DIFF_SUMMARY_THRESHOLD, extractDiffPreview, extractMultiFileDiffs, extractReplaceDiffs, formatDiffStats, formatMultiDiffSummary, parseUnifiedDiff, summarizeMultiFileDiffs, } from './code-block.js';
|
|
6
|
+
export { CodeBlock, DiffBlock, DiffFileBlock, type DiffFilePreview, type DiffLineKind, type DiffLineRow, type DiffPreview, type MultiDiffSummary, MULTI_DIFF_MAX_FILES, MULTI_DIFF_MAX_ROWS, MULTI_DIFF_SUMMARY_THRESHOLD, extractDiffPreview, extractMultiFileDiffs, extractReplaceDiffs, formatDiffStats, formatMultiDiffSummary, parseUnifiedDiff, summarizeMultiFileDiffs, } from './code-block.js';
|
|
7
7
|
export { Entry } from './entry.js';
|
|
8
8
|
export { MESSAGE_PANEL_BORDER_WIDTH, MESSAGE_PANEL_CHROME_WIDTH, MESSAGE_PANEL_MARGIN, ASSISTANT_TAIL_HEIGHT, AssistantBody, AssistantTail, assistantContentWidth, assistantTailRows, splitFencedBlocks } from './assistant.js';
|
|
9
|
-
export { shortenPath, previewArgs, previewOutput, fmtTok, fmtDuration, fmtBytes, truncMid, stringOf, numOf, tryParseJson, scanNumberedRange, countLines, firstNonEmpty, formatMatchHit, formatToolArgs, formatToolOutput, formatToolVisualOutput, type ToolVisualLine, type ToolVisualLineKind, ToolOutputLines, ToolStreamBox, streamBoxRows, MAX_STREAM_DISPLAY_CHARS, tailForDisplay, } from './utils.js';
|
|
9
|
+
export { shortenPath, previewArgs, previewOutput, fmtTok, fmtDuration, fmtBytes, truncMid, stringOf, numOf, tryParseJson, scanNumberedRange, countLines, firstNonEmpty, formatMatchHit, formatToolArgs, formatToolOutput, formatToolVisualOutput, type ToolVisualLine, type ToolVisualLineKind, ToolOutputLines, ToolStreamBox, streamBoxRows, toolStreamBoxHeight, MAX_STREAM_DISPLAY_CHARS, tailForDisplay, } from './utils.js';
|
|
10
10
|
/**
|
|
11
11
|
* History component — renders committed entries via <Static> so they
|
|
12
|
-
* flow into terminal scrollback
|
|
12
|
+
* flow into terminal scrollback.
|
|
13
13
|
*
|
|
14
14
|
* Wrapped in `React.memo` so keystrokes in the input buffer (which
|
|
15
15
|
* change `state.buffer`/`state.cursor` in the same reducer) don't
|
|
@@ -17,5 +17,5 @@ export { shortenPath, previewArgs, previewOutput, fmtTok, fmtDuration, fmtBytes,
|
|
|
17
17
|
* primitives or stable reducer references, so default shallow
|
|
18
18
|
* comparison is sufficient.
|
|
19
19
|
*/
|
|
20
|
-
export declare const History: React.MemoExoticComponent<({ entries, generation,
|
|
20
|
+
export declare const History: React.MemoExoticComponent<({ entries, generation, toolStream, setSuggestions, autonomyMode, multiDiffSummaryThreshold, todos, showModelReasoning }: HistoryProps) => React.ReactElement>;
|
|
21
21
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/history/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/history/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI/C,YAAY,EAAE,mBAAmB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAClF,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,SAAS,EACT,SAAS,EACT,aAAa,EACb,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,EAC5B,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAChO,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,MAAM,EACN,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,eAAe,EACf,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,wBAAwB,EACxB,cAAc,GACf,MAAM,YAAY,CAAC;AAIpB;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,sJAAkJ,YAAY,KAAG,KAAK,CAAC,YAAY,CA0HrM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../src/components/history/replay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../src/components/history/replay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAsE/C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,OAAO,EAAE,MAAM,GACd,YAAY,EAAE,CAyHhB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE,CAoC3F"}
|
|
@@ -13,8 +13,8 @@ export interface ToolCardProps {
|
|
|
13
13
|
/**
|
|
14
14
|
* Shared terminal-native anatomy for committed tool results. The open left
|
|
15
15
|
* rail keeps dense output readable without turning every tiny call into a
|
|
16
|
-
* heavy full-width modal, while the
|
|
17
|
-
* to scan in long transcripts.
|
|
16
|
+
* heavy full-width modal, while the compact header makes tool/state/timing
|
|
17
|
+
* easy to scan in long transcripts.
|
|
18
18
|
*/
|
|
19
19
|
export declare function ToolCard({ glyph, color, title, detail, meta, ok, termWidth, hasBody, children, }: ToolCardProps): React.ReactElement;
|
|
20
20
|
//# sourceMappingURL=tool-card.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-card.d.ts","sourceRoot":"","sources":["../../../src/components/history/tool-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,IAAI,EACJ,EAAE,EACF,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE,aAAa,GAAG,KAAK,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"tool-card.d.ts","sourceRoot":"","sources":["../../../src/components/history/tool-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,IAAI,EACJ,EAAE,EACF,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE,aAAa,GAAG,KAAK,CAAC,YAAY,CAyCpC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tool-group — Consecutive same-tool entries grouped under a single header.
|
|
3
|
+
*
|
|
4
|
+
* Instead of rendering N separate tool cards for N consecutive `read` (or
|
|
5
|
+
* `bash`, `grep`, …) calls, this module collapses them into one visual group:
|
|
6
|
+
*
|
|
7
|
+
* ╭─ ◆ read ×5 · 0.5s
|
|
8
|
+
* │ [1] path/to/a.ts …
|
|
9
|
+
* │ [2] path/to/b.tsx …
|
|
10
|
+
* │ …
|
|
11
|
+
* ╰──────────────────────────────────────────
|
|
12
|
+
*
|
|
13
|
+
* The group header carries a count badge and aggregated stats; each sub-entry
|
|
14
|
+
* keeps its own arg preview, output, diff, and timing. Non-tool entries and
|
|
15
|
+
* isolated tool entries pass through unchanged.
|
|
16
|
+
*/
|
|
17
|
+
import type React from 'react';
|
|
18
|
+
import type { HistoryEntry } from './types.js';
|
|
19
|
+
export interface ToolGroupData {
|
|
20
|
+
/** Shared tool name (e.g. "read", "bash", "grep"). */
|
|
21
|
+
name: string;
|
|
22
|
+
/** Consecutive tool entries with the same name. */
|
|
23
|
+
entries: HistoryEntry[];
|
|
24
|
+
/** Aggregate duration across the group. */
|
|
25
|
+
totalDurationMs: number;
|
|
26
|
+
/** Count of successful calls. */
|
|
27
|
+
okCount: number;
|
|
28
|
+
/** Count of failed calls. */
|
|
29
|
+
failCount: number;
|
|
30
|
+
}
|
|
31
|
+
export type RenderGroup = {
|
|
32
|
+
type: 'single';
|
|
33
|
+
entry: HistoryEntry;
|
|
34
|
+
} | {
|
|
35
|
+
type: 'tool-group';
|
|
36
|
+
data: ToolGroupData;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Hard ceiling for one rendered tool group. A group is a virtualization unit,
|
|
40
|
+
* so allowing an arbitrarily long same-tool run (for example 400 consecutive
|
|
41
|
+
* reads) would mount the whole run on every streaming redraw and defeat the
|
|
42
|
+
* bounded history window.
|
|
43
|
+
*/
|
|
44
|
+
export declare const MAX_TOOL_GROUP_ENTRIES = 12;
|
|
45
|
+
/** Stable id used by the height cache and React keys for a render group. */
|
|
46
|
+
export declare function renderGroupId(group: RenderGroup): number;
|
|
47
|
+
/** Conservative, bounded row estimate used before a group is measured. */
|
|
48
|
+
export declare function estimateRenderGroupRows(group: RenderGroup, contentWidth: number): number;
|
|
49
|
+
/**
|
|
50
|
+
* Walk entries and merge consecutive same-tool entries into bounded groups.
|
|
51
|
+
* Non-tool entries and isolated tool entries (no consecutive sibling)
|
|
52
|
+
* remain as individual items.
|
|
53
|
+
*/
|
|
54
|
+
export declare function groupEntries(entries: readonly HistoryEntry[]): RenderGroup[];
|
|
55
|
+
/**
|
|
56
|
+
* Render a group of consecutive same-tool entries.
|
|
57
|
+
*
|
|
58
|
+
* Layout:
|
|
59
|
+
* ╭─ ◆ read ×5 · 0.5s
|
|
60
|
+
* │ [1] path/to/a.ts · 12ms
|
|
61
|
+
* │ (output preview…)
|
|
62
|
+
* │ [2] path/to/b.tsx · 8ms
|
|
63
|
+
* │ (output preview…)
|
|
64
|
+
* ╰──────────────────────────────────────
|
|
65
|
+
*
|
|
66
|
+
* Each sub-entry is rendered as a compact list item with its index,
|
|
67
|
+
* arg summary, timing, and a single-line output preview.
|
|
68
|
+
*/
|
|
69
|
+
export declare function ToolGroup({ data, termWidth, }: {
|
|
70
|
+
data: ToolGroupData;
|
|
71
|
+
termWidth: number;
|
|
72
|
+
}): React.ReactElement;
|
|
73
|
+
//# sourceMappingURL=tool-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-group.d.ts","sourceRoot":"","sources":["../../../src/components/history/tool-group.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,2CAA2C;IAC3C,eAAe,EAAE,MAAM,CAAC;IACxB,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC;AAIhD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAUzC,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAExD;AAuBD,0EAA0E;AAC1E,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CA0CxF;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,WAAW,EAAE,CA4C5E;AAmDD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,SAAS,GACV,EAAE;IACD,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,KAAK,CAAC,YAAY,CAsCrB"}
|