@workerdeck/ui 2.11.0 → 2.13.0
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/build/{SessionPanel-BVbau2eR.d.mts → SessionPanel-CJwp5B3q.d.mts} +8 -3
- package/build/index.d.mts +36 -18
- package/build/index.mjs +109 -46
- package/build/index.mjs.map +1 -1
- package/build/scoped.css +4 -10
- package/build/{use-path-links-DO_79-wX.mjs → use-path-links-CepFsMdW.mjs} +137 -79
- package/build/use-path-links-CepFsMdW.mjs.map +1 -0
- package/build/workspace.d.mts +1 -1
- package/build/workspace.mjs +1 -1
- package/package.json +4 -4
- package/src/components/agent/Composer.tsx +28 -5
- package/src/components/agent/PromptTokenText.tsx +9 -1
- package/src/components/agent/SessionBrowser.tsx +17 -1
- package/src/components/agent/SessionItem.tsx +6 -23
- package/src/components/agent/SessionPanel.tsx +10 -0
- package/src/components/agent/SessionSteps.tsx +15 -55
- package/src/components/agent/SubagentToggle.tsx +69 -0
- package/src/components/agent/Transcript.tsx +91 -80
- package/src/components/agent/composer-commands.ts +18 -0
- package/src/index.ts +10 -2
- package/src/styles/terminal.css +9 -1
- package/build/use-path-links-DO_79-wX.mjs.map +0 -1
|
@@ -39,6 +39,10 @@ declare function mergeComposerRows(sources: {
|
|
|
39
39
|
skills?: readonly SkillInfo[];
|
|
40
40
|
}): ComposerRow[];
|
|
41
41
|
declare function rankComposerRows(query: string, rows: readonly ComposerRow[]): ComposerRow[];
|
|
42
|
+
declare function rankPeerSessions<T extends {
|
|
43
|
+
slug: string;
|
|
44
|
+
label: string;
|
|
45
|
+
}>(query: string, peers: readonly T[]): T[];
|
|
42
46
|
declare function matchClientCommand(text: string, commands: readonly ClientCommand[]): {
|
|
43
47
|
command: ClientCommand;
|
|
44
48
|
args: string;
|
|
@@ -152,6 +156,7 @@ interface SessionPanelProps {
|
|
|
152
156
|
terminalMetrics?: TerminalMetrics;
|
|
153
157
|
scrubber?: boolean;
|
|
154
158
|
bookmarks?: readonly string[];
|
|
159
|
+
peerMentions?: boolean;
|
|
155
160
|
onToggleBookmark?: (itemId: string) => void;
|
|
156
161
|
onOpenFile?: FileLinkOpener;
|
|
157
162
|
reveal?: {
|
|
@@ -211,7 +216,7 @@ type SessionVitals = {
|
|
|
211
216
|
itemCount: number;
|
|
212
217
|
totalCostUsd: number;
|
|
213
218
|
};
|
|
214
|
-
declare function SessionPanel({ client, sessionId, header, panelSurface, statusSurface, statusPlacement, onOpenPanel, onVitals, transcriptVariant, transcriptDensity, transcriptFont, affordances, terminalMetrics, scrubber, bookmarks, onToggleBookmark, reveal, subagents, openSubagent, onSubagentChange, stickyPrompt, controlsSurface, onControls, focusComposerOnClick, unseen, readOnly, approvalPrompts, toolHost, clientTools, cacheTranscript, emptyState, onLinkClick, onOpenFile, fontSize, className }: SessionPanelProps): import("react").JSX.Element;
|
|
219
|
+
declare function SessionPanel({ client, sessionId, header, panelSurface, statusSurface, statusPlacement, onOpenPanel, onVitals, transcriptVariant, transcriptDensity, transcriptFont, affordances, terminalMetrics, scrubber, bookmarks, peerMentions, onToggleBookmark, reveal, subagents, openSubagent, onSubagentChange, stickyPrompt, controlsSurface, onControls, focusComposerOnClick, unseen, readOnly, approvalPrompts, toolHost, clientTools, cacheTranscript, emptyState, onLinkClick, onOpenFile, fontSize, className }: SessionPanelProps): import("react").JSX.Element;
|
|
215
220
|
//#endregion
|
|
216
|
-
export { ClientCommand as A, PERMISSION_MODES as C, PermissionModeSelectProps as D, PermissionModeSelect as E,
|
|
217
|
-
//# sourceMappingURL=SessionPanel-
|
|
221
|
+
export { ClientCommand as A, PERMISSION_MODES as C, PermissionModeSelectProps as D, PermissionModeSelect as E, rankPeerSessions as F, skillPrompt as I, matchClientCommand as M, mergeComposerRows as N, permissionModeChoices as O, rankComposerRows as P, useAffordances as S, PermissionModeMeta as T, FileLinkProvider as _, SessionSurfacePanel as a, TerminalAffordances as b, TranscriptDensity as c, TranscriptVariant as d, TranscriptVariantProvider as f, FileLinkOpener as g, FileLinkHandle as h, SessionPanelProps as i, ComposerRow as j, permissionModeMeta as k, TranscriptDensityProvider as l, useTranscriptVariant as m, SessionControls as n, SessionVitals as o, useTranscriptDensity as p, SessionPanel as r, TerminalMetrics as s, ApprovalPromptProps as t, TranscriptFont as u, useFileLinks as v, PermissionModeChoice as w, WithActions as x, CopyAction as y };
|
|
222
|
+
//# sourceMappingURL=SessionPanel-CJwp5B3q.d.mts.map
|
package/build/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as formatCost, c as formatRateLimitWindow, d as formatTokens, f as friendlyModel, i as formatBytes, l as formatRateLimitWindowLong, m as toolInputPreview, o as formatCountdown, p as rateLimitWindowSeconds, r as formatAgoPrecise, s as formatDuration, u as formatRelativeTime } from "./format-eS_oUry-.mjs";
|
|
2
|
-
import { A as ClientCommand, C as PERMISSION_MODES, D as PermissionModeSelectProps, E as PermissionModeSelect, F as skillPrompt, M as matchClientCommand, N as mergeComposerRows, O as permissionModeChoices, P as rankComposerRows, S as useAffordances, T as PermissionModeMeta, _ as FileLinkProvider, a as SessionSurfacePanel, b as TerminalAffordances, c as TranscriptDensity, d as TranscriptVariant, f as TranscriptVariantProvider, g as FileLinkOpener, h as FileLinkHandle, i as SessionPanelProps, j as ComposerRow, k as permissionModeMeta, l as TranscriptDensityProvider, m as useTranscriptVariant, n as SessionControls, o as SessionVitals, p as useTranscriptDensity, r as SessionPanel, s as TerminalMetrics, t as ApprovalPromptProps, u as TranscriptFont, v as useFileLinks, w as PermissionModeChoice, x as WithActions, y as CopyAction } from "./SessionPanel-
|
|
2
|
+
import { A as ClientCommand, C as PERMISSION_MODES, D as PermissionModeSelectProps, E as PermissionModeSelect, F as rankPeerSessions, I as skillPrompt, M as matchClientCommand, N as mergeComposerRows, O as permissionModeChoices, P as rankComposerRows, S as useAffordances, T as PermissionModeMeta, _ as FileLinkProvider, a as SessionSurfacePanel, b as TerminalAffordances, c as TranscriptDensity, d as TranscriptVariant, f as TranscriptVariantProvider, g as FileLinkOpener, h as FileLinkHandle, i as SessionPanelProps, j as ComposerRow, k as permissionModeMeta, l as TranscriptDensityProvider, m as useTranscriptVariant, n as SessionControls, o as SessionVitals, p as useTranscriptDensity, r as SessionPanel, s as TerminalMetrics, t as ApprovalPromptProps, u as TranscriptFont, v as useFileLinks, w as PermissionModeChoice, x as WithActions, y as CopyAction } from "./SessionPanel-CJwp5B3q.mjs";
|
|
3
3
|
import { ButtonHTMLAttributes, FunctionComponent, HTMLAttributes, InputHTMLAttributes, ReactElement, ReactNode, Ref, RefObject, TextareaHTMLAttributes } from "react";
|
|
4
4
|
import { VariantProps } from "class-variance-authority";
|
|
5
5
|
import { ClassValue } from "clsx";
|
|
@@ -10,8 +10,8 @@ import { Menu as Menu$1 } from "@base-ui/react/menu";
|
|
|
10
10
|
import { Dialog as Dialog$1 } from "@base-ui/react/dialog";
|
|
11
11
|
import { Tooltip } from "@base-ui/react/tooltip";
|
|
12
12
|
import { toast } from "sonner";
|
|
13
|
-
import { ByModel, ContextReading, ContextUsage, FilePatch, ModelOption, PermissionRequest, PricingTable, ProfileEngine, ProfileSpend, ProjectIcon as ProjectIcon$1, QuestionBehavior, RateLimitInfo, SessionInfo, SessionRow, SessionStatus, SessionTask, SkillInfo, SlashCommandInfo, UsageWindowRow, ViewConfig, WorkspaceScope, parseUserQuestions } from "@workerdeck/protocol";
|
|
14
|
-
import { ConnectionState, TranscriptItem, TranscriptState, UseAttachmentsResult } from "@workerdeck/react";
|
|
13
|
+
import { ByModel, ContextReading, ContextUsage, FilePatch, ModelOption, PermissionRequest, PricingTable, ProfileEngine, ProfileSpend, ProjectIcon as ProjectIcon$1, QuestionBehavior, RateLimitInfo, SessionInfo, SessionRow, SessionStatus, SessionTask, SkillInfo, SlashCommandInfo, SubagentDisplay, UsageWindowRow, ViewConfig, WorkspaceScope, parseUserQuestions } from "@workerdeck/protocol";
|
|
14
|
+
import { ConnectionState, PeerSessionOption, TranscriptItem, TranscriptState, UseAttachmentsResult } from "@workerdeck/react";
|
|
15
15
|
import { WorkerDeckClient } from "@workerdeck/client";
|
|
16
16
|
//#region src/components/ui/Button.d.ts
|
|
17
17
|
declare const buttonVariants: (props?: ({
|
|
@@ -693,6 +693,7 @@ interface TranscriptProps {
|
|
|
693
693
|
stickyPrompt?: boolean;
|
|
694
694
|
scrubber?: boolean;
|
|
695
695
|
bookmarks?: readonly string[];
|
|
696
|
+
sessionNames?: readonly string[];
|
|
696
697
|
replaying?: boolean;
|
|
697
698
|
catchUp?: {
|
|
698
699
|
from: number;
|
|
@@ -711,7 +712,7 @@ interface TranscriptProps {
|
|
|
711
712
|
emptyState?: ReactNode;
|
|
712
713
|
className?: string;
|
|
713
714
|
}
|
|
714
|
-
declare function Transcript({ state, fileUrl, attachmentUrl, canBrowseFiles, hostImage, variant, density, fontSize, lineHeight, affordances, stickyPrompt, scrubber, bookmarks, replaying, catchUp, jumpToRecapRef, repinRef, reveal, frame, onOpenSubagent, emptyState, className }: TranscriptProps): import("react").JSX.Element;
|
|
715
|
+
declare function Transcript({ state, fileUrl, attachmentUrl, canBrowseFiles, hostImage, variant, density, fontSize, lineHeight, affordances, stickyPrompt, scrubber, bookmarks, sessionNames, replaying, catchUp, jumpToRecapRef, repinRef, reveal, frame, onOpenSubagent, emptyState, className }: TranscriptProps): import("react").JSX.Element;
|
|
715
716
|
//#endregion
|
|
716
717
|
//#region src/components/terminal/surface.d.ts
|
|
717
718
|
interface TerminalSurfaceProps extends HTMLAttributes<HTMLDivElement> {
|
|
@@ -943,6 +944,7 @@ interface ComposerProps {
|
|
|
943
944
|
onSearchFiles?: (query: string, options: {
|
|
944
945
|
signal: AbortSignal;
|
|
945
946
|
}) => Promise<ComposerFileMatch[]>;
|
|
947
|
+
peers?: readonly PeerSessionOption[];
|
|
946
948
|
onShellCommand?: (command: string) => void;
|
|
947
949
|
attachments?: UseAttachmentsResult;
|
|
948
950
|
toolbar?: ReactNode;
|
|
@@ -958,7 +960,7 @@ interface ComposerProps {
|
|
|
958
960
|
className?: string;
|
|
959
961
|
ref?: Ref<ComposerHandle>;
|
|
960
962
|
}
|
|
961
|
-
declare function Composer({ onSend, onInterrupt, busy, disabled, placeholder, commands, skills, clientCommands, onSearchFiles, onShellCommand, attachments, toolbar, layout, fontSize, lineHeight, affordances, draft, className, ref }: ComposerProps): import("react").JSX.Element;
|
|
963
|
+
declare function Composer({ onSend, onInterrupt, busy, disabled, placeholder, commands, skills, clientCommands, onSearchFiles, peers, onShellCommand, attachments, toolbar, layout, fontSize, lineHeight, affordances, draft, className, ref }: ComposerProps): import("react").JSX.Element;
|
|
962
964
|
//#endregion
|
|
963
965
|
//#region src/components/agent/ModelSelect.d.ts
|
|
964
966
|
interface ModelSelectProps {
|
|
@@ -1146,8 +1148,7 @@ interface SessionItemProps {
|
|
|
1146
1148
|
showGateway?: boolean;
|
|
1147
1149
|
showProject?: boolean;
|
|
1148
1150
|
projectIcons?: Record<string, string>;
|
|
1149
|
-
|
|
1150
|
-
onExpandedChange?: (expanded: boolean) => void;
|
|
1151
|
+
subagents?: SubagentDisplay;
|
|
1151
1152
|
onSelect?: (modifiers: SelectModifiers) => void;
|
|
1152
1153
|
onSelectSubagent?: (toolUseId: string) => void;
|
|
1153
1154
|
onRename?: (title: string) => void;
|
|
@@ -1157,7 +1158,7 @@ interface SessionItemProps {
|
|
|
1157
1158
|
actions?: ReactNode;
|
|
1158
1159
|
className?: string;
|
|
1159
1160
|
}
|
|
1160
|
-
declare function SessionItem({ row, active, activeStepKey, showGateway, showProject, projectIcons,
|
|
1161
|
+
declare function SessionItem({ row, active, activeStepKey, showGateway, showProject, projectIcons, subagents, onSelect, onSelectSubagent, onRename, renameOn, editing, onEditingChange, actions, className }: SessionItemProps): import("react").JSX.Element;
|
|
1161
1162
|
//#endregion
|
|
1162
1163
|
//#region src/components/agent/EngineIcon.d.ts
|
|
1163
1164
|
declare function engineMark(engine: string, model?: string): string | undefined;
|
|
@@ -1179,21 +1180,30 @@ type Step = {
|
|
|
1179
1180
|
title: string;
|
|
1180
1181
|
onSelect: () => void;
|
|
1181
1182
|
};
|
|
1182
|
-
declare function sessionSteps(info: SessionInfo, onSelect: (toolUseId: string) => void): Step[];
|
|
1183
|
-
declare function runningSteps(steps: readonly Step[]): number;
|
|
1184
|
-
declare function StepToggle({ expanded, running, total, noun, onToggle }: {
|
|
1185
|
-
expanded: boolean;
|
|
1186
|
-
running: number;
|
|
1187
|
-
total: number;
|
|
1188
|
-
noun: string;
|
|
1189
|
-
onToggle: () => void;
|
|
1190
|
-
}): import("react").JSX.Element;
|
|
1183
|
+
declare function sessionSteps(info: SessionInfo, onSelect: (toolUseId: string) => void, show?: SubagentDisplay): Step[];
|
|
1191
1184
|
declare function StepRow({ step, active, onSelect }: {
|
|
1192
1185
|
step: Step;
|
|
1193
1186
|
active?: boolean;
|
|
1194
1187
|
onSelect: () => void;
|
|
1195
1188
|
}): import("react").JSX.Element;
|
|
1196
1189
|
//#endregion
|
|
1190
|
+
//#region src/components/agent/SubagentToggle.d.ts
|
|
1191
|
+
declare const SUBAGENT_DISPLAY_ORDER: readonly SubagentDisplay[];
|
|
1192
|
+
declare const SUBAGENT_DISPLAY_META: Record<SubagentDisplay, {
|
|
1193
|
+
label: string;
|
|
1194
|
+
hint: string;
|
|
1195
|
+
}>;
|
|
1196
|
+
declare function SubagentDisplayIcon({ value, className }: {
|
|
1197
|
+
value: SubagentDisplay;
|
|
1198
|
+
className?: string;
|
|
1199
|
+
}): import("react").JSX.Element;
|
|
1200
|
+
type SubagentToggleProps = {
|
|
1201
|
+
value: SubagentDisplay;
|
|
1202
|
+
onChange: (value: SubagentDisplay) => void;
|
|
1203
|
+
className?: string;
|
|
1204
|
+
};
|
|
1205
|
+
declare function SubagentToggle({ value, onChange, className }: SubagentToggleProps): import("react").JSX.Element;
|
|
1206
|
+
//#endregion
|
|
1197
1207
|
//#region src/components/agent/SubagentStrip.d.ts
|
|
1198
1208
|
declare function SubagentStrip({ task, items, label, onBack, terminal, fontSize, lineHeight }: {
|
|
1199
1209
|
task: ToolCallItem$1 | undefined;
|
|
@@ -1224,6 +1234,14 @@ interface SessionEmptyStateProps {
|
|
|
1224
1234
|
declare function SessionEmptyState({ cwd, hasCommands, hasSkills, canBrowseFiles, className }: SessionEmptyStateProps): import("react").JSX.Element;
|
|
1225
1235
|
//#endregion
|
|
1226
1236
|
//#region src/components/agent/PromptTokenText.d.ts
|
|
1237
|
+
declare function SkillNamesProvider({ names, children }: {
|
|
1238
|
+
names: readonly string[] | undefined;
|
|
1239
|
+
children: ReactNode;
|
|
1240
|
+
}): import("react").JSX.Element;
|
|
1241
|
+
declare function SessionNamesProvider({ names, children }: {
|
|
1242
|
+
names: readonly string[] | undefined;
|
|
1243
|
+
children: ReactNode;
|
|
1244
|
+
}): import("react").JSX.Element;
|
|
1227
1245
|
declare function PromptTokenText({ text, className }: {
|
|
1228
1246
|
text: string;
|
|
1229
1247
|
className?: string;
|
|
@@ -1254,5 +1272,5 @@ declare function copyText(value: string): Promise<boolean>;
|
|
|
1254
1272
|
declare function toolIcon(toolName: string): LucideIcon;
|
|
1255
1273
|
declare function isMutatingTool(toolName: string): boolean;
|
|
1256
1274
|
//#endregion
|
|
1257
|
-
export { AlertDialog, AlertDialogClose, AlertDialogContent, AlertDialogDescription, AlertDialogTitle, AlertDialogTrigger, type ApprovalPromptProps, Badge, type BadgeProps, Band, Blank, Button, type ButtonProps, Card, CardContent, CardHeader, CardTitle, type ChipSegment, type ClientCommand, CodeBlock, type CodeBlockProps, Composer, type ComposerFileMatch, type ComposerHandle, type ComposerProps, type ComposerRow, ContextDialog, type ContextDialogProps, ContextRing, Conversation, ConversationContent, type ConversationProps, ConversationScrollButton, CopyAction, CopyButton, type CopyButtonProps, Dialog, DialogBody, DialogClose, DialogContent, DialogHeader, DialogRow, DialogTrigger, Empty, EmptyKey, EngineIcon, FileCard, type FileCardProps, type FileDeliveredItem, type FileLink, type FileLinkHandle, type FileLinkOpener, FileLinkProvider, HostFilesDialog, type HostFilesDialogProps, Ink, Input, Loader, McpDialog, type McpDialogProps, Menu, MenuContent, MenuItem, MenuSeparator, MenuTrigger, Message, MessageContent, type MessageProps, ModelSelect, type ModelSelectProps, PERMISSION_MODES, type PathHit, type PathMatch, type PermissionModeChoice, type PermissionModeMeta, PermissionModeSelect, type PermissionModeSelectProps, PermissionPrompt, type PermissionPromptProps, ProgressRing, type ProgressRingProps, ProjectIcon, PromptArea, type PromptAreaHandle, type PromptAreaProps, PromptTokenText, QUESTION_BEHAVIORS, type QuestionBehaviorMeta, QuestionPrompt, type QuestionPromptProps, Reasoning, type ReasoningProps, Response, type ResponseProps, Row, type RowProps, STATUS_META, type Segment, Select, SelectContent, SelectItem, SelectItemText, type SelectModifiers, SelectTrigger, SelectValue, SessionBrowser, type SessionBrowserProps, type SessionControls, SessionEmptyState, type SessionEmptyStateProps, SessionInfoDialog, type SessionInfoDialogProps, SessionItem, type SessionItemProps, SessionList, SessionListItem, type SessionListItemProps, type SessionListProps, SessionPanel, type SessionPanelProps, SessionStatusIcon, type SessionSurfacePanel, type SessionVitals, SkillsDialog, type SkillsDialogProps, Spinner, Splitter, type SplitterProps, StatusBar, type StatusBarProps, type Step, StepRow,
|
|
1275
|
+
export { AlertDialog, AlertDialogClose, AlertDialogContent, AlertDialogDescription, AlertDialogTitle, AlertDialogTrigger, type ApprovalPromptProps, Badge, type BadgeProps, Band, Blank, Button, type ButtonProps, Card, CardContent, CardHeader, CardTitle, type ChipSegment, type ClientCommand, CodeBlock, type CodeBlockProps, Composer, type ComposerFileMatch, type ComposerHandle, type ComposerProps, type ComposerRow, ContextDialog, type ContextDialogProps, ContextRing, Conversation, ConversationContent, type ConversationProps, ConversationScrollButton, CopyAction, CopyButton, type CopyButtonProps, Dialog, DialogBody, DialogClose, DialogContent, DialogHeader, DialogRow, DialogTrigger, Empty, EmptyKey, EngineIcon, FileCard, type FileCardProps, type FileDeliveredItem, type FileLink, type FileLinkHandle, type FileLinkOpener, FileLinkProvider, HostFilesDialog, type HostFilesDialogProps, Ink, Input, Loader, McpDialog, type McpDialogProps, Menu, MenuContent, MenuItem, MenuSeparator, MenuTrigger, Message, MessageContent, type MessageProps, ModelSelect, type ModelSelectProps, PERMISSION_MODES, type PathHit, type PathMatch, type PermissionModeChoice, type PermissionModeMeta, PermissionModeSelect, type PermissionModeSelectProps, PermissionPrompt, type PermissionPromptProps, ProgressRing, type ProgressRingProps, ProjectIcon, PromptArea, type PromptAreaHandle, type PromptAreaProps, PromptTokenText, QUESTION_BEHAVIORS, type QuestionBehaviorMeta, QuestionPrompt, type QuestionPromptProps, Reasoning, type ReasoningProps, Response, type ResponseProps, Row, type RowProps, STATUS_META, SUBAGENT_DISPLAY_META, SUBAGENT_DISPLAY_ORDER, type Segment, Select, SelectContent, SelectItem, SelectItemText, type SelectModifiers, SelectTrigger, SelectValue, SessionBrowser, type SessionBrowserProps, type SessionControls, SessionEmptyState, type SessionEmptyStateProps, SessionInfoDialog, type SessionInfoDialogProps, SessionItem, type SessionItemProps, SessionList, SessionListItem, type SessionListItemProps, type SessionListProps, SessionNamesProvider, SessionPanel, type SessionPanelProps, SessionStatusIcon, type SessionSurfacePanel, type SessionVitals, SkillNamesProvider, SkillsDialog, type SkillsDialogProps, Spinner, Splitter, type SplitterProps, StatusBar, type StatusBarProps, type Step, StepRow, SubagentDisplayIcon, SubagentStrip, SubagentToggle, type SubagentToggleProps, TaskList, type TaskListProps, TasksDialog, type TasksDialogProps, type TerminalAffordances, TerminalDiff, TerminalItemView, TerminalMarkdown, type TerminalMarkdownProps, type TerminalMetrics, TerminalPermissionPrompt, type TerminalPermissionPromptProps, TerminalQuestionPrompt, type TerminalQuestionPromptProps, TerminalStatusLine, type TerminalStatusLineProps, TerminalSurface, type TerminalSurfaceProps, TerminalTranscript, type TerminalTranscriptProps, type TextSegment, Textarea, Tip, Toaster, type Tone, ToolCallCard, type ToolCallCardProps, type ToolCallItem, ToolTitleProvider, TooltipContent, TooltipProvider, Transcript, type TranscriptDensity, TranscriptDensityProvider, type TranscriptFont, type TranscriptProps, type TranscriptVariant, TranscriptVariantProvider, type TriggerConfig, type TriggerSuggestion, UsageDialog, type UsageDialogProps, UsageMeters, WithActions, badgeVariants, buttonVariants, cn, commandTrigger, copyText, engineMark, formatAgoPrecise, formatBytes, formatCost, formatCountdown, formatDuration, formatRateLimitWindow, formatRateLimitWindowLong, formatRelativeTime, formatTokens, friendlyModel, getChipsByTrigger, hashtagTrigger, isMutatingTool, isSegmentsEmpty, launchTrigger, matchClientCommand, matchPath, mentionTrigger, mergeComposerRows, parseFileLink, parseUserQuestions, permissionModeChoices, permissionModeMeta, plainTextToSegments, previewPatch, rankComposerRows, rankPeerSessions, rateLimitWindowSeconds, resolveAgainstCwd, rowShapeClass, segmentsToPlainText, sessionSteps, skillPrompt, toast, toolIcon, toolInputPreview, useAffordances, useFileLinks, useMinuteClock, usePathLinks, usePromptAreaState, useToolTitle, useTranscriptDensity, useTranscriptVariant, vendorMarkClass, vendorTextClass };
|
|
1258
1276
|
//# sourceMappingURL=index.d.mts.map
|
package/build/index.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { $ as TerminalDiff, $t as
|
|
1
|
+
import { $ as TerminalDiff, $t as SelectItem, A as PermissionPrompt, At as ProgressRing, Bt as DialogBody, C as SessionInfoDialog, Ct as hashtagTrigger, D as QuestionPrompt, Dt as PromptArea, E as QUESTION_BEHAVIORS, Et as usePromptAreaState, F as permissionModeMeta, Ft as copyText, G as Composer, Gt as DialogTrigger, H as TaskList, Ht as DialogContent, I as ModelSelect, It as Tip, J as useToolTitle, Jt as MenuItem, K as TerminalSurface, Kt as Menu, L as SkillsDialog, Lt as TooltipContent, M as PERMISSION_MODES, Mt as CodeBlock, N as PermissionModeSelect, Nt as Spinner, O as parseUserQuestions, Ot as plainTextToSegments, P as permissionModeChoices, Pt as CopyButton, Q as parseFileLink, Qt as SelectContent, R as McpDialog, Rt as TooltipProvider, S as STATUS_META, St as commandTrigger, T as TerminalPermissionPrompt, Tt as mentionTrigger, U as ContextDialog, Ut as DialogHeader, V as TasksDialog, Vt as DialogClose, W as contextNote, Wt as DialogRow, X as FileLinkProvider, Xt as MenuTrigger, Y as TerminalMarkdown, Yt as MenuSeparator, Z as useFileLinks, Zt as Select, _ as Loader, _t as matchClientCommand, a as UsageDialog, an as Input, at as CopyAction, b as ConversationScrollButton, bt as rankPeerSessions, c as Transcript, cn as Button, ct as PromptTokenText, d as Message, dt as isMutatingTool, en as SelectItemText, et as previewPatch, f as MessageContent, ft as toolIcon, g as SessionEmptyState, gt as useTranscriptVariant, h as TerminalTranscript, ht as useTranscriptDensity, i as SessionPanel, in as Textarea, it as Row, j as Response, jt as Splitter, k as SubagentStrip, kt as segmentsToPlainText, l as ToolCallCard, ln as buttonVariants, lt as SessionNamesProvider, m as TerminalItemView, mt as TranscriptVariantProvider, n as usePathLinks, nn as SelectValue, nt as Blank, o as UsageMeters, on as Badge, ot as WithActions, p as FileCard, pt as TranscriptDensityProvider, q as ToolTitleProvider, qt as MenuContent, r as matchPath, rn as PortalScope, rt as Ink, s as useMinuteClock, sn as badgeVariants, st as useAffordances, t as resolveAgainstCwd, tn as SelectTrigger, tt as Band, u as Reasoning, un as cn, ut as SkillNamesProvider, v as Conversation, vt as mergeComposerRows, w as TerminalQuestionPrompt, wt as launchTrigger, x as StatusBar, xt as skillPrompt, y as ConversationContent, yt as rankComposerRows, z as HostFilesDialog, zt as Dialog } from "./use-path-links-CepFsMdW.mjs";
|
|
2
2
|
import { C as rateLimitWindowSeconds, S as friendlyModel, _ as formatDuration, b as formatRelativeTime, c as tightestWindow, g as formatCountdown, h as formatCost, i as meterSeverity, m as formatBytes, o as modelLabel, p as formatAgoPrecise, r as meterColorClass, s as statusPresentation, t as contextSeverity, u as windowLabel, v as formatRateLimitWindow, w as toolInputPreview, x as formatTokens, y as formatRateLimitWindowLong } from "./status-kmsBhuFG.mjs";
|
|
3
3
|
import { Fragment, useEffect, useMemo, useRef, useState } from "react";
|
|
4
4
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
import { Anchor, ArrowRight, Atom, Beaker, BellRing, Bike, Binary, Blocks, Bot, Box, Brain, Briefcase, Brush, Bug, Building2, Cable, Camera, Car, Cat, Check, ChevronDown,
|
|
5
|
+
import { Anchor, ArrowRight, Atom, Beaker, BellRing, Bike, Binary, Blocks, Bot, Box, Brain, Briefcase, Brush, Bug, Building2, Cable, Camera, Car, Cat, Check, ChevronDown, CircleAlert, CircleSlash, CircuitBoard, Cloud, Code, Coffee, Cog, Compass, Container, Cpu, CreditCard, Database, Diamond, Dog, Eraser, Feather, Film, Flame, FlaskConical, Folder, Gamepad2, Gauge, Gem, Ghost, Gift, GitBranch, Globe, GraduationCap, Hammer, Hexagon, House, Image, Key, Landmark, Laptop, Layers, Leaf, Library, Lightbulb, Lock, Mail, Map as Map$1, MessageCircle, Mic, Monitor, Moon, Mountain, Music, Network, Newspaper, Notebook, Orbit, Package, Palette, PauseCircle, PenTool, Pencil, Phone, PiggyBank, Plane, Plug, Puzzle, Radar, Radio, Receipt, Rocket, Ruler, Satellite, Scale, Scissors, Search, SearchX, Server, Shield, Ship, ShoppingCart, Signal, Smartphone, Sparkles, Sprout, Square, Star, Sun, Table, Tag, Target, Telescope, Terminal, TestTube, Trash2, TreePine, Trophy, Truck, Umbrella, Users, Wallet, Wand, Waves, Webhook, Wifi, Wrench, X, Zap } from "lucide-react";
|
|
6
6
|
import { AlertDialog as AlertDialog$1 } from "@base-ui/react/alert-dialog";
|
|
7
7
|
import { Toaster as Toaster$1, toast } from "sonner";
|
|
8
|
-
import { STATE_LABELS, STATE_ORDER, adaptersOf, clearFilters, filterRows, groupRows, hasFacetFilter, isAgentRecord, projectLabel, projectName, projectSubpath, projectsOf, sessionLabel, subagentLabel, subsetSummary } from "@workerdeck/protocol";
|
|
8
|
+
import { STATE_LABELS, STATE_ORDER, adaptersOf, clearFilters, filterRows, groupRows, hasFacetFilter, isAgentRecord, projectLabel, projectName, projectSubpath, projectsOf, sessionLabel, subagentLabel, subsetSummary, visibleSubagents } from "@workerdeck/protocol";
|
|
9
9
|
//#region src/components/ui/Card.tsx
|
|
10
10
|
function Card({ className, ...props }) {
|
|
11
11
|
return /* @__PURE__ */ jsx("div", {
|
|
@@ -513,8 +513,8 @@ function SessionStatusIcon({ row, className }) {
|
|
|
513
513
|
}
|
|
514
514
|
//#endregion
|
|
515
515
|
//#region src/components/agent/SessionSteps.tsx
|
|
516
|
-
function sessionSteps(info, onSelect) {
|
|
517
|
-
return (info
|
|
516
|
+
function sessionSteps(info, onSelect, show = "all") {
|
|
517
|
+
return visibleSubagents(info, show).filter(isAgentRecord).map((sub) => ({
|
|
518
518
|
key: sub.toolUseId,
|
|
519
519
|
label: subagentLabel(sub),
|
|
520
520
|
noun: "agent",
|
|
@@ -531,29 +531,6 @@ function stepState(status) {
|
|
|
531
531
|
default: return "done";
|
|
532
532
|
}
|
|
533
533
|
}
|
|
534
|
-
function runningSteps(steps) {
|
|
535
|
-
return steps.filter((s) => s.state === "running").length;
|
|
536
|
-
}
|
|
537
|
-
function StepToggle({ expanded, running, total, noun, onToggle }) {
|
|
538
|
-
const label = running > 0 && running < total ? `${running}/${total}` : String(total);
|
|
539
|
-
const words = running > 0 && running < total ? `${running} of ${total} ${noun}s running` : `${total} ${noun}${total === 1 ? "" : "s"}`;
|
|
540
|
-
const Chevron = expanded ? ChevronDown : ChevronRight;
|
|
541
|
-
return /* @__PURE__ */ jsxs("button", {
|
|
542
|
-
type: "button",
|
|
543
|
-
"aria-expanded": expanded,
|
|
544
|
-
"aria-label": `${expanded ? "Hide" : "Show"} ${words}`,
|
|
545
|
-
title: `${expanded ? "Hide" : "Show"} ${words}`,
|
|
546
|
-
onClick: (e) => {
|
|
547
|
-
e.stopPropagation();
|
|
548
|
-
onToggle();
|
|
549
|
-
},
|
|
550
|
-
className: cn("flex shrink-0 items-center gap-0.5 rounded-[4px] py-0.5 pr-1 pl-0.5 outline-none", "text-[0.75rem] leading-3 hover:bg-row-hover hover:text-fg-2", running > 0 ? "text-info" : "text-fg-4"),
|
|
551
|
-
children: [/* @__PURE__ */ jsx(Chevron, { className: "size-3" }), /* @__PURE__ */ jsx("span", {
|
|
552
|
-
className: "tabular-nums",
|
|
553
|
-
children: label
|
|
554
|
-
})]
|
|
555
|
-
});
|
|
556
|
-
}
|
|
557
534
|
function StepRow({ step, active = false, onSelect }) {
|
|
558
535
|
const body = step.state === "failed" ? "text-danger" : "text-success";
|
|
559
536
|
return /* @__PURE__ */ jsxs("button", {
|
|
@@ -593,14 +570,8 @@ const NO_MODIFIERS = {
|
|
|
593
570
|
ctrl: false,
|
|
594
571
|
alt: false
|
|
595
572
|
};
|
|
596
|
-
function SessionItem({ row, active = false, activeStepKey, showGateway, showProject = true, projectIcons,
|
|
573
|
+
function SessionItem({ row, active = false, activeStepKey, showGateway, showProject = true, projectIcons, subagents = "active", onSelect, onSelectSubagent, onRename, renameOn = "doubleClick", editing, onEditingChange, actions, className }) {
|
|
597
574
|
const { info } = row;
|
|
598
|
-
const [ownExpanded, setOwnExpanded] = useState(false);
|
|
599
|
-
const open = expanded ?? ownExpanded;
|
|
600
|
-
const setOpen = (next) => {
|
|
601
|
-
setOwnExpanded(next);
|
|
602
|
-
onExpandedChange?.(next);
|
|
603
|
-
};
|
|
604
575
|
const [ownEditing, setOwnEditing] = useState(false);
|
|
605
576
|
const isEditing = editing ?? ownEditing;
|
|
606
577
|
const setEditing = (next) => {
|
|
@@ -634,7 +605,7 @@ function SessionItem({ row, active = false, activeStepKey, showGateway, showProj
|
|
|
634
605
|
}), project]
|
|
635
606
|
}, "project"));
|
|
636
607
|
for (const extra of extras) parts.push(/* @__PURE__ */ jsx("span", { children: extra }, extra));
|
|
637
|
-
const steps = sessionSteps(info, (toolUseId) => onSelectSubagent ? onSelectSubagent(toolUseId) : onSelect?.(NO_MODIFIERS));
|
|
608
|
+
const steps = sessionSteps(info, (toolUseId) => onSelectSubagent ? onSelectSubagent(toolUseId) : onSelect?.(NO_MODIFIERS), subagents);
|
|
638
609
|
const holdsOpenAgent = steps.some((s) => s.key === activeStepKey);
|
|
639
610
|
return /* @__PURE__ */ jsxs("div", {
|
|
640
611
|
"data-slot": "session-item",
|
|
@@ -711,17 +682,10 @@ function SessionItem({ row, active = false, activeStepKey, showGateway, showProj
|
|
|
711
682
|
children: [parts.length > 0 ? "· " : "", formatRelativeTime(info.lastActivityAt ?? info.createdAt)]
|
|
712
683
|
}),
|
|
713
684
|
/* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1" }),
|
|
714
|
-
steps.length > 0 ? /* @__PURE__ */ jsx(StepToggle, {
|
|
715
|
-
expanded: open,
|
|
716
|
-
running: runningSteps(steps),
|
|
717
|
-
total: steps.length,
|
|
718
|
-
noun: steps[0].noun,
|
|
719
|
-
onToggle: () => setOpen(!open)
|
|
720
|
-
}) : null,
|
|
721
685
|
actions
|
|
722
686
|
]
|
|
723
687
|
})]
|
|
724
|
-
}),
|
|
688
|
+
}), steps.length > 0 ? /* @__PURE__ */ jsx("div", {
|
|
725
689
|
className: "flex flex-col",
|
|
726
690
|
children: steps.map((step) => /* @__PURE__ */ jsx(StepRow, {
|
|
727
691
|
step,
|
|
@@ -894,6 +858,28 @@ function SessionBrowser({ rows, config, onConfigChange, scope, activeId, activeS
|
|
|
894
858
|
onChange: (groupBy) => set({ groupBy })
|
|
895
859
|
})
|
|
896
860
|
}),
|
|
861
|
+
/* @__PURE__ */ jsx(FilterRow, {
|
|
862
|
+
label: "Sub-agents",
|
|
863
|
+
children: /* @__PURE__ */ jsx(OneOfSelect, {
|
|
864
|
+
label: "Sub-agents",
|
|
865
|
+
value: config.subagents,
|
|
866
|
+
options: [
|
|
867
|
+
{
|
|
868
|
+
value: "active",
|
|
869
|
+
label: "Hide completed"
|
|
870
|
+
},
|
|
871
|
+
{
|
|
872
|
+
value: "all",
|
|
873
|
+
label: "Show all"
|
|
874
|
+
},
|
|
875
|
+
{
|
|
876
|
+
value: "none",
|
|
877
|
+
label: "Hide all"
|
|
878
|
+
}
|
|
879
|
+
],
|
|
880
|
+
onChange: (subagents) => set({ subagents })
|
|
881
|
+
})
|
|
882
|
+
}),
|
|
897
883
|
/* @__PURE__ */ jsx(FilterRow, {
|
|
898
884
|
label: "Sort",
|
|
899
885
|
children: /* @__PURE__ */ jsx(OneOfSelect, {
|
|
@@ -980,6 +966,7 @@ function SessionBrowser({ rows, config, onConfigChange, scope, activeId, activeS
|
|
|
980
966
|
activeSubagentId,
|
|
981
967
|
showGateway: gateways.length > 1 && config.groupBy !== "gateway",
|
|
982
968
|
showProject: config.groupBy !== "project",
|
|
969
|
+
subagents: config.subagents,
|
|
983
970
|
projectIcons,
|
|
984
971
|
onSelect,
|
|
985
972
|
onDelete,
|
|
@@ -996,7 +983,7 @@ function iconSrcOf(row, icons) {
|
|
|
996
983
|
const icon = row?.info.project?.icon;
|
|
997
984
|
return icon?.type === "image" ? icons?.[icon.hash] : void 0;
|
|
998
985
|
}
|
|
999
|
-
function SessionRowItem({ row, active, activeSubagentId, showGateway, showProject = true, projectIcons, onSelect, onDelete, onRename, onClearContext, onSelectSubagent }) {
|
|
986
|
+
function SessionRowItem({ row, active, activeSubagentId, showGateway, showProject = true, subagents, projectIcons, onSelect, onDelete, onRename, onClearContext, onSelectSubagent }) {
|
|
1000
987
|
const { info } = row;
|
|
1001
988
|
const [editing, setEditing] = useState(false);
|
|
1002
989
|
return /* @__PURE__ */ jsx(SessionItem, {
|
|
@@ -1005,6 +992,7 @@ function SessionRowItem({ row, active, activeSubagentId, showGateway, showProjec
|
|
|
1005
992
|
activeStepKey: activeSubagentId,
|
|
1006
993
|
showGateway,
|
|
1007
994
|
showProject,
|
|
995
|
+
subagents,
|
|
1008
996
|
projectIcons,
|
|
1009
997
|
onSelect: () => onSelect?.(row),
|
|
1010
998
|
onSelectSubagent: onSelectSubagent ? (id) => onSelectSubagent(row, id) : void 0,
|
|
@@ -1098,6 +1086,81 @@ function OneOfSelect({ label, value, options, onChange }) {
|
|
|
1098
1086
|
});
|
|
1099
1087
|
}
|
|
1100
1088
|
//#endregion
|
|
1101
|
-
|
|
1089
|
+
//#region src/components/agent/SubagentToggle.tsx
|
|
1090
|
+
const SUBAGENT_DISPLAY_ORDER = [
|
|
1091
|
+
"all",
|
|
1092
|
+
"active",
|
|
1093
|
+
"none"
|
|
1094
|
+
];
|
|
1095
|
+
const SUBAGENT_DISPLAY_META = {
|
|
1096
|
+
all: {
|
|
1097
|
+
label: "All sub-agents",
|
|
1098
|
+
hint: "Showing every sub-agent"
|
|
1099
|
+
},
|
|
1100
|
+
active: {
|
|
1101
|
+
label: "Hide completed",
|
|
1102
|
+
hint: "Showing running and failed sub-agents"
|
|
1103
|
+
},
|
|
1104
|
+
none: {
|
|
1105
|
+
label: "Hide sub-agents",
|
|
1106
|
+
hint: "Sub-agents hidden"
|
|
1107
|
+
}
|
|
1108
|
+
};
|
|
1109
|
+
const HIDDEN_ROW = .34;
|
|
1110
|
+
function SubagentDisplayIcon({ value, className }) {
|
|
1111
|
+
return /* @__PURE__ */ jsxs("svg", {
|
|
1112
|
+
viewBox: "0 0 24 24",
|
|
1113
|
+
fill: "none",
|
|
1114
|
+
stroke: "currentColor",
|
|
1115
|
+
strokeWidth: 2,
|
|
1116
|
+
strokeLinecap: "round",
|
|
1117
|
+
strokeLinejoin: "round",
|
|
1118
|
+
"aria-hidden": "true",
|
|
1119
|
+
className,
|
|
1120
|
+
children: [
|
|
1121
|
+
/* @__PURE__ */ jsx("path", { d: "M3 5h18" }),
|
|
1122
|
+
/* @__PURE__ */ jsx("path", {
|
|
1123
|
+
d: "M9 12h12",
|
|
1124
|
+
opacity: value === "none" ? HIDDEN_ROW : 1
|
|
1125
|
+
}),
|
|
1126
|
+
/* @__PURE__ */ jsx("path", {
|
|
1127
|
+
d: "M9 19h12",
|
|
1128
|
+
opacity: value === "all" ? 1 : HIDDEN_ROW
|
|
1129
|
+
})
|
|
1130
|
+
]
|
|
1131
|
+
});
|
|
1132
|
+
}
|
|
1133
|
+
function SubagentToggle({ value, onChange, className }) {
|
|
1134
|
+
const meta = SUBAGENT_DISPLAY_META[value];
|
|
1135
|
+
return /* @__PURE__ */ jsxs(Menu, { children: [/* @__PURE__ */ jsx(MenuTrigger, { render: /* @__PURE__ */ jsxs(Button, {
|
|
1136
|
+
variant: "ghost",
|
|
1137
|
+
size: "icon-sm",
|
|
1138
|
+
"aria-label": `Sub-agents: ${meta.label}`,
|
|
1139
|
+
title: meta.hint,
|
|
1140
|
+
className: cn("w-9 gap-0.5", className),
|
|
1141
|
+
children: [/* @__PURE__ */ jsx(SubagentDisplayIcon, {
|
|
1142
|
+
value,
|
|
1143
|
+
className: "size-4"
|
|
1144
|
+
}), /* @__PURE__ */ jsx(ChevronDown, { className: "size-2.5 text-fg-4" })]
|
|
1145
|
+
}) }), /* @__PURE__ */ jsx(MenuContent, {
|
|
1146
|
+
className: "min-w-44",
|
|
1147
|
+
children: SUBAGENT_DISPLAY_ORDER.map((option) => /* @__PURE__ */ jsxs(MenuItem, {
|
|
1148
|
+
onClick: () => onChange(option),
|
|
1149
|
+
children: [
|
|
1150
|
+
/* @__PURE__ */ jsx(SubagentDisplayIcon, {
|
|
1151
|
+
value: option,
|
|
1152
|
+
className: "size-4 shrink-0 text-fg-3"
|
|
1153
|
+
}),
|
|
1154
|
+
/* @__PURE__ */ jsx("span", {
|
|
1155
|
+
className: "flex-1",
|
|
1156
|
+
children: SUBAGENT_DISPLAY_META[option].label
|
|
1157
|
+
}),
|
|
1158
|
+
option === value ? /* @__PURE__ */ jsx(Check, { className: "size-3.5 shrink-0 text-accent" }) : null
|
|
1159
|
+
]
|
|
1160
|
+
}, option))
|
|
1161
|
+
})] });
|
|
1162
|
+
}
|
|
1163
|
+
//#endregion
|
|
1164
|
+
export { AlertDialog, AlertDialogClose, AlertDialogContent, AlertDialogDescription, AlertDialogTitle, AlertDialogTrigger, Badge, Band, Blank, Button, Card, CardContent, CardHeader, CardTitle, CodeBlock, Composer, ContextDialog, ContextRing, Conversation, ConversationContent, ConversationScrollButton, CopyAction, CopyButton, Dialog, DialogBody, DialogClose, DialogContent, DialogHeader, DialogRow, DialogTrigger, Empty, EmptyKey, EngineIcon, FileCard, FileLinkProvider, HostFilesDialog, Ink, Input, Loader, McpDialog, Menu, MenuContent, MenuItem, MenuSeparator, MenuTrigger, Message, MessageContent, ModelSelect, PERMISSION_MODES, PermissionModeSelect, PermissionPrompt, ProgressRing, ProjectIcon, PromptArea, PromptTokenText, QUESTION_BEHAVIORS, QuestionPrompt, Reasoning, Response, Row, STATUS_META, SUBAGENT_DISPLAY_META, SUBAGENT_DISPLAY_ORDER, Select, SelectContent, SelectItem, SelectItemText, SelectTrigger, SelectValue, SessionBrowser, SessionEmptyState, SessionInfoDialog, SessionItem, SessionList, SessionListItem, SessionNamesProvider, SessionPanel, SessionStatusIcon, SkillNamesProvider, SkillsDialog, Spinner, Splitter, StatusBar, StepRow, SubagentDisplayIcon, SubagentStrip, SubagentToggle, TaskList, TasksDialog, TerminalDiff, TerminalItemView, TerminalMarkdown, TerminalPermissionPrompt, TerminalQuestionPrompt, TerminalStatusLine, TerminalSurface, TerminalTranscript, Textarea, Tip, Toaster, ToolCallCard, ToolTitleProvider, TooltipContent, TooltipProvider, Transcript, TranscriptDensityProvider, TranscriptVariantProvider, UsageDialog, UsageMeters, WithActions, badgeVariants, buttonVariants, cn, commandTrigger, copyText, engineMark, formatAgoPrecise, formatBytes, formatCost, formatCountdown, formatDuration, formatRateLimitWindow, formatRateLimitWindowLong, formatRelativeTime, formatTokens, friendlyModel, getChipsByTrigger, hashtagTrigger, isMutatingTool, isSegmentsEmpty, launchTrigger, matchClientCommand, matchPath, mentionTrigger, mergeComposerRows, parseFileLink, parseUserQuestions, permissionModeChoices, permissionModeMeta, plainTextToSegments, previewPatch, rankComposerRows, rankPeerSessions, rateLimitWindowSeconds, resolveAgainstCwd, rowShapeClass, segmentsToPlainText, sessionSteps, skillPrompt, toast, toolIcon, toolInputPreview, useAffordances, useFileLinks, useMinuteClock, usePathLinks, usePromptAreaState, useToolTitle, useTranscriptDensity, useTranscriptVariant, vendorMarkClass, vendorTextClass };
|
|
1102
1165
|
|
|
1103
1166
|
//# sourceMappingURL=index.mjs.map
|