@workerdeck/ui 0.16.0 → 0.17.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 -0
- package/build/{SessionPanel-B9CHoq8x.d.mts → SessionPanel-CnNYEX80.d.mts} +13 -1
- package/build/{SessionPanel-DII9MmQ8.mjs → SessionPanel-DMPhsNlW.mjs} +1015 -332
- package/build/SessionPanel-DMPhsNlW.mjs.map +1 -0
- package/build/index.d.mts +54 -3
- package/build/index.mjs +240 -17
- package/build/index.mjs.map +1 -1
- package/build/workspace.d.mts +1 -1
- package/build/workspace.mjs +1 -1
- package/package.json +8 -6
- package/src/components/agent/ProjectIcon.tsx +119 -0
- package/src/components/agent/SessionBrowser.tsx +84 -3
- package/src/components/agent/SessionPanel.tsx +25 -0
- package/src/components/agent/ToolCallCard.tsx +72 -5
- package/src/components/agent/Transcript.tsx +77 -7
- package/src/components/agent/tool-result-fetch.tsx +36 -0
- package/src/components/agent/tool-result-image.tsx +209 -0
- package/src/components/agent/transcript-rows.ts +113 -22
- package/src/components/terminal/TerminalTranscript.tsx +80 -2
- package/src/components/terminal/blocks.ts +232 -0
- package/src/components/terminal/height.ts +49 -6
- package/src/components/terminal/image-box.ts +53 -0
- package/src/components/terminal/items.tsx +115 -78
- package/src/components/terminal/result-preview.ts +20 -6
- package/src/components/terminal/scrubber.tsx +146 -25
- package/src/components/terminal/tool-run.ts +133 -0
- package/src/index.ts +2 -1
- package/src/styles/terminal.css +75 -5
- package/build/SessionPanel-DII9MmQ8.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -198,6 +198,13 @@ lose by forgetting a second mount isn't one.
|
|
|
198
198
|
result and its `… +N` label. Re-spelling either one in the renderer alone desynchronises
|
|
199
199
|
`estimateSize` and the transcript grows a phantom scrollable tail. `dev/height-audit.ts` is the
|
|
200
200
|
gate; it measures against real browser layout, which no jsdom test can do.
|
|
201
|
+
- **`pnpm test` here covers the pure modules and nothing else.** That is the split, not an
|
|
202
|
+
omission: which rows exist, what a folded run's line says, how much of a result a collapsed row
|
|
203
|
+
keeps and which marks the rail paints are all string-and-array contracts with no DOM in them,
|
|
204
|
+
and they are where this package's bugs have actually shipped. Geometry — does the rendered row
|
|
205
|
+
come out the height the calculator predicted — is the browser audit above. A test in `test/`
|
|
206
|
+
that wants a DOM belongs in `dev/` instead. `buildClusters` and `railScale` are exported from
|
|
207
|
+
`scrubber.tsx` for the test alone and are deliberately absent from `index.ts`.
|
|
201
208
|
- **`affordances={false}` must leave a way to scroll.** The scrubber replaces the native scrollbar
|
|
202
209
|
while it is interactive; with affordances off, the marks stay painted but inert *and the native
|
|
203
210
|
scrollbar comes back*. A rail that kept the scrollbar hidden while refusing the pointer would
|
|
@@ -326,6 +326,17 @@ interface SessionPanelProps {
|
|
|
326
326
|
* client's watermarks; a shared one is session metadata on the gateway).
|
|
327
327
|
*/
|
|
328
328
|
scrubberMarks?: readonly number[];
|
|
329
|
+
/**
|
|
330
|
+
* Scroll a tool call into view; bump `nonce` to ask again for the same one.
|
|
331
|
+
* See {@link TranscriptProps.reveal} — this is the panel's pass-through, and
|
|
332
|
+
* exists so a surface *outside* the panel (a sessions list showing a session's
|
|
333
|
+
* running sub-agents) can say "take me to that one" without opening a second
|
|
334
|
+
* attach to find out where it is.
|
|
335
|
+
*/
|
|
336
|
+
reveal?: {
|
|
337
|
+
toolUseId: string;
|
|
338
|
+
nonce: number;
|
|
339
|
+
};
|
|
329
340
|
/**
|
|
330
341
|
* Terminal theme only: hold the prompt of the turn you are reading at the top
|
|
331
342
|
* of the transcript, as the Claude Code CLI does. The **real row** is pinned
|
|
@@ -519,6 +530,7 @@ declare function SessionPanel({
|
|
|
519
530
|
terminalMetrics,
|
|
520
531
|
scrubber,
|
|
521
532
|
scrubberMarks,
|
|
533
|
+
reveal,
|
|
522
534
|
stickyPrompt,
|
|
523
535
|
controlsSurface,
|
|
524
536
|
onControls,
|
|
@@ -531,4 +543,4 @@ declare function SessionPanel({
|
|
|
531
543
|
}: SessionPanelProps): _$react.JSX.Element;
|
|
532
544
|
//#endregion
|
|
533
545
|
export { permissionModeChoices as C, PermissionModeSelectProps as S, useAffordances as _, SessionVitals as a, PermissionModeMeta as b, TranscriptDensityProvider as c, TranscriptVariantProvider as d, useTranscriptDensity as f, WithActions as g, TerminalAffordances as h, SessionSurfacePanel as i, TranscriptFont as l, CopyAction as m, SessionPanel as n, TerminalMetrics as o, useTranscriptVariant as p, SessionPanelProps as r, TranscriptDensity as s, SessionControls as t, TranscriptVariant as u, PERMISSION_MODES as v, permissionModeMeta as w, PermissionModeSelect as x, PermissionModeChoice as y };
|
|
534
|
-
//# sourceMappingURL=SessionPanel-
|
|
546
|
+
//# sourceMappingURL=SessionPanel-CnNYEX80.d.mts.map
|