mindweave 3.2.6 → 3.2.8
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 +113 -113
- package/dist/cli/App.js +247 -21
- package/dist/cli/App.js.map +1 -1
- package/dist/cli/blockBoxes.js +57 -0
- package/dist/cli/blockBoxes.js.map +1 -0
- package/dist/cli/chatAnchor.js +34 -0
- package/dist/cli/chatAnchor.js.map +1 -1
- package/dist/cli/clipboard.js +67 -26
- package/dist/cli/clipboard.js.map +1 -1
- package/dist/cli/commandBackground.js +16 -0
- package/dist/cli/commandBackground.js.map +1 -0
- package/dist/cli/components/PromptInput.js +32 -3
- package/dist/cli/components/PromptInput.js.map +1 -1
- package/dist/cli/components/ToolLine.js +67 -5
- package/dist/cli/components/ToolLine.js.map +1 -1
- package/dist/cli/components/WorkGroup.js +71 -16
- package/dist/cli/components/WorkGroup.js.map +1 -1
- package/dist/cli/diffRows.js +112 -0
- package/dist/cli/diffRows.js.map +1 -0
- package/dist/cli/expandHits.js +22 -0
- package/dist/cli/expandHits.js.map +1 -1
- package/dist/cli/framebuffer/frameHold.js +58 -0
- package/dist/cli/framebuffer/frameHold.js.map +1 -0
- package/dist/cli/framebuffer/writer.js +18 -0
- package/dist/cli/framebuffer/writer.js.map +1 -1
- package/dist/cli/help.js +8 -1
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/selectionGrow.js +244 -0
- package/dist/cli/selectionGrow.js.map +1 -0
- package/dist/cli/shellNotes.js +5 -0
- package/dist/cli/shellNotes.js.map +1 -1
- package/dist/cli/theme.js +16 -0
- package/dist/cli/theme.js.map +1 -1
- package/dist/cli/toolDisplay.js +21 -3
- package/dist/cli/toolDisplay.js.map +1 -1
- package/dist/cli/transcript.js +23 -6
- package/dist/cli/transcript.js.map +1 -1
- package/dist/cli/workLines.js +86 -4
- package/dist/cli/workLines.js.map +1 -1
- package/dist/dynamo/engine.js +13 -3
- package/dist/dynamo/engine.js.map +1 -1
- package/dist/dynamo/verify.js +21 -1
- package/dist/dynamo/verify.js.map +1 -1
- package/dist/mcp/connection.js +52 -9
- package/dist/mcp/connection.js.map +1 -1
- package/dist/mcp/manager.js +61 -42
- package/dist/mcp/manager.js.map +1 -1
- package/dist/mcp/resultView.js +116 -0
- package/dist/mcp/resultView.js.map +1 -0
- package/dist/mcp/transport/http.js +12 -4
- package/dist/mcp/transport/http.js.map +1 -1
- package/dist/mcp/transport/stdio.js +30 -5
- package/dist/mcp/transport/stdio.js.map +1 -1
- package/dist/mcp/transport/types.js +14 -0
- package/dist/mcp/transport/types.js.map +1 -1
- package/dist/memory/session.js +2 -0
- package/dist/memory/session.js.map +1 -1
- package/dist/tools/cdp.js +24 -0
- package/dist/tools/cdp.js.map +1 -1
- package/dist/tools/detail.js +114 -0
- package/dist/tools/detail.js.map +1 -1
- package/dist/tools/edit.js +12 -5
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/foregroundCommands.js +67 -0
- package/dist/tools/foregroundCommands.js.map +1 -0
- package/dist/tools/guard.js +5 -1
- package/dist/tools/guard.js.map +1 -1
- package/dist/tools/killTree.js +30 -8
- package/dist/tools/killTree.js.map +1 -1
- package/dist/tools/lineDiff.js +152 -0
- package/dist/tools/lineDiff.js.map +1 -0
- package/dist/tools/mcpAdd.js +124 -16
- package/dist/tools/mcpAdd.js.map +1 -1
- package/dist/tools/mindweaveStatus.js +1 -1
- package/dist/tools/mindweaveStatus.js.map +1 -1
- package/dist/tools/replaceSymbol.js +3 -3
- package/dist/tools/replaceSymbol.js.map +1 -1
- package/dist/tools/runCommand.js +61 -24
- package/dist/tools/runCommand.js.map +1 -1
- package/dist/tools/uiPage.js +294 -293
- package/dist/tools/uiPage.js.map +1 -1
- package/dist/tools/writeFile.js +20 -13
- package/dist/tools/writeFile.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolLine.js","sourceRoot":"","sources":["../../../src/cli/components/ToolLine.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ToolLine.js","sourceRoot":"","sources":["../../../src/cli/components/ToolLine.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
3
|
* WorkGroup — everything the agent ran and read between two other things, as ONE folded row.
|
|
4
4
|
*
|
|
@@ -20,14 +20,16 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
20
20
|
* A question for the user is not in here: it is asked on its own, on the screen, and never
|
|
21
21
|
* waits behind a fold.
|
|
22
22
|
*/
|
|
23
|
+
import { useEffect, useState } from "react";
|
|
23
24
|
import { Box, Text } from "ink";
|
|
24
25
|
import { PulseDot } from "./PulseDot.js";
|
|
25
26
|
import { Elapsed, MORE_MARKER, OUTCOME, lastOutcome } from "./ToolLine.js";
|
|
26
27
|
import { commandLabel } from "../commandLabel.js";
|
|
27
|
-
import {
|
|
28
|
+
import { COMMAND_OFFER_AFTER_MS, offerBackground } from "../commandBackground.js";
|
|
29
|
+
import { registerExpandable, registerRowBox, itemHit } from "../expandHits.js";
|
|
28
30
|
import { BAD, GOOD, USER_BG, USER_FG } from "../theme.js";
|
|
29
31
|
import { visibleWidth, wrapAnsi } from "../wrap.js";
|
|
30
|
-
import { FOLD_SEP, foldControls, plainLine, isRead, isStep, readRows, stepLabel, stepReason, workHeader } from "../workLines.js";
|
|
32
|
+
import { FOLD_SEP, foldControls, plainLine, compactLine, isMcp, isRead, isServerChange, isStep, keepIndent, mcpReason, mcpVerdict, readRows, serverReason, serverVerdict, wasDeclined, stepLabel, stepReason, workHeader } from "../workLines.js";
|
|
31
33
|
const DOT = "●";
|
|
32
34
|
/** Marks beyond this many are counted instead, so the header never wraps. */
|
|
33
35
|
export const MAX_MARKS = 10;
|
|
@@ -39,7 +41,8 @@ const VERDICT_WIDTH = 16;
|
|
|
39
41
|
*/
|
|
40
42
|
export function commandHeader(items, live) {
|
|
41
43
|
const head = workHeader(items, live);
|
|
42
|
-
|
|
44
|
+
// A change the user refused is not a success: it gets the dim mark, not a tick.
|
|
45
|
+
const marks = items.filter((it) => !isRead(it) || it.status === "error").map((it) => (wasDeclined(it) ? "skipped" : it.status));
|
|
43
46
|
const more = Math.max(0, marks.length - MAX_MARKS);
|
|
44
47
|
return { text: head.text, marks: marks.slice(more), more, working: head.working };
|
|
45
48
|
}
|
|
@@ -59,7 +62,15 @@ export function openedLines(it) {
|
|
|
59
62
|
const lines = source ? source.split(String.fromCharCode(10)).map(plainLine).filter((l) => !MORE_MARKER.test(l)) : [];
|
|
60
63
|
return lines.length > 0 ? foldControls(lines).map((l) => (l.includes("\t") ? l : l.trim())) : [it.summary?.trim() || "(nothing more to show)"];
|
|
61
64
|
}
|
|
65
|
+
// A chat saved before an MCP call kept what it asked and what came back used to keep a status
|
|
66
|
+
// block instead ("Status: Connected [Latency: 5ms]..."), which says nothing about the call.
|
|
67
|
+
if (isMcp(it) && (!source || /^Status: Connected/.test(source)))
|
|
68
|
+
return ["(this chat was saved before MCP calls kept their details)"];
|
|
62
69
|
const lines = source ? source.split("\n").map(plainLine) : [];
|
|
70
|
+
// A JSON result keeps its layout: the indentation is what makes it readable.
|
|
71
|
+
if (isMcp(it))
|
|
72
|
+
for (let i = 0; i < lines.length; i++)
|
|
73
|
+
lines[i] = keepIndent(lines[i]);
|
|
63
74
|
const verdict = it.detailKind === "shell" ? lastOutcome(lines) : -1;
|
|
64
75
|
const body = lines
|
|
65
76
|
.filter((_, i) => i !== verdict)
|
|
@@ -81,15 +92,39 @@ export function commandName(it, room) {
|
|
|
81
92
|
function listRows(items, room) {
|
|
82
93
|
return items.flatMap((it, index) => isRead(it)
|
|
83
94
|
? readRows(it).map((r, j) => ({ key: `${it.toolId}.${j}`, index, item: it, label: r.label, range: r.range }))
|
|
84
|
-
: [{ key: it.toolId, index, item: it, label: isStep(it) ? stepLabel(it) : commandName(it, room) }]);
|
|
95
|
+
: [{ key: it.toolId, index, item: it, label: isStep(it) ? stepLabel(it) : isMcp(it) || isServerChange(it) ? (it.arg ?? it.name) : commandName(it, room) }]);
|
|
96
|
+
}
|
|
97
|
+
/** Whether this call is a command the turn waits on, which ctrl+X can move: not a check on a shell, not a read. */
|
|
98
|
+
function isMovable(it) {
|
|
99
|
+
return it.status === "running" && it.kind === "run" && it.name === "Run" && it.startedAt !== undefined;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* The offer to move a command to the background, on the command's own row.
|
|
103
|
+
*
|
|
104
|
+
* It shows once the command has run for a couple of seconds (see `offerBackground`), and it
|
|
105
|
+
* wakes itself at that moment: nothing else on the row repaints just because time passed.
|
|
106
|
+
* It used to sit on the working line at the bottom, away from the thing it is about.
|
|
107
|
+
*/
|
|
108
|
+
function BackgroundHint({ since }) {
|
|
109
|
+
const [, tick] = useState(0);
|
|
110
|
+
const visible = offerBackground(since, Date.now(), false);
|
|
111
|
+
useEffect(() => {
|
|
112
|
+
if (visible)
|
|
113
|
+
return;
|
|
114
|
+
const t = setTimeout(() => tick((n) => n + 1), Math.max(0, since + COMMAND_OFFER_AFTER_MS - Date.now()) + 20);
|
|
115
|
+
return () => clearTimeout(t);
|
|
116
|
+
}, [visible, since]);
|
|
117
|
+
return visible ? _jsxs(Text, { dimColor: true, children: [" ", "ctrl+X to run it in the background"] }) : null;
|
|
85
118
|
}
|
|
86
119
|
export function WorkGroup({ id, items, open, live, columns, tightTop, hovered, hoveredItem, }) {
|
|
87
120
|
const head = commandHeader(items, live);
|
|
88
121
|
const running = items.filter((it) => it.status === "running" && it.startedAt !== undefined);
|
|
89
122
|
const since = running.length > 0 ? Math.min(...running.map((it) => it.startedAt)) : undefined;
|
|
123
|
+
const movable = live ? items.filter(isMovable) : [];
|
|
124
|
+
const movableSince = movable.length > 0 ? Math.min(...movable.map((it) => it.startedAt)) : undefined;
|
|
90
125
|
// A test that is working says which step it is on, so a long one does not look stuck behind a fold.
|
|
91
126
|
const onStep = head.working && !open ? items.filter((it) => isStep(it) && it.status === "running").pop() : undefined;
|
|
92
|
-
return (_jsxs(Box, { marginTop: tightTop ? 0 : 1, flexDirection: "column", children: [_jsxs(Box, { ref: (node) => registerExpandable(id, node), flexDirection: "row", width: columns, children: [_jsx(Box, { minWidth: 2, flexShrink: 0, children: head.working ? _jsx(PulseDot, { glyph: DOT }) : _jsx(Text, { children: DOT }) }), _jsx(Box, { flexShrink: 0, children: _jsx(Text, { bold: true, dimColor: !hovered, children: head.text }) }), head.marks.length > 0 ? (_jsxs(Box, { flexShrink: 0, children: [_jsx(Text, { children: " " }), head.more > 0 ? _jsx(Text, { dimColor: true, children: `+${head.more} ` }) : null, head.marks.map((m, i) => (_jsxs(Text, { color: m === "ok" ? GOOD : m === "error" ? BAD : undefined, dimColor: m === "running", children: [m === "ok" ? "✓" : m === "error" ? "✗" : "·", i < head.marks.length - 1 ? " " : ""] }, i)))] })) : null, onStep ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: true, children: " " + stepLabel(onStep).slice(0, Math.max(12, columns - head.text.length - 24)) }) })) : null, head.working && since !== undefined ? (_jsx(Box, { flexShrink: 0, children: _jsx(Elapsed, { since: since }) })) : null, _jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: !hovered, bold: hovered, children: open ? " ▾" : " ▸" }) })] }), open ? _jsx(WorkList, { id: id, items: items, columns: columns, live: live, hoveredItem: hoveredItem ?? -1 }) : null] }));
|
|
127
|
+
return (_jsxs(Box, { ref: (node) => registerRowBox(id, node), marginTop: tightTop ? 0 : 1, flexDirection: "column", children: [_jsxs(Box, { ref: (node) => registerExpandable(id, node), flexDirection: "row", width: columns, children: [_jsx(Box, { minWidth: 2, flexShrink: 0, children: head.working ? _jsx(PulseDot, { glyph: DOT }) : _jsx(Text, { children: DOT }) }), _jsx(Box, { flexShrink: 0, children: _jsx(Text, { bold: true, dimColor: !hovered, children: head.text }) }), head.marks.length > 0 && !(open && items.some((it) => isMcp(it) || isServerChange(it))) ? (_jsxs(Box, { flexShrink: 0, children: [_jsx(Text, { children: " " }), head.more > 0 ? _jsx(Text, { dimColor: true, children: `+${head.more} ` }) : null, head.marks.map((m, i) => (_jsxs(Text, { color: m === "ok" ? GOOD : m === "error" ? BAD : undefined, dimColor: m === "running" || m === "skipped", children: [m === "ok" ? "✓" : m === "error" ? "✗" : "·", i < head.marks.length - 1 ? " " : ""] }, i)))] })) : null, onStep ? (_jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: true, children: " " + stepLabel(onStep).slice(0, Math.max(12, columns - head.text.length - 24)) }) })) : null, head.working && since !== undefined ? (_jsx(Box, { flexShrink: 0, children: _jsx(Elapsed, { since: since }) })) : null, movableSince !== undefined && columns - head.text.length - head.marks.length * 2 >= 62 ? (_jsx(Box, { flexShrink: 0, children: _jsx(BackgroundHint, { since: movableSince }) })) : null, _jsx(Box, { flexShrink: 0, children: _jsx(Text, { dimColor: !hovered, bold: hovered, children: open ? " ▾" : " ▸" }) })] }), open ? _jsx(WorkList, { id: id, items: items, columns: columns, live: live, hoveredItem: hoveredItem ?? -1 }) : null] }));
|
|
93
128
|
}
|
|
94
129
|
/**
|
|
95
130
|
* The opened text as rows of exact width (pure). A line is wrapped to fit; a `kind<SEP>names` line
|
|
@@ -108,8 +143,14 @@ export function shadeRows(body, width) {
|
|
|
108
143
|
});
|
|
109
144
|
}
|
|
110
145
|
else {
|
|
111
|
-
|
|
112
|
-
|
|
146
|
+
// Indentation kept as non-breaking spaces (see keepIndent) is taken off, the rest wrapped
|
|
147
|
+
// to what is left, and put back on every row: wrapping would have trimmed it.
|
|
148
|
+
const lead = /^ */.exec(line)[0];
|
|
149
|
+
const room = Math.max(4, inner - lead.length);
|
|
150
|
+
for (const part of wrapAnsi(line === "" ? " " : line.slice(lead.length), room)) {
|
|
151
|
+
const text = " ".repeat(lead.length) + part;
|
|
152
|
+
rows.push({ text, pad: Math.max(0, inner - visibleWidth(text)) });
|
|
153
|
+
}
|
|
113
154
|
}
|
|
114
155
|
}
|
|
115
156
|
return rows;
|
|
@@ -122,6 +163,9 @@ function WorkList({ id, items, columns, live, hoveredItem }) {
|
|
|
122
163
|
const single = items.length === 1;
|
|
123
164
|
const rows = listRows(items, room);
|
|
124
165
|
const labelWidth = Math.min(room, Math.max(...rows.map((r) => r.label.length)) + 2);
|
|
166
|
+
// MCP lines (a tool call, a server change) share one shape and one name column of their own.
|
|
167
|
+
const mcpLabels = rows.filter((r) => isMcp(r.item) || isServerChange(r.item)).map((r) => r.label.length);
|
|
168
|
+
const compactWidth = Math.min(34, Math.max(0, ...mcpLabels) + 2);
|
|
125
169
|
return (_jsx(Box, { flexDirection: "column", children: rows.map((row, i) => {
|
|
126
170
|
const it = row.item;
|
|
127
171
|
const last = i === rows.length - 1;
|
|
@@ -129,35 +173,46 @@ function WorkList({ id, items, columns, live, hoveredItem }) {
|
|
|
129
173
|
const step = isStep(it);
|
|
130
174
|
const hot = !reading && hoveredItem === row.index;
|
|
131
175
|
const running = it.status === "running";
|
|
132
|
-
const
|
|
176
|
+
const mcp = isMcp(it);
|
|
177
|
+
// A server change (add, enable, reconnect...) has a line and nothing behind it to open.
|
|
178
|
+
const setup = isServerChange(it);
|
|
179
|
+
const compact = mcp || setup;
|
|
180
|
+
const line = compact ? compactLine(it) : undefined;
|
|
181
|
+
const verdict = reading || step || mcp || setup ? undefined : verdictLine(it);
|
|
133
182
|
const shown = reading
|
|
134
183
|
? row.range ?? ""
|
|
135
184
|
: running
|
|
136
185
|
? ""
|
|
137
186
|
: step
|
|
138
187
|
? it.status === "error" ? "✗" : "✓"
|
|
139
|
-
:
|
|
188
|
+
: mcp
|
|
189
|
+
? mcpVerdict(it)
|
|
190
|
+
: setup
|
|
191
|
+
? serverVerdict(it)
|
|
192
|
+
: verdict ?? (it.status === "error" ? "✗" : it.summary ? it.summary : "✓");
|
|
140
193
|
// Why a step failed, under it, in red: the one thing a folded failure must still say.
|
|
141
|
-
const reason = step && it.status === "error" ? stepReason(it) : "";
|
|
194
|
+
const reason = step && it.status === "error" ? stepReason(it) : mcp ? mcpReason(it) : setup ? serverReason(it) : "";
|
|
142
195
|
// Words that do not fit beside a long command go on a line of their own under it. Squeezed
|
|
143
196
|
// into what is left of the line they broke across rows ("Running as shell" / "#1") and ran
|
|
144
197
|
// into the end of the command.
|
|
145
198
|
const room2 = columns - 4 - labelWidth - 3;
|
|
146
199
|
const below = !running && shown.length > 0 && !(!reading && OUTCOME.test(shown)) && shown.length > Math.max(VERDICT_WIDTH, room2) ? shown : "";
|
|
147
200
|
const verdictColor = running ? undefined : it.status === "error" || (verdict && !verdict.startsWith("✓")) ? BAD : GOOD;
|
|
148
|
-
const outcomeOnly = !reading && (OUTCOME.test(shown) || shown === "");
|
|
201
|
+
const outcomeOnly = !reading && (OUTCOME.test(shown) || shown === "" || (setup && wasDeclined(it)));
|
|
149
202
|
const beside = below ? "" : shown;
|
|
150
203
|
const failedRead = reading && it.status === "error";
|
|
151
|
-
const body = !reading && (it.open || single) ? openedLines(it) : [];
|
|
204
|
+
const body = !reading && !setup && (it.open || single) ? openedLines(it) : [];
|
|
152
205
|
// The one being read stands out: bright, with its text on a shaded band under it. The ones
|
|
153
206
|
// that are folded stay dim, so it is plain which is open.
|
|
154
207
|
const isOpen = body.length > 0;
|
|
155
208
|
const bodyWidth = Math.max(8, columns - 4);
|
|
156
209
|
const shade = isOpen ? shadeRows(body, columns - 4) : [];
|
|
157
|
-
|
|
210
|
+
// What an MCP line says at its right ("✓ connected · 170 tools") is longer than a command's.
|
|
211
|
+
const verdictBox = setup ? Math.min(Math.max(VERDICT_WIDTH, room2), 34) : outcomeOnly || below ? VERDICT_WIDTH : Math.max(VERDICT_WIDTH, room2);
|
|
158
212
|
// Only a command opens; a read has nothing behind its line to show.
|
|
159
|
-
|
|
160
|
-
|
|
213
|
+
// A row of one call opens onto that call, so its box is a place to click too: it folds the row (see toggleItem).
|
|
214
|
+
const registered = reading || setup ? undefined : (node) => registerExpandable(itemHit(id, row.index), node);
|
|
215
|
+
return (_jsxs(Box, { flexDirection: "column", ref: registered, children: [single && step && it.name === "Steps" ? null : compact ? (_jsxs(Box, { flexDirection: "row", width: columns, children: [_jsx(Text, { children: " " }), _jsx(Box, { width: 2, flexShrink: 0, children: running ? _jsx(PulseDot, { glyph: "\u25CF" }) : _jsx(Text, { color: line.tone === "ok" ? GOOD : line.tone === "error" ? BAD : undefined, dimColor: line.tone === "skipped", children: line.mark }) }), _jsx(Box, { width: compactWidth, paddingRight: 2, flexShrink: 0, children: _jsx(Text, { bold: hot || isOpen, dimColor: !hot && !isOpen, wrap: "truncate-end", children: row.label }) }), _jsx(Box, { width: Math.max(8, columns - 4 - compactWidth - 3), flexShrink: 0, children: running ? (live && it.startedAt !== undefined ? _jsx(Elapsed, { since: it.startedAt }) : null) : _jsx(Text, { dimColor: true, wrap: "truncate-end", children: line.text }) }), _jsx(Box, { width: 3, flexShrink: 0, children: setup || single ? null : _jsx(Text, { dimColor: !hot && !isOpen, bold: hot || isOpen, children: it.open ? " ▾" : " ▸" }) })] })) : (_jsxs(Box, { flexDirection: "row", width: columns, children: [_jsx(Text, { children: " " }), _jsx(Box, { width: labelWidth, paddingRight: 2, flexShrink: 0, children: _jsx(Text, { bold: hot || isOpen, dimColor: !hot && !isOpen, wrap: "truncate-end", children: row.label }) }), _jsx(Box, { width: verdictBox, flexShrink: 0, children: running ? (_jsxs(_Fragment, { children: [_jsx(PulseDot, { glyph: "\u25CF" }), live && it.startedAt !== undefined ? _jsx(Elapsed, { since: it.startedAt }) : null] })) : (_jsx(Text, { color: outcomeOnly ? verdictColor : failedRead ? BAD : undefined, dimColor: !outcomeOnly && !failedRead, wrap: outcomeOnly ? "truncate-end" : "wrap", children: beside })) }), reading || setup || single ? null : _jsx(Text, { dimColor: !hot && !isOpen, bold: hot || isOpen, children: it.open ? " ▾" : " ▸" })] })), below && !compact ? (_jsxs(Box, { flexDirection: "row", width: columns, children: [_jsx(Text, { children: " " }), _jsx(Box, { width: bodyWidth, children: _jsx(Text, { dimColor: true, wrap: "wrap", children: below }) })] })) : null, reason && !compact ? (_jsxs(Box, { flexDirection: "row", width: columns, children: [_jsx(Text, { children: " " }), _jsx(Box, { width: bodyWidth, children: _jsx(Text, { color: BAD, wrap: "wrap", children: reason }) })] })) : null, isOpen ? (
|
|
161
216
|
// What it printed sits on a shaded band, the way a message the user wrote does.
|
|
162
217
|
_jsx(Box, { flexDirection: "column", width: columns, children: shade.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))) })) : null] }, row.key));
|
|
163
218
|
}) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkGroup.js","sourceRoot":"","sources":["../../../src/cli/components/WorkGroup.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorkGroup.js","sourceRoot":"","sources":["../../../src/cli/components/WorkGroup.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* diffRows.ts — reading a numbered diff row, and finding the words that changed inside a changed line (pure).
|
|
3
|
+
*
|
|
4
|
+
* The edit tools write each row as `<+|-| > <number> │ <text>` (see tools/detail.ts), a gap between two groups of
|
|
5
|
+
* changes as a `⋯` row, and anything else (the scope line, a "more lines" marker, a diff saved by an older version,
|
|
6
|
+
* which has no numbers) as a row of its own. This tells them apart so the screen can draw the gutter dim, tint only the
|
|
7
|
+
* lines that changed, and mark the words that differ between a removed line and the line that replaced it.
|
|
8
|
+
*/
|
|
9
|
+
import { myers } from "../tools/lineDiff.js";
|
|
10
|
+
/** `+ 210 │ text`, `- 12 │ text`, ` 207 │ text`: the sign, the number, the gutter mark, the line. */
|
|
11
|
+
const ROW = /^([+\- ]) ( *\d*) │ ?(.*)$/;
|
|
12
|
+
/** The row a gap between two groups of changes is written as. */
|
|
13
|
+
const GAP = /^ +⋯$/;
|
|
14
|
+
export function isGapRow(line) {
|
|
15
|
+
return GAP.test(line);
|
|
16
|
+
}
|
|
17
|
+
/** The row's parts, or null when it is not a numbered diff row. */
|
|
18
|
+
export function parseDiffRow(line) {
|
|
19
|
+
const m = ROW.exec(line);
|
|
20
|
+
if (!m)
|
|
21
|
+
return null;
|
|
22
|
+
return { kind: m[1] === "+" ? "add" : m[1] === "-" ? "del" : "ctx", num: m[2], text: m[3] };
|
|
23
|
+
}
|
|
24
|
+
/** Where the gutter ends in a row, so a continuation of a long line can be indented to match (0 when it has none). */
|
|
25
|
+
export function gutterWidth(line) {
|
|
26
|
+
const m = ROW.exec(line);
|
|
27
|
+
if (!m)
|
|
28
|
+
return 0;
|
|
29
|
+
return 2 + m[2].length + 3;
|
|
30
|
+
}
|
|
31
|
+
/** Words, runs of spaces, and single marks: the pieces two lines are compared by. */
|
|
32
|
+
const TOKEN = /[A-Za-z0-9_$]+|\s+|[^A-Za-z0-9_$\s]/g;
|
|
33
|
+
/** The ranges of each line that differ, comparing them piece by piece (pure). */
|
|
34
|
+
function tokenSpans(oldText, newText) {
|
|
35
|
+
const tokens = (t) => Array.from(t.matchAll(TOKEN), (m) => ({ text: m[0], at: m.index }));
|
|
36
|
+
const a = tokens(oldText);
|
|
37
|
+
const b = tokens(newText);
|
|
38
|
+
const script = myers(a.map((t) => t.text), b.map((t) => t.text), 400);
|
|
39
|
+
if (!script)
|
|
40
|
+
return null;
|
|
41
|
+
const oldSpans = [];
|
|
42
|
+
const newSpans = [];
|
|
43
|
+
const push = (list, from, to) => {
|
|
44
|
+
// Changes with only spaces between them are one change: "a b" -> "x y" is marked whole, not as two words and a gap.
|
|
45
|
+
const last = list[list.length - 1];
|
|
46
|
+
if (last && last[1] <= from) {
|
|
47
|
+
const gap = (list === oldSpans ? oldText : newText).slice(last[1], from);
|
|
48
|
+
if (gap.trim() === "") {
|
|
49
|
+
list[list.length - 1] = [last[0], to];
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
list.push([from, to]);
|
|
54
|
+
};
|
|
55
|
+
for (const op of script) {
|
|
56
|
+
if (op.kind === "del")
|
|
57
|
+
push(oldSpans, a[op.at].at, a[op.at].at + a[op.at].text.length);
|
|
58
|
+
else if (op.kind === "add")
|
|
59
|
+
push(newSpans, b[op.at].at, b[op.at].at + b[op.at].text.length);
|
|
60
|
+
}
|
|
61
|
+
return { old: oldSpans, new: newSpans };
|
|
62
|
+
}
|
|
63
|
+
const covered = (spans) => spans.reduce((n, [from, to]) => n + (to - from), 0);
|
|
64
|
+
/**
|
|
65
|
+
* The parts of each line that differ, as ranges (pure). Null when the two lines are too different for a highlight to say
|
|
66
|
+
* anything (most of a line changed), or when they are the same.
|
|
67
|
+
*/
|
|
68
|
+
export function changedSpans(oldText, newText) {
|
|
69
|
+
if (oldText === newText)
|
|
70
|
+
return null;
|
|
71
|
+
const spans = tokenSpans(oldText, newText);
|
|
72
|
+
if (!spans || (spans.old.length === 0 && spans.new.length === 0))
|
|
73
|
+
return null;
|
|
74
|
+
// Most of the line changed: marking nearly all of it is the same as marking none.
|
|
75
|
+
const longest = Math.max(oldText.length, newText.length);
|
|
76
|
+
if (longest > 0 && Math.max(covered(spans.old), covered(spans.new)) / longest > 0.7)
|
|
77
|
+
return null;
|
|
78
|
+
return spans;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* For each changed row, the parts of it to mark (pure). A run of removed rows followed directly by as many added rows is
|
|
82
|
+
* read as those lines having been rewritten, and each pair is compared; anything else is left unmarked.
|
|
83
|
+
*/
|
|
84
|
+
export function markChangedWords(rows) {
|
|
85
|
+
const marks = rows.map(() => null);
|
|
86
|
+
let i = 0;
|
|
87
|
+
while (i < rows.length) {
|
|
88
|
+
if (rows[i]?.kind !== "del") {
|
|
89
|
+
i++;
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
let dels = i;
|
|
93
|
+
while (rows[dels]?.kind === "del")
|
|
94
|
+
dels++;
|
|
95
|
+
let adds = dels;
|
|
96
|
+
while (rows[adds]?.kind === "add")
|
|
97
|
+
adds++;
|
|
98
|
+
const count = dels - i;
|
|
99
|
+
if (adds - dels === count) {
|
|
100
|
+
for (let k = 0; k < count; k++) {
|
|
101
|
+
const pair = changedSpans(rows[i + k].text, rows[dels + k].text);
|
|
102
|
+
if (pair) {
|
|
103
|
+
marks[i + k] = pair.old;
|
|
104
|
+
marks[dels + k] = pair.new;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
i = Math.max(adds, i + 1);
|
|
109
|
+
}
|
|
110
|
+
return marks;
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=diffRows.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diffRows.js","sourceRoot":"","sources":["../../src/cli/diffRows.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/expandHits.js
CHANGED
|
@@ -13,6 +13,24 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { measureElement } from "ink";
|
|
15
15
|
const nodes = new Map();
|
|
16
|
+
/** The WHOLE box of a row (its header and everything opened under it), for rows whose click
|
|
17
|
+
* target is only their header. Used to find out what an opened row covers. */
|
|
18
|
+
const boxes = new Map();
|
|
19
|
+
/** Called from a row's outermost box. `null` is the row going away. */
|
|
20
|
+
export function registerRowBox(id, node) {
|
|
21
|
+
if (node)
|
|
22
|
+
boxes.set(id, node);
|
|
23
|
+
else
|
|
24
|
+
boxes.delete(id);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* The box to bring into view after `hit` was opened, or undefined when it is not on screen.
|
|
28
|
+
* One command inside a row is its own box; a row is its whole box where it has one (a
|
|
29
|
+
* commands row's click target is only its header, which says nothing of the list under it).
|
|
30
|
+
*/
|
|
31
|
+
export function revealNode(hit) {
|
|
32
|
+
return hit < 0 ? nodes.get(hit) : boxes.get(hit) ?? nodes.get(hit);
|
|
33
|
+
}
|
|
16
34
|
/**
|
|
17
35
|
* One command inside a commands row is its own place to click, next to the row's header.
|
|
18
36
|
* It is registered under a NEGATIVE number built from the row and the command's place in it,
|
|
@@ -71,4 +89,8 @@ export function expandableAt(y, frameTop, chat, measure = measureElement) {
|
|
|
71
89
|
}
|
|
72
90
|
return rowAt(spans, y, { top: frameTop + c.y, height: c.height });
|
|
73
91
|
}
|
|
92
|
+
/** The places that can be clicked right now (for tests: which boxes are registered). */
|
|
93
|
+
export function registeredHits() {
|
|
94
|
+
return [...nodes.keys()];
|
|
95
|
+
}
|
|
74
96
|
//# sourceMappingURL=expandHits.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expandHits.js","sourceRoot":"","sources":["../../src/cli/expandHits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,cAAc,EAAmB,MAAM,KAAK,CAAC;AAEtD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,eAAe,GAAG,IAAI,CAAC;AAC7B,MAAM,UAAU,OAAO,CAAC,OAAe,EAAE,KAAa;IACpD,OAAO,CAAC,CAAC,OAAO,GAAG,eAAe,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AACD,0FAA0F;AAC1F,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;AACnE,CAAC;AACD,4FAA4F;AAC5F,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC;AACtD,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,kBAAkB,CAAC,EAAU,EAAE,IAAuB;IACpE,IAAI,IAAI;QAAE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;;QACzB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AASD;;;;;;GAMG;AACH,MAAM,UAAU,KAAK,CAAC,KAAgB,EAAE,CAAS,EAAE,IAAqC;IACtF,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC7D,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC1B,CAAS,EACT,QAAgB,EAChB,IAAuB,EACvB,UAA+D,cAAc;IAE7E,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACpE,CAAC"}
|
|
1
|
+
{"version":3,"file":"expandHits.js","sourceRoot":"","sources":["../../src/cli/expandHits.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* frameHold.ts — keep ONE in-between frame off the screen.
|
|
3
|
+
*
|
|
4
|
+
* Opening or folding a row takes two renders. The first draws the new content with the
|
|
5
|
+
* view still positioned for the old height (the real height is only known once the frame is
|
|
6
|
+
* laid out), so for a moment the text sits lower than it will end up; an effect then
|
|
7
|
+
* measures it and moves the view, and the second render is the right picture. Ink writes
|
|
8
|
+
* the first at once and the second a frame later, so the wrong one was on screen for as
|
|
9
|
+
* long as that gap, which is the "quick part where the text shows even lower".
|
|
10
|
+
*
|
|
11
|
+
* The first render cannot be made right (nothing can know the new height before it is
|
|
12
|
+
* laid out), but it does not have to be SEEN. The caller holds frames before it dispatches
|
|
13
|
+
* the change and releases them from the effect that corrects it; the writer drops what
|
|
14
|
+
* arrives in between, and the next frame, being a complete statement about every row, is
|
|
15
|
+
* the whole picture. If no further frame comes (the correction left everything as it was),
|
|
16
|
+
* the held one is painted after a short wait, so a frame can be delayed but never lost.
|
|
17
|
+
*
|
|
18
|
+
* Bounded on purpose: a hold that is never released ends by itself.
|
|
19
|
+
*/
|
|
20
|
+
/** The longest a hold lasts without being released. */
|
|
21
|
+
const HOLD_MAX_MS = 150;
|
|
22
|
+
/** How long after a release to wait for the corrected frame before painting the held one.
|
|
23
|
+
* Longer than Ink's render throttle, which is what spaces the two frames apart. */
|
|
24
|
+
const FLUSH_AFTER_MS = 80;
|
|
25
|
+
let heldUntil = 0;
|
|
26
|
+
let timer = null;
|
|
27
|
+
let flush = null;
|
|
28
|
+
function arm(ms) {
|
|
29
|
+
if (timer)
|
|
30
|
+
clearTimeout(timer);
|
|
31
|
+
timer = setTimeout(() => {
|
|
32
|
+
timer = null;
|
|
33
|
+
heldUntil = 0;
|
|
34
|
+
flush?.();
|
|
35
|
+
}, ms);
|
|
36
|
+
timer.unref?.();
|
|
37
|
+
}
|
|
38
|
+
/** Start dropping frames. Call BEFORE the change that causes the in-between frame. */
|
|
39
|
+
export function holdFrames() {
|
|
40
|
+
heldUntil = Date.now() + HOLD_MAX_MS;
|
|
41
|
+
arm(HOLD_MAX_MS + 5);
|
|
42
|
+
}
|
|
43
|
+
/** Whether frames are being held right now. Read by the writer for every frame. */
|
|
44
|
+
export function framesHeld() {
|
|
45
|
+
return heldUntil > Date.now();
|
|
46
|
+
}
|
|
47
|
+
/** Let frames through again. The corrected frame is on its way; if none comes, the held one is painted. */
|
|
48
|
+
export function releaseFrames() {
|
|
49
|
+
if (heldUntil === 0 && timer === null)
|
|
50
|
+
return;
|
|
51
|
+
heldUntil = 0;
|
|
52
|
+
arm(FLUSH_AFTER_MS);
|
|
53
|
+
}
|
|
54
|
+
/** The writer's way to paint the frame it held. */
|
|
55
|
+
export function setHoldFlush(fn) {
|
|
56
|
+
flush = fn;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=frameHold.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frameHold.js","sourceRoot":"","sources":["../../../src/cli/framebuffer/frameHold.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,uDAAuD;AACvD,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB;oFACoF;AACpF,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,IAAI,KAAK,GAAyC,IAAI,CAAC;AACvD,IAAI,KAAK,GAAwB,IAAI,CAAC;AAEtC,SAAS,GAAG,CAAC,EAAU;IACrB,IAAI,KAAK;QAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/B,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QACtB,KAAK,GAAG,IAAI,CAAC;QACb,SAAS,GAAG,CAAC,CAAC;QACd,KAAK,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;AAClB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,UAAU;IACxB,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;IACrC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;AACvB,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,UAAU;IACxB,OAAO,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAChC,CAAC;AAED,2GAA2G;AAC3G,MAAM,UAAU,aAAa;IAC3B,IAAI,SAAS,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO;IAC9C,SAAS,GAAG,CAAC,CAAC;IACd,GAAG,CAAC,cAAc,CAAC,CAAC;AACtB,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,YAAY,CAAC,EAAuB;IAClD,KAAK,GAAG,EAAE,CAAC;AACb,CAAC"}
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
*/
|
|
35
35
|
import { Screen } from "./screen.js";
|
|
36
36
|
import { applyFrameOverlay, hasFrameOverlay, publishScreen, setOverlayRepaint } from "./overlay.js";
|
|
37
|
+
import { framesHeld, setHoldFlush } from "./frameHold.js";
|
|
37
38
|
import { parseFrame } from "./parse.js";
|
|
38
39
|
import { paint } from "./paint.js";
|
|
39
40
|
import { caretCell, onCaretMoved, parkAt, HIDE } from "../caretPark.js";
|
|
@@ -455,6 +456,14 @@ export function framebufferStdout(real, onFrame) {
|
|
|
455
456
|
* method, the prototype and `instanceof` all still resolve to the real stream, and
|
|
456
457
|
* only `write` is ours. Nothing has to be enumerated, so nothing can be forgotten.
|
|
457
458
|
*/
|
|
459
|
+
/** The latest frame dropped by a hold, painted if nothing newer arrives (see frameHold.ts). */
|
|
460
|
+
let heldFrame = null;
|
|
461
|
+
setHoldFlush(() => {
|
|
462
|
+
const data = heldFrame;
|
|
463
|
+
heldFrame = null;
|
|
464
|
+
if (data !== null)
|
|
465
|
+
fbWrite(data);
|
|
466
|
+
});
|
|
458
467
|
const fbWrite = (data, callback) => {
|
|
459
468
|
// Stood down. Everything Ink writes goes straight to the terminal, untouched.
|
|
460
469
|
//
|
|
@@ -537,6 +546,15 @@ export function framebufferStdout(real, onFrame) {
|
|
|
537
546
|
// writing in full, and so does an explicit request (a scroll — see requestFullRepaint).
|
|
538
547
|
// All are answered the same way: by knowing nothing about the screen, so that this
|
|
539
548
|
// frame draws all of it.
|
|
549
|
+
// A frame the caller asked to be kept off the screen (see frameHold.ts): remembered, not
|
|
550
|
+
// painted. Nothing about the screen model changes, so the next frame is diffed against
|
|
551
|
+
// what is really there and is the whole picture. Anything newer replaces it.
|
|
552
|
+
if (framesHeld()) {
|
|
553
|
+
heldFrame = data;
|
|
554
|
+
callback?.(null);
|
|
555
|
+
return true;
|
|
556
|
+
}
|
|
557
|
+
heldFrame = null;
|
|
540
558
|
if (syncSize() || repaintRequested || Date.now() - lastFull >= repaintEvery)
|
|
541
559
|
invalidate();
|
|
542
560
|
repaintRequested = false;
|