@mcp-b/react-components 0.40.0 → 0.41.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/dist/{AgentChat-CVO7xyLC.d.ts → AgentChat-DVr2giwD.d.ts} +1 -1
- package/dist/{AgentToolRunsContext-BCVqCtJ1.d.ts → AgentToolRunsContext-daY67hFM.d.ts} +12 -0
- package/dist/AppTopBar-ZdgmB_Lu.d.ts +97 -0
- package/dist/{CodeBlock-CWk1FVtm.js → CodeBlock-BjELA-_s.js} +1 -1
- package/dist/{FileTree-xqHYBw4g.js → FileTree-DMYRdT6R.js} +1 -1
- package/dist/McpConnectorForm-MRm1r59e.d.ts +39 -0
- package/dist/{Message-DBsHHhcM.d.ts → Message-D_vCVEGB.d.ts} +20 -1
- package/dist/{ThinkChatActivity-D6-_5Phw.d.ts → ThinkChatActivity-DyGHj01E.d.ts} +1 -1
- package/dist/{ThinkExecutionRun-lYYgyeE1.d.ts → ThinkExecutionRun-k8bpyXqt.d.ts} +3 -3
- package/dist/{ToggleGroup-_pQMyHGM.d.ts → ToggleGroup-BrQZOQn_.d.ts} +1 -1
- package/dist/Toolbar-CBOseBQr.d.ts +152 -0
- package/dist/{WorkspaceFileView-Lab3om3F.js → WorkspaceFileView-D0yFwoDr.js} +2 -2
- package/dist/{WorkspaceMessageResponse-Cy28WGSz.d.ts → WorkspaceMessageResponse-D66ty4FO.d.ts} +1 -1
- package/dist/components/agents-sdk/AgentActivity.js +1 -1
- package/dist/components/agents-sdk/AgentChat.d.ts +1 -1
- package/dist/components/agents-sdk/AgentChat.js +41 -18
- package/dist/components/agents-sdk/AgentToolRunsContext.d.ts +1 -1
- package/dist/components/agents-sdk/AgentToolRunsContext.js +12 -0
- package/dist/components/agents-sdk/BrowserLiveScreen.d.ts +135 -0
- package/dist/components/agents-sdk/BrowserLiveScreen.js +637 -0
- package/dist/components/agents-sdk/BrowserLiveView.d.ts +2 -2
- package/dist/components/agents-sdk/BrowserLiveView.js +6 -9
- package/dist/components/agents-sdk/BrowserReplay.js +1 -1
- package/dist/components/agents-sdk/BrowserRunPanel.d.ts +1 -1
- package/dist/components/agents-sdk/BrowserRunPanel.js +6 -12
- package/dist/components/agents-sdk/ManagerOffice.d.ts +156 -0
- package/dist/components/agents-sdk/ManagerOffice.js +662 -0
- package/dist/components/agents-sdk/McpConnectionRequest.js +3 -3
- package/dist/components/agents-sdk/McpConnectorForm.d.ts +1 -38
- package/dist/components/agents-sdk/McpPluginCatalog.d.ts +8 -2
- package/dist/components/agents-sdk/McpPluginCatalog.js +80 -62
- package/dist/components/agents-sdk/McpServerPicker.d.ts +1 -1
- package/dist/components/agents-sdk/McpServerPicker.js +2 -2
- package/dist/components/agents-sdk/ModelSelector.js +2 -2
- package/dist/components/agents-sdk/PromptInputCommands.js +1 -1
- package/dist/components/agents-sdk/SubagentRunDetails.d.ts +1 -9
- package/dist/components/agents-sdk/SubagentRunDetails.js +1 -9
- package/dist/components/agents-sdk/SubagentRunIndicator.js +1 -1
- package/dist/components/agents-sdk/SubagentRunSelector.d.ts +4 -2
- package/dist/components/agents-sdk/SubagentRunSelector.js +7 -6
- package/dist/components/agents-sdk/ThinkChat.d.ts +4 -4
- package/dist/components/agents-sdk/ThinkChat.js +1 -1
- package/dist/components/agents-sdk/ThinkChatActivity.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkChatActivity.js +1 -1
- package/dist/components/agents-sdk/ThinkChatToolPanels.js +1 -1
- package/dist/components/agents-sdk/ThinkExecutionDetail.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkExecutionDetail.js +43 -43
- package/dist/components/agents-sdk/ThinkExecutionRun.d.ts +2 -2
- package/dist/components/agents-sdk/ThinkExecutionRun.js +5 -6
- package/dist/components/agents-sdk/ThinkExecutionStatus.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkExecutionStatus.js +8 -12
- package/dist/components/agents-sdk/ThinkExecutionWorkbench.d.ts +8 -1
- package/dist/components/agents-sdk/ThinkExecutionWorkbench.js +42 -37
- package/dist/components/agents-sdk/ThinkFullApp.d.ts +18 -6
- package/dist/components/agents-sdk/ThinkFullApp.js +113 -145
- package/dist/components/agents-sdk/ThinkFullAppViewSwitch.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkFullAppViewSwitch.js +1 -1
- package/dist/components/agents-sdk/ThinkRoutine.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkRoutineBrowser.js +1 -1
- package/dist/components/agents-sdk/ThinkRoutineDetail.js +5 -16
- package/dist/components/agents-sdk/ThinkRoutineForm.js +1 -1
- package/dist/components/agents-sdk/ThinkRoutineLibrary.js +69 -89
- package/dist/components/agents-sdk/ThinkRoutineRuns.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkRoutineRuns.js +3 -10
- package/dist/components/agents-sdk/ThinkThreadPicker.js +2 -2
- package/dist/components/agents-sdk/WorkspaceBrowser.js +1 -1
- package/dist/components/agents-sdk/WorkspaceExplorer.js +1 -1
- package/dist/components/agents-sdk/WorkspaceFileView.js +1 -1
- package/dist/components/agents-sdk/WorkspaceHeader.js +2 -1
- package/dist/components/agents-sdk/WorkspaceMessageResponse.d.ts +1 -1
- package/dist/components/agents-sdk/WorkspaceMountManager.js +11 -11
- package/dist/components/ai-sdk/Activity.js +1 -1
- package/dist/components/ai-sdk/AgentAttention.d.ts +1 -1
- package/dist/components/ai-sdk/AgentChatStartScreen.js +1 -1
- package/dist/components/ai-sdk/Approval.js +1 -1
- package/dist/components/ai-sdk/Artifact.js +1 -1
- package/dist/components/ai-sdk/ChainOfThought.d.ts +1 -1
- package/dist/components/ai-sdk/ChainOfThought.js +1 -1
- package/dist/components/ai-sdk/Checkpoint.js +1 -1
- package/dist/components/ai-sdk/CodeBlock.js +1 -1
- package/dist/components/ai-sdk/Conversation.js +1 -1
- package/dist/components/ai-sdk/Goal.js +1 -1
- package/dist/components/ai-sdk/MediaPreviewCard.js +1 -1
- package/dist/components/ai-sdk/Message.d.ts +2 -2
- package/dist/components/ai-sdk/Message.js +25 -3
- package/dist/components/ai-sdk/MessageScroller.js +1 -1
- package/dist/components/ai-sdk/MessageScrollerVirtual.js +1 -1
- package/dist/components/ai-sdk/Plan.js +1 -1
- package/dist/components/ai-sdk/PromptInput.js +1 -1
- package/dist/components/ai-sdk/Queue.d.ts +4 -4
- package/dist/components/ai-sdk/Queue.js +6 -15
- package/dist/components/ai-sdk/Reasoning.js +1 -1
- package/dist/components/ai-sdk/Sources.js +1 -1
- package/dist/components/ai-sdk/Task.d.ts +2 -2
- package/dist/components/ai-sdk/Task.js +2 -2
- package/dist/components/extension/ChatGptSignInScreen.js +1 -1
- package/dist/components/extension/CodexModelSelector.js +1 -1
- package/dist/components/extension/ConversationTabPicker.js +1 -1
- package/dist/components/foundations/Avatar.d.ts +1 -10
- package/dist/components/foundations/Avatar.js +1 -10
- package/dist/components/foundations/Checkbox.js +1 -1
- package/dist/components/foundations/CheckboxGroup.js +1 -0
- package/dist/components/foundations/ContextMenu.js +1 -1
- package/dist/components/foundations/LinkButton.d.ts +12 -10
- package/dist/components/foundations/LinkButton.js +15 -11
- package/dist/components/foundations/Menubar.js +1 -1
- package/dist/components/foundations/SearchField.js +1 -1
- package/dist/components/foundations/Select.js +1 -1
- package/dist/components/foundations/Stepper.js +1 -1
- package/dist/components/foundations/Toast.js +1 -1
- package/dist/components/foundations/ToggleGroup.d.ts +1 -1
- package/dist/components/foundations/ToggleGroup.js +1 -1
- package/dist/components/foundations/Toolbar.d.ts +1 -151
- package/dist/components/foundations/icons.d.ts +2 -2
- package/dist/components/foundations/icons.js +2 -2
- package/dist/components/general-purpose/AppTopBar.d.ts +1 -90
- package/dist/components/general-purpose/AppTopBar.js +2 -1
- package/dist/components/general-purpose/Commit.d.ts +2 -2
- package/dist/components/general-purpose/Commit.js +5 -13
- package/dist/components/general-purpose/EnvironmentVariables.d.ts +2 -2
- package/dist/components/general-purpose/EnvironmentVariables.js +4 -7
- package/dist/components/general-purpose/FileTree.js +1 -1
- package/dist/components/general-purpose/PricingBillingToggle.js +5 -10
- package/dist/components/general-purpose/PricingPlanCard.js +15 -14
- package/dist/components/general-purpose/PricingUsageCalculator.js +1 -1
- package/dist/components/general-purpose/ResponsiveSidebarShell.d.ts +95 -2
- package/dist/components/general-purpose/ResponsiveSidebarShell.js +90 -34
- package/dist/components/general-purpose/SetupChecklist.js +1 -1
- package/dist/components/general-purpose/Terminal.d.ts +1 -1
- package/dist/components/general-purpose/Terminal.js +4 -12
- package/dist/components/general-purpose/TestResults.d.ts +1 -1
- package/dist/components/general-purpose/TestResults.js +8 -21
- package/dist/components/general-purpose/ThemeModeControl.js +1 -1
- package/dist/components/general-purpose/WebPreview.d.ts +1 -1
- package/dist/components/general-purpose/WebPreview.js +4 -12
- package/dist/components/nanites/AgentConnection.js +2 -2
- package/dist/components/nanites/AgentToolDetail.d.ts +1 -1
- package/dist/components/nanites/AgentToolDetail.js +7 -7
- package/dist/components/nanites/NaniteScene.js +11 -11
- package/dist/{copy-button-Bc7jsYv_.js → copy-button-lys9N_aI.js} +1 -1
- package/dist/{icons-DwgNir1Q.d.ts → icons-0corjfxR.d.ts} +1 -16
- package/dist/{icons-MmIXciMO.js → icons-CVFSeTJn.js} +2 -5
- package/dist/styles/agent-attention.css +5 -5
- package/dist/styles/agent-chat.css +47 -12
- package/dist/styles/agent-tool-detail.css +2 -12
- package/dist/styles/app-icon.css +12 -18
- package/dist/styles/app-top-bar.css +32 -6
- package/dist/styles/avatar.css +6 -22
- package/dist/styles/base.css +2 -8
- package/dist/styles/browser-live-screen.css +38 -0
- package/dist/styles/browser-live-view.css +12 -4
- package/dist/styles/browser-run-panel.css +20 -18
- package/dist/styles/chatgpt-sign-in-screen.css +5 -5
- package/dist/styles/commit.css +24 -1
- package/dist/styles/environment-variables.css +3 -0
- package/dist/styles/index.css +5 -4
- package/dist/styles/manager-office.css +486 -0
- package/dist/styles/mcp-plugin-catalog.css +39 -35
- package/dist/styles/mcp-server-picker.css +1 -1
- package/dist/styles/message.css +41 -18
- package/dist/styles/nanite-scene.css +9 -9
- package/dist/styles/pricing-page.css +12 -8
- package/dist/styles/prompt-input.css +8 -13
- package/dist/styles/recipes.css +1 -57
- package/dist/styles/responsive-sidebar-shell.css +70 -20
- package/dist/styles/subagent-run.css +20 -3
- package/dist/styles/terminal.css +19 -0
- package/dist/styles/test-results.css +10 -1
- package/dist/styles/think-execution-status.css +8 -24
- package/dist/styles/think-execution-workbench.css +98 -105
- package/dist/styles/think-full-app.css +81 -193
- package/dist/styles/think-routine-library.css +0 -40
- package/dist/styles/think-thread-picker.css +8 -3
- package/dist/styles/transition-surface.css +7 -8
- package/dist/styles/utilities.css +42 -0
- package/dist/styles/web-preview.css +28 -5
- package/dist/styles/workspace-explorer.css +4 -23
- package/dist/styles/workspace-mount-manager.css +22 -0
- package/package.json +37 -35
- package/dist/ResponsiveSidebarShell-DWjULskY.d.ts +0 -68
- package/dist/components/agents-sdk/AgentActivityPreview.d.ts +0 -46
- package/dist/components/agents-sdk/AgentActivityPreview.js +0 -93
- package/dist/components/agents-sdk/ThinkThreadShell.d.ts +0 -38
- package/dist/components/agents-sdk/ThinkThreadShell.js +0 -27
- package/dist/components/foundations/Badge.d.ts +0 -62
- package/dist/components/foundations/Badge.js +0 -55
- package/dist/components/foundations/StatusPill.d.ts +0 -43
- package/dist/components/foundations/StatusPill.js +0 -35
- package/dist/components/general-purpose/Shell.d.ts +0 -149
- package/dist/components/general-purpose/Shell.js +0 -116
- package/dist/styles/agent-activity-preview-overlay.css +0 -169
- package/dist/styles/agent-activity-preview.css +0 -209
- package/dist/styles/badge.css +0 -120
- package/dist/styles/shell.css +0 -122
- package/dist/styles/status-pill.css +0 -39
- package/dist/{ThinkChat-DkA4Wr71.js → ThinkChat-BES_3Mb-.js} +1 -1
|
@@ -22,11 +22,6 @@ declare const ChevronDownIcon: ({
|
|
|
22
22
|
strokeWidth,
|
|
23
23
|
...props
|
|
24
24
|
}: IconProps) => import("react").JSX.Element;
|
|
25
|
-
declare const ChevronLeftIcon: ({
|
|
26
|
-
size,
|
|
27
|
-
strokeWidth,
|
|
28
|
-
...props
|
|
29
|
-
}: IconProps) => import("react").JSX.Element;
|
|
30
25
|
declare const CheckIcon: ({
|
|
31
26
|
size,
|
|
32
27
|
strokeWidth,
|
|
@@ -238,11 +233,6 @@ declare const CalendarIcon: ({
|
|
|
238
233
|
strokeWidth,
|
|
239
234
|
...props
|
|
240
235
|
}: IconProps) => import("react").JSX.Element;
|
|
241
|
-
declare const HashIcon: ({
|
|
242
|
-
size,
|
|
243
|
-
strokeWidth,
|
|
244
|
-
...props
|
|
245
|
-
}: IconProps) => import("react").JSX.Element;
|
|
246
236
|
declare const WrenchIcon: ({
|
|
247
237
|
size,
|
|
248
238
|
strokeWidth,
|
|
@@ -253,11 +243,6 @@ declare const InfoIcon: ({
|
|
|
253
243
|
strokeWidth,
|
|
254
244
|
...props
|
|
255
245
|
}: IconProps) => import("react").JSX.Element;
|
|
256
|
-
declare const ImageIcon: ({
|
|
257
|
-
size,
|
|
258
|
-
strokeWidth,
|
|
259
|
-
...props
|
|
260
|
-
}: IconProps) => import("react").JSX.Element;
|
|
261
246
|
declare const MonitorIcon: ({
|
|
262
247
|
size,
|
|
263
248
|
strokeWidth,
|
|
@@ -301,4 +286,4 @@ declare const MaximizeIcon: ({
|
|
|
301
286
|
...props
|
|
302
287
|
}: IconProps) => import("react").JSX.Element;
|
|
303
288
|
//#endregion
|
|
304
|
-
export {
|
|
289
|
+
export { TerminalIcon as $, MaximizeIcon as A, PencilIcon as B, FileIcon as C, InfoIcon as D, IconProps as E, MonitorIcon as F, SearchIcon as G, PlusIcon as H, MoonIcon as I, SpinnerIcon as J, SidebarIcon as K, MoveToFrontIcon as L, MessageSquareIcon as M, MicrophoneIcon as N, KeyboardIcon as O, MinusIcon as P, TargetIcon as Q, PaperclipIcon as R, EyeOffIcon as S, FolderOpenIcon as T, QueueIcon as U, PlayIcon as V, RefreshIcon as W, StopIcon as X, SquareIcon as Y, SunIcon as Z, DiscordIcon as _, ArrowUpIcon as a, EllipsisIcon as b, BoxIcon as c, CalendarIcon as d, TrashIcon as et, CheckIcon as f, CopyIcon as g, CodeIcon as h, ArrowRightIcon as i, McpIcon as j, LinkIcon as k, BrainIcon as l, ChevronRightIcon as m, ArrowDownIcon as n, WrenchIcon as nt, ArrowUpRightIcon as o, ChevronDownIcon as p, SlackIcon as q, ArrowLeftIcon as r, XIcon as rt, BookmarkIcon as s, ArchiveIcon as t, WarningIcon as tt, BrandIconProps as u, DotIcon as v, FolderIcon as w, EyeIcon as x, DownloadIcon as y, PauseIcon as z };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as cx } from "./class-names-BiMDVpUo.js";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import { Archive, ArrowDown, ArrowLeft, ArrowRight, ArrowUp, ArrowUpRight, Bookmark, Box, Brain, CalendarDays, Check, ChevronDown,
|
|
3
|
+
import { Archive, ArrowDown, ArrowLeft, ArrowRight, ArrowUp, ArrowUpRight, Bookmark, Box, Brain, CalendarDays, Check, ChevronDown, ChevronRight, CircleStop, CodeXml, Copy, CornerDownRight, Dot, Download, Ellipsis, Eye, EyeOff, File, Folder, FolderOpen, Info, Keyboard, Link2, ListRestart, LoaderCircle, Maximize2, MessageSquare, Mic, Minus, Monitor, Moon, PanelLeft, Paperclip, Pause, Pencil, Play, Plus, RefreshCw, Search, Square, Sun, Target, Terminal, Trash2, TriangleAlert, Wrench, X } from "lucide-react";
|
|
4
4
|
import { FaSlack } from "react-icons/fa6";
|
|
5
5
|
import { SiDiscord, SiModelcontextprotocol } from "react-icons/si";
|
|
6
6
|
//#region src/components/_internal/icons.tsx
|
|
@@ -27,7 +27,6 @@ function brandIcon(Component) {
|
|
|
27
27
|
}
|
|
28
28
|
const ChevronRightIcon = icon(ChevronRight);
|
|
29
29
|
const ChevronDownIcon = icon(ChevronDown);
|
|
30
|
-
const ChevronLeftIcon = icon(ChevronLeft);
|
|
31
30
|
const CheckIcon = icon(Check);
|
|
32
31
|
const CodeIcon = icon(CodeXml);
|
|
33
32
|
const XIcon = icon(X);
|
|
@@ -79,10 +78,8 @@ const WarningIcon = icon(TriangleAlert);
|
|
|
79
78
|
const BoxIcon = icon(Box);
|
|
80
79
|
const BrainIcon = icon(Brain);
|
|
81
80
|
const CalendarIcon = icon(CalendarDays);
|
|
82
|
-
const HashIcon = icon(Hash);
|
|
83
81
|
const WrenchIcon = icon(Wrench);
|
|
84
82
|
const InfoIcon = icon(Info);
|
|
85
|
-
const ImageIcon = icon(Image);
|
|
86
83
|
const MonitorIcon = icon(Monitor);
|
|
87
84
|
const MessageSquareIcon = icon(MessageSquare);
|
|
88
85
|
const McpIcon = brandIcon(SiModelcontextprotocol);
|
|
@@ -93,4 +90,4 @@ const SunIcon = icon(Sun);
|
|
|
93
90
|
const TargetIcon = icon(Target);
|
|
94
91
|
const MaximizeIcon = icon(Maximize2);
|
|
95
92
|
//#endregion
|
|
96
|
-
export {
|
|
93
|
+
export { WarningIcon as $, MessageSquareIcon as A, PlusIcon as B, FolderIcon as C, LinkIcon as D, KeyboardIcon as E, MoveToFrontIcon as F, SlackIcon as G, RefreshIcon as H, PaperclipIcon as I, StopIcon as J, SpinnerIcon as K, PauseIcon as L, MinusIcon as M, MonitorIcon as N, MaximizeIcon as O, MoonIcon as P, TrashIcon as Q, PencilIcon as R, FileIcon as S, InfoIcon as T, SearchIcon as U, QueueIcon as V, SidebarIcon as W, TargetIcon as X, SunIcon as Y, TerminalIcon as Z, DotIcon as _, ArrowUpIcon as a, EyeIcon as b, BoxIcon as c, CheckIcon as d, WrenchIcon as et, ChevronDownIcon as f, DiscordIcon as g, CopyIcon as h, ArrowRightIcon as i, MicrophoneIcon as j, McpIcon as k, BrainIcon as l, CodeIcon as m, ArrowDownIcon as n, ArrowUpRightIcon as o, ChevronRightIcon as p, SquareIcon as q, ArrowLeftIcon as r, BookmarkIcon as s, ArchiveIcon as t, XIcon as tt, CalendarIcon as u, DownloadIcon as v, FolderOpenIcon as w, EyeOffIcon as x, EllipsisIcon as y, PlayIcon as z };
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
box-shadow: var(--sigvelo-elevation-raised);
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
.agent-attention[data-tone="
|
|
16
|
-
border-color: var(--sigvelo-color-
|
|
15
|
+
.agent-attention[data-tone="attention"] {
|
|
16
|
+
border-color: var(--sigvelo-color-danger-border);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
.agent-attention__header,
|
|
@@ -45,9 +45,9 @@
|
|
|
45
45
|
background: var(--sigvelo-color-neutral-bg-subtle);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
.agent-attention[data-tone="
|
|
49
|
-
color: var(--sigvelo-color-
|
|
50
|
-
background: var(--sigvelo-color-
|
|
48
|
+
.agent-attention[data-tone="attention"] .agent-attention__icon {
|
|
49
|
+
color: var(--sigvelo-color-danger-text);
|
|
50
|
+
background: var(--sigvelo-color-danger-bg-subtle);
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
.agent-attention__icon > :is(svg, img) {
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
.agent-chat {
|
|
2
|
-
--agent-chat-content-max-inline-size
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
/* Hooks, not constants: hosts set --agent-chat-content-max-inline-size or
|
|
3
|
+
--agent-chat-composer-scrim-fade on any ancestor. Declaring them here
|
|
4
|
+
would beat every inherited value, so the defaults live in the fallbacks
|
|
5
|
+
at each use site. */
|
|
5
6
|
container: agent-chat / inline-size;
|
|
6
7
|
position: relative;
|
|
7
8
|
inline-size: 100%;
|
|
8
9
|
block-size: 100%;
|
|
9
10
|
min-inline-size: 0;
|
|
10
11
|
min-block-size: 0;
|
|
11
|
-
|
|
12
|
+
/* The colour the lane rests on. Hosts that seat the conversation on the
|
|
13
|
+
underlay rather than a plane of its own inherit --agent-chat-surface down
|
|
14
|
+
to here, so the composer's scrim dissolves into what is actually behind
|
|
15
|
+
it. Declared as a fallback rather than on .agent-chat itself: a local
|
|
16
|
+
custom property would beat the ancestor's value. */
|
|
17
|
+
background-color: var(--agent-chat-surface, var(--sigvelo-color-surface));
|
|
12
18
|
color: var(--sigvelo-color-text);
|
|
13
19
|
font-family: inherit;
|
|
14
20
|
}
|
|
@@ -34,12 +40,15 @@
|
|
|
34
40
|
block padding), so the inline gutters land OUTSIDE this size — subtract
|
|
35
41
|
them from the full-width term or the padding box overflows the viewport
|
|
36
42
|
and end-aligned user rows hang past the right edge. */
|
|
37
|
-
inline-size: min(
|
|
43
|
+
inline-size: min(
|
|
44
|
+
100% - 2 * var(--sigvelo-spacing-4),
|
|
45
|
+
var(--agent-chat-content-max-inline-size, 64rem)
|
|
46
|
+
);
|
|
38
47
|
margin-inline: auto;
|
|
39
48
|
/* Clearance = composer + its scrim band, so a transcript resting at the
|
|
40
49
|
bottom never sits inside the fade. */
|
|
41
50
|
padding-block: var(--message-scroller-virtual-block-start)
|
|
42
|
-
calc(var(--agent-chat-composer-size, 5rem) + var(--agent-chat-composer-scrim-fade));
|
|
51
|
+
calc(var(--agent-chat-composer-size, 5rem) + var(--agent-chat-composer-scrim-fade, 2.5rem));
|
|
43
52
|
padding-inline: var(--sigvelo-spacing-4);
|
|
44
53
|
}
|
|
45
54
|
|
|
@@ -89,7 +98,7 @@
|
|
|
89
98
|
|
|
90
99
|
display: grid;
|
|
91
100
|
grid-template-rows: minmax(0, 1fr) auto minmax(0, 1fr);
|
|
92
|
-
inline-size: min(100%, var(--agent-chat-content-max-inline-size));
|
|
101
|
+
inline-size: min(100%, var(--agent-chat-content-max-inline-size, 64rem));
|
|
93
102
|
min-block-size: 100%;
|
|
94
103
|
margin-inline: auto;
|
|
95
104
|
padding-block: max(var(--agent-chat-start-screen-padding-block), env(safe-area-inset-top, 0px))
|
|
@@ -360,24 +369,25 @@
|
|
|
360
369
|
position: absolute;
|
|
361
370
|
z-index: -1;
|
|
362
371
|
inset: 0;
|
|
363
|
-
inset-block-start: calc(-1 * var(--agent-chat-composer-scrim-fade));
|
|
372
|
+
inset-block-start: calc(-1 * var(--agent-chat-composer-scrim-fade, 2.5rem));
|
|
364
373
|
content: "";
|
|
365
374
|
pointer-events: none;
|
|
366
375
|
background: linear-gradient(
|
|
367
376
|
to bottom,
|
|
368
377
|
transparent,
|
|
369
|
-
var(--
|
|
378
|
+
var(--agent-chat-surface, var(--sigvelo-color-surface))
|
|
379
|
+
var(--agent-chat-composer-scrim-fade, 2.5rem)
|
|
370
380
|
);
|
|
371
381
|
}
|
|
372
382
|
|
|
373
383
|
.agent-chat__composer > .prompt-input {
|
|
374
384
|
z-index: 1;
|
|
375
|
-
inline-size: min(100%, var(--agent-chat-content-max-inline-size));
|
|
385
|
+
inline-size: min(100%, var(--agent-chat-content-max-inline-size, 64rem));
|
|
376
386
|
margin-inline: auto;
|
|
377
387
|
padding-block: var(--sigvelo-spacing-3);
|
|
378
388
|
}
|
|
379
389
|
|
|
380
|
-
/* Transient status
|
|
390
|
+
/* Transient status between transcript and composer (recovery, errors). */
|
|
381
391
|
.agent-chat__notice {
|
|
382
392
|
display: flex;
|
|
383
393
|
align-items: center;
|
|
@@ -397,7 +407,7 @@
|
|
|
397
407
|
flex-direction: column;
|
|
398
408
|
align-items: stretch;
|
|
399
409
|
inline-size: calc(
|
|
400
|
-
min(100%, var(--agent-chat-content-max-inline-size)) - var(--sigvelo-spacing-10)
|
|
410
|
+
min(100%, var(--agent-chat-content-max-inline-size, 64rem)) - var(--sigvelo-spacing-10)
|
|
401
411
|
);
|
|
402
412
|
margin-inline: auto;
|
|
403
413
|
}
|
|
@@ -528,6 +538,31 @@
|
|
|
528
538
|
spare pixels under it. Only the height query below drops the centring, and
|
|
529
539
|
only where there is genuinely no room for it. */
|
|
530
540
|
@container agent-chat (width <= 36rem) {
|
|
541
|
+
.agent-chat__transcript-content {
|
|
542
|
+
/* A notch pushes the first row down only as far as it must: the desktop
|
|
543
|
+
inset already clears shallow insets, so only deeper ones add height. */
|
|
544
|
+
--message-scroller-virtual-block-start: max(
|
|
545
|
+
var(--sigvelo-spacing-8),
|
|
546
|
+
calc(var(--sigvelo-spacing-5) + env(safe-area-inset-top, 0px))
|
|
547
|
+
);
|
|
548
|
+
|
|
549
|
+
inline-size: min(
|
|
550
|
+
100% - 2 * var(--sigvelo-spacing-3),
|
|
551
|
+
var(--agent-chat-content-max-inline-size, 64rem)
|
|
552
|
+
);
|
|
553
|
+
padding-inline: var(--sigvelo-spacing-3);
|
|
554
|
+
}
|
|
555
|
+
|
|
556
|
+
.agent-chat .message[data-from="assistant"] .message__content {
|
|
557
|
+
inline-size: 100%;
|
|
558
|
+
}
|
|
559
|
+
|
|
560
|
+
.agent-chat__composer {
|
|
561
|
+
padding-block-end: max(var(--sigvelo-spacing-4), env(safe-area-inset-bottom, 0px));
|
|
562
|
+
padding-inline: max(var(--sigvelo-spacing-3), env(safe-area-inset-left, 0px))
|
|
563
|
+
max(var(--sigvelo-spacing-3), env(safe-area-inset-right, 0px));
|
|
564
|
+
}
|
|
565
|
+
|
|
531
566
|
.agent-chat-start-screen__content {
|
|
532
567
|
--agent-chat-start-screen-padding-block: var(--sigvelo-spacing-5);
|
|
533
568
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.agent-tool-detail {
|
|
2
2
|
display: grid;
|
|
3
|
-
grid-template-rows: auto auto minmax(0, 1fr)
|
|
3
|
+
grid-template-rows: auto auto minmax(0, 1fr);
|
|
4
4
|
min-inline-size: 0;
|
|
5
5
|
block-size: 100%;
|
|
6
6
|
background-color: var(--sigvelo-color-surface);
|
|
@@ -47,18 +47,8 @@
|
|
|
47
47
|
block-size: 100%;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
.agent-tool-detail > .subagent-run__actions {
|
|
51
|
-
grid-row: 4;
|
|
52
|
-
display: flex;
|
|
53
|
-
justify-content: center;
|
|
54
|
-
padding: var(--sigvelo-spacing-2) var(--sigvelo-spacing-3);
|
|
55
|
-
border-block-start: var(--sigvelo-border-width) var(--sigvelo-border-style)
|
|
56
|
-
var(--sigvelo-color-neutral-border-subtle);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
50
|
@media (forced-colors: active) {
|
|
60
|
-
.agent-tool-detail__run-state
|
|
61
|
-
.agent-tool-detail > .subagent-run__actions {
|
|
51
|
+
.agent-tool-detail__run-state {
|
|
62
52
|
border-color: CanvasText;
|
|
63
53
|
}
|
|
64
54
|
}
|
package/dist/styles/app-icon.css
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/* A mark sits flat on whatever canvas hosts it — the tile never paints its
|
|
2
|
+
own background. Elevation is a drop shadow that follows the mark's own
|
|
3
|
+
silhouette, so a transparent favicon casts its shape, not an invisible box. */
|
|
1
4
|
.avatar.app-icon {
|
|
2
5
|
--sigvelo-recipe-app-icon-size: var(--sigvelo-spacing-8);
|
|
3
6
|
--sigvelo-recipe-app-icon-radius: 30%;
|
|
@@ -11,10 +14,11 @@
|
|
|
11
14
|
flex: none;
|
|
12
15
|
overflow: hidden;
|
|
13
16
|
border-radius: var(--sigvelo-recipe-app-icon-radius);
|
|
14
|
-
background:
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
background: transparent;
|
|
18
|
+
filter: drop-shadow(
|
|
19
|
+
0 var(--sigvelo-border-width) var(--sigvelo-spacing-0-5)
|
|
20
|
+
color-mix(in oklab, transparent, var(--sigvelo-color-shadow) 25%)
|
|
21
|
+
);
|
|
18
22
|
user-select: none;
|
|
19
23
|
}
|
|
20
24
|
|
|
@@ -40,24 +44,15 @@
|
|
|
40
44
|
padding: var(--sigvelo-spacing-2);
|
|
41
45
|
}
|
|
42
46
|
|
|
43
|
-
|
|
44
|
-
background: var(--sigvelo-color-surface-raised);
|
|
45
|
-
}
|
|
47
|
+
/* The surface variant keeps only the inset; the mark stays flat on the canvas. */
|
|
46
48
|
|
|
47
49
|
.app-icon[data-app-icon-variant="contrast"] {
|
|
48
50
|
background: var(--sigvelo-color-primary-bg);
|
|
49
51
|
color: var(--sigvelo-color-primary-text-on-bg);
|
|
50
52
|
}
|
|
51
53
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
inset: 0;
|
|
55
|
-
border-radius: inherit;
|
|
56
|
-
box-shadow: inset 0 0 0 var(--sigvelo-border-width-hairline)
|
|
57
|
-
color-mix(in oklab, transparent, var(--sigvelo-color-shadow) 10%);
|
|
58
|
-
content: "";
|
|
59
|
-
pointer-events: none;
|
|
60
|
-
}
|
|
54
|
+
/* Full-bleed artwork brings its own edges; a hairline ring around a flat
|
|
55
|
+
transparent mark would outline an invisible box, so no variant draws one. */
|
|
61
56
|
|
|
62
57
|
.app-icon__image,
|
|
63
58
|
.app-icon__fallback,
|
|
@@ -80,7 +75,7 @@
|
|
|
80
75
|
align-items: center;
|
|
81
76
|
justify-content: center;
|
|
82
77
|
border-radius: inherit;
|
|
83
|
-
background:
|
|
78
|
+
background: transparent;
|
|
84
79
|
color: var(--sigvelo-color-text-muted);
|
|
85
80
|
font-size: var(--sigvelo-text-xs);
|
|
86
81
|
font-weight: var(--sigvelo-font-weight-semibold);
|
|
@@ -94,7 +89,6 @@
|
|
|
94
89
|
.app-icon-stack {
|
|
95
90
|
display: inline-flex;
|
|
96
91
|
align-items: center;
|
|
97
|
-
block-size: 0;
|
|
98
92
|
isolation: isolate;
|
|
99
93
|
}
|
|
100
94
|
|
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
.app-top-bar {
|
|
2
|
-
--app-top-bar-block-size: calc(
|
|
3
|
-
var(--sigvelo-density-compact-control-height) + var(--sigvelo-spacing-2)
|
|
4
|
-
);
|
|
5
|
-
|
|
6
2
|
box-sizing: border-box;
|
|
7
3
|
inline-size: 100%;
|
|
8
4
|
min-inline-size: 0;
|
|
9
|
-
|
|
5
|
+
/* Hooks, not constants: declaring either here would beat every inherited
|
|
6
|
+
value, so the defaults live in the fallbacks. Hosts set
|
|
7
|
+
--app-top-bar-block-size on any ancestor to size every bar in a region at
|
|
8
|
+
once; the bar adds the safe-area inset itself, so the hook stays a plain
|
|
9
|
+
content height. */
|
|
10
|
+
min-block-size: calc(
|
|
11
|
+
var(
|
|
12
|
+
--app-top-bar-block-size,
|
|
13
|
+
calc(var(--sigvelo-density-compact-control-height) + var(--sigvelo-spacing-2))
|
|
14
|
+
) +
|
|
15
|
+
env(safe-area-inset-top, 0px)
|
|
16
|
+
);
|
|
10
17
|
display: grid;
|
|
11
18
|
grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
|
|
12
19
|
align-items: center;
|
|
@@ -17,7 +24,9 @@
|
|
|
17
24
|
calc(var(--sigvelo-spacing-2) + env(safe-area-inset-right, 0px));
|
|
18
25
|
border: 0;
|
|
19
26
|
border-radius: 0;
|
|
20
|
-
|
|
27
|
+
/* No surface of its own: the bar occupies a layout row, so whatever plane
|
|
28
|
+
it sits on shows through and can never disagree with it. */
|
|
29
|
+
background: transparent;
|
|
21
30
|
}
|
|
22
31
|
|
|
23
32
|
.app-top-bar__leading,
|
|
@@ -48,6 +57,23 @@
|
|
|
48
57
|
justify-self: end;
|
|
49
58
|
}
|
|
50
59
|
|
|
60
|
+
/* A panel header, not an application title bar: the symmetric track layout
|
|
61
|
+
would float the name in the middle of the plane instead of labelling its
|
|
62
|
+
leading edge. Only the trailing group still needs room of its own.
|
|
63
|
+
Panel chrome also sits atop scrolling content, so it separates the Ploy
|
|
64
|
+
way — one hairline and a breath of shadow, still no fill. */
|
|
65
|
+
.app-top-bar[data-title-align="start"] {
|
|
66
|
+
position: relative;
|
|
67
|
+
grid-template-columns: auto auto minmax(0, 1fr);
|
|
68
|
+
border-block-end: var(--sigvelo-border-style) var(--sigvelo-border-width)
|
|
69
|
+
var(--sigvelo-color-neutral-border-subtle);
|
|
70
|
+
box-shadow: var(--sigvelo-elevation-bar);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.app-top-bar[data-title-align="start"] .app-top-bar__title {
|
|
74
|
+
justify-self: start;
|
|
75
|
+
}
|
|
76
|
+
|
|
51
77
|
.app-top-bar__button {
|
|
52
78
|
box-sizing: border-box;
|
|
53
79
|
flex: 0 0 auto;
|
package/dist/styles/avatar.css
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
.avatar {
|
|
2
2
|
--sigvelo-recipe-avatar-size: var(--sigvelo-control-height-sm);
|
|
3
|
-
--sigvelo-recipe-avatar-badge-size: var(--sigvelo-spacing-2-5);
|
|
4
3
|
|
|
5
4
|
position: relative;
|
|
6
5
|
display: inline-flex;
|
|
@@ -12,23 +11,23 @@
|
|
|
12
11
|
overflow: hidden;
|
|
13
12
|
font-family: inherit;
|
|
14
13
|
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
15
|
-
border-radius: var(--sigvelo-radius-full);
|
|
16
14
|
user-select: none;
|
|
17
15
|
}
|
|
18
16
|
|
|
17
|
+
.avatar[data-shape="circle"] {
|
|
18
|
+
border-radius: var(--sigvelo-radius-full);
|
|
19
|
+
}
|
|
20
|
+
|
|
19
21
|
.avatar[data-size="sm"] {
|
|
20
22
|
--sigvelo-recipe-avatar-size: var(--sigvelo-spacing-6);
|
|
21
|
-
--sigvelo-recipe-avatar-badge-size: var(--sigvelo-spacing-2);
|
|
22
23
|
}
|
|
23
24
|
|
|
24
25
|
.avatar[data-size="lg"] {
|
|
25
26
|
--sigvelo-recipe-avatar-size: var(--sigvelo-control-height-lg);
|
|
26
|
-
--sigvelo-recipe-avatar-badge-size: var(--sigvelo-spacing-3);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
.avatar[data-size="xl"] {
|
|
30
30
|
--sigvelo-recipe-avatar-size: var(--sigvelo-spacing-14);
|
|
31
|
-
--sigvelo-recipe-avatar-badge-size: var(--sigvelo-spacing-4);
|
|
32
31
|
}
|
|
33
32
|
|
|
34
33
|
.avatar[data-shape="rounded"] {
|
|
@@ -68,7 +67,7 @@
|
|
|
68
67
|
color: var(--sigvelo-color-text-muted);
|
|
69
68
|
text-transform: uppercase;
|
|
70
69
|
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
71
|
-
border-radius:
|
|
70
|
+
border-radius: inherit;
|
|
72
71
|
}
|
|
73
72
|
|
|
74
73
|
.avatar[data-size="sm"] .avatar__fallback {
|
|
@@ -89,8 +88,7 @@
|
|
|
89
88
|
margin-inline-start: 0;
|
|
90
89
|
}
|
|
91
90
|
|
|
92
|
-
.avatar-group__count
|
|
93
|
-
.avatar__badge {
|
|
91
|
+
.avatar-group__count {
|
|
94
92
|
display: inline-flex;
|
|
95
93
|
align-items: center;
|
|
96
94
|
justify-content: center;
|
|
@@ -122,17 +120,3 @@
|
|
|
122
120
|
.avatar-group:has(.avatar[data-size="lg"]) .avatar-group__count {
|
|
123
121
|
--sigvelo-recipe-avatar-count-size: var(--sigvelo-control-height-lg);
|
|
124
122
|
}
|
|
125
|
-
|
|
126
|
-
.avatar__badge {
|
|
127
|
-
position: absolute;
|
|
128
|
-
inset-inline-end: 0;
|
|
129
|
-
inset-block-end: 0;
|
|
130
|
-
z-index: 10;
|
|
131
|
-
inline-size: var(--sigvelo-recipe-avatar-badge-size);
|
|
132
|
-
block-size: var(--sigvelo-recipe-avatar-badge-size);
|
|
133
|
-
color: var(--sigvelo-color-primary-text-on-bg);
|
|
134
|
-
background-color: var(--sigvelo-color-primary-bg);
|
|
135
|
-
border: 2px solid var(--sigvelo-color-canvas);
|
|
136
|
-
border-radius: var(--sigvelo-radius-full);
|
|
137
|
-
user-select: none;
|
|
138
|
-
}
|
package/dist/styles/base.css
CHANGED
|
@@ -33,15 +33,9 @@
|
|
|
33
33
|
|
|
34
34
|
/* sigvelo-pill-shapes:start */
|
|
35
35
|
:where(
|
|
36
|
-
.agent-activity-preview__badge,
|
|
37
|
-
.agent-activity-preview__dismiss,
|
|
38
|
-
.agent-activity-preview__unviewed-dot,
|
|
39
36
|
.approval__key,
|
|
40
|
-
.avatar,
|
|
37
|
+
.avatar[data-shape="circle"],
|
|
41
38
|
.avatar-group__count,
|
|
42
|
-
.avatar__badge,
|
|
43
|
-
.avatar__fallback,
|
|
44
|
-
.badge,
|
|
45
39
|
.browser-run-panel__tab-glyph,
|
|
46
40
|
.chain-of-thought__search-result,
|
|
47
41
|
.chain-of-thought__step-indicator,
|
|
@@ -50,6 +44,7 @@
|
|
|
50
44
|
.empty-state__icon,
|
|
51
45
|
.inline-citation__trigger,
|
|
52
46
|
.media-preview-card__play,
|
|
47
|
+
.manager-office__unread-dot,
|
|
53
48
|
.menu__radio-indicator::before,
|
|
54
49
|
.message-scroller__button,
|
|
55
50
|
.plan-summary__trigger,
|
|
@@ -68,7 +63,6 @@
|
|
|
68
63
|
.slider__indicator,
|
|
69
64
|
.slider__thumb,
|
|
70
65
|
.slider__track,
|
|
71
|
-
.status-pill__dot,
|
|
72
66
|
.stepper__indicator,
|
|
73
67
|
.stepper__separator,
|
|
74
68
|
.stepper__trigger,
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
.browser-live-screen__input {
|
|
2
|
+
position: absolute;
|
|
3
|
+
inset: 0;
|
|
4
|
+
box-sizing: border-box;
|
|
5
|
+
inline-size: 100%;
|
|
6
|
+
block-size: 100%;
|
|
7
|
+
overflow: hidden;
|
|
8
|
+
resize: none;
|
|
9
|
+
border: 0;
|
|
10
|
+
padding: 0;
|
|
11
|
+
appearance: none;
|
|
12
|
+
background: transparent;
|
|
13
|
+
caret-color: transparent;
|
|
14
|
+
color: transparent;
|
|
15
|
+
cursor: default;
|
|
16
|
+
touch-action: none;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.browser-live-screen__input:focus-visible {
|
|
20
|
+
outline: none;
|
|
21
|
+
box-shadow: var(--sigvelo-recipe-focus-shadow-inset);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.browser-live-screen__keyboard {
|
|
25
|
+
display: none;
|
|
26
|
+
position: absolute;
|
|
27
|
+
inset-block-end: var(--sigvelo-spacing-2);
|
|
28
|
+
inset-inline-end: var(--sigvelo-spacing-2);
|
|
29
|
+
z-index: 1;
|
|
30
|
+
background-color: var(--sigvelo-color-surface-raised);
|
|
31
|
+
box-shadow: var(--sigvelo-elevation-floating);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
@media (pointer: coarse) {
|
|
35
|
+
.browser-live-screen__keyboard {
|
|
36
|
+
display: inline-flex;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -39,17 +39,25 @@
|
|
|
39
39
|
opacity: 1;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
overlay placement lives here. */
|
|
44
|
-
.browser-live-view__badge {
|
|
42
|
+
.browser-live-view__status {
|
|
45
43
|
position: absolute;
|
|
46
44
|
inset-block-start: var(--sigvelo-spacing-2);
|
|
47
45
|
inset-inline-end: var(--sigvelo-spacing-2);
|
|
48
46
|
z-index: 1;
|
|
49
|
-
|
|
47
|
+
display: inline-flex;
|
|
48
|
+
align-items: center;
|
|
49
|
+
gap: var(--sigvelo-spacing-1);
|
|
50
|
+
color: var(--sigvelo-color-danger-text);
|
|
51
|
+
font-size: var(--sigvelo-text-xs);
|
|
52
|
+
font-weight: var(--sigvelo-font-weight-semibold);
|
|
50
53
|
pointer-events: none;
|
|
51
54
|
}
|
|
52
55
|
|
|
56
|
+
.browser-live-view__status > svg {
|
|
57
|
+
inline-size: var(--sigvelo-control-icon-size-sm);
|
|
58
|
+
block-size: var(--sigvelo-control-icon-size-sm);
|
|
59
|
+
}
|
|
60
|
+
|
|
53
61
|
/* Ended state: quiet fill, same footprint so the layout never jumps */
|
|
54
62
|
.browser-live-view__ended {
|
|
55
63
|
display: flex;
|
|
@@ -2,15 +2,18 @@
|
|
|
2
2
|
min-inline-size: 0;
|
|
3
3
|
min-block-size: 0;
|
|
4
4
|
block-size: 100%;
|
|
5
|
+
border: 0;
|
|
6
|
+
border-radius: 0;
|
|
5
7
|
}
|
|
6
8
|
|
|
9
|
+
/* The tab strip and the address row are one chrome group: only the bottom
|
|
10
|
+
row draws the group's edge. */
|
|
7
11
|
.browser-run-panel .web-preview__nav:has(.browser-run-panel__tabs) {
|
|
8
|
-
min-block-size: var(--sigvelo-spacing-12);
|
|
9
12
|
gap: 0;
|
|
10
13
|
padding-block: 0;
|
|
11
14
|
padding-inline: var(--sigvelo-spacing-1-5);
|
|
12
15
|
border-block-end: 0;
|
|
13
|
-
|
|
16
|
+
box-shadow: none;
|
|
14
17
|
}
|
|
15
18
|
|
|
16
19
|
.browser-run-panel__tabs {
|
|
@@ -29,20 +32,27 @@
|
|
|
29
32
|
display: none;
|
|
30
33
|
}
|
|
31
34
|
|
|
32
|
-
|
|
35
|
+
/* Not drawn browser chrome: a tab is the same muted control as every other
|
|
36
|
+
row in the card's bar, selection the same subtle fill. */
|
|
37
|
+
.browser-run-panel__tab {
|
|
33
38
|
min-inline-size: min(11rem, 45vw);
|
|
34
|
-
min-block-size: var(--sigvelo-control-height-xl);
|
|
35
39
|
max-inline-size: 13rem;
|
|
40
|
+
min-block-size: var(--sigvelo-control-height-sm);
|
|
36
41
|
flex: 0 0 auto;
|
|
37
42
|
gap: var(--sigvelo-spacing-2);
|
|
38
|
-
padding-inline: var(--sigvelo-spacing-
|
|
39
|
-
border-radius: var(--sigvelo-radius-
|
|
43
|
+
padding-inline: var(--sigvelo-spacing-2);
|
|
44
|
+
border-radius: var(--sigvelo-radius-sm);
|
|
40
45
|
text-align: start;
|
|
41
46
|
white-space: nowrap;
|
|
42
47
|
}
|
|
43
48
|
|
|
49
|
+
.browser-run-panel__tab:hover:not([data-disabled]) {
|
|
50
|
+
background-color: color-mix(in oklab, transparent, var(--sigvelo-color-text) 5%);
|
|
51
|
+
}
|
|
52
|
+
|
|
44
53
|
.browser-run-panel__tab[data-active] {
|
|
45
|
-
|
|
54
|
+
border-block-end-color: transparent;
|
|
55
|
+
background: var(--sigvelo-color-neutral-bg-subtle);
|
|
46
56
|
color: var(--sigvelo-color-text);
|
|
47
57
|
}
|
|
48
58
|
|
|
@@ -66,24 +76,16 @@
|
|
|
66
76
|
line-height: var(--sigvelo-leading-tight);
|
|
67
77
|
}
|
|
68
78
|
|
|
69
|
-
.browser-run-panel__address-bar {
|
|
70
|
-
min-block-size: var(--sigvelo-spacing-12);
|
|
71
|
-
background: var(--sigvelo-color-surface);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
79
|
.browser-run-panel .browser-run-panel__body {
|
|
75
80
|
min-block-size: 0;
|
|
76
81
|
display: flex;
|
|
77
|
-
padding:
|
|
82
|
+
padding: 0;
|
|
78
83
|
}
|
|
79
84
|
|
|
80
|
-
/*
|
|
81
|
-
|
|
82
|
-
.browser-run-panel__body > .browser-live-view {
|
|
85
|
+
/* The panel owns the space allotted to whichever direct surface it hosts. */
|
|
86
|
+
.browser-run-panel__body > * {
|
|
83
87
|
flex: 1;
|
|
84
88
|
min-block-size: 16rem;
|
|
85
|
-
aspect-ratio: auto;
|
|
86
|
-
border-radius: var(--sigvelo-radius-md);
|
|
87
89
|
}
|
|
88
90
|
|
|
89
91
|
.browser-run-panel__state {
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
.chatgpt-sign-in {
|
|
2
|
-
--chatgpt-sign-in-pointer-x: 50%;
|
|
3
|
-
--chatgpt-sign-in-pointer-y: 58%;
|
|
4
|
-
|
|
5
2
|
position: relative;
|
|
6
3
|
isolation: isolate;
|
|
7
4
|
overflow-x: hidden;
|
|
@@ -33,14 +30,17 @@
|
|
|
33
30
|
position: absolute;
|
|
34
31
|
z-index: 0;
|
|
35
32
|
inset: 0;
|
|
33
|
+
/* The pointer position arrives as an inline style from the component's own
|
|
34
|
+
mousemove handler; the fallbacks are only the resting spot before the
|
|
35
|
+
first move. */
|
|
36
36
|
background:
|
|
37
37
|
radial-gradient(
|
|
38
|
-
circle at var(--chatgpt-sign-in-pointer-x) var(--chatgpt-sign-in-pointer-y),
|
|
38
|
+
circle at var(--chatgpt-sign-in-pointer-x, 50%) var(--chatgpt-sign-in-pointer-y, 58%),
|
|
39
39
|
color-mix(in oklab, var(--sigvelo-color-primary-bg), transparent 72%),
|
|
40
40
|
transparent 12rem
|
|
41
41
|
),
|
|
42
42
|
radial-gradient(
|
|
43
|
-
circle at var(--chatgpt-sign-in-pointer-x) var(--chatgpt-sign-in-pointer-y),
|
|
43
|
+
circle at var(--chatgpt-sign-in-pointer-x, 50%) var(--chatgpt-sign-in-pointer-y, 58%),
|
|
44
44
|
color-mix(in oklab, var(--sigvelo-color-primary-bg-muted), transparent 86%),
|
|
45
45
|
transparent 18rem
|
|
46
46
|
);
|