@tangle-network/sandbox-ui 0.3.11 → 0.3.13

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.
Files changed (37) hide show
  1. package/README.md +7 -1
  2. package/dist/auth.js +2 -3
  3. package/dist/{chunk-CREVWUCA.js → chunk-DJEZKF5A.js} +3 -2
  4. package/dist/chunk-DLCFZDGX.js +182 -0
  5. package/dist/{chunk-FOQTE67I.js → chunk-FJLS7PNT.js} +9 -4
  6. package/dist/chunk-HXEA7L2T.js +1401 -0
  7. package/dist/{chunk-6NYG2R7V.js → chunk-HYLTXGOI.js} +1 -1
  8. package/dist/{chunk-MCGKDCOR.js → chunk-IW2JZCOC.js} +55 -14
  9. package/dist/{chunk-PCTEG6HR.js → chunk-OHMO7NUX.js} +2 -4
  10. package/dist/{chunk-DMYYQXPN.js → chunk-SMBF6HB5.js} +646 -465
  11. package/dist/dashboard.d.ts +1 -1
  12. package/dist/dashboard.js +40 -6
  13. package/dist/{document-editor-pane-AFBP2KFT.js → document-editor-pane-5TN2VWGZ.js} +1 -1
  14. package/dist/{document-editor-pane-Xnl8SmA7.d.ts → document-editor-pane-A70-EhdQ.d.ts} +1 -1
  15. package/dist/editor.d.ts +2 -2
  16. package/dist/editor.js +1 -1
  17. package/dist/files.d.ts +1 -1
  18. package/dist/files.js +1 -1
  19. package/dist/hooks.d.ts +1 -1
  20. package/dist/hooks.js +2 -2
  21. package/dist/index-D7_ZDkwB.d.ts +375 -0
  22. package/dist/index.d.ts +5 -3
  23. package/dist/index.js +74 -16
  24. package/dist/pages.d.ts +12 -2
  25. package/dist/pages.js +60 -5
  26. package/dist/primitives.js +4 -6
  27. package/dist/sdk-hooks.js +1 -1
  28. package/dist/terminal.d.ts +2 -2
  29. package/dist/terminal.js +9 -39
  30. package/dist/{use-pty-session-DeZSxOCN.d.ts → use-pty-session-COzVkhtc.d.ts} +1 -1
  31. package/dist/workspace.d.ts +3 -1
  32. package/dist/workspace.js +2 -2
  33. package/package.json +1 -1
  34. package/dist/chunk-B26TQ7SA.js +0 -47
  35. package/dist/chunk-BOBXH6CH.js +0 -10981
  36. package/dist/chunk-GRYHFH5O.js +0 -110
  37. package/dist/index-BJIPTCKk.d.ts +0 -264
@@ -1,4 +1,4 @@
1
- export { A as AppSidebar, a as AppSidebarProps, B as Backend, b as BackendSelector, c as BackendSelectorProps, C as ClusterStatusBar, d as ClusterStatusBarProps, e as ClusterStatusItem, f as CreditBalance, g as CreditBalanceProps, D as DashboardLayout, h as DashboardLayoutProps, G as DashboardProfile, i as DashboardUser, I as Invoice, j as InvoiceTable, k as InvoiceTableProps, N as NavItem, l as NewSandboxCard, m as NewSandboxCardProps, P as PlanCardData, n as PlanCards, o as PlanCardsProps, H as PlanFeature, J as ProductVariant, p as ProfileComparison, q as ProfileComparisonProps, r as ProfileSelector, s as ProfileSelectorProps, R as ResourceMeter, t as ResourceMeterProps, S as SandboxCard, u as SandboxCardData, v as SandboxCardProps, w as SandboxStatus, x as SandboxTable, y as SandboxTableProps, z as SidebarNavItem, E as SidebarSandbox, K as Variant, V as VariantList, F as VariantListProps, L as VariantOutcome, M as VariantStatus } from './index-BJIPTCKk.js';
1
+ export { B as Backend, a as BackendSelector, b as BackendSelectorProps, C as ClusterStatusBar, c as ClusterStatusBarProps, d as ClusterStatusItem, e as CreditBalance, f as CreditBalanceProps, D as DashboardLayout, g as DashboardLayoutProps, ag as DashboardProfile, h as DashboardUser, I as Invoice, i as InvoiceTable, j as InvoiceTableProps, N as NavItem, k as NewSandboxCard, l as NewSandboxCardProps, m as PlanCardData, n as PlanCards, o as PlanCardsProps, ah as PlanFeature, p as ProductVariant, q as ProfileAvatar, r as ProfileAvatarProps, s as ProfileComparison, t as ProfileComparisonProps, u as ProfileSelector, v as ProfileSelectorProps, R as RailButton, w as RailButtonProps, x as RailModeButton, y as RailModeButtonProps, z as RailSeparator, A as RailSeparatorProps, E as ResourceMeter, F as ResourceMeterProps, S as SIDEBAR_PANEL_WIDTH, G as SIDEBAR_RAIL_WIDTH, H as SIDEBAR_TOTAL_WIDTH, J as SandboxCard, K as SandboxCardData, L as SandboxCardProps, M as SandboxStatus, O as SandboxTable, Q as SandboxTableProps, T as Sidebar, U as SidebarContent, V as SidebarContentProps, W as SidebarPanel, X as SidebarPanelContent, Y as SidebarPanelContentProps, Z as SidebarPanelHeader, _ as SidebarPanelHeaderProps, $ as SidebarPanelProps, a0 as SidebarProps, a1 as SidebarProvider, a2 as SidebarProviderProps, a3 as SidebarRail, a4 as SidebarRailFooter, a5 as SidebarRailFooterProps, a6 as SidebarRailHeader, a7 as SidebarRailHeaderProps, a8 as SidebarRailNav, a9 as SidebarRailNavProps, aa as SidebarRailProps, ab as SidebarUser, ai as Variant, ad as VariantList, ae as VariantListProps, aj as VariantOutcome, ak as VariantStatus, af as useSidebar } from './index-D7_ZDkwB.js';
2
2
  export { a as BillingBalance, c as BillingDashboard, d as BillingDashboardProps, B as BillingSubscription, b as BillingUsage, e as PricingPage, f as PricingPageProps, P as PricingTier, g as UsageChart, h as UsageChartProps, U as UsageDataPoint } from './usage-chart-CY9xo3KX.js';
