@mcp-b/react-components 0.16.1 → 0.18.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 (371) hide show
  1. package/dist/{AgentActivity-BNUNrP9O.d.ts → AgentActivity-D2SHSGFX.d.ts} +1 -1
  2. package/dist/{AgentChat-CrlpbvQJ.d.ts → AgentChat-ClxViuUM.d.ts} +4 -29
  3. package/dist/AgentMessageParts-CyD2UB3V.d.ts +46 -0
  4. package/dist/AgentToolRunsContext-BVe4stgw.d.ts +21 -0
  5. package/dist/{Button-FX_hpqxm.d.ts → Button-DLGzHsjc.d.ts} +13 -7
  6. package/dist/{CodeBlock-BmB4Xaqq.js → CodeBlock-Bfp5PAg3.js} +9 -6
  7. package/dist/{CodeBlock-BRajW4QU.d.ts → CodeBlock-gV4kZeCI.d.ts} +2 -9
  8. package/dist/Collapsible-N64ASIQr.d.ts +119 -0
  9. package/dist/{Combobox-B9Fcd6q-.d.ts → Combobox-CYc37s5l.d.ts} +11 -33
  10. package/dist/{FileTree-CkVbIMWV.js → FileTree-3zYtrddG.js} +46 -20
  11. package/dist/{Menu-Bgu-ufb5.d.ts → Menu-L6MZm-7N.d.ts} +15 -56
  12. package/dist/{Message-BkMdE3bS.js → Message-BXtmfc9Q.js} +13 -20
  13. package/dist/{ModelSelector-SlJNgwKY.js → ModelSelector-Cqw_qrUG.js} +18 -25
  14. package/dist/{PromptInput-BWTuXMOD.d.ts → PromptInput-Bdh9pqlo.d.ts} +41 -71
  15. package/dist/{ResponsiveSidebarShell-Dd9DCcBT.d.ts → ResponsiveSidebarShell-CsAh4NyL.d.ts} +1 -0
  16. package/dist/{Select-BeEsefzh.d.ts → Select-B_13gg_J.d.ts} +16 -44
  17. package/dist/{Tabs-3Zc4tb9D.d.ts → Tabs-ColWK-XA.d.ts} +14 -20
  18. package/dist/{ThinkChat-CzC-zNGA.js → ThinkChat-15EhfvYJ.js} +123 -73
  19. package/dist/{ThinkChatActivity-BFQnb2ct.d.ts → ThinkChatActivity-Bzot45kX.d.ts} +9 -4
  20. package/dist/{ThinkChatActivitySummary-BPmu9a-c.d.ts → ThinkChatActivitySummary-D1xOrNrq.d.ts} +1 -1
  21. package/dist/{ThinkChatContext-C3Eb1Xpi.d.ts → ThinkChatContext-DrsZqdaO.d.ts} +1 -1
  22. package/dist/ThinkRecoveryNotice-DFIcG9UX.d.ts +19 -0
  23. package/dist/{Toggle-CAAlNl-M.d.ts → Toggle-JKZ43D5S.d.ts} +2 -2
  24. package/dist/{ToggleGroup-8hPv-b69.d.ts → ToggleGroup-DNd6cDJZ.d.ts} +4 -5
  25. package/dist/Workspace-Jez8ffUj.d.ts +274 -0
  26. package/dist/WorkspaceExplorer-B9dQWNVK.d.ts +32 -0
  27. package/dist/{WorkspaceFile-DOZkPwzu.d.ts → WorkspaceFile-CzyHnESE.d.ts} +1 -1
  28. package/dist/{WorkspaceFileView-rSN_yT0L.js → WorkspaceFileView-C68Ub8S8.js} +121 -128
  29. package/dist/{WorkspaceLink-DIPbXrUM.js → WorkspaceLink-BYYeTQLf.js} +20 -55
  30. package/dist/{WorkspaceLink-DK1DWMHe.d.ts → WorkspaceLink-O-EBKUJ8.d.ts} +6 -9
  31. package/dist/class-names-BiMDVpUo.js +14 -0
  32. package/dist/components/Accordion.d.ts +5 -15
  33. package/dist/components/Accordion.js +16 -10
  34. package/dist/components/Activity.d.ts +5 -10
  35. package/dist/components/Activity.js +2 -2
  36. package/dist/components/AgentActivity.d.ts +1 -1
  37. package/dist/components/AgentActivity.js +4 -5
  38. package/dist/components/AgentActivityPreview.d.ts +9 -9
  39. package/dist/components/AgentActivityPreview.js +8 -12
  40. package/dist/components/AgentAttention.d.ts +2 -2
  41. package/dist/components/AgentAttention.js +1 -1
  42. package/dist/components/AgentChat.d.ts +2 -2
  43. package/dist/components/AgentChat.js +113 -218
  44. package/dist/components/AgentChatMessageEditor.js +3 -3
  45. package/dist/components/AgentChatTurnError.js +2 -2
  46. package/dist/components/AgentConnection.js +4 -4
  47. package/dist/components/AgentMessageParts.d.ts +2 -0
  48. package/dist/components/AgentMessageParts.js +119 -0
  49. package/dist/components/AgentToolDetail.d.ts +57 -0
  50. package/dist/components/AgentToolDetail.js +100 -0
  51. package/dist/components/AgentToolRunsContext.d.ts +2 -0
  52. package/dist/components/AgentToolRunsContext.js +16 -0
  53. package/dist/components/AlertDialog.d.ts +7 -19
  54. package/dist/components/AlertDialog.js +21 -32
  55. package/dist/components/AppTopBar.d.ts +28 -8
  56. package/dist/components/AppTopBar.js +36 -12
  57. package/dist/components/Approval.d.ts +102 -0
  58. package/dist/components/Approval.js +227 -0
  59. package/dist/components/Artifact.d.ts +3 -5
  60. package/dist/components/Artifact.js +7 -5
  61. package/dist/components/Autocomplete.d.ts +11 -33
  62. package/dist/components/Autocomplete.js +23 -30
  63. package/dist/components/Avatar.d.ts +4 -12
  64. package/dist/components/Avatar.js +13 -12
  65. package/dist/components/Badge.js +3 -0
  66. package/dist/components/BrowserLiveView.js +27 -12
  67. package/dist/components/BrowserReplay.js +4 -3
  68. package/dist/components/BrowserRunPanel.js +58 -78
  69. package/dist/components/Button.d.ts +1 -1
  70. package/dist/components/Button.js +14 -16
  71. package/dist/components/Card.d.ts +7 -8
  72. package/dist/components/Card.js +19 -10
  73. package/dist/components/ChainOfThought.d.ts +5 -11
  74. package/dist/components/ChainOfThought.js +3 -2
  75. package/dist/components/ChatGptSignInScreen.js +8 -8
  76. package/dist/components/Checkbox.d.ts +2 -4
  77. package/dist/components/Checkbox.js +6 -5
  78. package/dist/components/CheckboxGroup.d.ts +1 -3
  79. package/dist/components/CheckboxGroup.js +15 -14
  80. package/dist/components/Checkpoint.d.ts +64 -0
  81. package/dist/components/Checkpoint.js +63 -0
  82. package/dist/components/CodeBlock.d.ts +1 -1
  83. package/dist/components/CodeBlock.js +1 -1
  84. package/dist/components/CodexModelSelector.d.ts +1 -1
  85. package/dist/components/CodexModelSelector.js +2 -2
  86. package/dist/components/Collapsible.d.ts +1 -124
  87. package/dist/components/Collapsible.js +7 -10
  88. package/dist/components/Combobox.d.ts +1 -1
  89. package/dist/components/Combobox.js +23 -30
  90. package/dist/components/Commit.d.ts +5 -11
  91. package/dist/components/Commit.js +6 -5
  92. package/dist/components/Context.js +1 -1
  93. package/dist/components/ContextMenu.d.ts +21 -37
  94. package/dist/components/ContextMenu.js +34 -51
  95. package/dist/components/Conversation.d.ts +3 -5
  96. package/dist/components/Conversation.js +5 -4
  97. package/dist/components/DescriptionListParts.js +1 -1
  98. package/dist/components/Dialog.d.ts +6 -17
  99. package/dist/components/Dialog.js +17 -24
  100. package/dist/components/EnvironmentVariables.d.ts +1 -1
  101. package/dist/components/EnvironmentVariables.js +4 -3
  102. package/dist/components/Field.d.ts +17 -20
  103. package/dist/components/Field.js +20 -17
  104. package/dist/components/Fieldset.d.ts +2 -7
  105. package/dist/components/Fieldset.js +7 -6
  106. package/dist/components/FileTree.d.ts +6 -0
  107. package/dist/components/FileTree.js +1 -1
  108. package/dist/components/Form.d.ts +1 -4
  109. package/dist/components/Form.js +3 -2
  110. package/dist/components/GithubMotionMark.js +1 -1
  111. package/dist/components/IconButton.d.ts +2 -3
  112. package/dist/components/IconButton.js +2 -1
  113. package/dist/components/InlineCitation.d.ts +66 -0
  114. package/dist/components/InlineCitation.js +142 -0
  115. package/dist/components/Input.d.ts +1 -4
  116. package/dist/components/Input.js +3 -2
  117. package/dist/components/Marker.js +1 -1
  118. package/dist/components/McpConnectionRequest.js +2 -2
  119. package/dist/components/McpServerPicker.d.ts +1 -1
  120. package/dist/components/McpServerPicker.js +6 -5
  121. package/dist/components/MediaPreviewCard.d.ts +103 -0
  122. package/dist/components/MediaPreviewCard.js +193 -0
  123. package/dist/components/Menu.d.ts +1 -1
  124. package/dist/components/Menu.js +33 -52
  125. package/dist/components/Menubar.d.ts +22 -43
  126. package/dist/components/Menubar.js +36 -53
  127. package/dist/components/Message.d.ts +7 -7
  128. package/dist/components/Message.js +1 -1
  129. package/dist/components/MessageScroller.d.ts +2 -2
  130. package/dist/components/MessageScroller.js +6 -5
  131. package/dist/components/Meter.d.ts +5 -20
  132. package/dist/components/Meter.js +11 -10
  133. package/dist/components/ModelSelector.d.ts +6 -9
  134. package/dist/components/ModelSelector.js +1 -1
  135. package/dist/components/NavigationMenu.d.ts +11 -33
  136. package/dist/components/NavigationMenu.js +23 -30
  137. package/dist/components/NumberField.d.ts +6 -24
  138. package/dist/components/NumberField.js +13 -12
  139. package/dist/components/Plan.d.ts +103 -0
  140. package/dist/components/Plan.js +113 -0
  141. package/dist/components/Popover.d.ts +9 -36
  142. package/dist/components/Popover.js +23 -34
  143. package/dist/components/PreviewCard.d.ts +6 -24
  144. package/dist/components/PreviewCard.js +13 -24
  145. package/dist/components/PricingBillingToggle.js +1 -1
  146. package/dist/components/PricingFAQ.js +1 -1
  147. package/dist/components/PricingPage.js +2 -1
  148. package/dist/components/PricingPlanCard.js +5 -4
  149. package/dist/components/PricingUsageCalculator.js +3 -3
  150. package/dist/components/Progress.d.ts +3 -8
  151. package/dist/components/Progress.js +7 -10
  152. package/dist/components/PromptInput.d.ts +2 -2
  153. package/dist/components/PromptInput.js +83 -218
  154. package/dist/components/Queue.d.ts +7 -17
  155. package/dist/components/Queue.js +2 -3
  156. package/dist/components/RadioGroup.d.ts +3 -8
  157. package/dist/components/RadioGroup.js +7 -10
  158. package/dist/components/Reasoning.d.ts +4 -8
  159. package/dist/components/Reasoning.js +3 -6
  160. package/dist/components/ResizableSidePanel.js +2 -2
  161. package/dist/components/ResponsiveSidebarShell.d.ts +1 -1
  162. package/dist/components/ResponsiveSidebarShell.js +18 -11
  163. package/dist/components/ScrollArea.d.ts +5 -20
  164. package/dist/components/ScrollArea.js +12 -10
  165. package/dist/components/SearchField.d.ts +43 -0
  166. package/dist/components/SearchField.js +52 -0
  167. package/dist/components/Select.d.ts +1 -1
  168. package/dist/components/Select.js +33 -57
  169. package/dist/components/Separator.d.ts +1 -5
  170. package/dist/components/Separator.js +3 -6
  171. package/dist/components/Slider.d.ts +6 -19
  172. package/dist/components/Slider.js +15 -14
  173. package/dist/components/Sources.d.ts +4 -9
  174. package/dist/components/Sources.js +3 -2
  175. package/dist/components/Stepper.js +16 -9
  176. package/dist/components/SubagentRunDetails.js +1 -1
  177. package/dist/components/SubagentRunIndicator.js +2 -2
  178. package/dist/components/SubagentRunList.d.ts +3 -5
  179. package/dist/components/SubagentRunList.js +3 -5
  180. package/dist/components/SubagentRunSelector.d.ts +9 -22
  181. package/dist/components/SubagentRunSelector.js +29 -31
  182. package/dist/components/Switch.d.ts +4 -7
  183. package/dist/components/Switch.js +6 -10
  184. package/dist/components/Tabs.d.ts +2 -2
  185. package/dist/components/Tabs.js +21 -18
  186. package/dist/components/Task.d.ts +4 -9
  187. package/dist/components/Task.js +4 -3
  188. package/dist/components/Terminal.d.ts +3 -4
  189. package/dist/components/Terminal.js +5 -4
  190. package/dist/components/TestResults.d.ts +4 -9
  191. package/dist/components/TestResults.js +11 -6
  192. package/dist/components/Textarea.js +1 -1
  193. package/dist/components/ThemeModeControl.js +1 -1
  194. package/dist/components/ThinkChat.d.ts +45 -22
  195. package/dist/components/ThinkChat.js +7 -5
  196. package/dist/components/ThinkChatActivity.d.ts +2 -2
  197. package/dist/components/ThinkChatActivity.js +24 -7
  198. package/dist/components/ThinkChatActivitySummary.d.ts +1 -1
  199. package/dist/components/ThinkChatActivitySummary.js +7 -3
  200. package/dist/components/ThinkChatContext.d.ts +1 -1
  201. package/dist/components/ThinkChatToolPanels.js +27 -17
  202. package/dist/components/ThinkExecutionDetail.js +2 -2
  203. package/dist/components/ThinkExecutionStatus.js +2 -2
  204. package/dist/components/ThinkExecutionWorkbench.d.ts +30 -8
  205. package/dist/components/ThinkExecutionWorkbench.js +70 -134
  206. package/dist/components/ThinkFullApp.d.ts +40 -15
  207. package/dist/components/ThinkFullApp.js +193 -117
  208. package/dist/components/ThinkFullAppViewSwitch.d.ts +1 -1
  209. package/dist/components/ThinkFullAppViewSwitch.js +2 -2
  210. package/dist/components/ThinkPendingApproval.d.ts +60 -0
  211. package/dist/components/ThinkPendingApproval.js +99 -0
  212. package/dist/components/ThinkRecoveryNotice.d.ts +2 -0
  213. package/dist/components/ThinkRecoveryNotice.js +46 -0
  214. package/dist/components/ThinkRoutine.js +1 -0
  215. package/dist/components/ThinkRoutineBrowser.d.ts +17 -9
  216. package/dist/components/ThinkRoutineBrowser.js +37 -44
  217. package/dist/components/ThinkRoutineDetail.d.ts +5 -2
  218. package/dist/components/ThinkRoutineDetail.js +4 -4
  219. package/dist/components/ThinkRoutineForm.d.ts +3 -2
  220. package/dist/components/ThinkRoutineForm.js +11 -10
  221. package/dist/components/ThinkRoutineLibrary.d.ts +27 -25
  222. package/dist/components/ThinkRoutineLibrary.js +104 -80
  223. package/dist/components/ThinkRoutineRuns.d.ts +3 -2
  224. package/dist/components/ThinkRoutineRuns.js +31 -24
  225. package/dist/components/ThinkThreadPicker.d.ts +17 -11
  226. package/dist/components/ThinkThreadPicker.js +163 -39
  227. package/dist/components/ThinkThreadShell.d.ts +1 -1
  228. package/dist/components/Toast.d.ts +7 -28
  229. package/dist/components/Toast.js +15 -14
  230. package/dist/components/Toggle.d.ts +1 -1
  231. package/dist/components/Toggle.js +10 -8
  232. package/dist/components/ToggleGroup.d.ts +1 -1
  233. package/dist/components/ToggleGroup.js +21 -26
  234. package/dist/components/ToolApproval.d.ts +28 -0
  235. package/dist/components/ToolApproval.js +35 -0
  236. package/dist/components/ToolInvocation.d.ts +26 -0
  237. package/dist/components/ToolInvocation.js +72 -0
  238. package/dist/components/Toolbar.d.ts +6 -24
  239. package/dist/components/Toolbar.js +13 -12
  240. package/dist/components/Tooltip.d.ts +11 -10
  241. package/dist/components/Tooltip.js +17 -11
  242. package/dist/components/TransitionSurface.d.ts +27 -0
  243. package/dist/components/TransitionSurface.js +20 -0
  244. package/dist/components/WebPreview.d.ts +6 -7
  245. package/dist/components/WebPreview.js +70 -55
  246. package/dist/components/Workspace.d.ts +2 -2
  247. package/dist/components/Workspace.js +361 -346
  248. package/dist/components/WorkspaceBrowser.d.ts +4 -7
  249. package/dist/components/WorkspaceBrowser.js +16 -26
  250. package/dist/components/WorkspaceExplorer.d.ts +5 -33
  251. package/dist/components/WorkspaceExplorer.js +19 -32
  252. package/dist/components/WorkspaceFile.d.ts +1 -1
  253. package/dist/components/WorkspaceFileView.d.ts +14 -2
  254. package/dist/components/WorkspaceFileView.js +1 -1
  255. package/dist/components/WorkspaceHeader.d.ts +0 -8
  256. package/dist/components/WorkspaceHeader.js +3 -15
  257. package/dist/components/WorkspaceLink.d.ts +1 -1
  258. package/dist/components/WorkspaceLink.js +1 -1
  259. package/dist/components/icons.d.ts +2 -2
  260. package/dist/components/icons.js +2 -2
  261. package/dist/{copy-button-DtPMgN7e.d.ts → copy-button-D7aAYA-2.d.ts} +2 -3
  262. package/dist/{copy-button-Dejn5heL.js → copy-button-DeK6KXEV.js} +3 -2
  263. package/dist/{icons-CpfUer49.js → icons-CQJ-aMnI.js} +7 -3
  264. package/dist/{icons-GQd1xF4e.d.ts → icons-CYXmvKlJ.d.ts} +22 -2
  265. package/dist/navigation-link-Cob7KBlM.js +19 -0
  266. package/dist/styles/accordion.css +4 -19
  267. package/dist/styles/activity.css +48 -56
  268. package/dist/styles/agent-activity-preview.css +6 -0
  269. package/dist/styles/agent-chat.css +14 -63
  270. package/dist/styles/agent-connection.css +0 -12
  271. package/dist/styles/agent-tool-detail.css +54 -0
  272. package/dist/styles/alert-dialog.css +16 -18
  273. package/dist/styles/app-top-bar.css +17 -9
  274. package/dist/styles/approval.css +177 -0
  275. package/dist/styles/artifact.css +6 -18
  276. package/dist/styles/autocomplete.css +2 -1
  277. package/dist/styles/avatar.css +35 -30
  278. package/dist/styles/badge.css +10 -10
  279. package/dist/styles/base-ui-motion.css +94 -39
  280. package/dist/styles/browser-control-overlay.css +0 -1
  281. package/dist/styles/browser-live-view.css +39 -22
  282. package/dist/styles/browser-replay.css +1 -1
  283. package/dist/styles/browser-run-panel.css +13 -6
  284. package/dist/styles/button.css +36 -33
  285. package/dist/styles/card.css +5 -6
  286. package/dist/styles/chain-of-thought.css +22 -24
  287. package/dist/styles/checkbox.css +18 -5
  288. package/dist/styles/checkpoint.css +58 -0
  289. package/dist/styles/codex-model-selector.css +3 -7
  290. package/dist/styles/collapsible.css +10 -10
  291. package/dist/styles/combobox.css +4 -3
  292. package/dist/styles/commit.css +19 -39
  293. package/dist/styles/composition-motion.css +83 -0
  294. package/dist/styles/context-menu.css +3 -11
  295. package/dist/styles/context.css +11 -10
  296. package/dist/styles/conversation.css +18 -23
  297. package/dist/styles/dialog.css +15 -15
  298. package/dist/styles/environment-variables.css +0 -13
  299. package/dist/styles/field.css +32 -12
  300. package/dist/styles/file-tree.css +66 -22
  301. package/dist/styles/form.css +1 -1
  302. package/dist/styles/index.css +13 -4
  303. package/dist/styles/inline-citation.css +107 -0
  304. package/dist/styles/input.css +2 -2
  305. package/dist/styles/marker.css +14 -13
  306. package/dist/styles/mcp-server-picker.css +20 -47
  307. package/dist/styles/media-preview-card.css +160 -0
  308. package/dist/styles/menu.css +11 -40
  309. package/dist/styles/menubar.css +12 -19
  310. package/dist/styles/message-scroller.css +0 -12
  311. package/dist/styles/message.css +25 -31
  312. package/dist/styles/meter.css +2 -2
  313. package/dist/styles/model-selector.css +16 -34
  314. package/dist/styles/motion-reduction.css +29 -0
  315. package/dist/styles/navigation-menu.css +14 -30
  316. package/dist/styles/number-field.css +22 -4
  317. package/dist/styles/plan.css +132 -0
  318. package/dist/styles/popover.css +15 -52
  319. package/dist/styles/preview-card.css +2 -32
  320. package/dist/styles/progress.css +8 -3
  321. package/dist/styles/prompt-input.css +76 -269
  322. package/dist/styles/queue.css +48 -32
  323. package/dist/styles/radio.css +19 -12
  324. package/dist/styles/reasoning.css +2 -1
  325. package/dist/styles/recipes.css +207 -26
  326. package/dist/styles/resizable-side-panel.css +4 -10
  327. package/dist/styles/responsive-sidebar-shell.css +32 -34
  328. package/dist/styles/scroll-area.css +32 -15
  329. package/dist/styles/search-field.css +21 -0
  330. package/dist/styles/select.css +19 -12
  331. package/dist/styles/slider.css +25 -29
  332. package/dist/styles/sources.css +3 -11
  333. package/dist/styles/stepper.css +36 -26
  334. package/dist/styles/subagent-run.css +13 -71
  335. package/dist/styles/switch.css +32 -29
  336. package/dist/styles/tabs.css +79 -23
  337. package/dist/styles/task.css +11 -23
  338. package/dist/styles/test-results.css +29 -36
  339. package/dist/styles/theme-mode-control.css +8 -0
  340. package/dist/styles/think-execution-workbench.css +18 -15
  341. package/dist/styles/think-full-app.css +51 -100
  342. package/dist/styles/think-routine-library.css +51 -40
  343. package/dist/styles/think-thread-picker.css +207 -50
  344. package/dist/styles/toast.css +48 -34
  345. package/dist/styles/toggle-group.css +2 -36
  346. package/dist/styles/toggle.css +29 -5
  347. package/dist/styles/toolbar.css +25 -27
  348. package/dist/styles/tooltip.css +2 -32
  349. package/dist/styles/transition-surface.css +55 -0
  350. package/dist/styles/utilities.css +31 -0
  351. package/dist/styles/web-preview.css +0 -21
  352. package/dist/styles/workspace-explorer.css +104 -99
  353. package/dist/summarize-tool-input-CqTcGRYy.js +15 -0
  354. package/dist/think-agent-Cip5KAPj.d.ts +7 -0
  355. package/dist/utils/codex-model-catalog.d.ts +4 -4
  356. package/dist/utils/mcp-server-catalog.d.ts +132 -0
  357. package/dist/utils/mcp-server-catalog.js +90 -0
  358. package/dist/utils/structured-code.d.ts +1 -1
  359. package/dist/workspace-path-L_KmjRjq.js +26 -0
  360. package/package.json +14 -9
  361. package/dist/Workspace-D39LxGvP.d.ts +0 -62
  362. package/dist/class-names-9UtZwb0J.js +0 -12
  363. package/dist/components/AppFrame.d.ts +0 -24
  364. package/dist/components/AppFrame.js +0 -25
  365. package/dist/components/Shell.d.ts +0 -163
  366. package/dist/components/Shell.js +0 -137
  367. package/dist/components/SubagentRun.d.ts +0 -86
  368. package/dist/components/SubagentRun.js +0 -108
  369. package/dist/styles/app-frame.css +0 -15
  370. package/dist/styles/shell.css +0 -122
  371. package/dist/summarize-tool-input-BUJsENSn.js +0 -12
