@tangle-network/sandbox-ui 0.117.0 → 0.117.2

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.
@@ -1,4 +1,4 @@
1
- import { Wt as Logo, o as Button$1 } from "./primitives-Dh1vG6J3.js";
1
+ import { Wt as Logo, o as Button$1 } from "./primitives-BnVvXgcl.js";
2
2
  import { t as cn$1 } from "./utils-DzWbktWG.js";
3
3
  import { n as MOTION_SURFACE, r as MOTION_TRAVEL, t as MOTION_CONTROL } from "./motion-DkyBRJb9.js";
4
4
  import { i as moonshot_default } from "./model-brand-hMyDTUqB.js";
@@ -10,7 +10,7 @@ import { useEffect, useRef, useState } from "react";
10
10
  import { focusField, focusFieldWithin, focusRing, focusRingInset, timeAgo } from "@tangle-network/ui/utils";
11
11
  import { createPortal } from "react-dom";
12
12
  import { Activity, BarChart2, Bell, Bot, Box, Camera, Check, CheckCircle2, ChevronDown, ChevronLeft, ChevronRight, Clock, Code2, Copy, Cpu, DollarSign, Download, ExternalLink, File, FileEdit, FilePlus, FileText, GitBranch, GitCommit, Globe, HardDrive, Key, Layers, Loader2, MemoryStick, MessageSquare, Monitor, MoreHorizontal, MoreVertical, Network, PanelLeft, Play, Plug, Plus, Power, PowerOff, RefreshCw, RotateCcw, Server, Settings, ShieldAlert, Skull, Terminal, Timer, Trash2, User, Users, Wrench, X, XCircle } from "lucide-react";
13
- import * as Select from "@radix-ui/react-select";
13
+ import * as Select$1 from "@radix-ui/react-select";
14
14
  //#region src/dashboard/sidebar-context.tsx
15
15
  const PANEL_OPEN_KEY = "sandbox-sidebar-panel-open";
16
16
  const RAIL_COLLAPSED_KEY = "sandbox-sidebar-rail-collapsed";
