@mcp-b/react-components 0.27.0 → 0.29.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-B6sgfQ_q.d.ts → AgentChat-Dy3cKCd-.d.ts} +13 -5
- package/dist/{AgentChatStartScreen-DDZ25aax.d.ts → AgentChatStartScreen-DXZ0hAX0.d.ts} +23 -5
- package/dist/{PromptInput-CES0WO4u.d.ts → PromptInput-B75Np5VB.d.ts} +7 -1
- package/dist/SessionCompaction-DMa1vv6Y.d.ts +59 -0
- package/dist/{ThinkChat-DVhCEjq-.js → ThinkChat-Bp-nAnoW.js} +14 -2
- package/dist/{ThinkChatActivity-DawPYgga.d.ts → ThinkChatActivity-Dq0lOAgw.d.ts} +3 -3
- package/dist/{ThinkChatActivitySummary-kr5fE0wg.d.ts → ThinkChatActivitySummary-F062wneC.d.ts} +1 -1
- package/dist/{ThinkChatToolParts-CSzVwMXf.d.ts → ThinkChatToolParts-BfroXQ4F.d.ts} +19 -1
- package/dist/{Workspace-CIycQ4xE.d.ts → Workspace-Bn6In4wi.d.ts} +5 -1
- package/dist/{WorkspaceExplorer-BCipn7Vd.d.ts → WorkspaceExplorer-D0aiscG6.d.ts} +1 -1
- package/dist/components/ActionGuide.d.ts +23 -5
- package/dist/components/ActionGuide.js +18 -4
- package/dist/components/AgentChat.d.ts +1 -1
- package/dist/components/AgentChat.js +24 -11
- package/dist/components/AgentChatStartScreen.d.ts +2 -2
- package/dist/components/AgentChatStartScreen.js +16 -5
- package/dist/components/AgentConnection.d.ts +1 -1
- package/dist/components/AgentToolDetail.js +1 -1
- package/dist/components/ChatGptSignInScreen.d.ts +9 -1
- package/dist/components/ChatGptSignInScreen.js +15 -4
- package/dist/components/ConversationTabPicker.d.ts +31 -0
- package/dist/components/ConversationTabPicker.js +117 -0
- package/dist/components/Goal.d.ts +28 -1
- package/dist/components/Goal.js +76 -3
- package/dist/components/McpConnectionRequest.d.ts +11 -5
- package/dist/components/McpConnectionRequest.js +22 -16
- package/dist/components/McpPluginCatalog.d.ts +1 -1
- package/dist/components/McpServerPicker.d.ts +18 -3
- package/dist/components/McpServerPicker.js +38 -23
- package/dist/components/Plan.d.ts +18 -1
- package/dist/components/Plan.js +17 -1
- package/dist/components/PromptInput.d.ts +2 -2
- package/dist/components/PromptInput.js +43 -5
- package/dist/components/SessionCompaction.d.ts +1 -58
- package/dist/components/SettingsFormDialog.d.ts +43 -0
- package/dist/components/SettingsFormDialog.js +110 -0
- package/dist/components/ThinkChat.d.ts +13 -7
- package/dist/components/ThinkChat.js +3 -3
- package/dist/components/ThinkChatActivity.d.ts +3 -3
- package/dist/components/ThinkChatActivitySummary.d.ts +1 -1
- package/dist/components/ThinkChatToolPanels.d.ts +1 -1
- package/dist/components/ThinkChatToolPanels.js +1 -1
- package/dist/components/ThinkChatToolParts.d.ts +1 -1
- package/dist/components/ThinkFullApp.d.ts +6 -12
- package/dist/components/ThinkFullApp.js +4 -4
- package/dist/components/ThinkThreadPicker.d.ts +4 -1
- package/dist/components/ThinkThreadPicker.js +6 -1
- package/dist/components/Workspace.d.ts +2 -2
- package/dist/components/Workspace.js +10 -6
- package/dist/components/WorkspaceBrowser.d.ts +1 -1
- package/dist/components/WorkspaceExplorer.d.ts +3 -3
- package/dist/components/WorkspaceExplorer.js +2 -2
- package/dist/components/WorkspaceMountManager.d.ts +32 -0
- package/dist/components/WorkspaceMountManager.js +89 -0
- package/dist/{mcp-server-catalog-BewjV7Eq.d.ts → mcp-server-catalog-CO7GAl1f.d.ts} +1 -1
- package/dist/styles/chatgpt-sign-in-screen.css +10 -1
- package/dist/styles/conversation-tab-picker.css +24 -0
- package/dist/styles/index.css +2 -0
- package/dist/styles/workspace-mount-manager.css +24 -0
- package/dist/utils/mcp-server-catalog.d.ts +1 -1
- package/dist/utils/mcp-server-catalog.js +1 -1
- package/package.json +13 -13
|
@@ -69,6 +69,14 @@ function workspaceQueryKey(sourceKey, root) {
|
|
|
69
69
|
root
|
|
70
70
|
];
|
|
71
71
|
}
|
|
72
|
+
/** Directory-listing prefix for targeted cache invalidation. */
|
|
73
|
+
function workspaceDirectoryQueryPrefix(sourceKey, root) {
|
|
74
|
+
return [...workspaceQueryKey(sourceKey, root), "directory"];
|
|
75
|
+
}
|
|
76
|
+
/** Exact directory-listing key shared by query options and live hosts. */
|
|
77
|
+
function workspaceDirectoryQueryKey(sourceKey, root, path) {
|
|
78
|
+
return [...workspaceDirectoryQueryPrefix(sourceKey, root), path];
|
|
79
|
+
}
|
|
72
80
|
function workspaceFileQueryKey(sourceKey, root, requestedPath) {
|
|
73
81
|
return [
|
|
74
82
|
...workspaceQueryKey(sourceKey, root),
|
|
@@ -91,11 +99,7 @@ function workspaceFileVersion(target) {
|
|
|
91
99
|
/** Shared directory options for workspace components and route loaders. */
|
|
92
100
|
function workspaceDirectoryQueryOptions(source, sourceKey, root, path) {
|
|
93
101
|
return queryOptions({
|
|
94
|
-
queryKey:
|
|
95
|
-
...workspaceQueryKey(sourceKey, root),
|
|
96
|
-
"directory",
|
|
97
|
-
path
|
|
98
|
-
],
|
|
102
|
+
queryKey: workspaceDirectoryQueryKey(sourceKey, root, path),
|
|
99
103
|
queryFn: async ({ signal }) => {
|
|
100
104
|
const entries = [];
|
|
101
105
|
let offset = 0;
|
|
@@ -436,4 +440,4 @@ function useWorkspace({ source, sourceKey, root = "/", selectedPath, onSelectedP
|
|
|
436
440
|
};
|
|
437
441
|
}
|
|
438
442
|
//#endregion
|
|
439
|
-
export { useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryOptions, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions };
|
|
443
|
+
export { useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryKey, workspaceDirectoryQueryOptions, workspaceDirectoryQueryPrefix, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as WorkspaceFileLinkProps, c as WorkspaceLinkResolution, d as WorkspaceNavigationProvider, f as WorkspaceNavigationProviderProps, i as WorkspaceFileLink, l as WorkspaceNavigationAdapter, n as WorkspaceDestination, o as WorkspaceInvalidDestination, p as resolveWorkspaceLink, r as WorkspaceExternalDestination, s as WorkspaceLinkBase, t as ResolveWorkspaceLinkOptions, u as WorkspaceNavigationEntry } from "../WorkspaceLink-O-EBKUJ8.js";
|
|
2
2
|
import { a as WorkspaceMediaInfo, c as WorkspaceMediaTrackKind, d as inferWorkspaceLanguage, f as inferWorkspaceMedia, g as parseWorkspaceSkill, h as isWorkspaceSkillPath, i as WorkspaceFileState, l as WorkspaceSkillDocument, m as isWorkspaceMediaPath, n as WorkspaceFileAssetRequest, o as WorkspaceMediaKind, p as isWorkspaceMarkdownPath, r as WorkspaceFileAssetResolver, s as WorkspaceMediaTrack, t as WorkspaceFileAsset } from "../WorkspaceFile-DMtRMwVv.js";
|
|
3
|
-
import { a as WorkspaceSource, c as workspaceBinaryFileQueryOptions, d as
|
|
4
|
-
import { n as WorkspaceExplorerProps, t as WorkspaceExplorer } from "../WorkspaceExplorer-
|
|
5
|
-
export { type ResolveWorkspaceLinkOptions, type UseWorkspaceOptions, type WorkspaceDestination, WorkspaceExplorer, WorkspaceExplorerProps, type WorkspaceExternalDestination, type WorkspaceFileAsset, type WorkspaceFileAssetRequest, type WorkspaceFileAssetResolver, WorkspaceFileLink, type WorkspaceFileLinkProps, type WorkspaceFileReadTarget, type WorkspaceFileState, type WorkspaceInfo, type WorkspaceInvalidDestination, type WorkspaceLinkBase, type WorkspaceLinkResolution, type WorkspaceMediaInfo, type WorkspaceMediaKind, type WorkspaceMediaTrack, type WorkspaceMediaTrackKind, type WorkspaceNavigationAdapter, type WorkspaceNavigationEntry, WorkspaceNavigationProvider, type WorkspaceNavigationProviderProps, type WorkspaceQueryKey, type WorkspaceSkillDocument, type WorkspaceSource, type WorkspaceState, inferWorkspaceLanguage, inferWorkspaceMedia, isWorkspaceMarkdownPath, isWorkspaceMediaPath, isWorkspaceSkillPath, parseWorkspaceSkill, resolveWorkspaceLink, useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryOptions, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions };
|
|
3
|
+
import { a as WorkspaceSource, c as workspaceBinaryFileQueryOptions, d as workspaceDirectoryQueryPrefix, f as workspaceFileAssetQueryOptions, g as workspaceTextFileQueryOptions, h as workspaceQueryKey, i as WorkspaceQueryKey, l as workspaceDirectoryQueryKey, m as workspaceInfoQueryOptions, n as WorkspaceFileReadTarget, o as WorkspaceState, p as workspaceFileStatQueryOptions, r as WorkspaceInfo, s as useWorkspace, t as UseWorkspaceOptions, u as workspaceDirectoryQueryOptions } from "../Workspace-Bn6In4wi.js";
|
|
4
|
+
import { n as WorkspaceExplorerProps, t as WorkspaceExplorer } from "../WorkspaceExplorer-D0aiscG6.js";
|
|
5
|
+
export { type ResolveWorkspaceLinkOptions, type UseWorkspaceOptions, type WorkspaceDestination, WorkspaceExplorer, WorkspaceExplorerProps, type WorkspaceExternalDestination, type WorkspaceFileAsset, type WorkspaceFileAssetRequest, type WorkspaceFileAssetResolver, WorkspaceFileLink, type WorkspaceFileLinkProps, type WorkspaceFileReadTarget, type WorkspaceFileState, type WorkspaceInfo, type WorkspaceInvalidDestination, type WorkspaceLinkBase, type WorkspaceLinkResolution, type WorkspaceMediaInfo, type WorkspaceMediaKind, type WorkspaceMediaTrack, type WorkspaceMediaTrackKind, type WorkspaceNavigationAdapter, type WorkspaceNavigationEntry, WorkspaceNavigationProvider, type WorkspaceNavigationProviderProps, type WorkspaceQueryKey, type WorkspaceSkillDocument, type WorkspaceSource, type WorkspaceState, inferWorkspaceLanguage, inferWorkspaceMedia, isWorkspaceMarkdownPath, isWorkspaceMediaPath, isWorkspaceSkillPath, parseWorkspaceSkill, resolveWorkspaceLink, useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryKey, workspaceDirectoryQueryOptions, workspaceDirectoryQueryPrefix, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions };
|
|
@@ -4,7 +4,7 @@ import { n as mergeRefs } from "../merge-refs-DF_7w2x_.js";
|
|
|
4
4
|
import { inferWorkspaceLanguage, inferWorkspaceMedia, isWorkspaceMarkdownPath, isWorkspaceMediaPath, isWorkspaceSkillPath, parseWorkspaceSkill } from "./WorkspaceFile.js";
|
|
5
5
|
import { WorkspaceBrowser } from "./WorkspaceBrowser.js";
|
|
6
6
|
import { t as WorkspaceFileView } from "../WorkspaceFileView-CKEmUyeT.js";
|
|
7
|
-
import { useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryOptions, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions } from "./Workspace.js";
|
|
7
|
+
import { useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryKey, workspaceDirectoryQueryOptions, workspaceDirectoryQueryPrefix, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions } from "./Workspace.js";
|
|
8
8
|
import * as React from "react";
|
|
9
9
|
import { jsx } from "react/jsx-runtime";
|
|
10
10
|
//#region src/components/WorkspaceExplorer.tsx
|
|
@@ -125,4 +125,4 @@ function WorkspaceExplorerContent({ workspace, navigation, className, title = "W
|
|
|
125
125
|
});
|
|
126
126
|
}
|
|
127
127
|
//#endregion
|
|
128
|
-
export { WorkspaceExplorer, WorkspaceFileLink, WorkspaceNavigationProvider, inferWorkspaceLanguage, inferWorkspaceMedia, isWorkspaceMarkdownPath, isWorkspaceMediaPath, isWorkspaceSkillPath, parseWorkspaceSkill, resolveWorkspaceLink, useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryOptions, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions };
|
|
128
|
+
export { WorkspaceExplorer, WorkspaceFileLink, WorkspaceNavigationProvider, inferWorkspaceLanguage, inferWorkspaceMedia, isWorkspaceMarkdownPath, isWorkspaceMediaPath, isWorkspaceSkillPath, parseWorkspaceSkill, resolveWorkspaceLink, useWorkspace, workspaceBinaryFileQueryOptions, workspaceDirectoryQueryKey, workspaceDirectoryQueryOptions, workspaceDirectoryQueryPrefix, workspaceFileAssetQueryOptions, workspaceFileStatQueryOptions, workspaceInfoQueryOptions, workspaceQueryKey, workspaceTextFileQueryOptions };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/components/WorkspaceMountManager.d.ts
|
|
4
|
+
type WorkspaceMountPermission = "granted" | "prompt" | "denied" | "unavailable";
|
|
5
|
+
interface WorkspaceMountItem {
|
|
6
|
+
id: string;
|
|
7
|
+
path: string;
|
|
8
|
+
permission: WorkspaceMountPermission;
|
|
9
|
+
}
|
|
10
|
+
interface WorkspaceMountManagerProps {
|
|
11
|
+
mounts: readonly WorkspaceMountItem[];
|
|
12
|
+
adding?: boolean;
|
|
13
|
+
busyMountId?: string | null;
|
|
14
|
+
error?: React.ReactNode;
|
|
15
|
+
onAdd: () => void;
|
|
16
|
+
onReconnect: (mount: WorkspaceMountItem) => void;
|
|
17
|
+
onRemove: (mount: WorkspaceMountItem) => void;
|
|
18
|
+
triggerLabel?: string;
|
|
19
|
+
}
|
|
20
|
+
/** Controlled local-mount presentation; native handles and persistence stay in the host. */
|
|
21
|
+
declare function WorkspaceMountManager({
|
|
22
|
+
mounts,
|
|
23
|
+
adding,
|
|
24
|
+
busyMountId,
|
|
25
|
+
error,
|
|
26
|
+
onAdd,
|
|
27
|
+
onReconnect,
|
|
28
|
+
onRemove,
|
|
29
|
+
triggerLabel
|
|
30
|
+
}: WorkspaceMountManagerProps): React.JSX.Element;
|
|
31
|
+
//#endregion
|
|
32
|
+
export { WorkspaceMountItem, WorkspaceMountManager, WorkspaceMountManagerProps, WorkspaceMountPermission };
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { Button } from "./Button.js";
|
|
2
|
+
import { w as FolderIcon } from "../icons-B4mGvCvc.js";
|
|
3
|
+
import { Popover } from "./Popover.js";
|
|
4
|
+
import { EmptyState } from "./EmptyState.js";
|
|
5
|
+
import { AppTopBar } from "./AppTopBar.js";
|
|
6
|
+
import { StatusPill } from "./StatusPill.js";
|
|
7
|
+
import { Card, CardAction, CardFooter, CardHeader, CardTitle } from "./Card.js";
|
|
8
|
+
import "react";
|
|
9
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
//#region src/components/WorkspaceMountManager.tsx
|
|
11
|
+
function permissionLabel(permission) {
|
|
12
|
+
if (permission === "granted") return "Read/write connected";
|
|
13
|
+
if (permission === "prompt") return "Permission needed";
|
|
14
|
+
if (permission === "denied") return "Access denied";
|
|
15
|
+
return "Unavailable";
|
|
16
|
+
}
|
|
17
|
+
function permissionColor(permission) {
|
|
18
|
+
if (permission === "granted") return "success";
|
|
19
|
+
if (permission === "prompt") return "warning";
|
|
20
|
+
if (permission === "denied") return "destructive";
|
|
21
|
+
return "neutral";
|
|
22
|
+
}
|
|
23
|
+
/** Controlled local-mount presentation; native handles and persistence stay in the host. */
|
|
24
|
+
function WorkspaceMountManager({ mounts, adding = false, busyMountId = null, error, onAdd, onReconnect, onRemove, triggerLabel = "Attach local folders" }) {
|
|
25
|
+
const busy = adding || busyMountId !== null;
|
|
26
|
+
return /* @__PURE__ */ jsxs(Popover.Root, { children: [/* @__PURE__ */ jsx(AppTopBar.Button, {
|
|
27
|
+
label: triggerLabel,
|
|
28
|
+
render: /* @__PURE__ */ jsx(Popover.Trigger, { unstyled: true }),
|
|
29
|
+
children: /* @__PURE__ */ jsx(FolderIcon, {})
|
|
30
|
+
}), /* @__PURE__ */ jsx(Popover.Portal, { children: /* @__PURE__ */ jsx(Popover.Positioner, {
|
|
31
|
+
side: "bottom",
|
|
32
|
+
align: "end",
|
|
33
|
+
sideOffset: 8,
|
|
34
|
+
children: /* @__PURE__ */ jsxs(Popover.Popup, { children: [/* @__PURE__ */ jsxs(Popover.Header, { children: [/* @__PURE__ */ jsx(Popover.Title, { children: "Local folders" }), /* @__PURE__ */ jsx(Popover.Description, { children: "Attach folders to the workspace so the model can work on their contents." })] }), /* @__PURE__ */ jsxs("div", {
|
|
35
|
+
className: "workspace-mount-manager__content",
|
|
36
|
+
children: [
|
|
37
|
+
/* @__PURE__ */ jsx(Button, {
|
|
38
|
+
type: "button",
|
|
39
|
+
size: "sm",
|
|
40
|
+
disabled: busy,
|
|
41
|
+
onClick: onAdd,
|
|
42
|
+
children: adding ? "Opening…" : "Attach local folder"
|
|
43
|
+
}),
|
|
44
|
+
error ? /* @__PURE__ */ jsx("p", {
|
|
45
|
+
className: "workspace-mount-manager__error",
|
|
46
|
+
role: "alert",
|
|
47
|
+
children: error
|
|
48
|
+
}) : null,
|
|
49
|
+
mounts.length === 0 ? /* @__PURE__ */ jsx(EmptyState, { description: "No local folders attached." }) : /* @__PURE__ */ jsx("ul", {
|
|
50
|
+
className: "workspace-mount-manager__list sigvelo-stack-list",
|
|
51
|
+
children: mounts.map((mount) => {
|
|
52
|
+
return /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(Card, {
|
|
53
|
+
size: "sm",
|
|
54
|
+
"aria-busy": busyMountId === mount.id || void 0,
|
|
55
|
+
children: [/* @__PURE__ */ jsxs(CardHeader, { children: [/* @__PURE__ */ jsx(CardTitle, {
|
|
56
|
+
className: "workspace-mount-manager__path",
|
|
57
|
+
children: /* @__PURE__ */ jsx("code", { children: mount.path })
|
|
58
|
+
}), /* @__PURE__ */ jsx(CardAction, { children: /* @__PURE__ */ jsx(StatusPill, {
|
|
59
|
+
color: permissionColor(mount.permission),
|
|
60
|
+
size: "sm",
|
|
61
|
+
children: permissionLabel(mount.permission)
|
|
62
|
+
}) })] }), /* @__PURE__ */ jsxs(CardFooter, { children: [mount.permission !== "granted" ? /* @__PURE__ */ jsx(Button, {
|
|
63
|
+
type: "button",
|
|
64
|
+
size: "sm",
|
|
65
|
+
disabled: busy,
|
|
66
|
+
onClick: () => onReconnect(mount),
|
|
67
|
+
children: "Reconnect"
|
|
68
|
+
}) : null, /* @__PURE__ */ jsx(Button, {
|
|
69
|
+
type: "button",
|
|
70
|
+
size: "sm",
|
|
71
|
+
variant: "ghost",
|
|
72
|
+
color: "destructive",
|
|
73
|
+
disabled: busy,
|
|
74
|
+
onClick: () => onRemove(mount),
|
|
75
|
+
children: "Remove"
|
|
76
|
+
})] })]
|
|
77
|
+
}) }, mount.id);
|
|
78
|
+
})
|
|
79
|
+
}),
|
|
80
|
+
/* @__PURE__ */ jsx("p", {
|
|
81
|
+
className: "workspace-mount-manager__footnote",
|
|
82
|
+
children: "Removing an attachment only forgets the folder reference; it never deletes files."
|
|
83
|
+
})
|
|
84
|
+
]
|
|
85
|
+
})] })
|
|
86
|
+
}) })] });
|
|
87
|
+
}
|
|
88
|
+
//#endregion
|
|
89
|
+
export { WorkspaceMountManager };
|
|
@@ -46,7 +46,7 @@ interface McpServerCard {
|
|
|
46
46
|
/**
|
|
47
47
|
* Read the complete state emitted by the pinned Agents runtime.
|
|
48
48
|
*
|
|
49
|
-
* Agents 0.
|
|
49
|
+
* Agents 0.19.0 can return `not-connected` from `getMcpServers()` even though
|
|
50
50
|
* that value is missing from its exported `MCPServer["state"]` declaration.
|
|
51
51
|
* Keep the unavoidable compatibility assertion at this one SDK boundary.
|
|
52
52
|
*/
|
|
@@ -4,10 +4,12 @@
|
|
|
4
4
|
|
|
5
5
|
position: relative;
|
|
6
6
|
isolation: isolate;
|
|
7
|
-
overflow: hidden;
|
|
7
|
+
overflow-x: hidden;
|
|
8
|
+
overflow-y: auto;
|
|
8
9
|
block-size: 100%;
|
|
9
10
|
min-inline-size: 17.5rem;
|
|
10
11
|
display: grid;
|
|
12
|
+
grid-template-rows: minmax(min-content, 1fr) auto;
|
|
11
13
|
place-items: center;
|
|
12
14
|
padding: clamp(var(--sigvelo-spacing-5), 5vw, var(--sigvelo-spacing-12));
|
|
13
15
|
background-color: var(--sigvelo-color-canvas);
|
|
@@ -61,6 +63,13 @@
|
|
|
61
63
|
text-align: center;
|
|
62
64
|
}
|
|
63
65
|
|
|
66
|
+
.chatgpt-sign-in__secondary-action {
|
|
67
|
+
z-index: 1;
|
|
68
|
+
display: flex;
|
|
69
|
+
justify-content: center;
|
|
70
|
+
margin-block-start: var(--sigvelo-spacing-4);
|
|
71
|
+
}
|
|
72
|
+
|
|
64
73
|
.chatgpt-sign-in__brand {
|
|
65
74
|
display: grid;
|
|
66
75
|
gap: var(--sigvelo-spacing-1-5);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
.conversation-tab-picker__identity {
|
|
2
|
+
display: grid;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.conversation-tab-picker__error {
|
|
6
|
+
align-items: center;
|
|
7
|
+
color: var(--sigvelo-color-danger-text);
|
|
8
|
+
display: flex;
|
|
9
|
+
font-size: var(--sigvelo-text-sm);
|
|
10
|
+
gap: var(--sigvelo-spacing-2);
|
|
11
|
+
overflow-wrap: anywhere;
|
|
12
|
+
padding: var(--sigvelo-spacing-2) var(--sigvelo-spacing-3);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.conversation-tab-picker__error > svg {
|
|
16
|
+
flex: none;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.conversation-tab-picker__domain {
|
|
20
|
+
color: var(--sigvelo-color-text-muted);
|
|
21
|
+
font-size: var(--sigvelo-text-sm);
|
|
22
|
+
font-weight: var(--sigvelo-font-weight-normal);
|
|
23
|
+
line-height: var(--sigvelo-text-sm-leading);
|
|
24
|
+
}
|
package/dist/styles/index.css
CHANGED
|
@@ -95,6 +95,7 @@
|
|
|
95
95
|
@import "./commit.css" layer(components);
|
|
96
96
|
@import "./context.css" layer(components);
|
|
97
97
|
@import "./conversation.css" layer(components);
|
|
98
|
+
@import "./conversation-tab-picker.css" layer(components);
|
|
98
99
|
@import "./codex-model-selector.css" layer(components);
|
|
99
100
|
@import "./environment-variables.css" layer(components);
|
|
100
101
|
@import "./file-tree.css" layer(components);
|
|
@@ -121,6 +122,7 @@
|
|
|
121
122
|
@import "./think-thread-picker.css" layer(components);
|
|
122
123
|
@import "./web-preview.css" layer(components);
|
|
123
124
|
@import "./workspace-explorer.css" layer(components);
|
|
125
|
+
@import "./workspace-mount-manager.css" layer(components);
|
|
124
126
|
@import "./composition-motion.css" layer(components);
|
|
125
127
|
|
|
126
128
|
/* Page Components */
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
.workspace-mount-manager__content {
|
|
2
|
+
display: grid;
|
|
3
|
+
gap: var(--sigvelo-spacing-3);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.workspace-mount-manager__error,
|
|
7
|
+
.workspace-mount-manager__footnote {
|
|
8
|
+
color: var(--sigvelo-color-text-muted);
|
|
9
|
+
font-size: var(--sigvelo-text-sm);
|
|
10
|
+
line-height: var(--sigvelo-text-sm-leading);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.workspace-mount-manager__list {
|
|
14
|
+
gap: var(--sigvelo-spacing-2);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.workspace-mount-manager__error {
|
|
18
|
+
color: var(--sigvelo-color-danger-text);
|
|
19
|
+
overflow-wrap: anywhere;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.workspace-mount-manager__path code {
|
|
23
|
+
overflow-wrap: anywhere;
|
|
24
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as MCP_SERVER_SETUP_AUTH, c as McpServerManualSetup, d as McpServerSetupAuthFieldName, f as McpServerSetupLink, h as getMcpServerRuntimeState, i as MANUAL_MCP_SERVER_CARDS, l as McpServerSetupAuth, m as getMcpServerIconSrc, n as DCR_MCP_SERVER_CARDS, o as McpServerCard, p as getMcpServerEntry, r as DEFAULT_MCP_SERVER_CARDS, s as McpServerCardIcon, t as CUSTOM_MCP_SERVER_CARD, u as McpServerSetupAuthField } from "../mcp-server-catalog-
|
|
1
|
+
import { a as MCP_SERVER_SETUP_AUTH, c as McpServerManualSetup, d as McpServerSetupAuthFieldName, f as McpServerSetupLink, h as getMcpServerRuntimeState, i as MANUAL_MCP_SERVER_CARDS, l as McpServerSetupAuth, m as getMcpServerIconSrc, n as DCR_MCP_SERVER_CARDS, o as McpServerCard, p as getMcpServerEntry, r as DEFAULT_MCP_SERVER_CARDS, s as McpServerCardIcon, t as CUSTOM_MCP_SERVER_CARD, u as McpServerSetupAuthField } from "../mcp-server-catalog-CO7GAl1f.js";
|
|
2
2
|
export { CUSTOM_MCP_SERVER_CARD, DCR_MCP_SERVER_CARDS, DEFAULT_MCP_SERVER_CARDS, MANUAL_MCP_SERVER_CARDS, MCP_SERVER_SETUP_AUTH, McpServerCard, McpServerCardIcon, McpServerManualSetup, McpServerSetupAuth, McpServerSetupAuthField, McpServerSetupAuthFieldName, McpServerSetupLink, getMcpServerEntry, getMcpServerIconSrc, getMcpServerRuntimeState };
|
|
@@ -3,7 +3,7 @@ import { inferFaviconUrl } from "./favicon.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* Read the complete state emitted by the pinned Agents runtime.
|
|
5
5
|
*
|
|
6
|
-
* Agents 0.
|
|
6
|
+
* Agents 0.19.0 can return `not-connected` from `getMcpServers()` even though
|
|
7
7
|
* that value is missing from its exported `MCPServer["state"]` declaration.
|
|
8
8
|
* Keep the unavoidable compatibility assertion at this one SDK boundary.
|
|
9
9
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mcp-b/react-components",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.29.0",
|
|
4
4
|
"description": "MCP-B React components built on Base UI and shared design tokens, including Cloudflare Think chat primitives.",
|
|
5
5
|
"homepage": "https://design-system.sigvelo.com",
|
|
6
6
|
"bugs": {
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
41
|
"@base-ui/react": "~1.6.0",
|
|
42
|
-
"@cloudflare/codemode": "^0.
|
|
42
|
+
"@cloudflare/codemode": "^0.5.0",
|
|
43
43
|
"@cloudflare/workers-types": "^5.20260715.1",
|
|
44
44
|
"@rrweb/replay": "^2.1.0",
|
|
45
45
|
"@shadcn/react": "^0.2.1",
|
|
@@ -58,12 +58,12 @@
|
|
|
58
58
|
"streamdown": "^2.5.0",
|
|
59
59
|
"unist-util-visit": "^5.1.0",
|
|
60
60
|
"yet-another-react-lightbox": "^3.32.1",
|
|
61
|
-
"@mcp-b/design-tokens": "0.
|
|
61
|
+
"@mcp-b/design-tokens": "0.29.0"
|
|
62
62
|
},
|
|
63
63
|
"devDependencies": {
|
|
64
|
-
"@ai-sdk/react": "^3.0.
|
|
65
|
-
"@cloudflare/shell": "^0.4.
|
|
66
|
-
"@cloudflare/think": "^0.
|
|
64
|
+
"@ai-sdk/react": "^3.0.230",
|
|
65
|
+
"@cloudflare/shell": "^0.4.3",
|
|
66
|
+
"@cloudflare/think": "^0.15.0",
|
|
67
67
|
"@cloudflare/voice": "^0.3.4",
|
|
68
68
|
"@storybook/addon-a11y": "^10.5.2",
|
|
69
69
|
"@storybook/addon-docs": "^10.5.2",
|
|
@@ -81,8 +81,8 @@
|
|
|
81
81
|
"@vitest/browser-playwright": "^4.1.10",
|
|
82
82
|
"@vitest/coverage-v8": "^4.1.10",
|
|
83
83
|
"@vitest/mocker": "^4.1.10",
|
|
84
|
-
"agents": "^0.
|
|
85
|
-
"ai": "^6.0.
|
|
84
|
+
"agents": "^0.19.0",
|
|
85
|
+
"ai": "^6.0.228",
|
|
86
86
|
"playwright": "^1.61.0",
|
|
87
87
|
"react": "19.3.0-canary-711c445b-20260722",
|
|
88
88
|
"react-dom": "19.3.0-canary-711c445b-20260722",
|
|
@@ -93,14 +93,14 @@
|
|
|
93
93
|
"vitest": "^4.1.10"
|
|
94
94
|
},
|
|
95
95
|
"peerDependencies": {
|
|
96
|
-
"@ai-sdk/react": "^3.0.
|
|
97
|
-
"@cloudflare/shell": "^0.4.
|
|
98
|
-
"@cloudflare/think": "^0.
|
|
96
|
+
"@ai-sdk/react": "^3.0.230",
|
|
97
|
+
"@cloudflare/shell": "^0.4.3",
|
|
98
|
+
"@cloudflare/think": "^0.15.0",
|
|
99
99
|
"@cloudflare/voice": "^0.3.4",
|
|
100
100
|
"@tanstack/react-query": "^5.101.2",
|
|
101
101
|
"@tanstack/react-router": "^1.170.18",
|
|
102
|
-
"agents": "^0.
|
|
103
|
-
"ai": "^6.0.
|
|
102
|
+
"agents": "^0.19.0",
|
|
103
|
+
"ai": "^6.0.228",
|
|
104
104
|
"react": "19.3.0-canary-711c445b-20260722",
|
|
105
105
|
"react-dom": "19.3.0-canary-711c445b-20260722"
|
|
106
106
|
},
|