3
3
  import 'react/jsx-runtime';
4
4
  import 'react';
package/dist/dashboard.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import {
2
- AppSidebar,
3
2
  BackendSelector,
4
3
  ClusterStatusBar,
5
4
  CreditBalance,
@@ -7,26 +6,43 @@ import {
7
6
  InvoiceTable,
8
7
  NewSandboxCard,
9
8
  PlanCards,
9
+ ProfileAvatar,
10
10
  ProfileComparison,
11
11
  ProfileSelector,
12
+ RailButton,
13
+ RailModeButton,
14
+ RailSeparator,
12
15
  ResourceMeter,
16
+ SIDEBAR_PANEL_WIDTH,
17
+ SIDEBAR_RAIL_WIDTH,
18
+ SIDEBAR_TOTAL_WIDTH,
13
19
  SandboxCard,
14
20
  SandboxTable,
15
- VariantList
16
- } from "./chunk-DMYYQXPN.js";
21
+ Sidebar,
22
+ SidebarContent,
23
+ SidebarPanel,
24
+ SidebarPanelContent,
25
+ SidebarPanelHeader,
26
+ SidebarProvider,
27
+ SidebarRail,
28
+ SidebarRailFooter,
29
+ SidebarRailHeader,
30
+ SidebarRailNav,
31
+ VariantList,
32
+ useSidebar
33
+ } from "./chunk-SMBF6HB5.js";
17
34
  import {
18
35
  BillingDashboard,
19
36
  PricingPage,
20
37
  UsageChart
21
38
  } from "./chunk-ZP6GSX4D.js";
22
39
  import "./chunk-OKCIKTXQ.js";
23
- import "./chunk-MCGKDCOR.js";
40
+ import "./chunk-IW2JZCOC.js";
24
41
  import "./chunk-FRGMMANX.js";
25
42
  import "./chunk-MXCSSOGH.js";
26
43
  import "./chunk-HWLX5NME.js";
27
44
  import "./chunk-RQHJBTEU.js";
28
45
  export {
29
- AppSidebar,
30
46
  BackendSelector,
31
47
  BillingDashboard,
32
48
  ClusterStatusBar,
@@ -36,11 +52,29 @@ export {
36
52
  NewSandboxCard,
37
53
  PlanCards,
38
54
  PricingPage,
55
+ ProfileAvatar,
39
56
  ProfileComparison,
40
57
  ProfileSelector,
58
+ RailButton,
59
+ RailModeButton,
60
+ RailSeparator,
41
61
  ResourceMeter,
62
+ SIDEBAR_PANEL_WIDTH,
63
+ SIDEBAR_RAIL_WIDTH,
64
+ SIDEBAR_TOTAL_WIDTH,
42
65
  SandboxCard,
43
66
  SandboxTable,
67
+ Sidebar,
68
+ SidebarContent,
69
+ SidebarPanel,
70
+ SidebarPanelContent,
71
+ SidebarPanelHeader,
72
+ SidebarProvider,
73
+ SidebarRail,
74
+ SidebarRailFooter,
75
+ SidebarRailHeader,
76
+ SidebarRailNav,
44
77
  UsageChart,
45
- VariantList
78
+ VariantList,
79
+ useSidebar
46
80
  };
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  DocumentEditorPane
4
- } from "./chunk-BOBXH6CH.js";
4
+ } from "./chunk-HXEA7L2T.js";
5
5
  import "./chunk-Q56BYXQF.js";
6
6
  import "./chunk-W4LM3QYZ.js";
7
7
  import "./chunk-LTFK464G.js";
@@ -121,4 +121,4 @@ interface DocumentEditorPaneProps extends Omit<ArtifactPaneProps, "children" | "
121
121
  */
122
122
  declare function DocumentEditorPane({ eyebrow, title, subtitle, meta, headerActions, footer, className, contentClassName, tabs, toolbar, markdown, mode, defaultMode, onModeChange, backend, placeholder, autoFocus, readOnly, onChange, onSave, saving, saveLabel, previewClassName, editorClassName, collaboration, }: DocumentEditorPaneProps): react_jsx_runtime.JSX.Element;
123
123
 