@@ -0,0 +1,103 @@
1
+ import { CardProps } from "./Card.js";
2
+ import * as React from "react";
3
+
4
+ //#region src/components/MediaPreviewCard.d.ts
5
+ interface MediaPreviewCardProps extends Omit<CardProps, "hover"> {}
6
+ /**
7
+ * A media-led card that plays its decorative preview only while a mouse is
8
+ * hovering the card or keyboard focus is within it. The preview pauses and
9
+ * resets when both forms of intent leave, and remains poster-only when the
10
+ * user prefers reduced motion.
11
+ *
12
+ * Keep routing and product data in the consumer. Place its link and ordinary
13
+ * Card content inside this root so the entire composition keeps native link
14
+ * semantics.
15
+ */
16
+ declare function MediaPreviewCard({
17
+ children,
18
+ className,
19
+ onBlurCapture,
20
+ onFocusCapture,
21
+ onPointerEnter,
22
+ onPointerLeave,
23
+ ref,
24
+ ...props
25
+ }: MediaPreviewCardProps & {
26
+ ref?: React.Ref<HTMLDivElement>;
27
+ }): React.JSX.Element;
28
+ type FixedVideoProps = "autoPlay" | "controls" | "loop" | "muted" | "playsInline" | "preload";
29
+ interface MediaPreviewCardVideoProps extends Omit<React.VideoHTMLAttributes<HTMLVideoElement>, FixedVideoProps> {
30
+ /** Lightweight still frame displayed until the user shows intent. */
31
+ poster: string;
32
+ /** Intrinsic media width used to reserve layout space. */
33
+ width: number;
34
+ /** Intrinsic media height used to reserve layout space. */
35
+ height: number;
36
+ }
37
+ /**
38
+ * Decorative, silent preview media for MediaPreviewCard. Native source
39
+ * children allow callers to provide WebM followed by MP4 without the design
40
+ * system owning storage or URLs.
41
+ */
42
+ declare function MediaPreviewCardVideo({
43
+ children,
44
+ className,
45
+ height,
46
+ onEnded,
47
+ onPause,
48
+ onPlaying,
49
+ poster,
50
+ ref,
51
+ style,
52
+ width,
53
+ ...props
54
+ }: MediaPreviewCardVideoProps & {
55
+ ref?: React.Ref<HTMLVideoElement>;
56
+ }): React.JSX.Element;
57
+ interface MediaPreviewCardActionsProps extends React.HTMLAttributes<HTMLDivElement> {}
58
+ /**
59
+ * Positions sibling controls above the preview without nesting them inside the
60
+ * card's primary link. Use this slot for compact secondary actions such as a
61
+ * menu trigger; the consumer remains responsible for each control's behavior
62
+ * and accessible name.
63
+ */
64
+ declare function MediaPreviewCardActions({
65
+ className,
66
+ ref,
67
+ ...props
68
+ }: MediaPreviewCardActionsProps & {
69
+ ref?: React.Ref<HTMLDivElement>;
70
+ }): React.JSX.Element;
71
+ interface MediaPreviewCardPlaceholderProps extends React.HTMLAttributes<HTMLDivElement> {}
72
+ /**
73
+ * Reserves the same frame as preview media when a card has no poster or video.
74
+ * Keep any explanatory copy visually hidden so the quiet fallback remains
75
+ * useful without competing with the card title.
76
+ */
77
+ declare function MediaPreviewCardPlaceholder({
78
+ className,
79
+ ref,
80
+ ...props
81
+ }: MediaPreviewCardPlaceholderProps & {
82
+ ref?: React.Ref<HTMLDivElement>;
83
+ }): React.JSX.Element;
84
+ interface MediaPreviewCardMetaProps extends React.HTMLAttributes<HTMLDivElement> {}
85
+ /** Compact facts shown immediately below a preview. */
86
+ declare function MediaPreviewCardMeta({
87
+ className,
88
+ ref,
89
+ ...props
90
+ }: MediaPreviewCardMetaProps & {
91
+ ref?: React.Ref<HTMLDivElement>;
92
+ }): React.JSX.Element;
93
+ interface MediaPreviewCardFactProps extends React.HTMLAttributes<HTMLSpanElement> {}
94
+ /** A single icon-led fact inside MediaPreviewCardMeta. */
95
+ declare function MediaPreviewCardFact({
96
+ className,
97
+ ref,
98
+ ...props
99
+ }: MediaPreviewCardFactProps & {
100
+ ref?: React.Ref<HTMLSpanElement>;
101
+ }): React.JSX.Element;
102
+ //#endregion
103
+ export { MediaPreviewCard, MediaPreviewCardActions, MediaPreviewCardActionsProps, MediaPreviewCardFact, MediaPreviewCardFactProps, MediaPreviewCardMeta, MediaPreviewCardMetaProps, MediaPreviewCardPlaceholder, MediaPreviewCardPlaceholderProps, MediaPreviewCardProps, MediaPreviewCardVideo, MediaPreviewCardVideoProps };
@@ -0,0 +1,193 @@
1
+ import { t as cx } from "../class-names-BiMDVpUo.js";
2
+ import { z as PlayIcon } from "../icons-CQJ-aMnI.js";
3
+ import { n as mergeRefs } from "../merge-refs-DF_7w2x_.js";
4
+ import { Card } from "./Card.js";
5
+ import * as React from "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/components/MediaPreviewCard.tsx
8
+ const MediaPreviewCardContext = React.createContext(null);
9
+ function useMediaPreviewCardContext() {
10
+ const context = React.useContext(MediaPreviewCardContext);
11
+ if (!context) throw new Error("MediaPreviewCardVideo must be rendered inside MediaPreviewCard.");
12
+ return context;
13
+ }
14
+ /**
15
+ * A media-led card that plays its decorative preview only while a mouse is
16
+ * hovering the card or keyboard focus is within it. The preview pauses and
17
+ * resets when both forms of intent leave, and remains poster-only when the
18
+ * user prefers reduced motion.
19
+ *
20
+ * Keep routing and product data in the consumer. Place its link and ordinary
21
+ * Card content inside this root so the entire composition keeps native link
22
+ * semantics.
23
+ */
24
+ function MediaPreviewCard({ children, className, onBlurCapture, onFocusCapture, onPointerEnter, onPointerLeave, ref, ...props }) {
25
+ const videoRef = React.useRef(null);
26
+ const pointerInsideRef = React.useRef(false);
27
+ const focusInsideRef = React.useRef(false);
28
+ const [playing, setPlaying] = React.useState(false);
29
+ const stopPreview = React.useCallback(() => {
30
+ const video = videoRef.current;
31
+ if (!video) return;
32
+ video.pause();
33
+ if (video.readyState >= HTMLMediaElement.HAVE_METADATA) try {
34
+ video.currentTime = 0;
35
+ } catch {}
36
+ setPlaying(false);
37
+ }, []);
38
+ const startPreview = React.useCallback(() => {
39
+ const video = videoRef.current;
40
+ if (!video || typeof window !== "undefined" && (window.matchMedia("(prefers-reduced-motion: reduce)").matches || document.documentElement.dataset.motion === "reduce")) return;
41
+ video.play().catch(() => {
42
+ setPlaying(false);
43
+ });
44
+ }, []);
45
+ React.useEffect(() => {
46
+ const media = window.matchMedia("(prefers-reduced-motion: reduce)");
47
+ const root = document.documentElement;
48
+ const stopWhenReduced = () => {
49
+ if (media.matches || root.dataset.motion === "reduce") stopPreview();
50
+ };
51
+ const observer = new MutationObserver(stopWhenReduced);
52
+ media.addEventListener("change", stopWhenReduced);
53
+ observer.observe(root, { attributeFilter: ["data-motion"] });
54
+ return () => {
55
+ media.removeEventListener("change", stopWhenReduced);
56
+ observer.disconnect();
57
+ };
58
+ }, [stopPreview]);
59
+ const context = React.useMemo(() => ({
60
+ setPlaying,
61
+ videoRef
62
+ }), []);
63
+ return /* @__PURE__ */ jsx(MediaPreviewCardContext.Provider, {
64
+ value: context,
65
+ children: /* @__PURE__ */ jsx(Card, {
66
+ ref,
67
+ "data-slot": "media-preview-card",
68
+ "data-playing": playing ? "true" : "false",
69
+ className: cx("media-preview-card", className),
70
+ onPointerEnter: (event) => {
71
+ onPointerEnter?.(event);
72
+ if (event.defaultPrevented || event.pointerType !== "mouse") return;
73
+ pointerInsideRef.current = true;
74
+ startPreview();
75
+ },
76
+ onPointerLeave: (event) => {
77
+ onPointerLeave?.(event);
78
+ if (event.defaultPrevented) return;
79
+ pointerInsideRef.current = false;
80
+ if (!focusInsideRef.current) stopPreview();
81
+ },
82
+ onFocusCapture: (event) => {
83
+ onFocusCapture?.(event);
84
+ if (event.defaultPrevented) return;
85
+ focusInsideRef.current = true;
86
+ startPreview();
87
+ },
88
+ onBlurCapture: (event) => {
89
+ onBlurCapture?.(event);
90
+ if (event.defaultPrevented) return;
91
+ if (event.currentTarget.contains(event.relatedTarget)) return;
92
+ focusInsideRef.current = false;
93
+ if (!pointerInsideRef.current) stopPreview();
94
+ },
95
+ ...props,
96
+ children
97
+ })
98
+ });
99
+ }
100
+ /**
101
+ * Decorative, silent preview media for MediaPreviewCard. Native source
102
+ * children allow callers to provide WebM followed by MP4 without the design
103
+ * system owning storage or URLs.
104
+ */
105
+ function MediaPreviewCardVideo({ children, className, height, onEnded, onPause, onPlaying, poster, ref, style, width, ...props }) {
106
+ const { setPlaying, videoRef } = useMediaPreviewCardContext();
107
+ return /* @__PURE__ */ jsxs("div", {
108
+ "data-slot": "media-preview-card-media",
109
+ className: "media-preview-card__media",
110
+ style: { "--media-preview-card-aspect-ratio": `${width} / ${height}` },
111
+ children: [/* @__PURE__ */ jsx("video", {
112
+ ...props,
113
+ ref: mergeRefs(ref, (node) => {
114
+ videoRef.current = node;
115
+ }),
116
+ "data-slot": "media-preview-card-video",
117
+ className: cx("media-preview-card__video", className),
118
+ style,
119
+ poster,
120
+ width,
121
+ height,
122
+ muted: true,
123
+ loop: true,
124
+ playsInline: true,
125
+ preload: "none",
126
+ "aria-hidden": "true",
127
+ onPlaying: (event) => {
128
+ setPlaying(true);
129
+ onPlaying?.(event);
130
+ },
131
+ onPause: (event) => {
132
+ setPlaying(false);
133
+ onPause?.(event);
134
+ },
135
+ onEnded: (event) => {
136
+ setPlaying(false);
137
+ onEnded?.(event);
138
+ },
139
+ children
140
+ }), /* @__PURE__ */ jsx("span", {
141
+ className: "media-preview-card__play",
142
+ "aria-hidden": "true",
143
+ children: /* @__PURE__ */ jsx(PlayIcon, {})
144
+ })]
145
+ });
146
+ }
147
+ /**
148
+ * Positions sibling controls above the preview without nesting them inside the
149
+ * card's primary link. Use this slot for compact secondary actions such as a
150
+ * menu trigger; the consumer remains responsible for each control's behavior
151
+ * and accessible name.
152
+ */
153
+ function MediaPreviewCardActions({ className, ref, ...props }) {
154
+ return /* @__PURE__ */ jsx("div", {
155
+ ref,
156
+ "data-slot": "media-preview-card-actions",
157
+ className: cx("media-preview-card__actions", className),
158
+ ...props
159
+ });
160
+ }
161
+ /**
162
+ * Reserves the same frame as preview media when a card has no poster or video.
163
+ * Keep any explanatory copy visually hidden so the quiet fallback remains
164
+ * useful without competing with the card title.
165
+ */
166
+ function MediaPreviewCardPlaceholder({ className, ref, ...props }) {
167
+ return /* @__PURE__ */ jsx("div", {
168
+ ref,
169
+ "data-slot": "media-preview-card-placeholder",
170
+ className: cx("media-preview-card__placeholder", className),
171
+ ...props
172
+ });
173
+ }
174
+ /** Compact facts shown immediately below a preview. */
175
+ function MediaPreviewCardMeta({ className, ref, ...props }) {
176
+ return /* @__PURE__ */ jsx("div", {
177
+ ref,
178
+ "data-slot": "media-preview-card-meta",
179
+ className: cx("media-preview-card__meta", className),
180
+ ...props
181
+ });
182
+ }
183
+ /** A single icon-led fact inside MediaPreviewCardMeta. */
184
+ function MediaPreviewCardFact({ className, ref, ...props }) {
185
+ return /* @__PURE__ */ jsx("span", {
186
+ ref,
187
+ "data-slot": "media-preview-card-fact",
188
+ className: cx("media-preview-card__fact", className),
189
+ ...props
190
+ });
191
+ }
192
+ //#endregion
193
+ export { MediaPreviewCard, MediaPreviewCardActions, MediaPreviewCardFact, MediaPreviewCardMeta, MediaPreviewCardPlaceholder, MediaPreviewCardVideo };
@@ -1,2 +1,2 @@
1
- import { _ as MenuSubmenuRootProps, a as MenuGroupLabelProps, b as MenuViewportProps, c as MenuPopupProps, d as MenuProps, f as MenuRadioGroupProps, g as MenuShortcutProps, h as MenuSeparatorProps, i as MenuCheckboxItemProps, l as MenuPortalProps, m as MenuRadioItemProps, n as MenuArrowProps, o as MenuGroupProps, p as MenuRadioItemIndicatorProps, r as MenuCheckboxItemIndicatorProps, s as MenuItemProps, t as Menu, u as MenuPositionerProps, v as MenuSubmenuTriggerProps, y as MenuTriggerProps } from "../Menu-Bgu-ufb5.js";
1
+ import { _ as MenuSubmenuRootProps, a as MenuGroupLabelProps, b as MenuViewportProps, c as MenuPopupProps, d as MenuProps, f as MenuRadioGroupProps, g as MenuShortcutProps, h as MenuSeparatorProps, i as MenuCheckboxItemProps, l as MenuPortalProps, m as MenuRadioItemProps, n as MenuArrowProps, o as MenuGroupProps, p as MenuRadioItemIndicatorProps, r as MenuCheckboxItemIndicatorProps, s as MenuItemProps, t as Menu, u as MenuPositionerProps, v as MenuSubmenuTriggerProps, y as MenuTriggerProps } from "../Menu-L6MZm-7N.js";
2
2
  export { Menu, MenuArrowProps, MenuCheckboxItemIndicatorProps, MenuCheckboxItemProps, MenuGroupLabelProps, MenuGroupProps, MenuItemProps, MenuPopupProps, MenuPortalProps, MenuPositionerProps, MenuProps, MenuRadioGroupProps, MenuRadioItemIndicatorProps, MenuRadioItemProps, MenuSeparatorProps, MenuShortcutProps, MenuSubmenuRootProps, MenuSubmenuTriggerProps, MenuTriggerProps, MenuViewportProps };
