@mcp-b/react-components 0.46.7 → 0.48.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.
Files changed (130) hide show
  1. package/dist/{CodeBlock-CcteqDvA.js → CodeBlock-BSJl682D.js} +1 -1
  2. package/dist/Correspondent-7K6uNLUm.d.ts +64 -0
  3. package/dist/{FileTree-jtP9471I.js → FileTree-DvE0hNZu.js} +1 -1
  4. package/dist/{SetupChecklist-BXwSSorj.js → SetupChecklist-DeTU9YpW.js} +1 -1
  5. package/dist/ThinkChat-CwMdEum8.d.ts +185 -0
  6. package/dist/{ThinkChat-qztQ6Clo.js → ThinkChat-DiI6hhDP.js} +14 -14
  7. package/dist/ThinkThreadPicker-yFz4vvIf.d.ts +91 -0
  8. package/dist/{Workspace-DZusrEeP.d.ts → Workspace-LIoU30n7.d.ts} +13 -2
  9. package/dist/{WorkspaceFileView-D0HyoUV8.js → WorkspaceFileView-C_WnYm-a.js} +4 -4
  10. package/dist/{WorkspaceLink-DtH66bAY.js → WorkspaceLink-B1d2GIGl.js} +7 -2
  11. package/dist/WorkspaceLive-DfjH1Ypm.d.ts +61 -0
  12. package/dist/{WorkspaceMessageResponse-CJCmGvTx.js → WorkspaceMessageResponse-BqOezptB.js} +79 -40
  13. package/dist/WorkspaceMessageResponse-kJYU8Onj.d.ts +48 -0
  14. package/dist/components/agents-sdk/AgentActivity.js +1 -1
  15. package/dist/components/agents-sdk/AgentChat.js +2 -2
  16. package/dist/components/agents-sdk/BrowserLiveScreen.js +1 -1
  17. package/dist/components/agents-sdk/BrowserLiveView.js +1 -1
  18. package/dist/components/agents-sdk/BrowserReplay.js +1 -1
  19. package/dist/components/agents-sdk/BrowserRunPanel.js +1 -1
  20. package/dist/components/agents-sdk/ManagerOffice.d.ts +41 -50
  21. package/dist/components/agents-sdk/ManagerOffice.js +359 -978
  22. package/dist/components/agents-sdk/McpConnectionRequest.js +1 -1
  23. package/dist/components/agents-sdk/McpPluginCatalog.js +1 -1
  24. package/dist/components/agents-sdk/McpServerPicker.js +1 -1
  25. package/dist/components/agents-sdk/ModelSelector.js +1 -1
  26. package/dist/components/agents-sdk/PromptInputCommands.js +1 -1
  27. package/dist/components/agents-sdk/SubagentRunIndicator.js +1 -1
  28. package/dist/components/agents-sdk/ThinkChat.d.ts +1 -180
  29. package/dist/components/agents-sdk/ThinkChat.js +1 -1
  30. package/dist/components/agents-sdk/ThinkChatToolPanels.js +1 -1
  31. package/dist/components/agents-sdk/ThinkExecutionDetail.js +1 -1
  32. package/dist/components/agents-sdk/ThinkExecutionStatus.js +1 -1
  33. package/dist/components/agents-sdk/ThinkExecutionWorkbench.js +1 -1
  34. package/dist/components/agents-sdk/ThinkFullApp.d.ts +12 -3
  35. package/dist/components/agents-sdk/ThinkFullApp.js +15 -3
  36. package/dist/components/agents-sdk/ThinkRoutineBrowser.js +1 -1
  37. package/dist/components/agents-sdk/ThinkRoutineForm.js +1 -1
  38. package/dist/components/agents-sdk/ThinkRoutineLibrary.js +1 -1
  39. package/dist/components/agents-sdk/ThinkSidepanel.d.ts +20 -5
  40. package/dist/components/agents-sdk/ThinkSidepanel.js +48 -36
  41. package/dist/components/agents-sdk/ThinkThreadPicker.d.ts +1 -90
  42. package/dist/components/agents-sdk/ThinkThreadPicker.js +1 -1
  43. package/dist/components/agents-sdk/Workspace.d.ts +2 -2
  44. package/dist/components/agents-sdk/Workspace.js +13 -10
  45. package/dist/components/agents-sdk/WorkspaceBrowser.d.ts +1 -1
  46. package/dist/components/agents-sdk/WorkspaceBrowser.js +1 -1
  47. package/dist/components/agents-sdk/WorkspaceConcept.d.ts +45 -0
  48. package/dist/components/agents-sdk/WorkspaceConcept.js +42 -0
  49. package/dist/components/agents-sdk/WorkspaceCorrespondence.d.ts +96 -0
  50. package/dist/components/agents-sdk/WorkspaceCorrespondence.js +429 -0
  51. package/dist/components/agents-sdk/WorkspaceExecution.d.ts +115 -0
  52. package/dist/components/agents-sdk/WorkspaceExecution.js +330 -0
  53. package/dist/components/agents-sdk/WorkspaceExplorer.d.ts +1 -1
  54. package/dist/components/agents-sdk/WorkspaceExplorer.js +2 -2
  55. package/dist/components/agents-sdk/WorkspaceFileView.js +1 -1
  56. package/dist/components/agents-sdk/WorkspaceHeader.js +1 -1
  57. package/dist/components/agents-sdk/WorkspaceLink.js +1 -1
  58. package/dist/components/agents-sdk/WorkspaceLive.d.ts +2 -0
  59. package/dist/components/agents-sdk/WorkspaceLive.js +113 -0
  60. package/dist/components/agents-sdk/WorkspaceMessageResponse.d.ts +2 -2
  61. package/dist/components/agents-sdk/WorkspaceMessageResponse.js +2 -2
  62. package/dist/components/agents-sdk/WorkspaceMountManager.js +1 -1
  63. package/dist/components/agents-sdk/WorkspaceProject.d.ts +131 -0
  64. package/dist/components/agents-sdk/WorkspaceProject.js +238 -0
  65. package/dist/components/agents-sdk/WorkspaceUserScript.d.ts +47 -0
  66. package/dist/components/agents-sdk/WorkspaceUserScript.js +146 -0
  67. package/dist/components/ai-sdk/Activity.js +1 -1
  68. package/dist/components/ai-sdk/AgentChatStartScreen.js +1 -1
  69. package/dist/components/ai-sdk/Approval.js +1 -1
  70. package/dist/components/ai-sdk/Artifact.js +3 -3
  71. package/dist/components/ai-sdk/ChainOfThought.d.ts +1 -1
  72. package/dist/components/ai-sdk/ChainOfThought.js +1 -1
  73. package/dist/components/ai-sdk/Checkpoint.js +1 -1
  74. package/dist/components/ai-sdk/CodeBlock.js +1 -1
  75. package/dist/components/ai-sdk/ComposerLink.d.ts +4 -1
  76. package/dist/components/ai-sdk/ComposerLink.js +4 -3
  77. package/dist/components/ai-sdk/ConnectedAppCards.d.ts +29 -2
  78. package/dist/components/ai-sdk/ConnectedAppCards.js +78 -103
  79. package/dist/components/ai-sdk/Conversation.js +1 -1
  80. package/dist/components/ai-sdk/Correspondent.d.ts +2 -0
  81. package/dist/components/ai-sdk/Correspondent.js +145 -0
  82. package/dist/components/ai-sdk/Goal.js +1 -1
  83. package/dist/components/ai-sdk/MediaPreviewCard.js +1 -1
  84. package/dist/components/ai-sdk/Message.js +1 -1
  85. package/dist/components/ai-sdk/MessageScroller.js +1 -1
  86. package/dist/components/ai-sdk/MessageScrollerVirtual.js +1 -1
  87. package/dist/components/ai-sdk/Plan.js +1 -1
  88. package/dist/components/ai-sdk/PromptInput.js +1 -1
  89. package/dist/components/ai-sdk/Queue.js +1 -1
  90. package/dist/components/ai-sdk/Reasoning.js +1 -1
  91. package/dist/components/ai-sdk/Sources.js +1 -1
  92. package/dist/components/ai-sdk/Task.js +1 -1
  93. package/dist/components/extension/ChatGptSignInScreen.js +1 -1
  94. package/dist/components/extension/CodexModelSelector.js +1 -1
  95. package/dist/components/extension/ConversationTabPicker.js +1 -1
  96. package/dist/components/foundations/Checkbox.js +1 -1
  97. package/dist/components/foundations/ContextMenu.js +1 -1
  98. package/dist/components/foundations/Menubar.js +1 -1
  99. package/dist/components/foundations/SearchField.js +1 -1
  100. package/dist/components/foundations/Select.js +1 -1
  101. package/dist/components/foundations/Stepper.js +1 -1
  102. package/dist/components/foundations/Toast.js +1 -1
  103. package/dist/components/foundations/icons.d.ts +2 -2
  104. package/dist/components/foundations/icons.js +2 -2
  105. package/dist/components/general-purpose/Commit.js +2 -2
  106. package/dist/components/general-purpose/EnvironmentVariables.js +2 -2
  107. package/dist/components/general-purpose/FileTree.js +1 -1
  108. package/dist/components/general-purpose/PricingPlanCard.js +1 -1
  109. package/dist/components/general-purpose/ResponsiveSidebarShell.js +1 -1
  110. package/dist/components/general-purpose/SetupChecklist.js +1 -1
  111. package/dist/components/general-purpose/Terminal.js +2 -2
  112. package/dist/components/general-purpose/TestResults.js +1 -1
  113. package/dist/components/general-purpose/ThemeModeControl.js +1 -1
  114. package/dist/components/general-purpose/WebPreview.js +1 -1
  115. package/dist/components/nanites/AgentConnection.js +2 -2
  116. package/dist/components/nanites/AgentToolDetail.d.ts +1 -1
  117. package/dist/components/nanites/AgentToolDetail.js +2 -2
  118. package/dist/{copy-button-BABPlsc-.js → copy-button-Dk2vRe9j.js} +1 -1
  119. package/dist/{icons-ChPpNMmU.d.ts → icons-CCZGYUwU.d.ts} +6 -1
  120. package/dist/{icons-BC4HZqSK.js → icons-CeGfXO21.js} +3 -2
  121. package/dist/styles/base.css +2 -2
  122. package/dist/styles/connected-app-card.css +8 -0
  123. package/dist/styles/correspondent.css +73 -0
  124. package/dist/styles/description-list.css +3 -1
  125. package/dist/styles/index.css +2 -0
  126. package/dist/styles/manager-office.css +380 -1086
  127. package/dist/styles/workspace-concepts.css +28 -0
  128. package/dist/workspace-assets-GqsCYxqT.js +168 -0
  129. package/package.json +2 -2
  130. package/dist/WorkspaceMessageResponse-D66ty4FO.d.ts +0 -24