124
- export { type Collaborator as C, type DocumentEditorBackend as D, type EditorContextValue as E, type ConnectionState as a, type DocumentEditorMode as b, DocumentEditorPane as c, type DocumentEditorPaneCollaborationConfig as d, type DocumentEditorPaneProps as e, EditorProvider as f, type EditorProviderProps as g, type EditorTokenRefreshResult as h, type EditorUser as i, useEditorContext as u };
124
+ export { type Collaborator as C, type DocumentEditorBackend as D, type EditorContextValue as E, type ConnectionState as a, type DocumentEditorMode as b, DocumentEditorPane as c, type DocumentEditorPaneCollaborationConfig as d, type DocumentEditorPaneProps as e, EditorProvider as f, type EditorProviderProps as g, type EditorUser as h, type EditorTokenRefreshResult as i, useEditorContext as u };
package/dist/editor.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { C as Collaborator, a as ConnectionState } from './document-editor-pane-Xnl8SmA7.js';
2
- export { D as DocumentEditorBackend, b as DocumentEditorMode, c as DocumentEditorPane, d as DocumentEditorPaneCollaborationConfig, e as DocumentEditorPaneProps, E as EditorContextValue, f as EditorProvider, g as EditorProviderProps, h as EditorTokenRefreshResult, i as EditorUser, u as useEditorContext } from './document-editor-pane-Xnl8SmA7.js';
1
+ import { C as Collaborator, a as ConnectionState } from './document-editor-pane-A70-EhdQ.js';
2
+ export { D as DocumentEditorBackend, b as DocumentEditorMode, c as DocumentEditorPane, d as DocumentEditorPaneCollaborationConfig, e as DocumentEditorPaneProps, E as EditorContextValue, f as EditorProvider, g as EditorProviderProps, i as EditorTokenRefreshResult, h as EditorUser, u as useEditorContext } from './document-editor-pane-A70-EhdQ.js';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import { Editor } from '@tiptap/react';
5
5
  import { HocuspocusProvider } from '@hocuspocus/provider';
package/dist/editor.js CHANGED
@@ -11,7 +11,7 @@ import {
11
11
  useEditorConnection,
12
12
  useEditorContext,
13
13
  useYjsState
14
- } from "./chunk-BOBXH6CH.js";
14
+ } from "./chunk-HXEA7L2T.js";
15
15
  import "./chunk-Q56BYXQF.js";
16
16
  import "./chunk-W4LM3QYZ.js";
17
17
  import "./chunk-LTFK464G.js";
package/dist/files.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { a as FileTabData } from './file-tabs-BLfxfmAH.js';
2
2
  export { F as FileNode, b as FileTabs, c as FileTabsProps, d as FileTree, e as FileTreeProps, f as FileTreeVisibilityOptions, g as filterFileTree } from './file-tabs-BLfxfmAH.js';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
- import { b as DocumentEditorMode, D as DocumentEditorBackend, d as DocumentEditorPaneCollaborationConfig } from './document-editor-pane-Xnl8SmA7.js';
4
+ import { b as DocumentEditorMode, D as DocumentEditorBackend, d as DocumentEditorPaneCollaborationConfig } from './document-editor-pane-A70-EhdQ.js';
5
5
  import { A as ArtifactPaneProps } from './artifact-pane-Bh45Ssco.js';
6
6
  import 'react';
7
7
  import '@hocuspocus/provider';
package/dist/files.js CHANGED
@@ -4,7 +4,7 @@ import {
4
4
  FileTabs,
5
5
  FileTree,
6
6
  filterFileTree
7
- } from "./chunk-6NYG2R7V.js";
7
+ } from "./chunk-HYLTXGOI.js";
8
8
  import "./chunk-W4LM3QYZ.js";
9
9
  import "./chunk-LTFK464G.js";
10
10
  import "./chunk-RQHJBTEU.js";
package/dist/hooks.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { A as AuthUser, U as UseAuthOptions, a as UseAuthResult, b as UsePtySessionOptions, c as UsePtySessionReturn, d as createAuthFetcher, u as useApiKey, e as useAuth, f as usePtySession } from './use-pty-session-DeZSxOCN.js';
1
+ export { A as AuthUser, U as UseAuthOptions, a as UseAuthResult, b as UsePtySessionOptions, c as UsePtySessionReturn, d as createAuthFetcher, u as useApiKey, e as useAuth, f as usePtySession } from './use-pty-session-COzVkhtc.js';
2
2
  export { AgentStreamEvent, AppendUserMessageOptions, ApplySdkEventOptions, AutomationStreamEvent, BeginAssistantMessageOptions, BotStreamEvent, CompleteAssistantMessageOptions, ConnectionState, RealtimeSessionOptions, RealtimeSessionRegistry, RealtimeSessionRegistryProps, RealtimeSessionState, RealtimeSessionTarget, SSEEvent, SdkSessionAttachment, SdkSessionEvent, SdkSessionSeed, SessionInfo, SidecarAuth, TaskStreamEvent, TerminalStreamEvent, UseRunGroupsOptions, UseSSEStreamOptions, UseSSEStreamResult, UseSdkSessionOptions, UseSdkSessionReturn, UseSessionStreamOptions, UseSessionStreamResult, UseSidecarAuthOptions, UseToolCallStreamReturn, useAutoScroll, useDropdownMenu, useRealtimeSession, useRunCollapseState, useRunGroups, useSSEStream, useSdkSession, useSessionStream, useSidecarAuth, useToolCallStream } from './sdk-hooks.js';
3
3
  import * as _tanstack_react_query from '@tanstack/react-query';
4
4
  import { S as Session } from './sidecar-CFU2W9j1.js';
