@mcp-b/react-components 0.12.0 → 0.13.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 (229) hide show
  1. package/dist/{AgentChat-CRmsKg9B.d.ts → AgentChat-Br6tKEl8.d.ts} +29 -5
  2. package/dist/{Button-Ct5I6aTu.d.ts → Button-FX_hpqxm.d.ts} +8 -11
  3. package/dist/{CodeBlock-XNQOupQ3.js → CodeBlock-BUFXG8HW.js} +22 -12
  4. package/dist/{CodeBlock-CxQXv3C4.d.ts → CodeBlock-DUh9WOGo.d.ts} +13 -7
  5. package/dist/{Combobox-D9anamNr.d.ts → Combobox-B9Fcd6q-.d.ts} +4 -14
  6. package/dist/{FileTree-wMyZhhHO.js → FileTree-mpEIcfzA.js} +1 -1
  7. package/dist/{Menu-BLhnNnRK.d.ts → Menu-Bgu-ufb5.d.ts} +26 -65
  8. package/dist/{ModelSelector-BB-xB-Es.js → ModelSelector-DVgVBdvw.js} +7 -7
  9. package/dist/{PromptInput-IyM6ZETj.d.ts → PromptInput-p5KmOmt1.d.ts} +302 -46
  10. package/dist/Select-Dl_vF_Bt.d.ts +213 -0
  11. package/dist/{Tabs-D9EAq09D.d.ts → Tabs-3Zc4tb9D.d.ts} +9 -6
  12. package/dist/{ThinkChat-B3wYahor.js → ThinkChat-7DQ2CogF.js} +34 -2
  13. package/dist/{ThinkChatActivity-F4KFPcJA.d.ts → ThinkChatActivity-Cuk28Js_.d.ts} +1 -1
  14. package/dist/{attachment-preview-ChtC3HiU.js → attachment-preview-DIs50Q0h.js} +3 -3
  15. package/dist/components/Accordion.d.ts +17 -6
  16. package/dist/components/Accordion.js +23 -36
  17. package/dist/components/Activity.d.ts +5 -5
  18. package/dist/components/Activity.js +9 -9
  19. package/dist/components/AgentChat.d.ts +1 -1
  20. package/dist/components/AgentChat.js +304 -116
  21. package/dist/components/AgentConnection.js +2 -2
  22. package/dist/components/AlertDialog.d.ts +40 -32
  23. package/dist/components/AlertDialog.js +46 -39
  24. package/dist/components/Artifact.d.ts +1 -1
  25. package/dist/components/Artifact.js +5 -5
  26. package/dist/components/Autocomplete.js +10 -2
  27. package/dist/components/Avatar.d.ts +2 -2
  28. package/dist/components/Avatar.js +3 -3
  29. package/dist/components/Badge.d.ts +11 -14
  30. package/dist/components/Badge.js +10 -18
  31. package/dist/components/BrowserLiveView.js +26 -36
  32. package/dist/components/BrowserReplay.js +4 -4
  33. package/dist/components/BrowserRunPanel.js +1 -1
  34. package/dist/components/Button.d.ts +2 -2
  35. package/dist/components/Button.js +7 -30
  36. package/dist/components/ChainOfThought.d.ts +5 -5
  37. package/dist/components/ChainOfThought.js +8 -5
  38. package/dist/components/ChatGptSignInScreen.js +3 -3
  39. package/dist/components/Checkbox.d.ts +10 -2
  40. package/dist/components/Checkbox.js +13 -6
  41. package/dist/components/CheckboxGroup.d.ts +6 -6
  42. package/dist/components/CheckboxGroup.js +6 -6
  43. package/dist/components/CodeBlock.d.ts +1 -1
  44. package/dist/components/CodeBlock.js +1 -1
  45. package/dist/components/CodexModelSelector.d.ts +23 -28
  46. package/dist/components/CodexModelSelector.js +116 -94
  47. package/dist/components/Collapsible.d.ts +2 -4
  48. package/dist/components/Collapsible.js +9 -7
  49. package/dist/components/Combobox.d.ts +2 -2
  50. package/dist/components/Combobox.js +20 -22
  51. package/dist/components/Commit.d.ts +5 -5
  52. package/dist/components/Commit.js +6 -6
  53. package/dist/components/Context.js +5 -1
  54. package/dist/components/ContextMenu.d.ts +20 -72
  55. package/dist/components/ContextMenu.js +46 -56
  56. package/dist/components/Conversation.d.ts +1 -1
  57. package/dist/components/Conversation.js +1 -1
  58. package/dist/components/Dialog.d.ts +38 -30
  59. package/dist/components/Dialog.js +46 -34
  60. package/dist/components/EnvironmentVariables.d.ts +1 -1
  61. package/dist/components/EnvironmentVariables.js +5 -5
  62. package/dist/components/Field.d.ts +3 -3
  63. package/dist/components/Field.js +7 -8
  64. package/dist/components/Fieldset.d.ts +2 -2
  65. package/dist/components/Fieldset.js +2 -2
  66. package/dist/components/FileTree.js +1 -1
  67. package/dist/components/Label.d.ts +1 -1
  68. package/dist/components/Label.js +1 -1
  69. package/dist/components/McpServerPicker.js +21 -19
  70. package/dist/components/Menu.d.ts +2 -2
  71. package/dist/components/Menu.js +39 -49
  72. package/dist/components/Menubar.d.ts +16 -52
  73. package/dist/components/Menubar.js +44 -56
  74. package/dist/components/Message.d.ts +1 -1
  75. package/dist/components/Message.js +6 -6
  76. package/dist/components/MessageScroller.d.ts +1 -1
  77. package/dist/components/MessageScroller.js +1 -1
  78. package/dist/components/Meter.js +5 -0
  79. package/dist/components/ModelSelector.d.ts +1 -1
  80. package/dist/components/ModelSelector.js +1 -1
  81. package/dist/components/NavigationMenu.d.ts +3 -14
  82. package/dist/components/NavigationMenu.js +22 -38
  83. package/dist/components/NumberField.js +6 -0
  84. package/dist/components/Popover.d.ts +21 -44
  85. package/dist/components/Popover.js +33 -23
  86. package/dist/components/PreviewCard.d.ts +20 -18
  87. package/dist/components/PreviewCard.js +30 -20
  88. package/dist/components/PricingPage.js +30 -29
  89. package/dist/components/Progress.d.ts +7 -3
  90. package/dist/components/Progress.js +9 -4
  91. package/dist/components/PromptInput.d.ts +2 -2
  92. package/dist/components/PromptInput.js +139 -54
  93. package/dist/components/Queue.d.ts +7 -7
  94. package/dist/components/Queue.js +6 -6
  95. package/dist/components/RadioGroup.d.ts +10 -9
  96. package/dist/components/RadioGroup.js +8 -9
  97. package/dist/components/Reasoning.d.ts +4 -4
  98. package/dist/components/Reasoning.js +10 -6
  99. package/dist/components/ScrollArea.d.ts +2 -9
  100. package/dist/components/ScrollArea.js +5 -23
  101. package/dist/components/Select.d.ts +2 -2
  102. package/dist/components/Select.js +100 -134
  103. package/dist/components/Slider.d.ts +10 -7
  104. package/dist/components/Slider.js +12 -11
  105. package/dist/components/Sources.d.ts +4 -4
  106. package/dist/components/Sources.js +8 -5
  107. package/dist/components/Stepper.js +1 -1
  108. package/dist/components/Switch.d.ts +6 -3
  109. package/dist/components/Switch.js +7 -4
  110. package/dist/components/Tabs.d.ts +2 -2
  111. package/dist/components/Tabs.js +9 -4
  112. package/dist/components/Task.d.ts +4 -4
  113. package/dist/components/Task.js +10 -6
  114. package/dist/components/Terminal.d.ts +2 -2
  115. package/dist/components/Terminal.js +5 -5
  116. package/dist/components/TestResults.d.ts +4 -4
  117. package/dist/components/TestResults.js +5 -5
  118. package/dist/components/ThinkChat.d.ts +9 -2
  119. package/dist/components/ThinkChat.js +1 -1
  120. package/dist/components/ThinkChatActivity.d.ts +1 -1
  121. package/dist/components/ThinkChatActivity.js +1 -1
  122. package/dist/components/ThinkChatToolPanels.js +8 -8
  123. package/dist/components/ThinkExecutionWorkbench.js +28 -28
  124. package/dist/components/ThinkFullApp.js +8 -8
  125. package/dist/components/ThinkThreadPicker.js +1 -1
  126. package/dist/components/ThinkThreadShell.js +5 -5
  127. package/dist/components/Toast.js +7 -0
  128. package/dist/components/ToggleGroup.d.ts +6 -2
  129. package/dist/components/ToggleGroup.js +6 -2
  130. package/dist/components/Toolbar.js +6 -0
  131. package/dist/components/Tooltip.d.ts +36 -27
  132. package/dist/components/Tooltip.js +45 -29
  133. package/dist/components/WebPreview.d.ts +1 -1
  134. package/dist/components/WebPreview.js +3 -3
  135. package/dist/components/WorkspaceExplorer.d.ts +6 -8
  136. package/dist/components/WorkspaceExplorer.js +6 -6
  137. package/dist/components/icons.d.ts +2 -2
  138. package/dist/components/icons.js +2 -2
  139. package/dist/{copy-button-C6JSKtFE.js → copy-button-DUMLYdsk.js} +7 -6
  140. package/dist/{copy-button-BKXqGiNm.d.ts → copy-button-DtPMgN7e.d.ts} +3 -2
  141. package/dist/icons-Ba9THQKz.js +64 -0
  142. package/dist/icons-CUCz_Sft.d.ts +210 -0
  143. package/dist/styles/accessibility.css +14 -0
  144. package/dist/styles/accordion.css +21 -61
  145. package/dist/styles/activity.css +23 -58
  146. package/dist/styles/agent-chat.css +45 -4
  147. package/dist/styles/agent-connection.css +8 -10
  148. package/dist/styles/alert-dialog.css +20 -26
  149. package/dist/styles/artifact.css +6 -6
  150. package/dist/styles/attachment-preview.css +1 -1
  151. package/dist/styles/autocomplete.css +5 -170
  152. package/dist/styles/avatar.css +8 -8
  153. package/dist/styles/badge.css +8 -10
  154. package/dist/styles/base-ui-motion.css +176 -0
  155. package/dist/styles/base.css +19 -25
  156. package/dist/styles/browser-live-view.css +7 -7
  157. package/dist/styles/browser-replay.css +5 -5
  158. package/dist/styles/browser-run-panel.css +5 -5
  159. package/dist/styles/button.css +48 -43
  160. package/dist/styles/card.css +3 -5
  161. package/dist/styles/chain-of-thought.css +14 -70
  162. package/dist/styles/chatgpt-sign-in-screen.css +3 -3
  163. package/dist/styles/checkbox-group.css +1 -1
  164. package/dist/styles/checkbox.css +3 -7
  165. package/dist/styles/code-block.css +10 -10
  166. package/dist/styles/codex-model-selector.css +33 -44
  167. package/dist/styles/collapsible.css +11 -27
  168. package/dist/styles/combobox.css +3 -149
  169. package/dist/styles/commit.css +19 -35
  170. package/dist/styles/context-menu.css +1 -77
  171. package/dist/styles/context.css +12 -12
  172. package/dist/styles/conversation.css +7 -7
  173. package/dist/styles/dialog.css +34 -55
  174. package/dist/styles/environment-variables.css +10 -10
  175. package/dist/styles/field.css +16 -58
  176. package/dist/styles/fieldset.css +2 -2
  177. package/dist/styles/file-tree.css +7 -9
  178. package/dist/styles/index.css +8 -1
  179. package/dist/styles/input.css +1 -51
  180. package/dist/styles/label.css +2 -2
  181. package/dist/styles/marker.css +2 -4
  182. package/dist/styles/mcp-server-picker.css +5 -5
  183. package/dist/styles/menu.css +6 -153
  184. package/dist/styles/menubar.css +6 -105
  185. package/dist/styles/message-scroller.css +1 -1
  186. package/dist/styles/message.css +86 -8
  187. package/dist/styles/meter.css +4 -20
  188. package/dist/styles/model-selector.css +13 -13
  189. package/dist/styles/navigation-menu.css +14 -54
  190. package/dist/styles/number-field.css +8 -23
  191. package/dist/styles/popover.css +13 -68
  192. package/dist/styles/preview-card.css +5 -46
  193. package/dist/styles/pricing-page.css +43 -43
  194. package/dist/styles/progress.css +7 -16
  195. package/dist/styles/prompt-input.css +95 -44
  196. package/dist/styles/queue.css +12 -28
  197. package/dist/styles/radio.css +4 -8
  198. package/dist/styles/reasoning.css +3 -62
  199. package/dist/styles/recipes.css +475 -0
  200. package/dist/styles/select.css +7 -103
  201. package/dist/styles/shell.css +3 -3
  202. package/dist/styles/slider.css +5 -7
  203. package/dist/styles/sources.css +9 -66
  204. package/dist/styles/stepper.css +16 -14
  205. package/dist/styles/streamdown.css +9 -9
  206. package/dist/styles/switch.css +4 -7
  207. package/dist/styles/tabs.css +7 -8
  208. package/dist/styles/task.css +13 -42
  209. package/dist/styles/terminal.css +7 -7
  210. package/dist/styles/test-results.css +21 -37
  211. package/dist/styles/think-execution-workbench.css +23 -23
  212. package/dist/styles/think-full-app.css +12 -20
  213. package/dist/styles/think-resize-handle.css +2 -2
  214. package/dist/styles/think-thread-picker.css +19 -10
  215. package/dist/styles/think-thread-shell.css +7 -7
  216. package/dist/styles/toast.css +14 -25
  217. package/dist/styles/toggle-group.css +16 -14
  218. package/dist/styles/toggle.css +14 -15
  219. package/dist/styles/toolbar.css +13 -25
  220. package/dist/styles/tooltip.css +6 -16
  221. package/dist/styles/web-preview.css +15 -15
  222. package/dist/styles/workspace-explorer.css +14 -13
  223. package/dist/utils/codex-model-catalog.d.ts +142 -0
  224. package/dist/utils/codex-model-catalog.js +112 -0
  225. package/dist/utils/structured-code.d.ts +1 -1
  226. package/package.json +8 -2
  227. package/dist/Select-CRsKCJ9x.d.ts +0 -200
  228. package/dist/icons-CbjtbIJK.d.ts +0 -51
  229. package/dist/icons-D2Q5n5C1.js +0 -291
