@tangle-network/sandbox-ui 7.0.4 → 7.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/{AgentTree-Dzy6lrfP.js → AgentTree-B1iTTYNe.js} +1 -1
- package/dist/{use-follow-tail-Df965WQi.js → ConversationRowView-C4TXICBT.js} +2 -2
- package/dist/{ResearchReport-DKWDmzdK.js → ResearchReport-kYGwgHC7.js} +2 -2
- package/dist/{chat-B_5Lwevm.js → chat-DcaqQX2X.js} +32 -28
- package/dist/chat.d.ts +1 -1
- package/dist/chat.js +1 -1
- package/dist/{dashboard-C7QJJw7-.js → dashboard-C1pNlewR.js} +1 -1
- package/dist/dashboard.js +1 -1
- package/dist/globals.css +44 -68
- package/dist/hooks.d.ts +2 -2
- package/dist/hooks.js +2 -2
- package/dist/{index-PolYo7h9.d.ts → index-CGHJonni.d.ts} +65 -2
- package/dist/index-CvHul4IJ.d.ts +26 -0
- package/dist/{index-1Q4Jtlic.d.ts → index-PxmhpV0y.d.ts} +1 -17
- package/dist/index.d.ts +5 -5
- package/dist/index.js +11 -11
- package/dist/primitives-l-Qv14bS.js +23 -0
- package/dist/primitives.d.ts +2 -2
- package/dist/primitives.js +1 -1
- package/dist/record/ResearchReport.js +1 -1
- package/dist/{record-Cc_WNtG8.js → record-Dmyq0jfl.js} +2 -2
- package/dist/record.js +1 -1
- package/dist/report-viewer.js +75 -75
- package/dist/run/live.js +1 -1
- package/dist/run/record.js +3 -3
- package/dist/run-C9GGriUv.js +238 -0
- package/dist/run.d.ts +2 -2
- package/dist/run.js +6 -6
- package/dist/runtime-viewer/AgentGraphCanvas-P_PFS2Ko-B7S6Fwwy.js +563 -0
- package/dist/runtime-viewer/{latest-events-CMbdBLcT-uhVN4JLh.js → latest-events-wofY6ifW-B8_bfLwI.js} +581 -112
- package/dist/styles.css +44 -68
- package/dist/terminal.js +1 -1
- package/dist/{trace-workspace-EArXc0uP.js → trace-workspace-mq1NcP7e.js} +80 -49
- package/dist/{workbench-D0ALR40M.js → workbench-BUrlhR-P.js} +3 -2
- package/dist/workbench.js +1 -1
- package/dist/workspace-viewer.js +10599 -10460
- package/package.json +13 -11
- package/tests/visual/content-share.mjs +35 -0
- package/dist/index-CEtc2U5v.d.ts +0 -26
- package/dist/primitives-znfPK9NP.js +0 -23
- package/dist/run-CpJ_COuz.js +0 -5
- package/dist/runtime-viewer/AgentGraphCanvas-xHVW-YRV-Ch1fnK9k.js +0 -957
- /package/dist/{terminal-nUCznZRj.js → terminal-view-nUCznZRj.js} +0 -0
package/README.md
CHANGED
|
@@ -66,6 +66,8 @@ import "@tangle-network/charts/react/agent-graph.css";
|
|
|
66
66
|
import "@tangle-network/charts/react/live.css";
|
|
67
67
|
```
|
|
68
68
|
|
|
69
|
+
`AgentWorkspace` (also under `run`) is one agent's workspace behind a Files | Trace | Terminal control: the host supplies an `AgentWorkspaceSource` (`list`, `read`, an optional conversation `stream` and an optional `terminal` grant) and the workspace draws the files pane naming their origin, the read-only code and diff, the conversation as of the run cursor, and the terminal; it reports what it is waiting for or could not read instead of an empty pane.
|
|
70
|
+
|
|
69
71
|
The entry carries Brand's tokens and utility registrations, this package's runtime CSS, and `@source` lines for its own `dist` and the `@tangle-network/ui` peer, so every component utility compiles once, in the app's own layer order.
|
|
70
72
|
Brand defaults live in `theme.brand`, so host refinements in `theme` can override them. Agent apps import `@tangle-network/agent-app/tailwind.css`, which includes this entry.
|
|
71
73
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as VirtualList } from "./VirtualList-DcSGbEtA.js";
|
|
2
|
-
import {
|
|
2
|
+
import { E as toolKey, O as useFollowTail, S as ms, T as textOf, a as rowItems, c as answeredBy, d as collapsePolls, f as quietThinking, h as eventMatches, i as isLifecycle, l as collapseHollowTurns, m as callsOf, p as thinkingMarkers, s as anchorsOf, t as ConversationRowView, u as collapseIdleTurns, w as roleOf } from "./ConversationRowView-C4TXICBT.js";
|
|
3
3
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
5
5
|
import { AgentTimelineColumn, agentTimelineStepKind } from "@tangle-network/ui/chat/agent-timeline";
|
|
@@ -4,6 +4,7 @@ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
|
4
4
|
import { Brain, Settings, Timer } from "lucide-react";
|
|
5
5
|
import { getToolCategory, getToolDisplayMetadata } from "@tangle-network/ui/utils";
|
|
6
6
|
import { toolLabel } from "@tangle-network/charts/react/agent-graph";
|
|
7
|
+
import { useFollowTail } from "@tangle-network/ui/hooks/use-follow-tail";
|
|
7
8
|
import { formatCompact, formatCompact as fmt, formatCost as formatCost$1, formatSpanDuration as formatSpanDuration$1, formatSpanDuration as interval, formatUtcTime as utcTime, reportedCount, sumReportedCounts } from "@tangle-network/charts";
|
|
8
9
|
import { AgentTimelineStep, agentTimelineStepKind } from "@tangle-network/ui/chat/agent-timeline";
|
|
9
10
|
import { SpeakerHeader } from "@tangle-network/ui/chat/speaker";
|
|
@@ -11,7 +12,6 @@ import { ExpandedToolDetail } from "@tangle-network/ui/run/expanded-tool-detail"
|
|
|
11
12
|
import { InlineThinkingItem } from "@tangle-network/ui/run/inline-thinking-item";
|
|
12
13
|
import { RunRowShell } from "@tangle-network/ui/run/run-row-shell";
|
|
13
14
|
import { isOpen, runStatus } from "@tangle-network/ui/run/status-meta";
|
|
14
|
-
import { useFollowTail } from "@tangle-network/ui/hooks/use-follow-tail";
|
|
15
15
|
// src/run/record/model.ts
|
|
16
16
|
var model_exports = /* @__PURE__ */ __exportAll({
|
|
17
17
|
agentState: () => agentState,
|
|
@@ -1278,4 +1278,4 @@ function ConversationRowView({ row, items, previous, turn, context }) {
|
|
|
1278
1278
|
]
|
|
1279
1279
|
});
|
|
1280
1280
|
}
|
|
1281
|
-
export {
|
|
1281
|
+
export { recordFlowTrace as C, utcTime as D, toolKey as E, useFollowTail as O, ms as S, textOf as T, fmt as _, rowItems as a, modelIdentity as b, answeredBy as c, collapsePolls as d, quietThinking as f, eventSource as g, eventMatches as h, isLifecycle as i, collapseHollowTurns as l, callsOf as m, PromptMore as n, timelineItems as o, thinkingMarkers as p, ToolStep as r, anchorsOf as s, ConversationRowView as t, collapseIdleTurns as u, indexRecord as v, roleOf as w, model_exports as x, interval as y };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as
|
|
2
|
-
import { n as Conversation, t as AgentTree } from "./AgentTree-
|
|
1
|
+
import { C as recordFlowTrace, D as utcTime, E as toolKey, S as ms, T as textOf, _ as fmt, b as modelIdentity, g as eventSource, h as eventMatches, v as indexRecord, w as roleOf, y as interval } from "./ConversationRowView-C4TXICBT.js";
|
|
2
|
+
import { n as Conversation, t as AgentTree } from "./AgentTree-B1iTTYNe.js";
|
|
3
3
|
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@tangle-network/ui/primitives";
|
|
4
4
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { createContext, memo, useCallback, useContext, useEffect, useId, useMemo, useRef, useState } from "react";
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { t as cn$1 } from "./utils-BER_bdgE.js";
|
|
2
|
+
import { Sheet, SheetContent, SheetTitle } from "@tangle-network/ui/primitives";
|
|
2
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
4
|
import * as React$1 from "react";
|
|
4
5
|
import { createPortal } from "react-dom";
|
|
@@ -6,7 +7,8 @@ import { Bot, Brain, Check, ChevronDown, Lock, Pencil, Plus, Send, Sparkles, Squ
|
|
|
6
7
|
import { focusField, focusRing } from "@tangle-network/ui/utils";
|
|
7
8
|
import { AgentTimeline as AgentTimeline$1, AgentTimelineColumn as AgentTimelineColumn$1, AgentTimelineStep, ChatContainer as ChatContainer$1, ChatMessage, ChatMessage as ChatMessage$1, MessageAuthor, MessageList, SpeakerHeader, TRANSCRIPT_TEXT, ThinkingIndicator, UserMessage, agentTimelineStepKind, foldSummary, isViewerMessage, partitionBySpeaker } from "@tangle-network/ui/chat";
|
|
8
9
|
import { modelProvider, reasoningLadder, snapHarnessToModel } from "@tangle-network/agent-interface";
|
|
9
|
-
import * as DropdownMenu from "@radix-ui/react-dropdown-menu";
|
|
10
|
+
import * as DropdownMenu$1 from "@radix-ui/react-dropdown-menu";
|
|
11
|
+
import { usePhone } from "@tangle-network/ui/hooks";
|
|
10
12
|
// src/chat/reasoning-level-picker.tsx
|
|
11
13
|
/** Ordered ascending intensity (excludes "auto"), straight from the canonical ladder. */
|
|
12
14
|
const REASONING_LADDER = reasoningLadder;
|
|
@@ -102,7 +104,7 @@ const HARNESS_REASONING_OPTIONS = { "kimi-code": [
|
|
|
102
104
|
function ReasoningLevelPicker({ value, onChange, disabled, className, triggerClassName, options = DEFAULT_REASONING_LEVEL_OPTIONS, available, side, avoidCollisions }) {
|
|
103
105
|
const shown = available ? options.filter((o) => o.value === "auto" || available.includes(o.value)) : options;
|
|
104
106
|
const label = shown.find((option) => option.value === value)?.label ?? "Auto";
|
|
105
|
-
return /* @__PURE__ */ jsxs(DropdownMenu.Root, { children: [/* @__PURE__ */ jsx(DropdownMenu.Trigger, {
|
|
107
|
+
return /* @__PURE__ */ jsxs(DropdownMenu$1.Root, { children: [/* @__PURE__ */ jsx(DropdownMenu$1.Trigger, {
|
|
106
108
|
asChild: true,
|
|
107
109
|
children: /* @__PURE__ */ jsxs("button", {
|
|
108
110
|
type: "button",
|
|
@@ -115,14 +117,14 @@ function ReasoningLevelPicker({ value, onChange, disabled, className, triggerCla
|
|
|
115
117
|
/* @__PURE__ */ jsx(ChevronDown, { className: "ml-auto h-3.5 w-3.5 shrink-0 text-muted-foreground" })
|
|
116
118
|
]
|
|
117
119
|
})
|
|
118
|
-
}), /* @__PURE__ */ jsx(DropdownMenu.Portal, { children: /* @__PURE__ */ jsx(DropdownMenu.Content, {
|
|
120
|
+
}), /* @__PURE__ */ jsx(DropdownMenu$1.Portal, { children: /* @__PURE__ */ jsx(DropdownMenu$1.Content, {
|
|
119
121
|
side,
|
|
120
122
|
align: "start",
|
|
121
123
|
avoidCollisions,
|
|
122
124
|
collisionPadding: 24,
|
|
123
125
|
sideOffset: 6,
|
|
124
126
|
className: cn$1("z-50 w-64 max-h-[var(--radix-dropdown-menu-content-available-height)] overflow-y-auto rounded-[var(--radius-md)] border border-[var(--md3-outline-variant)] bg-surface-container-highest p-1", "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"),
|
|
125
|
-
children: shown.map((option) => /* @__PURE__ */ jsxs(DropdownMenu.Item, {
|
|
127
|
+
children: shown.map((option) => /* @__PURE__ */ jsxs(DropdownMenu$1.Item, {
|
|
126
128
|
onSelect: () => onChange(option.value),
|
|
127
129
|
className: cn$1("flex cursor-pointer items-start gap-2.5 rounded-md px-2.5 py-2 outline-none", "transition-colors hover:bg-accent/40 focus:bg-accent/40", option.value === value && "bg-[var(--accent-surface-soft)] text-[var(--accent-text)]"),
|
|
128
130
|
children: [/* @__PURE__ */ jsx("span", {
|
|
@@ -608,9 +610,7 @@ function defaultScopeLabel(scope) {
|
|
|
608
610
|
function normalizeRole(role) {
|
|
609
611
|
return role === "assistant" || role === "system" ? role : "user";
|
|
610
612
|
}
|
|
611
|
-
/**
|
|
612
|
-
* else a UUIDv4 from `getRandomValues`. Avoids `Date.now()`, which collides
|
|
613
|
-
* when a user+assistant pair are created in the same millisecond. */
|
|
613
|
+
/** Random IDs avoid Date.now collisions; getRandomValues backs up randomUUID. */
|
|
614
614
|
function createDockMessageId() {
|
|
615
615
|
const c = typeof globalThis !== "undefined" ? globalThis.crypto : void 0;
|
|
616
616
|
if (c && typeof c.randomUUID === "function") return c.randomUUID();
|
|
@@ -623,24 +623,9 @@ function createDockMessageId() {
|
|
|
623
623
|
}
|
|
624
624
|
throw new Error("crypto.getRandomValues is required for message ids");
|
|
625
625
|
}
|
|
626
|
-
/**
|
|
627
|
-
* ArtifactAgentDock — slide-in right-rail chat scoped to a single artifact.
|
|
628
|
-
*
|
|
629
|
-
* Renders a persistent, per-artifact conversation surface that streams via a
|
|
630
|
-
* consumer-supplied transport. Mount alongside any artifact view (file editor,
|
|
631
|
-
* sequence editor, asset preview) to give every artifact its own dedicated
|
|
632
|
-
* agent conversation without forking the chat UI per app.
|
|
633
|
-
*
|
|
634
|
-
* Behavior:
|
|
635
|
-
* - On open, calls `transport.ensureThread(scope)` to get the canonical thread
|
|
636
|
-
* id and `transport.loadMessages(threadId)` to populate prior turns.
|
|
637
|
-
* - On submit, calls `transport.sendStream(...)` and concatenates delta events
|
|
638
|
-
* into a single streaming assistant message; renders inline.
|
|
639
|
-
* - Composer: Enter sends, Shift+Enter newline, Cancel during stream supported.
|
|
640
|
-
* - Accessibility: scope `aria-label` on the panel, `aria-pressed` is the
|
|
641
|
-
* consumer's job on whatever button toggles `open`.
|
|
642
|
-
*/
|
|
626
|
+
/** A persistent per-artifact conversation using the consumer's transport. */
|
|
643
627
|
function ArtifactAgentDock({ scope, open, onOpenChange, transport, defaultPrompt, onError, className }) {
|
|
628
|
+
const phone = usePhone();
|
|
644
629
|
const [threadId, setThreadId] = React$1.useState(null);
|
|
645
630
|
const [messages, setMessages] = React$1.useState([]);
|
|
646
631
|
const [composer, setComposer] = React$1.useState(defaultPrompt ?? "");
|
|
@@ -649,6 +634,7 @@ function ArtifactAgentDock({ scope, open, onOpenChange, transport, defaultPrompt
|
|
|
649
634
|
const [loading, setLoading] = React$1.useState(false);
|
|
650
635
|
const abortRef = React$1.useRef(null);
|
|
651
636
|
const scrollRef = React$1.useRef(null);
|
|
637
|
+
const returnFocus = React$1.useRef(null);
|
|
652
638
|
const scopeTokenRef = React$1.useRef(0);
|
|
653
639
|
const reportError = React$1.useCallback((message) => {
|
|
654
640
|
if (onError) onError(message);
|
|
@@ -761,8 +747,9 @@ function ArtifactAgentDock({ scope, open, onOpenChange, transport, defaultPrompt
|
|
|
761
747
|
}, [threadId, transport]);
|
|
762
748
|
if (!open) return null;
|
|
763
749
|
const heading = defaultScopeLabel(scope);
|
|
764
|
-
|
|
765
|
-
|
|
750
|
+
const Title = phone ? SheetTitle : "div";
|
|
751
|
+
const panel = /* @__PURE__ */ jsxs("aside", {
|
|
752
|
+
className: cn$1("flex h-full w-[420px] min-w-[360px] max-w-[480px] flex-col border-l border-[var(--md3-outline-variant)] bg-surface-container shadow-[var(--shadow-dropdown)]", phone && "w-full min-w-0 max-w-none", className),
|
|
766
753
|
"aria-label": `Agent chat about ${heading}`,
|
|
767
754
|
children: [
|
|
768
755
|
/* @__PURE__ */ jsxs("header", {
|
|
@@ -774,7 +761,7 @@ function ArtifactAgentDock({ scope, open, onOpenChange, transport, defaultPrompt
|
|
|
774
761
|
children: [/* @__PURE__ */ jsx("div", {
|
|
775
762
|
className: "text-[10px] font-medium uppercase tracking-wider text-muted-foreground",
|
|
776
763
|
children: "Discussing"
|
|
777
|
-
}), /* @__PURE__ */ jsx(
|
|
764
|
+
}), /* @__PURE__ */ jsx(Title, {
|
|
778
765
|
className: "truncate text-sm font-semibold text-foreground",
|
|
779
766
|
children: heading
|
|
780
767
|
})]
|
|
@@ -843,7 +830,7 @@ function ArtifactAgentDock({ scope, open, onOpenChange, transport, defaultPrompt
|
|
|
843
830
|
placeholder: `Ask about ${heading}…`,
|
|
844
831
|
rows: 2,
|
|
845
832
|
disabled: !threadId,
|
|
846
|
-
className: `min-h-[44px] flex-1 resize-none rounded-[20px] border bg-surface-dim px-3.5 py-2 text-sm text-foreground placeholder:text-muted-foreground disabled:opacity-50 ${focusField}`
|
|
833
|
+
className: `min-h-[44px] min-w-0 flex-1 resize-none rounded-[20px] border bg-surface-dim px-3.5 py-2 text-sm text-foreground placeholder:text-muted-foreground disabled:opacity-50 ${focusField}`
|
|
847
834
|
}), sending ? /* @__PURE__ */ jsx("button", {
|
|
848
835
|
type: "button",
|
|
849
836
|
onClick: cancel,
|
|
@@ -861,5 +848,22 @@ function ArtifactAgentDock({ scope, open, onOpenChange, transport, defaultPrompt
|
|
|
861
848
|
})
|
|
862
849
|
]
|
|
863
850
|
});
|
|
851
|
+
return phone ? /* @__PURE__ */ jsx(Sheet, {
|
|
852
|
+
open,
|
|
853
|
+
onOpenChange,
|
|
854
|
+
children: /* @__PURE__ */ jsx(SheetContent, {
|
|
855
|
+
hideCloseButton: true,
|
|
856
|
+
"aria-describedby": void 0,
|
|
857
|
+
className: "inset-0 h-dvh w-full gap-0 p-0 sm:max-w-none",
|
|
858
|
+
onOpenAutoFocus: () => {
|
|
859
|
+
if (document.activeElement instanceof HTMLElement) returnFocus.current = document.activeElement;
|
|
860
|
+
},
|
|
861
|
+
onCloseAutoFocus: (event) => {
|
|
862
|
+
event.preventDefault();
|
|
863
|
+
if (returnFocus.current?.isConnected) returnFocus.current.focus();
|
|
864
|
+
},
|
|
865
|
+
children: panel
|
|
866
|
+
})
|
|
867
|
+
}) : panel;
|
|
864
868
|
}
|
|
865
869
|
export { ReasoningLevelPicker as S, modelProvider as _, ChatMessage$1 as a, DEFAULT_REASONING_LEVEL_OPTIONS as b, SpeakerHeader as c, UserMessage as d, agentTimelineStepKind as f, ArtifactAgentDock as g, partitionBySpeaker as h, ChatContainer$1 as i, TRANSCRIPT_TEXT as l, isViewerMessage as m, AgentTimelineColumn$1 as n, MessageAuthor as o, foldSummary as p, AgentTimelineStep as r, MessageList as s, AgentTimeline$1 as t, ThinkingIndicator as u, snapHarnessToModel as v, HARNESS_REASONING_OPTIONS as x, AgentProfilePicker as y };
|
package/dist/chat.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as AgentProfilePicker, A as SpeakerSection, B as partitionBySpeaker, C as MessageList, D as SpeakerHeader, E as Speaker, F as UserMessage, G as ArtifactDockStreamEvent, H as ArtifactAgentDockProps, I as UserMessageProps, J as modelProvider, K as ArtifactKind, L as agentTimelineStepKind, M as TRANSCRIPT_TEXT, N as ThinkingIndicator, O as SpeakerHeaderProps, P as ThinkingIndicatorProps, Q as AgentProfileOption, R as foldSummary, S as MessageAuthorProps, T as MessageRole, U as ArtifactAgentDockTransport, V as ArtifactAgentDock, W as ArtifactDockMessage, X as AgentProfileCapability, Y as snapHarnessToModel, Z as AgentProfileDraft, _ as ChatContainer, a as AgentTimelineFoldItem, at as ReasoningLevelPicker, b as ChatMessageProps, c as AgentTimelineProps, d as AgentTimelineStepKind, et as AgentProfilePickerProps, f as AgentTimelineStepProps, g as ChatAuthor, h as AgentTimelineToolItem, i as AgentTimelineCustomItem, it as ReasoningLevelOption, j as SpeakerState, k as SpeakerPart, l as AgentTimelineStatusItem, m as AgentTimelineToolGroupItem, n as AgentTimelineArtifactItem, nt as HARNESS_REASONING_OPTIONS, o as AgentTimelineItem, ot as ReasoningLevelPickerProps, p as AgentTimelineTone, q as ArtifactScope, r as AgentTimelineColumn, rt as ReasoningLevel, s as AgentTimelineMessageItem, t as AgentTimeline, tt as DEFAULT_REASONING_LEVEL_OPTIONS, u as AgentTimelineStep, v as ChatContainerProps, w as MessageListProps, x as MessageAuthor, y as ChatMessage, z as isViewerMessage } from "./index-
|
|
1
|
+
import { $ as AgentProfilePicker, A as SpeakerSection, B as partitionBySpeaker, C as MessageList, D as SpeakerHeader, E as Speaker, F as UserMessage, G as ArtifactDockStreamEvent, H as ArtifactAgentDockProps, I as UserMessageProps, J as modelProvider, K as ArtifactKind, L as agentTimelineStepKind, M as TRANSCRIPT_TEXT, N as ThinkingIndicator, O as SpeakerHeaderProps, P as ThinkingIndicatorProps, Q as AgentProfileOption, R as foldSummary, S as MessageAuthorProps, T as MessageRole, U as ArtifactAgentDockTransport, V as ArtifactAgentDock, W as ArtifactDockMessage, X as AgentProfileCapability, Y as snapHarnessToModel, Z as AgentProfileDraft, _ as ChatContainer, a as AgentTimelineFoldItem, at as ReasoningLevelPicker, b as ChatMessageProps, c as AgentTimelineProps, d as AgentTimelineStepKind, et as AgentProfilePickerProps, f as AgentTimelineStepProps, g as ChatAuthor, h as AgentTimelineToolItem, i as AgentTimelineCustomItem, it as ReasoningLevelOption, j as SpeakerState, k as SpeakerPart, l as AgentTimelineStatusItem, m as AgentTimelineToolGroupItem, n as AgentTimelineArtifactItem, nt as HARNESS_REASONING_OPTIONS, o as AgentTimelineItem, ot as ReasoningLevelPickerProps, p as AgentTimelineTone, q as ArtifactScope, r as AgentTimelineColumn, rt as ReasoningLevel, s as AgentTimelineMessageItem, t as AgentTimeline, tt as DEFAULT_REASONING_LEVEL_OPTIONS, u as AgentTimelineStep, v as ChatContainerProps, w as MessageListProps, x as MessageAuthor, y as ChatMessage, z as isViewerMessage } from "./index-PxmhpV0y.js";
|
|
2
2
|
export { type AgentProfileCapability, type AgentProfileDraft, type AgentProfileOption, AgentProfilePicker, type AgentProfilePickerProps, AgentTimeline, type AgentTimelineArtifactItem, AgentTimelineColumn, type AgentTimelineCustomItem, type AgentTimelineFoldItem, type AgentTimelineItem, type AgentTimelineMessageItem, type AgentTimelineProps, type AgentTimelineStatusItem, AgentTimelineStep, type AgentTimelineStepKind, type AgentTimelineStepProps, type AgentTimelineTone, type AgentTimelineToolGroupItem, type AgentTimelineToolItem, ArtifactAgentDock, type ArtifactAgentDockProps, type ArtifactAgentDockTransport, type ArtifactDockMessage, type ArtifactDockStreamEvent, type ArtifactKind, type ArtifactScope, type ChatAuthor, ChatContainer, type ChatContainerProps, ChatMessage, type ChatMessageProps, DEFAULT_REASONING_LEVEL_OPTIONS, HARNESS_REASONING_OPTIONS, MessageAuthor, type MessageAuthorProps, MessageList, type MessageListProps, type MessageRole, type ReasoningLevel, type ReasoningLevelOption, ReasoningLevelPicker, type ReasoningLevelPickerProps, type Speaker, SpeakerHeader, type SpeakerHeaderProps, type SpeakerPart, type SpeakerSection, type SpeakerState, TRANSCRIPT_TEXT, ThinkingIndicator, type ThinkingIndicatorProps, UserMessage, type UserMessageProps, agentTimelineStepKind, foldSummary, isViewerMessage, modelProvider, partitionBySpeaker, snapHarnessToModel };
|
package/dist/chat.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { y as AgentProfilePicker, t as AgentTimeline, n as AgentTimelineColumn, r as AgentTimelineStep, g as ArtifactAgentDock, i as ChatContainer, a as ChatMessage, b as DEFAULT_REASONING_LEVEL_OPTIONS, x as HARNESS_REASONING_OPTIONS, o as MessageAuthor, s as MessageList, S as ReasoningLevelPicker, c as SpeakerHeader, l as TRANSCRIPT_TEXT, u as ThinkingIndicator, d as UserMessage, f as agentTimelineStepKind, p as foldSummary, m as isViewerMessage, _ as modelProvider, h as partitionBySpeaker, v as snapHarnessToModel } from "./chat-
|
|
1
|
+
export { y as AgentProfilePicker, t as AgentTimeline, n as AgentTimelineColumn, r as AgentTimelineStep, g as ArtifactAgentDock, i as ChatContainer, a as ChatMessage, b as DEFAULT_REASONING_LEVEL_OPTIONS, x as HARNESS_REASONING_OPTIONS, o as MessageAuthor, s as MessageList, S as ReasoningLevelPicker, c as SpeakerHeader, l as TRANSCRIPT_TEXT, u as ThinkingIndicator, d as UserMessage, f as agentTimelineStepKind, p as foldSummary, m as isViewerMessage, _ as modelProvider, h as partitionBySpeaker, v as snapHarnessToModel } from "./chat-DcaqQX2X.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Br as Logo, D as Button$1 } from "./primitives-l-Qv14bS.js";
|
|
2
2
|
import { t as cn$1 } from "./utils-BER_bdgE.js";
|
|
3
3
|
import { r as ShellHeader } from "./shell-header-CwqDzC4I.js";
|
|
4
4
|
import { n as MOTION_SURFACE, t as MOTION_CONTROL } from "./motion-2Ine0j_s.js";
|
package/dist/dashboard.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as useSidebar, A as parseInsufficientBalance, B as SidebarPanel, C as SandboxStatusPill, D as ResourceMeter, E as ResourceSnapshot, F as RailHeader, G as SidebarRailNav, H as SidebarPanelHeader, I as RailModeButton, J as SIDEBAR_PANEL_WIDTH, K as RailTooltip, L as RailSeparator, M as RailButton, N as RailExpandable, O as INSUFFICIENT_BALANCE_CODE, P as RailFlyout, Q as SidebarProvider, R as Sidebar, S as SANDBOX_STATUS, T as ActivityFeed, U as SidebarRail, V as SidebarPanelContent, W as SidebarRailFooter, X as SIDEBAR_RAIL_WIDTH, Y as SIDEBAR_RAIL_LABELED_WIDTH, Z as SIDEBAR_TOTAL_WIDTH, _ as BackendSelector, a as PortsList, b as SandboxCard, c as SystemLogsViewer, d as DashboardLayout, f as HARNESS_OPTIONS, g as HarnessLogo, h as HARNESS_BRAND, i as TemplateCard, j as ProfileAvatar, k as OutOfCreditsModal, l as MetricAreaChart, m as chatCapableHarnesses, n as SnapshotList, o as GitPanel, p as HarnessPicker, q as SIDEBAR_MOBILE_WIDTH, r as ProcessList, s as UsageSummary, t as PromoBanner, u as SidebarLayout, v as SandboxTable, w as sandboxStatus, x as canAdminSandbox, y as NewSandboxCard, z as SidebarContent } from "./dashboard-
|
|
1
|
+
import { $ as useSidebar, A as parseInsufficientBalance, B as SidebarPanel, C as SandboxStatusPill, D as ResourceMeter, E as ResourceSnapshot, F as RailHeader, G as SidebarRailNav, H as SidebarPanelHeader, I as RailModeButton, J as SIDEBAR_PANEL_WIDTH, K as RailTooltip, L as RailSeparator, M as RailButton, N as RailExpandable, O as INSUFFICIENT_BALANCE_CODE, P as RailFlyout, Q as SidebarProvider, R as Sidebar, S as SANDBOX_STATUS, T as ActivityFeed, U as SidebarRail, V as SidebarPanelContent, W as SidebarRailFooter, X as SIDEBAR_RAIL_WIDTH, Y as SIDEBAR_RAIL_LABELED_WIDTH, Z as SIDEBAR_TOTAL_WIDTH, _ as BackendSelector, a as PortsList, b as SandboxCard, c as SystemLogsViewer, d as DashboardLayout, f as HARNESS_OPTIONS, g as HarnessLogo, h as HARNESS_BRAND, i as TemplateCard, j as ProfileAvatar, k as OutOfCreditsModal, l as MetricAreaChart, m as chatCapableHarnesses, n as SnapshotList, o as GitPanel, p as HarnessPicker, q as SIDEBAR_MOBILE_WIDTH, r as ProcessList, s as UsageSummary, t as PromoBanner, u as SidebarLayout, v as SandboxTable, w as sandboxStatus, x as canAdminSandbox, y as NewSandboxCard, z as SidebarContent } from "./dashboard-C1pNlewR.js";
|
|
2
2
|
import { i as modelBrandFor, n as ProviderMark, r as canonicalModelId, t as ModelBrandStack } from "./model-brand-BQlarCIo.js";
|
|
3
3
|
import { a as formatPrice, i as PricingPage, n as SandboxPageShell, o as BillingDashboard, r as UsageChart, t as DashboardPageHeader } from "./page-layout-CuOpvZys.js";
|
|
4
4
|
export { ActivityFeed, BackendSelector, BillingDashboard, DashboardLayout, DashboardPageHeader, GitPanel, HARNESS_BRAND, HARNESS_OPTIONS, HarnessLogo, HarnessPicker, INSUFFICIENT_BALANCE_CODE, MetricAreaChart, ModelBrandStack, NewSandboxCard, OutOfCreditsModal, PortsList, PricingPage, ProcessList, ProfileAvatar, PromoBanner, ProviderMark, RailButton, RailExpandable, RailFlyout, RailHeader, RailModeButton, RailSeparator, RailTooltip, ResourceMeter, ResourceSnapshot, SANDBOX_STATUS, SIDEBAR_MOBILE_WIDTH, SIDEBAR_PANEL_WIDTH, SIDEBAR_RAIL_LABELED_WIDTH, SIDEBAR_RAIL_WIDTH, SIDEBAR_TOTAL_WIDTH, SandboxCard, SandboxPageShell, SandboxStatusPill, SandboxTable, Sidebar, SidebarContent, SidebarLayout, SidebarPanel, SidebarPanelContent, SidebarPanelHeader, SidebarProvider, SidebarRail, SidebarRailFooter, SidebarRailNav, SnapshotList, SystemLogsViewer, TemplateCard, UsageChart, UsageSummary, canAdminSandbox, canonicalModelId, chatCapableHarnesses, formatPrice, modelBrandFor, parseInsufficientBalance, sandboxStatus, useSidebar };
|
package/dist/globals.css
CHANGED
|
@@ -26,8 +26,6 @@
|
|
|
26
26
|
--color-violet-400: oklch(70.2% 0.183 293.541);
|
|
27
27
|
--color-violet-500: oklch(60.6% 0.25 292.717);
|
|
28
28
|
--color-zinc-400: oklch(70.5% 0.015 286.067);
|
|
29
|
-
--color-neutral-400: oklch(70.8% 0 none);
|
|
30
|
-
--color-neutral-500: oklch(55.6% 0 none);
|
|
31
29
|
--color-black: #000;
|
|
32
30
|
--color-white: #fff;
|
|
33
31
|
--spacing: 0.25rem;
|
|
@@ -81,10 +79,8 @@
|
|
|
81
79
|
--animate-spin: spin 1s linear infinite;
|
|
82
80
|
--animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
|
|
83
81
|
--animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
|
|
84
|
-
--animate-bounce: bounce 1s infinite;
|
|
85
82
|
--blur-sm: 8px;
|
|
86
83
|
--blur-md: 12px;
|
|
87
|
-
--blur-xl: 24px;
|
|
88
84
|
--default-transition-duration: 150ms;
|
|
89
85
|
--default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
90
86
|
--default-font-family: var(--font-sans);
|
|
@@ -548,6 +544,9 @@
|
|
|
548
544
|
.m-0 {
|
|
549
545
|
margin: 0px;
|
|
550
546
|
}
|
|
547
|
+
.m-1 {
|
|
548
|
+
margin: var(--spacing);
|
|
549
|
+
}
|
|
551
550
|
.m-4 {
|
|
552
551
|
margin: calc(var(--spacing) * 4);
|
|
553
552
|
}
|
|
@@ -856,6 +855,10 @@
|
|
|
856
855
|
width: var(--control-height-sm,2rem);
|
|
857
856
|
height: var(--control-height-sm,2rem);
|
|
858
857
|
}
|
|
858
|
+
.size-auto {
|
|
859
|
+
width: auto;
|
|
860
|
+
height: auto;
|
|
861
|
+
}
|
|
859
862
|
.size-full {
|
|
860
863
|
width: 100%;
|
|
861
864
|
height: 100%;
|
|
@@ -1049,9 +1052,6 @@
|
|
|
1049
1052
|
.h-\[650px\] {
|
|
1050
1053
|
height: 650px;
|
|
1051
1054
|
}
|
|
1052
|
-
.h-\[680px\] {
|
|
1053
|
-
height: 680px;
|
|
1054
|
-
}
|
|
1055
1055
|
.h-\[720px\] {
|
|
1056
1056
|
height: 720px;
|
|
1057
1057
|
}
|
|
@@ -1874,12 +1874,12 @@
|
|
|
1874
1874
|
.transform {
|
|
1875
1875
|
transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
|
|
1876
1876
|
}
|
|
1877
|
+
.transform-none {
|
|
1878
|
+
transform: none;
|
|
1879
|
+
}
|
|
1877
1880
|
.animate-\[tangle-breathe_var\(--motion-ambient\)_infinite\] {
|
|
1878
1881
|
animation: tangle-breathe var(--motion-ambient) infinite;
|
|
1879
1882
|
}
|
|
1880
|
-
.animate-bounce {
|
|
1881
|
-
animation: var(--animate-bounce);
|
|
1882
|
-
}
|
|
1883
1883
|
.animate-ping {
|
|
1884
1884
|
animation: var(--animate-ping);
|
|
1885
1885
|
}
|
|
@@ -2069,12 +2069,6 @@
|
|
|
2069
2069
|
.gap-10 {
|
|
2070
2070
|
gap: calc(var(--spacing) * 10);
|
|
2071
2071
|
}
|
|
2072
|
-
.gap-\[3px\] {
|
|
2073
|
-
gap: 3px;
|
|
2074
|
-
}
|
|
2075
|
-
.gap-\[5px\] {
|
|
2076
|
-
gap: 5px;
|
|
2077
|
-
}
|
|
2078
2072
|
.gap-px {
|
|
2079
2073
|
gap: 1px;
|
|
2080
2074
|
}
|
|
@@ -2280,6 +2274,9 @@
|
|
|
2280
2274
|
.rounded-\[var\(--radius-md\)\] {
|
|
2281
2275
|
border-radius: var(--radius-md);
|
|
2282
2276
|
}
|
|
2277
|
+
.rounded-\[var\(--radius-panel\)\] {
|
|
2278
|
+
border-radius: var(--radius-panel);
|
|
2279
|
+
}
|
|
2283
2280
|
.rounded-\[var\(--radius-sm\)\] {
|
|
2284
2281
|
border-radius: var(--radius-sm);
|
|
2285
2282
|
}
|
|
@@ -2614,9 +2611,6 @@
|
|
|
2614
2611
|
border-color: color-mix(in oklab, var(--color-green-500) 30%, transparent);
|
|
2615
2612
|
}
|
|
2616
2613
|
}
|
|
2617
|
-
.border-muted-foreground {
|
|
2618
|
-
border-color: hsl(var(--muted-foreground));
|
|
2619
|
-
}
|
|
2620
2614
|
.border-primary {
|
|
2621
2615
|
border-color: hsl(var(--primary));
|
|
2622
2616
|
}
|
|
@@ -2842,6 +2836,9 @@
|
|
|
2842
2836
|
.bg-\[var\(--surface-info-bg\)\] {
|
|
2843
2837
|
background-color: var(--surface-info-bg);
|
|
2844
2838
|
}
|
|
2839
|
+
.bg-\[var\(--surface-info-text\)\] {
|
|
2840
|
+
background-color: var(--surface-info-text);
|
|
2841
|
+
}
|
|
2845
2842
|
.bg-\[var\(--surface-neutral-bg\)\] {
|
|
2846
2843
|
background-color: var(--surface-neutral-bg);
|
|
2847
2844
|
}
|
|
@@ -2971,9 +2968,6 @@
|
|
|
2971
2968
|
background-color: color-mix(in oklab, var(--color-black) 80%, transparent);
|
|
2972
2969
|
}
|
|
2973
2970
|
}
|
|
2974
|
-
.bg-blue-500 {
|
|
2975
|
-
background-color: var(--color-blue-500);
|
|
2976
|
-
}
|
|
2977
2971
|
.bg-blue-500\/15 {
|
|
2978
2972
|
background-color: color-mix(in srgb, oklch(62.3% 0.214 259.815) 15%, transparent);
|
|
2979
2973
|
@supports (color: color-mix(in lab, red, red)) {
|
|
@@ -3046,9 +3040,6 @@
|
|
|
3046
3040
|
.bg-green-400 {
|
|
3047
3041
|
background-color: var(--color-green-400);
|
|
3048
3042
|
}
|
|
3049
|
-
.bg-green-500 {
|
|
3050
|
-
background-color: var(--color-green-500);
|
|
3051
|
-
}
|
|
3052
3043
|
.bg-green-600\/20 {
|
|
3053
3044
|
background-color: color-mix(in srgb, oklch(62.7% 0.194 149.214) 20%, transparent);
|
|
3054
3045
|
@supports (color: color-mix(in lab, red, red)) {
|
|
@@ -3142,9 +3133,6 @@
|
|
|
3142
3133
|
background-color: color-mix(in oklab, hsl(var(--primary)) 4%, transparent);
|
|
3143
3134
|
}
|
|
3144
3135
|
}
|
|
3145
|
-
.bg-red-500 {
|
|
3146
|
-
background-color: var(--color-red-500);
|
|
3147
|
-
}
|
|
3148
3136
|
.bg-red-500\/10 {
|
|
3149
3137
|
background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 10%, transparent);
|
|
3150
3138
|
@supports (color: color-mix(in lab, red, red)) {
|
|
@@ -3220,9 +3208,6 @@
|
|
|
3220
3208
|
background-color: color-mix(in oklab, var(--color-white) 40%, transparent);
|
|
3221
3209
|
}
|
|
3222
3210
|
}
|
|
3223
|
-
.bg-yellow-500 {
|
|
3224
|
-
background-color: var(--color-yellow-500);
|
|
3225
|
-
}
|
|
3226
3211
|
.bg-yellow-600\/20 {
|
|
3227
3212
|
background-color: color-mix(in srgb, oklch(68.1% 0.162 75.834) 20%, transparent);
|
|
3228
3213
|
@supports (color: color-mix(in lab, red, red)) {
|
|
@@ -3807,14 +3792,6 @@
|
|
|
3807
3792
|
--tw-font-weight: var(--font-weight-semibold);
|
|
3808
3793
|
font-weight: var(--font-weight-semibold);
|
|
3809
3794
|
}
|
|
3810
|
-
.tracking-\[0\.1em\] {
|
|
3811
|
-
--tw-tracking: 0.1em;
|
|
3812
|
-
letter-spacing: 0.1em;
|
|
3813
|
-
}
|
|
3814
|
-
.tracking-\[0\.08em\] {
|
|
3815
|
-
--tw-tracking: 0.08em;
|
|
3816
|
-
letter-spacing: 0.08em;
|
|
3817
|
-
}
|
|
3818
3795
|
.tracking-\[0\.09em\] {
|
|
3819
3796
|
--tw-tracking: 0.09em;
|
|
3820
3797
|
letter-spacing: 0.09em;
|
|
@@ -3823,10 +3800,6 @@
|
|
|
3823
3800
|
--tw-tracking: 0.12em;
|
|
3824
3801
|
letter-spacing: 0.12em;
|
|
3825
3802
|
}
|
|
3826
|
-
.tracking-\[0\.14em\] {
|
|
3827
|
-
--tw-tracking: 0.14em;
|
|
3828
|
-
letter-spacing: 0.14em;
|
|
3829
|
-
}
|
|
3830
3803
|
.tracking-\[0\.16em\] {
|
|
3831
3804
|
--tw-tracking: 0.16em;
|
|
3832
3805
|
letter-spacing: 0.16em;
|
|
@@ -3839,10 +3812,6 @@
|
|
|
3839
3812
|
--tw-tracking: var(--tracking-tight,-0.02em);
|
|
3840
3813
|
letter-spacing: var(--tracking-tight,-0.02em);
|
|
3841
3814
|
}
|
|
3842
|
-
.tracking-\[var\(--tracking-wide\,0\.08em\)\] {
|
|
3843
|
-
--tw-tracking: var(--tracking-wide,0.08em);
|
|
3844
|
-
letter-spacing: var(--tracking-wide,0.08em);
|
|
3845
|
-
}
|
|
3846
3815
|
.tracking-normal {
|
|
3847
3816
|
--tw-tracking: var(--tracking-normal);
|
|
3848
3817
|
letter-spacing: var(--tracking-normal);
|
|
@@ -4157,9 +4126,6 @@
|
|
|
4157
4126
|
color: color-mix(in oklab, hsl(var(--muted-foreground)) 90%, transparent);
|
|
4158
4127
|
}
|
|
4159
4128
|
}
|
|
4160
|
-
.text-neutral-400 {
|
|
4161
|
-
color: var(--color-neutral-400);
|
|
4162
|
-
}
|
|
4163
4129
|
.text-popover-foreground {
|
|
4164
4130
|
color: hsl(var(--popover-foreground));
|
|
4165
4131
|
}
|
|
@@ -4437,6 +4403,10 @@
|
|
|
4437
4403
|
--tw-blur: blur(8px);
|
|
4438
4404
|
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
4439
4405
|
}
|
|
4406
|
+
.grayscale {
|
|
4407
|
+
--tw-grayscale: grayscale(100%);
|
|
4408
|
+
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
4409
|
+
}
|
|
4440
4410
|
.\!filter {
|
|
4441
4411
|
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,) !important;
|
|
4442
4412
|
}
|
|
@@ -4458,11 +4428,6 @@
|
|
|
4458
4428
|
-webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
|
|
4459
4429
|
backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
|
|
4460
4430
|
}
|
|
4461
|
-
.backdrop-blur-xl {
|
|
4462
|
-
--tw-backdrop-blur: blur(var(--blur-xl));
|
|
4463
|
-
-webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
|
|
4464
|
-
backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
|
|
4465
|
-
}
|
|
4466
4431
|
.transition {
|
|
4467
4432
|
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
|
|
4468
4433
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
@@ -4513,6 +4478,11 @@
|
|
|
4513
4478
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
4514
4479
|
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
4515
4480
|
}
|
|
4481
|
+
.transition-\[transform\,opacity\] {
|
|
4482
|
+
transition-property: transform,opacity;
|
|
4483
|
+
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
4484
|
+
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
4485
|
+
}
|
|
4516
4486
|
.transition-\[transform\,width\] {
|
|
4517
4487
|
transition-property: transform,width;
|
|
4518
4488
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
@@ -4621,6 +4591,9 @@
|
|
|
4621
4591
|
.group-focus-within\:opacity-100:is(:where(.group):focus-within *) {
|
|
4622
4592
|
opacity: 100%;
|
|
4623
4593
|
}
|
|
4594
|
+
.group-focus-within\/expandable\:opacity-100:is(:where(.group\/expandable):focus-within *) {
|
|
4595
|
+
opacity: 100%;
|
|
4596
|
+
}
|
|
4624
4597
|
@media (hover: hover) {
|
|
4625
4598
|
.group-hover\:block:is(:where(.group):hover *) {
|
|
4626
4599
|
display: block;
|
|
@@ -4669,6 +4642,9 @@
|
|
|
4669
4642
|
.group-hover\/brand\:opacity-100:is(:where(.group\/brand):hover *) {
|
|
4670
4643
|
opacity: 100%;
|
|
4671
4644
|
}
|
|
4645
|
+
.group-hover\/expandable\:opacity-100:is(:where(.group\/expandable):hover *) {
|
|
4646
|
+
opacity: 100%;
|
|
4647
|
+
}
|
|
4672
4648
|
.group-hover\/sub\:opacity-100:is(:where(.group\/sub):hover *) {
|
|
4673
4649
|
opacity: 100%;
|
|
4674
4650
|
}
|
|
@@ -5273,6 +5249,10 @@
|
|
|
5273
5249
|
--tw-brightness: brightness(110%);
|
|
5274
5250
|
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
5275
5251
|
}
|
|
5252
|
+
.hover\:grayscale-0:hover {
|
|
5253
|
+
--tw-grayscale: grayscale(0%);
|
|
5254
|
+
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
5255
|
+
}
|
|
5276
5256
|
}
|
|
5277
5257
|
.focus\:border-\[var\(--focus-border\)\]:focus {
|
|
5278
5258
|
border-color: var(--focus-border);
|
|
@@ -5943,6 +5923,9 @@
|
|
|
5943
5923
|
.sm\:\!block {
|
|
5944
5924
|
display: block !important;
|
|
5945
5925
|
}
|
|
5926
|
+
.sm\:block {
|
|
5927
|
+
display: block;
|
|
5928
|
+
}
|
|
5946
5929
|
.sm\:flex {
|
|
5947
5930
|
display: flex;
|
|
5948
5931
|
}
|
|
@@ -5973,6 +5956,9 @@
|
|
|
5973
5956
|
.sm\:max-w-lg {
|
|
5974
5957
|
max-width: var(--container-lg);
|
|
5975
5958
|
}
|
|
5959
|
+
.sm\:max-w-none {
|
|
5960
|
+
max-width: none;
|
|
5961
|
+
}
|
|
5976
5962
|
.sm\:max-w-sm {
|
|
5977
5963
|
max-width: var(--container-sm);
|
|
5978
5964
|
}
|
|
@@ -6276,9 +6262,6 @@
|
|
|
6276
6262
|
}
|
|
6277
6263
|
}
|
|
6278
6264
|
@media (prefers-color-scheme: dark) {
|
|
6279
|
-
.dark\:text-neutral-500 {
|
|
6280
|
-
color: var(--color-neutral-500);
|
|
6281
|
-
}
|
|
6282
6265
|
.dark\:text-white {
|
|
6283
6266
|
color: var(--color-white);
|
|
6284
6267
|
}
|
|
@@ -6325,6 +6308,9 @@
|
|
|
6325
6308
|
font-size: var(--text-base);
|
|
6326
6309
|
line-height: var(--tw-leading, var(--text-base--line-height));
|
|
6327
6310
|
}
|
|
6311
|
+
.pointer-coarse\:opacity-100 {
|
|
6312
|
+
opacity: 100%;
|
|
6313
|
+
}
|
|
6328
6314
|
.pointer-coarse\:before\:absolute::before {
|
|
6329
6315
|
content: var(--tw-content);
|
|
6330
6316
|
position: absolute;
|
|
@@ -11715,16 +11701,6 @@
|
|
|
11715
11701
|
opacity: 0.5;
|
|
11716
11702
|
}
|
|
11717
11703
|
}
|
|
11718
|
-
@keyframes bounce {
|
|
11719
|
-
0%, 100% {
|
|
11720
|
-
transform: translateY(-25%);
|
|
11721
|
-
animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
|
|
11722
|
-
}
|
|
11723
|
-
50% {
|
|
11724
|
-
transform: none;
|
|
11725
|
-
animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
|
|
11726
|
-
}
|
|
11727
|
-
}
|
|
11728
11704
|
@layer properties {
|
|
11729
11705
|
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
|
|
11730
11706
|
*, ::before, ::after, ::backdrop {
|
package/dist/hooks.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { n as UsePtySessionReturn, r as usePtySession, t as UsePtySessionOptions
|
|
|
2
2
|
import { t as Session } from "./sidecar-CNP4zXop.js";
|
|
3
3
|
import { a as SendMessageOptions, c as SessionStreamError, d as useSessionStream, i as SESSION_STREAM_RECONNECT_DELAY_MS, 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-CPevSSEj.js";
|
|
4
4
|
import { t as useDocument } from "./use-document-DCXGpk0q.js";
|
|
5
|
-
import { AgentStreamEvent, AppendUserMessageOptions, ApplySdkEventOptions, AuthUser, AutomationStreamEvent, BeginAssistantMessageOptions, BotStreamEvent, CompleteAssistantMessageOptions, ConnectionState, EventStreamHandlers, EventStreamOpener, EventStreamSource, RealtimeSessionOptions, RealtimeSessionRegistry, RealtimeSessionRegistryProps, RealtimeSessionState, RealtimeSessionTarget, SSEEvent, SdkSessionAttachment, SdkSessionEvent, SdkSessionSeed, TaskStreamEvent, TerminalStreamEvent, UseAuthOptions, UseAuthResult, UseRunGroupsOptions, UseSSEStreamOptions, UseSSEStreamResult, UseSdkSessionOptions, UseSdkSessionReturn, UseToolCallStreamReturn, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, useRealtimeSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSdkSession, useToolCallStream } from "@tangle-network/ui/hooks";
|
|
5
|
+
import { AgentStreamEvent, AppendUserMessageOptions, ApplySdkEventOptions, AuthUser, AutomationStreamEvent, BeginAssistantMessageOptions, BotStreamEvent, CompleteAssistantMessageOptions, ConnectionState, EventStreamHandlers, EventStreamOpener, EventStreamSource, PHONE_MEDIA, RealtimeSessionOptions, RealtimeSessionRegistry, RealtimeSessionRegistryProps, RealtimeSessionState, RealtimeSessionTarget, SSEEvent, SdkSessionAttachment, SdkSessionEvent, SdkSessionSeed, TaskStreamEvent, TerminalStreamEvent, UseAuthOptions, UseAuthResult, UseRunGroupsOptions, UseSSEStreamOptions, UseSSEStreamResult, UseSdkSessionOptions, UseSdkSessionReturn, UseToolCallStreamReturn, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, usePhone, useRealtimeSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSdkSession, useToolCallStream } from "@tangle-network/ui/hooks";
|
|
6
6
|
/**
|
|
7
7
|
* Sandbox-level telemetry collected by the sidecar from cgroup v2
|
|
8
8
|
* (Docker) or /proc (Firecracker guest). `cpuPercent` is computed
|
|
@@ -139,4 +139,4 @@ export declare function useRenameSession(apiUrl: string, token: string | null):
|
|
|
139
139
|
sessionId: string;
|
|
140
140
|
title: string;
|
|
141
141
|
}, unknown>;
|
|
142
|
-
export { type AgentStreamEvent, type AppendUserMessageOptions, type ApplySdkEventOptions, type AuthUser, type AutomationStreamEvent, type BeginAssistantMessageOptions, type BotStreamEvent, type CompleteAssistantMessageOptions, type ConnectionState, type EventStreamHandlers, type EventStreamOpener, type EventStreamSource, type RealtimeSessionOptions, RealtimeSessionRegistry, type RealtimeSessionRegistryProps, type RealtimeSessionState, type RealtimeSessionTarget, SESSION_STREAM_RECONNECT_DELAY_MS, type SSEEvent, type SdkSessionAttachment, type SdkSessionEvent, type SdkSessionSeed, SendMessageOptions, SessionDegradation, SessionInfo, SessionStreamError, SidecarAuth, type TaskStreamEvent, type TerminalStreamEvent, type UseAuthOptions, type UseAuthResult, UsePtySessionOptions, UsePtySessionReturn, type UseRunGroupsOptions, type UseSSEStreamOptions, type UseSSEStreamResult, type UseSdkSessionOptions, type UseSdkSessionReturn, UseSessionStreamOptions, UseSessionStreamResult, UseSidecarAuthOptions, type UseToolCallStreamReturn, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useDocument, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, usePtySession, useRealtimeSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSdkSession, useSessionStream, useSidecarAuth, useToolCallStream };
|
|
142
|
+
export { type AgentStreamEvent, type AppendUserMessageOptions, type ApplySdkEventOptions, type AuthUser, type AutomationStreamEvent, type BeginAssistantMessageOptions, type BotStreamEvent, type CompleteAssistantMessageOptions, type ConnectionState, type EventStreamHandlers, type EventStreamOpener, type EventStreamSource, PHONE_MEDIA, type RealtimeSessionOptions, RealtimeSessionRegistry, type RealtimeSessionRegistryProps, type RealtimeSessionState, type RealtimeSessionTarget, SESSION_STREAM_RECONNECT_DELAY_MS, type SSEEvent, type SdkSessionAttachment, type SdkSessionEvent, type SdkSessionSeed, SendMessageOptions, SessionDegradation, SessionInfo, SessionStreamError, SidecarAuth, type TaskStreamEvent, type TerminalStreamEvent, type UseAuthOptions, type UseAuthResult, UsePtySessionOptions, UsePtySessionReturn, type UseRunGroupsOptions, type UseSSEStreamOptions, type UseSSEStreamResult, type UseSdkSessionOptions, type UseSdkSessionReturn, UseSessionStreamOptions, UseSessionStreamResult, UseSidecarAuthOptions, type UseToolCallStreamReturn, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useDocument, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, usePhone, usePtySession, useRealtimeSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSdkSession, useSessionStream, useSidecarAuth, useToolCallStream };
|
package/dist/hooks.js
CHANGED
|
@@ -2,7 +2,7 @@ import { t as usePtySession } from "./use-pty-session-BHVQlSs-.js";
|
|
|
2
2
|
import { i as useSessionStream, n as SESSION_STREAM_RECONNECT_DELAY_MS, r as SessionStreamError, t as useSidecarAuth } from "./use-sidecar-auth-D9BrWCg1.js";
|
|
3
3
|
import { useDocument } from "./hooks/use-document.js";
|
|
4
4
|
import * as React$1 from "react";
|
|
5
|
-
import { RealtimeSessionRegistry, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, useRealtimeSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSdkSession, useToolCallStream } from "@tangle-network/ui/hooks";
|
|
5
|
+
import { PHONE_MEDIA, RealtimeSessionRegistry, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, usePhone, useRealtimeSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSdkSession, useToolCallStream } from "@tangle-network/ui/hooks";
|
|
6
6
|
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
7
7
|
// src/hooks/use-sandbox-metrics.ts
|
|
8
8
|
const METRICS_REQUEST_TIMEOUT_MS = 15e3;
|
|
@@ -231,4 +231,4 @@ function useRenameSession(apiUrl, token) {
|
|
|
231
231
|
}
|
|
232
232
|
});
|
|
233
233
|
}
|
|
234
|
-
export { RealtimeSessionRegistry, SESSION_STREAM_RECONNECT_DELAY_MS, SessionStreamError, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useCreateSession, useDeleteSession, useDocument, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, usePtySession, useRealtimeSession, useRenameSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSandboxMetrics, useSdkSession, useSessionStream, useSessions, useSidecarAuth, useToolCallStream };
|
|
234
|
+
export { PHONE_MEDIA, RealtimeSessionRegistry, SESSION_STREAM_RECONNECT_DELAY_MS, SessionStreamError, createAuthFetcher, useApiKey, useAuth, useAutoScroll, useCreateSession, useDeleteSession, useDocument, useDropdownMenu, useEventStream, useFollowTail, useLiveTime, usePhone, usePtySession, useRealtimeSession, useRenameSession, useRunCollapseState, useRunGroups, useRunNow, useSSEStream, useSandboxMetrics, useSdkSession, useSessionStream, useSessions, useSidecarAuth, useToolCallStream };
|