package/dist/hooks.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-FJSVPBKY.js";
6
6
  import {
7
7
  usePtySession
8
- } from "./chunk-GRYHFH5O.js";
8
+ } from "./chunk-DLCFZDGX.js";
9
9
  import {
10
10
  RealtimeSessionRegistry,
11
11
  useDropdownMenu,
@@ -15,7 +15,7 @@ import {
15
15
  useSessionStream,
16
16
  useSidecarAuth,
17
17
  useToolCallStream
18
- } from "./chunk-FOQTE67I.js";
18
+ } from "./chunk-FJLS7PNT.js";
19
19
  import "./chunk-CCKNIAS7.js";
20
20
  import "./chunk-OEX7NZE3.js";
21
21
  import {
@@ -0,0 +1,375 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+ import './usage-chart-CY9xo3KX.js';
4
+
5
+ interface SidebarUser {
6
+ email: string;
7
+ name?: string;
8
+ tier?: string;
9
+ avatarUrl?: string;
10
+ }
11
+ interface SidebarProps {
12
+ children: React.ReactNode;
13
+ className?: string;
14
+ }
15
+ declare function Sidebar({ children, className }: SidebarProps): react_jsx_runtime.JSX.Element;
16
+ interface SidebarRailProps {
17
+ children: React.ReactNode;
18
+ className?: string;
19
+ }
20
+ declare function SidebarRail({ children, className }: SidebarRailProps): react_jsx_runtime.JSX.Element;
21
+ interface SidebarRailHeaderProps {
22
+ children: React.ReactNode;
23
+ className?: string;
24
+ }
25
+ declare function SidebarRailHeader({ children, className }: SidebarRailHeaderProps): react_jsx_runtime.JSX.Element;
26
+ interface SidebarRailNavProps {
27
+ children: React.ReactNode;
28
+ className?: string;
29
+ }
30
+ declare function SidebarRailNav({ children, className }: SidebarRailNavProps): react_jsx_runtime.JSX.Element;
31
+ interface SidebarRailFooterProps {
32
+ children: React.ReactNode;
33
+ className?: string;
34
+ }
35
+ declare function SidebarRailFooter({ children, className }: SidebarRailFooterProps): react_jsx_runtime.JSX.Element;
36
+ interface RailSeparatorProps {
37
+ className?: string;
38
+ }
39
+ declare function RailSeparator({ className }: RailSeparatorProps): react_jsx_runtime.JSX.Element;
40
+ interface RailButtonProps {
41
+ icon: React.ComponentType<{
42
+ className?: string;
43
+ }>;
44
+ label: string;
45
+ isActive?: boolean;
46
+ badge?: number;
47
+ onClick?: () => void;
48
+ className?: string;
49
+ }
50
+ declare function RailButton({ icon: Icon, label, isActive, badge, onClick, className }: RailButtonProps): react_jsx_runtime.JSX.Element;
51
+ interface RailModeButtonProps {
52
+ mode: string;
53
+ icon: React.ComponentType<{
54
+ className?: string;
55
+ }>;
56
+ label: string;
57
+ badge?: number;
58
+ className?: string;
59
+ }
60
+ declare function RailModeButton({ mode, icon, label, badge, className }: RailModeButtonProps): react_jsx_runtime.JSX.Element;
61
+ interface SidebarPanelProps {
62
+ children: React.ReactNode;
63
+ className?: string;
64
+ }
65
+ declare function SidebarPanel({ children, className }: SidebarPanelProps): react_jsx_runtime.JSX.Element;
66
+ interface SidebarPanelHeaderProps {
67
+ children?: React.ReactNode;
68
+ title?: string;
69
+ className?: string;
70
+ }
71
+ declare function SidebarPanelHeader({ children, title, className }: SidebarPanelHeaderProps): react_jsx_runtime.JSX.Element;
72
+ interface SidebarPanelContentProps {
73
+ children: React.ReactNode;
74
+ className?: string;
75
+ }
76
+ declare function SidebarPanelContent({ children, className }: SidebarPanelContentProps): react_jsx_runtime.JSX.Element;
77
+ interface SidebarContentProps {
78
+ children: React.ReactNode;
79
+ className?: string;
80
+ }
81
+ declare function SidebarContent({ children, className }: SidebarContentProps): react_jsx_runtime.JSX.Element;
82
+ interface ProfileAvatarProps {
83
+ user?: SidebarUser | null;
84
+ isLoading?: boolean;
85
+ onLogout?: () => void;
86
+ onSettingsClick?: () => void;
87
+ settingsHref?: string;
88
+ /** Extra dropdown items rendered before settings/logout */
89
+ children?: React.ReactNode;
90
+ className?: string;
91
+ LinkComponent?: React.ComponentType<any>;
92
+ }
93
+ declare function ProfileAvatar({ user, isLoading, onLogout, onSettingsClick, settingsHref, children, className, LinkComponent, }: ProfileAvatarProps): react_jsx_runtime.JSX.Element;
94
+
95
+ /** Width constants (px) matching blueprint-agent layout */
96
+ declare const SIDEBAR_RAIL_WIDTH = 64;
97
+ declare const SIDEBAR_PANEL_WIDTH = 260;
98
+ declare const SIDEBAR_TOTAL_WIDTH: number;
99
+ interface SidebarContextValue {
100
+ /** Whether the content panel beside the rail is open */
101
+ panelOpen: boolean;
102
+ setPanelOpen: (open: boolean) => void;
103
+ togglePanel: () => void;
104
+ /** Current panel mode (app-defined, e.g. "projects", "batches") */
105
+ mode: string;
106
+ setMode: (mode: string) => void;
107
+ /** Switch mode — opens panel if closed, closes if same mode clicked */
108
+ switchMode: (mode: string) => void;
109
+ /** Whether entire sidebar (rail + panel) is hidden (focus mode) */
110
+ hidden: boolean;
111
+ setHidden: (hidden: boolean) => void;
112
+ /** Computed content margin in px */
113
+ contentMargin: number;
114
+ }
115
+ interface SidebarProviderProps {
116
+ defaultPanelOpen?: boolean;
117
+ defaultMode?: string;
118
+ children: React.ReactNode;
119
+ }
120
+ declare function SidebarProvider({ defaultPanelOpen, defaultMode, children, }: SidebarProviderProps): react_jsx_runtime.JSX.Element;
121
+ declare function useSidebar(): SidebarContextValue;
122
+
123
+ interface ClusterStatusItem {
124
+ icon: string;
125
+ label: string;
126
+ value: string;
127
+ valueClass?: string;
128
+ }
129
+ interface ClusterStatusBarProps {
130
+ items: ClusterStatusItem[];
131
+ latency?: string;
132
+ className?: string;
133
+ }
134
+ declare function ClusterStatusBar({ items, latency, className }: ClusterStatusBarProps): react_jsx_runtime.JSX.Element;
135
+
136
+ interface CreditBalanceProps {
137
+ amount: number;
138
+ description?: string;
139
+ onTopUp?: (amount: number) => void;
140
+ quickAmounts?: number[];
141
+ className?: string;
142
+ }
143
+ declare function CreditBalance({ amount, description, onTopUp, quickAmounts, className, }: CreditBalanceProps): react_jsx_runtime.JSX.Element;
144
+
145
+ interface Invoice {
146
+ id: string;
147
+ date: string;
148
+ amount: number;
149
+ status: "paid" | "pending" | "failed";
150
+ }
151
+ interface InvoiceTableProps {
152
+ invoices: Invoice[];
153
+ onExportAll?: () => void;
154
+ onLoadMore?: () => void;
155
+ onViewInvoice?: (id: string) => void;
156
+ hasMore?: boolean;
157
+ className?: string;
158
+ }
159
+ declare function InvoiceTable({ invoices, onExportAll, onLoadMore, onViewInvoice, hasMore, className }: InvoiceTableProps): react_jsx_runtime.JSX.Element;
160
+
161
+ interface PlanFeature {
162
+ text: string;
163
+ }
164
+ interface PlanCardData {
165
+ id: string;
166
+ name: string;
167
+ price: number;
168
+ period?: string;
169
+ features: PlanFeature[];
170
+ popular?: boolean;
171
+ current?: boolean;
172
+ ctaLabel?: string;
173
+ onSelect?: (id: string) => void;
174
+ }
175
+ interface PlanCardsProps {
176
+ plans: PlanCardData[];
177
+ className?: string;
178
+ }
179
+ declare function PlanCards({ plans, className }: PlanCardsProps): react_jsx_runtime.JSX.Element;
180
+
181
+ type ProductVariant = "sandbox";
182
+ interface NavItem {
183
+ id: string;
184
+ label: string;
185
+ href?: string;
186
+ icon: React.ComponentType<{
187
+ className?: string;
188
+ }>;
189
+ badge?: number;
190
+ }
191
+ interface DashboardUser {
192
+ email: string;
193
+ name?: string;
194
+ tier?: string;
195
+ avatarUrl?: string;
196
+ }
197
+ interface TopNavLink {
198
+ label: string;
199
+ href: string;
200
+ }
201
+ interface PanelConfig {
202
+ mode: string;
203
+ title: string;
204
+ content: React.ReactNode;
205
+ }
206
+ interface DashboardLayoutProps {
207
+ children: React.ReactNode;
208
+ variant?: ProductVariant;
209
+ /** Navigation items for the rail */
210
+ navItems: NavItem[];
211
+ /** Nav item IDs that act as panel mode switchers (others are direct links) */
212
+ modeItems?: string[];
213
+ /** Panel content per mode */
214
+ panels?: PanelConfig[];
215
+ activeNavId?: string;
216
+ user?: DashboardUser | null;
217
+ isLoading?: boolean;
218
+ onLogout?: () => void;
219
+ onSettingsClick?: () => void;
220
+ settingsHref?: string;
221
+ onNewSandbox?: () => void;
222
+ className?: string;
223
+ sidebarClassName?: string;
224
+ contentClassName?: string;
225
+ topNavLinks?: TopNavLink[];
226
+ activeTopNavHref?: string;
227
+ LinkComponent?: React.ComponentType<any>;
228
+ footer?: React.ReactNode;
229
+ defaultPanelOpen?: boolean;
230
+ defaultMode?: string;
231
+ /** Extra content in the rail footer (above profile avatar) */
232
+ railFooter?: React.ReactNode;
233
+ /** Extra dropdown items in the profile menu */
234
+ profileMenuItems?: React.ReactNode;
235
+ }
236
+ declare function DashboardLayout({ defaultPanelOpen, defaultMode, ...props }: DashboardLayoutProps): react_jsx_runtime.JSX.Element;
237
+
238
+ interface ResourceMeterProps {
239
+ label: string;
240
+ value: number;
241
+ max?: number;
242
+ unit?: string;
243
+ icon?: string;
244
+ className?: string;
245
+ }
246
+ declare function ResourceMeter({ label, value, max, unit, icon, className }: ResourceMeterProps): react_jsx_runtime.JSX.Element;
247
+
248
+ type SandboxStatus = "running" | "hibernating" | "provisioning" | "stopped" | "failed" | "archived";
249
+ interface SandboxCardData {
250
+ id: string;
251
+ name: string;
252
+ nodeId?: string;
253
+ status: SandboxStatus;
254
+ image?: string;
255
+ imageIcon?: React.ReactNode;
256
+ cpuPercent?: number;
257
+ ramUsed?: number;
258
+ ramTotal?: number;
259
+ provisioningMessage?: string;
260
+ provisioningPercent?: number;
261
+ archivedAt?: string;
262
+ }
263
+ interface SandboxCardProps {
264
+ sandbox: SandboxCardData;
265
+ onOpenIDE?: (id: string) => void;
266
+ onOpenTerminal?: (id: string) => void;
267
+ onWake?: (id: string) => void;
268
+ onRestore?: (id: string) => void;
269
+ /** Called when the user clicks "Delete". The consuming app should show a confirmation dialog before performing the deletion. */
270
+ onDelete?: (id: string) => void;
271
+ onSSH?: (id: string) => void;
272
+ className?: string;
273
+ }
274
+ declare function SandboxCard({ sandbox, onOpenIDE, onOpenTerminal, onWake, onRestore, onDelete, onSSH, className }: SandboxCardProps): react_jsx_runtime.JSX.Element;
275
+ interface NewSandboxCardProps {
276
+ onClick?: () => void;
277
+ className?: string;
278
+ }
279
+ declare function NewSandboxCard({ onClick, className }: NewSandboxCardProps): react_jsx_runtime.JSX.Element;
280
+
281
+ interface SandboxTableProps {
282
+ sandboxes: SandboxCardData[];
283
+ page?: number;
284
+ pageSize?: number;
285
+ total?: number;
286
+ onPageChange?: (page: number) => void;
287
+ onOpenIDE?: (id: string) => void;
288
+ onOpenTerminal?: (id: string) => void;
289
+ onSSH?: (id: string) => void;
290
+ onWake?: (id: string) => void;
291
+ /** Called when the user clicks "Delete". The consuming app should show a confirmation dialog before performing the deletion. */
292
+ onDelete?: (id: string) => void;
293
+ /** @deprecated Use `onDelete` instead. */
294
+ onMore?: (id: string) => void;
295
+ className?: string;
296
+ }
297
+ declare function SandboxTable({ sandboxes, page, pageSize, total, onPageChange, onOpenIDE, onOpenTerminal, onSSH, onWake, onDelete, onMore, className, }: SandboxTableProps): react_jsx_runtime.JSX.Element;
298
+
299
+ interface Backend {
300
+ type: string;
301
+ label: string;
302
+ description?: string;
303
+ }
304
+ interface BackendSelectorProps {
305
+ backends: Backend[];
306
+ selected: string[];
307
+ onChange: (selected: string[]) => void;
308
+ label?: string;
309
+ hint?: string;
310
+ multiSelect?: boolean;
311
+ className?: string;
312
+ }
313
+ declare function BackendSelector({ backends, selected, onChange, label, hint, multiSelect, className, }: BackendSelectorProps): react_jsx_runtime.JSX.Element;
314
+
315
+ interface Profile {
316
+ id: string;
317
+ name: string;
318
+ description?: string;
319
+ is_builtin?: boolean;
320
+ extends?: string;
321
+ model?: string;
322
+ metrics?: {
323
+ total_runs: number;
324
+ success_rate: number;
325
+ avg_duration_ms: number;
326
+ };
327
+ }
328
+ interface ProfileSelectorProps {
329
+ profiles: Profile[];
330
+ selectedId?: string | null;
331
+ onSelect: (profile: Profile | null) => void;
332
+ onCreateClick?: () => void;
333
+ onManageClick?: () => void;
334
+ label?: string;
335
+ placeholder?: string;
336
+ showMetrics?: boolean;
337
+ className?: string;
338
+ }
339
+ declare function ProfileSelector({ profiles, selectedId, onSelect, onCreateClick, onManageClick, label, placeholder, showMetrics, className, }: ProfileSelectorProps): react_jsx_runtime.JSX.Element;
340
+ /**
341
+ * Profile performance comparison card.
342
+ * Shows metrics from multiple profiles side by side.
343
+ */
344
+ interface ProfileComparisonProps {
345
+ profiles: Profile[];
346
+ className?: string;
347
+ }
348
+ declare function ProfileComparison({ profiles, className, }: ProfileComparisonProps): react_jsx_runtime.JSX.Element | null;
349
+
350
+ type VariantStatus = "pending" | "running" | "completed" | "failed" | "cancelled";
351
+ type VariantOutcome = "pending_review" | "accepted" | "rejected" | "merged_with_conflicts" | "expired";
352
+ interface Variant {
353
+ id: string;
354
+ label: string;
355
+ sublabel?: string;
356
+ status: VariantStatus;
357
+ outcome?: VariantOutcome;
358
+ durationMs?: number;
359
+ error?: string;
360
+ summary?: string;
361
+ /** Link to view variant details (e.g., chat UI) */
362
+ detailsUrl?: string;
363
+ }
364
+ interface VariantListProps {
365
+ variants: Variant[];
366
+ selectedId?: string | null;
367
+ onSelect?: (id: string) => void;
368
+ onAccept?: (id: string) => void;
369
+ onReject?: (id: string) => void;
370
+ isActioning?: string | null;
371
+ className?: string;
372
+ }
373
+ declare function VariantList({ variants, selectedId, onSelect, onAccept, onReject, isActioning, className, }: VariantListProps): react_jsx_runtime.JSX.Element;
374
+
375
+ export { type SidebarPanelProps as $, type RailSeparatorProps as A, type Backend as B, ClusterStatusBar as C, DashboardLayout as D, ResourceMeter as E, type ResourceMeterProps as F, SIDEBAR_RAIL_WIDTH as G, SIDEBAR_TOTAL_WIDTH as H, type Invoice as I, SandboxCard as J, type SandboxCardData as K, type SandboxCardProps as L, type SandboxStatus as M, type NavItem as N, SandboxTable as O, type PanelConfig as P, type SandboxTableProps as Q, RailButton as R, SIDEBAR_PANEL_WIDTH as S, Sidebar as T, SidebarContent as U, type SidebarContentProps as V, SidebarPanel as W, SidebarPanelContent as X, type SidebarPanelContentProps as Y, SidebarPanelHeader as Z, type SidebarPanelHeaderProps as _, BackendSelector as a, type SidebarProps as a0, SidebarProvider as a1, type SidebarProviderProps as a2, SidebarRail as a3, SidebarRailFooter as a4, type SidebarRailFooterProps as a5, SidebarRailHeader as a6, type SidebarRailHeaderProps as a7, SidebarRailNav as a8, type SidebarRailNavProps as a9, type SidebarRailProps as aa, type SidebarUser as ab, type TopNavLink as ac, VariantList as ad, type VariantListProps as ae, useSidebar as af, type Profile as ag, type PlanFeature as ah, type Variant as ai, type VariantOutcome as aj, type VariantStatus as ak, type BackendSelectorProps as b, type ClusterStatusBarProps as c, type ClusterStatusItem as d, CreditBalance as e, type CreditBalanceProps as f, type DashboardLayoutProps as g, type DashboardUser as h, InvoiceTable as i, type InvoiceTableProps as j, NewSandboxCard as k, type NewSandboxCardProps as l, type PlanCardData as m, PlanCards as n, type PlanCardsProps as o, type ProductVariant as p, ProfileAvatar as q, type ProfileAvatarProps as r, ProfileComparison as s, type ProfileComparisonProps as t, ProfileSelector as u, type ProfileSelectorProps as v, type RailButtonProps as w, RailModeButton as x, type RailModeButtonProps as y, RailSeparator as z };
package/dist/index.d.ts CHANGED
@@ -8,18 +8,20 @@ export { a as ArtifactPane, A as ArtifactPaneProps } from './artifact-pane-Bh45S
8
8
  export { OpenUIAction, OpenUIActionsNode, OpenUIArtifactRenderer, OpenUIArtifactRendererProps, OpenUIBadgeNode, OpenUICardNode, OpenUICodeNode, OpenUIComponentNode, OpenUIGridNode, OpenUIHeadingNode, OpenUIKeyValueNode, OpenUIMarkdownNode, OpenUIPrimitive, OpenUISeparatorNode, OpenUIStackNode, OpenUIStatNode, OpenUITableNode, OpenUITextNode } from './openui.js';
9
9
  export { AgentTimeline, AgentTimelineArtifactItem, AgentTimelineCustomItem, AgentTimelineItem, AgentTimelineMessageItem, AgentTimelineProps, AgentTimelineStatusItem, AgentTimelineTone, AgentTimelineToolGroupItem, AgentTimelineToolItem, ChatMessage, ChatMessageProps, MessageList, MessageListProps, MessageRole, ThinkingIndicator, ThinkingIndicatorProps, UserMessage, UserMessageProps } from './chat.js';
10
10
  export { C as ChatContainer, a as ChatContainerProps, b as ChatInput, c as ChatInputProps, P as PendingFile } from './chat-container-Dn1jWtWo.js';
11
+ export { C as Collaborator, a as ConnectionState, D as DocumentEditorBackend, b as DocumentEditorMode, c as DocumentEditorPane, d as DocumentEditorPaneCollaborationConfig, e as DocumentEditorPaneProps, E as EditorContextValue, f as EditorProvider, g as EditorProviderProps, h as EditorUser, u as useEditorContext } from './document-editor-pane-A70-EhdQ.js';
12
+ export { CollaboratorsList, EditorToolbar, TiptapEditor, TiptapEditorProps, useAwareness, useCollaboratorPresence, useCollaborators, useDocumentChanges, useEditorConnection, useYjsState } from './editor.js';
11
13
  export { F as FeedSegment, T as ToolCallData, a as ToolCallFeed, b as ToolCallFeedProps, c as ToolCallGroup, d as ToolCallGroupProps, e as ToolCallStatus, f as ToolCallStep, g as ToolCallStepProps, h as ToolCallType, p as parseToolEvent } from './tool-call-feed-D5Ume-Pt.js';
12
14
  export { E as ExpandedToolDetail, I as InlineThinkingItem, c as InlineToolItem, R as RunGroup, e as RunGroupProps } from './expanded-tool-detail-DM5M_T9h.js';
13
15
  import { b as ToolPart } from './parts-CyGkM6Fp.js';
14
16
  export { R as ReasoningPart, S as SessionMessage, a as SessionPart, T as TextPart, c as ToolState, d as ToolStatus, e as ToolTime } from './parts-CyGkM6Fp.js';
15
17
  export { F as FileNode, a as FileTabData, b as FileTabs, c as FileTabsProps, d as FileTree, e as FileTreeProps, f as FileTreeVisibilityOptions, g as filterFileTree } from './file-tabs-BLfxfmAH.js';
16
18
  export { FileArtifactPane, FileArtifactPaneProps, FilePreview, FilePreviewProps } from './files.js';
17
- export { A as AppSidebar, a as AppSidebarProps, B as Backend, b as BackendSelector, c as BackendSelectorProps, C as ClusterStatusBar, d as ClusterStatusBarProps, e as ClusterStatusItem, f as CreditBalance, g as CreditBalanceProps, D as DashboardLayout, h as DashboardLayoutProps, i as DashboardUser, I as Invoice, j as InvoiceTable, k as InvoiceTableProps, N as NavItem, l as NewSandboxCard, m as NewSandboxCardProps, P as PlanCardData, n as PlanCards, o as PlanCardsProps, p as ProfileComparison, q as ProfileComparisonProps, r as ProfileSelector, s as ProfileSelectorProps, R as ResourceMeter, t as ResourceMeterProps, S as SandboxCard, u as SandboxCardData, v as SandboxCardProps, w as SandboxStatus, x as SandboxTable, y as SandboxTableProps, z as SidebarNavItem, E as SidebarSandbox, T as TopNavLink, V as VariantList, F as VariantListProps } from './index-BJIPTCKk.js';
19
+ export { B as Backend, a as BackendSelector, b as BackendSelectorProps, C as ClusterStatusBar, c as ClusterStatusBarProps, d as ClusterStatusItem, e as CreditBalance, f as CreditBalanceProps, D as DashboardLayout, g as DashboardLayoutProps, h as DashboardUser, I as Invoice, i as InvoiceTable, j as InvoiceTableProps, N as NavItem, k as NewSandboxCard, l as NewSandboxCardProps, P as PanelConfig, m as PlanCardData, n as PlanCards, o as PlanCardsProps, p as ProductVariant, q as ProfileAvatar, r as ProfileAvatarProps, s as ProfileComparison, t as ProfileComparisonProps, u as ProfileSelector, v as ProfileSelectorProps, R as RailButton, w as RailButtonProps, x as RailModeButton, y as RailModeButtonProps, z as RailSeparator, A as RailSeparatorProps, E as ResourceMeter, F as ResourceMeterProps, S as SIDEBAR_PANEL_WIDTH, G as SIDEBAR_RAIL_WIDTH, H as SIDEBAR_TOTAL_WIDTH, J as SandboxCard, K as SandboxCardData, L as SandboxCardProps, M as SandboxStatus, O as SandboxTable, Q as SandboxTableProps, T as Sidebar, U as SidebarContent, V as SidebarContentProps, W as SidebarPanel, X as SidebarPanelContent, Y as SidebarPanelContentProps, Z as SidebarPanelHeader, _ as SidebarPanelHeaderProps, $ as SidebarPanelProps, a0 as SidebarProps, a1 as SidebarProvider, a2 as SidebarProviderProps, a3 as SidebarRail, a4 as SidebarRailFooter, a5 as SidebarRailFooterProps, a6 as SidebarRailHeader, a7 as SidebarRailHeaderProps, a8 as SidebarRailNav, a9 as SidebarRailNavProps, aa as SidebarRailProps, ab as SidebarUser, ac as TopNavLink, ad as VariantList, ae as VariantListProps, af as useSidebar } from './index-D7_ZDkwB.js';
18
20
  export { c as BillingDashboard, d as BillingDashboardProps, e as PricingCards, f as PricingPageProps, g as UsageChart, h as UsageChartProps, U as UsageDataPoint } from './usage-chart-CY9xo3KX.js';
19
21
  export { AuthHeader, GitHubLoginButton, LoginLayout, LoginLayoutProps, UserMenu } from './auth.js';
20
22
  export { CodeBlock, CopyButton, Markdown, MarkdownProps } from './markdown.js';
21
23
  export { AppendUserMessageOptions, ApplySdkEventOptions, BeginAssistantMessageOptions, CompleteAssistantMessageOptions, RealtimeSessionOptions, RealtimeSessionRegistry, RealtimeSessionRegistryProps, RealtimeSessionState, RealtimeSessionTarget, SdkSessionAttachment, SdkSessionEvent, SdkSessionSeed, UseSdkSessionOptions, UseSdkSessionReturn, UseToolCallStreamReturn, useAutoScroll, useDropdownMenu, useRealtimeSession, useRunCollapseState, useRunGroups, useSSEStream, useSdkSession, useSessionStream, useSidecarAuth, useToolCallStream } from './sdk-hooks.js';
22
- export { d as createAuthFetcher, u as useApiKey, e as useAuth, f as usePtySession } from './use-pty-session-DeZSxOCN.js';
24
+ export { d as createAuthFetcher, u as useApiKey, e as useAuth, f as usePtySession } from './use-pty-session-COzVkhtc.js';
23
25
  export { G as GroupedMessage, R as Run, b as RunStats, T as ToolCategory } from './run-CtFZ6s-D.js';
24
26
  export { S as Session } from './sidecar-CFU2W9j1.js';
25
27
  export { C as CustomToolRenderer, D as DisplayVariant, T as ToolDisplayMetadata } from './tool-display-Ct9nFAzJ.js';
@@ -35,9 +37,9 @@ import '@radix-ui/react-tabs';
35
37
  import '@radix-ui/react-progress';
36
38
  import '@radix-ui/react-switch';
37
39
  import '@radix-ui/react-label';
38
- import './document-editor-pane-Xnl8SmA7.js';
39
40
  import '@hocuspocus/provider';
40
41
  import 'yjs';
42
+ import '@tiptap/react';
41
43
  import 'nanostores';
42
44
  import 'clsx';
43
45