@tangle-network/sandbox-ui 7.0.2 → 7.0.3
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/dist/{dashboard-exTS8tta.js → dashboard-CYWLMJEA.js} +63 -219
- package/dist/dashboard.d.ts +1 -1
- package/dist/dashboard.js +1 -1
- package/dist/globals.css +6 -0
- package/dist/{index-CZGOlm0p.d.ts → index-CPzJzKOZ.d.ts} +0 -115
- package/dist/{index-Z6RCpkmT.d.ts → index-lDG84P5L.d.ts} +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/styles.css +6 -0
- package/dist/{workbench-DWQ0pm9w.js → workbench-LcgsEw_H.js} +1 -1
- package/dist/workbench.d.ts +1 -1
- package/dist/workbench.js +1 -1
- package/package.json +1 -1
|
@@ -9,7 +9,7 @@ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
|
9
9
|
import * as React$1 from "react";
|
|
10
10
|
import { useEffect, useId, useRef, useState } from "react";
|
|
11
11
|
import { createPortal } from "react-dom";
|
|
12
|
-
import { Activity, ArrowRight, BarChart2, Bell, Bot, Box, Camera, Check, ChevronDown, ChevronLeft, ChevronRight, Clock, Code2, Copy, Cpu, DollarSign, ExternalLink, File, FileEdit, FilePlus, GitBranch, GitCommit, Globe, HardDrive, Key, Layers, MemoryStick, MessageSquare, Monitor, MoreHorizontal, MoreVertical, Network, PanelLeft, Play, Plug, Plus, Power, PowerOff, RotateCcw, Skull, Terminal, Trash2, User, Users } from "lucide-react";
|
|
12
|
+
import { Activity, ArrowRight, BarChart2, Bell, Bot, Box, Camera, Check, ChevronDown, ChevronLeft, ChevronRight, Clock, Code2, Copy, Cpu, DollarSign, ExternalLink, File, FileEdit, FilePlus, GitBranch, GitCommit, Globe, HardDrive, Key, Layers, LogOut, MemoryStick, MessageSquare, Monitor, Moon, MoreHorizontal, MoreVertical, Network, PanelLeft, Play, Plug, Plus, Power, PowerOff, RotateCcw, Settings, Skull, Sun, Terminal, Trash2, User, Users } from "lucide-react";
|
|
13
13
|
import { focusField, focusRing, focusRingInset, timeAgo } from "@tangle-network/ui/utils";
|
|
14
14
|
import * as Select$1 from "@radix-ui/react-select";
|
|
15
15
|
// src/dashboard/sidebar-context.tsx
|
|
@@ -242,117 +242,6 @@ function getInitials(name, email) {
|
|
|
242
242
|
if (email) return email[0].toUpperCase();
|
|
243
243
|
return "?";
|
|
244
244
|
}
|
|
245
|
-
function SettingsIcon({ className }) {
|
|
246
|
-
return /* @__PURE__ */ jsxs("svg", {
|
|
247
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
248
|
-
viewBox: "0 0 24 24",
|
|
249
|
-
fill: "none",
|
|
250
|
-
stroke: "currentColor",
|
|
251
|
-
strokeWidth: "2",
|
|
252
|
-
strokeLinecap: "round",
|
|
253
|
-
strokeLinejoin: "round",
|
|
254
|
-
className,
|
|
255
|
-
children: [
|
|
256
|
-
/* @__PURE__ */ jsx("title", { children: "Settings icon" }),
|
|
257
|
-
/* @__PURE__ */ jsx("path", { d: "M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z" }),
|
|
258
|
-
/* @__PURE__ */ jsx("circle", {
|
|
259
|
-
cx: "12",
|
|
260
|
-
cy: "12",
|
|
261
|
-
r: "3"
|
|
262
|
-
})
|
|
263
|
-
]
|
|
264
|
-
});
|
|
265
|
-
}
|
|
266
|
-
function LogOutIcon({ className }) {
|
|
267
|
-
return /* @__PURE__ */ jsxs("svg", {
|
|
268
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
269
|
-
viewBox: "0 0 24 24",
|
|
270
|
-
fill: "none",
|
|
271
|
-
stroke: "currentColor",
|
|
272
|
-
strokeWidth: "2",
|
|
273
|
-
strokeLinecap: "round",
|
|
274
|
-
strokeLinejoin: "round",
|
|
275
|
-
className,
|
|
276
|
-
children: [
|
|
277
|
-
/* @__PURE__ */ jsx("title", { children: "Log out icon" }),
|
|
278
|
-
/* @__PURE__ */ jsx("path", { d: "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4" }),
|
|
279
|
-
/* @__PURE__ */ jsx("polyline", { points: "16,17 21,12 16,7" }),
|
|
280
|
-
/* @__PURE__ */ jsx("line", {
|
|
281
|
-
x1: "21",
|
|
282
|
-
x2: "9",
|
|
283
|
-
y1: "12",
|
|
284
|
-
y2: "12"
|
|
285
|
-
})
|
|
286
|
-
]
|
|
287
|
-
});
|
|
288
|
-
}
|
|
289
|
-
function SunIcon({ className }) {
|
|
290
|
-
return /* @__PURE__ */ jsxs("svg", {
|
|
291
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
292
|
-
viewBox: "0 0 24 24",
|
|
293
|
-
fill: "none",
|
|
294
|
-
stroke: "currentColor",
|
|
295
|
-
strokeWidth: "2",
|
|
296
|
-
strokeLinecap: "round",
|
|
297
|
-
strokeLinejoin: "round",
|
|
298
|
-
className,
|
|
299
|
-
children: [
|
|
300
|
-
/* @__PURE__ */ jsx("title", { children: "Light mode icon" }),
|
|
301
|
-
/* @__PURE__ */ jsx("circle", {
|
|
302
|
-
cx: "12",
|
|
303
|
-
cy: "12",
|
|
304
|
-
r: "4"
|
|
305
|
-
}),
|
|
306
|
-
/* @__PURE__ */ jsx("path", { d: "M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41" })
|
|
307
|
-
]
|
|
308
|
-
});
|
|
309
|
-
}
|
|
310
|
-
function MoonIcon({ className }) {
|
|
311
|
-
return /* @__PURE__ */ jsxs("svg", {
|
|
312
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
313
|
-
viewBox: "0 0 24 24",
|
|
314
|
-
fill: "none",
|
|
315
|
-
stroke: "currentColor",
|
|
316
|
-
strokeWidth: "2",
|
|
317
|
-
strokeLinecap: "round",
|
|
318
|
-
strokeLinejoin: "round",
|
|
319
|
-
className,
|
|
320
|
-
children: [/* @__PURE__ */ jsx("title", { children: "Dark mode icon" }), /* @__PURE__ */ jsx("path", { d: "M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z" })]
|
|
321
|
-
});
|
|
322
|
-
}
|
|
323
|
-
function PanelToggleButton({ collapsed, onToggle, className }) {
|
|
324
|
-
const label = collapsed ? "Expand sidebar" : "Collapse sidebar";
|
|
325
|
-
return /* @__PURE__ */ jsx("button", {
|
|
326
|
-
type: "button",
|
|
327
|
-
onClick: onToggle,
|
|
328
|
-
"aria-label": label,
|
|
329
|
-
"aria-pressed": collapsed,
|
|
330
|
-
title: label,
|
|
331
|
-
className: cn$1("flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors", MOTION_CONTROL, "hover:bg-[var(--accent-surface-soft)] hover:text-foreground", focusRing, className),
|
|
332
|
-
children: /* @__PURE__ */ jsx(PanelLeft, { className: "h-[18px] w-[18px] shrink-0" })
|
|
333
|
-
});
|
|
334
|
-
}
|
|
335
|
-
/**
|
|
336
|
-
* The redesigned rail header. Expanded: brand (left) · optional middle · panel
|
|
337
|
-
* toggle (right). Collapsed: only the brand mark, which morphs into the
|
|
338
|
-
* expand button on hover (brand fades out, panel glyph fades in over the same
|
|
339
|
-
* box) so the collapse affordance is discoverable without spending rail width.
|
|
340
|
-
* With no `brand` but `children`, the collapsed rail falls back to `children` —
|
|
341
|
-
* the consumer's header content is then the only mark it has.
|
|
342
|
-
* Renders a bordered `ShellHeader` row, so its divider is the line every main-pane
|
|
343
|
-
* header meets — drop it in at the top of {@link SidebarRail}.
|
|
344
|
-
*/
|
|
345
|
-
/**
|
|
346
|
-
* React renders nothing for `null`, `undefined`, booleans, empty (or
|
|
347
|
-
* all-empty) arrays and fragments whose children are all of those, so a
|
|
348
|
-
* caller's `logo={cond && <Logo />}`, `logo={maybeLogo}`, `logo={items.map(...)}`
|
|
349
|
-
* or `logo={<>{cond && <Logo />}</>}` can arrive here as a node that paints
|
|
350
|
-
* nothing. Those must count as "no brand": a strict `undefined` check would
|
|
351
|
-
* drop `railHeaderContent` from the collapsed rail for exactly them.
|
|
352
|
-
* `Children.toArray` applies React's own rule (drops the empties, flattens
|
|
353
|
-
* nested arrays) but keeps a fragment as one opaque child, so fragments are
|
|
354
|
-
* recursed into by hand to stay aligned with what actually renders.
|
|
355
|
-
*/
|
|
356
245
|
function isRenderable(node) {
|
|
357
246
|
return React$1.Children.toArray(node).some((child) => React$1.isValidElement(child) && child.type === React$1.Fragment ? isRenderable(child.props.children) : true);
|
|
358
247
|
}
|
|
@@ -360,6 +249,8 @@ function RailHeader({ brand, brandHref, children, collapsed, onToggle, collapsib
|
|
|
360
249
|
const Link = LinkComponent ?? DefaultLink$2;
|
|
361
250
|
const hasBrand = isRenderable(brand);
|
|
362
251
|
const hasChildren = isRenderable(children);
|
|
252
|
+
const overlay = collapsed && !hasBrand && hasChildren;
|
|
253
|
+
const label = collapsed ? "Expand sidebar" : "Collapse sidebar";
|
|
363
254
|
const brandNode = brandHref !== void 0 ? /* @__PURE__ */ jsx(Link, {
|
|
364
255
|
href: brandHref,
|
|
365
256
|
to: brandHref,
|
|
@@ -370,43 +261,35 @@ function RailHeader({ brand, brandHref, children, collapsed, onToggle, collapsib
|
|
|
370
261
|
className: "flex items-center justify-center p-1",
|
|
371
262
|
children: brand
|
|
372
263
|
});
|
|
373
|
-
return /* @__PURE__ */
|
|
264
|
+
return /* @__PURE__ */ jsxs(ShellHeader, {
|
|
374
265
|
divider: false,
|
|
375
266
|
className: cn$1("border-b border-[var(--md3-outline-variant)] bg-transparent", collapsed ? "justify-center px-2" : "gap-2 px-3", className),
|
|
376
|
-
children:
|
|
377
|
-
className: "relative flex min-w-0 items-center justify-center",
|
|
378
|
-
children: [
|
|
379
|
-
collapsed,
|
|
380
|
-
onToggle,
|
|
381
|
-
className: "pointer-events-none absolute inset-0 m-auto bg-background opacity-0 focus-visible:pointer-events-auto focus-visible:opacity-100"
|
|
382
|
-
})]
|
|
383
|
-
}) : collapsible ? /* @__PURE__ */ jsx(RailTooltip, {
|
|
384
|
-
label: "Expand sidebar",
|
|
385
|
-
children: /* @__PURE__ */ jsxs("button", {
|
|
386
|
-
type: "button",
|
|
387
|
-
onClick: onToggle,
|
|
388
|
-
"aria-label": "Expand sidebar",
|
|
389
|
-
"aria-pressed": true,
|
|
390
|
-
className: cn$1("group/brand relative flex h-9 w-9 items-center justify-center rounded-md transition-colors hover:bg-[var(--accent-surface-soft)]", focusRing, MOTION_CONTROL),
|
|
391
|
-
children: [/* @__PURE__ */ jsx("span", {
|
|
392
|
-
className: cn$1("flex items-center justify-center transition-opacity group-hover/brand:opacity-0", MOTION_CONTROL),
|
|
393
|
-
children: brand
|
|
394
|
-
}), /* @__PURE__ */ jsx("span", {
|
|
395
|
-
className: cn$1("pointer-events-none absolute inset-0 flex items-center justify-center text-foreground opacity-0 transition-opacity group-hover/brand:opacity-100", MOTION_CONTROL),
|
|
396
|
-
children: /* @__PURE__ */ jsx(PanelLeft, { className: "h-[18px] w-[18px]" })
|
|
397
|
-
})]
|
|
398
|
-
})
|
|
399
|
-
}) : brandNode : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
400
|
-
hasBrand && brandNode,
|
|
401
|
-
/* @__PURE__ */ jsx("div", {
|
|
402
|
-
className: "min-w-0 flex-1",
|
|
267
|
+
children: [hasBrand && !collapsed && brandNode, /* @__PURE__ */ jsxs("div", {
|
|
268
|
+
className: collapsed ? "relative flex min-w-0 items-center justify-center" : "contents",
|
|
269
|
+
children: [(!collapsed || !hasBrand) && /* @__PURE__ */ jsx("div", {
|
|
270
|
+
className: collapsed ? void 0 : "min-w-0 flex-1",
|
|
403
271
|
children
|
|
404
|
-
}),
|
|
405
|
-
|
|
406
|
-
collapsed,
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
272
|
+
}), collapsible ? /* @__PURE__ */ jsx(RailTooltip, {
|
|
273
|
+
label,
|
|
274
|
+
disabled: !collapsed || overlay,
|
|
275
|
+
className: overlay ? "pointer-events-none absolute inset-0 m-auto items-center justify-center" : void 0,
|
|
276
|
+
children: /* @__PURE__ */ jsxs("button", {
|
|
277
|
+
type: "button",
|
|
278
|
+
onClick: onToggle,
|
|
279
|
+
"aria-label": label,
|
|
280
|
+
"aria-pressed": collapsed,
|
|
281
|
+
title: collapsed ? void 0 : label,
|
|
282
|
+
className: cn$1("flex shrink-0 items-center justify-center rounded-md transition-colors hover:bg-[var(--accent-surface-soft)]", MOTION_CONTROL, focusRing, collapsed && hasBrand ? "group/brand relative h-9 w-9" : "h-8 w-8 text-muted-foreground hover:text-foreground", overlay && "pointer-events-none bg-background opacity-0 focus-visible:pointer-events-auto focus-visible:opacity-100"),
|
|
283
|
+
children: [collapsed && hasBrand && /* @__PURE__ */ jsx("span", {
|
|
284
|
+
className: cn$1("flex items-center justify-center transition-opacity group-hover/brand:opacity-0 group-focus-visible/brand:opacity-0", MOTION_CONTROL),
|
|
285
|
+
children: brand
|
|
286
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
287
|
+
className: collapsed && hasBrand ? cn$1("pointer-events-none absolute inset-0 flex items-center justify-center text-foreground opacity-0 transition-opacity group-hover/brand:opacity-100 group-focus-visible/brand:opacity-100", MOTION_CONTROL) : void 0,
|
|
288
|
+
children: /* @__PURE__ */ jsx(PanelLeft, { className: "h-[18px] w-[18px] shrink-0" })
|
|
289
|
+
})]
|
|
290
|
+
})
|
|
291
|
+
}) : collapsed && hasBrand ? brandNode : null]
|
|
292
|
+
})]
|
|
410
293
|
});
|
|
411
294
|
}
|
|
412
295
|
function Sidebar({ children, className, style }) {
|
|
@@ -470,9 +353,18 @@ function RailButton({ icon: Icon, label, isActive, badge, badgeLabel = defaultBa
|
|
|
470
353
|
className: "text-sm font-medium",
|
|
471
354
|
children: label
|
|
472
355
|
})] });
|
|
356
|
+
let trigger = /* @__PURE__ */ jsx("button", {
|
|
357
|
+
type: "button",
|
|
358
|
+
onClick,
|
|
359
|
+
"aria-label": label,
|
|
360
|
+
"aria-description": accessibleDescription,
|
|
361
|
+
className: classes,
|
|
362
|
+
style,
|
|
363
|
+
children: content
|
|
364
|
+
});
|
|
473
365
|
if (asChild && React$1.isValidElement(children)) {
|
|
474
366
|
const child = children;
|
|
475
|
-
|
|
367
|
+
trigger = React$1.cloneElement(child, {
|
|
476
368
|
className: cn$1(classes, child.props.className),
|
|
477
369
|
"aria-label": child.props["aria-label"] ?? label,
|
|
478
370
|
"aria-description": child.props["aria-description"] ?? accessibleDescription,
|
|
@@ -482,37 +374,15 @@ function RailButton({ icon: Icon, label, isActive, badge, badgeLabel = defaultBa
|
|
|
482
374
|
...style
|
|
483
375
|
}
|
|
484
376
|
}, content);
|
|
485
|
-
return /* @__PURE__ */ jsx(RailTooltip, {
|
|
486
|
-
label: tooltipLabel,
|
|
487
|
-
description,
|
|
488
|
-
disabled: tooltipDisabled,
|
|
489
|
-
className: showLabel ? "w-full" : void 0,
|
|
490
|
-
children: merged
|
|
491
|
-
});
|
|
492
377
|
}
|
|
493
378
|
return /* @__PURE__ */ jsx(RailTooltip, {
|
|
494
379
|
label: tooltipLabel,
|
|
495
380
|
description,
|
|
496
381
|
disabled: tooltipDisabled,
|
|
497
382
|
className: showLabel ? "w-full" : void 0,
|
|
498
|
-
children:
|
|
499
|
-
type: "button",
|
|
500
|
-
onClick,
|
|
501
|
-
"aria-label": label,
|
|
502
|
-
"aria-description": accessibleDescription,
|
|
503
|
-
className: classes,
|
|
504
|
-
style,
|
|
505
|
-
children: content
|
|
506
|
-
})
|
|
383
|
+
children: trigger
|
|
507
384
|
});
|
|
508
385
|
}
|
|
509
|
-
/**
|
|
510
|
-
* A rail entry that reveals its sub-surfaces in a small panel anchored to the
|
|
511
|
-
* RIGHT of the rail item, rather than pushing the rail open with an inline
|
|
512
|
-
* accordion. Opens on click, closes on outside-click, Escape, or selecting an
|
|
513
|
-
* item inside it. Use for a single "door" (e.g. Studio) that fronts several
|
|
514
|
-
* related destinations without permanently spending rail height on them.
|
|
515
|
-
*/
|
|
516
386
|
function RailFlyout({ icon: Icon, label, description, isActive, showLabel, title, children, className, style }) {
|
|
517
387
|
const [open, setOpen] = React$1.useState(false);
|
|
518
388
|
const ref = React$1.useRef(null);
|
|
@@ -555,7 +425,7 @@ function RailFlyout({ icon: Icon, label, description, isActive, showLabel, title
|
|
|
555
425
|
className: "text-sm font-medium",
|
|
556
426
|
children: label
|
|
557
427
|
}),
|
|
558
|
-
showLabel && /* @__PURE__ */ jsx(
|
|
428
|
+
showLabel && /* @__PURE__ */ jsx(ChevronRight, { className: cn$1("ml-auto h-4 w-4 shrink-0 text-muted-foreground/60 transition-transform", MOTION_CONTROL, open && "rotate-180") })
|
|
559
429
|
]
|
|
560
430
|
})
|
|
561
431
|
}), open && /* @__PURE__ */ jsxs("div", {
|
|
@@ -578,19 +448,6 @@ function RailFlyout({ icon: Icon, label, description, isActive, showLabel, title
|
|
|
578
448
|
})]
|
|
579
449
|
});
|
|
580
450
|
}
|
|
581
|
-
function ChevronRightIcon({ className }) {
|
|
582
|
-
return /* @__PURE__ */ jsxs("svg", {
|
|
583
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
584
|
-
viewBox: "0 0 24 24",
|
|
585
|
-
fill: "none",
|
|
586
|
-
stroke: "currentColor",
|
|
587
|
-
strokeWidth: "2",
|
|
588
|
-
strokeLinecap: "round",
|
|
589
|
-
strokeLinejoin: "round",
|
|
590
|
-
className,
|
|
591
|
-
children: [/* @__PURE__ */ jsx("title", { children: "Expand" }), /* @__PURE__ */ jsx("path", { d: "m9 18 6-6-6-6" })]
|
|
592
|
-
});
|
|
593
|
-
}
|
|
594
451
|
function useExpandableItems(subItems, loadSubItems) {
|
|
595
452
|
const [items, setItems] = React$1.useState(subItems ?? null);
|
|
596
453
|
const [loading, setLoading] = React$1.useState(false);
|
|
@@ -630,14 +487,6 @@ function SubItemsSkeleton() {
|
|
|
630
487
|
].map((w, i) => /* @__PURE__ */ jsx(Skeleton, { className: cn$1("h-4", w) }, i))
|
|
631
488
|
});
|
|
632
489
|
}
|
|
633
|
-
/**
|
|
634
|
-
* A nav item that reveals sub-items. On the labeled rail it expands inline as an
|
|
635
|
-
* accordion: the leading icon and chevron remain visible, their shared button
|
|
636
|
-
* toggles the list, and clicking the label navigates (`href`). On the
|
|
637
|
-
* icon-only rail it shows the sub-items in a right-anchored flyout on hover.
|
|
638
|
-
* Sub-items can be fixed (`subItems`) or lazy (`loadSubItems`, with a loading
|
|
639
|
-
* skeleton). Used for e.g. a "History" entry fronting recent sessions.
|
|
640
|
-
*/
|
|
641
490
|
function RailExpandable({ icon: Icon, label, description, href, isActive, showLabel, subItems, loadSubItems, activeSubIds, emptyLabel = "Nothing here yet", defaultOpen, onNavigate, LinkComponent, className, style }) {
|
|
642
491
|
const Link = LinkComponent ?? DefaultLink$2;
|
|
643
492
|
const [open, setOpen] = React$1.useState(defaultOpen ?? false);
|
|
@@ -846,31 +695,26 @@ function RailExpandable({ icon: Icon, label, description, href, isActive, showLa
|
|
|
846
695
|
children: [/* @__PURE__ */ jsx(Icon, {
|
|
847
696
|
className: "h-[17px] w-[17px] shrink-0",
|
|
848
697
|
"aria-hidden": true
|
|
849
|
-
}), /* @__PURE__ */ jsx(
|
|
698
|
+
}), /* @__PURE__ */ jsx(ChevronRight, {
|
|
850
699
|
className: cn$1("h-3.5 w-3.5 shrink-0 transition-transform", MOTION_CONTROL, open && "rotate-90"),
|
|
851
700
|
"aria-hidden": true
|
|
852
701
|
})]
|
|
853
|
-
}), href ?
|
|
854
|
-
href
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
})
|
|
864
|
-
}) : /* @__PURE__ */ jsx("button", {
|
|
865
|
-
type: "button",
|
|
866
|
-
onClick: toggle,
|
|
702
|
+
}), React$1.createElement(href ? Link : "button", {
|
|
703
|
+
...href ? {
|
|
704
|
+
href,
|
|
705
|
+
to: href,
|
|
706
|
+
onClick: onNavigate,
|
|
707
|
+
"aria-current": rowCurrent
|
|
708
|
+
} : {
|
|
709
|
+
type: "button",
|
|
710
|
+
onClick: toggle
|
|
711
|
+
},
|
|
867
712
|
"aria-description": description,
|
|
868
|
-
className: "flex h-9 min-w-0 flex-1 items-center pr-2.5 text-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
})]
|
|
713
|
+
className: cn$1("flex h-9 min-w-0 flex-1 items-center pr-2.5 text-sm font-medium", !href && "text-left")
|
|
714
|
+
}, /* @__PURE__ */ jsx("span", {
|
|
715
|
+
className: "truncate",
|
|
716
|
+
children: label
|
|
717
|
+
}))]
|
|
874
718
|
})
|
|
875
719
|
}), /* @__PURE__ */ jsx("div", {
|
|
876
720
|
ref: discloseRef,
|
|
@@ -939,11 +783,11 @@ function SidebarContent({ children, className }) {
|
|
|
939
783
|
const APPEARANCE_META = {
|
|
940
784
|
light: {
|
|
941
785
|
label: "Light",
|
|
942
|
-
Icon:
|
|
786
|
+
Icon: Sun
|
|
943
787
|
},
|
|
944
788
|
dark: {
|
|
945
789
|
label: "Dark",
|
|
946
|
-
Icon:
|
|
790
|
+
Icon: Moon
|
|
947
791
|
},
|
|
948
792
|
system: {
|
|
949
793
|
label: "System",
|
|
@@ -966,7 +810,7 @@ function AppearanceMenuSection({ appearance, divider = true }) {
|
|
|
966
810
|
return () => mq.removeEventListener("change", onChange);
|
|
967
811
|
}, []);
|
|
968
812
|
const resolved = appearance.value === "system" ? systemDark ? "dark" : "light" : appearance.value;
|
|
969
|
-
const TriggerIcon = resolved === "dark" ?
|
|
813
|
+
const TriggerIcon = resolved === "dark" ? Moon : Sun;
|
|
970
814
|
const caption = appearance.value === "system" ? `System (${resolved === "dark" ? "Dark" : "Light"})` : APPEARANCE_META[appearance.value].label;
|
|
971
815
|
return /* @__PURE__ */ jsxs(Fragment, { children: [divider && /* @__PURE__ */ jsx(DropdownMenuSeparator, {}), /* @__PURE__ */ jsxs(DropdownMenuSub, { children: [/* @__PURE__ */ jsxs(DropdownMenuSubTrigger, { children: [/* @__PURE__ */ jsx("span", {
|
|
972
816
|
"aria-hidden": "true",
|
|
@@ -1081,7 +925,7 @@ function ProfileAvatar({ user, isLoading = false, onLogout, onSettingsClick, set
|
|
|
1081
925
|
}),
|
|
1082
926
|
onSettingsClick ? /* @__PURE__ */ jsxs(DropdownMenuItem, {
|
|
1083
927
|
onClick: onSettingsClick,
|
|
1084
|
-
children: [/* @__PURE__ */ jsx(
|
|
928
|
+
children: [/* @__PURE__ */ jsx(Settings, {
|
|
1085
929
|
className: "mr-2 h-4 w-4",
|
|
1086
930
|
"aria-hidden": "true"
|
|
1087
931
|
}), "Settings"]
|
|
@@ -1091,7 +935,7 @@ function ProfileAvatar({ user, isLoading = false, onLogout, onSettingsClick, set
|
|
|
1091
935
|
href: settingsHref,
|
|
1092
936
|
to: settingsHref,
|
|
1093
937
|
className: "flex items-center",
|
|
1094
|
-
children: [/* @__PURE__ */ jsx(
|
|
938
|
+
children: [/* @__PURE__ */ jsx(Settings, {
|
|
1095
939
|
className: "mr-2 h-4 w-4",
|
|
1096
940
|
"aria-hidden": "true"
|
|
1097
941
|
}), "Settings"]
|
|
@@ -1100,7 +944,7 @@ function ProfileAvatar({ user, isLoading = false, onLogout, onSettingsClick, set
|
|
|
1100
944
|
onLogout && /* @__PURE__ */ jsxs(Fragment, { children: [(children || appearance || onSettingsClick || settingsHref !== null) && /* @__PURE__ */ jsx(DropdownMenuSeparator, {}), /* @__PURE__ */ jsxs(DropdownMenuItem, {
|
|
1101
945
|
className: "text-[var(--surface-danger-text)]",
|
|
1102
946
|
onClick: onLogout,
|
|
1103
|
-
children: [/* @__PURE__ */ jsx(
|
|
947
|
+
children: [/* @__PURE__ */ jsx(LogOut, {
|
|
1104
948
|
className: "mr-2 h-4 w-4",
|
|
1105
949
|
"aria-hidden": "true"
|
|
1106
950
|
}), "Sign Out"]
|
package/dist/dashboard.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as SandboxTable, $t as Sidebar, A as MetricChartPoint, At as SIDEBAR_TOTAL_WIDTH, B as ProductVariant, Bt as RailButton, C as UsageSummary, Ct as OutOfCreditsModal, D as SystemLogsViewerProps, Dt as SIDEBAR_PANEL_WIDTH, E as SystemLogsViewer, Et as SIDEBAR_MOBILE_WIDTH, F as SidebarLayoutProps, Ft as RailTooltipProps, G as HARNESS_OPTIONS, Gt as RailFlyout, H as HarnessBrand, Ht as RailExpandable, I as DashboardLayout, It as McpServer, J as HarnessType, Jt as RailHeaderProps, K as HarnessPicker, Kt as RailFlyoutProps, L as DashboardLayoutProps, Lt as AppearanceController, M as SidebarLayout, Mt as SidebarProviderProps, N as SidebarLayoutFlyoutItem, Nt as useSidebar, O as MetricAreaChart, Ot as SIDEBAR_RAIL_LABELED_WIDTH, P as SidebarLayoutNavItem, Pt as RailTooltip, Q as BackendSelectorProps, Qt as RailSeparatorProps, R as DashboardUser, Rt as ProfileAvatar, S as GitStatusData, St as InsufficientBalance, T as UsageSummaryProps, Tt as parseInsufficientBalance, U as HarnessLogo, Ut as RailExpandableProps, V as HARNESS_BRAND, Vt as RailButtonProps, W as HarnessLogoProps, Wt as RailExpandableSubItem, X as Backend, Xt as RailModeButtonProps, Y as chatCapableHarnesses, Yt as RailModeButton, Z as BackendSelector, Zt as RailSeparator, _ as PortsList, _t as ResourceSnapshotItem, a as PromoBanner, an as SidebarPanelHeader, at as NewSandboxCard, b as GitPanel, bt as ResourceMeterProps, c as SnapshotList, cn as SidebarProps, ct as SandboxCardData, d as ProcessList, dn as SidebarRailFooterProps, dt as TeamRole, en as SidebarContent, et as SandboxTableProps, f as ProcessListProps, fn as SidebarRailNav, ft as canAdminSandbox, g as ExposedPort, gn as ThemeMode, gt as ResourceSnapshot, h as TemplateCardProps, hn as SidebarUser, ht as ActivityItem, i as SandboxPageShellProps, in as SidebarPanelContentProps, it as sandboxStatus, j as MetricChartTone, jt as SidebarProvider, k as MetricAreaChartProps, kt as SIDEBAR_RAIL_WIDTH, l as SnapshotListProps, ln as SidebarRail, lt as SandboxCardProps, m as TemplateCardData, mn as SidebarRailProps, mt as ActivityFeedProps, n as DashboardPageHeaderProps, nn as SidebarPanel, nt as SandboxStatusPill, o as PromoBannerProps, on as SidebarPanelHeaderProps, ot as NewSandboxCardProps, p as TemplateCard, pn as SidebarRailNavProps, pt as ActivityFeed, q as HarnessPickerProps, qt as RailHeader, r as SandboxPageShell, rn as SidebarPanelContent, rt as SandboxStatusPillProps, s as SnapshotInfo, sn as SidebarPanelProps, st as SandboxCard, t as DashboardPageHeader, tn as SidebarContentProps, tt as SANDBOX_STATUS, u as ProcessInfo, un as SidebarRailFooter, ut as SandboxStatus, v as PortsListProps, vt as ResourceSnapshotProps, w as UsageSummaryData, wt as OutOfCreditsModalProps, x as GitPanelProps, xt as INSUFFICIENT_BALANCE_CODE, y as GitCommitData, yt as ResourceMeter, z as NavItem, zt as ProfileAvatarProps } from "./index-
|
|
1
|
+
import { $ as SandboxTable, $t as Sidebar, A as MetricChartPoint, At as SIDEBAR_TOTAL_WIDTH, B as ProductVariant, Bt as RailButton, C as UsageSummary, Ct as OutOfCreditsModal, D as SystemLogsViewerProps, Dt as SIDEBAR_PANEL_WIDTH, E as SystemLogsViewer, Et as SIDEBAR_MOBILE_WIDTH, F as SidebarLayoutProps, Ft as RailTooltipProps, G as HARNESS_OPTIONS, Gt as RailFlyout, H as HarnessBrand, Ht as RailExpandable, I as DashboardLayout, It as McpServer, J as HarnessType, Jt as RailHeaderProps, K as HarnessPicker, Kt as RailFlyoutProps, L as DashboardLayoutProps, Lt as AppearanceController, M as SidebarLayout, Mt as SidebarProviderProps, N as SidebarLayoutFlyoutItem, Nt as useSidebar, O as MetricAreaChart, Ot as SIDEBAR_RAIL_LABELED_WIDTH, P as SidebarLayoutNavItem, Pt as RailTooltip, Q as BackendSelectorProps, Qt as RailSeparatorProps, R as DashboardUser, Rt as ProfileAvatar, S as GitStatusData, St as InsufficientBalance, T as UsageSummaryProps, Tt as parseInsufficientBalance, U as HarnessLogo, Ut as RailExpandableProps, V as HARNESS_BRAND, Vt as RailButtonProps, W as HarnessLogoProps, Wt as RailExpandableSubItem, X as Backend, Xt as RailModeButtonProps, Y as chatCapableHarnesses, Yt as RailModeButton, Z as BackendSelector, Zt as RailSeparator, _ as PortsList, _t as ResourceSnapshotItem, a as PromoBanner, an as SidebarPanelHeader, at as NewSandboxCard, b as GitPanel, bt as ResourceMeterProps, c as SnapshotList, cn as SidebarProps, ct as SandboxCardData, d as ProcessList, dn as SidebarRailFooterProps, dt as TeamRole, en as SidebarContent, et as SandboxTableProps, f as ProcessListProps, fn as SidebarRailNav, ft as canAdminSandbox, g as ExposedPort, gn as ThemeMode, gt as ResourceSnapshot, h as TemplateCardProps, hn as SidebarUser, ht as ActivityItem, i as SandboxPageShellProps, in as SidebarPanelContentProps, it as sandboxStatus, j as MetricChartTone, jt as SidebarProvider, k as MetricAreaChartProps, kt as SIDEBAR_RAIL_WIDTH, l as SnapshotListProps, ln as SidebarRail, lt as SandboxCardProps, m as TemplateCardData, mn as SidebarRailProps, mt as ActivityFeedProps, n as DashboardPageHeaderProps, nn as SidebarPanel, nt as SandboxStatusPill, o as PromoBannerProps, on as SidebarPanelHeaderProps, ot as NewSandboxCardProps, p as TemplateCard, pn as SidebarRailNavProps, pt as ActivityFeed, q as HarnessPickerProps, qt as RailHeader, r as SandboxPageShell, rn as SidebarPanelContent, rt as SandboxStatusPillProps, s as SnapshotInfo, sn as SidebarPanelProps, st as SandboxCard, t as DashboardPageHeader, tn as SidebarContentProps, tt as SANDBOX_STATUS, u as ProcessInfo, un as SidebarRailFooter, ut as SandboxStatus, v as PortsListProps, vt as ResourceSnapshotProps, w as UsageSummaryData, wt as OutOfCreditsModalProps, x as GitPanelProps, xt as INSUFFICIENT_BALANCE_CODE, y as GitCommitData, yt as ResourceMeter, z as NavItem, zt as ProfileAvatarProps } from "./index-CPzJzKOZ.js";
|
|
2
2
|
import { a as canonicalModelId, i as ProviderMark, n as ModelBrandStack, o as modelBrandFor, r as ModelInfo, t as ModelBrandIdentity } from "./model-brand-ZwVS49Fq.js";
|
|
3
3
|
import { a as PricingPageProps, c as BillingBalance, d as BillingSubscription, f as BillingUsage, i as PricingPage, l as BillingDashboard, n as UsageChartProps, o as PricingTier, r as UsageDataPoint, s as formatPrice, t as UsageChart, u as BillingDashboardProps } from "./usage-chart-BFpdkqNq.js";
|
|
4
4
|
export { ActivityFeed, type ActivityFeedProps, type ActivityItem, type AppearanceController, type Backend, BackendSelector, type BackendSelectorProps, type BillingBalance, BillingDashboard, type BillingDashboardProps, type BillingSubscription, type BillingUsage, DashboardLayout, type DashboardLayoutProps, DashboardPageHeader, type DashboardPageHeaderProps, type SnapshotInfo as DashboardSnapshotInfo, type DashboardUser, type ExposedPort, type GitCommitData, GitPanel, type GitPanelProps, type GitStatusData, HARNESS_BRAND, HARNESS_OPTIONS, type HarnessBrand, HarnessLogo, type HarnessLogoProps, HarnessPicker, type HarnessPickerProps, type HarnessType, INSUFFICIENT_BALANCE_CODE, type InsufficientBalance, type McpServer, MetricAreaChart, type MetricAreaChartProps, type MetricChartPoint, type MetricChartTone, type ModelBrandIdentity, ModelBrandStack, type ModelInfo, type NavItem, NewSandboxCard, type NewSandboxCardProps, OutOfCreditsModal, type OutOfCreditsModalProps, PortsList, type PortsListProps, PricingPage, type PricingPageProps, type PricingTier, type ProcessInfo, ProcessList, type ProcessListProps, type ProductVariant, ProfileAvatar, type ProfileAvatarProps, PromoBanner, type PromoBannerProps, ProviderMark, RailButton, type RailButtonProps, RailExpandable, type RailExpandableProps, type RailExpandableSubItem, RailFlyout, type RailFlyoutProps, RailHeader, type RailHeaderProps, RailModeButton, type RailModeButtonProps, RailSeparator, type RailSeparatorProps, RailTooltip, type RailTooltipProps, ResourceMeter, type ResourceMeterProps, ResourceSnapshot, type ResourceSnapshotItem, type ResourceSnapshotProps, SANDBOX_STATUS, SIDEBAR_MOBILE_WIDTH, SIDEBAR_PANEL_WIDTH, SIDEBAR_RAIL_LABELED_WIDTH, SIDEBAR_RAIL_WIDTH, SIDEBAR_TOTAL_WIDTH, SandboxCard, type SandboxCardData, type SandboxCardProps, SandboxPageShell, type SandboxPageShellProps, type SandboxStatus, SandboxStatusPill, type SandboxStatusPillProps, SandboxTable, type SandboxTableProps, Sidebar, SidebarContent, type SidebarContentProps, SidebarLayout, type SidebarLayoutFlyoutItem, type SidebarLayoutNavItem, type SidebarLayoutProps, SidebarPanel, SidebarPanelContent, type SidebarPanelContentProps, SidebarPanelHeader, type SidebarPanelHeaderProps, type SidebarPanelProps, type SidebarProps, SidebarProvider, type SidebarProviderProps, SidebarRail, SidebarRailFooter, type SidebarRailFooterProps, SidebarRailNav, type SidebarRailNavProps, type SidebarRailProps, type SidebarUser, SnapshotList, type SnapshotListProps, SystemLogsViewer, type SystemLogsViewerProps, type TeamRole, TemplateCard, type TemplateCardData, type TemplateCardProps, type ThemeMode, UsageChart, type UsageChartProps, type UsageDataPoint, UsageSummary, type UsageSummaryData, type UsageSummaryProps, canAdminSandbox, canonicalModelId, chatCapableHarnesses, formatPrice, modelBrandFor, parseInsufficientBalance, sandboxStatus, useSidebar };
|
package/dist/dashboard.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as useSidebar, A as parseInsufficientBalance, B as SidebarPanel, C as SandboxStatusPill, D as ResourceMeter, E as ResourceSnapshot, F as RailHeader, G as SidebarRailNav, H as SidebarPanelHeader, I as RailModeButton, J as SIDEBAR_PANEL_WIDTH, K as RailTooltip, L as RailSeparator, M as RailButton, N as RailExpandable, O as INSUFFICIENT_BALANCE_CODE, P as RailFlyout, Q as SidebarProvider, R as Sidebar, S as SANDBOX_STATUS, T as ActivityFeed, U as SidebarRail, V as SidebarPanelContent, W as SidebarRailFooter, X as SIDEBAR_RAIL_WIDTH, Y as SIDEBAR_RAIL_LABELED_WIDTH, Z as SIDEBAR_TOTAL_WIDTH, _ as BackendSelector, a as PortsList, b as SandboxCard, c as SystemLogsViewer, d as DashboardLayout, f as HARNESS_OPTIONS, g as HarnessLogo, h as HARNESS_BRAND, i as TemplateCard, j as ProfileAvatar, k as OutOfCreditsModal, l as MetricAreaChart, m as chatCapableHarnesses, n as SnapshotList, o as GitPanel, p as HarnessPicker, q as SIDEBAR_MOBILE_WIDTH, r as ProcessList, s as UsageSummary, t as PromoBanner, u as SidebarLayout, v as SandboxTable, w as sandboxStatus, x as canAdminSandbox, y as NewSandboxCard, z as SidebarContent } from "./dashboard-
|
|
1
|
+
import { $ as useSidebar, A as parseInsufficientBalance, B as SidebarPanel, C as SandboxStatusPill, D as ResourceMeter, E as ResourceSnapshot, F as RailHeader, G as SidebarRailNav, H as SidebarPanelHeader, I as RailModeButton, J as SIDEBAR_PANEL_WIDTH, K as RailTooltip, L as RailSeparator, M as RailButton, N as RailExpandable, O as INSUFFICIENT_BALANCE_CODE, P as RailFlyout, Q as SidebarProvider, R as Sidebar, S as SANDBOX_STATUS, T as ActivityFeed, U as SidebarRail, V as SidebarPanelContent, W as SidebarRailFooter, X as SIDEBAR_RAIL_WIDTH, Y as SIDEBAR_RAIL_LABELED_WIDTH, Z as SIDEBAR_TOTAL_WIDTH, _ as BackendSelector, a as PortsList, b as SandboxCard, c as SystemLogsViewer, d as DashboardLayout, f as HARNESS_OPTIONS, g as HarnessLogo, h as HARNESS_BRAND, i as TemplateCard, j as ProfileAvatar, k as OutOfCreditsModal, l as MetricAreaChart, m as chatCapableHarnesses, n as SnapshotList, o as GitPanel, p as HarnessPicker, q as SIDEBAR_MOBILE_WIDTH, r as ProcessList, s as UsageSummary, t as PromoBanner, u as SidebarLayout, v as SandboxTable, w as sandboxStatus, x as canAdminSandbox, y as NewSandboxCard, z as SidebarContent } from "./dashboard-CYWLMJEA.js";
|
|
2
2
|
import { i as modelBrandFor, n as ProviderMark, r as canonicalModelId, t as ModelBrandStack } from "./model-brand-BQlarCIo.js";
|
|
3
3
|
import { a as formatPrice, i as PricingPage, n as SandboxPageShell, o as BillingDashboard, r as UsageChart, t as DashboardPageHeader } from "./page-layout-CuOpvZys.js";
|
|
4
4
|
export { ActivityFeed, BackendSelector, BillingDashboard, DashboardLayout, DashboardPageHeader, GitPanel, HARNESS_BRAND, HARNESS_OPTIONS, HarnessLogo, HarnessPicker, INSUFFICIENT_BALANCE_CODE, MetricAreaChart, ModelBrandStack, NewSandboxCard, OutOfCreditsModal, PortsList, PricingPage, ProcessList, ProfileAvatar, PromoBanner, ProviderMark, RailButton, RailExpandable, RailFlyout, RailHeader, RailModeButton, RailSeparator, RailTooltip, ResourceMeter, ResourceSnapshot, SANDBOX_STATUS, SIDEBAR_MOBILE_WIDTH, SIDEBAR_PANEL_WIDTH, SIDEBAR_RAIL_LABELED_WIDTH, SIDEBAR_RAIL_WIDTH, SIDEBAR_TOTAL_WIDTH, SandboxCard, SandboxPageShell, SandboxStatusPill, SandboxTable, Sidebar, SidebarContent, SidebarLayout, SidebarPanel, SidebarPanelContent, SidebarPanelHeader, SidebarProvider, SidebarRail, SidebarRailFooter, SidebarRailNav, SnapshotList, SystemLogsViewer, TemplateCard, UsageChart, UsageSummary, canAdminSandbox, canonicalModelId, chatCapableHarnesses, formatPrice, modelBrandFor, parseInsufficientBalance, sandboxStatus, useSidebar };
|
package/dist/globals.css
CHANGED
|
@@ -4688,6 +4688,12 @@
|
|
|
4688
4688
|
.group-focus-visible\:bg-ring:is(:where(.group):focus-visible *) {
|
|
4689
4689
|
background-color: hsl(var(--ring));
|
|
4690
4690
|
}
|
|
4691
|
+
.group-focus-visible\/brand\:opacity-0:is(:where(.group\/brand):focus-visible *) {
|
|
4692
|
+
opacity: 0%;
|
|
4693
|
+
}
|
|
4694
|
+
.group-focus-visible\/brand\:opacity-100:is(:where(.group\/brand):focus-visible *) {
|
|
4695
|
+
opacity: 100%;
|
|
4696
|
+
}
|
|
4691
4697
|
.group-data-\[state\=indeterminate\]\/checkbox\:block:is(:where(.group\/checkbox)[data-state="indeterminate"] *) {
|
|
4692
4698
|
display: block;
|
|
4693
4699
|
}
|
|
@@ -10,43 +10,18 @@ interface SidebarUser {
|
|
|
10
10
|
tier?: string;
|
|
11
11
|
avatarUrl?: string;
|
|
12
12
|
}
|
|
13
|
-
/** Theme modes offered by the account menu's Appearance section. */
|
|
14
13
|
type ThemeMode = "light" | "dark" | "system";
|
|
15
|
-
/**
|
|
16
|
-
* Host-supplied controller for the account-menu Appearance section. The rail is
|
|
17
|
-
* theme-engine-agnostic: each app wires this to its own theme hook (gtm-agent
|
|
18
|
-
* uses the shared `useTheme`; the sandbox app uses its `vault`-aware
|
|
19
|
-
* `useThemeMode`). Provide it to {@link ProfileAvatar} to render Light/Dark/System.
|
|
20
|
-
*/
|
|
21
14
|
interface AppearanceController {
|
|
22
15
|
value: ThemeMode;
|
|
23
16
|
onChange: (mode: ThemeMode) => void;
|
|
24
|
-
/** Which modes to offer, in order. Defaults to all three. */
|
|
25
17
|
modes?: ThemeMode[];
|
|
26
18
|
}
|
|
27
19
|
interface RailHeaderProps {
|
|
28
|
-
/** Brand mark shown on the left, e.g. `<Logo iconOnly />`. */
|
|
29
20
|
brand?: React$1.ReactNode;
|
|
30
|
-
/** Destination for the brand link. When set with `LinkComponent`, the brand is a link. */
|
|
31
21
|
brandHref?: string;
|
|
32
|
-
/**
|
|
33
|
-
* Optional middle content (e.g. a project/workspace switcher).
|
|
34
|
-
*
|
|
35
|
-
* When `brand` is set, this is expanded-only — the collapsed rail has room
|
|
36
|
-
* for the mark alone. When `brand` is NOT set this content owns the rail top
|
|
37
|
-
* in BOTH states, so it is also rendered collapsed; read `useSidebar()` to
|
|
38
|
-
* swap in a compact mark there.
|
|
39
|
-
*/
|
|
40
22
|
children?: React$1.ReactNode;
|
|
41
|
-
/** Whether the rail is collapsed (icon-only). */
|
|
42
23
|
collapsed: boolean;
|
|
43
|
-
/** Collapse/expand the rail. */
|
|
44
24
|
onToggle: () => void;
|
|
45
|
-
/**
|
|
46
|
-
* Whether the rail can collapse/expand. When `false`, no panel toggle is
|
|
47
|
-
* rendered and the collapsed header shows the brand without the hover-morph.
|
|
48
|
-
* Defaults to `true`.
|
|
49
|
-
*/
|
|
50
25
|
collapsible?: boolean;
|
|
51
26
|
LinkComponent?: React$1.ComponentType<any>;
|
|
52
27
|
className?: string;
|
|
@@ -61,22 +36,12 @@ declare function Sidebar({ children, className, style }: SidebarProps): React$1.
|
|
|
61
36
|
interface SidebarRailProps {
|
|
62
37
|
children: React$1.ReactNode;
|
|
63
38
|
className?: string;
|
|
64
|
-
/**
|
|
65
|
-
* Render the rail at the wider mobile-drawer width so labels fit
|
|
66
|
-
* beside the icons. Defaults to the 64px icon-only rail used on
|
|
67
|
-
* desktop.
|
|
68
|
-
*/
|
|
69
39
|
wide?: boolean;
|
|
70
40
|
}
|
|
71
41
|
declare function SidebarRail({ children, className, wide }: SidebarRailProps): React$1.JSX.Element;
|
|
72
42
|
interface SidebarRailNavProps {
|
|
73
43
|
children: React$1.ReactNode;
|
|
74
44
|
className?: string;
|
|
75
|
-
/**
|
|
76
|
-
* Click handler on the `<nav>` itself. Layouts use it (with a
|
|
77
|
-
* `target === currentTarget` guard) so clicking the empty body of a collapsed
|
|
78
|
-
* rail expands it, without intercepting clicks on the nav items.
|
|
79
|
-
*/
|
|
80
45
|
onClick?: React$1.MouseEventHandler<HTMLElement>;
|
|
81
46
|
}
|
|
82
47
|
declare function SidebarRailNav({ children, className, onClick }: SidebarRailNavProps): React$1.JSX.Element;
|
|
@@ -96,42 +61,14 @@ interface RailButtonProps {
|
|
|
96
61
|
label: string;
|
|
97
62
|
isActive?: boolean;
|
|
98
63
|
badge?: number;
|
|
99
|
-
/**
|
|
100
|
-
* Describes the badge count to assistive tech and in the icon-only rail's
|
|
101
|
-
* tooltip, e.g. `(n) => \`${n} running\``. Defaults to `"<n> new"`.
|
|
102
|
-
*/
|
|
103
64
|
badgeLabel?: (count: number) => string;
|
|
104
65
|
onClick?: () => void;
|
|
105
66
|
className?: string;
|
|
106
|
-
/** Show label text next to icon (for mobile drawer) */
|
|
107
67
|
showLabel?: boolean;
|
|
108
|
-
/**
|
|
109
|
-
* One line saying what the destination is for, e.g. "Every past agent run".
|
|
110
|
-
* Shown in the hover tooltip under the label (the labeled rail shows the
|
|
111
|
-
* tooltip only when a description exists) and announced as the link's
|
|
112
|
-
* accessible description, so an unfamiliar nav item explains itself.
|
|
113
|
-
*/
|
|
114
68
|
description?: string;
|
|
115
|
-
/**
|
|
116
|
-
* Render the rail-button styling onto a single child element (e.g. a router
|
|
117
|
-
* `<Link>`) instead of an inner `<button>`. The child receives the button
|
|
118
|
-
* classes, `title`, and the icon/label/badge as its content — so navigation
|
|
119
|
-
* items stay real anchors (keyboard, cmd-click, prefetch) without copying the
|
|
120
|
-
* class recipe or nesting `<a><button>`.
|
|
121
|
-
*/
|
|
122
69
|
asChild?: boolean;
|
|
123
70
|
children?: React$1.ReactNode;
|
|
124
|
-
/**
|
|
125
|
-
* `"primary"` gives the item a distinct emphasized pill (accent fill + accent
|
|
126
|
-
* border) so it stands out from the rest of the nav, e.g. a "New" action.
|
|
127
|
-
* Defaults to `"normal"`.
|
|
128
|
-
*/
|
|
129
71
|
variant?: "normal" | "primary";
|
|
130
|
-
/**
|
|
131
|
-
* Inline style for the rendered row. Layouts use it to set `--stagger-index`
|
|
132
|
-
* so a rail of nav items arrives as a sequence rather than a flash; the
|
|
133
|
-
* variable has to land on the animated element itself, which is this one.
|
|
134
|
-
*/
|
|
135
72
|
style?: React$1.CSSProperties;
|
|
136
73
|
}
|
|
137
74
|
declare function RailButton({ icon: Icon, label, isActive, badge, badgeLabel, onClick, className, showLabel, description, asChild, children, variant, style }: RailButtonProps): React$1.JSX.Element;
|
|
@@ -140,40 +77,24 @@ interface RailFlyoutProps {
|
|
|
140
77
|
className?: string;
|
|
141
78
|
}>;
|
|
142
79
|
label: string;
|
|
143
|
-
/** Explains this destination in accessible text and its tooltip or open flyout. */
|
|
144
80
|
description?: string;
|
|
145
|
-
/** Highlight the trigger (e.g. when a child route is active). */
|
|
146
81
|
isActive?: boolean;
|
|
147
|
-
/** Show the label text beside the icon (labeled rail) vs. icon-only. */
|
|
148
82
|
showLabel?: boolean;
|
|
149
|
-
/** Heading rendered at the top of the open flyout. Defaults to `label`. */
|
|
150
83
|
title?: string;
|
|
151
|
-
/** Flyout body — the sub-surfaces revealed when the item is opened. */
|
|
152
84
|
children: React$1.ReactNode;
|
|
153
85
|
className?: string;
|
|
154
|
-
/** @see {@link RailButtonProps.style} — carries `--stagger-index` in a rail. */
|
|
155
86
|
style?: React$1.CSSProperties;
|
|
156
87
|
}
|
|
157
|
-
/**
|
|
158
|
-
* A rail entry that reveals its sub-surfaces in a small panel anchored to the
|
|
159
|
-
* RIGHT of the rail item, rather than pushing the rail open with an inline
|
|
160
|
-
* accordion. Opens on click, closes on outside-click, Escape, or selecting an
|
|
161
|
-
* item inside it. Use for a single "door" (e.g. Studio) that fronts several
|
|
162
|
-
* related destinations without permanently spending rail height on them.
|
|
163
|
-
*/
|
|
164
88
|
declare function RailFlyout({ icon: Icon, label, description, isActive, showLabel, title, children, className, style }: RailFlyoutProps): React$1.JSX.Element;
|
|
165
|
-
/** A single entry in a sub-item's hover actions menu (kebab). */
|
|
166
89
|
interface RailSubItemAction {
|
|
167
90
|
id: string;
|
|
168
91
|
label: string;
|
|
169
92
|
icon?: React$1.ComponentType<{
|
|
170
93
|
className?: string;
|
|
171
94
|
}>;
|
|
172
|
-
/** Style the item as a destructive action (e.g. delete). */
|
|
173
95
|
destructive?: boolean;
|
|
174
96
|
onSelect: () => void;
|
|
175
97
|
}
|
|
176
|
-
/** A sub-destination revealed by a {@link RailExpandable} item. */
|
|
177
98
|
interface RailExpandableSubItem {
|
|
178
99
|
id: string;
|
|
179
100
|
label: string;
|
|
@@ -182,16 +103,9 @@ interface RailExpandableSubItem {
|
|
|
182
103
|
}>;
|
|
183
104
|
href: string;
|
|
184
105
|
prefetch?: "none" | "intent" | "render" | "viewport";
|
|
185
|
-
/** Show a live working indicator on the row while the item is busy. */
|
|
186
106
|
isLoading?: boolean;
|
|
187
|
-
/** Render the row emphasized (bold + accent) so it stands out — e.g. a
|
|
188
|
-
* trailing "view all" action below a capped list. */
|
|
189
107
|
emphasis?: boolean;
|
|
190
|
-
/** Mark the row as unread — bold label + a leading dot. Suppressed while
|
|
191
|
-
* `isLoading` so a responding row shows only the working indicator. */
|
|
192
108
|
unread?: boolean;
|
|
193
|
-
/** Hover-revealed kebab actions (e.g. rename/delete). Rendered on the
|
|
194
|
-
* labeled rail only; ignored in the collapsed-rail flyout. */
|
|
195
109
|
actions?: RailSubItemAction[];
|
|
196
110
|
}
|
|
197
111
|
interface RailExpandableProps {
|
|
@@ -199,39 +113,20 @@ interface RailExpandableProps {
|
|
|
199
113
|
className?: string;
|
|
200
114
|
}>;
|
|
201
115
|
label: string;
|
|
202
|
-
/** Explains this destination in accessible text and its tooltip or open flyout. */
|
|
203
116
|
description?: string;
|
|
204
|
-
/** Destination for the row itself. Clicking the label navigates here. */
|
|
205
117
|
href?: string;
|
|
206
|
-
/** Highlight the row (e.g. its own route or a child route is active). */
|
|
207
118
|
isActive?: boolean;
|
|
208
|
-
/** Labeled (expanded) rail vs. icon-only (collapsed) rail. */
|
|
209
119
|
showLabel?: boolean;
|
|
210
|
-
/** Fixed sub-items. Mutually exclusive with `loadSubItems`. */
|
|
211
120
|
subItems?: RailExpandableSubItem[];
|
|
212
|
-
/** Lazy sub-items — called once on first open; the result is cached. */
|
|
213
121
|
loadSubItems?: () => Promise<RailExpandableSubItem[]>;
|
|
214
|
-
/** Start expanded on mount (labeled rail). Defaults to collapsed. */
|
|
215
122
|
defaultOpen?: boolean;
|
|
216
|
-
/** Ids of sub-items whose route is active (drives sub-item highlight). */
|
|
217
123
|
activeSubIds?: string[];
|
|
218
|
-
/** Shown when the resolved sub-item list is empty. */
|
|
219
124
|
emptyLabel?: string;
|
|
220
|
-
/** Called when the row or a sub-item navigates (e.g. to close a mobile drawer). */
|
|
221
125
|
onNavigate?: () => void;
|
|
222
126
|
LinkComponent?: React$1.ComponentType<any>;
|
|
223
127
|
className?: string;
|
|
224
|
-
/** @see {@link RailButtonProps.style} — carries `--stagger-index` in a rail. */
|
|
225
128
|
style?: React$1.CSSProperties;
|
|
226
129
|
}
|
|
227
|
-
/**
|
|
228
|
-
* A nav item that reveals sub-items. On the labeled rail it expands inline as an
|
|
229
|
-
* accordion: the leading icon and chevron remain visible, their shared button
|
|
230
|
-
* toggles the list, and clicking the label navigates (`href`). On the
|
|
231
|
-
* icon-only rail it shows the sub-items in a right-anchored flyout on hover.
|
|
232
|
-
* Sub-items can be fixed (`subItems`) or lazy (`loadSubItems`, with a loading
|
|
233
|
-
* skeleton). Used for e.g. a "History" entry fronting recent sessions.
|
|
234
|
-
*/
|
|
235
130
|
declare function RailExpandable({ icon: Icon, label, description, href, isActive, showLabel, subItems, loadSubItems, activeSubIds, emptyLabel, defaultOpen, onNavigate, LinkComponent, className, style }: RailExpandableProps): React$1.JSX.Element;
|
|
236
131
|
interface RailModeButtonProps {
|
|
237
132
|
mode: string;
|
|
@@ -240,12 +135,9 @@ interface RailModeButtonProps {
|
|
|
240
135
|
}>;
|
|
241
136
|
label: string;
|
|
242
137
|
badge?: number;
|
|
243
|
-
/** @see {@link RailButtonProps.badgeLabel} */
|
|
244
138
|
badgeLabel?: (count: number) => string;
|
|
245
139
|
className?: string;
|
|
246
|
-
/** Show label text next to icon (for mobile drawer) */
|
|
247
140
|
showLabel?: boolean;
|
|
248
|
-
/** @see {@link RailButtonProps.style} — carries `--stagger-index` in a rail. */
|
|
249
141
|
style?: React$1.CSSProperties;
|
|
250
142
|
}
|
|
251
143
|
declare function RailModeButton({ mode, icon, label, badge, badgeLabel, className, showLabel, style }: RailModeButtonProps): React$1.JSX.Element;
|
|
@@ -275,17 +167,10 @@ interface ProfileAvatarProps {
|
|
|
275
167
|
isLoading?: boolean;
|
|
276
168
|
onLogout?: () => void;
|
|
277
169
|
onSettingsClick?: () => void;
|
|
278
|
-
/** Pass null when the host has no settings destination. */
|
|
279
170
|
settingsHref?: string | null;
|
|
280
|
-
/** Extra dropdown items rendered before settings/logout */
|
|
281
171
|
children?: React$1.ReactNode;
|
|
282
172
|
className?: string;
|
|
283
|
-
/** Show name/email beside the avatar (for a labeled rail) instead of an icon-only avatar button. */
|
|
284
173
|
showDetails?: boolean;
|
|
285
|
-
/**
|
|
286
|
-
* When provided, the menu renders an Appearance section (Light/Dark/System)
|
|
287
|
-
* driven by this host-supplied controller. Omit to hide it.
|
|
288
|
-
*/
|
|
289
174
|
appearance?: AppearanceController;
|
|
290
175
|
LinkComponent?: React$1.ComponentType<any>;
|
|
291
176
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as ExposedPort } from "./index-
|
|
1
|
+
import { g as ExposedPort } from "./index-CPzJzKOZ.js";
|
|
2
2
|
import { D as RichFileTreeGitStatus, E as RichFileTreeGitEntry } from "./index-BZJKLu3k.js";
|
|
3
3
|
import "./diff-view-DDHWtR6X.js";
|
|
4
4
|
import { a as PreviewReadiness, i as PreviewAccess } from "./embedded-app-view-Ta5GI4hx.js";
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as LoginLayout, c as UserMenu, d as TangleLoginButtonProps, i as GitHubLoginButtonProps, l as UserMenuProps, n as AuthHeaderProps, o as LoginLayoutProps, r as GitHubLoginButton, s as SessionUser, t as AuthHeader, u as TangleLoginButton } from "./index-BbfWVtZq.js";
|
|
2
2
|
import { $ as AgentProfilePicker, A as SpeakerSection, B as partitionBySpeaker, C as MessageList, D as SpeakerHeader, E as Speaker, F as UserMessage, G as ArtifactDockStreamEvent, H as ArtifactAgentDockProps, I as UserMessageProps, J as modelProvider, K as ArtifactKind, L as agentTimelineStepKind, M as TRANSCRIPT_TEXT, N as ThinkingIndicator, O as SpeakerHeaderProps, P as ThinkingIndicatorProps, Q as AgentProfileOption, R as foldSummary, S as MessageAuthorProps, T as MessageRole, U as ArtifactAgentDockTransport, V as ArtifactAgentDock, W as ArtifactDockMessage, X as AgentProfileCapability, Y as snapHarnessToModel, Z as AgentProfileDraft, _ as ChatContainer, a as AgentTimelineFoldItem, at as ReasoningLevelPicker, b as ChatMessageProps, c as AgentTimelineProps, d as AgentTimelineStepKind, et as AgentProfilePickerProps, f as AgentTimelineStepProps, g as ChatAuthor, h as AgentTimelineToolItem, i as AgentTimelineCustomItem, it as ReasoningLevelOption, j as SpeakerState, k as SpeakerPart, l as AgentTimelineStatusItem, m as AgentTimelineToolGroupItem, n as AgentTimelineArtifactItem, nt as HARNESS_REASONING_OPTIONS, o as AgentTimelineItem, ot as ReasoningLevelPickerProps, p as AgentTimelineTone, q as ArtifactScope, r as AgentTimelineColumn, rt as ReasoningLevel, s as AgentTimelineMessageItem, t as AgentTimeline, tt as DEFAULT_REASONING_LEVEL_OPTIONS, u as AgentTimelineStep, v as ChatContainerProps, w as MessageListProps, x as MessageAuthor, y as ChatMessage, z as isViewerMessage } from "./index-1Q4Jtlic.js";
|
|
3
|
-
import { $ as SandboxTable, $t as Sidebar, A as MetricChartPoint, At as SIDEBAR_TOTAL_WIDTH, B as ProductVariant, Bt as RailButton, C as UsageSummary, Ct as OutOfCreditsModal, D as SystemLogsViewerProps, Dt as SIDEBAR_PANEL_WIDTH, E as SystemLogsViewer, Et as SIDEBAR_MOBILE_WIDTH, F as SidebarLayoutProps, Ft as RailTooltipProps, G as HARNESS_OPTIONS, Gt as RailFlyout, H as HarnessBrand, Ht as RailExpandable, I as DashboardLayout, It as McpServer, J as HarnessType, Jt as RailHeaderProps, K as HarnessPicker, Kt as RailFlyoutProps, L as DashboardLayoutProps, Lt as AppearanceController, M as SidebarLayout, Mt as SidebarProviderProps, N as SidebarLayoutFlyoutItem, Nt as useSidebar, O as MetricAreaChart, Ot as SIDEBAR_RAIL_LABELED_WIDTH, P as SidebarLayoutNavItem, Pt as RailTooltip, Q as BackendSelectorProps, Qt as RailSeparatorProps, R as DashboardUser, Rt as ProfileAvatar, S as GitStatusData, St as InsufficientBalance, T as UsageSummaryProps, Tt as parseInsufficientBalance, U as HarnessLogo, Ut as RailExpandableProps, V as HARNESS_BRAND, Vt as RailButtonProps, W as HarnessLogoProps, Wt as RailExpandableSubItem, X as Backend, Xt as RailModeButtonProps, Y as chatCapableHarnesses, Yt as RailModeButton, Z as BackendSelector, Zt as RailSeparator, _ as PortsList, _t as ResourceSnapshotItem, a as PromoBanner, an as SidebarPanelHeader, at as NewSandboxCard, b as GitPanel, bt as ResourceMeterProps, c as SnapshotList, cn as SidebarProps, ct as SandboxCardData, d as ProcessList, dn as SidebarRailFooterProps, dt as TeamRole, en as SidebarContent, et as SandboxTableProps, f as ProcessListProps, fn as SidebarRailNav, ft as canAdminSandbox, g as ExposedPort, gn as ThemeMode, gt as ResourceSnapshot, h as TemplateCardProps, hn as SidebarUser, ht as ActivityItem, i as SandboxPageShellProps, in as SidebarPanelContentProps, it as sandboxStatus, j as MetricChartTone, jt as SidebarProvider, k as MetricAreaChartProps, kt as SIDEBAR_RAIL_WIDTH, l as SnapshotListProps, ln as SidebarRail, lt as SandboxCardProps, m as TemplateCardData, mn as SidebarRailProps, mt as ActivityFeedProps, n as DashboardPageHeaderProps, nn as SidebarPanel, nt as SandboxStatusPill, o as PromoBannerProps, on as SidebarPanelHeaderProps, ot as NewSandboxCardProps, p as TemplateCard, pn as SidebarRailNavProps, pt as ActivityFeed, q as HarnessPickerProps, qt as RailHeader, r as SandboxPageShell, rn as SidebarPanelContent, rt as SandboxStatusPillProps, s as SnapshotInfo, sn as SidebarPanelProps, st as SandboxCard, t as DashboardPageHeader, tn as SidebarContentProps, tt as SANDBOX_STATUS, u as ProcessInfo, un as SidebarRailFooter, ut as SandboxStatus, v as PortsListProps, vt as ResourceSnapshotProps, w as UsageSummaryData, wt as OutOfCreditsModalProps, x as GitPanelProps, xt as INSUFFICIENT_BALANCE_CODE, y as GitCommitData, yt as ResourceMeter, z as NavItem, zt as ProfileAvatarProps } from "./index-
|
|
3
|
+
import { $ as SandboxTable, $t as Sidebar, A as MetricChartPoint, At as SIDEBAR_TOTAL_WIDTH, B as ProductVariant, Bt as RailButton, C as UsageSummary, Ct as OutOfCreditsModal, D as SystemLogsViewerProps, Dt as SIDEBAR_PANEL_WIDTH, E as SystemLogsViewer, Et as SIDEBAR_MOBILE_WIDTH, F as SidebarLayoutProps, Ft as RailTooltipProps, G as HARNESS_OPTIONS, Gt as RailFlyout, H as HarnessBrand, Ht as RailExpandable, I as DashboardLayout, It as McpServer, J as HarnessType, Jt as RailHeaderProps, K as HarnessPicker, Kt as RailFlyoutProps, L as DashboardLayoutProps, Lt as AppearanceController, M as SidebarLayout, Mt as SidebarProviderProps, N as SidebarLayoutFlyoutItem, Nt as useSidebar, O as MetricAreaChart, Ot as SIDEBAR_RAIL_LABELED_WIDTH, P as SidebarLayoutNavItem, Pt as RailTooltip, Q as BackendSelectorProps, Qt as RailSeparatorProps, R as DashboardUser, Rt as ProfileAvatar, S as GitStatusData, St as InsufficientBalance, T as UsageSummaryProps, Tt as parseInsufficientBalance, U as HarnessLogo, Ut as RailExpandableProps, V as HARNESS_BRAND, Vt as RailButtonProps, W as HarnessLogoProps, Wt as RailExpandableSubItem, X as Backend, Xt as RailModeButtonProps, Y as chatCapableHarnesses, Yt as RailModeButton, Z as BackendSelector, Zt as RailSeparator, _ as PortsList, _t as ResourceSnapshotItem, a as PromoBanner, an as SidebarPanelHeader, at as NewSandboxCard, b as GitPanel, bt as ResourceMeterProps, c as SnapshotList, cn as SidebarProps, ct as SandboxCardData, d as ProcessList, dn as SidebarRailFooterProps, dt as TeamRole, en as SidebarContent, et as SandboxTableProps, f as ProcessListProps, fn as SidebarRailNav, ft as canAdminSandbox, g as ExposedPort, gn as ThemeMode, gt as ResourceSnapshot, h as TemplateCardProps, hn as SidebarUser, ht as ActivityItem, i as SandboxPageShellProps, in as SidebarPanelContentProps, it as sandboxStatus, j as MetricChartTone, jt as SidebarProvider, k as MetricAreaChartProps, kt as SIDEBAR_RAIL_WIDTH, l as SnapshotListProps, ln as SidebarRail, lt as SandboxCardProps, m as TemplateCardData, mn as SidebarRailProps, mt as ActivityFeedProps, n as DashboardPageHeaderProps, nn as SidebarPanel, nt as SandboxStatusPill, o as PromoBannerProps, on as SidebarPanelHeaderProps, ot as NewSandboxCardProps, p as TemplateCard, pn as SidebarRailNavProps, pt as ActivityFeed, q as HarnessPickerProps, qt as RailHeader, r as SandboxPageShell, rn as SidebarPanelContent, rt as SandboxStatusPillProps, s as SnapshotInfo, sn as SidebarPanelProps, st as SandboxCard, t as DashboardPageHeader, tn as SidebarContentProps, tt as SANDBOX_STATUS, u as ProcessInfo, un as SidebarRailFooter, ut as SandboxStatus, v as PortsListProps, vt as ResourceSnapshotProps, w as UsageSummaryData, wt as OutOfCreditsModalProps, x as GitPanelProps, xt as INSUFFICIENT_BALANCE_CODE, y as GitCommitData, yt as ResourceMeter, z as NavItem, zt as ProfileAvatarProps } from "./index-CPzJzKOZ.js";
|
|
4
4
|
import { a as canonicalModelId, i as ProviderMark, n as ModelBrandStack, o as modelBrandFor, r as ModelInfo, t as ModelBrandIdentity } from "./model-brand-ZwVS49Fq.js";
|
|
5
5
|
import { a as PricingPageProps, c as BillingBalance, d as BillingSubscription, f as BillingUsage, i as PricingPage, l as BillingDashboard, n as UsageChartProps, o as PricingTier, r as UsageDataPoint, s as formatPrice, t as UsageChart, u as BillingDashboardProps } from "./usage-chart-BFpdkqNq.js";
|
|
6
6
|
import { A as configurePdfViewer, C as PdfViewerConfig, D as RichFileTreeGitStatus, E as RichFileTreeGitEntry, F as getFormatLabel, I as getSyntaxLanguage, L as parseCsv, M as fileExtension, N as filterFileTree, O as RichFileTreeProps, P as getCodeLanguage, R as resolveFilePreviewKind, S as PdfViewer, T as RichFileTree, _ as FileTabsProps, a as FileCardProps, b as FileTreeVisibilityOptions, c as FileList, d as FileNode, f as FilePreview, g as FileTabs, h as FileTabData, i as FileCard, j as detectFileFormat, k as RichFileTreeThemeVars, l as FileListItem, m as FilePreviewProps, n as FileArtifactPane, o as FileDetails, p as FilePreviewKind, r as FileArtifactPaneProps, s as FileFormat, t as CSV_PREVIEW_ROW_LIMIT, u as FileListProps, v as FileTree, w as PdfViewerProps, x as FileUploader, y as FileTreeProps } from "./index-BZJKLu3k.js";
|
|
@@ -11,7 +11,7 @@ import { AgentStreamEvent, AppendUserMessageOptions, ApplySdkEventOptions, AuthU
|
|
|
11
11
|
import { $ as CollapsibleContent, $i as Logo, $n as Separator, $r as TabsContent, $t as FieldProps, A as BreadcrumbPage, Ai as WizardProps, An as PaginationProps, Ar as SidebarDropZone, At as DialogPortal, B as CardDescription, Bi as parseCalendarDate, Bn as SegmentedControl, Br as StatusTone, Bt as DropdownMenuLabel, C as Badge, Ci as TooltipContent, Cn as MetricStrip, Cr as SheetDescription, Ct as Dialog, D as BreadcrumbItem, Di as UploadProgress, Dn as PageShell, Dr as SheetPortal, Dt as DialogFooter, E as BreadcrumbEllipsis, Ei as UploadFile, En as PageHeaderProps, Er as SheetOverlay, Et as DialogDescription, F as Calendar, Fi as fieldMessageId, Fn as PopoverContent, Fr as Slider, Ft as DropdownMenu, G as CategoryTone, Gi as seriesMean, Gn as SelectGroup, Gr as TableCaption, Gt as DropdownMenuShortcut, H as CardHeader, Hi as seriesAreaPath, Hn as SegmentedControlProps, Hr as TONE_CLASSES, Ht as DropdownMenuRadioGroup, I as CalendarDate, Ii as formatCalendarDate, In as PopoverTrigger, Ir as StatCard, It as DropdownMenuCheckboxItem, J as Chip, Ji as useTheme, Jn as SelectScrollDownButton, Jr as TableHead, Jt as DropdownMenuSubTrigger, K as ChartReferenceLine, Ki as seriesScale, Kn as SelectItem, Kr as TableCell, Kt as DropdownMenuSub, L as CalendarProps, Li as initialsOf, Ln as Progress, Lr as StatCardProps, Lt as DropdownMenuContent, M as Button, Mi as WizardStepProps, Mn as Popover, Mr as Skeleton, Mt as DialogTrigger, N as ButtonProps, Ni as badgeVariants, Nn as PopoverAnchor, Nr as SkeletonCard, Nt as DropZone, O as BreadcrumbLink, Oi as UploadProgressProps, On as PageShellProps, Or as SheetTitle, Ot as DialogHeader, P as CATEGORY_TONES, Pi as buttonVariants, Pn as PopoverClose, Pr as SkeletonTable, Pt as DropZoneProps, Q as Collapsible, Qi as SectionTitleProps, Qn as SelectValue, Qr as Tabs, Qt as Field, R as Card, Ri as localToday, Rn as RadioGroup, Rr as StatusPill, Rt as DropdownMenuGroup, S as AvatarProps, Si as Tooltip, Sn as MetricProps, Sr as SheetContent, St as DatePickerProps, T as Breadcrumb, Ti as TooltipTrigger, Tn as PageHeader, Tr as SheetHeader, Tt as DialogContent, U as CardTitle, Ui as seriesExtent, Un as Select, Ur as Table, Ut as DropdownMenuRadioItem, V as CardFooter, Vi as periodDelta, Vn as SegmentedControlOption, Vr as Switch, Vt as DropdownMenuPortal, W as CardTitleProps, Wi as seriesLinePath, Wn as SelectContent, Wr as TableBody, Wt as DropdownMenuSeparator, X as CodeBlock, Xi as HeadingProps, Xn as SelectSeparator, Xr as TableProps, Xt as EmptyState, Y as ChipProps, Yi as useToast, Yn as SelectScrollUpButton, Yr as TableHeader, Yt as DropdownMenuTrigger, Z as CodeBlockProps, Zi as SectionTitle, Zn as SelectTrigger, Zr as TableRow, Zt as EmptyStateProps, _ as ArtifactPane, _i as ToastProvider, _n as InputProps, _r as SettingsRowProps, _t as ContextMenuSubContent, a as AlertDialogCancel, ai as TerminalDisplay, an as HelpTextProps, ar as SeriesSparklineProps, at as ContextMenu, b as AvatarFallback, bi as Toolbar, bn as MetricChart, br as Sheet, bt as CopyButton, c as AlertDialogFooter, ci as TextShimmer, cn as HoverCardDescription, cr as SettingsListColumns, ct as ContextMenuGroup, d as AlertDialogPortal, di as TextareaProps, dn as HoverCardTrigger, dr as SettingsListMenuItem, dt as ContextMenuPortal, ea as LogoProps, ei as TabsList, en as FilterField, er as SeriesExtent, et as CollapsibleTrigger, f as AlertDialogTitle, fi as ThemeToggle, fn as IconTile, fr as SettingsListProps, ft as ContextMenuRadioGroup, g as AlertTone, gi as ToastContainer, gn as Input, gr as SettingsRowLayout, gt as ContextMenuSub, h as AlertTitle, hi as Toast, hn as InlineCodeProps, hr as SettingsRow, ht as ContextMenuShortcut, i as AlertDialogAction, ii as TerminalCursor, in as HelpText, ir as SeriesSparkline, it as ComplianceStatus, j as BreadcrumbSeparator, ji as WizardStep, jn as PeriodDelta, jr as SidebarDropZoneProps, jt as DialogTitle, k as BreadcrumbList, ki as Wizard, kn as Pagination, kr as SheetTrigger, kt as DialogOverlay, l as AlertDialogHeader, li as TextShimmerProps, ln as HoverCardHeader, lr as SettingsListItem, lt as ContextMenuItem, m as AlertProps, mi as TimeSelectProps, mn as InlineCode, mr as SettingsNoteProps, mt as ContextMenuSeparator, n as AlertDescription, ni as Tag, nn as Heading, nr as SeriesPointInput, nt as ComplianceBadgeProps, o as AlertDialogContent, oi as TerminalInput, on as HoverCard, or as SettingsList, ot as ContextMenuCheckboxItem, p as AlertDialogTrigger, pi as TimeSelect, pn as IconTileProps, pr as SettingsNote, pt as ContextMenuRadioItem, q as Checkbox, qi as toneFor, qn as SelectLabel, qr as TableFooter, qt as DropdownMenuSubContent, r as AlertDialog, ri as TagProps, rn as HeadingVariant, rr as SeriesScale, rt as ComplianceProduct, s as AlertDialogDescription, sn as HoverCardContent, sr as SettingsListAction, st as ContextMenuContent, t as Alert, ta as TangleKnot, ti as TabsTrigger, tn as FilterFieldProps, tr as SeriesPoint, tt as ComplianceBadge, u as AlertDialogOverlay, ui as Textarea, un as HoverCardTitle, ur as SettingsListItemProps, ut as ContextMenuLabel, v as ArtifactPaneProps, vi as Tone, vn as Label, vr as SettingsSection, vt as ContextMenuSubTrigger, w as BadgeProps, wi as TooltipProvider, wn as MetricStripProps, wr as SheetFooter, wt as DialogClose, x as AvatarImage, xi as ToolbarProps, xn as MetricChartProps, xr as SheetClose, xt as DatePicker, y as Avatar, yi as ToneClasses, yn as Metric, yr as SettingsSectionProps, yt as ContextMenuTrigger, z as CardContent, zi as normalizeSeries, zn as RadioGroupItem, zr as StatusPillProps, zt as DropdownMenuItem } from "./index-CEtc2U5v.js";
|
|
12
12
|
import { $ as StatusBar, A as createShellShouldRevalidate, B as SessionSidebarVariant, C as SandboxWorkbenchLayoutOptions, D as SandboxWorkbenchSessionProps, E as SandboxWorkbenchProps, F as SessionSidebarFilter, G as dispatchSessionCreated, H as SessionCreatedDetail, I as SessionSidebarGroupBy, J as RuntimePaneProps, K as useOptimisticSessionItems, L as SessionSidebarItem, M as formatRelativeAge, N as SessionSidebar, O as ShellShouldRevalidateArgs, P as SessionSidebarBadge, Q as ContextBadge, R as SessionSidebarLink, S as SandboxWorkbenchFileArtifact, T as SandboxWorkbenchOpenUIArtifact, U as SessionOptimisticController, V as SESSION_CREATED_EVENT, W as UseOptimisticSessionItemsOptions, X as TerminalPanel, Y as TerminalLine, Z as TerminalProps, _ as TaskBoardItem, _t as WorkspaceSurfaceTitle, a as WorkspaceFilesPane, at as DirectoryPaneProps, b as SandboxWorkbenchArtifact, bt as WorkspaceLayoutProps, c as ApprovalConfidenceStat, ct as ShellHeader, d as ApprovalQueueProps, dt as WorkspacePaneHeaderProps, et as StatusBarProps, f as CalendarEvent, ft as WorkspaceSurface, g as TaskBoardColumn, gt as WorkspaceSurfaceProps, h as TaskBoard, ht as WorkspaceSurfaceHeadingLevel, i as WorkspaceArtifactViewProps, it as DirectoryPane, j as shellShouldRevalidate, k as ShellShouldRevalidateOptions, l as ApprovalItem, lt as ShellHeaderProps, m as CalendarViewProps, mt as WorkspaceSurfaceFrameProps, nt as StatusBanner, o as WorkspaceFilesPaneProps, ot as SHELL_HEADER_HEIGHT, p as CalendarView, pt as WorkspaceSurfaceFrame, q as RuntimePane, r as WorkspaceArtifactView, rt as StatusBannerProps, s as WorkspaceFilesPreview, st as SHELL_INSET_GUTTER, tt as BannerType, u as ApprovalQueue, ut as WorkspacePaneHeader, v as TaskBoardProps, vt as WorkspaceSurfaceTitleProps, w as SandboxWorkbenchMarkdownArtifact, x as SandboxWorkbenchCustomArtifact, y as SandboxWorkbench, yt as WorkspaceLayout, z as SessionSidebarProps } from "./index-DpzFSqjG.js";
|
|
13
13
|
import { i as VaultTreeProps, n as VAULT_TREE_CHILD_PAGE, r as VaultTree, t as FileChange } from "./vault-tree-CBS8qGT-.js";
|
|
14
|
-
import { C as SandboxArtifactPane, D as SandboxArtifact, E as ChangesPaneProps, O as SandboxArtifactPaneProps, S as ChangesPane, T as ChangedFile, _ as buildUnifiedPatch, a as PreviewViewProps, b as PillTabs, c as CodeView, d as FileBreadcrumbProps, f as DiffStatsBadge, g as DiffStats, h as PanelHeaderProps, i as PreviewView, k as SandboxArtifactTerminal, l as CodeViewProps, m as PanelHeader, n as CodeSurface, o as JsonView, p as GitStatusBadge, r as CodeSurfaceProps, s as JsonViewProps, t as CODE_THEME, u as FileBreadcrumb, v as computeDiffStats, w as ArtifactView, x as PillTabsProps, y as PillTabItem } from "./index-
|
|
14
|
+
import { C as SandboxArtifactPane, D as SandboxArtifact, E as ChangesPaneProps, O as SandboxArtifactPaneProps, S as ChangesPane, T as ChangedFile, _ as buildUnifiedPatch, a as PreviewViewProps, b as PillTabs, c as CodeView, d as FileBreadcrumbProps, f as DiffStatsBadge, g as DiffStats, h as PanelHeaderProps, i as PreviewView, k as SandboxArtifactTerminal, l as CodeViewProps, m as PanelHeader, n as CodeSurface, o as JsonView, p as GitStatusBadge, r as CodeSurfaceProps, s as JsonViewProps, t as CODE_THEME, u as FileBreadcrumb, v as computeDiffStats, w as ArtifactView, x as PillTabsProps, y as PillTabItem } from "./index-lDG84P5L.js";
|
|
15
15
|
import { n as DiffViewProps, t as DiffView } from "./diff-view-DDHWtR6X.js";
|
|
16
16
|
import { a as PreviewReadiness, i as PreviewAccess, n as EmbeddedAppView, r as EmbeddedAppViewProps, t as EmbeddedApp } from "./embedded-app-view-Ta5GI4hx.js";
|
|
17
17
|
import { OPENUI_NODE_JSON_SCHEMA, OPENUI_NODE_TYPES, OpenUIAction, OpenUIActionsNode, OpenUIArtifactRenderer, OpenUIArtifactRendererProps, OpenUIBadgeNode, OpenUICardNode, OpenUICodeNode, OpenUIComponentNode, OpenUIGridNode, OpenUIHeadingNode, OpenUIKeyValueNode, OpenUIMarkdownNode, OpenUIPrimitive, OpenUISchemaIssue, OpenUISchemaValidation, OpenUISeparatorNode, OpenUIStackNode, OpenUIStatNode, OpenUITableNode, OpenUITextNode, findUnsupportedOpenUINode, validateOpenUIJsonArtifact, validateOpenUIJsonNode } from "./openui.js";
|
package/dist/index.js
CHANGED
|
@@ -4,11 +4,11 @@ import { S as WorkspaceSurfaceTitle, _ as StatusBanner, a as SandboxWorkbench, b
|
|
|
4
4
|
import { t as VirtualList } from "./VirtualList-DcSGbEtA.js";
|
|
5
5
|
import { i as VaultTree, n as filterFileNodes, r as VAULT_TREE_CHILD_PAGE, t as fileTreeFromPaths } from "./tree-data-rg5voiY8.js";
|
|
6
6
|
import { t as WorkspaceFilesPane } from "./workspace-files-pane-D24G7H_Z.js";
|
|
7
|
-
import { $ as useSidebar, A as parseInsufficientBalance, B as SidebarPanel, C as SandboxStatusPill, D as ResourceMeter, E as ResourceSnapshot, F as RailHeader, G as SidebarRailNav, H as SidebarPanelHeader, I as RailModeButton, J as SIDEBAR_PANEL_WIDTH, K as RailTooltip, L as RailSeparator, M as RailButton, N as RailExpandable, O as INSUFFICIENT_BALANCE_CODE, P as RailFlyout, Q as SidebarProvider, R as Sidebar, S as SANDBOX_STATUS, T as ActivityFeed, U as SidebarRail, V as SidebarPanelContent, W as SidebarRailFooter, X as SIDEBAR_RAIL_WIDTH, Y as SIDEBAR_RAIL_LABELED_WIDTH, Z as SIDEBAR_TOTAL_WIDTH, _ as BackendSelector, a as PortsList, b as SandboxCard, c as SystemLogsViewer, d as DashboardLayout, f as HARNESS_OPTIONS, g as HarnessLogo, h as HARNESS_BRAND, i as TemplateCard, j as ProfileAvatar, k as OutOfCreditsModal, l as MetricAreaChart, m as chatCapableHarnesses, n as SnapshotList, o as GitPanel, p as HarnessPicker, q as SIDEBAR_MOBILE_WIDTH, r as ProcessList, s as UsageSummary, t as PromoBanner, u as SidebarLayout, v as SandboxTable, w as sandboxStatus, x as canAdminSandbox, y as NewSandboxCard, z as SidebarContent } from "./dashboard-
|
|
7
|
+
import { $ as useSidebar, A as parseInsufficientBalance, B as SidebarPanel, C as SandboxStatusPill, D as ResourceMeter, E as ResourceSnapshot, F as RailHeader, G as SidebarRailNav, H as SidebarPanelHeader, I as RailModeButton, J as SIDEBAR_PANEL_WIDTH, K as RailTooltip, L as RailSeparator, M as RailButton, N as RailExpandable, O as INSUFFICIENT_BALANCE_CODE, P as RailFlyout, Q as SidebarProvider, R as Sidebar, S as SANDBOX_STATUS, T as ActivityFeed, U as SidebarRail, V as SidebarPanelContent, W as SidebarRailFooter, X as SIDEBAR_RAIL_WIDTH, Y as SIDEBAR_RAIL_LABELED_WIDTH, Z as SIDEBAR_TOTAL_WIDTH, _ as BackendSelector, a as PortsList, b as SandboxCard, c as SystemLogsViewer, d as DashboardLayout, f as HARNESS_OPTIONS, g as HarnessLogo, h as HARNESS_BRAND, i as TemplateCard, j as ProfileAvatar, k as OutOfCreditsModal, l as MetricAreaChart, m as chatCapableHarnesses, n as SnapshotList, o as GitPanel, p as HarnessPicker, q as SIDEBAR_MOBILE_WIDTH, r as ProcessList, s as UsageSummary, t as PromoBanner, u as SidebarLayout, v as SandboxTable, w as sandboxStatus, x as canAdminSandbox, y as NewSandboxCard, z as SidebarContent } from "./dashboard-CYWLMJEA.js";
|
|
8
8
|
import { i as modelBrandFor, n as ProviderMark, r as canonicalModelId, t as ModelBrandStack } from "./model-brand-BQlarCIo.js";
|
|
9
9
|
import { a as formatPrice, i as PricingPage, n as SandboxPageShell, o as BillingDashboard, r as UsageChart, t as DashboardPageHeader } from "./page-layout-CuOpvZys.js";
|
|
10
10
|
import { t as usePtySession } from "./use-pty-session-BHVQlSs-.js";
|
|
11
|
-
import { a as GitStatusBadge, i as DiffStatsBadge, n as ChangesPane, o as PanelHeader, r as SandboxArtifactPane, s as PillTabs, t as JsonView } from "./workbench-
|
|
11
|
+
import { a as GitStatusBadge, i as DiffStatsBadge, n as ChangesPane, o as PanelHeader, r as SandboxArtifactPane, s as PillTabs, t as JsonView } from "./workbench-LcgsEw_H.js";
|
|
12
12
|
import { CSV_PREVIEW_ROW_LIMIT, FileArtifactPane, FileCard, FileList, FilePreview, FileTabs, FileTree, PdfViewer, RichFileTree, configurePdfViewer, detectFileFormat, fileExtension, filterFileTree, getCodeLanguage, getFormatLabel, getSyntaxLanguage, parseCsv, resolveFilePreviewKind } from "./files.js";
|
|
13
13
|
import { a as CodeSurface, i as CODE_THEME, n as buildUnifiedPatch, r as computeDiffStats, t as DiffView } from "./diff-view-B9mNeTLF.js";
|
|
14
14
|
import { n as FileBreadcrumb, t as CodeView } from "./code-view-BlhCS1SD.js";
|
package/dist/styles.css
CHANGED
|
@@ -4688,6 +4688,12 @@
|
|
|
4688
4688
|
.group-focus-visible\:bg-ring:is(:where(.group):focus-visible *) {
|
|
4689
4689
|
background-color: hsl(var(--ring));
|
|
4690
4690
|
}
|
|
4691
|
+
.group-focus-visible\/brand\:opacity-0:is(:where(.group\/brand):focus-visible *) {
|
|
4692
|
+
opacity: 0%;
|
|
4693
|
+
}
|
|
4694
|
+
.group-focus-visible\/brand\:opacity-100:is(:where(.group\/brand):focus-visible *) {
|
|
4695
|
+
opacity: 100%;
|
|
4696
|
+
}
|
|
4691
4697
|
.group-data-\[state\=indeterminate\]\/checkbox\:block:is(:where(.group\/checkbox)[data-state="indeterminate"] *) {
|
|
4692
4698
|
display: block;
|
|
4693
4699
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as cn$1 } from "./utils-BER_bdgE.js";
|
|
2
2
|
import { t as revealInScroller } from "./reveal-in-scroller-CzKwuqCG.js";
|
|
3
3
|
import { t as VirtualList } from "./VirtualList-DcSGbEtA.js";
|
|
4
|
-
import { a as PortsList } from "./dashboard-
|
|
4
|
+
import { a as PortsList } from "./dashboard-CYWLMJEA.js";
|
|
5
5
|
import { n as TerminalView } from "./terminal-nUCznZRj.js";
|
|
6
6
|
import { n as buildUnifiedPatch, r as computeDiffStats, t as DiffView } from "./diff-view-B9mNeTLF.js";
|
|
7
7
|
import { t as CodeView } from "./code-view-BlhCS1SD.js";
|
package/dist/workbench.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as SandboxArtifactPane, D as SandboxArtifact, E as ChangesPaneProps, O as SandboxArtifactPaneProps, S as ChangesPane, T as ChangedFile, _ as buildUnifiedPatch, a as PreviewViewProps, b as PillTabs, c as CodeView, d as FileBreadcrumbProps, f as DiffStatsBadge, g as DiffStats, h as PanelHeaderProps, i as PreviewView, k as SandboxArtifactTerminal, l as CodeViewProps, m as PanelHeader, n as CodeSurface, o as JsonView, p as GitStatusBadge, r as CodeSurfaceProps, s as JsonViewProps, t as CODE_THEME, u as FileBreadcrumb, v as computeDiffStats, w as ArtifactView, x as PillTabsProps, y as PillTabItem } from "./index-
|
|
1
|
+
import { C as SandboxArtifactPane, D as SandboxArtifact, E as ChangesPaneProps, O as SandboxArtifactPaneProps, S as ChangesPane, T as ChangedFile, _ as buildUnifiedPatch, a as PreviewViewProps, b as PillTabs, c as CodeView, d as FileBreadcrumbProps, f as DiffStatsBadge, g as DiffStats, h as PanelHeaderProps, i as PreviewView, k as SandboxArtifactTerminal, l as CodeViewProps, m as PanelHeader, n as CodeSurface, o as JsonView, p as GitStatusBadge, r as CodeSurfaceProps, s as JsonViewProps, t as CODE_THEME, u as FileBreadcrumb, v as computeDiffStats, w as ArtifactView, x as PillTabsProps, y as PillTabItem } from "./index-lDG84P5L.js";
|
|
2
2
|
import { n as DiffViewProps, t as DiffView } from "./diff-view-DDHWtR6X.js";
|
|
3
3
|
import { a as PreviewReadiness, i as PreviewAccess, n as EmbeddedAppView, r as EmbeddedAppViewProps, t as EmbeddedApp } from "./embedded-app-view-Ta5GI4hx.js";
|
|
4
4
|
export { type ArtifactView, CODE_THEME, type ChangedFile, ChangesPane, type ChangesPaneProps, CodeSurface, type CodeSurfaceProps, CodeView, type CodeViewProps, type DiffStats, DiffStatsBadge, DiffView, type DiffViewProps, type EmbeddedApp, EmbeddedAppView, type EmbeddedAppViewProps, FileBreadcrumb, type FileBreadcrumbProps, GitStatusBadge, JsonView, type JsonViewProps, PanelHeader, type PanelHeaderProps, type PillTabItem, PillTabs, type PillTabsProps, type PreviewAccess, type PreviewReadiness, PreviewView, type PreviewViewProps, type SandboxArtifact, SandboxArtifactPane, type SandboxArtifactPaneProps, type SandboxArtifactTerminal, buildUnifiedPatch, computeDiffStats };
|
package/dist/workbench.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as GitStatusBadge, i as DiffStatsBadge, n as ChangesPane, o as PanelHeader, r as SandboxArtifactPane, s as PillTabs, t as JsonView } from "./workbench-
|
|
1
|
+
import { a as GitStatusBadge, i as DiffStatsBadge, n as ChangesPane, o as PanelHeader, r as SandboxArtifactPane, s as PillTabs, t as JsonView } from "./workbench-LcgsEw_H.js";
|
|
2
2
|
import { a as CodeSurface, i as CODE_THEME, n as buildUnifiedPatch, r as computeDiffStats, t as DiffView } from "./diff-view-B9mNeTLF.js";
|
|
3
3
|
import { n as FileBreadcrumb, t as CodeView } from "./code-view-BlhCS1SD.js";
|
|
4
4
|
import { n as PreviewView, t as EmbeddedAppView } from "./embedded-app-view-DXsoPale.js";
|
package/package.json
CHANGED