@mcp-b/react-components 0.20.5 → 0.22.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 (234) hide show
  1. package/dist/{AgentActivity-D2SHSGFX.d.ts → AgentActivity-D3OvrC02.d.ts} +14 -1
  2. package/dist/{AgentChat-C-ZyXbJz.d.ts → AgentChat-Bm1qYbOo.d.ts} +24 -1
  3. package/dist/AgentChatStartScreen-DDZ25aax.d.ts +60 -0
  4. package/dist/{Button-yRInko9u.d.ts → Button-SBIz6Lqi.d.ts} +2 -1
  5. package/dist/{CodeBlock-ygtuzqJd.js → CodeBlock-Cp67Njo3.js} +1 -1
  6. package/dist/{CodeBlock-Bbls1CnA.d.ts → CodeBlock-yMpGqScn.d.ts} +1 -1
  7. package/dist/Dialog-BD8NBKaE.d.ts +122 -0
  8. package/dist/{FileTree-CdgfccsM.js → FileTree-DW60q1w7.js} +1 -1
  9. package/dist/IconButton-CFKhu6OR.d.ts +35 -0
  10. package/dist/{Message-DzuteocT.js → Message-_-bEYLAO.js} +9 -16
  11. package/dist/{ModelSelector-pecWyOFI.js → ModelSelector-Brvj9Cab.js} +15 -8
  12. package/dist/{PromptInput-Cq-8RoXD.d.ts → PromptInput-BjoPWaaG.d.ts} +15 -2
  13. package/dist/{ThinkChatActivity-CdbL0aoA.d.ts → ThinkChatActivity-2BobmuvR.d.ts} +8 -7
  14. package/dist/{ThinkChatActivitySummary-D1xOrNrq.d.ts → ThinkChatActivitySummary-kr5fE0wg.d.ts} +14 -5
  15. package/dist/{ToggleGroup-DNd6cDJZ.d.ts → ToggleGroup-BW1jrhAF.d.ts} +10 -0
  16. package/dist/{Workspace-CWtust-2.d.ts → Workspace-CIycQ4xE.d.ts} +1 -1
  17. package/dist/{WorkspaceExplorer-DGigwsgH.d.ts → WorkspaceExplorer-BCipn7Vd.d.ts} +1 -1
  18. package/dist/{WorkspaceFile-D8Un_xge.d.ts → WorkspaceFile-DMtRMwVv.d.ts} +1 -1
  19. package/dist/{WorkspaceFileView-Bxx4wEzJ.js → WorkspaceFileView-rUEN2iox.js} +4 -4
  20. package/dist/assets/think-browser-host.png +0 -0
  21. package/dist/components/ActionGuide.d.ts +85 -0
  22. package/dist/components/ActionGuide.js +94 -0
  23. package/dist/components/Activity.d.ts +33 -17
  24. package/dist/components/Activity.js +40 -28
  25. package/dist/components/AgentActivity.d.ts +1 -1
  26. package/dist/components/AgentActivity.js +3 -11
  27. package/dist/components/AgentActivityPreview.d.ts +1 -1
  28. package/dist/components/AgentActivityPreview.js +17 -16
  29. package/dist/components/AgentAttention.d.ts +1 -1
  30. package/dist/components/AgentChat.d.ts +1 -1
  31. package/dist/components/AgentChat.js +169 -136
  32. package/dist/components/AgentChatStartScreen.d.ts +2 -0
  33. package/dist/components/AgentChatStartScreen.js +88 -0
  34. package/dist/components/AgentConnection.d.ts +1 -1
  35. package/dist/components/AgentConnection.js +2 -2
  36. package/dist/components/AgentMessageParts.js +1 -1
  37. package/dist/components/AgentToolDetail.js +1 -1
  38. package/dist/components/AlertDialog.d.ts +2 -1
  39. package/dist/components/AlertDialog.js +8 -2
  40. package/dist/components/AppIcon.d.ts +58 -0
  41. package/dist/components/AppIcon.js +51 -0
  42. package/dist/components/AppTopBar.js +9 -10
  43. package/dist/components/Approval.js +3 -5
  44. package/dist/components/Artifact.d.ts +3 -7
  45. package/dist/components/Artifact.js +12 -18
  46. package/dist/components/Avatar.d.ts +7 -2
  47. package/dist/components/Avatar.js +4 -2
  48. package/dist/components/BrowserLiveView.js +6 -8
  49. package/dist/components/BrowserReplay.js +9 -9
  50. package/dist/components/BrowserRunPanel.js +2 -2
  51. package/dist/components/Button.d.ts +1 -1
  52. package/dist/components/ChainOfThought.d.ts +1 -1
  53. package/dist/components/ChainOfThought.js +1 -1
  54. package/dist/components/ChatGptSignInScreen.js +2 -2
  55. package/dist/components/Checkbox.js +1 -1
  56. package/dist/components/Checkpoint.js +1 -1
  57. package/dist/components/CodeBlock.d.ts +1 -1
  58. package/dist/components/CodeBlock.js +1 -1
  59. package/dist/components/CodexModelSelector.js +1 -1
  60. package/dist/components/Commit.d.ts +1 -1
  61. package/dist/components/Commit.js +3 -3
  62. package/dist/components/ContextMenu.js +1 -1
  63. package/dist/components/Conversation.d.ts +3 -24
  64. package/dist/components/Conversation.js +6 -34
  65. package/dist/components/Dialog.d.ts +1 -117
  66. package/dist/components/Dialog.js +9 -1
  67. package/dist/components/EmptyState.d.ts +46 -0
  68. package/dist/components/EmptyState.js +50 -0
  69. package/dist/components/EnvironmentVariables.d.ts +1 -1
  70. package/dist/components/EnvironmentVariables.js +2 -2
  71. package/dist/components/FileTree.js +1 -1
  72. package/dist/components/IconButton.d.ts +1 -31
  73. package/dist/components/IconButton.js +2 -1
  74. package/dist/components/Kbd.d.ts +32 -0
  75. package/dist/components/Kbd.js +34 -0
  76. package/dist/components/McpConnectionRequest.d.ts +1 -1
  77. package/dist/components/McpConnectionRequest.js +1 -1
  78. package/dist/components/McpPluginCatalog.d.ts +86 -0
  79. package/dist/components/McpPluginCatalog.js +364 -0
  80. package/dist/components/McpServerPicker.d.ts +2 -2
  81. package/dist/components/McpServerPicker.js +7 -13
  82. package/dist/components/MediaPreviewCard.js +1 -1
  83. package/dist/components/Menubar.js +1 -1
  84. package/dist/components/Message.d.ts +4 -8
  85. package/dist/components/Message.js +1 -1
  86. package/dist/components/MessageScroller.d.ts +1 -1
  87. package/dist/components/MessageScroller.js +1 -1
  88. package/dist/components/ModelSelector.d.ts +12 -6
  89. package/dist/components/ModelSelector.js +2 -2
  90. package/dist/components/Plan.js +1 -1
  91. package/dist/components/PricingBillingToggle.js +1 -0
  92. package/dist/components/PricingPlanCard.d.ts +1 -1
  93. package/dist/components/PricingPlanCard.js +10 -12
  94. package/dist/components/PromptInput.d.ts +2 -2
  95. package/dist/components/PromptInput.js +30 -12
  96. package/dist/components/Queue.d.ts +1 -1
  97. package/dist/components/Queue.js +2 -2
  98. package/dist/components/Reasoning.js +5 -10
  99. package/dist/components/ResponsiveSidebarShell.js +2 -1
  100. package/dist/components/SearchField.js +1 -1
  101. package/dist/components/Select.js +1 -1
  102. package/dist/components/Sources.js +1 -1
  103. package/dist/components/StatusPill.d.ts +43 -0
  104. package/dist/components/StatusPill.js +35 -0
  105. package/dist/components/Stepper.js +1 -1
  106. package/dist/components/SubagentRunIndicator.js +1 -1
  107. package/dist/components/SubagentRunSelector.js +1 -1
  108. package/dist/components/Task.js +1 -1
  109. package/dist/components/Terminal.d.ts +3 -3
  110. package/dist/components/Terminal.js +7 -8
  111. package/dist/components/TestResults.js +1 -1
  112. package/dist/components/ThemeModeControl.js +1 -1
  113. package/dist/components/ThinkChat.d.ts +12 -6
  114. package/dist/components/ThinkChatActivity.d.ts +2 -2
  115. package/dist/components/ThinkChatActivity.js +28 -16
  116. package/dist/components/ThinkChatActivitySummary.d.ts +2 -2
  117. package/dist/components/ThinkChatActivitySummary.js +67 -64
  118. package/dist/components/ThinkChatToolPanels.js +1 -1
  119. package/dist/components/ThinkExecutionDetail.js +5 -5
  120. package/dist/components/ThinkExecutionStatus.js +1 -1
  121. package/dist/components/ThinkExecutionWorkbench.js +19 -25
  122. package/dist/components/ThinkFullApp.d.ts +8 -4
  123. package/dist/components/ThinkFullApp.js +17 -2
  124. package/dist/components/ThinkFullAppViewSwitch.d.ts +1 -1
  125. package/dist/components/ThinkRoutineBrowser.js +3 -2
  126. package/dist/components/ThinkRoutineForm.js +3 -3
  127. package/dist/components/ThinkRoutineLibrary.js +2 -2
  128. package/dist/components/ThinkRoutineRuns.js +4 -3
  129. package/dist/components/ThinkThreadPicker.js +5 -4
  130. package/dist/components/Toast.d.ts +12 -2
  131. package/dist/components/Toast.js +14 -4
  132. package/dist/components/ToggleGroup.d.ts +1 -1
  133. package/dist/components/ToggleGroup.js +54 -7
  134. package/dist/components/ToolInvocation.js +1 -1
  135. package/dist/components/Tooltip.d.ts +6 -4
  136. package/dist/components/Tooltip.js +11 -4
  137. package/dist/components/WebPreview.d.ts +13 -6
  138. package/dist/components/WebPreview.js +55 -50
  139. package/dist/components/Workspace.d.ts +1 -1
  140. package/dist/components/WorkspaceBrowser.d.ts +1 -1
  141. package/dist/components/WorkspaceBrowser.js +1 -1
  142. package/dist/components/WorkspaceExplorer.d.ts +3 -3
  143. package/dist/components/WorkspaceExplorer.js +1 -1
  144. package/dist/components/WorkspaceFile.d.ts +1 -1
  145. package/dist/components/WorkspaceFileView.d.ts +1 -1
  146. package/dist/components/WorkspaceFileView.js +1 -1
  147. package/dist/components/WorkspaceHeader.js +1 -1
  148. package/dist/components/icons.d.ts +2 -2
  149. package/dist/components/icons.js +2 -2
  150. package/dist/{copy-button-BrvQ7z4W.d.ts → copy-button-EBv_B9F6.d.ts} +2 -2
  151. package/dist/{copy-button-vo1paUSi.js → copy-button-TWq8nZhc.js} +8 -8
  152. package/dist/{icons-DyOM0EJs.js → icons-ua6f_GH3.js} +3 -2
  153. package/dist/{icons-DkRtZmvT.d.ts → icons-wP1yFUXF.d.ts} +6 -1
  154. package/dist/mcp-server-catalog-DycejaJ5.d.ts +1077 -0
  155. package/dist/styles/action-guide.css +128 -0
  156. package/dist/styles/activity-header.css +41 -10
  157. package/dist/styles/activity.css +26 -4
  158. package/dist/styles/agent-activity-preview-overlay.css +51 -12
  159. package/dist/styles/agent-activity-preview.css +23 -53
  160. package/dist/styles/agent-attention.css +2 -2
  161. package/dist/styles/agent-chat.css +291 -57
  162. package/dist/styles/agent-connection.css +8 -8
  163. package/dist/styles/alert-dialog.css +5 -20
  164. package/dist/styles/app-icon.css +122 -0
  165. package/dist/styles/app-top-bar.css +4 -5
  166. package/dist/styles/approval.css +1 -7
  167. package/dist/styles/artifact.css +4 -4
  168. package/dist/styles/avatar.css +13 -0
  169. package/dist/styles/base-ui-motion.css +1 -1
  170. package/dist/styles/base.css +94 -3
  171. package/dist/styles/browser-control-overlay.css +16 -7
  172. package/dist/styles/browser-live-view.css +5 -38
  173. package/dist/styles/browser-replay.css +2 -6
  174. package/dist/styles/browser-run-panel.css +4 -18
  175. package/dist/styles/button.css +17 -1
  176. package/dist/styles/card.css +4 -4
  177. package/dist/styles/chain-of-thought.css +0 -1
  178. package/dist/styles/chatgpt-sign-in-screen.css +7 -5
  179. package/dist/styles/checkbox-group.css +3 -3
  180. package/dist/styles/code-block.css +4 -4
  181. package/dist/styles/context-menu.css +1 -1
  182. package/dist/styles/conversation.css +7 -42
  183. package/dist/styles/description-list.css +4 -4
  184. package/dist/styles/dialog.css +22 -7
  185. package/dist/styles/empty-state.css +48 -0
  186. package/dist/styles/environment-variables.css +4 -4
  187. package/dist/styles/field.css +2 -2
  188. package/dist/styles/index.css +6 -0
  189. package/dist/styles/inline-citation.css +1 -1
  190. package/dist/styles/kbd.css +40 -0
  191. package/dist/styles/mcp-plugin-catalog.css +296 -0
  192. package/dist/styles/mcp-server-picker.css +0 -26
  193. package/dist/styles/media-preview-card.css +5 -3
  194. package/dist/styles/message-scroller.css +4 -4
  195. package/dist/styles/message.css +11 -6
  196. package/dist/styles/model-selector.css +5 -8
  197. package/dist/styles/popover.css +1 -1
  198. package/dist/styles/preview-card.css +1 -1
  199. package/dist/styles/prompt-input.css +44 -54
  200. package/dist/styles/queue.css +2 -2
  201. package/dist/styles/recipes.css +83 -9
  202. package/dist/styles/resizable-side-panel.css +1 -1
  203. package/dist/styles/responsive-sidebar-shell.css +19 -14
  204. package/dist/styles/scrollbars.css +32 -3
  205. package/dist/styles/search-field.css +9 -0
  206. package/dist/styles/sources.css +1 -1
  207. package/dist/styles/status-pill.css +39 -0
  208. package/dist/styles/stepper.css +2 -2
  209. package/dist/styles/streamdown.css +13 -12
  210. package/dist/styles/subagent-run.css +3 -3
  211. package/dist/styles/switch.css +1 -3
  212. package/dist/styles/tabs.css +1 -1
  213. package/dist/styles/task.css +1 -1
  214. package/dist/styles/terminal.css +2 -2
  215. package/dist/styles/test-results.css +1 -2
  216. package/dist/styles/textarea.css +1 -1
  217. package/dist/styles/theme-mode-control.css +1 -1
  218. package/dist/styles/think-execution-status.css +4 -23
  219. package/dist/styles/think-execution-workbench.css +2 -3
  220. package/dist/styles/think-full-app.css +24 -4
  221. package/dist/styles/think-routine-library.css +14 -16
  222. package/dist/styles/think-thread-picker.css +9 -26
  223. package/dist/styles/toast.css +2 -23
  224. package/dist/styles/toggle-group.css +76 -3
  225. package/dist/styles/tooltip.css +1 -2
  226. package/dist/styles/utilities.css +73 -0
  227. package/dist/styles/web-preview.css +5 -0
  228. package/dist/styles/workspace-explorer.css +4 -6
  229. package/dist/utils/favicon.d.ts +10 -0
  230. package/dist/utils/favicon.js +18 -0
  231. package/dist/utils/mcp-server-catalog.d.ts +2 -1078
  232. package/dist/utils/mcp-server-catalog.js +3 -11
  233. package/dist/utils/structured-code.d.ts +1 -1
  234. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  import { n as mergeBaseClassName, t as cx } from "../class-names-BiMDVpUo.js";