@@ -2415,7 +2415,7 @@ function BackendSelector({ backends, selected, onChange, variant = "pill", label
2415
2415
  const current = backends.find((b) => b.type === selected);
2416
2416
  const triggerText = current?.label ?? placeholder;
2417
2417
  const ariaLabel = label ? `${label}: ${triggerText}` : triggerText;
2418
- const trigger = variant === "pill" ? /* @__PURE__ */ jsxs(Select.Trigger, {
2418
+ const trigger = variant === "pill" ? /* @__PURE__ */ jsxs(Select$1.Trigger, {
2419
2419
  "aria-label": ariaLabel,
2420
2420
  className: cn$1("inline-flex h-8 items-center gap-1.5 rounded-lg border border-[var(--md3-outline-variant)] bg-surface-container", "px-2.5 text-xs font-medium text-foreground shadow-sm", "transition-colors duration-[var(--transition-fast)]", "hover:border-[var(--md3-outline-variant)] hover:bg-surface-container-high", focusRing, "data-[state=open]:border-[var(--md3-outline)] data-[state=open]:bg-surface-container-high", "disabled:opacity-50 disabled:cursor-not-allowed", triggerClassName),
2421
2421
  children: [
@@ -2428,12 +2428,12 @@ function BackendSelector({ backends, selected, onChange, variant = "pill", label
2428
2428
  className: "sr-only",
2429
2429
  children: current.description
2430
2430
  }),
2431
- /* @__PURE__ */ jsx(Select.Icon, {
2431
+ /* @__PURE__ */ jsx(Select$1.Icon, {
2432
2432
  asChild: true,
2433
2433
  children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-3 w-3 shrink-0 text-muted-foreground transition-transform duration-[var(--transition-fast)] data-[state=open]:rotate-180" })
2434
2434
  })
2435
2435
  ]
2436
- }) : /* @__PURE__ */ jsxs(Select.Trigger, {
2436
+ }) : /* @__PURE__ */ jsxs(Select$1.Trigger, {
2437
2437
  "aria-label": ariaLabel,
2438
2438
  className: cn$1("flex w-full items-center justify-between gap-2 rounded-[var(--radius-md)]", "border border-[var(--md3-outline-variant)] bg-surface-container px-3 py-2.5 text-sm text-left", "transition-colors duration-[var(--transition-fast)]", "hover:border-[var(--md3-outline-variant)] hover:bg-surface-container-high", focusRing, "data-[state=open]:border-[var(--md3-outline)] data-[state=open]:bg-surface-container-high", "disabled:opacity-50 disabled:cursor-not-allowed", triggerClassName),
2439
2439
  children: [/* @__PURE__ */ jsxs("span", {
@@ -2449,7 +2449,7 @@ function BackendSelector({ backends, selected, onChange, variant = "pill", label
2449
2449
  children: current.description
2450
2450
  })
2451
2451
  ]
2452
- }), /* @__PURE__ */ jsx(Select.Icon, {
2452
+ }), /* @__PURE__ */ jsx(Select$1.Icon, {
2453
2453
  asChild: true,
2454
2454
  children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-[var(--transition-fast)] data-[state=open]:rotate-180" })
2455
2455
  })]
@@ -2459,16 +2459,16 @@ function BackendSelector({ backends, selected, onChange, variant = "pill", label
2459
2459
  children: [variant === "field" && label && /* @__PURE__ */ jsx("label", {
2460
2460
  className: "block text-xs font-medium text-muted-foreground uppercase tracking-[0.06em]",
2461
2461
  children: label
2462
- }), /* @__PURE__ */ jsxs(Select.Root, {
2462
+ }), /* @__PURE__ */ jsxs(Select$1.Root, {
2463
2463
  value: selected,
2464
2464
  onValueChange: onChange,
2465
- children: [trigger, /* @__PURE__ */ jsx(Select.Portal, { children: /* @__PURE__ */ jsx(Select.Content, {
2465
+ children: [trigger, /* @__PURE__ */ jsx(Select$1.Portal, { children: /* @__PURE__ */ jsx(Select$1.Content, {
2466
2466
  position: "popper",
2467
2467
  sideOffset: 4,
2468
2468
  className: cn$1("z-50 max-h-[var(--radix-select-content-available-height)] overflow-hidden", variant === "pill" ? "min-w-[240px] max-w-[320px]" : "w-[var(--radix-select-trigger-width)]", "rounded-[var(--radius-md)] border border-[var(--md3-outline-variant)]", "bg-surface-container-highest shadow-[0_8px_30px_rgba(0,0,0,0.45)] ring-1 ring-[#ffffff14]", "data-[state=open]:animate-in data-[state=closed]:animate-out", "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95", "data-[side=bottom]:slide-in-from-top-1"),
2469
- children: /* @__PURE__ */ jsx(Select.Viewport, {
2469
+ children: /* @__PURE__ */ jsx(Select$1.Viewport, {
2470
2470
  className: "max-h-[min(24rem,calc(var(--radix-select-content-available-height)-2px))] overflow-y-auto overscroll-contain p-1",
2471
- children: backends.map((backend) => /* @__PURE__ */ jsxs(Select.Item, {
2471
+ children: backends.map((backend) => /* @__PURE__ */ jsxs(Select$1.Item, {
2472
2472
  value: backend.type,
2473
2473
  className: cn$1("relative flex cursor-pointer select-none items-start gap-2.5 rounded-[var(--radius-sm)]", "px-3 py-2 text-sm outline-none", "transition-colors duration-[var(--transition-fast)]", "hover:bg-accent/50 focus:bg-accent/50", "data-[state=checked]:bg-[var(--accent-surface-soft)] data-[state=checked]:text-[var(--brand-primary)]"),
2474
2474
  children: [backend.icon && /* @__PURE__ */ jsx("span", {
@@ -2476,7 +2476,7 @@ function BackendSelector({ backends, selected, onChange, variant = "pill", label
2476
2476
  children: backend.icon
2477
2477
  }), /* @__PURE__ */ jsxs("span", {
2478
2478
  className: "flex min-w-0 flex-col",
2479
- children: [/* @__PURE__ */ jsx(Select.ItemText, { children: /* @__PURE__ */ jsx("span", {
2479
+ children: [/* @__PURE__ */ jsx(Select$1.ItemText, { children: /* @__PURE__ */ jsx("span", {
2480
2480
  className: "font-medium",
2481
2481
  children: backend.label
2482
2482
  }) }), backend.description && /* @__PURE__ */ jsx("span", {
package/dist/dashboard.js CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as SidebarRailNav, A as ResourceMeter, B as RailFlyout, C as InvoiceTable, D as canAdminSandbox, E as SandboxCard, F as CreditBalance, G as Sidebar, H as RailModeButton, I as ProfileAvatar, J as SidebarPanelContent, K as SidebarContent, L as RailButton, M as INSUFFICIENT_BALANCE_CODE, N as OutOfCreditsModal, O as ActivityFeed, P as parseInsufficientBalance, Q as SidebarRailHeader, R as RailCollapseToggle, S as PlanCards, T as NewSandboxCard, U as RailSeparator, V as RailHeader, W as RailThemeToggle, X as SidebarRail, Y as SidebarPanelHeader, Z as SidebarRailFooter, _ as HarnessPicker, a as ProcessList, at as SIDEBAR_TOTAL_WIDTH, b as HarnessLogo, c as UsageSummary, d as MetricAreaChart, et as RailTooltip, f as ProfileComparison, g as HARNESS_OPTIONS, h as DashboardLayout, i as NetworkConfig, it as SIDEBAR_RAIL_WIDTH, j as ClusterStatusBar, k as ResourceSnapshot, l as SystemLogsViewer, m as SidebarLayout, n as SnapshotList, nt as SIDEBAR_PANEL_WIDTH, o as PortsList, ot as SidebarProvider, p as ProfileSelector, q as SidebarPanel, r as BackendConfig, rt as SIDEBAR_RAIL_LABELED_WIDTH, s as GitPanel, st as useSidebar, t as PromoBanner, tt as SIDEBAR_MOBILE_WIDTH, u as VariantList, v as chatCapableHarnesses, w as SandboxTable, x as BackendSelector, y as HARNESS_BRAND, z as RailExpandable } from "./dashboard-euyfLroA.js";
1
+ import { $ as SidebarRailNav, A as ResourceMeter, B as RailFlyout, C as InvoiceTable, D as canAdminSandbox, E as SandboxCard, F as CreditBalance, G as Sidebar, H as RailModeButton, I as ProfileAvatar, J as SidebarPanelContent, K as SidebarContent, L as RailButton, M as INSUFFICIENT_BALANCE_CODE, N as OutOfCreditsModal, O as ActivityFeed, P as parseInsufficientBalance, Q as SidebarRailHeader, R as RailCollapseToggle, S as PlanCards, T as NewSandboxCard, U as RailSeparator, V as RailHeader, W as RailThemeToggle, X as SidebarRail, Y as SidebarPanelHeader, Z as SidebarRailFooter, _ as HarnessPicker, a as ProcessList, at as SIDEBAR_TOTAL_WIDTH, b as HarnessLogo, c as UsageSummary, d as MetricAreaChart, et as RailTooltip, f as ProfileComparison, g as HARNESS_OPTIONS, h as DashboardLayout, i as NetworkConfig, it as SIDEBAR_RAIL_WIDTH, j as ClusterStatusBar, k as ResourceSnapshot, l as SystemLogsViewer, m as SidebarLayout, n as SnapshotList, nt as SIDEBAR_PANEL_WIDTH, o as PortsList, ot as SidebarProvider, p as ProfileSelector, q as SidebarPanel, r as BackendConfig, rt as SIDEBAR_RAIL_LABELED_WIDTH, s as GitPanel, st as useSidebar, t as PromoBanner, tt as SIDEBAR_MOBILE_WIDTH, u as VariantList, v as chatCapableHarnesses, w as SandboxTable, x as BackendSelector, y as HARNESS_BRAND, z as RailExpandable } from "./dashboard-DdUTq0so.js";
2
2
  import { n as canonicalModelId, r as modelBrandFor, t as ModelBrandStack } from "./model-brand-hMyDTUqB.js";
3
3
  import { a as formatPrice, i as PricingPage, n as TemplateCard, o as BillingDashboard, r as UsageChart, t as InfoPanel } from "./info-panel-C9cqDzOL.js";
4
4
  export { ActivityFeed, BackendConfig, BackendSelector, BillingDashboard, ClusterStatusBar, CreditBalance, DashboardLayout, GitPanel, HARNESS_BRAND, HARNESS_OPTIONS, HarnessLogo, HarnessPicker, INSUFFICIENT_BALANCE_CODE, InfoPanel, InvoiceTable, MetricAreaChart, ModelBrandStack, NetworkConfig, NewSandboxCard, OutOfCreditsModal, PlanCards, PortsList, PricingPage, ProcessList, ProfileAvatar, ProfileComparison, ProfileSelector, PromoBanner, RailButton, RailCollapseToggle, RailExpandable, RailFlyout, RailHeader, RailModeButton, RailSeparator, RailThemeToggle, RailTooltip, ResourceMeter, ResourceSnapshot, SIDEBAR_MOBILE_WIDTH, SIDEBAR_PANEL_WIDTH, SIDEBAR_RAIL_LABELED_WIDTH, SIDEBAR_RAIL_WIDTH, SIDEBAR_TOTAL_WIDTH, SandboxCard, SandboxTable, Sidebar, SidebarContent, SidebarLayout, SidebarPanel, SidebarPanelContent, SidebarPanelHeader, SidebarProvider, SidebarRail, SidebarRailFooter, SidebarRailHeader, SidebarRailNav, SnapshotList, SystemLogsViewer, TemplateCard, UsageChart, UsageSummary, VariantList, canAdminSandbox, canonicalModelId, chatCapableHarnesses, formatPrice, modelBrandFor, parseInsufficientBalance, useSidebar };
package/dist/globals.css CHANGED
@@ -1512,6 +1512,9 @@
1512
1512
  .min-w-14 {
1513
1513
  min-width: calc(var(--spacing) * 14);
1514
1514
  }
1515
+ .min-w-32 {
1516
+ min-width: calc(var(--spacing) * 32);
1517
+ }
1515
1518
  .min-w-40 {
1516
1519
  min-width: calc(var(--spacing) * 40);
1517
1520
  }
@@ -4509,6 +4512,9 @@
4509
4512
  .focus\:border-\[var\(--focus-border-danger\)\]:focus {
4510
4513
  border-color: var(--focus-border-danger);
4511
4514
  }
4515
+ .focus\:bg-\[var\(--accent-surface-strong\)\]:focus {
4516
+ background-color: var(--accent-surface-strong);
4517
+ }
4512
4518
  .focus\:bg-accent:focus {
4513
4519
  background-color: var(--color-accent);
4514
4520
  }
@@ -4733,6 +4739,9 @@
4733
4739
  .data-\[state\=checked\]\:bg-\[var\(--accent-surface-soft\)\][data-state="checked"] {
4734
4740
  background-color: var(--accent-surface-soft);
4735
4741
  }
4742
+ .data-\[state\=checked\]\:bg-\[var\(--accent-surface-strong\)\][data-state="checked"] {
4743
+ background-color: var(--accent-surface-strong);
4744
+ }
4736
4745
  .data-\[state\=checked\]\:bg-primary[data-state="checked"] {
4737
4746
  background-color: var(--color-primary);
4738
4747
  }
@@ -4742,6 +4751,9 @@
4742
4751
  .data-\[state\=checked\]\:text-\[var\(--brand-primary\)\][data-state="checked"] {
4743
4752
  color: var(--brand-primary);
4744
4753
  }
4754
+ .data-\[state\=checked\]\:text-foreground[data-state="checked"] {
4755
+ color: var(--color-foreground);
4756
+ }
4745
4757
  .data-\[state\=inactive\]\:text-muted-foreground[data-state="inactive"] {
4746
4758
  color: var(--color-muted-foreground);
4747
4759
  }
@@ -4759,6 +4771,9 @@
4759
4771
  .data-\[state\=open\]\:border-\[var\(--md3-outline-variant\)\][data-state="open"] {
4760
4772
  border-color: var(--md3-outline-variant);
4761
4773
  }
4774
+ .data-\[state\=open\]\:border-primary[data-state="open"] {
4775
+ border-color: var(--color-primary);
4776
+ }
4762
4777
  .data-\[state\=open\]\:bg-\[var\(--accent-surface-strong\)\][data-state="open"] {
4763
4778
  background-color: var(--accent-surface-strong);
4764
4779
  }
@@ -4852,6 +4867,9 @@
4852
4867
  .sm\:w-auto {
4853
4868
  width: auto;
4854
4869
  }
4870
+ .sm\:min-w-40 {
4871
+ min-width: calc(var(--spacing) * 40);
4872
+ }
4855
4873
  .sm\:shrink-0 {
4856
4874
  flex-shrink: 0;
4857
4875
  }
@@ -1,4 +1,4 @@
1
- import { ArtifactPane as ArtifactPane$1, ArtifactPaneProps, Avatar as Avatar$1, AvatarFallback as AvatarFallback$1, AvatarImage as AvatarImage$1, Badge as Badge$1, BadgeProps, Button as Button$1, ButtonProps as ButtonProps$1, Card as Card$1, CardContent as CardContent$1, CardDescription as CardDescription$1, CardFooter, CardHeader as CardHeader$1, CardTitle as CardTitle$1, CodeBlock, CodeBlockProps, CopyButton, Dialog as Dialog$1, DialogClose, DialogContent as DialogContent$1, DialogDescription as DialogDescription$1, DialogFooter as DialogFooter$1, DialogHeader as DialogHeader$1, DialogOverlay, DialogPortal, DialogTitle as DialogTitle$1, DialogTrigger, DropZone, DropZoneProps, DropdownMenu as DropdownMenu$1, DropdownMenuCheckboxItem, DropdownMenuContent as DropdownMenuContent$1, DropdownMenuGroup, DropdownMenuItem as DropdownMenuItem$1, DropdownMenuLabel as DropdownMenuLabel$1, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator as DropdownMenuSeparator$1, DropdownMenuShortcut, DropdownMenuSub as DropdownMenuSub$1, DropdownMenuSubContent as DropdownMenuSubContent$1, DropdownMenuSubTrigger as DropdownMenuSubTrigger$1, DropdownMenuTrigger as DropdownMenuTrigger$1, EmptyState as EmptyState$1, EmptyStateProps, FilterField, FilterFieldProps, InlineCode, InlineCodeProps, Input as Input$1, InputProps, Label as Label$1, Metric, MetricProps, MetricStrip, MetricStripProps, Progress as Progress$1, SegmentedControl, SegmentedControlOption, SegmentedControlProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SidebarDropZone, SidebarDropZoneProps, Skeleton as Skeleton$1, SkeletonCard as SkeletonCard$1, SkeletonTable, StatCard as StatCard$1, StatCardProps, StatusPill, StatusPillProps, StatusTone, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs as Tabs$1, TabsContent as TabsContent$1, TabsList as TabsList$1, TabsTrigger as TabsTrigger$1, TerminalCursor, TerminalDisplay, TerminalInput, TerminalLine, TextShimmer, TextShimmerProps, Textarea as Textarea$1, TextareaProps, ThemeToggle, Toast, ToastContainer, ToastProvider, Toolbar, ToolbarProps, UploadFile, UploadProgress, UploadProgressProps, badgeVariants, buttonVariants, useTheme as useTheme$1, useToast } from "@tangle-network/ui/primitives";
1
+ import { ArtifactPane as ArtifactPane$1, ArtifactPaneProps, Avatar as Avatar$1, AvatarFallback as AvatarFallback$1, AvatarImage as AvatarImage$1, Badge as Badge$1, BadgeProps, Button as Button$1, ButtonProps as ButtonProps$1, Card as Card$1, CardContent as CardContent$1, CardDescription as CardDescription$1, CardFooter, CardHeader as CardHeader$1, CardTitle as CardTitle$1, CodeBlock, CodeBlockProps, CopyButton, Dialog as Dialog$1, DialogClose, DialogContent as DialogContent$1, DialogDescription as DialogDescription$1, DialogFooter as DialogFooter$1, DialogHeader as DialogHeader$1, DialogOverlay, DialogPortal, DialogTitle as DialogTitle$1, DialogTrigger, DropZone, DropZoneProps, DropdownMenu as DropdownMenu$1, DropdownMenuCheckboxItem, DropdownMenuContent as DropdownMenuContent$1, DropdownMenuGroup, DropdownMenuItem as DropdownMenuItem$1, DropdownMenuLabel as DropdownMenuLabel$1, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator as DropdownMenuSeparator$1, DropdownMenuShortcut, DropdownMenuSub as DropdownMenuSub$1, DropdownMenuSubContent as DropdownMenuSubContent$1, DropdownMenuSubTrigger as DropdownMenuSubTrigger$1, DropdownMenuTrigger as DropdownMenuTrigger$1, EmptyState as EmptyState$1, EmptyStateProps, FilterField, FilterFieldProps, InlineCode, InlineCodeProps, Input as Input$1, InputProps, Label as Label$1, Metric, MetricProps, MetricStrip, MetricStripProps, Progress as Progress$1, SegmentedControl, SegmentedControlOption, SegmentedControlProps, Select as Select$1, SelectContent as SelectContent$1, SelectGroup, SelectItem as SelectItem$1, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger as SelectTrigger$1, SelectValue as SelectValue$1, SidebarDropZone, SidebarDropZoneProps, Skeleton as Skeleton$1, SkeletonCard as SkeletonCard$1, SkeletonTable, StatCard as StatCard$1, StatCardProps, StatusPill, StatusPillProps, StatusTone, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs as Tabs$1, TabsContent as TabsContent$1, TabsList as TabsList$1, TabsTrigger as TabsTrigger$1, TerminalCursor, TerminalDisplay, TerminalInput, TerminalLine, TextShimmer, TextShimmerProps, Textarea as Textarea$1, TextareaProps, ThemeToggle, Toast, ToastContainer, ToastProvider, Toolbar, ToolbarProps, UploadFile, UploadProgress, UploadProgressProps, badgeVariants, buttonVariants, useTheme as useTheme$1, useToast } from "@tangle-network/ui/primitives";
2
2
  import { TangleKnot as TangleKnot$1 } from "@tangle-network/brand";
3
3
  import { ElementType, HTMLAttributes, ReactNode } from "react";
4
4
  //#region src/primitives/logo.d.ts
@@ -83,4 +83,4 @@ interface PageShellProps {
83
83
  */
84
84
  declare function PageShell({ children, className }: PageShellProps): import("react").JSX.Element;
85
85
  //#endregion
86
- export { InputProps as $, ToastProvider as $t, DropZoneProps as A, Table as At, DropdownMenuSeparator$1 as B, TabsList$1 as Bt, DialogFooter$1 as C, SkeletonTable as Ct, DialogTitle$1 as D, StatusPillProps as Dt, DialogPortal as E, StatusPill as Et, DropdownMenuItem$1 as F, TableHead as Ft, DropdownMenuTrigger$1 as G, TerminalLine as Gt, DropdownMenuSub$1 as H, TerminalCursor as Ht, DropdownMenuLabel$1 as I, TableHeader as It, FilterField as J, Textarea$1 as Jt, EmptyState$1 as K, TextShimmer as Kt, DropdownMenuPortal as L, TableRow as Lt, DropdownMenuCheckboxItem as M, TableCaption as Mt, DropdownMenuContent$1 as N, TableCell as Nt, DialogTrigger as O, StatusTone as Ot, DropdownMenuGroup as P, TableFooter as Pt, Input$1 as Q, ToastContainer as Qt, DropdownMenuRadioGroup as R, Tabs$1 as Rt, DialogDescription$1 as S, SkeletonCard$1 as St, DialogOverlay as T, StatCardProps as Tt, DropdownMenuSubContent$1 as U, TerminalDisplay as Ut, DropdownMenuShortcut as V, TabsTrigger$1 as Vt, DropdownMenuSubTrigger$1 as W, TerminalInput as Wt, InlineCode as X, ThemeToggle as Xt, FilterFieldProps as Y, TextareaProps as Yt, InlineCodeProps as Z, Toast as Zt, CodeBlockProps as _, SectionTitleProps as _n, SelectTrigger as _t, AvatarImage$1 as a, badgeVariants as an, Progress$1 as at, DialogClose as b, TangleKnot$1 as bn, SidebarDropZoneProps as bt, Button$1 as c, useToast as cn, SegmentedControlProps as ct, CardContent$1 as d, Heading as dn, SelectGroup as dt, Toolbar as en, Label$1 as et, CardDescription$1 as f, HeadingProps as fn, SelectItem as ft, CodeBlock as g, SectionTitle as gn, SelectSeparator as gt, CardTitle$1 as h, PageHeaderProps as hn, SelectScrollUpButton as ht, AvatarFallback$1 as i, UploadProgressProps as in, MetricStripProps as it, DropdownMenu$1 as j, TableBody as jt, DropZone as k, Switch as kt, ButtonProps$1 as l, PageShell as ln, Select as lt, CardHeader$1 as m, PageHeader as mn, SelectScrollDownButton as mt, ArtifactPaneProps as n, UploadFile as nn, MetricProps as nt, Badge$1 as o, buttonVariants as on, SegmentedControl as ot, CardFooter as p, HeadingVariant as pn, SelectLabel as pt, EmptyStateProps as q, TextShimmerProps as qt, Avatar$1 as r, UploadProgress as rn, MetricStrip as rt, BadgeProps as s, useTheme$1 as sn, SegmentedControlOption as st, ArtifactPane$1 as t, ToolbarProps as tn, Metric as tt, Card$1 as u, PageShellProps as un, SelectContent as ut, CopyButton as v, Logo$1 as vn, SelectValue as vt, DialogHeader$1 as w, StatCard$1 as wt, DialogContent$1 as x, Skeleton$1 as xt, Dialog$1 as y, LogoProps as yn, SidebarDropZone as yt, DropdownMenuRadioItem as z, TabsContent$1 as zt };
86
+ export { InputProps as $, ToastProvider as $t, DropZoneProps as A, Table as At, DropdownMenuSeparator$1 as B, TabsList$1 as Bt, DialogFooter$1 as C, SkeletonTable as Ct, DialogTitle$1 as D, StatusPillProps as Dt, DialogPortal as E, StatusPill as Et, DropdownMenuItem$1 as F, TableHead as Ft, DropdownMenuTrigger$1 as G, TerminalLine as Gt, DropdownMenuSub$1 as H, TerminalCursor as Ht, DropdownMenuLabel$1 as I, TableHeader as It, FilterField as J, Textarea$1 as Jt, EmptyState$1 as K, TextShimmer as Kt, DropdownMenuPortal as L, TableRow as Lt, DropdownMenuCheckboxItem as M, TableCaption as Mt, DropdownMenuContent$1 as N, TableCell as Nt, DialogTrigger as O, StatusTone as Ot, DropdownMenuGroup as P, TableFooter as Pt, Input$1 as Q, ToastContainer as Qt, DropdownMenuRadioGroup as R, Tabs$1 as Rt, DialogDescription$1 as S, SkeletonCard$1 as St, DialogOverlay as T, StatCardProps as Tt, DropdownMenuSubContent$1 as U, TerminalDisplay as Ut, DropdownMenuShortcut as V, TabsTrigger$1 as Vt, DropdownMenuSubTrigger$1 as W, TerminalInput as Wt, InlineCode as X, ThemeToggle as Xt, FilterFieldProps as Y, TextareaProps as Yt, InlineCodeProps as Z, Toast as Zt, CodeBlockProps as _, SectionTitleProps as _n, SelectTrigger$1 as _t, AvatarImage$1 as a, badgeVariants as an, Progress$1 as at, DialogClose as b, TangleKnot$1 as bn, SidebarDropZoneProps as bt, Button$1 as c, useToast as cn, SegmentedControlProps as ct, CardContent$1 as d, Heading as dn, SelectGroup as dt, Toolbar as en, Label$1 as et, CardDescription$1 as f, HeadingProps as fn, SelectItem$1 as ft, CodeBlock as g, SectionTitle as gn, SelectSeparator as gt, CardTitle$1 as h, PageHeaderProps as hn, SelectScrollUpButton as ht, AvatarFallback$1 as i, UploadProgressProps as in, MetricStripProps as it, DropdownMenu$1 as j, TableBody as jt, DropZone as k, Switch as kt, ButtonProps$1 as l, PageShell as ln, Select$1 as lt, CardHeader$1 as m, PageHeader as mn, SelectScrollDownButton as mt, ArtifactPaneProps as n, UploadFile as nn, MetricProps as nt, Badge$1 as o, buttonVariants as on, SegmentedControl as ot, CardFooter as p, HeadingVariant as pn, SelectLabel as pt, EmptyStateProps as q, TextShimmerProps as qt, Avatar$1 as r, UploadProgress as rn, MetricStrip as rt, BadgeProps as s, useTheme$1 as sn, SegmentedControlOption as st, ArtifactPane$1 as t, ToolbarProps as tn, Metric as tt, Card$1 as u, PageShellProps as un, SelectContent$1 as ut, CopyButton as v, Logo$1 as vn, SelectValue$1 as vt, DialogHeader$1 as w, StatCard$1 as wt, DialogContent$1 as x, Skeleton$1 as xt, Dialog$1 as y, LogoProps as yn, SidebarDropZone as yt, DropdownMenuRadioItem as z, TabsContent$1 as zt };
package/dist/index.d.ts CHANGED
@@ -9,7 +9,7 @@ import { n as UsePtySessionReturn, r as usePtySession, t as UsePtySessionOptions
9
9
  import { t as Session } from "./sidecar-DgH_vQ6m.js";
10
10
  import { d as useSessionStream, l as UseSessionStreamOptions, n as UseSidecarAuthOptions, o as SessionDegradation, r as useSidecarAuth, s as SessionInfo, t as SidecarAuth, u as UseSessionStreamResult } from "./use-sidecar-auth-CCTJcrq7.js";
11
11
  import { AgentStreamEvent, AppendUserMessageOptions, ApplySdkEventOptions, AuthUser, AutomationStreamEvent, BeginAssistantMessageOptions, BotStreamEvent, CompleteAssistantMessageOptions, RealtimeSessionOptions, RealtimeSessionRegistry, RealtimeSessionRegistryProps, RealtimeSessionState, RealtimeSessionTarget, SSEEvent, SandboxMetrics, SdkSessionAttachment, SdkSessionEvent, SdkSessionSeed, SidecarMetricsPayload, TaskStreamEvent, TerminalStreamEvent, UseAuthOptions, UseAuthResult, UseRunGroupsOptions, UseSSEStreamOptions, UseSSEStreamResult, UseSandboxMetricsOptions, UseSandboxMetricsResult, UseSdkSessionOptions, UseSdkSessionReturn, UseToolCallStreamReturn, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useCreateSession, useDeleteSession, useDropdownMenu, useLiveTime, useRealtimeSession, useRenameSession, useRunCollapseState, useRunGroups, useSSEStream, useSandboxMetrics, useSdkSession, useSessions, useToolCallStream } from "./hooks.js";
12
- import { $ as InputProps, $t as ToastProvider, A as DropZoneProps, At as Table, B as DropdownMenuSeparator, Bt as TabsList, C as DialogFooter, Ct as SkeletonTable, D as DialogTitle, Dt as StatusPillProps, E as DialogPortal, Et as StatusPill, F as DropdownMenuItem, Ft as TableHead, G as DropdownMenuTrigger, H as DropdownMenuSub, I as DropdownMenuLabel, It as TableHeader, J as FilterField, Jt as Textarea, K as EmptyState, Kt as TextShimmer, L as DropdownMenuPortal, Lt as TableRow, M as DropdownMenuCheckboxItem, Mt as TableCaption, N as DropdownMenuContent, Nt as TableCell, O as DialogTrigger, Ot as StatusTone, P as DropdownMenuGroup, Pt as TableFooter, Q as Input, Qt as ToastContainer, R as DropdownMenuRadioGroup, Rt as Tabs, S as DialogDescription, St as SkeletonCard, T as DialogOverlay, Tt as StatCardProps, U as DropdownMenuSubContent, Ut as TerminalDisplay, V as DropdownMenuShortcut, Vt as TabsTrigger, W as DropdownMenuSubTrigger, X as InlineCode, Xt as ThemeToggle, Y as FilterFieldProps, Yt as TextareaProps, Z as InlineCodeProps, Zt as Toast, _ as CodeBlockProps, _t as SelectTrigger, a as AvatarImage, an as badgeVariants, at as Progress, b as DialogClose, bn as TangleKnot, bt as SidebarDropZoneProps, c as Button, cn as useToast, ct as SegmentedControlProps, d as CardContent, dt as SelectGroup, en as Toolbar, et as Label, f as CardDescription, ft as SelectItem, g as CodeBlock, gt as SelectSeparator, h as CardTitle, ht as SelectScrollUpButton, i as AvatarFallback, in as UploadProgressProps, it as MetricStripProps, j as DropdownMenu, jt as TableBody, k as DropZone, kt as Switch, l as ButtonProps, lt as Select, m as CardHeader, mt as SelectScrollDownButton, nn as UploadFile, nt as MetricProps, o as Badge, on as buttonVariants, ot as SegmentedControl, p as CardFooter, pt as SelectLabel, q as EmptyStateProps, qt as TextShimmerProps, r as Avatar, rn as UploadProgress, rt as MetricStrip, s as BadgeProps, sn as useTheme, st as SegmentedControlOption, tn as ToolbarProps, tt as Metric, u as Card, ut as SelectContent, v as CopyButton, vn as Logo, vt as SelectValue, w as DialogHeader, wt as StatCard, x as DialogContent, xt as Skeleton, y as Dialog, yn as LogoProps, yt as SidebarDropZone, z as DropdownMenuRadioItem, zt as TabsContent } from "./index-PRM636Ex.js";
12
+ import { $ as InputProps, $t as ToastProvider, A as DropZoneProps, At as Table, B as DropdownMenuSeparator, Bt as TabsList, C as DialogFooter, Ct as SkeletonTable, D as DialogTitle, Dt as StatusPillProps, E as DialogPortal, Et as StatusPill, F as DropdownMenuItem, Ft as TableHead, G as DropdownMenuTrigger, H as DropdownMenuSub, I as DropdownMenuLabel, It as TableHeader, J as FilterField, Jt as Textarea, K as EmptyState, Kt as TextShimmer, L as DropdownMenuPortal, Lt as TableRow, M as DropdownMenuCheckboxItem, Mt as TableCaption, N as DropdownMenuContent, Nt as TableCell, O as DialogTrigger, Ot as StatusTone, P as DropdownMenuGroup, Pt as TableFooter, Q as Input, Qt as ToastContainer, R as DropdownMenuRadioGroup, Rt as Tabs, S as DialogDescription, St as SkeletonCard, T as DialogOverlay, Tt as StatCardProps, U as DropdownMenuSubContent, Ut as TerminalDisplay, V as DropdownMenuShortcut, Vt as TabsTrigger, W as DropdownMenuSubTrigger, X as InlineCode, Xt as ThemeToggle, Y as FilterFieldProps, Yt as TextareaProps, Z as InlineCodeProps, Zt as Toast, _ as CodeBlockProps, _t as SelectTrigger, a as AvatarImage, an as badgeVariants, at as Progress, b as DialogClose, bn as TangleKnot, bt as SidebarDropZoneProps, c as Button, cn as useToast, ct as SegmentedControlProps, d as CardContent, dt as SelectGroup, en as Toolbar, et as Label, f as CardDescription, ft as SelectItem, g as CodeBlock, gt as SelectSeparator, h as CardTitle, ht as SelectScrollUpButton, i as AvatarFallback, in as UploadProgressProps, it as MetricStripProps, j as DropdownMenu, jt as TableBody, k as DropZone, kt as Switch, l as ButtonProps, lt as Select, m as CardHeader, mt as SelectScrollDownButton, nn as UploadFile, nt as MetricProps, o as Badge, on as buttonVariants, ot as SegmentedControl, p as CardFooter, pt as SelectLabel, q as EmptyStateProps, qt as TextShimmerProps, r as Avatar, rn as UploadProgress, rt as MetricStrip, s as BadgeProps, sn as useTheme, st as SegmentedControlOption, tn as ToolbarProps, tt as Metric, u as Card, ut as SelectContent, v as CopyButton, vn as Logo, vt as SelectValue, w as DialogHeader, wt as StatCard, x as DialogContent, xt as Skeleton, y as Dialog, yn as LogoProps, yt as SidebarDropZone, z as DropdownMenuRadioItem, zt as TabsContent } from "./index-ez0RxbPT.js";
13
13
  import { $ as TerminalProps, A as ShellShouldRevalidateArgs, B as SessionSidebarLink, C as SandboxWorkbenchLayoutOptions, D as SandboxWorkbenchSessionProps, E as SandboxWorkbenchProps, F as SessionSidebar, G as SessionOptimisticController, H as SessionSidebarVariant, I as SessionSidebarBadge, J as useOptimisticSessionItems, K as UseOptimisticSessionItemsOptions, L as SessionSidebarFilter, M as createShellShouldRevalidate, N as shellShouldRevalidate, O as SessionActivityMonitor, P as formatRelativeAge, Q as TerminalPanel, R as SessionSidebarGroupBy, S as SandboxWorkbenchFileArtifact, T as SandboxWorkbenchOpenUIArtifact, U as SESSION_CREATED_EVENT, V as SessionSidebarProps, W as SessionCreatedDetail, X as RuntimePaneProps, Y as RuntimePane, Z as TerminalLine, _ as FormAudit, a as ApprovalQueue, at as StatusBannerProps, b as SandboxWorkbenchArtifact, c as CalendarView, ct as WorkspacePaneHeader, d as TaskBoardColumn, dt as WorkspaceLayoutProps, et as ContextBadge, f as TaskBoardItem, g as AuditResultsProps, h as AuditResults, i as ApprovalItem, it as StatusBanner, j as ShellShouldRevalidateOptions, k as SessionActivityMonitorProps, l as CalendarViewProps, lt as WorkspacePaneHeaderProps, m as AuditCheck, n as ArtifactPaneProps, nt as StatusBarProps, o as ApprovalQueueProps, ot as DirectoryPane, p as TaskBoardProps, q as dispatchSessionCreated, r as ApprovalConfidenceStat, rt as BannerType, s as CalendarEvent, st as DirectoryPaneProps, t as ArtifactPane, tt as StatusBar, u as TaskBoard, ut as WorkspaceLayout, v as AgentWorkbench, w as SandboxWorkbenchMarkdownArtifact, x as SandboxWorkbenchCustomArtifact, y as SandboxWorkbench, z as SessionSidebarItem } from "./index-CcbhfDa-.js";
14
14
  import { A as SandboxArtifactTerminal, C as ChangesPane, D as ChangesPaneProps, E as ChangedFile, O as SandboxArtifact, S as PillTabsProps, T as ArtifactView, _ as DiffStats, a as PreviewView, b as PillTabItem, c as DiffViewProps, d as FileBreadcrumb, f as FileBreadcrumbProps, g as PanelHeaderProps, h as PanelHeader, i as resolveLanguage, k as SandboxArtifactPaneProps, l as CodeView, m as GitStatusBadge, n as CodeSurface, o as PreviewViewProps, p as DiffStatsBadge, r as CodeSurfaceProps, s as DiffView, t as BRAND_PRISM_THEME, u as CodeViewProps, v as buildUnifiedPatch, w as SandboxArtifactPane, x as PillTabs, y as computeDiffStats } from "./index-z_zNuZHm.js";
15
15
  import { a as PreviewReadiness, i as PreviewAccess, n as EmbeddedAppView, r as EmbeddedAppViewProps, t as EmbeddedApp } from "./embedded-app-view-B_vMTtJn.js";
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
- import { a as computeDiffStats, c as BRAND_PRISM_THEME, d as DiffStatsBadge, f as GitStatusBadge, i as buildUnifiedPatch, l as CodeSurface, m as PillTabs, n as SandboxArtifactPane, o as CodeView, p as PanelHeader, r as DiffView, s as FileBreadcrumb, t as ChangesPane, u as resolveLanguage } from "./workbench-B1UltdHQ.js";
2
- import { $ as SelectItem, A as DropdownMenuItem, At as Textarea, B as DropdownMenuTrigger, C as DialogTitle, Ct as TabsList, D as DropdownMenuCheckboxItem, E as DropdownMenu, Et as TerminalDisplay, F as DropdownMenuSeparator, Ft as UploadProgress, G as Label, Gt as TangleKnot, H as FilterField, I as DropdownMenuShortcut, It as badgeVariants, J as Progress, K as Metric, L as DropdownMenuSub, Lt as buttonVariants, M as DropdownMenuPortal, Mt as ToastContainer, N as DropdownMenuRadioGroup, Nt as ToastProvider, O as DropdownMenuContent, P as DropdownMenuRadioItem, Pt as Toolbar, Q as SelectGroup, R as DropdownMenuSubContent, Rt as useTheme, S as DialogPortal, St as TabsContent, T as DropZone, U as InlineCode, V as EmptyState, W as Input, Wt as Logo, X as Select, Y as SegmentedControl, Z as SelectContent, _ as DialogContent, _t as TableFooter, a as Badge, at as SelectValue, b as DialogHeader, bt as TableRow, c as CardContent, ct as SkeletonCard, d as CardHeader, dt as StatusPill, et as SelectLabel, f as CardTitle, ft as Switch, g as DialogClose, gt as TableCell, h as Dialog, ht as TableCaption, i as AvatarImage, it as SelectTrigger, j as DropdownMenuLabel, jt as ThemeToggle, k as DropdownMenuGroup, kt as TextShimmer, l as CardDescription, lt as SkeletonTable, m as CopyButton, mt as TableBody, n as Avatar, nt as SelectScrollUpButton, o as Button, ot as SidebarDropZone, p as CodeBlock, pt as Table, q as MetricStrip, r as AvatarFallback, rt as SelectSeparator, s as Card, st as Skeleton, tt as SelectScrollDownButton, u as CardFooter, ut as StatCard, v as DialogDescription, vt as TableHead, w as DialogTrigger, wt as TabsTrigger, x as DialogOverlay, xt as Tabs, y as DialogFooter, yt as TableHeader, z as DropdownMenuSubTrigger, zt as useToast } from "./primitives-Dh1vG6J3.js";
1
+ import { a as computeDiffStats, c as BRAND_PRISM_THEME, d as DiffStatsBadge, f as GitStatusBadge, i as buildUnifiedPatch, l as CodeSurface, m as PillTabs, n as SandboxArtifactPane, o as CodeView, p as PanelHeader, r as DiffView, s as FileBreadcrumb, t as ChangesPane, u as resolveLanguage } from "./workbench-CN7bm93p.js";
2
+ import { $ as SelectItem, A as DropdownMenuItem, At as Textarea, B as DropdownMenuTrigger, C as DialogTitle, Ct as TabsList, D as DropdownMenuCheckboxItem, E as DropdownMenu, Et as TerminalDisplay, F as DropdownMenuSeparator, Ft as UploadProgress, G as Label, Gt as TangleKnot, H as FilterField, I as DropdownMenuShortcut, It as badgeVariants, J as Progress, K as Metric, L as DropdownMenuSub, Lt as buttonVariants, M as DropdownMenuPortal, Mt as ToastContainer, N as DropdownMenuRadioGroup, Nt as ToastProvider, O as DropdownMenuContent, P as DropdownMenuRadioItem, Pt as Toolbar, Q as SelectGroup, R as DropdownMenuSubContent, Rt as useTheme, S as DialogPortal, St as TabsContent, T as DropZone, U as InlineCode, V as EmptyState, W as Input, Wt as Logo, X as Select, Y as SegmentedControl, Z as SelectContent, _ as DialogContent, _t as TableFooter, a as Badge, at as SelectValue, b as DialogHeader, bt as TableRow, c as CardContent, ct as SkeletonCard, d as CardHeader, dt as StatusPill, et as SelectLabel, f as CardTitle, ft as Switch, g as DialogClose, gt as TableCell, h as Dialog, ht as TableCaption, i as AvatarImage, it as SelectTrigger, j as DropdownMenuLabel, jt as ThemeToggle, k as DropdownMenuGroup, kt as TextShimmer, l as CardDescription, lt as SkeletonTable, m as CopyButton, mt as TableBody, n as Avatar, nt as SelectScrollUpButton, o as Button, ot as SidebarDropZone, p as CodeBlock, pt as Table, q as MetricStrip, r as AvatarFallback, rt as SelectSeparator, s as Card, st as Skeleton, tt as SelectScrollDownButton, u as CardFooter, ut as StatCard, v as DialogDescription, vt as TableHead, w as DialogTrigger, wt as TabsTrigger, x as DialogOverlay, xt as Tabs, y as DialogFooter, yt as TableHeader, z as DropdownMenuSubTrigger, zt as useToast } from "./primitives-BnVvXgcl.js";
3
3
  import { t as WorkspacePaneHeader } from "./workspace-pane-header-Bg1cCcHX.js";
4
4
  import { _ as TerminalPanel, a as AuditResults, b as DirectoryPane, c as SessionActivityMonitor, d as SessionSidebar, f as SESSION_CREATED_EVENT, g as RuntimePane, h as formatRelativeAge, i as TaskBoard, l as createShellShouldRevalidate, m as useOptimisticSessionItems, n as ApprovalQueue, o as AgentWorkbench, p as dispatchSessionCreated, r as CalendarView, s as SandboxWorkbench, t as ArtifactPane, u as shellShouldRevalidate, v as StatusBar, x as WorkspaceLayout, y as StatusBanner } from "./workspace-fIHRXmWT.js";
5
- import { $ as SidebarRailNav, A as ResourceMeter, B as RailFlyout, C as InvoiceTable, D as canAdminSandbox, E as SandboxCard, F as CreditBalance, G as Sidebar, H as RailModeButton, I as ProfileAvatar, J as SidebarPanelContent, K as SidebarContent, L as RailButton, M as INSUFFICIENT_BALANCE_CODE, N as OutOfCreditsModal, O as ActivityFeed, P as parseInsufficientBalance, Q as SidebarRailHeader, R as RailCollapseToggle, S as PlanCards, T as NewSandboxCard, U as RailSeparator, V as RailHeader, W as RailThemeToggle, X as SidebarRail, Y as SidebarPanelHeader, Z as SidebarRailFooter, _ as HarnessPicker, a as ProcessList, at as SIDEBAR_TOTAL_WIDTH, b as HarnessLogo, c as UsageSummary, d as MetricAreaChart, et as RailTooltip, f as ProfileComparison, g as HARNESS_OPTIONS, h as DashboardLayout, i as NetworkConfig, it as SIDEBAR_RAIL_WIDTH, j as ClusterStatusBar, k as ResourceSnapshot, l as SystemLogsViewer, m as SidebarLayout, n as SnapshotList, nt as SIDEBAR_PANEL_WIDTH, o as PortsList, ot as SidebarProvider, p as ProfileSelector, q as SidebarPanel, r as BackendConfig, rt as SIDEBAR_RAIL_LABELED_WIDTH, s as GitPanel, st as useSidebar, t as PromoBanner, tt as SIDEBAR_MOBILE_WIDTH, u as VariantList, v as chatCapableHarnesses, w as SandboxTable, x as BackendSelector, y as HARNESS_BRAND, z as RailExpandable } from "./dashboard-euyfLroA.js";
5
+ import { $ as SidebarRailNav, A as ResourceMeter, B as RailFlyout, C as InvoiceTable, D as canAdminSandbox, E as SandboxCard, F as CreditBalance, G as Sidebar, H as RailModeButton, I as ProfileAvatar, J as SidebarPanelContent, K as SidebarContent, L as RailButton, M as INSUFFICIENT_BALANCE_CODE, N as OutOfCreditsModal, O as ActivityFeed, P as parseInsufficientBalance, Q as SidebarRailHeader, R as RailCollapseToggle, S as PlanCards, T as NewSandboxCard, U as RailSeparator, V as RailHeader, W as RailThemeToggle, X as SidebarRail, Y as SidebarPanelHeader, Z as SidebarRailFooter, _ as HarnessPicker, a as ProcessList, at as SIDEBAR_TOTAL_WIDTH, b as HarnessLogo, c as UsageSummary, d as MetricAreaChart, et as RailTooltip, f as ProfileComparison, g as HARNESS_OPTIONS, h as DashboardLayout, i as NetworkConfig, it as SIDEBAR_RAIL_WIDTH, j as ClusterStatusBar, k as ResourceSnapshot, l as SystemLogsViewer, m as SidebarLayout, n as SnapshotList, nt as SIDEBAR_PANEL_WIDTH, o as PortsList, ot as SidebarProvider, p as ProfileSelector, q as SidebarPanel, r as BackendConfig, rt as SIDEBAR_RAIL_LABELED_WIDTH, s as GitPanel, st as useSidebar, t as PromoBanner, tt as SIDEBAR_MOBILE_WIDTH, u as VariantList, v as chatCapableHarnesses, w as SandboxTable, x as BackendSelector, y as HARNESS_BRAND, z as RailExpandable } from "./dashboard-DdUTq0so.js";
6
6
  import { n as canonicalModelId, r as modelBrandFor, t as ModelBrandStack } from "./model-brand-hMyDTUqB.js";
7
7
  import { a as formatPrice, i as PricingPage, n as TemplateCard, o as BillingDashboard, r as UsageChart, t as InfoPanel } from "./info-panel-C9cqDzOL.js";
8
8
  import { t as usePtySession } from "./use-pty-session-Bf4hBLXJ.js";
@@ -1,5 +1,5 @@
1
1
  import { n as normalizeProviderId, r as providerLogoCandidates, t as ProviderIcon } from "./provider-logo-BiuiO_c2.js";
2
- import { Button, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, EmptyState } from "@tangle-network/ui/primitives";
2
+ import { Button, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, EmptyState, Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@tangle-network/ui/primitives";
3
3
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
4
4
  import * as React$1 from "react";
5
5
  import { cn, focusFieldWithin, focusRing } from "@tangle-network/ui/utils";
@@ -14,21 +14,45 @@ const TONES = {
14
14
  function catalogRowActive(row) {
15
15
  return row.kind === "app" ? row.installedCount > 0 : row.connections.length > 0;
16
16
  }
17
+ const integrationSelectContentClassName = "shadow-[var(--shadow-dropdown)]";
18
+ const integrationSelectItemClassName = "focus:bg-[var(--accent-surface-strong)] data-[state=checked]:bg-[var(--accent-surface-strong)] data-[state=checked]:text-foreground";
17
19
  /** A controlled selector shared by the catalog and detail; never picks an account. */
18
20
  function ConnectionSelector({ connections, value, onChange, label }) {
19
- const selected = connections.some((connection) => connection.id === value) ? value : "";
20
- return /* @__PURE__ */ jsxs("select", {
21
- "aria-label": label,
22
- value: selected ?? "",
23
- onChange: (event) => onChange(event.target.value || null),
24
- className: cn("h-8 w-full min-w-0 truncate rounded-md border border-border bg-background px-2 text-sm text-foreground", focusRing),
25
- children: [/* @__PURE__ */ jsx("option", {
26
- value: "",
27
- children: "Select an account"
28
- }), connections.map((connection) => /* @__PURE__ */ jsx("option", {
29
- value: connection.id,
30
- children: connection.accountDisplay ? `${connection.accountDisplay} · ${connection.id}` : connection.id
31
- }, connection.id))]
21
+ const selectedIndex = connections.findIndex((connection) => connection.id === value);
22
+ const accountLabel = (connection) => {
23
+ const display = connection.accountDisplay?.trim();
24
+ if (!display) return connection.id;
25
+ const duplicates = connections.filter((item) => item.accountDisplay?.trim() === display);
26
+ if (duplicates.length < 2) return display;
27
+ let length = Math.min(6, connection.id.length);
28
+ while (length < connection.id.length && duplicates.some((item) => item.id !== connection.id && item.id.endsWith(connection.id.slice(-length)))) length++;
29
+ return `${display} · ${length < connection.id.length ? "…" : ""}${connection.id.slice(-length)}`;
30
+ };
31
+ return /* @__PURE__ */ jsxs(Select, {
32
+ value: selectedIndex < 0 ? "" : String(selectedIndex),
33
+ onValueChange: (next) => {
34
+ if (next === "none") onChange(null);
35
+ else {
36
+ const connection = connections.find((_, index) => String(index) === next);
37
+ if (connection) onChange(connection.id);
38
+ }
39
+ },
40
+ children: [/* @__PURE__ */ jsx(SelectTrigger, {
41
+ "aria-label": label,
42
+ className: cn("h-10 w-full min-w-0 max-w-md data-[state=open]:border-primary data-[state=open]:bg-[var(--accent-surface-strong)]", selectedIndex >= 0 && "border-primary/30 bg-[var(--accent-surface-soft)]"),
43
+ children: /* @__PURE__ */ jsx(SelectValue, { placeholder: "Select an account" })
44
+ }), /* @__PURE__ */ jsxs(SelectContent, {
45
+ className: integrationSelectContentClassName,
46
+ children: [/* @__PURE__ */ jsx(SelectItem, {
47
+ value: "none",
48
+ className: integrationSelectItemClassName,
49
+ children: "Select an account"
50
+ }), connections.map((connection, index) => /* @__PURE__ */ jsx(SelectItem, {
51
+ value: String(index),
52
+ className: integrationSelectItemClassName,
53
+ children: accountLabel(connection)
54
+ }, connection.id))]
55
+ })]
32
56
  });
33
57
  }
34
58
  function ConnectionMenu({ row, connection, onManage, onDisconnect, compact }) {
@@ -125,25 +149,33 @@ function IntegrationsCatalog({ rows, query, onQueryChange, categoryFilter = "",
125
149
  className: "min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground"
126
150
  })]
127
151
  }),
128
- onCategoryFilterChange ? /* @__PURE__ */ jsxs("select", {
129
- "aria-label": "Filter by category",
130
- value: categoryFilter,
131
- onChange: (event) => onCategoryFilterChange(event.target.value),
132
- className: cn("h-10 min-w-0 rounded-lg border bg-card px-3 text-sm", focusRing),
133
- children: [
134
- /* @__PURE__ */ jsx("option", {
135
- value: "",
136
- children: "All categories"
137
- }),
138
- categoryFilter && !categories.includes(categoryFilter) ? /* @__PURE__ */ jsx("option", {
139
- value: categoryFilter,
140
- children: categoryFilter
141
- }) : null,
142
- categories.map((category) => /* @__PURE__ */ jsx("option", {
143
- value: category,
144
- children: category
145
- }, category))
146
- ]
152
+ onCategoryFilterChange ? /* @__PURE__ */ jsxs(Select, {
153
+ value: categoryFilter ? `category:${categoryFilter}` : "all",
154
+ onValueChange: (value) => onCategoryFilterChange(value === "all" ? "" : value.slice(9)),
155
+ children: [/* @__PURE__ */ jsx(SelectTrigger, {
156
+ "aria-label": "Filter by category",
157
+ className: "h-10 w-full sm:w-auto sm:min-w-40",
158
+ children: /* @__PURE__ */ jsx(SelectValue, {})
159
+ }), /* @__PURE__ */ jsxs(SelectContent, {
160
+ className: integrationSelectContentClassName,
161
+ children: [
162
+ /* @__PURE__ */ jsx(SelectItem, {
163
+ value: "all",
164
+ className: integrationSelectItemClassName,
165
+ children: "All categories"
166
+ }),
167
+ categoryFilter && !categories.includes(categoryFilter) ? /* @__PURE__ */ jsx(SelectItem, {
168
+ value: `category:${categoryFilter}`,
169
+ className: integrationSelectItemClassName,
170
+ children: categoryFilter
171
+ }) : null,
172
+ categories.map((category) => /* @__PURE__ */ jsx(SelectItem, {
173
+ value: `category:${category}`,
174
+ className: integrationSelectItemClassName,
175
+ children: category
176
+ }, category))
177
+ ]
178
+ })]
147
179
  }) : null,
148
180
  sort && onSortChange ? /* @__PURE__ */ jsx("div", {
149
181
  role: "group",
@@ -649,22 +681,25 @@ function IntegrationConnectionDetail({ provider, connections, selectedConnection
649
681
  className: "text-xs text-muted-foreground",
650
682
  children: row.sourceLabel
651
683
  }),
652
- editable ? /* @__PURE__ */ jsxs("select", {
653
- "aria-label": `Decision for ${row.actionPath}`,
654
- value: known ? row.decision : "",
684
+ editable ? /* @__PURE__ */ jsxs(Select, {
685
+ value: known ? String(row.decisionOptions.findIndex((option) => option.value === row.decision)) : "",
655
686
  disabled: busy || row.disabled,
656
- onChange: (event) => {
657
- if (connection && row.decisionOptions.some((option) => option.value === event.target.value)) onDecisionChange?.(connection.id, row.actionPath, event.target.value);
687
+ onValueChange: (value) => {
688
+ const option = row.decisionOptions.find((_, index) => String(index) === value);
689
+ if (connection && option) onDecisionChange?.(connection.id, row.actionPath, option.value);
658
690
  },
659
- className: cn("h-9 rounded-md border border-border bg-background px-2 text-sm", focusRing),
660
- children: [!known ? /* @__PURE__ */ jsx("option", {
661
- value: "",
662
- disabled: true,
663
- children: "Not available"
664
- }) : null, row.decisionOptions.map((option) => /* @__PURE__ */ jsx("option", {
665
- value: option.value,
666
- children: option.label
667
- }, option.value))]
691
+ children: [/* @__PURE__ */ jsx(SelectTrigger, {
692
+ "aria-label": `Decision for ${row.actionPath}`,
693
+ className: "h-9 min-w-32",
694
+ children: /* @__PURE__ */ jsx(SelectValue, { placeholder: "Not available" })
695
+ }), /* @__PURE__ */ jsx(SelectContent, {
696
+ className: integrationSelectContentClassName,
697
+ children: row.decisionOptions.map((option, index) => /* @__PURE__ */ jsx(SelectItem, {
698
+ value: String(index),
699
+ className: integrationSelectItemClassName,
700
+ children: option.label
701
+ }, option.value))
702
+ })]
668
703
  }) : /* @__PURE__ */ jsx("span", {
669
704
  className: "text-sm",
670
705
  children: known ? row.decisionOptions.find((option) => option.value === row.decision)?.label : "Not available"
package/dist/pages.js CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as SelectItem, At as Textarea$1, C as DialogTitle$1, Ht as PageHeader, W as Input$1, X as Select, Z as SelectContent, _ as DialogContent$1, a as Badge$1, at as SelectValue, b as DialogHeader$1, ft as Switch, h as Dialog$1, it as SelectTrigger, o as Button$1, v as DialogDescription$1, y as DialogFooter$1 } from "./primitives-Dh1vG6J3.js";
1
+ import { $ as SelectItem$1, At as Textarea$1, C as DialogTitle$1, Ht as PageHeader, W as Input$1, X as Select$1, Z as SelectContent$1, _ as DialogContent$1, a as Badge$1, at as SelectValue$1, b as DialogHeader$1, ft as Switch, h as Dialog$1, it as SelectTrigger$1, o as Button$1, v as DialogDescription$1, y as DialogFooter$1 } from "./primitives-BnVvXgcl.js";
2
2
  import { t as cn$1 } from "./utils-DzWbktWG.js";
3
3
  import { i as PricingPage, n as TemplateCard, o as BillingDashboard, r as UsageChart, t as InfoPanel } from "./info-panel-C9cqDzOL.js";
4
4
  import { Badge, Button, Card, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, EmptyState, Input, Skeleton, SkeletonCard, Tabs, TabsContent, TabsList, TabsTrigger } from "@tangle-network/ui/primitives";
@@ -1490,25 +1490,25 @@ function ProvisioningWizard({ environments: environmentsProp, onLoadEnvironments
1490
1490
  htmlFor: `${fieldIdPrefix}-driver`,
1491
1491
  className: cn$1(FIELD_LABEL_CLASS, "mb-1.5"),
1492
1492
  children: "Virtualization Driver"
1493
- }), /* @__PURE__ */ jsxs(Select, {
1493
+ }), /* @__PURE__ */ jsxs(Select$1, {
1494
1494
  value: driver,
1495
1495
  onValueChange: (value) => {
1496
1496
  if (VALID_DRIVERS.has(value)) setDriver(value);
1497
1497
  },
1498
- children: [/* @__PURE__ */ jsx(SelectTrigger, {
1498
+ children: [/* @__PURE__ */ jsx(SelectTrigger$1, {
1499
1499
  id: `${fieldIdPrefix}-driver`,
1500
1500
  className: "h-9",
1501
- children: /* @__PURE__ */ jsx(SelectValue, {})
1502
- }), /* @__PURE__ */ jsxs(SelectContent, { children: [
1503
- /* @__PURE__ */ jsx(SelectItem, {
1501
+ children: /* @__PURE__ */ jsx(SelectValue$1, {})
1502
+ }), /* @__PURE__ */ jsxs(SelectContent$1, { children: [
1503
+ /* @__PURE__ */ jsx(SelectItem$1, {
1504
1504
  value: "docker",
1505
1505
  children: "Docker container (Default)"
1506
1506
  }),
1507
- /* @__PURE__ */ jsx(SelectItem, {
1507
+ /* @__PURE__ */ jsx(SelectItem$1, {
1508
1508
  value: "firecracker",
1509
1509
  children: "Firecracker microVM (Secure)"
1510
1510
  }),
1511
- /* @__PURE__ */ jsx(SelectItem, {
1511
+ /* @__PURE__ */ jsx(SelectItem$1, {
1512
1512
  value: "tangle",
1513
1513
  children: "Tangle Distributed Node"
1514
1514
  })
@@ -1,5 +1,5 @@
1
1
  import { t as cn } from "./utils-DzWbktWG.js";
2
- import { ArtifactPane as ArtifactPane$1, Avatar as Avatar$1, AvatarFallback as AvatarFallback$1, AvatarImage as AvatarImage$1, Badge as Badge$1, Button as Button$1, Card as Card$1, CardContent as CardContent$1, CardDescription as CardDescription$1, CardFooter, CardHeader as CardHeader$1, CardTitle as CardTitle$1, CodeBlock, CopyButton, Dialog as Dialog$1, DialogClose, DialogContent as DialogContent$1, DialogDescription as DialogDescription$1, DialogFooter as DialogFooter$1, DialogHeader as DialogHeader$1, DialogOverlay, DialogPortal, DialogTitle as DialogTitle$1, DialogTrigger, DropZone, DropdownMenu as DropdownMenu$1, DropdownMenuCheckboxItem, DropdownMenuContent as DropdownMenuContent$1, DropdownMenuGroup, DropdownMenuItem as DropdownMenuItem$1, DropdownMenuLabel as DropdownMenuLabel$1, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator as DropdownMenuSeparator$1, DropdownMenuShortcut, DropdownMenuSub as DropdownMenuSub$1, DropdownMenuSubContent as DropdownMenuSubContent$1, DropdownMenuSubTrigger as DropdownMenuSubTrigger$1, DropdownMenuTrigger as DropdownMenuTrigger$1, EmptyState as EmptyState$1, FilterField, InlineCode, Input as Input$1, Label as Label$1, Metric, MetricStrip, Progress as Progress$1, SegmentedControl, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SidebarDropZone, Skeleton as Skeleton$1, SkeletonCard as SkeletonCard$1, SkeletonTable, StatCard as StatCard$1, StatusPill, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs as Tabs$1, TabsContent as TabsContent$1, TabsList as TabsList$1, TabsTrigger as TabsTrigger$1, TerminalCursor, TerminalDisplay, TerminalInput, TerminalLine, TextShimmer, Textarea as Textarea$1, ThemeToggle, ToastContainer, ToastProvider, Toolbar, UploadProgress, badgeVariants, buttonVariants, useTheme as useTheme$1, useToast } from "@tangle-network/ui/primitives";
2
+ import { ArtifactPane as ArtifactPane$1, Avatar as Avatar$1, AvatarFallback as AvatarFallback$1, AvatarImage as AvatarImage$1, Badge as Badge$1, Button as Button$1, Card as Card$1, CardContent as CardContent$1, CardDescription as CardDescription$1, CardFooter, CardHeader as CardHeader$1, CardTitle as CardTitle$1, CodeBlock, CopyButton, Dialog as Dialog$1, DialogClose, DialogContent as DialogContent$1, DialogDescription as DialogDescription$1, DialogFooter as DialogFooter$1, DialogHeader as DialogHeader$1, DialogOverlay, DialogPortal, DialogTitle as DialogTitle$1, DialogTrigger, DropZone, DropdownMenu as DropdownMenu$1, DropdownMenuCheckboxItem, DropdownMenuContent as DropdownMenuContent$1, DropdownMenuGroup, DropdownMenuItem as DropdownMenuItem$1, DropdownMenuLabel as DropdownMenuLabel$1, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator as DropdownMenuSeparator$1, DropdownMenuShortcut, DropdownMenuSub as DropdownMenuSub$1, DropdownMenuSubContent as DropdownMenuSubContent$1, DropdownMenuSubTrigger as DropdownMenuSubTrigger$1, DropdownMenuTrigger as DropdownMenuTrigger$1, EmptyState as EmptyState$1, FilterField, InlineCode, Input as Input$1, Label as Label$1, Metric, MetricStrip, Progress as Progress$1, SegmentedControl, Select as Select$1, SelectContent as SelectContent$1, SelectGroup, SelectItem as SelectItem$1, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger as SelectTrigger$1, SelectValue as SelectValue$1, SidebarDropZone, Skeleton as Skeleton$1, SkeletonCard as SkeletonCard$1, SkeletonTable, StatCard as StatCard$1, StatusPill, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs as Tabs$1, TabsContent as TabsContent$1, TabsList as TabsList$1, TabsTrigger as TabsTrigger$1, TerminalCursor, TerminalDisplay, TerminalInput, TerminalLine, TextShimmer, Textarea as Textarea$1, ThemeToggle, ToastContainer, ToastProvider, Toolbar, UploadProgress, badgeVariants, buttonVariants, useTheme as useTheme$1, useToast } from "@tangle-network/ui/primitives";
3
3
  import { Logo, TangleKnot as TangleKnot$1 } from "@tangle-network/brand";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
5
5
  import { forwardRef } from "react";
@@ -110,4 +110,4 @@ function PageShell({ children, className }) {
110
110
  });
111
111
  }
112
112
  //#endregion
113
- export { SelectItem as $, DropdownMenuItem$1 as A, Textarea$1 as At, DropdownMenuTrigger$1 as B, PageShell as Bt, DialogTitle$1 as C, TabsList$1 as Ct, DropdownMenuCheckboxItem as D, TerminalInput as Dt, DropdownMenu$1 as E, TerminalDisplay as Et, DropdownMenuSeparator$1 as F, UploadProgress as Ft, Label$1 as G, TangleKnot$1 as Gt, FilterField as H, PageHeader as Ht, DropdownMenuShortcut as I, badgeVariants as It, Progress$1 as J, Metric as K, DropdownMenuSub$1 as L, buttonVariants as Lt, DropdownMenuPortal as M, ToastContainer as Mt, DropdownMenuRadioGroup as N, ToastProvider as Nt, DropdownMenuContent$1 as O, TerminalLine as Ot, DropdownMenuRadioItem as P, Toolbar as Pt, SelectGroup as Q, DropdownMenuSubContent$1 as R, useTheme$1 as Rt, DialogPortal as S, TabsContent$1 as St, DropZone as T, TerminalCursor as Tt, InlineCode as U, SectionTitle as Ut, EmptyState$1 as V, Heading as Vt, Input$1 as W, Logo$1 as Wt, Select as X, SegmentedControl as Y, SelectContent as Z, DialogContent$1 as _, TableFooter as _t, Badge$1 as a, SelectValue as at, DialogHeader$1 as b, TableRow as bt, CardContent$1 as c, SkeletonCard$1 as ct, CardHeader$1 as d, StatusPill as dt, SelectLabel as et, CardTitle$1 as f, Switch as ft, DialogClose as g, TableCell as gt, Dialog$1 as h, TableCaption as ht, AvatarImage$1 as i, SelectTrigger as it, DropdownMenuLabel$1 as j, ThemeToggle as jt, DropdownMenuGroup as k, TextShimmer as kt, CardDescription$1 as l, SkeletonTable as lt, CopyButton as m, TableBody as mt, Avatar$1 as n, SelectScrollUpButton as nt, Button$1 as o, SidebarDropZone as ot, CodeBlock as p, Table as pt, MetricStrip as q, AvatarFallback$1 as r, SelectSeparator as rt, Card$1 as s, Skeleton$1 as st, ArtifactPane$1 as t, SelectScrollDownButton as tt, CardFooter as u, StatCard$1 as ut, DialogDescription$1 as v, TableHead as vt, DialogTrigger as w, TabsTrigger$1 as wt, DialogOverlay as x, Tabs$1 as xt, DialogFooter$1 as y, TableHeader as yt, DropdownMenuSubTrigger$1 as z, useToast as zt };
113
+ export { SelectItem$1 as $, DropdownMenuItem$1 as A, Textarea$1 as At, DropdownMenuTrigger$1 as B, PageShell as Bt, DialogTitle$1 as C, TabsList$1 as Ct, DropdownMenuCheckboxItem as D, TerminalInput as Dt, DropdownMenu$1 as E, TerminalDisplay as Et, DropdownMenuSeparator$1 as F, UploadProgress as Ft, Label$1 as G, TangleKnot$1 as Gt, FilterField as H, PageHeader as Ht, DropdownMenuShortcut as I, badgeVariants as It, Progress$1 as J, Metric as K, DropdownMenuSub$1 as L, buttonVariants as Lt, DropdownMenuPortal as M, ToastContainer as Mt, DropdownMenuRadioGroup as N, ToastProvider as Nt, DropdownMenuContent$1 as O, TerminalLine as Ot, DropdownMenuRadioItem as P, Toolbar as Pt, SelectGroup as Q, DropdownMenuSubContent$1 as R, useTheme$1 as Rt, DialogPortal as S, TabsContent$1 as St, DropZone as T, TerminalCursor as Tt, InlineCode as U, SectionTitle as Ut, EmptyState$1 as V, Heading as Vt, Input$1 as W, Logo$1 as Wt, Select$1 as X, SegmentedControl as Y, SelectContent$1 as Z, DialogContent$1 as _, TableFooter as _t, Badge$1 as a, SelectValue$1 as at, DialogHeader$1 as b, TableRow as bt, CardContent$1 as c, SkeletonCard$1 as ct, CardHeader$1 as d, StatusPill as dt, SelectLabel as et, CardTitle$1 as f, Switch as ft, DialogClose as g, TableCell as gt, Dialog$1 as h, TableCaption as ht, AvatarImage$1 as i, SelectTrigger$1 as it, DropdownMenuLabel$1 as j, ThemeToggle as jt, DropdownMenuGroup as k, TextShimmer as kt, CardDescription$1 as l, SkeletonTable as lt, CopyButton as m, TableBody as mt, Avatar$1 as n, SelectScrollUpButton as nt, Button$1 as o, SidebarDropZone as ot, CodeBlock as p, Table as pt, MetricStrip as q, AvatarFallback$1 as r, SelectSeparator as rt, Card$1 as s, Skeleton$1 as st, ArtifactPane$1 as t, SelectScrollDownButton as tt, CardFooter as u, StatCard$1 as ut, DialogDescription$1 as v, TableHead as vt, DialogTrigger as w, TabsTrigger$1 as wt, DialogOverlay as x, Tabs$1 as xt, DialogFooter$1 as y, TableHeader as yt, DropdownMenuSubTrigger$1 as z, useToast as zt };
@@ -1,2 +1,2 @@
1
- import { $ as InputProps, $t as ToastProvider, A as DropZoneProps, At as Table, B as DropdownMenuSeparator, Bt as TabsList, C as DialogFooter, Ct as SkeletonTable, D as DialogTitle, Dt as StatusPillProps, E as DialogPortal, Et as StatusPill, F as DropdownMenuItem, Ft as TableHead, G as DropdownMenuTrigger, Gt as TerminalLine, H as DropdownMenuSub, Ht as TerminalCursor, I as DropdownMenuLabel, It as TableHeader, J as FilterField, Jt as Textarea, K as EmptyState, Kt as TextShimmer, L as DropdownMenuPortal, Lt as TableRow, M as DropdownMenuCheckboxItem, Mt as TableCaption, N as DropdownMenuContent, Nt as TableCell, O as DialogTrigger, Ot as StatusTone, P as DropdownMenuGroup, Pt as TableFooter, Q as Input, Qt as ToastContainer, R as DropdownMenuRadioGroup, Rt as Tabs, S as DialogDescription, St as SkeletonCard, T as DialogOverlay, Tt as StatCardProps, U as DropdownMenuSubContent, Ut as TerminalDisplay, V as DropdownMenuShortcut, Vt as TabsTrigger, W as DropdownMenuSubTrigger, Wt as TerminalInput, X as InlineCode, Xt as ThemeToggle, Y as FilterFieldProps, Yt as TextareaProps, Z as InlineCodeProps, Zt as Toast, _ as CodeBlockProps, _n as SectionTitleProps, _t as SelectTrigger, a as AvatarImage, an as badgeVariants, at as Progress, b as DialogClose, bn as TangleKnot, bt as SidebarDropZoneProps, c as Button, cn as useToast, ct as SegmentedControlProps, d as CardContent, dn as Heading, dt as SelectGroup, en as Toolbar, et as Label, f as CardDescription, fn as HeadingProps, ft as SelectItem, g as CodeBlock, gn as SectionTitle, gt as SelectSeparator, h as CardTitle, hn as PageHeaderProps, ht as SelectScrollUpButton, i as AvatarFallback, in as UploadProgressProps, it as MetricStripProps, j as DropdownMenu, jt as TableBody, k as DropZone, kt as Switch, l as ButtonProps, ln as PageShell, lt as Select, m as CardHeader, mn as PageHeader, mt as SelectScrollDownButton, n as ArtifactPaneProps, nn as UploadFile, nt as MetricProps, o as Badge, on as buttonVariants, ot as SegmentedControl, p as CardFooter, pn as HeadingVariant, pt as SelectLabel, q as EmptyStateProps, qt as TextShimmerProps, r as Avatar, rn as UploadProgress, rt as MetricStrip, s as BadgeProps, sn as useTheme, st as SegmentedControlOption, t as ArtifactPane, tn as ToolbarProps, tt as Metric, u as Card, un as PageShellProps, ut as SelectContent, v as CopyButton, vn as Logo, vt as SelectValue, w as DialogHeader, wt as StatCard, x as DialogContent, xt as Skeleton, y as Dialog, yn as LogoProps, yt as SidebarDropZone, z as DropdownMenuRadioItem, zt as TabsContent } from "./index-PRM636Ex.js";
1
+ import { $ as InputProps, $t as ToastProvider, A as DropZoneProps, At as Table, B as DropdownMenuSeparator, Bt as TabsList, C as DialogFooter, Ct as SkeletonTable, D as DialogTitle, Dt as StatusPillProps, E as DialogPortal, Et as StatusPill, F as DropdownMenuItem, Ft as TableHead, G as DropdownMenuTrigger, Gt as TerminalLine, H as DropdownMenuSub, Ht as TerminalCursor, I as DropdownMenuLabel, It as TableHeader, J as FilterField, Jt as Textarea, K as EmptyState, Kt as TextShimmer, L as DropdownMenuPortal, Lt as TableRow, M as DropdownMenuCheckboxItem, Mt as TableCaption, N as DropdownMenuContent, Nt as TableCell, O as DialogTrigger, Ot as StatusTone, P as DropdownMenuGroup, Pt as TableFooter, Q as Input, Qt as ToastContainer, R as DropdownMenuRadioGroup, Rt as Tabs, S as DialogDescription, St as SkeletonCard, T as DialogOverlay, Tt as StatCardProps, U as DropdownMenuSubContent, Ut as TerminalDisplay, V as DropdownMenuShortcut, Vt as TabsTrigger, W as DropdownMenuSubTrigger, Wt as TerminalInput, X as InlineCode, Xt as ThemeToggle, Y as FilterFieldProps, Yt as TextareaProps, Z as InlineCodeProps, Zt as Toast, _ as CodeBlockProps, _n as SectionTitleProps, _t as SelectTrigger, a as AvatarImage, an as badgeVariants, at as Progress, b as DialogClose, bn as TangleKnot, bt as SidebarDropZoneProps, c as Button, cn as useToast, ct as SegmentedControlProps, d as CardContent, dn as Heading, dt as SelectGroup, en as Toolbar, et as Label, f as CardDescription, fn as HeadingProps, ft as SelectItem, g as CodeBlock, gn as SectionTitle, gt as SelectSeparator, h as CardTitle, hn as PageHeaderProps, ht as SelectScrollUpButton, i as AvatarFallback, in as UploadProgressProps, it as MetricStripProps, j as DropdownMenu, jt as TableBody, k as DropZone, kt as Switch, l as ButtonProps, ln as PageShell, lt as Select, m as CardHeader, mn as PageHeader, mt as SelectScrollDownButton, n as ArtifactPaneProps, nn as UploadFile, nt as MetricProps, o as Badge, on as buttonVariants, ot as SegmentedControl, p as CardFooter, pn as HeadingVariant, pt as SelectLabel, q as EmptyStateProps, qt as TextShimmerProps, r as Avatar, rn as UploadProgress, rt as MetricStrip, s as BadgeProps, sn as useTheme, st as SegmentedControlOption, t as ArtifactPane, tn as ToolbarProps, tt as Metric, u as Card, un as PageShellProps, ut as SelectContent, v as CopyButton, vn as Logo, vt as SelectValue, w as DialogHeader, wt as StatCard, x as DialogContent, xt as Skeleton, y as Dialog, yn as LogoProps, yt as SidebarDropZone, z as DropdownMenuRadioItem, zt as TabsContent } from "./index-ez0RxbPT.js";
2
2
  export { ArtifactPane, type ArtifactPaneProps, Avatar, AvatarFallback, AvatarImage, Badge, type BadgeProps, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CodeBlock, type CodeBlockProps, CopyButton, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropZone, type DropZoneProps, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateProps, FilterField, type FilterFieldProps, Heading, type HeadingProps, type HeadingVariant, InlineCode, type InlineCodeProps, Input, type InputProps, Label, Logo, type LogoProps, Metric, type MetricProps, MetricStrip, type MetricStripProps, PageHeader, type PageHeaderProps, PageShell, type PageShellProps, Progress, SectionTitle, type SectionTitleProps, SegmentedControl, type SegmentedControlOption, type SegmentedControlProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SidebarDropZone, type SidebarDropZoneProps, Skeleton, SkeletonCard, SkeletonTable, StatCard, type StatCardProps, StatusPill, type StatusPillProps, type StatusTone, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TangleKnot, TerminalCursor, TerminalDisplay, TerminalInput, TerminalLine, TextShimmer, type TextShimmerProps, Textarea, type TextareaProps, ThemeToggle, type Toast, ToastContainer, ToastProvider, Toolbar, type ToolbarProps, type UploadFile, UploadProgress, type UploadProgressProps, badgeVariants, buttonVariants, useTheme, useToast };
@@ -1,2 +1,2 @@
1
- import { $ as SelectItem, A as DropdownMenuItem, At as Textarea, B as DropdownMenuTrigger, Bt as PageShell, C as DialogTitle, Ct as TabsList, D as DropdownMenuCheckboxItem, Dt as TerminalInput, E as DropdownMenu, Et as TerminalDisplay, F as DropdownMenuSeparator, Ft as UploadProgress, G as Label, Gt as TangleKnot, H as FilterField, Ht as PageHeader, I as DropdownMenuShortcut, It as badgeVariants, J as Progress, K as Metric, L as DropdownMenuSub, Lt as buttonVariants, M as DropdownMenuPortal, Mt as ToastContainer, N as DropdownMenuRadioGroup, Nt as ToastProvider, O as DropdownMenuContent, Ot as TerminalLine, P as DropdownMenuRadioItem, Pt as Toolbar, Q as SelectGroup, R as DropdownMenuSubContent, Rt as useTheme, S as DialogPortal, St as TabsContent, T as DropZone, Tt as TerminalCursor, U as InlineCode, Ut as SectionTitle, V as EmptyState, Vt as Heading, W as Input, Wt as Logo, X as Select, Y as SegmentedControl, Z as SelectContent, _ as DialogContent, _t as TableFooter, a as Badge, at as SelectValue, b as DialogHeader, bt as TableRow, c as CardContent, ct as SkeletonCard, d as CardHeader, dt as StatusPill, et as SelectLabel, f as CardTitle, ft as Switch, g as DialogClose, gt as TableCell, h as Dialog, ht as TableCaption, i as AvatarImage, it as SelectTrigger, j as DropdownMenuLabel, jt as ThemeToggle, k as DropdownMenuGroup, kt as TextShimmer, l as CardDescription, lt as SkeletonTable, m as CopyButton, mt as TableBody, n as Avatar, nt as SelectScrollUpButton, o as Button, ot as SidebarDropZone, p as CodeBlock, pt as Table, q as MetricStrip, r as AvatarFallback, rt as SelectSeparator, s as Card, st as Skeleton, t as ArtifactPane, tt as SelectScrollDownButton, u as CardFooter, ut as StatCard, v as DialogDescription, vt as TableHead, w as DialogTrigger, wt as TabsTrigger, x as DialogOverlay, xt as Tabs, y as DialogFooter, yt as TableHeader, z as DropdownMenuSubTrigger, zt as useToast } from "./primitives-Dh1vG6J3.js";
1
+ import { $ as SelectItem, A as DropdownMenuItem, At as Textarea, B as DropdownMenuTrigger, Bt as PageShell, C as DialogTitle, Ct as TabsList, D as DropdownMenuCheckboxItem, Dt as TerminalInput, E as DropdownMenu, Et as TerminalDisplay, F as DropdownMenuSeparator, Ft as UploadProgress, G as Label, Gt as TangleKnot, H as FilterField, Ht as PageHeader, I as DropdownMenuShortcut, It as badgeVariants, J as Progress, K as Metric, L as DropdownMenuSub, Lt as buttonVariants, M as DropdownMenuPortal, Mt as ToastContainer, N as DropdownMenuRadioGroup, Nt as ToastProvider, O as DropdownMenuContent, Ot as TerminalLine, P as DropdownMenuRadioItem, Pt as Toolbar, Q as SelectGroup, R as DropdownMenuSubContent, Rt as useTheme, S as DialogPortal, St as TabsContent, T as DropZone, Tt as TerminalCursor, U as InlineCode, Ut as SectionTitle, V as EmptyState, Vt as Heading, W as Input, Wt as Logo, X as Select, Y as SegmentedControl, Z as SelectContent, _ as DialogContent, _t as TableFooter, a as Badge, at as SelectValue, b as DialogHeader, bt as TableRow, c as CardContent, ct as SkeletonCard, d as CardHeader, dt as StatusPill, et as SelectLabel, f as CardTitle, ft as Switch, g as DialogClose, gt as TableCell, h as Dialog, ht as TableCaption, i as AvatarImage, it as SelectTrigger, j as DropdownMenuLabel, jt as ThemeToggle, k as DropdownMenuGroup, kt as TextShimmer, l as CardDescription, lt as SkeletonTable, m as CopyButton, mt as TableBody, n as Avatar, nt as SelectScrollUpButton, o as Button, ot as SidebarDropZone, p as CodeBlock, pt as Table, q as MetricStrip, r as AvatarFallback, rt as SelectSeparator, s as Card, st as Skeleton, t as ArtifactPane, tt as SelectScrollDownButton, u as CardFooter, ut as StatCard, v as DialogDescription, vt as TableHead, w as DialogTrigger, wt as TabsTrigger, x as DialogOverlay, xt as Tabs, y as DialogFooter, yt as TableHeader, z as DropdownMenuSubTrigger, zt as useToast } from "./primitives-BnVvXgcl.js";
2
2
  export { ArtifactPane, Avatar, AvatarFallback, AvatarImage, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CodeBlock, CopyButton, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropZone, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FilterField, Heading, InlineCode, Input, Label, Logo, Metric, MetricStrip, PageHeader, PageShell, Progress, SectionTitle, SegmentedControl, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SidebarDropZone, Skeleton, SkeletonCard, SkeletonTable, StatCard, StatusPill, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TangleKnot, TerminalCursor, TerminalDisplay, TerminalInput, TerminalLine, TextShimmer, Textarea, ThemeToggle, ToastContainer, ToastProvider, Toolbar, UploadProgress, badgeVariants, buttonVariants, useTheme, useToast };
package/dist/styles.css CHANGED
@@ -1512,6 +1512,9 @@
1512
1512
  .min-w-14 {
1513
1513
  min-width: calc(var(--spacing) * 14);
1514
1514
  }
1515
+ .min-w-32 {
1516
+ min-width: calc(var(--spacing) * 32);
1517
+ }
1515
1518
  .min-w-40 {
1516
1519
  min-width: calc(var(--spacing) * 40);
1517
1520
  }
@@ -4509,6 +4512,9 @@
4509
4512
  .focus\:border-\[var\(--focus-border-danger\)\]:focus {
4510
4513
  border-color: var(--focus-border-danger);
4511
4514
  }
4515
+ .focus\:bg-\[var\(--accent-surface-strong\)\]:focus {
4516
+ background-color: var(--accent-surface-strong);
4517
+ }
4512
4518
  .focus\:bg-accent:focus {
4513
4519
  background-color: var(--color-accent);
4514
4520
  }
@@ -4733,6 +4739,9 @@
4733
4739
  .data-\[state\=checked\]\:bg-\[var\(--accent-surface-soft\)\][data-state="checked"] {
4734
4740
  background-color: var(--accent-surface-soft);
4735
4741
  }
4742
+ .data-\[state\=checked\]\:bg-\[var\(--accent-surface-strong\)\][data-state="checked"] {
4743
+ background-color: var(--accent-surface-strong);
4744
+ }
4736
4745
  .data-\[state\=checked\]\:bg-primary[data-state="checked"] {
4737
4746
  background-color: var(--color-primary);
4738
4747
  }
@@ -4742,6 +4751,9 @@
4742
4751
  .data-\[state\=checked\]\:text-\[var\(--brand-primary\)\][data-state="checked"] {
4743
4752
  color: var(--brand-primary);
4744
4753
  }
4754
+ .data-\[state\=checked\]\:text-foreground[data-state="checked"] {
4755
+ color: var(--color-foreground);
4756
+ }
4745
4757
  .data-\[state\=inactive\]\:text-muted-foreground[data-state="inactive"] {
4746
4758
  color: var(--color-muted-foreground);
4747
4759
  }
@@ -4759,6 +4771,9 @@
4759
4771
  .data-\[state\=open\]\:border-\[var\(--md3-outline-variant\)\][data-state="open"] {
4760
4772
  border-color: var(--md3-outline-variant);
4761
4773
  }
4774
+ .data-\[state\=open\]\:border-primary[data-state="open"] {
4775
+ border-color: var(--color-primary);
4776
+ }
4762
4777
  .data-\[state\=open\]\:bg-\[var\(--accent-surface-strong\)\][data-state="open"] {
4763
4778
  background-color: var(--accent-surface-strong);
4764
4779
  }
@@ -4852,6 +4867,9 @@
4852
4867
  .sm\:w-auto {
4853
4868
  width: auto;
4854
4869
  }
4870
+ .sm\:min-w-40 {
4871
+ min-width: calc(var(--spacing) * 40);
4872
+ }
4855
4873
  .sm\:shrink-0 {
4856
4874
  flex-shrink: 0;
4857
4875
  }
@@ -1,5 +1,5 @@
1
1
  import { t as cn$1 } from "./utils-DzWbktWG.js";
2
- import { o as PortsList } from "./dashboard-euyfLroA.js";
2
+ import { o as PortsList } from "./dashboard-DdUTq0so.js";
3
3
  import { n as TerminalView } from "./terminal-DmSUfGha.js";
4
4
  import { RichFileTree } from "./files.js";
5
5
  import { n as PreviewView } from "./embedded-app-view-CoiS_kfY.js";
package/dist/workbench.js CHANGED
@@ -1,3 +1,3 @@
1
- import { a as computeDiffStats, c as BRAND_PRISM_THEME, d as DiffStatsBadge, f as GitStatusBadge, i as buildUnifiedPatch, l as CodeSurface, m as PillTabs, n as SandboxArtifactPane, o as CodeView, p as PanelHeader, r as DiffView, s as FileBreadcrumb, t as ChangesPane, u as resolveLanguage } from "./workbench-B1UltdHQ.js";
1
+ import { a as computeDiffStats, c as BRAND_PRISM_THEME, d as DiffStatsBadge, f as GitStatusBadge, i as buildUnifiedPatch, l as CodeSurface, m as PillTabs, n as SandboxArtifactPane, o as CodeView, p as PanelHeader, r as DiffView, s as FileBreadcrumb, t as ChangesPane, u as resolveLanguage } from "./workbench-CN7bm93p.js";
2
2
  import { n as PreviewView, t as EmbeddedAppView } from "./embedded-app-view-CoiS_kfY.js";
3
3
  export { BRAND_PRISM_THEME, ChangesPane, CodeSurface, CodeView, DiffStatsBadge, DiffView, EmbeddedAppView, FileBreadcrumb, GitStatusBadge, PanelHeader, PillTabs, PreviewView, SandboxArtifactPane, buildUnifiedPatch, computeDiffStats, resolveLanguage };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tangle-network/sandbox-ui",
3
- "version": "0.117.0",
3
+ "version": "0.117.2",
4
4
  "description": "Unified UI component library for Tangle Sandbox — primitives, chat, dashboard, terminal, editor, and workspace components",
5
5
  "repository": {
6
6
  "type": "git",
@@ -198,6 +198,7 @@
198
198
  "eventsource-parser": "4.1.1",
199
199
  "lucide-react": "^1.48.0",
200
200
  "nanostores": "^1.5.4",
201
+ "tailwindcss-animate": "^1.0.7",
201
202
  "yaml": "^2.9.1"
202
203
  },
203
204
  "devDependencies": {
@@ -241,7 +242,6 @@
241
242
  "react-syntax-highlighter": "^16.1.1",
242
243
  "storybook": "^10.6.0",
243
244
  "tailwindcss": "^4.3.3",
244
- "tailwindcss-animate": "^1.0.7",
245
245
  "tsdown": "^0.23.0",
246
246
  "typescript": "^7.0.2",
247
247
  "vite": "^8.3.1",