@@ -0,0 +1,28 @@
1
+ /* Panel shell only. Cards reuse connected-app-card; lists reuse sigvelo-stack. */
2
+ .workspace-concept-panel {
3
+ box-sizing: border-box;
4
+ min-inline-size: 0;
5
+ min-block-size: 0;
6
+ block-size: 100%;
7
+ overflow: auto;
8
+ padding: var(--sigvelo-layout-gutter);
9
+ color: var(--sigvelo-color-text);
10
+ background: var(--sigvelo-color-canvas);
11
+ }
12
+
13
+ /* Session run outcome on the execution card's Last run row. */
14
+ .workspace-execution-outcome {
15
+ display: inline-flex;
16
+ align-items: center;
17
+ gap: var(--sigvelo-spacing-1);
18
+ font-size: var(--sigvelo-text-xs);
19
+ line-height: var(--sigvelo-text-xs-leading);
20
+ white-space: nowrap;
21
+ color: var(--sigvelo-color-success-text);
22
+ }
23
+
24
+ @media (forced-colors: active) {
25
+ .workspace-execution-outcome {
26
+ color: CanvasText;
27
+ }
28
+ }
@@ -0,0 +1,168 @@
1
+ import { composerLinkHref } from "./utils/composer-link.js";
2
+ import { canRequestFavicon, inferFaviconUrl } from "./utils/favicon.js";
3
+ import { Q as TrashIcon, S as FileIcon } from "./icons-CeGfXO21.js";
4
+ import { Button } from "./components/foundations/Button.js";
5
+ import { Tooltip } from "./components/foundations/Tooltip.js";
6
+ import { IconButton } from "./components/foundations/IconButton.js";
7
+ import { AppIcon } from "./components/foundations/AppIcon.js";
8
+ import { ComposerLink } from "./components/ai-sdk/ComposerLink.js";
9
+ import { AlertDialog } from "./components/foundations/AlertDialog.js";
10
+ import * as React from "react";
11
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
12
+ //#region src/components/_internal/workspace-delete.tsx
13
+ /**
14
+ * Header trash control for a workspace file. The card owns the confirm dialog;
15
+ * the host deletes the file.
16
+ */
17
+ function WorkspaceDeleteControl({ name, onDelete }) {
18
+ const triggerRef = React.useRef(null);
19
+ const [open, setOpen] = React.useState(false);
20
+ const [busy, setBusy] = React.useState(false);
21
+ const [errorMessage, setErrorMessage] = React.useState("");
22
+ return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(IconButton, {
23
+ ref: triggerRef,
24
+ type: "button",
25
+ label: `Delete ${name}`,
26
+ tooltip: "Delete",
27
+ variant: "ghost",
28
+ color: "neutral",
29
+ disabled: busy,
30
+ "aria-haspopup": "dialog",
31
+ onClick: () => {
32
+ setErrorMessage("");
33
+ setOpen(true);
34
+ },
35
+ children: /* @__PURE__ */ jsx(TrashIcon, {})
36
+ }), /* @__PURE__ */ jsx(AlertDialog.Root, {
37
+ open,
38
+ onOpenChange: (nextOpen, eventDetails) => {
39
+ if (busy) {
40
+ eventDetails.cancel();
41
+ return;
42
+ }
43
+ setOpen(nextOpen);
44
+ if (!nextOpen) setErrorMessage("");
45
+ },
46
+ children: /* @__PURE__ */ jsxs(AlertDialog.Portal, { children: [/* @__PURE__ */ jsx(AlertDialog.Backdrop, {}), /* @__PURE__ */ jsx(AlertDialog.Viewport, { children: /* @__PURE__ */ jsxs(AlertDialog.Popup, {
47
+ finalFocus: triggerRef,
48
+ children: [
49
+ /* @__PURE__ */ jsxs(AlertDialog.Title, { children: [
50
+ "Delete ",
51
+ name,
52
+ "?"
53
+ ] }),
54
+ /* @__PURE__ */ jsx(AlertDialog.Description, { children: "This deletes the file. This cannot be undone." }),
55
+ errorMessage ? /* @__PURE__ */ jsx("p", {
56
+ role: "alert",
57
+ children: errorMessage
58
+ }) : null,
59
+ /* @__PURE__ */ jsxs(AlertDialog.Footer, { children: [/* @__PURE__ */ jsx(AlertDialog.Close, {
60
+ disabled: busy,
61
+ children: "Cancel"
62
+ }), /* @__PURE__ */ jsx(Button, {
63
+ type: "button",
64
+ color: "destructive",
65
+ disabled: busy,
66
+ onClick: () => {
67
+ if (busy) return;
68
+ setBusy(true);
69
+ setErrorMessage("");
70
+ Promise.resolve(onDelete()).then(() => {
71
+ setOpen(false);
72
+ }).catch((error) => {
73
+ setErrorMessage(error instanceof Error && error.message.trim() ? error.message : "The file could not be deleted. Try again.");
74
+ }).finally(() => {
75
+ setBusy(false);
76
+ });
77
+ },
78
+ children: busy ? "Deleting…" : "Delete"
79
+ })] })
80
+ ]
81
+ }) })] })
82
+ })] });
83
+ }
84
+ //#endregion
85
+ //#region src/components/_internal/workspace-assets.tsx
86
+ /** HTTP(S) URL from a field value, or nothing. */
87
+ function httpUrl(value) {
88
+ try {
89
+ const url = new URL(value.trim());
90
+ if (url.protocol === "http:" || url.protocol === "https:") return url.href;
91
+ } catch {
92
+ return;
93
+ }
94
+ }
95
+ /** Site mark for a URL. Decorative — sit it next to visible text. */
96
+ function FaviconMark({ fallback, href }) {
97
+ const src = href ? inferFaviconUrl(href) : void 0;
98
+ const allowed = Boolean(src && canRequestFavicon(src));
99
+ const [failedSrc, setFailedSrc] = React.useState(null);
100
+ if (!src || !allowed || Boolean(src) && failedSrc === src) {
101
+ if (fallback == null) return null;
102
+ return /* @__PURE__ */ jsx(AppIcon.Root, {
103
+ size: "xs",
104
+ "aria-hidden": "true",
105
+ children: /* @__PURE__ */ jsx(AppIcon.Fallback, { children: fallback })
106
+ });
107
+ }
108
+ return /* @__PURE__ */ jsxs(AppIcon.Root, {
109
+ size: "xs",
110
+ "aria-hidden": "true",
111
+ children: [/* @__PURE__ */ jsx(AppIcon.Image, {
112
+ alt: "",
113
+ fit: "contain",
114
+ src,
115
+ onError: () => {
116
+ setFailedSrc(src);
117
+ }
118
+ }), /* @__PURE__ */ jsx(AppIcon.Fallback, { children: fallback ?? null })]
119
+ });
120
+ }
121
+ /**
122
+ * Supplementary tooltip on an already-interactive control. Paths, globs, and
123
+ * enable labels belong here — not as persistent body copy.
124
+ */
125
+ function Hint({ children, content }) {
126
+ if (content == null || content === false || content === "") return children;
127
+ return /* @__PURE__ */ jsxs(Tooltip.Root, { children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
128
+ render: children,
129
+ delay: 0
130
+ }), /* @__PURE__ */ jsx(Tooltip.Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, {
131
+ side: "top",
132
+ sideOffset: 6,
133
+ children: /* @__PURE__ */ jsx(Tooltip.Popup, { children: content })
134
+ }) })] });
135
+ }
136
+ /** File/thread/site identity, same icon+label mark as the composer. */
137
+ function WorkspaceComposerLink({ hint, icon, kind = "file", label, onOpen, value }) {
138
+ const resolvedIcon = icon ?? (kind === "file" ? /* @__PURE__ */ jsx(FileIcon, {}) : void 0);
139
+ if (!onOpen) return /* @__PURE__ */ jsxs("span", {
140
+ className: "composer-link",
141
+ "data-composer-link": kind,
142
+ title: typeof hint === "string" ? hint : void 0,
143
+ children: [resolvedIcon ? /* @__PURE__ */ jsx("span", {
144
+ className: "composer-link__icon",
145
+ "aria-hidden": "true",
146
+ children: resolvedIcon
147
+ }) : null, /* @__PURE__ */ jsx("span", {
148
+ className: "composer-link__label",
149
+ children: label
150
+ })]
151
+ });
152
+ const link = /* @__PURE__ */ jsx(ComposerLink, {
153
+ href: composerLinkHref({
154
+ kind,
155
+ value,
156
+ label
157
+ }),
158
+ icon: resolvedIcon,
159
+ onClick: onOpen,
160
+ children: label
161
+ });
162
+ return hint == null || hint === false || hint === "" ? link : /* @__PURE__ */ jsx(Hint, {
163
+ content: hint,
164
+ children: link
165
+ });
166
+ }
167
+ //#endregion
168
+ export { WorkspaceDeleteControl as i, WorkspaceComposerLink as n, httpUrl as r, FaviconMark as t };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-b/react-components",
3
- "version": "0.46.7",
3
+ "version": "0.48.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": {
@@ -54,7 +54,7 @@
54
54
  "streamdown": "^2.5.0",
55
55
  "unist-util-visit": "^5.1.0",
56
56
  "yet-another-react-lightbox": "^3.32.2",
57
- "@mcp-b/design-tokens": "0.46.7"
57
+ "@mcp-b/design-tokens": "0.48.0"
58
58
  },
