@mcp-b/react-components 0.44.1 → 0.46.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-Bibfj7u1.d.ts → AgentChat-BLmQghkt.d.ts} +2 -2
- package/dist/{AgentToolRunsContext-daY67hFM.d.ts → AgentToolRunsContext-jtmveaRE.d.ts} +8 -7
- package/dist/{CodeBlock-Dl7a3Wqo.js → CodeBlock-BpooTofO.js} +1 -1
- package/dist/{FileTree-Uu3ZnW1u.js → FileTree-CAXWXH63.js} +1 -1
- package/dist/{McpConnectorForm-MRm1r59e.d.ts → McpConnectorForm-BETdVBRk.d.ts} +1 -1
- package/dist/{McpPluginCatalog-mbGw8FTu.d.ts → McpPluginCatalog-C6ip9IvL.d.ts} +2 -2
- package/dist/{PromptInput-BRX7FhjH.d.ts → PromptInput-DtJHyp0S.d.ts} +27 -22
- package/dist/{ResponsiveSidebarShell-DOXd5T-d.d.ts → ResponsiveSidebarShell-BTVPxLJK.d.ts} +12 -0
- package/dist/{SetupChecklist-DOp-zqjh.js → SetupChecklist-DyPZWzK2.js} +2 -2
- package/dist/{ThinkChat-BES_3Mb-.js → ThinkChat-qztQ6Clo.js} +7 -22
- package/dist/{ThinkChatActivity-CgvmTXXB.d.ts → ThinkChatActivity-B3lGVS-6.d.ts} +1 -1
- package/dist/{WorkspaceFileView-BublZXky.js → WorkspaceFileView-BvDbKM2c.js} +3 -3
- 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 +44 -40
- package/dist/components/agents-sdk/AgentEvent.d.ts +42 -0
- package/dist/components/agents-sdk/AgentEvent.js +96 -0
- package/dist/components/agents-sdk/AgentToolRunsContext.d.ts +1 -1
- package/dist/components/agents-sdk/AgentToolRunsContext.js +11 -7
- package/dist/components/agents-sdk/BrowserLiveScreen.js +1 -1
- package/dist/components/agents-sdk/BrowserLiveView.js +1 -1
- package/dist/components/agents-sdk/BrowserReplay.js +2 -2
- package/dist/components/agents-sdk/BrowserRunPanel.js +1 -1
- package/dist/components/agents-sdk/ManagerOffice.d.ts +106 -11
- package/dist/components/agents-sdk/ManagerOffice.js +1193 -151
- package/dist/components/agents-sdk/McpConnectionRequest.d.ts +1 -1
- package/dist/components/agents-sdk/McpConnectionRequest.js +11 -5
- package/dist/components/agents-sdk/McpConnectorForm.d.ts +1 -1
- package/dist/components/agents-sdk/McpConnectorForm.js +1 -1
- package/dist/components/agents-sdk/McpPluginCatalog.d.ts +1 -1
- package/dist/components/agents-sdk/McpPluginCatalog.js +11 -7
- package/dist/components/agents-sdk/McpServerPicker.d.ts +2 -2
- package/dist/components/agents-sdk/McpServerPicker.js +4 -4
- package/dist/components/agents-sdk/ModelSelector.js +5 -5
- package/dist/components/agents-sdk/PromptInputApproval.js +1 -1
- package/dist/components/agents-sdk/PromptInputCommands.d.ts +5 -2
- package/dist/components/agents-sdk/PromptInputCommands.js +81 -3
- package/dist/components/agents-sdk/SubagentRunDetails.js +1 -1
- package/dist/components/agents-sdk/SubagentRunIndicator.d.ts +21 -3
- package/dist/components/agents-sdk/SubagentRunIndicator.js +56 -6
- package/dist/components/agents-sdk/SubagentRunSelector.js +5 -12
- package/dist/components/agents-sdk/ThinkChat.d.ts +4 -5
- 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 +3 -3
- package/dist/components/agents-sdk/ThinkChatActivitySummary.js +1 -1
- package/dist/components/agents-sdk/ThinkChatToolPanels.js +2 -2
- package/dist/components/agents-sdk/ThinkExecutionDetail.js +3 -3
- package/dist/components/agents-sdk/ThinkExecutionRun.js +1 -1
- package/dist/components/agents-sdk/ThinkExecutionStatus.js +1 -1
- package/dist/components/agents-sdk/ThinkExecutionWorkbench.js +3 -3
- package/dist/components/agents-sdk/ThinkFullApp.d.ts +14 -4
- package/dist/components/agents-sdk/ThinkFullApp.js +51 -5
- package/dist/components/agents-sdk/ThinkFullAppViewSwitch.js +1 -1
- package/dist/components/agents-sdk/ThinkPendingApproval.js +1 -1
- package/dist/components/agents-sdk/ThinkRecoveryNotice.js +1 -1
- package/dist/components/agents-sdk/ThinkRoutineBrowser.js +3 -3
- package/dist/components/agents-sdk/ThinkRoutineDetail.js +1 -1
- package/dist/components/agents-sdk/ThinkRoutineForm.js +4 -4
- package/dist/components/agents-sdk/ThinkRoutineLibrary.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkRoutineLibrary.js +4 -4
- package/dist/components/agents-sdk/ThinkRoutineRuns.js +1 -1
- package/dist/components/agents-sdk/ThinkSidepanel.d.ts +22 -4
- package/dist/components/agents-sdk/ThinkSidepanel.js +87 -35
- package/dist/components/agents-sdk/ThinkThreadPicker.js +5 -5
- package/dist/components/agents-sdk/Workspace.js +1 -1
- 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 +1 -1
- package/dist/components/agents-sdk/WorkspaceMountManager.js +4 -21
- package/dist/components/ai-sdk/Activity.js +1 -1
- package/dist/components/ai-sdk/AgentChatStartScreen.js +1 -1
- package/dist/components/ai-sdk/Approval.js +2 -2
- 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/ComposerLink.d.ts +27 -0
- package/dist/components/ai-sdk/ComposerLink.js +111 -0
- package/dist/components/ai-sdk/ConnectedAppCards.js +3 -3
- package/dist/components/ai-sdk/Context.js +1 -1
- package/dist/components/ai-sdk/Conversation.js +1 -1
- package/dist/components/ai-sdk/Goal.js +2 -2
- package/dist/components/ai-sdk/InlineCitation.js +1 -1
- package/dist/components/ai-sdk/MediaPreviewCard.js +1 -1
- package/dist/components/ai-sdk/Message.js +19 -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 +2 -2
- package/dist/components/ai-sdk/PromptInput.d.ts +2 -2
- package/dist/components/ai-sdk/PromptInput.js +67 -61
- package/dist/components/ai-sdk/PromptInputComposerEditor.d.ts +31 -0
- package/dist/components/ai-sdk/PromptInputComposerEditor.js +198 -0
- package/dist/components/ai-sdk/Queue.js +2 -2
- package/dist/components/ai-sdk/Reasoning.js +2 -2
- package/dist/components/ai-sdk/Sources.js +1 -1
- package/dist/components/ai-sdk/Task.js +1 -1
- package/dist/components/ai-sdk/ToolInvocation.js +1 -1
- package/dist/components/extension/ChatGptSignInScreen.js +2 -2
- package/dist/components/extension/CodexModelSelector.js +2 -2
- package/dist/components/extension/ConversationTabPicker.js +2 -2
- package/dist/components/foundations/AppIcon.js +1 -1
- package/dist/components/foundations/Checkbox.js +1 -1
- package/dist/components/foundations/Collapsible.js +1 -1
- package/dist/components/foundations/ContextMenu.js +1 -1
- 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/icons.d.ts +1 -1
- package/dist/components/foundations/icons.js +1 -1
- package/dist/components/general-purpose/Commit.js +2 -2
- package/dist/components/general-purpose/EnvironmentVariables.js +2 -2
- package/dist/components/general-purpose/FileTree.js +1 -1
- package/dist/components/general-purpose/PricingBillingToggle.js +1 -1
- package/dist/components/general-purpose/PricingPlanCard.js +2 -2
- package/dist/components/general-purpose/PricingUsageCalculator.js +2 -2
- package/dist/components/general-purpose/ResizableSidePanel.js +1 -1
- package/dist/components/general-purpose/ResponsiveSidebarShell.d.ts +1 -1
- package/dist/components/general-purpose/ResponsiveSidebarShell.js +72 -22
- package/dist/components/general-purpose/SettingsFormDialog.js +2 -2
- package/dist/components/general-purpose/SetupChecklist.js +1 -1
- package/dist/components/general-purpose/Terminal.js +2 -2
- package/dist/components/general-purpose/TestResults.js +1 -1
- package/dist/components/general-purpose/ThemeModeControl.js +2 -2
- package/dist/components/general-purpose/WebPreview.js +3 -3
- package/dist/components/nanites/AgentConnection.js +2 -2
- package/dist/components/nanites/AgentToolDetail.js +4 -4
- package/dist/{copy-button-DHhf-J1d.js → copy-button-D7ySsRRo.js} +1 -1
- package/dist/{format-DB2mX9DA.js → format-COCyV98Z.js} +23 -1
- package/dist/{icons-Dw-im7lg.js → icons-BNEY4gO5.js} +44 -4
- package/dist/{icons-6ZnyZJiR.d.ts → icons-D0Pd2P9v.d.ts} +9 -4
- package/dist/{mcp-server-SD_S-IpB.js → mcp-server-7NR24ASj.js} +31 -4
- package/dist/{mcp-server-catalog-CCj2ItkV.d.ts → mcp-server-catalog-Cbu483Zb.d.ts} +9 -9
- package/dist/{progress-ring-BEocM1e3.js → progress-ring-Cgii90dC.js} +1 -1
- package/dist/{provider-logos-zjZycgV6.js → provider-logos-DWYY8wNz.js} +31 -6
- package/dist/styles/action-guide.css +4 -0
- package/dist/styles/agent-attention.css +5 -1
- package/dist/styles/agent-chat.css +21 -18
- package/dist/styles/agent-event.css +14 -0
- package/dist/styles/app-icon.css +21 -0
- package/dist/styles/avatar.css +2 -1
- package/dist/styles/base.css +4 -0
- package/dist/styles/brand-marks.css +22 -0
- package/dist/styles/button.css +10 -0
- package/dist/styles/composer-link.css +99 -0
- package/dist/styles/connected-app-card.css +9 -0
- package/dist/styles/github-motion-mark.css +8 -1
- package/dist/styles/index.css +3 -0
- package/dist/styles/manager-office.css +1313 -73
- package/dist/styles/mcp-plugin-catalog.css +4 -0
- package/dist/styles/mcp-server-picker.css +2 -0
- package/dist/styles/message-scroller.css +5 -0
- package/dist/styles/prompt-input.css +14 -53
- package/dist/styles/responsive-sidebar-shell.css +47 -0
- package/dist/styles/subagent-run.css +29 -19
- package/dist/styles/think-full-app.css +139 -4
- package/dist/styles/think-sidepanel.css +9 -5
- package/dist/styles/think-thread-picker.css +13 -12
- package/dist/styles/workspace-mount-manager.css +0 -22
- package/dist/utils/composer-link.d.ts +59 -0
- package/dist/utils/composer-link.js +203 -0
- package/dist/utils/mcp-server-catalog.d.ts +1 -1
- package/dist/utils/mcp-server-catalog.js +9 -9
- package/package.json +8 -8
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import { G as SidebarIcon, et as WarningIcon, f as ChevronDownIcon, r as ArrowLeftIcon } from "../../icons-
|
|
2
|
+
import { G as SidebarIcon, et as WarningIcon, f as ChevronDownIcon, r as ArrowLeftIcon } from "../../icons-BNEY4gO5.js";
|
|
3
3
|
import { Button } from "../foundations/Button.js";
|
|
4
|
-
import { t as capitalize } from "../../format-
|
|
4
|
+
import { t as capitalize } from "../../format-COCyV98Z.js";
|
|
5
5
|
import { n as mergeRefs } from "../../merge-refs-DF_7w2x_.js";
|
|
6
6
|
import { AppTopBar } from "./AppTopBar.js";
|
|
7
7
|
import { ResizableSidePanel } from "./ResizableSidePanel.js";
|
|
@@ -15,6 +15,17 @@ const sidebarMaxWidth = 384;
|
|
|
15
15
|
const sidebarKeyboardStep = 24;
|
|
16
16
|
/** Matches --sigvelo-layout-break-compact. */
|
|
17
17
|
const compactSidebarWidthRem = 56;
|
|
18
|
+
function useControllableSidebar({ sidebarOpen, defaultSidebarOpen, onSidebarOpenChange }) {
|
|
19
|
+
const [innerOpen, setInnerOpen] = React.useState(defaultSidebarOpen ?? true);
|
|
20
|
+
return [
|
|
21
|
+
sidebarOpen ?? innerOpen,
|
|
22
|
+
React.useCallback((next) => {
|
|
23
|
+
if (sidebarOpen === void 0) setInnerOpen(next);
|
|
24
|
+
onSidebarOpenChange?.(next);
|
|
25
|
+
}, [sidebarOpen, onSidebarOpenChange]),
|
|
26
|
+
setInnerOpen
|
|
27
|
+
];
|
|
28
|
+
}
|
|
18
29
|
function isCompactSidebar(root) {
|
|
19
30
|
const rootFontSize = Number.parseFloat(getComputedStyle(document.documentElement).fontSize) || 16;
|
|
20
31
|
return root.offsetWidth <= compactSidebarWidthRem * rootFontSize;
|
|
@@ -27,14 +38,19 @@ function isCompactSidebar(root) {
|
|
|
27
38
|
* hook, and its container name `responsive-sidebar-shell` is public contract:
|
|
28
39
|
* surfaces that compose the shell size themselves against it.
|
|
29
40
|
*/
|
|
30
|
-
function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", defaultSidebarWidth = sidebarDefaultWidth, bar, error, showMainLabel = "Show main content", className, children, ref, style, ...props }) {
|
|
41
|
+
function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", sidebarOpen, sidebarTogglePlacement = "main", defaultSidebarOpen, defaultSidebarWidth = sidebarDefaultWidth, onSidebarOpenChange, bar, error, showMainLabel = "Show main content", className, children, ref, style, ...props }) {
|
|
31
42
|
const sidebarId = React.useId();
|
|
32
43
|
const rootRef = React.useRef(null);
|
|
33
44
|
const mainRef = React.useRef(null);
|
|
34
45
|
const openerRef = React.useRef(null);
|
|
35
46
|
const compactRef = React.useRef(null);
|
|
36
47
|
const restoreSidebarOnWideRef = React.useRef(true);
|
|
37
|
-
const [isSidebarOpen, setSidebarOpen] =
|
|
48
|
+
const [isSidebarOpen, setSidebarOpen, primeSidebarOpen] = useControllableSidebar({
|
|
49
|
+
sidebarOpen,
|
|
50
|
+
defaultSidebarOpen,
|
|
51
|
+
onSidebarOpenChange
|
|
52
|
+
});
|
|
53
|
+
const wantsBuiltInDefault = sidebarOpen === void 0 && defaultSidebarOpen === void 0;
|
|
38
54
|
React.useLayoutEffect(() => {
|
|
39
55
|
const root = rootRef.current;
|
|
40
56
|
if (!root) return;
|
|
@@ -44,7 +60,7 @@ function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", defaultSide
|
|
|
44
60
|
const wasCompact = compactRef.current;
|
|
45
61
|
compactRef.current = compact;
|
|
46
62
|
if (wasCompact === null) {
|
|
47
|
-
if (compact)
|
|
63
|
+
if (wantsBuiltInDefault && compact) primeSidebarOpen(false);
|
|
48
64
|
return;
|
|
49
65
|
}
|
|
50
66
|
if (!wasCompact && compact) {
|
|
@@ -57,7 +73,12 @@ function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", defaultSide
|
|
|
57
73
|
const observer = new ResizeObserver(syncLayout);
|
|
58
74
|
observer.observe(root);
|
|
59
75
|
return () => observer.disconnect();
|
|
60
|
-
}, [
|
|
76
|
+
}, [
|
|
77
|
+
isSidebarOpen,
|
|
78
|
+
primeSidebarOpen,
|
|
79
|
+
setSidebarOpen,
|
|
80
|
+
wantsBuiltInDefault
|
|
81
|
+
]);
|
|
61
82
|
const hasSidebar = sidebar != null;
|
|
62
83
|
const toggleLabel = capitalize(sidebarLabel);
|
|
63
84
|
const toggleTooltip = `${isSidebarOpen ? "Hide" : "Show"} ${sidebarLabel}`;
|
|
@@ -67,23 +88,54 @@ function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", defaultSide
|
|
|
67
88
|
}, []);
|
|
68
89
|
const closeSidebar = React.useCallback(() => {
|
|
69
90
|
updateSidebar(() => setSidebarOpen(false), () => mainRef.current?.focus({ preventScroll: true }));
|
|
70
|
-
}, [updateSidebar]);
|
|
91
|
+
}, [setSidebarOpen, updateSidebar]);
|
|
71
92
|
const closeSidebarOnCompact = React.useCallback(() => {
|
|
72
93
|
if (rootRef.current && isCompactSidebar(rootRef.current)) closeSidebar();
|
|
73
94
|
}, [closeSidebar]);
|
|
74
95
|
const toggleSidebar = React.useCallback((trigger) => {
|
|
75
96
|
if (trigger) openerRef.current = trigger;
|
|
76
97
|
updateSidebar(() => setSidebarOpen(!isSidebarOpen));
|
|
77
|
-
}, [
|
|
98
|
+
}, [
|
|
99
|
+
isSidebarOpen,
|
|
100
|
+
setSidebarOpen,
|
|
101
|
+
updateSidebar
|
|
102
|
+
]);
|
|
78
103
|
const dismissSidebar = React.useCallback(() => {
|
|
79
104
|
updateSidebar(() => setSidebarOpen(false), () => openerRef.current?.focus({ preventScroll: true }));
|
|
80
|
-
}, [updateSidebar]);
|
|
105
|
+
}, [setSidebarOpen, updateSidebar]);
|
|
81
106
|
const sidebarContent = typeof sidebar === "function" ? sidebar({
|
|
82
107
|
closeSidebar,
|
|
83
108
|
closeSidebarOnCompact
|
|
84
109
|
}) : sidebar;
|
|
85
|
-
const
|
|
110
|
+
const hasCustomLeading = bar?.leading != null;
|
|
111
|
+
const hasAppLeading = bar?.back != null || hasCustomLeading;
|
|
86
112
|
const hasTitleTrigger = hasSidebar && bar?.compactTitleTrigger != null && bar?.compactLeading == null;
|
|
113
|
+
const renderSidebarToggle = (className) => hasSidebar ? /* @__PURE__ */ jsx(AppTopBar.Button, {
|
|
114
|
+
className: cx("responsive-sidebar-shell__toggle", className),
|
|
115
|
+
label: toggleLabel,
|
|
116
|
+
tooltip: toggleTooltip,
|
|
117
|
+
type: "button",
|
|
118
|
+
"aria-controls": sidebarId,
|
|
119
|
+
"aria-expanded": isSidebarOpen,
|
|
120
|
+
onClick: (event) => toggleSidebar(event.currentTarget),
|
|
121
|
+
children: /* @__PURE__ */ jsx(SidebarIcon, {})
|
|
122
|
+
}) : null;
|
|
123
|
+
const renderSidebarToggleInSidebar = () => hasSidebar ? /* @__PURE__ */ jsx(Button, {
|
|
124
|
+
className: "responsive-sidebar-shell__toggle responsive-sidebar-shell__toggle--sidebar",
|
|
125
|
+
type: "button",
|
|
126
|
+
variant: "ghost",
|
|
127
|
+
color: "neutral",
|
|
128
|
+
size: "sm",
|
|
129
|
+
iconOnly: true,
|
|
130
|
+
"aria-label": toggleLabel,
|
|
131
|
+
title: toggleTooltip,
|
|
132
|
+
"aria-controls": sidebarId,
|
|
133
|
+
"aria-expanded": isSidebarOpen,
|
|
134
|
+
onClick: (event) => toggleSidebar(event.currentTarget),
|
|
135
|
+
children: /* @__PURE__ */ jsx(SidebarIcon, {})
|
|
136
|
+
}) : null;
|
|
137
|
+
const sidebarToggle = sidebarTogglePlacement === "sidebar" && isSidebarOpen ? renderSidebarToggleInSidebar() : null;
|
|
138
|
+
const mainSidebarToggle = sidebarTogglePlacement === "sidebar" || sidebarTogglePlacement === "main" && !hasCustomLeading ? renderSidebarToggle(sidebarTogglePlacement === "sidebar" ? "responsive-sidebar-shell__toggle--sidebar-fallback" : hasTitleTrigger ? "responsive-sidebar-shell__toggle--replaced-by-title" : bar?.compactLeading != null ? "responsive-sidebar-shell__toggle--replaced-by-compact-leading" : void 0) : null;
|
|
87
139
|
const hasTopBar = !bar?.hidden && (hasSidebar || bar?.back != null || bar?.leading != null || bar?.compactLeading != null || bar?.title != null || bar?.actions != null || bar?.primary != null);
|
|
88
140
|
const compactLeadingMode = hasTitleTrigger ? "trigger" : !hasAppLeading && bar?.compactLeading != null ? "custom" : void 0;
|
|
89
141
|
return /* @__PURE__ */ jsx("div", {
|
|
@@ -93,6 +145,7 @@ function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", defaultSide
|
|
|
93
145
|
style,
|
|
94
146
|
...props,
|
|
95
147
|
"data-sidebar-open": hasSidebar && isSidebarOpen ? "true" : "false",
|
|
148
|
+
"data-sidebar-toggle-placement": sidebarTogglePlacement,
|
|
96
149
|
onKeyDown: (event) => {
|
|
97
150
|
props.onKeyDown?.(event);
|
|
98
151
|
if (!event.defaultPrevented && event.key === "Escape" && hasSidebar && isSidebarOpen && rootRef.current && isCompactSidebar(rootRef.current)) {
|
|
@@ -111,12 +164,18 @@ function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", defaultSide
|
|
|
111
164
|
keyboardStep: sidebarKeyboardStep,
|
|
112
165
|
children: [
|
|
113
166
|
hasSidebar && isSidebarOpen ? /* @__PURE__ */ jsx(ResizableSidePanel.Handle, { className: "responsive-sidebar-shell__resizer" }) : null,
|
|
114
|
-
hasSidebar ? /* @__PURE__ */
|
|
167
|
+
hasSidebar ? /* @__PURE__ */ jsxs("div", {
|
|
115
168
|
id: sidebarId,
|
|
116
169
|
className: "responsive-sidebar-shell__sidebar",
|
|
117
170
|
"aria-hidden": isSidebarOpen ? void 0 : true,
|
|
118
171
|
inert: isSidebarOpen ? void 0 : true,
|
|
119
|
-
children:
|
|
172
|
+
children: [sidebarToggle ? /* @__PURE__ */ jsx("div", {
|
|
173
|
+
className: "responsive-sidebar-shell__sidebar-leading",
|
|
174
|
+
children: sidebarToggle
|
|
175
|
+
}) : null, /* @__PURE__ */ jsx("div", {
|
|
176
|
+
className: "responsive-sidebar-shell__sidebar-content",
|
|
177
|
+
children: sidebarContent
|
|
178
|
+
})]
|
|
120
179
|
}) : null,
|
|
121
180
|
/* @__PURE__ */ jsxs("div", {
|
|
122
181
|
ref: mainRef,
|
|
@@ -135,16 +194,7 @@ function ResponsiveSidebarShell({ sidebar, sidebarLabel = "sidebar", defaultSide
|
|
|
135
194
|
children: /* @__PURE__ */ jsx(ArrowLeftIcon, {})
|
|
136
195
|
}) : null,
|
|
137
196
|
bar?.leading,
|
|
138
|
-
!
|
|
139
|
-
className: "responsive-sidebar-shell__toggle",
|
|
140
|
-
label: toggleLabel,
|
|
141
|
-
tooltip: toggleTooltip,
|
|
142
|
-
type: "button",
|
|
143
|
-
"aria-controls": sidebarId,
|
|
144
|
-
"aria-expanded": isSidebarOpen,
|
|
145
|
-
onClick: (event) => toggleSidebar(event.currentTarget),
|
|
146
|
-
children: /* @__PURE__ */ jsx(SidebarIcon, {})
|
|
147
|
-
}) : null,
|
|
197
|
+
!hasCustomLeading ? mainSidebarToggle : null,
|
|
148
198
|
compactLeadingMode === "custom" ? /* @__PURE__ */ jsx("span", {
|
|
149
199
|
className: "responsive-sidebar-shell__compact-leading",
|
|
150
200
|
children: bar?.compactLeading
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Button } from "../foundations/Button.js";
|
|
2
|
-
import { Dialog } from "../foundations/Dialog.js";
|
|
3
|
-
import { i as formatErrorMessage } from "../../format-DB2mX9DA.js";
|
|
4
2
|
import { Field } from "../foundations/Field.js";
|
|
5
3
|
import { Form } from "../foundations/Form.js";
|
|
4
|
+
import { Dialog } from "../foundations/Dialog.js";
|
|
5
|
+
import { a as formatErrorMessage } from "../../format-COCyV98Z.js";
|
|
6
6
|
import { Checkbox } from "../foundations/Checkbox.js";
|
|
7
7
|
import * as React from "react";
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as SetupChecklistGroup, t as SetupChecklistAction } from "../../SetupChecklist-
|
|
1
|
+
import { n as SetupChecklistGroup, t as SetupChecklistAction } from "../../SetupChecklist-DyPZWzK2.js";
|
|
2
2
|
export { SetupChecklistAction, SetupChecklistGroup };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import { Q as TerminalIcon, nt as XIcon } from "../../icons-
|
|
2
|
+
import { Q as TerminalIcon, nt as XIcon } from "../../icons-BNEY4gO5.js";
|
|
3
3
|
import { IconButton } from "../foundations/IconButton.js";
|
|
4
|
+
import { t as CopyButton } from "../../copy-button-D7ySsRRo.js";
|
|
4
5
|
import { ScrollArea } from "../foundations/ScrollArea.js";
|
|
5
|
-
import { t as CopyButton } from "../../copy-button-DHhf-J1d.js";
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import Anser from "anser";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import { d as CheckIcon, nt as XIcon, p as ChevronRightIcon, q as SpinnerIcon } from "../../icons-Dw-im7lg.js";
|
|
3
2
|
import { Collapsible } from "../foundations/Collapsible.js";
|
|
3
|
+
import { d as CheckIcon, nt as XIcon, p as ChevronRightIcon, q as SpinnerIcon } from "../../icons-BNEY4gO5.js";
|
|
4
4
|
import { Progress } from "../foundations/Progress.js";
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { F as MoonIcon, P as MonitorIcon, X as SunIcon } from "../../icons-
|
|
2
|
-
import { useTheme } from "../foundations/ThemeProvider.js";
|
|
1
|
+
import { F as MoonIcon, P as MonitorIcon, X as SunIcon } from "../../icons-BNEY4gO5.js";
|
|
3
2
|
import { Radio, RadioGroup } from "../foundations/RadioGroup.js";
|
|
3
|
+
import { useTheme } from "../foundations/ThemeProvider.js";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
//#region src/components/general-purpose/ThemeModeControl.tsx
|
|
6
6
|
const modes = [
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import { U as RefreshIcon, f as ChevronDownIcon, i as ArrowRightIcon, r as ArrowLeftIcon } from "../../icons-Dw-im7lg.js";
|
|
3
|
-
import { IconButton } from "../foundations/IconButton.js";
|
|
4
2
|
import { Collapsible } from "../foundations/Collapsible.js";
|
|
5
|
-
import {
|
|
3
|
+
import { U as RefreshIcon, f as ChevronDownIcon, i as ArrowRightIcon, r as ArrowLeftIcon } from "../../icons-BNEY4gO5.js";
|
|
4
|
+
import { IconButton } from "../foundations/IconButton.js";
|
|
6
5
|
import { Input } from "../foundations/Input.js";
|
|
6
|
+
import { ScrollArea } from "../foundations/ScrollArea.js";
|
|
7
7
|
import * as React from "react";
|
|
8
8
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
//#region src/components/general-purpose/WebPreview.tsx
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import { D as LinkIcon } from "../../icons-
|
|
2
|
+
import { D as LinkIcon } from "../../icons-BNEY4gO5.js";
|
|
3
3
|
import { Button } from "../foundations/Button.js";
|
|
4
|
+
import { a as CodeBlockCopyButton, i as CodeBlockContent, n as CodeBlockActions, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock } from "../../CodeBlock-BpooTofO.js";
|
|
4
5
|
import { Popover } from "../foundations/Popover.js";
|
|
5
|
-
import { a as CodeBlockCopyButton, i as CodeBlockContent, n as CodeBlockActions, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock } from "../../CodeBlock-Dl7a3Wqo.js";
|
|
6
6
|
import { ToggleGroup } from "../foundations/ToggleGroup.js";
|
|
7
7
|
import * as React from "react";
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import { r as ArrowLeftIcon } from "../../icons-
|
|
2
|
+
import { r as ArrowLeftIcon } from "../../icons-BNEY4gO5.js";
|
|
3
3
|
import { TransitionSurface } from "../foundations/TransitionSurface.js";
|
|
4
4
|
import { AppTopBar } from "../general-purpose/AppTopBar.js";
|
|
5
|
-
import { SubagentRunMilestone, SubagentRunMilestones, SubagentRunProgress } from "../agents-sdk/SubagentRunDetails.js";
|
|
6
|
-
import { SubagentRunIndicator, getSubagentRunName } from "../agents-sdk/SubagentRunIndicator.js";
|
|
7
5
|
import { NaniteMark } from "./NaniteScene.js";
|
|
8
|
-
import {
|
|
6
|
+
import { SubagentRunIndicator, getSubagentRunName } from "../agents-sdk/SubagentRunIndicator.js";
|
|
7
|
+
import { SubagentRunMilestone, SubagentRunMilestones, SubagentRunProgress } from "../agents-sdk/SubagentRunDetails.js";
|
|
8
|
+
import { t as ThinkChat } from "../../ThinkChat-qztQ6Clo.js";
|
|
9
9
|
import * as React from "react";
|
|
10
10
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
11
|
import { useAgentChat } from "@cloudflare/think/react";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as CheckIcon, h as CopyIcon } from "./icons-
|
|
1
|
+
import { d as CheckIcon, h as CopyIcon } from "./icons-BNEY4gO5.js";
|
|
2
2
|
import { IconButton } from "./components/foundations/IconButton.js";
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -38,6 +38,28 @@ function formatErrorMessage(error) {
|
|
|
38
38
|
return error instanceof Error ? error.message : String(error);
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
+
* How much of one line a collapsed row carries before it is cut. One bound for
|
|
42
|
+
* every such row — a run's status line, an activity row's detail — because
|
|
43
|
+
* they stack in the same transcript and two limits would read as drift.
|
|
44
|
+
*/
|
|
45
|
+
const LINE_LIMIT = 160;
|
|
46
|
+
/**
|
|
47
|
+
* The trimmed, non-empty lines of `value`. Callers that want the newest line
|
|
48
|
+
* of a stream take the last one; `firstLine` covers the common case.
|
|
49
|
+
*/
|
|
50
|
+
function textLines(value) {
|
|
51
|
+
return value.split("\n").map((entry) => entry.trim()).filter((entry) => entry.length > 0);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* `value` reduced to the one line a collapsed row shows: its first non-empty
|
|
55
|
+
* line, cut with an ellipsis. Empty when `value` has no line to show, so a
|
|
56
|
+
* caller can fall back to its own wording.
|
|
57
|
+
*/
|
|
58
|
+
function firstLine(value) {
|
|
59
|
+
const line = textLines(value).at(0) ?? "";
|
|
60
|
+
return line.length > LINE_LIMIT ? `${line.slice(0, LINE_LIMIT - 1)}…` : line;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
41
63
|
* Renders an unknown upstream value as display text. Tool arguments, results,
|
|
42
64
|
* and audit records arrive in shapes this package never declared, so a bigint,
|
|
43
65
|
* a cycle, or a value `JSON.stringify` has no answer for is an ordinary input
|
|
@@ -53,4 +75,4 @@ function formatUnknownValue(value, space) {
|
|
|
53
75
|
}
|
|
54
76
|
}
|
|
55
77
|
//#endregion
|
|
56
|
-
export {
|
|
78
|
+
export { formatErrorMessage as a, titleCase as c, formatClock as i, clamp as n, formatUnknownValue as o, firstLine as r, textLines as s, capitalize as t };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { t as cx } from "./class-names-BiMDVpUo.js";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
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, Mail, 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";
|
|
3
|
-
import { FaSlack } from "react-icons/fa6";
|
|
4
4
|
import { SiDiscord, SiModelcontextprotocol } from "react-icons/si";
|
|
5
|
-
import { jsx } from "react/jsx-runtime";
|
|
6
5
|
//#region src/components/_internal/icons.tsx
|
|
7
6
|
function icon(Component) {
|
|
8
7
|
return function DesignSystemIcon({ size = 16, strokeWidth = 1.75, ...props }) {
|
|
@@ -84,8 +83,49 @@ const MonitorIcon = icon(Monitor);
|
|
|
84
83
|
const MessageSquareIcon = icon(MessageSquare);
|
|
85
84
|
const MailIcon = icon(Mail);
|
|
86
85
|
const McpIcon = brandIcon(SiModelcontextprotocol);
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
/** Discord Blurple. Callers override with `color` or a `className` that sets color. */
|
|
87
|
+
function DiscordIcon({ size = 16, color = "#5865F2", className, ...props }) {
|
|
88
|
+
return /* @__PURE__ */ jsx(SiDiscord, {
|
|
89
|
+
size,
|
|
90
|
+
color,
|
|
91
|
+
"aria-hidden": "true",
|
|
92
|
+
focusable: "false",
|
|
93
|
+
className: cx("sigvelo-brand-mark", "sigvelo-brand-mark--discord", className),
|
|
94
|
+
...props
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
/** Four-color Slack hash. Official fills live on the paths, not currentColor. */
|
|
98
|
+
function SlackIcon({ size = 16, className, ...props }) {
|
|
99
|
+
return /* @__PURE__ */ jsxs("svg", {
|
|
100
|
+
width: size,
|
|
101
|
+
height: size,
|
|
102
|
+
viewBox: "0 0 200 200",
|
|
103
|
+
fill: "none",
|
|
104
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
105
|
+
"aria-hidden": "true",
|
|
106
|
+
focusable: "false",
|
|
107
|
+
className: cx("sigvelo-brand-mark", "sigvelo-brand-mark--colorful", className),
|
|
108
|
+
...props,
|
|
109
|
+
children: [
|
|
110
|
+
/* @__PURE__ */ jsx("path", {
|
|
111
|
+
d: "M53.0056 121.477C53.0056 130.921 45.3784 138.555 35.9413 138.555C26.5042 138.555 18.877 130.921 18.877 121.477C18.877 112.032 26.5042 104.398 35.9413 104.398H53.0056V121.477ZM61.5378 121.477C61.5378 112.032 69.165 104.398 78.6021 104.398C88.0392 104.398 95.6664 112.032 95.6664 121.477V164.172C95.6664 173.617 88.0392 181.25 78.6021 181.25C69.165 181.25 61.5378 173.617 61.5378 164.172V121.477Z",
|
|
112
|
+
fill: "#E01E5A"
|
|
113
|
+
}),
|
|
114
|
+
/* @__PURE__ */ jsx("path", {
|
|
115
|
+
d: "M78.6044 52.9062C69.1673 52.9062 61.5401 45.2728 61.5401 35.8281C61.5401 26.3834 69.1673 18.75 78.6044 18.75C88.0415 18.75 95.6688 26.3834 95.6688 35.8281V52.9062H78.6044ZM78.6044 61.5747C88.0415 61.5747 95.6688 69.2081 95.6688 78.6528C95.6688 88.0975 88.0415 95.7309 78.6044 95.7309H35.8143C26.3772 95.7309 18.75 88.0975 18.75 78.6528C18.75 69.2081 26.3772 61.5747 35.8143 61.5747H78.6044Z",
|
|
116
|
+
fill: "#36C5F0"
|
|
117
|
+
}),
|
|
118
|
+
/* @__PURE__ */ jsx("path", {
|
|
119
|
+
d: "M146.991 78.6528C146.991 69.2081 154.618 61.5747 164.055 61.5747C173.492 61.5747 181.12 69.2081 181.12 78.6528C181.12 88.0975 173.492 95.7309 164.055 95.7309H146.991V78.6528ZM138.459 78.6528C138.459 88.0975 130.831 95.7309 121.394 95.7309C111.957 95.7309 104.33 88.0975 104.33 78.6528V35.8281C104.33 26.3834 111.957 18.75 121.394 18.75C130.831 18.75 138.459 26.3834 138.459 35.8281V78.6528Z",
|
|
120
|
+
fill: "#2EB67D"
|
|
121
|
+
}),
|
|
122
|
+
/* @__PURE__ */ jsx("path", {
|
|
123
|
+
d: "M121.394 147.094C130.831 147.094 138.459 154.727 138.459 164.172C138.459 173.617 130.831 181.25 121.394 181.25C111.957 181.25 104.33 173.617 104.33 164.172V147.094H121.394ZM121.394 138.555C111.957 138.555 104.33 130.921 104.33 121.477C104.33 112.032 111.957 104.398 121.394 104.398H164.184C173.622 104.398 181.249 112.032 181.249 121.477C181.249 130.921 173.622 138.555 164.184 138.555H121.394Z",
|
|
124
|
+
fill: "#ECB22E"
|
|
125
|
+
})
|
|
126
|
+
]
|
|
127
|
+
});
|
|
128
|
+
}
|
|
89
129
|
const MoonIcon = icon(Moon);
|
|
90
130
|
const SunIcon = icon(Sun);
|
|
91
131
|
const TargetIcon = icon(Target);
|
|
@@ -262,14 +262,19 @@ declare const McpIcon: ({
|
|
|
262
262
|
size,
|
|
263
263
|
...props
|
|
264
264
|
}: BrandIconProps) => import("react").JSX.Element;
|
|
265
|
-
|
|
265
|
+
/** Discord Blurple. Callers override with `color` or a `className` that sets color. */
|
|
266
|
+
declare function DiscordIcon({
|
|
266
267
|
size,
|
|
268
|
+
color,
|
|
269
|
+
className,
|
|
267
270
|
...props
|
|
268
|
-
}: BrandIconProps)
|
|
269
|
-
|
|
271
|
+
}: BrandIconProps): import("react").JSX.Element;
|
|
272
|
+
/** Four-color Slack hash. Official fills live on the paths, not currentColor. */
|
|
273
|
+
declare function SlackIcon({
|
|
270
274
|
size,
|
|
275
|
+
className,
|
|
271
276
|
...props
|
|
272
|
-
}: BrandIconProps)
|
|
277
|
+
}: BrandIconProps): import("react").JSX.Element;
|
|
273
278
|
declare const MoonIcon: ({
|
|
274
279
|
size,
|
|
275
280
|
strokeWidth,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getMcpServerEntry, getMcpServerIconSrc, getMcpServerRuntimeState } from "./utils/mcp-server-catalog.js";
|
|
1
|
+
import { DEFAULT_MCP_SERVER_CARDS, getMcpServerEntry, getMcpServerIconSrc, getMcpServerRuntimeState } from "./utils/mcp-server-catalog.js";
|
|
2
2
|
import { AppIcon } from "./components/foundations/AppIcon.js";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
//#region src/components/_internal/mcp-server.tsx
|
|
@@ -25,8 +25,35 @@ function getMcpServerProjection(card, mcp, serverId) {
|
|
|
25
25
|
serverId: entry?.[0]
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
|
+
/** Match a live MCP entry or channel name to a catalog card that already has a brand mark. */
|
|
29
|
+
function findCatalogMcpServerCard(query) {
|
|
30
|
+
const id = query.id?.trim().toLowerCase();
|
|
31
|
+
const name = query.name?.trim().toLowerCase();
|
|
32
|
+
let hostname;
|
|
33
|
+
if (query.url) try {
|
|
34
|
+
hostname = new URL(query.url).hostname;
|
|
35
|
+
} catch {
|
|
36
|
+
hostname = void 0;
|
|
37
|
+
}
|
|
38
|
+
return DEFAULT_MCP_SERVER_CARDS.find((candidate) => {
|
|
39
|
+
if (!candidate.url) return false;
|
|
40
|
+
if (id && candidate.id === id) return true;
|
|
41
|
+
if (name && (candidate.name.toLowerCase() === name || candidate.id === name)) return true;
|
|
42
|
+
if (!hostname) return false;
|
|
43
|
+
try {
|
|
44
|
+
return new URL(candidate.url).hostname === hostname;
|
|
45
|
+
} catch {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
28
50
|
function McpServerIcon({ server, size = "lg", variant }) {
|
|
29
|
-
const
|
|
51
|
+
const resolved = server.icon == null ? findCatalogMcpServerCard({
|
|
52
|
+
id: server.id,
|
|
53
|
+
name: server.name,
|
|
54
|
+
url: server.url
|
|
55
|
+
}) ?? server : server;
|
|
56
|
+
const src = getMcpServerIconSrc(resolved);
|
|
30
57
|
return /* @__PURE__ */ jsxs(AppIcon.Root, {
|
|
31
58
|
size,
|
|
32
59
|
variant,
|
|
@@ -35,8 +62,8 @@ function McpServerIcon({ server, size = "lg", variant }) {
|
|
|
35
62
|
alt: "",
|
|
36
63
|
fit: "contain",
|
|
37
64
|
src
|
|
38
|
-
}, src) : null, /* @__PURE__ */ jsx(AppIcon.Fallback, { children:
|
|
65
|
+
}, src) : null, /* @__PURE__ */ jsx(AppIcon.Fallback, { children: resolved.name.slice(0, 1) })]
|
|
39
66
|
});
|
|
40
67
|
}
|
|
41
68
|
//#endregion
|
|
42
|
-
export {
|
|
69
|
+
export { findCatalogMcpServerCard as n, getMcpServerProjection as r, McpServerIcon as t };
|
|
@@ -271,7 +271,7 @@ declare const DCR_MCP_SERVER_CARDS: readonly [{
|
|
|
271
271
|
readonly url: "https://mcp.miro.com/mcp";
|
|
272
272
|
readonly description: "Work with boards and diagrams";
|
|
273
273
|
readonly category: "Auto";
|
|
274
|
-
readonly icon: "https://cdn.simpleicons.org/miro/
|
|
274
|
+
readonly icon: "https://cdn.simpleicons.org/miro/050038";
|
|
275
275
|
}, {
|
|
276
276
|
readonly id: "monday";
|
|
277
277
|
readonly name: "monday.com";
|
|
@@ -292,14 +292,14 @@ declare const DCR_MCP_SERVER_CARDS: readonly [{
|
|
|
292
292
|
readonly url: "https://mcp.notion.com/mcp";
|
|
293
293
|
readonly description: "Work across docs, wikis, and project notes";
|
|
294
294
|
readonly category: "Auto";
|
|
295
|
-
readonly icon: "https://cdn.simpleicons.org/notion/
|
|
295
|
+
readonly icon: "https://cdn.simpleicons.org/notion/000000";
|
|
296
296
|
}, {
|
|
297
297
|
readonly id: "paypal";
|
|
298
298
|
readonly name: "PayPal";
|
|
299
299
|
readonly url: "https://mcp.paypal.com/mcp";
|
|
300
300
|
readonly description: "Use PayPal merchant tools";
|
|
301
301
|
readonly category: "Auto";
|
|
302
|
-
readonly icon: "https://cdn.simpleicons.org/paypal/
|
|
302
|
+
readonly icon: "https://cdn.simpleicons.org/paypal/002991";
|
|
303
303
|
}, {
|
|
304
304
|
readonly id: "postman";
|
|
305
305
|
readonly name: "Postman";
|
|
@@ -313,7 +313,7 @@ declare const DCR_MCP_SERVER_CARDS: readonly [{
|
|
|
313
313
|
readonly url: "https://mcp.railway.com";
|
|
314
314
|
readonly description: "Manage Railway projects and services";
|
|
315
315
|
readonly category: "Auto";
|
|
316
|
-
readonly icon: "https://cdn.simpleicons.org/railway/
|
|
316
|
+
readonly icon: "https://cdn.simpleicons.org/railway/0B0D0E";
|
|
317
317
|
}, {
|
|
318
318
|
readonly id: "ramp";
|
|
319
319
|
readonly name: "Ramp";
|
|
@@ -327,7 +327,7 @@ declare const DCR_MCP_SERVER_CARDS: readonly [{
|
|
|
327
327
|
readonly url: "https://mcp.sentry.dev/mcp";
|
|
328
328
|
readonly description: "Debug errors and inspect projects";
|
|
329
329
|
readonly category: "Auto";
|
|
330
|
-
readonly icon: "https://cdn.simpleicons.org/sentry/
|
|
330
|
+
readonly icon: "https://cdn.simpleicons.org/sentry/362D59";
|
|
331
331
|
}, {
|
|
332
332
|
readonly id: "square";
|
|
333
333
|
readonly name: "Square";
|
|
@@ -348,14 +348,14 @@ declare const DCR_MCP_SERVER_CARDS: readonly [{
|
|
|
348
348
|
readonly url: "https://mcp.supabase.com/mcp";
|
|
349
349
|
readonly description: "Manage Supabase projects";
|
|
350
350
|
readonly category: "Auto";
|
|
351
|
-
readonly icon: "https://cdn.simpleicons.org/supabase/
|
|
351
|
+
readonly icon: "https://cdn.simpleicons.org/supabase/3FCF8E";
|
|
352
352
|
}, {
|
|
353
353
|
readonly id: "vercel";
|
|
354
354
|
readonly name: "Vercel";
|
|
355
355
|
readonly url: "https://mcp.vercel.com";
|
|
356
356
|
readonly description: "Manage projects and deployments";
|
|
357
357
|
readonly category: "Auto";
|
|
358
|
-
readonly icon: "https://cdn.simpleicons.org/vercel/
|
|
358
|
+
readonly icon: "https://cdn.simpleicons.org/vercel/000000";
|
|
359
359
|
}, {
|
|
360
360
|
readonly id: "webflow";
|
|
361
361
|
readonly name: "Webflow";
|
|
@@ -369,7 +369,7 @@ declare const DCR_MCP_SERVER_CARDS: readonly [{
|
|
|
369
369
|
readonly url: "https://mcp.wix.com/mcp";
|
|
370
370
|
readonly description: "Work with Wix sites and apps";
|
|
371
371
|
readonly category: "Auto";
|
|
372
|
-
readonly icon: "https://cdn.simpleicons.org/wix/
|
|
372
|
+
readonly icon: "https://cdn.simpleicons.org/wix/0C6EFC";
|
|
373
373
|
}, {
|
|
374
374
|
readonly id: "zapier";
|
|
375
375
|
readonly name: "Zapier";
|
|
@@ -514,7 +514,7 @@ declare const MANUAL_MCP_SERVER_CARDS: readonly [{
|
|
|
514
514
|
readonly url: "https://chatmcp.googleapis.com/mcp/v1";
|
|
515
515
|
readonly description: "Read spaces, memberships, and messages";
|
|
516
516
|
readonly category: "Manual";
|
|
517
|
-
readonly icon: "https://cdn.simpleicons.org/googlechat/
|
|
517
|
+
readonly icon: "https://cdn.simpleicons.org/googlechat/34A853";
|
|
518
518
|
readonly manualSetup: {
|
|
519
519
|
readonly auth: {
|
|
520
520
|
readonly type: "manual_oauth_client";
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
+
import { t as cx } from "./class-names-BiMDVpUo.js";
|
|
1
2
|
import "react";
|
|
2
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
4
|
//#region src/components/_internal/provider-logos.tsx
|
|
4
|
-
function Svg({ children, size = 16, ...props }) {
|
|
5
|
+
function Svg({ children, size = 16, fill = "currentColor", className, ...props }) {
|
|
5
6
|
return /* @__PURE__ */ jsx("svg", {
|
|
6
7
|
width: size,
|
|
7
8
|
height: size,
|
|
8
9
|
viewBox: "0 0 24 24",
|
|
9
|
-
fill
|
|
10
|
+
fill,
|
|
10
11
|
xmlns: "http://www.w3.org/2000/svg",
|
|
11
12
|
"aria-hidden": "true",
|
|
12
13
|
focusable: "false",
|
|
14
|
+
className: cx("sigvelo-brand-mark", className),
|
|
13
15
|
...props,
|
|
14
16
|
children
|
|
15
17
|
});
|
|
@@ -18,15 +20,38 @@ const OpenAILogo = (props) => /* @__PURE__ */ jsx(Svg, {
|
|
|
18
20
|
...props,
|
|
19
21
|
children: /* @__PURE__ */ jsx("path", { d: "M22.28 9.81a5.99 5.99 0 0 0-.52-4.91 6.05 6.05 0 0 0-6.52-2.9A6.05 6.05 0 0 0 10.58 0a6.05 6.05 0 0 0-5.77 4.18 5.99 5.99 0 0 0-4 2.9 6.05 6.05 0 0 0 .74 7.09 5.99 5.99 0 0 0 .52 4.91 6.05 6.05 0 0 0 6.52 2.9A5.99 5.99 0 0 0 13.25 24a6.05 6.05 0 0 0 5.77-4.19 5.99 5.99 0 0 0 4-2.9 6.05 6.05 0 0 0-.74-7.1ZM13.25 22.44a4.48 4.48 0 0 1-2.88-1.04l.14-.08 4.79-2.76a.78.78 0 0 0 .39-.68v-6.75l2.02 1.17c.02 0 .04.03.04.05v5.58a4.5 4.5 0 0 1-4.5 4.5ZM3.57 18.3a4.5 4.5 0 0 1-.54-3.03l.14.09 4.79 2.76a.78.78 0 0 0 .78 0l5.85-3.37v2.33c0 .02 0 .04-.03.06L9.72 19.94a4.5 4.5 0 0 1-6.15-1.64ZM2.31 7.88a4.48 4.48 0 0 1 2.35-1.97v5.69a.78.78 0 0 0 .39.67l5.83 3.36-2.02 1.17a.07.07 0 0 1-.07 0l-4.83-2.8A4.5 4.5 0 0 1 2.3 7.9Zm16.64 3.87L13.1 8.37l2.02-1.17c.02 0 .05-.01.07 0l4.83 2.8a4.5 4.5 0 0 1-.67 8.11V12.4a.77.77 0 0 0-.4-.66Zm2-3.03-.14-.09-4.78-2.78a.78.78 0 0 0-.79 0L9.4 9.25V6.92c0-.02 0-.04.02-.05l4.83-2.79a4.5 4.5 0 0 1 6.68 4.66Zm-12.68 4.17-2.02-1.17a.07.07 0 0 1-.04-.06V6.1a4.5 4.5 0 0 1 7.38-3.45l-.14.08L8.66 5.5a.78.78 0 0 0-.4.68v6.74Zm1.1-2.36 2.6-1.5 2.61 1.5v3l-2.6 1.5-2.6-1.5Z" })
|
|
20
22
|
});
|
|
21
|
-
const AnthropicLogo = (props) => /* @__PURE__ */ jsxs(Svg, {
|
|
23
|
+
const AnthropicLogo = ({ className, ...props }) => /* @__PURE__ */ jsxs(Svg, {
|
|
24
|
+
className: cx("sigvelo-brand-mark--colorful", className),
|
|
25
|
+
fill: "#D97757",
|
|
22
26
|
...props,
|
|
23
27
|
children: [/* @__PURE__ */ jsx("path", { d: "M13.83 4H17.3L24 20h-3.47l-1.37-3.52h-7L10.82 20H7.36ZM13.25 13.58h4.8l-2.4-6.15Z" }), /* @__PURE__ */ jsx("path", { d: "M0 4h3.47l6.7 16H6.7Z" })]
|
|
24
28
|
});
|
|
25
|
-
const GoogleLogo = (props) => /* @__PURE__ */
|
|
29
|
+
const GoogleLogo = ({ className, ...props }) => /* @__PURE__ */ jsxs(Svg, {
|
|
30
|
+
className: cx("sigvelo-brand-mark--colorful", className),
|
|
31
|
+
fill: "none",
|
|
26
32
|
...props,
|
|
27
|
-
children:
|
|
33
|
+
children: [
|
|
34
|
+
/* @__PURE__ */ jsx("path", {
|
|
35
|
+
fill: "#4285F4",
|
|
36
|
+
d: "M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z"
|
|
37
|
+
}),
|
|
38
|
+
/* @__PURE__ */ jsx("path", {
|
|
39
|
+
fill: "#34A853",
|
|
40
|
+
d: "M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z"
|
|
41
|
+
}),
|
|
42
|
+
/* @__PURE__ */ jsx("path", {
|
|
43
|
+
fill: "#FBBC05",
|
|
44
|
+
d: "M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z"
|
|
45
|
+
}),
|
|
46
|
+
/* @__PURE__ */ jsx("path", {
|
|
47
|
+
fill: "#EA4335",
|
|
48
|
+
d: "M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z"
|
|
49
|
+
})
|
|
50
|
+
]
|
|
28
51
|
});
|
|
29
|
-
const MetaLogo = (props) => /* @__PURE__ */ jsx(Svg, {
|
|
52
|
+
const MetaLogo = ({ className, ...props }) => /* @__PURE__ */ jsx(Svg, {
|
|
53
|
+
className: cx("sigvelo-brand-mark--colorful", className),
|
|
54
|
+
fill: "#0668E1",
|
|
30
55
|
...props,
|
|
31
56
|
children: /* @__PURE__ */ jsx("path", { d: "M2 12.5c0-3.5 1.8-6.5 4.4-6.5 1.8 0 3.2 1.3 4.9 3.8 2.2 3.2 3.3 5 4.6 5 1 0 1.5-.8 1.5-2.3 0-2.1-1-4.3-2.7-4.3-1 0-2 .6-3.2 2l-1.3-1.7C11.5 6.8 12.9 6 14.5 6c3 0 5.5 3.3 5.5 7 0 3.3-1.6 5-3.8 5-2.3 0-3.6-1.6-6-5.3C8.9 10.4 8 9.2 6.8 9.2 5.4 9.2 4.3 10.6 4.3 13c0 1.8.5 3 1.3 3 .6 0 1.1-.3 1.8-1.1l1.3 1.7C7.6 17.6 6.3 18 5.3 18 3.3 18 2 16 2 12.5Z" })
|
|
32
57
|
});
|
|
@@ -50,11 +50,15 @@
|
|
|
50
50
|
background: var(--sigvelo-color-danger-bg-subtle);
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
.agent-attention__icon > :is(svg, img) {
|
|
53
|
+
.agent-attention__icon > :is(svg, img, .app-icon) {
|
|
54
54
|
inline-size: 1rem;
|
|
55
55
|
block-size: 1rem;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
+
.agent-attention__icon :is(img, .app-icon__image) {
|
|
59
|
+
color: unset;
|
|
60
|
+
}
|
|
61
|
+
|
|
58
62
|
.agent-attention__text {
|
|
59
63
|
display: grid;
|
|
60
64
|
min-inline-size: 0;
|