@tangle-network/sandbox-ui 2.0.20 → 2.0.22
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 +18 -1
- package/dist/{record-Cwyo2oHb.js → AgentTree-KO1TJXBq.js} +203 -313
- package/dist/VirtualList-DLh2JE0F.js +205 -0
- package/dist/{WorkflowGraph-CADReIDl.js → WorkflowGraph-B8cRtVaw.js} +2 -2
- package/dist/event-stream-DNEbvx4s.d.ts +2 -0
- package/dist/globals.css +5910 -240
- package/dist/hooks.d.ts +2 -2
- package/dist/hooks.js +2 -2
- package/dist/{index-ByNsP4VC.d.ts → index-BoKSR0s9.d.ts} +62 -4
- package/dist/{index-BYkigpIM.d.ts → index-gXcuwPOX.d.ts} +13 -7
- package/dist/index.d.ts +4 -4
- package/dist/index.js +8 -6
- package/dist/record-BGcR48YY.js +47 -0
- package/dist/record.d.ts +66 -0
- package/dist/record.js +2329 -0
- package/dist/report-viewer.js +554 -0
- package/dist/run/live.d.ts +1 -1
- package/dist/run/live.js +26 -28
- package/dist/run/record.d.ts +2 -2
- package/dist/run/record.js +4 -1
- package/dist/run.d.ts +4 -4
- package/dist/run.js +5 -3
- package/dist/runtime-viewer/{AgentGraphCanvas-B74GN1o6-DC3EH_ss.js → AgentGraphCanvas-DDvaU9Rg-DlNZxJ20.js} +187 -168
- package/dist/runtime-viewer/{latest-events-iiWwpIck-BTK0vSlR.js → latest-events-CabhXynX-Dp_vs0Px.js} +705 -691
- package/dist/runtime-viewer/sandbox-ui-CUj4Q1P_.css +2 -0
- package/dist/styles.css +5911 -241
- package/dist/tailwind.css +5677 -5
- package/dist/tokens.css +7 -1
- package/dist/{trace-workspace-C8dHRBDV.js → trace-workspace-DkakKRLV.js} +64 -78
- package/dist/{tree-data-C8CNt4WE.js → tree-data-B_IXAIgg.js} +171 -121
- package/dist/use-follow-tail-Ckx5ZSV2.js +1 -0
- package/dist/vault-tree.js +1 -1
- package/dist/workflows.js +1 -1
- package/dist/{workspace-CzikYt_y.js → workspace--GvnZNpH.js} +1 -1
- package/dist/{workspace-files-pane-DB9Nvwh4.js → workspace-files-pane-C0PeY6rY.js} +12 -12
- package/dist/workspace-viewer.js +9693 -9462
- package/dist/workspace.js +2 -2
- package/package.json +27 -13
- package/dist/agent-stream-CBZ2fXJ2.d.ts +0 -66
- package/dist/runtime-viewer/sandbox-ui-z5RGk327.css +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as cn } from "./utils-BER_bdgE.js";
|
|
2
|
-
import { i as VaultTree, n as filterFileNodes, t as fileTreeFromPaths } from "./tree-data-
|
|
2
|
+
import { i as VaultTree, n as filterFileNodes, t as fileTreeFromPaths } from "./tree-data-B_IXAIgg.js";
|
|
3
3
|
import { Button, EmptyState, Input, SegmentedControl } from "@tangle-network/ui/primitives";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { useEffect, useId, useMemo, useRef, useState } from "react";
|
|
@@ -263,7 +263,7 @@ function WorkspaceFilesPane({ root, paths, selectedPath, onSelect, preview, onBa
|
|
|
263
263
|
preview,
|
|
264
264
|
split,
|
|
265
265
|
tabs: split && tabs,
|
|
266
|
-
|
|
266
|
+
files: index,
|
|
267
267
|
backRef,
|
|
268
268
|
onBack,
|
|
269
269
|
onOpen: (path) => onSelect?.(path, index.get(path)),
|
|
@@ -277,7 +277,7 @@ function WorkspaceFilesPane({ root, paths, selectedPath, onSelect, preview, onBa
|
|
|
277
277
|
}
|
|
278
278
|
const baseName = (path) => path.replace(/\/+$/, "").split("/").pop() || path;
|
|
279
279
|
/** The editor side of the pane: open-file tabs, a File | Diff toggle, the full-screen control, and the open file. */
|
|
280
|
-
function FilesViewer({ preview, split, tabs,
|
|
280
|
+
function FilesViewer({ preview, split, tabs, files, backRef, onBack, onOpen, expand }) {
|
|
281
281
|
const path = preview?.path;
|
|
282
282
|
const [open, setOpen] = useState(() => path ? [path] : []);
|
|
283
283
|
useEffect(() => {
|
|
@@ -285,12 +285,12 @@ function FilesViewer({ preview, split, tabs, empty, backRef, onBack, onOpen, exp
|
|
|
285
285
|
}, [path]);
|
|
286
286
|
const [mode, setMode] = useState("file");
|
|
287
287
|
useEffect(() => setMode("file"), [path]);
|
|
288
|
+
const shown = open.filter((entry) => entry === path || files.get(entry)?.type === "file");
|
|
288
289
|
const close = (target) => {
|
|
289
|
-
const
|
|
290
|
-
|
|
291
|
-
setOpen(rest);
|
|
290
|
+
const rest = shown.filter((entry) => entry !== target);
|
|
291
|
+
setOpen((paths) => paths.filter((entry) => entry !== target));
|
|
292
292
|
if (target !== path) return;
|
|
293
|
-
const neighbour = rest[Math.min(
|
|
293
|
+
const neighbour = rest[Math.min(shown.indexOf(target), rest.length - 1)];
|
|
294
294
|
if (neighbour) onOpen(neighbour);
|
|
295
295
|
else onBack?.();
|
|
296
296
|
};
|
|
@@ -299,7 +299,7 @@ function FilesViewer({ preview, split, tabs, empty, backRef, onBack, onOpen, exp
|
|
|
299
299
|
return /* @__PURE__ */ jsxs("div", {
|
|
300
300
|
className: "flex min-h-0 min-w-0 flex-1 flex-col",
|
|
301
301
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
302
|
-
className: cn(HEADER_ROW, "sticky top-0 z-10 gap-2 pr-[var(--files-inset)]", !(tabs &&
|
|
302
|
+
className: cn(HEADER_ROW, "sticky top-0 z-10 gap-2 pr-[var(--files-inset)]", !(tabs && shown.length > 0) && "pl-[var(--files-inset)]", !split && "h-auto min-h-11 flex-wrap py-1.5 pointer-coarse:h-auto"),
|
|
303
303
|
children: [
|
|
304
304
|
onBack && !split && preview && /* @__PURE__ */ jsxs(Button, {
|
|
305
305
|
ref: backRef,
|
|
@@ -310,8 +310,8 @@ function FilesViewer({ preview, split, tabs, empty, backRef, onBack, onOpen, exp
|
|
|
310
310
|
className: "-ml-2 shrink-0 gap-1 px-2 text-muted-foreground",
|
|
311
311
|
children: [/* @__PURE__ */ jsx(ArrowLeft, { "aria-hidden": "true" }), "Back to files"]
|
|
312
312
|
}),
|
|
313
|
-
tabs &&
|
|
314
|
-
tabs:
|
|
313
|
+
tabs && shown.length > 0 ? /* @__PURE__ */ jsx(FileTabs, {
|
|
314
|
+
tabs: shown.map((entry) => ({
|
|
315
315
|
id: entry,
|
|
316
316
|
name: baseName(entry),
|
|
317
317
|
path: entry
|
|
@@ -339,7 +339,7 @@ function FilesViewer({ preview, split, tabs, empty, backRef, onBack, onOpen, exp
|
|
|
339
339
|
className: cn("shrink-0 p-0.5 [&>button]:py-1", !split && "order-last")
|
|
340
340
|
}),
|
|
341
341
|
preview?.actions && /* @__PURE__ */ jsx("div", {
|
|
342
|
-
className: "flex
|
|
342
|
+
className: cn("flex min-w-0 max-w-full flex-wrap items-center gap-2", !split && "order-last"),
|
|
343
343
|
children: preview.actions
|
|
344
344
|
}),
|
|
345
345
|
expand && /* @__PURE__ */ jsx(Button, {
|
|
@@ -360,7 +360,7 @@ function FilesViewer({ preview, split, tabs, empty, backRef, onBack, onOpen, exp
|
|
|
360
360
|
children: mode === "diff" && compare ? compare.content : preview.content
|
|
361
361
|
}) : /* @__PURE__ */ jsx("div", {
|
|
362
362
|
className: "flex min-h-0 min-w-0 flex-1 items-center justify-center p-6 text-sm text-muted-foreground",
|
|
363
|
-
children:
|
|
363
|
+
children: files.size === 0 ? null : "Select a file to open it here."
|
|
364
364
|
})]
|
|
365
365
|
});
|
|
366
366
|
}
|