@@ -1,3 +1,4 @@
1
+ import { n as mergeBaseClassName } from "../class-names-BiMDVpUo.js";
1
2
  import "react";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  import { Menu as Menu$1 } from "@base-ui/react/menu";
@@ -31,8 +32,8 @@ const MenuRoot = (props) => {
31
32
  /**
32
33
  * Button that toggles the menu visibility.
33
34
  */
34
- function MenuTrigger({ className = "", unstyled = false, ref, ...props }) {
35
- const classes = [!unstyled && "menu__trigger", className].filter(Boolean).join(" ");
35
+ function MenuTrigger({ className, unstyled = false, ref, ...props }) {
36
+ const classes = mergeBaseClassName([!unstyled && "menu__trigger"].filter(Boolean).join(" "), className);
36
37
  return /* @__PURE__ */ jsx(Menu$1.Trigger, {
37
38
  ref,
38
39
  "data-slot": "dropdown-menu-trigger",
@@ -53,12 +54,8 @@ const MenuPortal = (props) => {
53
54
  /**
54
55
  * Positions the menu popup relative to the trigger.
55
56
  */
56
- function MenuPositioner({ className = "", ref, ...props }) {
57
- const classes = [
58
- "menu__positioner",
59
- "base-ui-positioner",
60
- className
61
- ].filter(Boolean).join(" ");
57
+ function MenuPositioner({ className, ref, ...props }) {
58
+ const classes = mergeBaseClassName(["menu__positioner", "base-ui-positioner"].filter(Boolean).join(" "), className);
62
59
  return /* @__PURE__ */ jsx(Menu$1.Positioner, {
63
60
  ref,
64
61
  "data-slot": "dropdown-menu-positioner",
@@ -69,12 +66,8 @@ function MenuPositioner({ className = "", ref, ...props }) {
69
66
  /**
70
67
  * Container for menu items.
71
68
  */
72
- function MenuPopup({ className = "", ref, ...props }) {
73
- const classes = [
74
- "menu__popup",
75
- "base-ui-popup",
76
- className
77
- ].filter(Boolean).join(" ");
69
+ function MenuPopup({ className, ref, ...props }) {
70
+ const classes = mergeBaseClassName(["menu__popup", "base-ui-popup"].filter(Boolean).join(" "), className);
78
71
  return /* @__PURE__ */ jsx(Menu$1.Popup, {
79
72
  ref,
80
73
  "data-slot": "dropdown-menu-content",
@@ -87,8 +80,8 @@ function MenuPopup({ className = "", ref, ...props }) {
87
80
  * triggers. Pair the adaptive classes from `base-ui-motion.css` with the
88
81
  * positioner, popup, and this viewport when that behavior is needed.
89
82
  */
90
- function MenuViewport({ className = "", ref, ...props }) {
91
- const classes = ["menu__viewport", className].filter(Boolean).join(" ");
83
+ function MenuViewport({ className, ref, ...props }) {
84
+ const classes = mergeBaseClassName(["menu__viewport"].filter(Boolean).join(" "), className);
92
85
  return /* @__PURE__ */ jsx(Menu$1.Viewport, {
93
86
  ref,
94
87
  "data-slot": "dropdown-menu-viewport",
@@ -99,12 +92,8 @@ function MenuViewport({ className = "", ref, ...props }) {
99
92
  /**
100
93
  * Interactive menu item.
101
94
  */
102
- function MenuItem({ className = "", inset, variant = "default", ref, ...props }) {
103
- const classes = [
104
- "menu__item",
105
- inset && "menu__item--inset",
106
- className
107
- ].filter(Boolean).join(" ");
95
+ function MenuItem({ className, inset, variant = "default", ref, ...props }) {
96
+ const classes = mergeBaseClassName(["menu__item", inset && "menu__item--inset"].filter(Boolean).join(" "), className);
108
97
  return /* @__PURE__ */ jsx(Menu$1.Item, {
109
98
  ref,
110
99
  "data-slot": "dropdown-menu-item",
@@ -117,8 +106,8 @@ function MenuItem({ className = "", inset, variant = "default", ref, ...props })
117
106
  /**
118
107
  * Groups related menu items.
119
108
  */
120
- function MenuGroup({ className = "", ref, ...props }) {
121
- const classes = ["menu__group", className].filter(Boolean).join(" ");
109
+ function MenuGroup({ className, ref, ...props }) {
110
+ const classes = mergeBaseClassName(["menu__group"].filter(Boolean).join(" "), className);
122
111
  return /* @__PURE__ */ jsx(Menu$1.Group, {
123
112
  ref,
124
113
  "data-slot": "dropdown-menu-group",
@@ -129,12 +118,8 @@ function MenuGroup({ className = "", ref, ...props }) {
129
118
  /**
130
119
  * Label for a group of menu items.
131
120
  */
132
- function MenuGroupLabel({ className = "", inset, ref, ...props }) {
133
- const classes = [
134
- "menu__group-label",
135
- inset && "menu__group-label--inset",
136
- className
137
- ].filter(Boolean).join(" ");
121
+ function MenuGroupLabel({ className, inset, ref, ...props }) {
122
+ const classes = mergeBaseClassName(["menu__group-label", inset && "menu__group-label--inset"].filter(Boolean).join(" "), className);
138
123
  return /* @__PURE__ */ jsx(Menu$1.GroupLabel, {
139
124
  ref,
140
125
  "data-slot": "dropdown-menu-label",
@@ -146,8 +131,8 @@ function MenuGroupLabel({ className = "", inset, ref, ...props }) {
146
131
  /**
147
132
  * Arrow pointing to the trigger.
148
133
  */
149
- function MenuArrow({ className = "", ref, ...props }) {
150
- const classes = ["menu__arrow", className].filter(Boolean).join(" ");
134
+ function MenuArrow({ className, ref, ...props }) {
135
+ const classes = mergeBaseClassName(["menu__arrow"].filter(Boolean).join(" "), className);
151
136
  return /* @__PURE__ */ jsx(Menu$1.Arrow, {
152
137
  ref,
153
138
  "data-slot": "dropdown-menu-arrow",
@@ -158,8 +143,8 @@ function MenuArrow({ className = "", ref, ...props }) {
158
143
  /**
159
144
  * Visual separator between menu sections.
160
145
  */
161
- function MenuSeparator({ className = "", ref, ...props }) {
162
- const classes = ["menu__separator", className].filter(Boolean).join(" ");
146
+ function MenuSeparator({ className, ref, ...props }) {
147
+ const classes = mergeBaseClassName(["menu__separator"].filter(Boolean).join(" "), className);
163
148
  return /* @__PURE__ */ jsx(Menu$1.Separator, {
164
149
  ref,
165
150
  "data-slot": "dropdown-menu-separator",
@@ -170,8 +155,8 @@ function MenuSeparator({ className = "", ref, ...props }) {
170
155
  /**
171
156
  * Group for exclusive radio selection.
172
157
  */
173
- function MenuRadioGroup({ className = "", ref, ...props }) {
174
- const classes = ["menu__radio-group", className].filter(Boolean).join(" ");
158
+ function MenuRadioGroup({ className, ref, ...props }) {
159
+ const classes = mergeBaseClassName(["menu__radio-group"].filter(Boolean).join(" "), className);
175
160
  return /* @__PURE__ */ jsx(Menu$1.RadioGroup, {
176
161
  ref,
177
162
  "data-slot": "dropdown-menu-radio-group",
@@ -182,8 +167,8 @@ function MenuRadioGroup({ className = "", ref, ...props }) {
182
167
  /**
183
168
  * Radio item for exclusive selection.
184
169
  */
185
- function MenuRadioItem({ className = "", ref, ...props }) {
186
- const classes = ["menu__radio-item", className].filter(Boolean).join(" ");
170
+ function MenuRadioItem({ className, ref, ...props }) {
171
+ const classes = mergeBaseClassName(["menu__radio-item"].filter(Boolean).join(" "), className);
187
172
  return /* @__PURE__ */ jsx(Menu$1.RadioItem, {
188
173
  ref,
189
174
  "data-slot": "dropdown-menu-radio-item",
@@ -194,8 +179,8 @@ function MenuRadioItem({ className = "", ref, ...props }) {
194
179
  /**
195
180
  * Indicator for selected radio item.
196
181
  */
197
- function MenuRadioItemIndicator({ className = "", ref, ...props }) {
198
- const classes = ["menu__radio-indicator", className].filter(Boolean).join(" ");
182
+ function MenuRadioItemIndicator({ className, ref, ...props }) {
183
+ const classes = mergeBaseClassName(["menu__radio-indicator"].filter(Boolean).join(" "), className);
199
184
  return /* @__PURE__ */ jsx(Menu$1.RadioItemIndicator, {
200
185
  ref,
201
186
  "data-slot": "dropdown-menu-radio-item-indicator",
@@ -206,8 +191,8 @@ function MenuRadioItemIndicator({ className = "", ref, ...props }) {
206
191
  /**
207
192
  * Checkbox item for toggling options.
208
193
  */
209
- function MenuCheckboxItem({ className = "", ref, ...props }) {
210
- const classes = ["menu__checkbox-item", className].filter(Boolean).join(" ");
194
+ function MenuCheckboxItem({ className, ref, ...props }) {
195
+ const classes = mergeBaseClassName(["menu__checkbox-item"].filter(Boolean).join(" "), className);
211
196
  return /* @__PURE__ */ jsx(Menu$1.CheckboxItem, {
212
197
  ref,
213
198
  "data-slot": "dropdown-menu-checkbox-item",
@@ -218,8 +203,8 @@ function MenuCheckboxItem({ className = "", ref, ...props }) {
218
203
  /**
219
204
  * Indicator for checked checkbox item.
220
205
  */
221
- function MenuCheckboxItemIndicator({ className = "", ref, ...props }) {
222
- const classes = ["menu__checkbox-indicator", className].filter(Boolean).join(" ");
206
+ function MenuCheckboxItemIndicator({ className, ref, ...props }) {
207
+ const classes = mergeBaseClassName(["menu__checkbox-indicator"].filter(Boolean).join(" "), className);
223
208
  return /* @__PURE__ */ jsx(Menu$1.CheckboxItemIndicator, {
224
209
  ref,
225
210
  "data-slot": "dropdown-menu-checkbox-item-indicator",
@@ -227,11 +212,11 @@ function MenuCheckboxItemIndicator({ className = "", ref, ...props }) {
227
212
  ...props
228
213
  });
229
214
  }
230
- function MenuShortcut({ className = "", ref, ...props }) {
215
+ function MenuShortcut({ className, ref, ...props }) {
231
216
  return /* @__PURE__ */ jsx("span", {
232
217
  ref,
233
218
  "data-slot": "dropdown-menu-shortcut",
234
- className: ["menu__shortcut", className].filter(Boolean).join(" "),
219
+ className: mergeBaseClassName(["menu__shortcut"].filter(Boolean).join(" "), className),
235
220
  ...props
236
221
  });
237
222
  }
@@ -244,12 +229,8 @@ function MenuSubmenuRoot(props) {
244
229
  /**
245
230
  * Trigger that opens a submenu.
246
231
  */
247
- function MenuSubmenuTrigger({ className = "", inset, ref, ...props }) {
248
- const classes = [
249
- "menu__submenu-trigger",
250
- inset && "menu__item--inset",
251
- className
252
- ].filter(Boolean).join(" ");
232
+ function MenuSubmenuTrigger({ className, inset, ref, ...props }) {
233
+ const classes = mergeBaseClassName(["menu__submenu-trigger", inset && "menu__item--inset"].filter(Boolean).join(" "), className);
253
234
  return /* @__PURE__ */ jsx(Menu$1.SubmenuTrigger, {
254
235
  ref,
255
236
  "data-slot": "dropdown-menu-sub-trigger",
@@ -6,10 +6,7 @@ import { Menubar as Menubar$1 } from "@base-ui/react/menubar";
6
6
  /**
7
7
  * Props for the Menubar component.
8
8
  */
9
- interface MenubarProps extends Omit<React.ComponentPropsWithoutRef<typeof Menubar$1>, "className"> {
10
- /** Additional CSS class names */
11
- className?: string;
12
- }
9
+ interface MenubarProps extends React.ComponentPropsWithoutRef<typeof Menubar$1> {}
13
10
  /**
14
11
  * Props for the Menubar.Menu component.
15
12
  */
@@ -17,10 +14,7 @@ interface MenubarMenuProps extends React.ComponentPropsWithoutRef<typeof Menu.Ro
17
14
  /**
18
15
  * Props for the Menubar.Trigger component.
19
16
  */
20
- interface MenubarTriggerProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.Trigger>, "className"> {
21
- /** Additional CSS class names */
22
- className?: string;
23
- }
17
+ interface MenubarTriggerProps extends React.ComponentPropsWithoutRef<typeof Menu.Trigger> {}
24
18
  /**
25
19
  * Props for the Menubar.Portal component.
26
20
  */
@@ -28,61 +22,38 @@ interface MenubarPortalProps extends React.ComponentPropsWithoutRef<typeof Menu.
28
22
  /**
29
23
  * Props for the Menubar.Positioner component.
30
24
  */
31
- interface MenubarPositionerProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.Positioner>, "className"> {
32
- /** Additional CSS class names */
33
- className?: string;
34
- }
25
+ interface MenubarPositionerProps extends React.ComponentPropsWithoutRef<typeof Menu.Positioner> {}
35
26
  /**
36
27
  * Props for the Menubar.Popup component.
37
28
  */
38
- interface MenubarPopupProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.Popup>, "className"> {
39
- /** Additional CSS class names */
40
- className?: string;
41
- }
29
+ interface MenubarPopupProps extends React.ComponentPropsWithoutRef<typeof Menu.Popup> {}
42
30
  /**
43
31
  * Props for the Menubar.Item component.
44
32
  */
45
- interface MenubarItemProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.Item>, "className"> {
46
- /** Additional CSS class names */
47
- className?: string;
33
+ interface MenubarItemProps extends React.ComponentPropsWithoutRef<typeof Menu.Item> {
48
34
  inset?: boolean;
49
35
  variant?: "default" | "destructive";
50
36
  }
51
37
  /**
52
38
  * Props for the Menubar.Separator component.
53
39
  */
54
- interface MenubarSeparatorProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.Separator>, "className"> {
55
- /** Additional CSS class names */
56
- className?: string;
57
- }
40
+ interface MenubarSeparatorProps extends React.ComponentPropsWithoutRef<typeof Menu.Separator> {}
58
41
  /**
59
42
  * Props for the Menubar.Group component.
60
43
  */
61
- interface MenubarGroupProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.Group>, "className"> {
62
- /** Additional CSS class names */
63
- className?: string;
64
- }
44
+ interface MenubarGroupProps extends React.ComponentPropsWithoutRef<typeof Menu.Group> {}
65
45
  /**
66
46
  * Props for the Menubar.GroupLabel component.
67
47
  */
68
- interface MenubarGroupLabelProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.GroupLabel>, "className"> {
69
- /** Additional CSS class names */
70
- className?: string;
48
+ interface MenubarGroupLabelProps extends React.ComponentPropsWithoutRef<typeof Menu.GroupLabel> {
71
49
  inset?: boolean;
72
50
  }
73
- interface MenubarCheckboxItemProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.CheckboxItem>, "className"> {
74
- className?: string;
75
- }
76
- interface MenubarRadioGroupProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.RadioGroup>, "className"> {
77
- className?: string;
78
- }
79
- interface MenubarRadioItemProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.RadioItem>, "className"> {
80
- className?: string;
81
- }
51
+ interface MenubarCheckboxItemProps extends React.ComponentPropsWithoutRef<typeof Menu.CheckboxItem> {}
52
+ interface MenubarRadioGroupProps extends React.ComponentPropsWithoutRef<typeof Menu.RadioGroup> {}
53
+ interface MenubarRadioItemProps extends React.ComponentPropsWithoutRef<typeof Menu.RadioItem> {}
82
54
  interface MenubarShortcutProps extends React.HTMLAttributes<HTMLSpanElement> {}
83
55
  interface MenubarSubmenuRootProps extends React.ComponentPropsWithoutRef<typeof Menu.SubmenuRoot> {}
84
- interface MenubarSubmenuTriggerProps extends Omit<React.ComponentPropsWithoutRef<typeof Menu.SubmenuTrigger>, "className"> {
85
- className?: string;
56
+ interface MenubarSubmenuTriggerProps extends React.ComponentPropsWithoutRef<typeof Menu.SubmenuTrigger> {
86
57
  inset?: boolean;
87
58
  }
88
59
  /**
@@ -195,7 +166,11 @@ declare function MenubarCheckboxItem({
195
166
  }: MenubarCheckboxItemProps & {
196
167
  ref?: React.Ref<HTMLDivElement>;
197
168
  }): React.JSX.Element;
198
- declare function MenubarCheckboxItemIndicator(props: Menu.CheckboxItemIndicator.Props): React.JSX.Element;
169
+ declare function MenubarCheckboxItemIndicator({
170
+ children,
171
+ className,
172
+ ...props
173
+ }: Menu.CheckboxItemIndicator.Props): React.JSX.Element;
199
174
  declare function MenubarRadioGroup({
200
175
  className,
201
176
  ref,
@@ -210,7 +185,11 @@ declare function MenubarRadioItem({
210
185
  }: MenubarRadioItemProps & {
211
186
  ref?: React.Ref<HTMLDivElement>;
212
187
  }): React.JSX.Element;
213
- declare function MenubarRadioItemIndicator(props: Menu.RadioItemIndicator.Props): React.JSX.Element;
188
+ declare function MenubarRadioItemIndicator({
189
+ children,
190
+ className,
191
+ ...props
192
+ }: Menu.RadioItemIndicator.Props): React.JSX.Element;
214
193
  declare function MenubarShortcut({
215
194
  className,
216
195
  ref,