2
- import { Button } from "./Button.js";
2
+ import { buttonVariants } from "./Button.js";
3
3
  import { Tooltip } from "./Tooltip.js";
4
4
  import { Toolbar } from "./Toolbar.js";
5
5
  import "react";
@@ -49,18 +49,17 @@ function AppTopBarControl({ className, ...props }) {
49
49
  });
50
50
  }
51
51
  function AppTopBarButton({ children, className, disabled, label, render, tooltip = label, ...props }) {
52
+ const classes = mergeBaseClassName(buttonVariants({
53
+ variant: "ghost",
54
+ color: "neutral",
55
+ size: "sm"
56
+ }), className);
52
57
  return /* @__PURE__ */ jsxs(Tooltip.Root, { children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
53
58
  render: /* @__PURE__ */ jsx(AppTopBarControl, {
54
- className,
59
+ className: classes,
55
60
  "aria-label": label,
56
- render: render ?? /* @__PURE__ */ jsx(Button, {
57
- type: "button",
58
- variant: "ghost",
59
- color: "neutral",
60
- size: "sm",
61
- iconOnly: true,
62
- disabled
63
- }),
61
+ "data-icon-only": "",
62
+ render,
64
63
  disabled,
65
64
  ...props
66
65
  }),
@@ -1,6 +1,7 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { z as PencilIcon } from "../icons-DyOM0EJs.js";
3
2
  import { Button } from "./Button.js";
3
+ import { B as PencilIcon } from "../icons-ua6f_GH3.js";
4
+ import { Kbd } from "./Kbd.js";
4
5
  import * as React from "react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
7
  //#region src/components/Approval.tsx
@@ -207,10 +208,7 @@ function ApprovalDecision({ className, onDecision, onSkip, subject = "this actio
207
208
  className: "approval__submit",
208
209
  disabled: busy,
209
210
  onClick: () => void respond(selected === "approve"),
210
- children: [busy ? "Submitting…" : selected === "approve" ? "Approve" : "Submit denial", !busy ? /* @__PURE__ */ jsx("kbd", {
211
- className: "approval__kbd",
212
- children: "⏎"
213
- }) : null]
211
+ children: [busy ? "Submitting…" : selected === "approve" ? "Approve" : "Submit denial", !busy ? /* @__PURE__ */ jsx(Kbd, { children: "⏎" }) : null]
214
212
  })
215
213
  ]
216
214
  }),