59
59
  "devDependencies": {
60
60
  "@ai-sdk/react": "^3.0.249",
@@ -1,24 +0,0 @@
1
- import { E as MessageResponseProps } from "./Message-D_vCVEGB.js";
2
- import * as React from "react";
3
-
4
- //#region src/components/agents-sdk/WorkspaceMessageResponse.d.ts
5
- interface WorkspaceHtmlArtifactRenderInput {
6
- label: string;
7
- path: string;
8
- /** Shared workspace link element; hosts pass it through to the preview unchanged. */
9
- sourceLink: React.ReactElement;
10
- }
11
- type WorkspaceHtmlArtifactRenderer = (artifact: WorkspaceHtmlArtifactRenderInput) => React.ReactNode;
12
- interface WorkspaceMessageResponseProps extends MessageResponseProps {
13
- /** Promotes one standalone workspace HTML link into host-hydrated shared UI. */
14
- renderWorkspaceHtmlArtifact?: WorkspaceHtmlArtifactRenderer;
15
- }
16
- /** Adds workspace-aware Markdown links when rendered inside a workspace provider. */
17
- declare const WorkspaceMessageResponse: React.MemoExoticComponent<({
18
- components,
19
- rehypePlugins,
20
- renderWorkspaceHtmlArtifact,
21
- ...props
22
- }: WorkspaceMessageResponseProps) => React.JSX.Element>;
23
- //#endregion
24
- export { WorkspaceMessageResponseProps as i, WorkspaceHtmlArtifactRenderer as n, WorkspaceMessageResponse as r, WorkspaceHtmlArtifactRenderInput as t };