@@ -1,4 +1,4 @@
1
- import { $ as PromptInputMessage } from "./PromptInput-IyM6ZETj.js";
1
+ import { tt as PromptInputMessage } from "./PromptInput-p5KmOmt1.js";
2
2
  import * as React from "react";
3
3
  import { ChatAddToolApproveResponseFunction, ChatStatus, UIMessage } from "ai";
4
4
  import { PendingApproval, Think } from "@cloudflare/think";
@@ -23,9 +23,9 @@ interface AgentChatProps<MessageT extends UIMessage = UIMessage> {
23
23
  *
24
24
  * `AgentChat` intentionally renders the upstream message objects in place:
25
25
  * it does not normalize them into a local transcript model. That keeps AI SDK
26
- * parts such as `text`, `reasoning`, `file`, `tool-*`, `source-url`,
27
- * `source-document`, and `step-start` aligned with the types exported from
28
- * `ai`. Cloudflare Think also returns these same UI messages through
26
+ * parts such as `text`, `reasoning`, `file`, `data-*`, `tool-*`,
27
+ * `source-url`, `source-document`, and `step-start` aligned with the types
28
+ * exported from `ai`. Cloudflare Think also returns these same UI messages through
29
29
  * `useAgentChat`, with Agents session storage applying compaction overlays to
30
30
  * reads before they reach the hook.
31
31
  *
@@ -85,6 +85,12 @@ interface AgentChatProps<MessageT extends UIMessage = UIMessage> {
85
85
  emptyState?: React.ReactNode;
86
86
  /** Extra controls rendered in the composer toolbar. */
87
87
  composerTools?: React.ReactNode;
88
+ /**
89
+ * Rendered in the prompt-composer header before attachments and the text
90
+ * field. Use it to compose a compact Activity, task state, or app-specific
91
+ * context summary into the composer without recreating PromptInput's form.
92
+ */
93
+ composerHeader?: React.ReactNode;
88
94
  /** Extra rows rendered in the built-in plus menu after files. */
89
95
  composerAddMenuItems?: React.ReactNode;
90
96
  /**
@@ -98,6 +104,20 @@ interface AgentChatProps<MessageT extends UIMessage = UIMessage> {
98
104
  * with its message id — pass to the AI SDK's `regenerate({ messageId })`.
99
105
  */
100
106
  onRegenerate?: (messageId: string) => void;
107
+ /**
108
+ * Called after the user confirms an edit to the newest text-only user
109
+ * message. The callback owns the durable backend branch and resend; this
110
+ * component keeps only the unsaved draft and pending/error UI locally.
111
+ *
112
+ * Think deliberately disables `setMessages` synchronization, so product
113
+ * code should wire this to a callable method on its agent rather than to the
114
+ * AI SDK's local `setMessages` helper. The whole upstream message is passed
115
+ * through so apps retain their `UIMessage` metadata and data-part types.
116
+ */
117
+ onEditAndResend?: (input: {
118
+ message: MessageT;
119
+ text: string;
120
+ }) => void | Promise<void>;
101
121
  /**
102
122
  * Pass `addToolApprovalResponse` from `useAgentChat`/`useChat` directly.
103
123
  * When set and a tool call awaits approval, the composer becomes the
@@ -129,7 +149,9 @@ interface AgentChatProps<MessageT extends UIMessage = UIMessage> {
129
149
  * `getToolName`, and Think's `getToolPartState`/input/output accessors. It
130
150
  * also renders native AI SDK `source-url`/`source-document` parts as a single
131
151
  * grouped `Sources` block when they appear consecutively, and native
132
- * `step-start` parts as step separators. If you override source rendering,
152
+ * `step-start` parts as step separators. App-defined `data-*` parts stay
153
+ * whole and should be narrowed with AI SDK's `isDataUIPart` inside this
154
+ * callback. If you override source rendering,
133
155
  * return a React node for every source part you want to show; returning
134
156
  * `undefined` lets `AgentChat` keep the upstream-shaped source-run grouping.
135
157
  */
@@ -151,10 +173,12 @@ declare function AgentChat<MessageT extends UIMessage = UIMessage>({
151
173
  placeholder,
152
174
  disabled,
153
175
  emptyState,
176
+ composerHeader,
154
177
  composerTools,
155
178
  composerAddMenuItems,
156
179
  notice,
157
180
  onRegenerate,
181
+ onEditAndResend,
158
182
  onApprovalResponse,
159
183
  thinkStub,
160
184
  onExecutionSettled,
@@ -30,12 +30,10 @@ type ButtonColor = "neutral" | "primary" | "destructive";
30
30
  * - `icon` - Square button for icon-only content
31
31
  */
32
32
  type ButtonSize = "xs" | "sm" | "md" | "lg" | "xl" | "icon" | "icon-xs" | "icon-sm" | "icon-lg";
33
- type ShadcnButtonVariant = "default" | "destructive" | "outline" | "secondary" | "ghost" | "link";
34
- type ShadcnButtonSize = "default" | "xs" | "sm" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg";
35
33
  interface ButtonVariantsOptions {
36
- variant?: ShadcnButtonVariant | ButtonVariant | null;
34
+ variant?: ButtonVariant | null;
37
35
  color?: ButtonColor | null;
38
- size?: ShadcnButtonSize | ButtonSize | null;
36
+ size?: ButtonSize | null;
39
37
  className?: string;
40
38
  }
41
39
  declare function buttonVariants({
@@ -51,9 +49,9 @@ type BaseButtonProps = ComponentPropsWithoutRef<typeof Button>;
51
49
  interface ButtonProps extends BaseButtonProps, Omit<ButtonHTMLAttributes<HTMLButtonElement>, keyof BaseButtonProps | "color"> {
52
50
  /**
53
51
  * The visual rendering style of the button.
54
- * @default 'default'
52
+ * @default 'normal'
55
53
  */
56
- variant?: ShadcnButtonVariant | ButtonVariant;
54
+ variant?: ButtonVariant;
57
55
  /**
58
56
  * The semantic color intent of the button.
59
57
  * @default 'primary'
@@ -63,15 +61,15 @@ interface ButtonProps extends BaseButtonProps, Omit<ButtonHTMLAttributes<HTMLBut
63
61
  * The size of the button.
64
62
  * @default 'md'
65
63
  */
66
- size?: ShadcnButtonSize | ButtonSize;
64
+ size?: ButtonSize;
67
65
  }
68
66
  /**
69
67
  * A button component built on Base UI with semantic styling variants.
70
68
  *
71
69
  * Separates visual style (`variant`) from color intent (`color`) for
72
70
  * maximum flexibility. Supports keyboard navigation, focus management, and
73
- * accessibility out of the box. Keeps shadcn-compatible variant and size
74
- * aliases for migration, while styling through Sigvelo CSS tokens.
71
+ * accessibility out of the box. Styling uses the design system's canonical
72
+ * visual variant, semantic color, and size axes.
75
73
  *
76
74
  * @example
77
75
  * ```tsx
@@ -82,7 +80,6 @@ interface ButtonProps extends BaseButtonProps, Omit<ButtonHTMLAttributes<HTMLBut
82
80
  * ```
83
81
  *
84
82
  * @see {@link https://base-ui.com/react/components/button | Base UI Button}
85
- * @see {@link https://ui.shadcn.com/docs/components/base/button | shadcn/ui Button}
86
83
  */
87
84
  declare function Button$1({
88
85
  variant,
@@ -96,4 +93,4 @@ declare function Button$1({
96
93
  ref?: React.Ref<HTMLButtonElement>;
97
94
  }): import("react").JSX.Element;
98
95
  //#endregion
99
- export { ButtonVariant as a, ShadcnButtonVariant as c, ButtonSize as i, buttonVariants as l, ButtonColor as n, ButtonVariantsOptions as o, ButtonProps as r, ShadcnButtonSize as s, Button$1 as t };
96
+ export { ButtonVariant as a, ButtonSize as i, ButtonColor as n, ButtonVariantsOptions as o, ButtonProps as r, buttonVariants as s, Button$1 as t };
@@ -1,6 +1,6 @@
1
1
  import { t as cx } from "./class-names-9UtZwb0J.js";
2
- import { Select, SelectContent, SelectItem, SelectList, SelectTrigger, SelectValue } from "./components/Select.js";
3
- import { t as CopyButton } from "./copy-button-C6JSKtFE.js";
2
+ import { Select } from "./components/Select.js";
3
+ import { t as CopyButton } from "./copy-button-DUMLYdsk.js";
4
4
  import * as React from "react";
5
5
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
6
  import { createHighlighter } from "shiki";
@@ -255,14 +255,14 @@ function CodeBlockLanguageSelector({ children, className, languages = CODE_BLOCK
255
255
  return /* @__PURE__ */ jsx("div", {
256
256
  ref,
257
257
  className: cx("code-block__language-selector", className),
258
- children: /* @__PURE__ */ jsx(Select, {
258
+ children: /* @__PURE__ */ jsx(Select.Root, {
259
259
  ...props,
260
260
  value: value ?? language,
261
261
  onValueChange: handleValueChange,
262
262
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(CodeBlockLanguageSelectorTrigger, {
263
263
  "aria-label": "Code language",
264
264
  children: /* @__PURE__ */ jsx(CodeBlockLanguageSelectorValue, {})
265
- }), /* @__PURE__ */ jsx(CodeBlockLanguageSelectorContent, { children: /* @__PURE__ */ jsx(SelectList, { children: languages.map((lang) => /* @__PURE__ */ jsx(CodeBlockLanguageSelectorItem, {
265
+ }), /* @__PURE__ */ jsx(CodeBlockLanguageSelectorContent, { children: /* @__PURE__ */ jsx(Select.List, { children: languages.map((lang) => /* @__PURE__ */ jsx(CodeBlockLanguageSelectorItem, {
266
266
  value: lang,
267
267
  children: lang
268
268
  }, lang)) }) })] })
@@ -270,22 +270,32 @@ function CodeBlockLanguageSelector({ children, className, languages = CODE_BLOCK
270
270
  });
271
271
  }
272
272
  function CodeBlockLanguageSelectorTrigger({ size = "sm", ...props }) {
273
- return /* @__PURE__ */ jsx(SelectTrigger, {
273
+ return /* @__PURE__ */ jsx(Select.Trigger, {
274
274
  size,
275
275
  ...props
276
276
  });
277
277
  }
278
278
  function CodeBlockLanguageSelectorValue(props) {
279
- return /* @__PURE__ */ jsx(SelectValue, { ...props });
279
+ return /* @__PURE__ */ jsx(Select.Value, { ...props });
280
280
  }
281
- function CodeBlockLanguageSelectorContent({ align = "end", ...props }) {
282
- return /* @__PURE__ */ jsx(SelectContent, {
281
+ function CodeBlockLanguageSelectorContent({ align = "end", children, ...props }) {
282
+ return /* @__PURE__ */ jsx(Select.Portal, { children: /* @__PURE__ */ jsx(Select.Positioner, {
283
283
  align,
284
- ...props
285
- });
284
+ children: /* @__PURE__ */ jsxs(Select.Popup, {
285
+ ...props,
286
+ children: [
287
+ /* @__PURE__ */ jsx(Select.ScrollUpArrow, {}),
288
+ /* @__PURE__ */ jsx(Select.List, { children }),
289
+ /* @__PURE__ */ jsx(Select.ScrollDownArrow, {})
290
+ ]
291
+ })
292
+ }) });
286
293
  }
287
- function CodeBlockLanguageSelectorItem(props) {
288
- return /* @__PURE__ */ jsx(SelectItem, { ...props });
294
+ function CodeBlockLanguageSelectorItem({ children, ...props }) {
295
+ return /* @__PURE__ */ jsxs(Select.Item, {
296
+ ...props,
297
+ children: [/* @__PURE__ */ jsx(Select.ItemIndicator, {}), /* @__PURE__ */ jsx(Select.ItemText, { children })]
298
+ });
289
299
  }
290
300
  function CodeBlockContainer({ className, children, ref, ...props }) {
291
301
  return /* @__PURE__ */ jsx("div", {
@@ -1,5 +1,5 @@
1
- import { A as SelectTriggerProps, M as SelectValueProps, S as SelectProps, r as SelectContentProps, s as SelectItemProps } from "./Select-CRsKCJ9x.js";
2
- import { t as CopyButtonProps } from "./copy-button-BKXqGiNm.js";
1
+ import { p as SelectProps, t as Select } from "./Select-Dl_vF_Bt.js";
2
+ import { t as CopyButtonProps } from "./copy-button-DtPMgN7e.js";
3
3
  import * as React from "react";
4
4
  import { BundledLanguage, ThemedToken } from "shiki";
5
5
 
@@ -139,10 +139,12 @@ declare function CodeBlockLanguageSelector({
139
139
  }: CodeBlockLanguageSelectorProps & {
140
140
  ref?: React.Ref<HTMLDivElement>;
141
141
  }): React.JSX.Element;
142
- type CodeBlockLanguageSelectorTriggerProps = SelectTriggerProps;
143
- type CodeBlockLanguageSelectorValueProps = SelectValueProps;
144
- type CodeBlockLanguageSelectorContentProps = SelectContentProps;
145
- type CodeBlockLanguageSelectorItemProps = SelectItemProps;
142
+ type CodeBlockLanguageSelectorTriggerProps = React.ComponentProps<typeof Select.Trigger>;
143
+ type CodeBlockLanguageSelectorValueProps = React.ComponentProps<typeof Select.Value>;
144
+ interface CodeBlockLanguageSelectorContentProps extends React.ComponentProps<typeof Select.Popup> {
145
+ align?: React.ComponentProps<typeof Select.Positioner>["align"];
146
+ }
147
+ type CodeBlockLanguageSelectorItemProps = React.ComponentProps<typeof Select.Item>;
146
148
  declare function CodeBlockLanguageSelectorTrigger({
147
149
  size,
148
150
  ...props
@@ -150,9 +152,13 @@ declare function CodeBlockLanguageSelectorTrigger({
150
152
  declare function CodeBlockLanguageSelectorValue(props: CodeBlockLanguageSelectorValueProps): React.JSX.Element;
151
153
  declare function CodeBlockLanguageSelectorContent({
152
154
  align,
155
+ children,
153
156
  ...props
154
157
  }: CodeBlockLanguageSelectorContentProps): React.JSX.Element;
155
- declare function CodeBlockLanguageSelectorItem(props: CodeBlockLanguageSelectorItemProps): React.JSX.Element;
158
+ declare function CodeBlockLanguageSelectorItem({
159
+ children,
160
+ ...props
161
+ }: CodeBlockLanguageSelectorItemProps): React.JSX.Element;
156
162
  interface CodeBlockContainerProps extends React.HTMLAttributes<HTMLDivElement> {}
157
163
  declare function CodeBlockContainer({
158
164
  className,
@@ -93,7 +93,7 @@ declare function ComboboxGroup({
93
93
  } & {
94
94
  ref?: React.Ref<HTMLDivElement>;
95
95
  }): React.JSX.Element;
96
- declare function ComboboxLabel({
96
+ declare function ComboboxGroupLabel({
97
97
  className,
98
98
  ref,
99
99
  ...props
@@ -142,15 +142,8 @@ declare function ComboboxLabel({
142
142
  *
143
143
  * @see {@link https://base-ui.com/react/components/combobox | Base UI Combobox}
144
144
  */
145
- declare const ComboboxContent: typeof ComboboxPopup;
146
- declare const ComboboxValue: typeof Combobox.Value;
147
- declare const ComboboxChips: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ComboboxChipsProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
148
- declare const ComboboxChip: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ComboboxChipProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
149
- declare const ComboboxChipsInput: typeof ComboboxInput;
150
- declare const ComboboxCollection: typeof Combobox.Collection;
151
- declare const ComboboxSeparator: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").SeparatorProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
152
145
  declare function useComboboxAnchor(): React.RefObject<HTMLDivElement | null>;
153
- declare const Combobox$1: typeof Combobox.Root & {
146
+ declare const Combobox$1: {
154
147
  Root: typeof Combobox.Root;
155
148
  Input: typeof ComboboxInput;
156
149
  Trigger: typeof ComboboxTrigger;
@@ -158,20 +151,17 @@ declare const Combobox$1: typeof Combobox.Root & {
158
151
  Portal: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").AutocompletePortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
159
152
  Positioner: typeof ComboboxPositioner;
160
153
  Popup: typeof ComboboxPopup;
161
- Content: typeof ComboboxPopup;
162
154
  List: typeof ComboboxList;
163
155
  Item: typeof ComboboxItem;
164
156
  ItemIndicator: typeof ItemIndicator;
165
157
  Empty: typeof ComboboxEmpty;
166
158
  Group: typeof ComboboxGroup;
167
- GroupLabel: typeof ComboboxLabel;
168
- Label: typeof ComboboxLabel;
159
+ GroupLabel: typeof ComboboxGroupLabel;
169
160
  Value: typeof Combobox.Value;
170
161
  Chips: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ComboboxChipsProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
171
162
  Chip: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ComboboxChipProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
172
- ChipsInput: typeof ComboboxInput;
173
163
  Collection: typeof Combobox.Collection;
174
164
  Separator: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").SeparatorProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
175
165
  };
176
166
  //#endregion
177
- export { ComboboxValue as _, ComboboxCollection as a, ComboboxGroup as c, ComboboxLabel as d, ComboboxList as f, ComboboxTrigger as g, ComboboxSeparator as h, ComboboxChipsInput as i, ComboboxInput as l, ComboboxPositioner as m, ComboboxChip as n, ComboboxContent as o, ComboboxPopup as p, ComboboxChips as r, ComboboxEmpty as s, Combobox$1 as t, ComboboxItem as u, useComboboxAnchor as v };
167
+ export { useComboboxAnchor as n, Combobox$1 as t };
@@ -1,5 +1,5 @@
1
1
  import { t as cx } from "./class-names-9UtZwb0J.js";
2
- import { _ as FolderOpenIcon, c as ChevronRightIcon, g as FolderIcon, h as FileIcon } from "./icons-D2Q5n5C1.js";
2
+ import { _ as FolderOpenIcon, c as ChevronRightIcon, g as FolderIcon, h as FileIcon } from "./icons-Ba9THQKz.js";
3
3
  import * as React from "react";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
5
5
  //#region src/components/_internal/use-file-tree-nav.ts
@@ -33,8 +33,14 @@ interface MenuPopupProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu
33
33
  /** Additional CSS class names */
34
34
  className?: string;
35
35
  }
36
- type MenuPlacementProps = Pick<MenuPositionerProps, "anchor" | "positionMethod" | "side" | "sideOffset" | "align" | "alignOffset" | "collisionBoundary" | "collisionPadding" | "sticky" | "arrowPadding" | "disableAnchorTracking" | "collisionAvoidance">;
37
- type MenuContentProps = MenuPopupProps & MenuPlacementProps;
36
+ /**
37
+ * Props for the Menu.Viewport component. Use this only when one menu moves
38
+ * between triggers and its content changes during that transition.
39
+ */
40
+ interface MenuViewportProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.Viewport>, "className"> {
41
+ /** Additional CSS class names */
42
+ className?: string;
43
+ }
38
44
  /**
39
45
  * Props for the Menu.Item component.
40
46
  */
@@ -59,7 +65,6 @@ interface MenuGroupLabelProps extends Omit<React.ComponentPropsWithoutRef<typeof
59
65
  className?: string;
60
66
  inset?: boolean;
61
67
  }
62
- type MenuLabelProps = MenuGroupLabelProps;
63
68
  /**
64
69
  * Props for the Menu.Arrow component.
65
70
  */
@@ -110,8 +115,7 @@ interface MenuCheckboxItemIndicatorProps extends Omit<React.ComponentPropsWithou
110
115
  className?: string;
111
116
  }
112
117
  interface MenuShortcutProps extends React.HTMLAttributes<HTMLSpanElement> {}
113
- interface MenuSubProps extends React.ComponentPropsWithoutRef<typeof Menu.SubmenuRoot> {}
114
- type MenuSubContentProps = MenuContentProps;
118
+ interface MenuSubmenuRootProps extends React.ComponentPropsWithoutRef<typeof Menu.SubmenuRoot> {}
115
119
  /**
116
120
  * Props for the Menu.SubmenuTrigger component.
117
121
  */
@@ -120,28 +124,6 @@ interface MenuSubmenuTriggerProps extends Omit<React.ComponentPropsWithoutRef<ty
120
124
  className?: string;
121
125
  inset?: boolean;
122
126
  }
123
- type MenuSubTriggerProps = MenuSubmenuTriggerProps;
124
- /**
125
- * Root component that manages menu state.
126
- *
127
- * @example
128
- * ```tsx
129
- * <Menu.Root>
130
- * <Menu.Trigger>Actions</Menu.Trigger>
131
- * <Menu.Portal>
132
- * <Menu.Positioner>
133
- * <Menu.Popup>
134
- * <Menu.Item>Edit</Menu.Item>
135
- * <Menu.Item>Delete</Menu.Item>
136
- * </Menu.Popup>
137
- * </Menu.Positioner>
138
- * </Menu.Portal>
139
- * </Menu.Root>
140
- * ```
141
- *
142
- * @see {@link https://base-ui.com/react/components/menu | Base UI Menu}
143
- */
144
- declare const MenuRoot: (props: MenuProps) => React.JSX.Element;
145
127
  /**
146
128
  * Button that toggles the menu visibility.
147
129
  */
@@ -153,10 +135,6 @@ declare function MenuTrigger({
153
135
  }: MenuTriggerProps & {
154
136
  ref?: React.Ref<HTMLButtonElement>;
155
137
  }): React.JSX.Element;
156
- /**
157
- * Renders menu content in a portal.
158
- */
159
- declare const MenuPortal: (props: MenuPortalProps) => React.JSX.Element;
160
138
  /**
161
139
  * Positions the menu popup relative to the trigger.
162
140
  */
@@ -177,21 +155,16 @@ declare function MenuPopup({
177
155
  }: MenuPopupProps & {
178
156
  ref?: React.Ref<HTMLDivElement>;
179
157
  }): React.JSX.Element;
180
- declare function MenuContent({
181
- anchor,
182
- positionMethod,
183
- side,
184
- sideOffset,
185
- align,
186
- alignOffset,
187
- collisionBoundary,
188
- collisionPadding,
189
- sticky,
190
- arrowPadding,
191
- disableAnchorTracking,
192
- collisionAvoidance,
158
+ /**
159
+ * Transition container for content that changes as a menu moves between
160
+ * triggers. Pair the adaptive classes from `base-ui-motion.css` with the
161
+ * positioner, popup, and this viewport when that behavior is needed.
162
+ */
163
+ declare function MenuViewport({
164
+ className,
165
+ ref,
193
166
  ...props
194
- }: MenuContentProps & {
167
+ }: MenuViewportProps & {
195
168
  ref?: React.Ref<HTMLDivElement>;
196
169
  }): React.JSX.Element;
197
170
  /**
@@ -227,7 +200,6 @@ declare function MenuGroupLabel({
227
200
  }: MenuGroupLabelProps & {
228
201
  ref?: React.Ref<HTMLDivElement>;
229
202
  }): React.JSX.Element;
230
- declare const MenuLabel: typeof MenuGroupLabel;
231
203
  /**
232
204
  * Arrow pointing to the trigger.
233
205
  */
@@ -263,7 +235,6 @@ declare function MenuRadioGroup({
263
235
  */
264
236
  declare function MenuRadioItem({
265
237
  className,
266
- children,
267
238
  ref,
268
239
  ...props
269
240
  }: MenuRadioItemProps & {
@@ -284,7 +255,6 @@ declare function MenuRadioItemIndicator({
284
255
  */
285
256
  declare function MenuCheckboxItem({
286
257
  className,
287
- children,
288
258
  ref,
289
259
  ...props
290
260
  }: MenuCheckboxItemProps & {
@@ -307,15 +277,7 @@ declare function MenuShortcut({
307
277
  }: MenuShortcutProps & {
308
278
  ref?: React.Ref<HTMLSpanElement>;
309
279
  }): React.JSX.Element;
310
- declare function MenuSub(props: MenuSubProps): React.JSX.Element;
311
- declare function MenuSubContent({
312
- side,
313
- align,
314
- sideOffset,
315
- ...props
316
- }: MenuSubContentProps & {
317
- ref?: React.Ref<HTMLDivElement>;
318
- }): React.JSX.Element;
280
+ declare function MenuSubmenuRoot(props: MenuSubmenuRootProps): React.JSX.Element;
319
281
  /**
320
282
  * Trigger that opens a submenu.
321
283
  */
@@ -327,7 +289,6 @@ declare function MenuSubmenuTrigger({
327
289
  }: MenuSubmenuTriggerProps & {
328
290
  ref?: React.Ref<HTMLDivElement>;
329
291
  }): React.JSX.Element;
330
- declare const MenuSubTrigger: typeof MenuSubmenuTrigger;
331
292
  /**
332
293
  * A dropdown menu with keyboard navigation support.
333
294
  * Provides items, groups, checkboxes, radio selections, and nested submenus.
@@ -370,17 +331,19 @@ declare const MenuSubTrigger: typeof MenuSubmenuTrigger;
370
331
  *
371
332
  * @see {@link https://base-ui.com/react/components/menu | Base UI Menu}
372
333
  */
373
- declare const Menu$1: ((props: MenuProps) => React.JSX.Element) & {
334
+ declare const Menu$1: {
335
+ createHandle: typeof Menu.createHandle;
374
336
  Root: (props: MenuProps) => React.JSX.Element;
375
337
  Trigger: typeof MenuTrigger;
376
338
  Portal: (props: MenuPortalProps) => React.JSX.Element;
377
339
  Positioner: typeof MenuPositioner;
378
340
  Popup: typeof MenuPopup;
379
- Content: typeof MenuContent;
341
+ Viewport: typeof MenuViewport;
342
+ Backdrop: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
380
343
  Item: typeof MenuItem;
381
344
  Group: typeof MenuGroup;
382
345
  GroupLabel: typeof MenuGroupLabel;
383
- Label: typeof MenuGroupLabel;
346
+ LinkItem: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuLinkItemProps, "ref"> & React.RefAttributes<Element>>;
384
347
  Arrow: typeof MenuArrow;
385
348
  Separator: typeof MenuSeparator;
386
349
  RadioGroup: typeof MenuRadioGroup;
@@ -389,10 +352,8 @@ declare const Menu$1: ((props: MenuProps) => React.JSX.Element) & {
389
352
  CheckboxItem: typeof MenuCheckboxItem;
390
353
  CheckboxItemIndicator: typeof MenuCheckboxItemIndicator;
391
354
  Shortcut: typeof MenuShortcut;
392
- Sub: typeof MenuSub;
393
- SubContent: typeof MenuSubContent;
394
- SubTrigger: typeof MenuSubmenuTrigger;
355
+ SubmenuRoot: typeof MenuSubmenuRoot;
395
356
  SubmenuTrigger: typeof MenuSubmenuTrigger;
396
357
  };
397
358
  //#endregion
398
- export { MenuRadioItemProps as A, MenuSubTrigger as B, MenuPositionerProps as C, MenuRadioItem as D, MenuRadioGroupProps as E, MenuShortcutProps as F, MenuTriggerProps as G, MenuSubmenuTrigger as H, MenuSub as I, MenuSubContent as L, MenuSeparator as M, MenuSeparatorProps as N, MenuRadioItemIndicator as O, MenuShortcut as P, MenuSubContentProps as R, MenuPositioner as S, MenuRadioGroup as T, MenuSubmenuTriggerProps as U, MenuSubTriggerProps as V, MenuTrigger as W, MenuLabelProps as _, MenuCheckboxItemIndicator as a, MenuPortal as b, MenuContent as c, MenuGroupLabel as d, MenuGroupLabelProps as f, MenuLabel as g, MenuItemProps as h, MenuCheckboxItem as i, MenuRoot as j, MenuRadioItemIndicatorProps as k, MenuContentProps as l, MenuItem as m, MenuArrow as n, MenuCheckboxItemIndicatorProps as o, MenuGroupProps as p, MenuArrowProps as r, MenuCheckboxItemProps as s, Menu$1 as t, MenuGroup as u, MenuPopup as v, MenuProps as w, MenuPortalProps as x, MenuPopupProps as y, MenuSubProps as z };
359
+ export { MenuSubmenuRootProps as _, MenuGroupLabelProps as a, MenuViewportProps as b, MenuPopupProps as c, MenuProps as d, MenuRadioGroupProps as f, MenuShortcutProps as g, MenuSeparatorProps as h, MenuCheckboxItemProps as i, MenuPortalProps as l, MenuRadioItemProps as m, MenuArrowProps as n, MenuGroupProps as o, MenuRadioItemIndicatorProps as p, MenuCheckboxItemIndicatorProps as r, MenuItemProps as s, Menu$1 as t, MenuPositionerProps as u, MenuSubmenuTriggerProps as v, MenuTriggerProps as y };
@@ -1,8 +1,8 @@
1
1
  import { t as cx } from "./class-names-9UtZwb0J.js";
2
- import { A as SearchIcon, o as ChevronDownIcon } from "./icons-D2Q5n5C1.js";
2
+ import { j as SearchIcon, o as ChevronDownIcon } from "./icons-Ba9THQKz.js";
3
3
  import { Separator } from "./components/Separator.js";
4
4
  import { Button } from "./components/Button.js";
5
- import { Dialog, DialogBackdrop, DialogPopup, DialogPortal, DialogTitle, DialogTrigger } from "./components/Dialog.js";
5
+ import { Dialog } from "./components/Dialog.js";
6
6
  import { Input } from "./components/Input.js";
7
7
  import * as React from "react";
8
8
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -270,7 +270,7 @@ function ModelSelector({ open, defaultOpen = false, onOpenChange, children, clas
270
270
  ref,
271
271
  className: cx("model-selector", className),
272
272
  ...props,
273
- children: /* @__PURE__ */ jsx(Dialog, {
273
+ children: /* @__PURE__ */ jsx(Dialog.Root, {
274
274
  open: currentOpen,
275
275
  onOpenChange: handleOpenChange,
276
276
  children
@@ -340,7 +340,7 @@ function CloudflareModelSelector({ models, selectedModelId = null, onSelectModel
340
340
  });
341
341
  }
342
342
  function ModelSelectorTrigger({ className, children, ...props }) {
343
- return /* @__PURE__ */ jsx(DialogTrigger, { render: /* @__PURE__ */ jsxs(Button, {
343
+ return /* @__PURE__ */ jsx(Dialog.Trigger, { render: /* @__PURE__ */ jsxs(Button, {
344
344
  variant: "outline",
345
345
  color: "neutral",
346
346
  className: cx("model-selector__trigger", className),
@@ -353,13 +353,13 @@ function ModelSelectorTrigger({ className, children, ...props }) {
353
353
  }) });
354
354
  }
355
355
  function ModelSelectorContent({ children, title = "Model Selector", ...props }) {
356
- return /* @__PURE__ */ jsxs(DialogPortal, { children: [/* @__PURE__ */ jsx(DialogBackdrop, {}), /* @__PURE__ */ jsxs(DialogPopup, {
356
+ return /* @__PURE__ */ jsxs(Dialog.Portal, { children: [/* @__PURE__ */ jsx(Dialog.Backdrop, {}), /* @__PURE__ */ jsx(Dialog.Viewport, { children: /* @__PURE__ */ jsxs(Dialog.Popup, {
357
357
  ...props,
358
- children: [/* @__PURE__ */ jsx(DialogTitle, {
358
+ children: [/* @__PURE__ */ jsx(Dialog.Title, {
359
359
  className: "model-selector__title",
360
360
  children: title
361
361
  }), children]
362
- })] });
362
+ }) })] });
363
363
  }
364
364
  function ModelSelectorDialog({ className, children, ref, ...props }) {
365
365
  return /* @__PURE__ */ jsx("div", {