@@ -1,4 +1,4 @@
1
- import { r as ButtonProps } from "../Button-yRInko9u.js";
1
+ import { n as IconButtonProps } from "../IconButton-CFKhu6OR.js";
2
2
  import * as React from "react";
3
3
 
4
4
  //#region src/components/Artifact.d.ts
@@ -83,11 +83,7 @@ declare function ArtifactActions({
83
83
  }: ArtifactActionsProps & {
84
84
  ref?: React.Ref<HTMLDivElement>;
85
85
  }): React.JSX.Element;
86
- interface ArtifactActionProps extends Omit<ButtonProps, "children" | "variant" | "size" | "color"> {
87
- /** Accessible label for the button. */
88
- label?: string;
89
- /** Tooltip text shown on hover. Defaults to label. */
90
- tooltip?: string;
86
+ interface ArtifactActionProps extends Omit<IconButtonProps, "children" | "variant" | "size" | "color"> {
91
87
  /** The icon to render inside the button. */
92
88
  icon?: React.ReactNode | React.ComponentType<{
93
89
  className?: string;
@@ -102,7 +98,7 @@ declare function ArtifactAction({
102
98
  children,
103
99
  ...props
104
100
  }: ArtifactActionProps): React.JSX.Element;
105
- interface ArtifactCloseProps extends Omit<ButtonProps, "children" | "variant" | "size" | "color"> {
101
+ interface ArtifactCloseProps extends Omit<IconButtonProps, "children" | "label" | "variant" | "size" | "color"> {
106
102
  /** Accessible label for the close button. */
107
103
  label?: string;
108
104
  children?: React.ReactNode;
@@ -1,9 +1,8 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { et as XIcon } from "../icons-DyOM0EJs.js";
3
- import { Button } from "./Button.js";
4
- import { Tooltip } from "./Tooltip.js";
2
+ import { tt as XIcon } from "../icons-ua6f_GH3.js";
3
+ import { IconButton } from "./IconButton.js";
5
4
  import "react";
6
- import { jsx, jsxs } from "react/jsx-runtime";
5
+ import { jsx } from "react/jsx-runtime";
7
6
  //#region src/components/Artifact.tsx
8
7
  /**
9
8
  * A container for generated content (code, documents, outputs) with a header
@@ -78,32 +77,27 @@ function ArtifactActions({ className, children, ref, ...props }) {
78
77
  }
79
78
  function ArtifactAction({ className, label, tooltip, icon, children, ...props }) {
80
79
  const Icon = typeof icon === "function" ? icon : null;
81
- const accessibleLabel = label ?? tooltip;
82
- const button = /* @__PURE__ */ jsxs(Button, {
80
+ return /* @__PURE__ */ jsx(IconButton, {
81
+ label,
82
+ tooltip,
83
83
  variant: "ghost",
84
+ color: "neutral",
84
85
  size: "sm",
85
- iconOnly: true,
86
- "aria-label": accessibleLabel,
87
86
  className: cx("artifact__action", className),
88
87
  ...props,
89
- children: [Icon ? /* @__PURE__ */ jsx(Icon, {}) : icon ?? children, accessibleLabel ? /* @__PURE__ */ jsx("span", {
90
- className: "sigvelo-visually-hidden",
91
- children: accessibleLabel
92
- }) : null]
88
+ children: Icon ? /* @__PURE__ */ jsx(Icon, {}) : icon ?? children
93
89
  });
94
- if (!tooltip) return button;
95
- return /* @__PURE__ */ jsxs(Tooltip.Root, { children: [/* @__PURE__ */ jsx(Tooltip.Trigger, { render: button }), /* @__PURE__ */ jsx(Tooltip.Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, { children: /* @__PURE__ */ jsx(Tooltip.Popup, { children: tooltip }) }) })] });
96
90
  }
97
91
  function ArtifactClose({ className, label = "Close", children, ...props }) {
98
- return /* @__PURE__ */ jsxs(Tooltip.Root, { children: [/* @__PURE__ */ jsx(Tooltip.Trigger, { render: /* @__PURE__ */ jsx(Button, {
92
+ return /* @__PURE__ */ jsx(IconButton, {
93
+ label,
99
94
  variant: "ghost",
95
+ color: "neutral",
100
96
  size: "sm",
101
- iconOnly: true,
102
- "aria-label": label,
103
97
  className: cx("artifact__close", className),
104
98
  ...props,
105
99
  children: children ?? /* @__PURE__ */ jsx(XIcon, {})
106
- }) }), /* @__PURE__ */ jsx(Tooltip.Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, { children: /* @__PURE__ */ jsx(Tooltip.Popup, { children: label }) }) })] });
100
+ });
107
101
  }
108
102
  function ArtifactContent({ className, children, ref, ...props }) {
109
103
  return /* @__PURE__ */ jsx("div", {
@@ -6,12 +6,15 @@ import { Avatar as Avatar$1 } from "@base-ui/react/avatar";
6
6
  * Props for the Avatar.Root component.
7
7
  */
8
8
  interface AvatarRootProps extends React.ComponentPropsWithoutRef<typeof Avatar$1.Root> {
9
- size?: "sm" | "md" | "lg";
9
+ size?: "sm" | "md" | "lg" | "xl";
10
+ shape?: "circle" | "rounded";
10
11
  }
11
12
  /**
12
13
  * Props for the Avatar.Image component.
13
14
  */
14
- interface AvatarImageProps extends React.ComponentPropsWithoutRef<typeof Avatar$1.Image> {}
15
+ interface AvatarImageProps extends React.ComponentPropsWithoutRef<typeof Avatar$1.Image> {
16
+ fit?: "cover" | "contain";
17
+ }
15
18
  /**
16
19
  * Props for the Avatar.Fallback component.
17
20
  */
@@ -35,6 +38,7 @@ interface AvatarBadgeProps extends React.HTMLAttributes<HTMLSpanElement> {}
35
38
  declare function AvatarRoot({
36
39
  className,
37
40
  size,
41
+ shape,
38
42
  ref,
39
43
  ...props
40
44
  }: AvatarRootProps & {
@@ -45,6 +49,7 @@ declare function AvatarRoot({
45
49
  */
46
50
  declare function AvatarImage({
47
51
  className,
52
+ fit,
48
53
  ref,
49
54
  ...props
50
55
  }: AvatarImageProps & {
@@ -16,12 +16,13 @@ import { Avatar as Avatar$1 } from "@base-ui/react/avatar";
16
16
  *
17
17
  * @see {@link https://base-ui.com/react/components/avatar | Base UI Avatar}
18
18
  */
19
- function AvatarRoot({ className, size = "md", ref, ...props }) {
19
+ function AvatarRoot({ className, size = "md", shape = "circle", ref, ...props }) {
20
20
  const classes = mergeBaseClassName("avatar", className);
21
21
  return /* @__PURE__ */ jsx(Avatar$1.Root, {
22
22
  ref,
23
23
  "data-slot": "avatar",
24
24
  "data-size": size,
25
+ "data-shape": shape,
25
26
  className: classes,
26
27
  ...props
27
28
  });
@@ -29,11 +30,12 @@ function AvatarRoot({ className, size = "md", ref, ...props }) {
29
30
  /**
30
31
  * Displays the avatar image. Renders an `<img>` element.
31
32
  */
32
- function AvatarImage({ className, ref, ...props }) {
33
+ function AvatarImage({ className, fit = "cover", ref, ...props }) {
33
34
  const classes = mergeBaseClassName("avatar__image", className);
34
35
  return /* @__PURE__ */ jsx(Avatar$1.Image, {
35
36
  ref,
36
37
  "data-slot": "avatar-image",
38
+ "data-fit": fit,
37
39
  className: classes,
38
40
  ...props
39
41
  });
@@ -1,9 +1,9 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { K as SpinnerIcon, k as MaximizeIcon } from "../icons-DyOM0EJs.js";
3
2
  import { Button } from "./Button.js";
3
+ import { A as MaximizeIcon, q as SpinnerIcon } from "../icons-ua6f_GH3.js";
4
4
  import { Dialog } from "./Dialog.js";
5
5
  import { TransitionSurface } from "./TransitionSurface.js";
6
- import { Badge } from "./Badge.js";
6
+ import { StatusPill } from "./StatusPill.js";
7
7
  import * as React from "react";
8
8
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
9
  //#region src/components/BrowserLiveView.tsx
@@ -79,14 +79,12 @@ function BrowserLiveView({ source, receivedAt, pageTitle, fallback, className, .
79
79
  const live = !expired && !failed;
80
80
  const frameTitle = pageTitle ? `Live browser view — ${pageTitle}` : "Live browser view";
81
81
  const view = live ? /* @__PURE__ */ jsxs(Fragment, { children: [
82
- /* @__PURE__ */ jsxs(Badge, {
82
+ /* @__PURE__ */ jsx(StatusPill, {
83
+ busy: true,
83
84
  size: "sm",
84
85
  color: "destructive",
85
86
  className: "browser-live-view__badge",
86
- children: [/* @__PURE__ */ jsx("span", {
87
- className: "browser-live-view__badge-dot",
88
- "aria-hidden": true
89
- }), "Live"]
87
+ children: "Live"
90
88
  }),
91
89
  /* @__PURE__ */ jsx("iframe", {
92
90
  className: "browser-live-view__frame",
@@ -101,7 +99,7 @@ function BrowserLiveView({ source, receivedAt, pageTitle, fallback, className, .
101
99
  frameState === "loading" ? /* @__PURE__ */ jsxs(TransitionSurface, {
102
100
  className: "browser-live-view__state",
103
101
  role: "status",
104
- children: [/* @__PURE__ */ jsx(SpinnerIcon, { className: "browser-live-view__state-spinner" }), "Connecting live view…"]
102
+ children: [/* @__PURE__ */ jsx(SpinnerIcon, {}), "Connecting live view…"]
105
103
  }) : null
106
104
  ] }) : fallback ?? /* @__PURE__ */ jsx(EndedState, {
107
105
  title: failed ? "Live view unavailable" : "Live view ended",
@@ -1,7 +1,8 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { B as PlayIcon, R as PauseIcon } from "../icons-DyOM0EJs.js";
3
- import { Button } from "./Button.js";
2
+ import { V as PlayIcon, z as PauseIcon } from "../icons-ua6f_GH3.js";
3
+ import { IconButton } from "./IconButton.js";
4
4
  import { r as formatClock } from "../format-S6uWyoSb.js";
5
+ import { EmptyState } from "./EmptyState.js";
5
6
  import { Slider } from "./Slider.js";
6
7
  import * as React from "react";
7
8
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -135,26 +136,25 @@ function BrowserReplay({ className, events, autoPlay, ref, ...props }) {
135
136
  ref: stageRef,
136
137
  className: "browser-replay__stage"
137
138
  }),
138
- events.length < 2 ? /* @__PURE__ */ jsx("div", {
139
+ events.length < 2 ? /* @__PURE__ */ jsx(EmptyState, {
139
140
  className: "browser-replay__empty",
140
- children: "No browser recording"
141
+ description: "No browser recording"
141
142
  }) : null,
142
- hasError ? /* @__PURE__ */ jsx("div", {
143
+ hasError ? /* @__PURE__ */ jsx(EmptyState, {
143
144
  className: "browser-replay__empty",
144
145
  role: "alert",
145
- children: "Browser replay could not be loaded"
146
+ description: "Browser replay could not be loaded"
146
147
  }) : null
147
148
  ]
148
149
  }), /* @__PURE__ */ jsxs("div", {
149
150
  className: "browser-replay__controls",
150
151
  children: [
151
- /* @__PURE__ */ jsx(Button, {
152
+ /* @__PURE__ */ jsx(IconButton, {
153
+ label: isPlaying ? "Pause replay" : "Play replay",
152
154
  variant: "ghost",
153
155
  color: "neutral",
154
156
  size: "sm",
155
- iconOnly: true,
156
157
  className: "browser-replay__toggle",
157
- "aria-label": isPlaying ? "Pause replay" : "Play replay",
158
158
  disabled,
159
159
  onClick: handlePlayPause,
160
160
  children: isPlaying ? /* @__PURE__ */ jsx(PauseIcon, {}) : /* @__PURE__ */ jsx(PlayIcon, {})
@@ -1,6 +1,6 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { K as SpinnerIcon, et as XIcon } from "../icons-DyOM0EJs.js";
3
2
  import { Button } from "./Button.js";
3
+ import { q as SpinnerIcon, tt as XIcon } from "../icons-ua6f_GH3.js";
4
4
  import { Tabs } from "./Tabs.js";
5
5
  import { BrowserLiveView } from "./BrowserLiveView.js";
6
6
  import { WebPreview, WebPreviewNavigation, WebPreviewNavigationButton, WebPreviewUrl } from "./WebPreview.js";
@@ -56,7 +56,7 @@ function BrowserRunPanel({ liveView, onRefresh, onCloseSession, loading, error,
56
56
  className: "browser-run-panel__live-view"
57
57
  }) : loading ? /* @__PURE__ */ jsxs(BrowserRunPanelState, {
58
58
  role: "status",
59
- children: [/* @__PURE__ */ jsx(SpinnerIcon, { className: "browser-run-panel__spinner" }), "Loading browser session"]
59
+ children: [/* @__PURE__ */ jsx(SpinnerIcon, {}), "Loading browser session"]
60
60
  }) : /* @__PURE__ */ jsx(BrowserRunPanelState, { children: empty });
61
61
  const bodyProps = {
62
62
  className: "web-preview__body browser-run-panel__body",
@@ -1,2 +1,2 @@
1
- import { a as ButtonVariant, i as ButtonSize, n as ButtonColor, o as ButtonVariantsOptions, r as ButtonProps, s as buttonVariants, t as Button } from "../Button-yRInko9u.js";
1
+ import { a as ButtonVariant, i as ButtonSize, n as ButtonColor, o as ButtonVariantsOptions, r as ButtonProps, s as buttonVariants, t as Button } from "../Button-SBIz6Lqi.js";
2
2
  export { Button, ButtonColor, ButtonProps, ButtonSize, ButtonVariant, ButtonVariantsOptions, buttonVariants };
@@ -1,5 +1,5 @@
1
1
  import { t as Collapsible } from "../Collapsible-N64ASIQr.js";
2
- import { D as IconProps } from "../icons-DkRtZmvT.js";
2
+ import { O as IconProps } from "../icons-wP1yFUXF.js";
3
3
  import * as React from "react";
4
4
 
5
5
  //#region src/components/ChainOfThought.d.ts
@@ -1,6 +1,6 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
2
  import { Collapsible } from "./Collapsible.js";
3
- import { K as SpinnerIcon, _ as DotIcon, p as ChevronRightIcon, u as CheckIcon } from "../icons-DyOM0EJs.js";
3
+ import { d as CheckIcon, m as ChevronRightIcon, q as SpinnerIcon, v as DotIcon } from "../icons-ua6f_GH3.js";
4
4
  import "react";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
6
  //#region src/components/ChainOfThought.tsx
@@ -1,7 +1,7 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { K as SpinnerIcon } from "../icons-DyOM0EJs.js";
3
2
  import { Button } from "./Button.js";
4
- import { u as ModelSelectorLogo } from "../ModelSelector-pecWyOFI.js";
3
+ import { q as SpinnerIcon } from "../icons-ua6f_GH3.js";
4
+ import { u as ModelSelectorLogo } from "../ModelSelector-Brvj9Cab.js";
5
5
  import "react";
6
6
  import { jsx, jsxs } from "react/jsx-runtime";
7
7
  //#region src/components/ChatGptSignInScreen.tsx
@@ -1,5 +1,5 @@
1
1
  import { n as mergeBaseClassName } from "../class-names-BiMDVpUo.js";
2
- import { u as CheckIcon } from "../icons-DyOM0EJs.js";
2
+ import { d as CheckIcon } from "../icons-ua6f_GH3.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  import { Checkbox as Checkbox$1 } from "@base-ui/react/checkbox";
5
5
  //#region src/components/Checkbox.tsx
@@ -1,5 +1,5 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { o as BookmarkIcon } from "../icons-DyOM0EJs.js";
2
+ import { s as BookmarkIcon } from "../icons-ua6f_GH3.js";
3
3
  import { Marker, MarkerIcon } from "./Marker.js";
4
4
  import "react";
5
5
  import { jsx } from "react/jsx-runtime";
@@ -1,2 +1,2 @@
1
- import { A as CodeBlockLanguage, C as CodeBlockLanguageSelectorValueProps, D as TokenizedCode, E as CodeBlockTitleProps, O as highlightCode, S as CodeBlockLanguageSelectorValue, T as CodeBlockTitle, _ as CodeBlockLanguageSelectorItem, a as CodeBlockContainerProps, b as CodeBlockLanguageSelectorTrigger, c as CodeBlockCopyButton, d as CodeBlockFilenameProps, f as CodeBlockHeader, g as CodeBlockLanguageSelectorContentProps, h as CodeBlockLanguageSelectorContent, i as CodeBlockContainer, k as CODE_BLOCK_LANGUAGES, l as CodeBlockCopyButtonProps, m as CodeBlockLanguageSelector, n as CodeBlockActions, o as CodeBlockContent, p as CodeBlockHeaderProps, r as CodeBlockActionsProps, s as CodeBlockContentProps, t as CodeBlock, u as CodeBlockFilename, v as CodeBlockLanguageSelectorItemProps, w as CodeBlockProps, x as CodeBlockLanguageSelectorTriggerProps, y as CodeBlockLanguageSelectorProps } from "../CodeBlock-Bbls1CnA.js";
1
+ import { A as CodeBlockLanguage, C as CodeBlockLanguageSelectorValueProps, D as TokenizedCode, E as CodeBlockTitleProps, O as highlightCode, S as CodeBlockLanguageSelectorValue, T as CodeBlockTitle, _ as CodeBlockLanguageSelectorItem, a as CodeBlockContainerProps, b as CodeBlockLanguageSelectorTrigger, c as CodeBlockCopyButton, d as CodeBlockFilenameProps, f as CodeBlockHeader, g as CodeBlockLanguageSelectorContentProps, h as CodeBlockLanguageSelectorContent, i as CodeBlockContainer, k as CODE_BLOCK_LANGUAGES, l as CodeBlockCopyButtonProps, m as CodeBlockLanguageSelector, n as CodeBlockActions, o as CodeBlockContent, p as CodeBlockHeaderProps, r as CodeBlockActionsProps, s as CodeBlockContentProps, t as CodeBlock, u as CodeBlockFilename, v as CodeBlockLanguageSelectorItemProps, w as CodeBlockProps, x as CodeBlockLanguageSelectorTriggerProps, y as CodeBlockLanguageSelectorProps } from "../CodeBlock-yMpGqScn.js";
2
2
  export { CODE_BLOCK_LANGUAGES, CodeBlock, CodeBlockActions, CodeBlockActionsProps, CodeBlockContainer, CodeBlockContainerProps, CodeBlockContent, CodeBlockContentProps, CodeBlockCopyButton, CodeBlockCopyButtonProps, CodeBlockFilename, CodeBlockFilenameProps, CodeBlockHeader, CodeBlockHeaderProps, type CodeBlockLanguage, CodeBlockLanguageSelector, CodeBlockLanguageSelectorContent, CodeBlockLanguageSelectorContentProps, CodeBlockLanguageSelectorItem, CodeBlockLanguageSelectorItemProps, CodeBlockLanguageSelectorProps, CodeBlockLanguageSelectorTrigger, CodeBlockLanguageSelectorTriggerProps, CodeBlockLanguageSelectorValue, CodeBlockLanguageSelectorValueProps, CodeBlockProps, CodeBlockTitle, CodeBlockTitleProps, TokenizedCode, highlightCode };
@@ -1,2 +1,2 @@
1
- import { a as CodeBlockCopyButton, c as CodeBlockLanguageSelector, d as CodeBlockLanguageSelectorTrigger, f as CodeBlockLanguageSelectorValue, h as CODE_BLOCK_LANGUAGES, i as CodeBlockContent, l as CodeBlockLanguageSelectorContent, m as highlightCode, n as CodeBlockActions, o as CodeBlockFilename, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock, u as CodeBlockLanguageSelectorItem } from "../CodeBlock-ygtuzqJd.js";
1
+ import { a as CodeBlockCopyButton, c as CodeBlockLanguageSelector, d as CodeBlockLanguageSelectorTrigger, f as CodeBlockLanguageSelectorValue, h as CODE_BLOCK_LANGUAGES, i as CodeBlockContent, l as CodeBlockLanguageSelectorContent, m as highlightCode, n as CodeBlockActions, o as CodeBlockFilename, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock, u as CodeBlockLanguageSelectorItem } from "../CodeBlock-Cp67Njo3.js";
2
2
  export { CODE_BLOCK_LANGUAGES, CodeBlock, CodeBlockActions, CodeBlockContainer, CodeBlockContent, CodeBlockCopyButton, CodeBlockFilename, CodeBlockHeader, CodeBlockLanguageSelector, CodeBlockLanguageSelectorContent, CodeBlockLanguageSelectorItem, CodeBlockLanguageSelectorTrigger, CodeBlockLanguageSelectorValue, CodeBlockTitle, highlightCode };
@@ -1,5 +1,5 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { U as RefreshIcon, c as BrainIcon, d as ChevronDownIcon, p as ChevronRightIcon, u as CheckIcon } from "../icons-DyOM0EJs.js";
2
+ import { W as RefreshIcon, d as CheckIcon, f as ChevronDownIcon, l as BrainIcon, m as ChevronRightIcon } from "../icons-ua6f_GH3.js";
3
3
  import { Tooltip } from "./Tooltip.js";
4
4
  import { i as titleCase } from "../format-S6uWyoSb.js";
5
5
  import { Menu } from "./Menu.js";
@@ -1,5 +1,5 @@
1
1
  import { t as Collapsible } from "../Collapsible-N64ASIQr.js";
2
- import { t as CopyButtonProps } from "../copy-button-BrvQ7z4W.js";
2
+ import { t as CopyButtonProps } from "../copy-button-EBv_B9F6.js";
3
3
  import * as React from "react";
4
4
 
5
5
  //#region src/components/Commit.d.ts
@@ -1,9 +1,9 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
2
  import { Collapsible } from "./Collapsible.js";
3
- import { S as FileIcon, p as ChevronRightIcon } from "../icons-DyOM0EJs.js";
4
- import { t as CopyButton } from "../copy-button-vo1paUSi.js";
5
- import { Badge } from "./Badge.js";
3
+ import { C as FileIcon, m as ChevronRightIcon } from "../icons-ua6f_GH3.js";
6
4
  import { Avatar } from "./Avatar.js";
5
+ import { t as CopyButton } from "../copy-button-TWq8nZhc.js";
6
+ import { Badge } from "./Badge.js";
7
7
  import "react";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
9
9
  //#region src/components/Commit.tsx
@@ -1,5 +1,5 @@
1
1
  import { n as mergeBaseClassName, t as cx } from "../class-names-BiMDVpUo.js";
2
- import { _ as DotIcon, u as CheckIcon } from "../icons-DyOM0EJs.js";
2
+ import { d as CheckIcon, v as DotIcon } from "../icons-ua6f_GH3.js";
3
3
  import "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import { ContextMenu as ContextMenu$1 } from "@base-ui/react/context-menu";
@@ -1,4 +1,4 @@
1
- import { t as Button } from "../Button-yRInko9u.js";
1
+ import { n as IconButtonProps } from "../IconButton-CFKhu6OR.js";
2
2
  import { MessageScrollerButtonProps, MessageScrollerItemProps } from "./MessageScroller.js";
3
3
  import * as React from "react";
4
4
  import { UIMessage } from "ai";
@@ -76,27 +76,6 @@ declare function ConversationItem({
76
76
  scrollAnchor,
77
77
  ...props
78
78
  }: ConversationItemProps): React.JSX.Element;
79
- interface ConversationEmptyStateProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "title"> {
80
- title?: React.ReactNode;
81
- description?: React.ReactNode;
82
- icon?: React.ReactNode;
83
- }
84
- /**
85
- * Placeholder shown when there are no messages yet. Renders an icon, title,
86
- * and description stacked vertically; pass `children` to override the
87
- * default layout entirely.
88
- */
89
- declare function ConversationEmptyState({
90
- className,
91
- title,
92
- description,
93
- icon,
94
- children,
95
- ref,
96
- ...props
97
- }: ConversationEmptyStateProps & {
98
- ref?: React.Ref<HTMLDivElement>;
99
- }): React.JSX.Element;
100
79
  interface ConversationScrollButtonProps extends Omit<MessageScrollerButtonProps, "children"> {
101
80
  /** Accessible label for the button. */
102
81
  label?: string;
@@ -125,7 +104,7 @@ declare function ConversationScrollButton({
125
104
  * `### Role\n\n<text>` blocks joined by blank lines.
126
105
  */
127
106
  declare function messagesToMarkdown(messages: ConversationMessage[], formatMessage?: (message: ConversationMessage, index: number) => string): string;
128
- interface ConversationDownloadProps extends Omit<React.ComponentProps<typeof Button>, "onClick" | "children"> {
107
+ interface ConversationDownloadProps extends Omit<IconButtonProps, "onClick" | "children" | "label"> {
129
108
  messages: ConversationMessage[];
130
109
  /** Filename for the downloaded Markdown file. */
131
110
  filename?: string;
@@ -157,4 +136,4 @@ declare function ConversationDownload({
157
136
  ref?: React.Ref<HTMLButtonElement>;
158
137
  }): React.JSX.Element | null;
159
138
  //#endregion
160
- export { Conversation, ConversationContent, ConversationContentProps, ConversationDownload, ConversationDownloadProps, ConversationEmptyState, ConversationEmptyStateProps, ConversationItem, ConversationItemProps, ConversationMessage, ConversationProps, ConversationScrollButton, ConversationScrollButtonProps, messagesToMarkdown };
139
+ export { Conversation, ConversationContent, ConversationContentProps, ConversationDownload, ConversationDownloadProps, ConversationItem, ConversationItemProps, ConversationMessage, ConversationProps, ConversationScrollButton, ConversationScrollButtonProps, messagesToMarkdown };
@@ -1,10 +1,10 @@
1
1
  import { t as cx } from "../class-names-BiMDVpUo.js";
2
- import { n as ArrowDownIcon, v as DownloadIcon } from "../icons-DyOM0EJs.js";
3
- import { Button } from "./Button.js";
2
+ import { n as ArrowDownIcon, y as DownloadIcon } from "../icons-ua6f_GH3.js";
3
+ import { IconButton } from "./IconButton.js";
4
4
  import { t as assignRef } from "../merge-refs-DF_7w2x_.js";
5
5
  import { MessageScroller, MessageScrollerButton, MessageScrollerContent, MessageScrollerItem, MessageScrollerProvider, MessageScrollerViewport } from "./MessageScroller.js";
6
6
  import * as React from "react";
7
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
7
+ import { jsx } from "react/jsx-runtime";
8
8
  import { isReasoningUIPart, isTextUIPart } from "ai";
9
9
  //#region src/components/Conversation.tsx
10
10
  /**
@@ -84,33 +84,6 @@ function ConversationItem({ className, scrollAnchor = false, ...props }) {
84
84
  });
85
85
  }
86
86
  /**
87
- * Placeholder shown when there are no messages yet. Renders an icon, title,
88
- * and description stacked vertically; pass `children` to override the
89
- * default layout entirely.
90
- */
91
- function ConversationEmptyState({ className, title = "No messages yet", description = "Start a conversation to see messages here", icon, children, ref, ...props }) {
92
- return /* @__PURE__ */ jsx("div", {
93
- ref,
94
- className: cx("conversation__empty", className),
95
- ...props,
96
- children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
97
- icon ? /* @__PURE__ */ jsx("span", {
98
- className: "conversation__empty-icon",
99
- "aria-hidden": "true",
100
- children: icon
101
- }) : null,
102
- title ? /* @__PURE__ */ jsx("div", {
103
- className: "conversation__empty-title",
104
- children: title
105
- }) : null,
106
- description ? /* @__PURE__ */ jsx("div", {
107
- className: "conversation__empty-description",
108
- children: description
109
- }) : null
110
- ] })
111
- });
112
- }
113
- /**
114
87
  * Floating button that scrolls the conversation to the latest message.
115
88
  * Hidden from view and tab order while the viewport is already at the end.
116
89
  */
@@ -163,19 +136,18 @@ function ConversationDownload({ className, messages, filename = "conversation.md
163
136
  anchor.remove();
164
137
  URL.revokeObjectURL(url);
165
138
  };
166
- return /* @__PURE__ */ jsx(Button, {
139
+ return /* @__PURE__ */ jsx(IconButton, {
167
140
  ref,
168
141
  type: "button",
142
+ label,
169
143
  variant,
170
144
  color,
171
145
  size,
172
- iconOnly: true,
173
146
  className: cx("conversation__download-button", className),
174
- "aria-label": label,
175
147
  onClick: handleClick,
176
148
  ...props,
177
149
  children: children ?? /* @__PURE__ */ jsx(DownloadIcon, {})
178
150
  });
179
151
  }
180
152
  //#endregion
181
- export { Conversation, ConversationContent, ConversationDownload, ConversationEmptyState, ConversationItem, ConversationScrollButton, messagesToMarkdown };
153
+ export { Conversation, ConversationContent, ConversationDownload, ConversationItem, ConversationScrollButton, messagesToMarkdown };
@@ -1,118 +1,2 @@
1
- import * as React from "react";
2
- import { Dialog as Dialog$1 } from "@base-ui/react/dialog";
3
-
4
- //#region src/components/Dialog.d.ts
5
- interface DialogProps extends Dialog$1.Root.Props {}
6
- interface DialogTriggerProps extends Dialog$1.Trigger.Props {}
7
- interface DialogPortalProps extends Dialog$1.Portal.Props {}
8
- interface DialogBackdropProps extends Dialog$1.Backdrop.Props {}
9
- interface DialogViewportProps extends Dialog$1.Viewport.Props {}
10
- interface DialogPopupProps extends Dialog$1.Popup.Props {
11
- /**
12
- * The size of the dialog.
13
- * @default 'md'
14
- */
15
- size?: "sm" | "md" | "lg" | "fullscreen";
16
- }
17
- interface DialogTitleProps extends Dialog$1.Title.Props {}
18
- interface DialogDescriptionProps extends Dialog$1.Description.Props {}
19
- interface DialogCloseProps extends Dialog$1.Close.Props {}
20
- interface DialogHeaderProps extends React.HTMLAttributes<HTMLDivElement> {}
21
- interface DialogFooterProps extends React.HTMLAttributes<HTMLDivElement> {}
22
- /**
23
- * A dialog component for modal interactions.
24
- *
25
- * @example
26
- * ```tsx
27
- * <Dialog.Root open={isOpen} onOpenChange={setIsOpen}>
28
- * <Dialog.Trigger render={<Button />}>Open</Dialog.Trigger>
29
- * <Dialog.Portal>
30
- * <Dialog.Backdrop />
31
- * <Dialog.Viewport>
32
- * <Dialog.Popup>
33
- * <Dialog.Title>Confirm</Dialog.Title>
34
- * <Dialog.Description>Are you sure?</Dialog.Description>
35
- * <Dialog.Close>Cancel</Dialog.Close>
36
- * </Dialog.Popup>
37
- * </Dialog.Viewport>
38
- * </Dialog.Portal>
39
- * </Dialog.Root>
40
- * ```
41
- *
42
- * @see {@link https://base-ui.com/react/components/dialog | Base UI Dialog}
43
- */
44
- declare function DialogTrigger(props: DialogTriggerProps): React.JSX.Element;
45
- declare function DialogBackdrop({
46
- className,
47
- ref,
48
- ...props
49
- }: DialogBackdropProps & {
50
- ref?: React.Ref<HTMLDivElement>;
51
- }): React.JSX.Element;
52
- declare function DialogViewport({
53
- className,
54
- ref,
55
- ...props
56
- }: DialogViewportProps & {
57
- ref?: React.Ref<HTMLDivElement>;
58
- }): React.JSX.Element;
59
- declare function DialogPopup({
60
- size,
61
- className,
62
- ref,
63
- ...props
64
- }: DialogPopupProps & {
65
- ref?: React.Ref<HTMLDivElement>;
66
- }): React.JSX.Element;
67
- declare function DialogHeader({
68
- className,
69
- ref,
70
- ...props
71
- }: DialogHeaderProps & {
72
- ref?: React.Ref<HTMLDivElement>;
73
- }): React.JSX.Element;
74
- declare function DialogFooter({
75
- className,
76
- ref,
77
- ...props
78
- }: DialogFooterProps & {
79
- ref?: React.Ref<HTMLDivElement>;
80
- }): React.JSX.Element;
81
- declare function DialogTitle({
82
- className,
83
- ref,
84
- ...props
85
- }: DialogTitleProps & {
86
- ref?: React.Ref<HTMLHeadingElement>;
87
- }): React.JSX.Element;
88
- declare function DialogDescription({
89
- className,
90
- ref,
91
- ...props
92
- }: DialogDescriptionProps & {
93
- ref?: React.Ref<HTMLParagraphElement>;
94
- }): React.JSX.Element;
95
- declare function DialogClose({
96
- render,
97
- className,
98
- ref,
99
- ...props
100
- }: DialogCloseProps & {
101
- ref?: React.Ref<HTMLButtonElement>;
102
- }): React.JSX.Element;
103
- declare const Dialog: {
104
- Root: typeof Dialog$1.Root;
105
- Trigger: typeof DialogTrigger;
106
- Portal: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").AlertDialogPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
107
- Backdrop: typeof DialogBackdrop;
108
- Viewport: typeof DialogViewport;
109
- Popup: typeof DialogPopup;
110
- Header: typeof DialogHeader;
111
- Footer: typeof DialogFooter;
112
- Title: typeof DialogTitle;
113
- Description: typeof DialogDescription;
114
- Close: typeof DialogClose;
115
- createHandle: typeof Dialog$1.createHandle;
116
- };
117
- //#endregion
1
+ import { a as DialogFooterProps, c as DialogPortalProps, d as DialogTriggerProps, f as DialogViewportProps, i as DialogDescriptionProps, l as DialogProps, n as DialogBackdropProps, o as DialogHeaderProps, r as DialogCloseProps, s as DialogPopupProps, t as Dialog, u as DialogTitleProps } from "../Dialog-BD8NBKaE.js";
118
2
  export { Dialog, DialogBackdropProps, DialogCloseProps, DialogDescriptionProps, DialogFooterProps, DialogHeaderProps, DialogPopupProps, DialogPortalProps, DialogProps, DialogTitleProps, DialogTriggerProps, DialogViewportProps };