@50arms/ui 0.0.0-stage → 35.1.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 (1256) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +193 -2
  3. package/dist/components/Accordion.js +68 -0
  4. package/dist/components/Accordion.js.map +1 -0
  5. package/dist/components/AgentWorkingSpinner.js +46 -0
  6. package/dist/components/AgentWorkingSpinner.js.map +1 -0
  7. package/dist/components/AppShell.js +228 -0
  8. package/dist/components/AppShell.js.map +1 -0
  9. package/dist/components/Attention.js +130 -0
  10. package/dist/components/Attention.js.map +1 -0
  11. package/dist/components/Avatar.js +99 -0
  12. package/dist/components/Avatar.js.map +1 -0
  13. package/dist/components/Badge.js +143 -0
  14. package/dist/components/Badge.js.map +1 -0
  15. package/dist/components/Board.js +292 -0
  16. package/dist/components/Board.js.map +1 -0
  17. package/dist/components/Button.js +327 -0
  18. package/dist/components/Button.js.map +1 -0
  19. package/dist/components/Callout.js +106 -0
  20. package/dist/components/Callout.js.map +1 -0
  21. package/dist/components/Card.js +140 -0
  22. package/dist/components/Card.js.map +1 -0
  23. package/dist/components/Choice.js +361 -0
  24. package/dist/components/Choice.js.map +1 -0
  25. package/dist/components/CodeEditor.js +384 -0
  26. package/dist/components/CodeEditor.js.map +1 -0
  27. package/dist/components/ColorPicker.js +174 -0
  28. package/dist/components/ColorPicker.js.map +1 -0
  29. package/dist/components/Combobox.js +212 -0
  30. package/dist/components/Combobox.js.map +1 -0
  31. package/dist/components/CommandPalette.js +163 -0
  32. package/dist/components/CommandPalette.js.map +1 -0
  33. package/dist/components/ConcentricRing.js +60 -0
  34. package/dist/components/ConcentricRing.js.map +1 -0
  35. package/dist/components/ConnectionCard.js +98 -0
  36. package/dist/components/ConnectionCard.js.map +1 -0
  37. package/dist/components/ContextItemRow.js +49 -0
  38. package/dist/components/ContextItemRow.js.map +1 -0
  39. package/dist/components/CopyValue.js +57 -0
  40. package/dist/components/CopyValue.js.map +1 -0
  41. package/dist/components/CountBadge.js +26 -0
  42. package/dist/components/CountBadge.js.map +1 -0
  43. package/dist/components/DateCalendar.js +156 -0
  44. package/dist/components/DateCalendar.js.map +1 -0
  45. package/dist/components/DateField.js +166 -0
  46. package/dist/components/DateField.js.map +1 -0
  47. package/dist/components/DatePicker.js +56 -0
  48. package/dist/components/DatePicker.js.map +1 -0
  49. package/dist/components/DateTimeText.js +19 -0
  50. package/dist/components/DateTimeText.js.map +1 -0
  51. package/dist/components/DescriptionList.js +25 -0
  52. package/dist/components/DescriptionList.js.map +1 -0
  53. package/dist/components/Dialog.js +332 -0
  54. package/dist/components/Dialog.js.map +1 -0
  55. package/dist/components/DragDrop.js +395 -0
  56. package/dist/components/DragDrop.js.map +1 -0
  57. package/dist/components/Drawer.js +100 -0
  58. package/dist/components/Drawer.js.map +1 -0
  59. package/dist/components/EditGutter.js +110 -0
  60. package/dist/components/EditGutter.js.map +1 -0
  61. package/dist/components/EmojiPicker.js +174 -0
  62. package/dist/components/EmojiPicker.js.map +1 -0
  63. package/dist/components/ErrorBoundary.js +47 -0
  64. package/dist/components/ErrorBoundary.js.map +1 -0
  65. package/dist/components/Field.js +115 -0
  66. package/dist/components/Field.js.map +1 -0
  67. package/dist/components/FileUpload.js +128 -0
  68. package/dist/components/FileUpload.js.map +1 -0
  69. package/dist/components/FilterMenu.js +256 -0
  70. package/dist/components/FilterMenu.js.map +1 -0
  71. package/dist/components/GatesSection.js +79 -0
  72. package/dist/components/GatesSection.js.map +1 -0
  73. package/dist/components/Icon.js +50 -0
  74. package/dist/components/Icon.js.map +1 -0
  75. package/dist/components/IconButton.js +59 -0
  76. package/dist/components/IconButton.js.map +1 -0
  77. package/dist/components/IconStack.js +69 -0
  78. package/dist/components/IconStack.js.map +1 -0
  79. package/dist/components/ImageUploadField.js +146 -0
  80. package/dist/components/ImageUploadField.js.map +1 -0
  81. package/dist/components/InlineEdit.js +432 -0
  82. package/dist/components/InlineEdit.js.map +1 -0
  83. package/dist/components/InlineMarkdownEdit.js +184 -0
  84. package/dist/components/InlineMarkdownEdit.js.map +1 -0
  85. package/dist/components/Input.js +156 -0
  86. package/dist/components/Input.js.map +1 -0
  87. package/dist/components/LegalDocument.js +155 -0
  88. package/dist/components/LegalDocument.js.map +1 -0
  89. package/dist/components/LineDiff.js +95 -0
  90. package/dist/components/LineDiff.js.map +1 -0
  91. package/dist/components/ListHeader.js +72 -0
  92. package/dist/components/ListHeader.js.map +1 -0
  93. package/dist/components/Loading.js +111 -0
  94. package/dist/components/Loading.js.map +1 -0
  95. package/dist/components/Markdown.js +28 -0
  96. package/dist/components/Markdown.js.map +1 -0
  97. package/dist/components/MarkdownEditor.js +467 -0
  98. package/dist/components/MarkdownEditor.js.map +1 -0
  99. package/dist/components/Menu.js +185 -0
  100. package/dist/components/Menu.js.map +1 -0
  101. package/dist/components/Navigation.js +87 -0
  102. package/dist/components/Navigation.js.map +1 -0
  103. package/dist/components/NumberInput.js +119 -0
  104. package/dist/components/NumberInput.js.map +1 -0
  105. package/dist/components/OTPInput.js +71 -0
  106. package/dist/components/OTPInput.js.map +1 -0
  107. package/dist/components/OrderedEntityManager.js +170 -0
  108. package/dist/components/OrderedEntityManager.js.map +1 -0
  109. package/dist/components/PagedWindowList.js +74 -0
  110. package/dist/components/PagedWindowList.js.map +1 -0
  111. package/dist/components/PaginationBar.js +95 -0
  112. package/dist/components/PaginationBar.js.map +1 -0
  113. package/dist/components/Panel.js +396 -0
  114. package/dist/components/Panel.js.map +1 -0
  115. package/dist/components/PasswordInput.js +32 -0
  116. package/dist/components/PasswordInput.js.map +1 -0
  117. package/dist/components/PasswordRequirements.js +25 -0
  118. package/dist/components/PasswordRequirements.js.map +1 -0
  119. package/dist/components/PatchDiff.js +96 -0
  120. package/dist/components/PatchDiff.js.map +1 -0
  121. package/dist/components/PendingVeil.js +18 -0
  122. package/dist/components/PendingVeil.js.map +1 -0
  123. package/dist/components/Popover.js +214 -0
  124. package/dist/components/Popover.js.map +1 -0
  125. package/dist/components/Progress.js +419 -0
  126. package/dist/components/Progress.js.map +1 -0
  127. package/dist/components/RatingScale.js +89 -0
  128. package/dist/components/RatingScale.js.map +1 -0
  129. package/dist/components/ReadMore.js +232 -0
  130. package/dist/components/ReadMore.js.map +1 -0
  131. package/dist/components/RecordCard.js +202 -0
  132. package/dist/components/RecordCard.js.map +1 -0
  133. package/dist/components/RelativeTime.js +29 -0
  134. package/dist/components/RelativeTime.js.map +1 -0
  135. package/dist/components/SandboxedFrame.js +135 -0
  136. package/dist/components/SandboxedFrame.js.map +1 -0
  137. package/dist/components/SearchInput.js +38 -0
  138. package/dist/components/SearchInput.js.map +1 -0
  139. package/dist/components/SecretField.js +228 -0
  140. package/dist/components/SecretField.js.map +1 -0
  141. package/dist/components/SectionNav.js +42 -0
  142. package/dist/components/SectionNav.js.map +1 -0
  143. package/dist/components/Select.js +172 -0
  144. package/dist/components/Select.js.map +1 -0
  145. package/dist/components/SequenceDiagram.js +109 -0
  146. package/dist/components/SequenceDiagram.js.map +1 -0
  147. package/dist/components/SettingRow.js +124 -0
  148. package/dist/components/SettingRow.js.map +1 -0
  149. package/dist/components/SignOffRings.js +36 -0
  150. package/dist/components/SignOffRings.js.map +1 -0
  151. package/dist/components/Slider.js +353 -0
  152. package/dist/components/Slider.js.map +1 -0
  153. package/dist/components/SolutionChoice.js +89 -0
  154. package/dist/components/SolutionChoice.js.map +1 -0
  155. package/dist/components/SortMenu.js +75 -0
  156. package/dist/components/SortMenu.js.map +1 -0
  157. package/dist/components/Spinner.js +42 -0
  158. package/dist/components/Spinner.js.map +1 -0
  159. package/dist/components/Stat.js +148 -0
  160. package/dist/components/Stat.js.map +1 -0
  161. package/dist/components/StatusSelect.js +119 -0
  162. package/dist/components/StatusSelect.js.map +1 -0
  163. package/dist/components/Surface.js +210 -0
  164. package/dist/components/Surface.js.map +1 -0
  165. package/dist/components/Table.js +300 -0
  166. package/dist/components/Table.js.map +1 -0
  167. package/dist/components/Tabs.js +288 -0
  168. package/dist/components/Tabs.js.map +1 -0
  169. package/dist/components/ThemeMenu.js +198 -0
  170. package/dist/components/ThemeMenu.js.map +1 -0
  171. package/dist/components/Toast.js +217 -0
  172. package/dist/components/Toast.js.map +1 -0
  173. package/dist/components/Toggle.js +147 -0
  174. package/dist/components/Toggle.js.map +1 -0
  175. package/dist/components/ToggleMatrix.js +157 -0
  176. package/dist/components/ToggleMatrix.js.map +1 -0
  177. package/dist/components/Tree.js +125 -0
  178. package/dist/components/Tree.js.map +1 -0
  179. package/dist/components/TriStateSwitch.js +111 -0
  180. package/dist/components/TriStateSwitch.js.map +1 -0
  181. package/dist/components/VideoPlayer.js +64 -0
  182. package/dist/components/VideoPlayer.js.map +1 -0
  183. package/dist/components/auth/AcceptInvitationCard.js +110 -0
  184. package/dist/components/auth/AcceptInvitationCard.js.map +1 -0
  185. package/dist/components/auth/AuthLayout.js +18 -0
  186. package/dist/components/auth/AuthLayout.js.map +1 -0
  187. package/dist/components/auth/ForgotPasswordForm.js +44 -0
  188. package/dist/components/auth/ForgotPasswordForm.js.map +1 -0
  189. package/dist/components/auth/LoginForm.js +76 -0
  190. package/dist/components/auth/LoginForm.js.map +1 -0
  191. package/dist/components/auth/ResetPasswordForm.js +69 -0
  192. package/dist/components/auth/ResetPasswordForm.js.map +1 -0
  193. package/dist/components/auth/SignInProviders.js +45 -0
  194. package/dist/components/auth/SignInProviders.js.map +1 -0
  195. package/dist/components/auth/SignupCard.js +204 -0
  196. package/dist/components/auth/SignupCard.js.map +1 -0
  197. package/dist/components/auth/TermsAcceptance.js +43 -0
  198. package/dist/components/auth/TermsAcceptance.js.map +1 -0
  199. package/dist/components/board/context.js +32 -0
  200. package/dist/components/board/context.js.map +1 -0
  201. package/dist/components/board/recipe.js +94 -0
  202. package/dist/components/board/recipe.js.map +1 -0
  203. package/dist/components/calendar/CalendarMonth.js +299 -0
  204. package/dist/components/calendar/CalendarMonth.js.map +1 -0
  205. package/dist/components/calendar/CalendarTimeGrid.js +430 -0
  206. package/dist/components/calendar/CalendarTimeGrid.js.map +1 -0
  207. package/dist/components/calendar/EventActions.js +101 -0
  208. package/dist/components/calendar/EventActions.js.map +1 -0
  209. package/dist/components/calendar/format.js +73 -0
  210. package/dist/components/calendar/format.js.map +1 -0
  211. package/dist/components/calendar/palette.js +31 -0
  212. package/dist/components/calendar/palette.js.map +1 -0
  213. package/dist/components/calendar/use-calendar-drag.js +149 -0
  214. package/dist/components/calendar/use-calendar-drag.js.map +1 -0
  215. package/dist/components/calendar/use-event-keyboard.js +87 -0
  216. package/dist/components/calendar/use-event-keyboard.js.map +1 -0
  217. package/dist/components/calendar/use-grid-navigation.js +79 -0
  218. package/dist/components/calendar/use-grid-navigation.js.map +1 -0
  219. package/dist/components/calendar/use-now.js +27 -0
  220. package/dist/components/calendar/use-now.js.map +1 -0
  221. package/dist/components/card-face/AcRingGlyph.js +39 -0
  222. package/dist/components/card-face/AcRingGlyph.js.map +1 -0
  223. package/dist/components/card-face/BoardCardAgentSlot.js +17 -0
  224. package/dist/components/card-face/BoardCardAgentSlot.js.map +1 -0
  225. package/dist/components/card-face/CardFace.js +109 -0
  226. package/dist/components/card-face/CardFace.js.map +1 -0
  227. package/dist/components/card-face/CardTypeBadge.js +17 -0
  228. package/dist/components/card-face/CardTypeBadge.js.map +1 -0
  229. package/dist/components/card-face/EffortBadge.js +11 -0
  230. package/dist/components/card-face/EffortBadge.js.map +1 -0
  231. package/dist/components/card-face/GateRingGlyph.js +31 -0
  232. package/dist/components/card-face/GateRingGlyph.js.map +1 -0
  233. package/dist/components/card-face/OverflowRow.js +70 -0
  234. package/dist/components/card-face/OverflowRow.js.map +1 -0
  235. package/dist/components/card-face/TapTip.js +32 -0
  236. package/dist/components/card-face/TapTip.js.map +1 -0
  237. package/dist/components/card-face/hit-area.js +6 -0
  238. package/dist/components/card-face/hit-area.js.map +1 -0
  239. package/dist/components/card-face/vocabulary.js +102 -0
  240. package/dist/components/card-face/vocabulary.js.map +1 -0
  241. package/dist/components/chart/BarList.js +78 -0
  242. package/dist/components/chart/BarList.js.map +1 -0
  243. package/dist/components/chart/LineChart.js +310 -0
  244. package/dist/components/chart/LineChart.js.map +1 -0
  245. package/dist/components/chart/ShareBar.js +141 -0
  246. package/dist/components/chart/ShareBar.js.map +1 -0
  247. package/dist/components/chart/TimeSeriesChart.js +305 -0
  248. package/dist/components/chart/TimeSeriesChart.js.map +1 -0
  249. package/dist/components/chart/label-metrics.js +17 -0
  250. package/dist/components/chart/label-metrics.js.map +1 -0
  251. package/dist/components/chart/line-chart-axis.js +38 -0
  252. package/dist/components/chart/line-chart-axis.js.map +1 -0
  253. package/dist/components/chart/line-chart-scale.js +132 -0
  254. package/dist/components/chart/line-chart-scale.js.map +1 -0
  255. package/dist/components/chart/line-series-style.js +22 -0
  256. package/dist/components/chart/line-series-style.js.map +1 -0
  257. package/dist/components/chart/share-bar-labels.js +14 -0
  258. package/dist/components/chart/share-bar-labels.js.map +1 -0
  259. package/dist/components/chart/shared.js +157 -0
  260. package/dist/components/chart/shared.js.map +1 -0
  261. package/dist/components/chart/time-series-scale.js +51 -0
  262. package/dist/components/chart/time-series-scale.js.map +1 -0
  263. package/dist/components/chat/Attachment.js +316 -0
  264. package/dist/components/chat/Attachment.js.map +1 -0
  265. package/dist/components/chat/Chat.js +171 -0
  266. package/dist/components/chat/Chat.js.map +1 -0
  267. package/dist/components/chat/Composer.js +274 -0
  268. package/dist/components/chat/Composer.js.map +1 -0
  269. package/dist/components/chat/ContextMeter.js +202 -0
  270. package/dist/components/chat/ContextMeter.js.map +1 -0
  271. package/dist/components/chat/EffortControl.js +116 -0
  272. package/dist/components/chat/EffortControl.js.map +1 -0
  273. package/dist/components/chat/FileCover.js +78 -0
  274. package/dist/components/chat/FileCover.js.map +1 -0
  275. package/dist/components/chat/Message.js +356 -0
  276. package/dist/components/chat/Message.js.map +1 -0
  277. package/dist/components/chat/MessageScroller.js +104 -0
  278. package/dist/components/chat/MessageScroller.js.map +1 -0
  279. package/dist/components/chat/ModelSelector.js +156 -0
  280. package/dist/components/chat/ModelSelector.js.map +1 -0
  281. package/dist/components/chat/StreamingMarkdown.js +42 -0
  282. package/dist/components/chat/StreamingMarkdown.js.map +1 -0
  283. package/dist/components/chat/download-file.js +9 -0
  284. package/dist/components/chat/download-file.js.map +1 -0
  285. package/dist/components/chat/file-icon.js +39 -0
  286. package/dist/components/chat/file-icon.js.map +1 -0
  287. package/dist/components/checklist/StatusChecklist.js +103 -0
  288. package/dist/components/checklist/StatusChecklist.js.map +1 -0
  289. package/dist/components/checklist/tally.js +29 -0
  290. package/dist/components/checklist/tally.js.map +1 -0
  291. package/dist/components/code-editor/context.js +13 -0
  292. package/dist/components/code-editor/context.js.map +1 -0
  293. package/dist/components/code-editor/editing.js +93 -0
  294. package/dist/components/code-editor/editing.js.map +1 -0
  295. package/dist/components/code-editor/highlight.js +27 -0
  296. package/dist/components/code-editor/highlight.js.map +1 -0
  297. package/dist/components/code-editor/recipe.js +75 -0
  298. package/dist/components/code-editor/recipe.js.map +1 -0
  299. package/dist/components/date-timeline/DateTimeline.js +358 -0
  300. package/dist/components/date-timeline/DateTimeline.js.map +1 -0
  301. package/dist/components/date-timeline/TimelineRow.js +100 -0
  302. package/dist/components/date-timeline/TimelineRow.js.map +1 -0
  303. package/dist/components/date-timeline/useBarDrag.js +44 -0
  304. package/dist/components/date-timeline/useBarDrag.js.map +1 -0
  305. package/dist/components/date-timeline/useMarkerDrag.js +40 -0
  306. package/dist/components/date-timeline/useMarkerDrag.js.map +1 -0
  307. package/dist/components/date-timeline/useTimelineZoom.js +44 -0
  308. package/dist/components/date-timeline/useTimelineZoom.js.map +1 -0
  309. package/dist/components/drag-drop/context.js +37 -0
  310. package/dist/components/drag-drop/context.js.map +1 -0
  311. package/dist/components/drag-drop/recipe.js +270 -0
  312. package/dist/components/drag-drop/recipe.js.map +1 -0
  313. package/dist/components/drag-drop/shift.js +157 -0
  314. package/dist/components/drag-drop/shift.js.map +1 -0
  315. package/dist/components/edit/activation.js +10 -0
  316. package/dist/components/edit/activation.js.map +1 -0
  317. package/dist/components/edit/outcome.js +47 -0
  318. package/dist/components/edit/outcome.js.map +1 -0
  319. package/dist/components/edit/use-edit-session.js +146 -0
  320. package/dist/components/edit/use-edit-session.js.map +1 -0
  321. package/dist/components/file-viewer/FileViewer.js +97 -0
  322. package/dist/components/file-viewer/FileViewer.js.map +1 -0
  323. package/dist/components/file-viewer/PageNumberJumpField.js +47 -0
  324. package/dist/components/file-viewer/PageNumberJumpField.js.map +1 -0
  325. package/dist/components/file-viewer/ViewerControls.js +122 -0
  326. package/dist/components/file-viewer/ViewerControls.js.map +1 -0
  327. package/dist/components/file-viewer/ViewerRail.js +57 -0
  328. package/dist/components/file-viewer/ViewerRail.js.map +1 -0
  329. package/dist/components/file-viewer/ViewerStage.js +112 -0
  330. package/dist/components/file-viewer/ViewerStage.js.map +1 -0
  331. package/dist/components/file-viewer/frames.js +37 -0
  332. package/dist/components/file-viewer/frames.js.map +1 -0
  333. package/dist/components/file-viewer/use-frame-cursor.js +32 -0
  334. package/dist/components/file-viewer/use-frame-cursor.js.map +1 -0
  335. package/dist/components/file-viewer/use-viewer-keys.js +50 -0
  336. package/dist/components/file-viewer/use-viewer-keys.js.map +1 -0
  337. package/dist/components/file-viewer/use-viewer-zoom.js +68 -0
  338. package/dist/components/file-viewer/use-viewer-zoom.js.map +1 -0
  339. package/dist/components/focus-web/FocusWeb.js +322 -0
  340. package/dist/components/focus-web/FocusWeb.js.map +1 -0
  341. package/dist/components/focus-web/layout.js +34 -0
  342. package/dist/components/focus-web/layout.js.map +1 -0
  343. package/dist/components/graph-explorer/GraphExplorer.js +441 -0
  344. package/dist/components/graph-explorer/GraphExplorer.js.map +1 -0
  345. package/dist/components/graph-explorer/camera-math.js +102 -0
  346. package/dist/components/graph-explorer/camera-math.js.map +1 -0
  347. package/dist/components/graph-explorer/tree-layout.js +103 -0
  348. package/dist/components/graph-explorer/tree-layout.js.map +1 -0
  349. package/dist/components/graph-explorer/use-camera.js +82 -0
  350. package/dist/components/graph-explorer/use-camera.js.map +1 -0
  351. package/dist/components/graph-explorer/viewport-gesture.js +107 -0
  352. package/dist/components/graph-explorer/viewport-gesture.js.map +1 -0
  353. package/dist/components/kanban/KanbanBoard.js +219 -0
  354. package/dist/components/kanban/KanbanBoard.js.map +1 -0
  355. package/dist/components/kanban/recipe.js +144 -0
  356. package/dist/components/kanban/recipe.js.map +1 -0
  357. package/dist/components/markdown/Affordances.js +398 -0
  358. package/dist/components/markdown/Affordances.js.map +1 -0
  359. package/dist/components/markdown/AttachmentStrip.js +128 -0
  360. package/dist/components/markdown/AttachmentStrip.js.map +1 -0
  361. package/dist/components/markdown/ImageUpload.js +45 -0
  362. package/dist/components/markdown/ImageUpload.js.map +1 -0
  363. package/dist/components/media-error.js +7 -0
  364. package/dist/components/media-error.js.map +1 -0
  365. package/dist/components/nav-sections.js +61 -0
  366. package/dist/components/nav-sections.js.map +1 -0
  367. package/dist/components/node-canvas/NodeCanvas.js +384 -0
  368. package/dist/components/node-canvas/NodeCanvas.js.map +1 -0
  369. package/dist/components/node-canvas/layout.js +237 -0
  370. package/dist/components/node-canvas/layout.js.map +1 -0
  371. package/dist/components/node-canvas/use-canvas-gestures.js +143 -0
  372. package/dist/components/node-canvas/use-canvas-gestures.js.map +1 -0
  373. package/dist/components/openapi/OpenApiViewer.js +137 -0
  374. package/dist/components/openapi/OpenApiViewer.js.map +1 -0
  375. package/dist/components/openapi/OperationCard.js +145 -0
  376. package/dist/components/openapi/OperationCard.js.map +1 -0
  377. package/dist/components/openapi/SchemaView.js +68 -0
  378. package/dist/components/openapi/SchemaView.js.map +1 -0
  379. package/dist/components/openapi/resolve.js +102 -0
  380. package/dist/components/openapi/resolve.js.map +1 -0
  381. package/dist/components/openapi/types.js +5 -0
  382. package/dist/components/openapi/types.js.map +1 -0
  383. package/dist/components/overlay-shell.js +29 -0
  384. package/dist/components/overlay-shell.js.map +1 -0
  385. package/dist/components/overlay-stack.js +27 -0
  386. package/dist/components/overlay-stack.js.map +1 -0
  387. package/dist/components/paged-window/PageBlock.js +50 -0
  388. package/dist/components/paged-window/PageBlock.js.map +1 -0
  389. package/dist/components/provenance/ConfidenceBar.js +60 -0
  390. package/dist/components/provenance/ConfidenceBar.js.map +1 -0
  391. package/dist/components/provenance/ConfidenceMeter.js +36 -0
  392. package/dist/components/provenance/ConfidenceMeter.js.map +1 -0
  393. package/dist/components/provenance/ConfidenceReadout.js +31 -0
  394. package/dist/components/provenance/ConfidenceReadout.js.map +1 -0
  395. package/dist/components/provenance/ProvenanceBadge.js +44 -0
  396. package/dist/components/provenance/ProvenanceBadge.js.map +1 -0
  397. package/dist/components/provenance/ProvenanceDetail.js +114 -0
  398. package/dist/components/provenance/ProvenanceDetail.js.map +1 -0
  399. package/dist/components/provenance/ProvenanceDisclosure.js +111 -0
  400. package/dist/components/provenance/ProvenanceDisclosure.js.map +1 -0
  401. package/dist/components/provenance/absence.js +31 -0
  402. package/dist/components/provenance/absence.js.map +1 -0
  403. package/dist/components/provenance/types.js +30 -0
  404. package/dist/components/provenance/types.js.map +1 -0
  405. package/dist/components/rbac/AccessRequestPanel.js +153 -0
  406. package/dist/components/rbac/AccessRequestPanel.js.map +1 -0
  407. package/dist/components/rbac/AccountMenu.js +118 -0
  408. package/dist/components/rbac/AccountMenu.js.map +1 -0
  409. package/dist/components/rbac/AgentKeysList.js +20 -0
  410. package/dist/components/rbac/AgentKeysList.js.map +1 -0
  411. package/dist/components/rbac/ApiKeysPanel.js +172 -0
  412. package/dist/components/rbac/ApiKeysPanel.js.map +1 -0
  413. package/dist/components/rbac/ApiKeysTable.js +167 -0
  414. package/dist/components/rbac/ApiKeysTable.js.map +1 -0
  415. package/dist/components/rbac/Brand.js +13 -0
  416. package/dist/components/rbac/Brand.js.map +1 -0
  417. package/dist/components/rbac/Can.js +18 -0
  418. package/dist/components/rbac/Can.js.map +1 -0
  419. package/dist/components/rbac/ChangePasswordForm.js +73 -0
  420. package/dist/components/rbac/ChangePasswordForm.js.map +1 -0
  421. package/dist/components/rbac/DangerZone.js +27 -0
  422. package/dist/components/rbac/DangerZone.js.map +1 -0
  423. package/dist/components/rbac/DevToolsPopover.js +140 -0
  424. package/dist/components/rbac/DevToolsPopover.js.map +1 -0
  425. package/dist/components/rbac/EndedLine.js +24 -0
  426. package/dist/components/rbac/EndedLine.js.map +1 -0
  427. package/dist/components/rbac/InvitationsList.js +148 -0
  428. package/dist/components/rbac/InvitationsList.js.map +1 -0
  429. package/dist/components/rbac/InviteMembersDialog.js +97 -0
  430. package/dist/components/rbac/InviteMembersDialog.js.map +1 -0
  431. package/dist/components/rbac/MembersPanel.js +138 -0
  432. package/dist/components/rbac/MembersPanel.js.map +1 -0
  433. package/dist/components/rbac/PermissionRequestPanel.js +141 -0
  434. package/dist/components/rbac/PermissionRequestPanel.js.map +1 -0
  435. package/dist/components/rbac/ProfileForm.js +86 -0
  436. package/dist/components/rbac/ProfileForm.js.map +1 -0
  437. package/dist/components/rbac/ProfilePage.js +58 -0
  438. package/dist/components/rbac/ProfilePage.js.map +1 -0
  439. package/dist/components/rbac/RBACProvider.js +82 -0
  440. package/dist/components/rbac/RBACProvider.js.map +1 -0
  441. package/dist/components/rbac/RoleEditorDialog.js +90 -0
  442. package/dist/components/rbac/RoleEditorDialog.js.map +1 -0
  443. package/dist/components/rbac/RoleKeyPicker.js +77 -0
  444. package/dist/components/rbac/RoleKeyPicker.js.map +1 -0
  445. package/dist/components/rbac/RolePermissionMatrix.js +37 -0
  446. package/dist/components/rbac/RolePermissionMatrix.js.map +1 -0
  447. package/dist/components/rbac/RolesPermissionsPage.js +142 -0
  448. package/dist/components/rbac/RolesPermissionsPage.js.map +1 -0
  449. package/dist/components/rbac/SessionsList.js +146 -0
  450. package/dist/components/rbac/SessionsList.js.map +1 -0
  451. package/dist/components/rbac/TeamSettingsForm.js +69 -0
  452. package/dist/components/rbac/TeamSettingsForm.js.map +1 -0
  453. package/dist/components/rbac/TeamSwitcher.js +66 -0
  454. package/dist/components/rbac/TeamSwitcher.js.map +1 -0
  455. package/dist/components/rbac/approvalPanelParts.js +130 -0
  456. package/dist/components/rbac/approvalPanelParts.js.map +1 -0
  457. package/dist/components/rbac/permissionSections.js +8 -0
  458. package/dist/components/rbac/permissionSections.js.map +1 -0
  459. package/dist/components/rbac/stagedForm.js +42 -0
  460. package/dist/components/rbac/stagedForm.js.map +1 -0
  461. package/dist/components/rbac/useStagedImage.js +21 -0
  462. package/dist/components/rbac/useStagedImage.js.map +1 -0
  463. package/dist/components/roadmap/PhaseManager.js +48 -0
  464. package/dist/components/roadmap/PhaseManager.js.map +1 -0
  465. package/dist/components/roadmap/RoadmapItemCard.js +96 -0
  466. package/dist/components/roadmap/RoadmapItemCard.js.map +1 -0
  467. package/dist/components/roadmap/RoadmapPage.js +34 -0
  468. package/dist/components/roadmap/RoadmapPage.js.map +1 -0
  469. package/dist/components/roadmap/RoadmapSwimlaneBoard.js +91 -0
  470. package/dist/components/roadmap/RoadmapSwimlaneBoard.js.map +1 -0
  471. package/dist/components/roadmap/TrackManager.js +58 -0
  472. package/dist/components/roadmap/TrackManager.js.map +1 -0
  473. package/dist/components/roadmap/UseCaseCard.js +93 -0
  474. package/dist/components/roadmap/UseCaseCard.js.map +1 -0
  475. package/dist/components/roadmap/UseCaseLedgerPage.js +98 -0
  476. package/dist/components/roadmap/UseCaseLedgerPage.js.map +1 -0
  477. package/dist/components/roadmap/chip-tones.js +9 -0
  478. package/dist/components/roadmap/chip-tones.js.map +1 -0
  479. package/dist/components/roadmap/derive.js +28 -0
  480. package/dist/components/roadmap/derive.js.map +1 -0
  481. package/dist/components/stepper/Stepper.js +276 -0
  482. package/dist/components/stepper/Stepper.js.map +1 -0
  483. package/dist/components/stepper/derive.js +53 -0
  484. package/dist/components/stepper/derive.js.map +1 -0
  485. package/dist/confidence.css +222 -0
  486. package/dist/fonts/bricolage-grotesque-0.woff2 +0 -0
  487. package/dist/fonts/bricolage-grotesque-1.woff2 +0 -0
  488. package/dist/fonts/bricolage-grotesque-2.woff2 +0 -0
  489. package/dist/fonts/figtree-0.woff2 +0 -0
  490. package/dist/fonts/figtree-1.woff2 +0 -0
  491. package/dist/fonts/figtree-2.woff2 +0 -0
  492. package/dist/fonts/figtree-3.woff2 +0 -0
  493. package/dist/fonts/jetbrains-mono-0.woff2 +0 -0
  494. package/dist/fonts/jetbrains-mono-1.woff2 +0 -0
  495. package/dist/fonts/jetbrains-mono-10.woff2 +0 -0
  496. package/dist/fonts/jetbrains-mono-11.woff2 +0 -0
  497. package/dist/fonts/jetbrains-mono-2.woff2 +0 -0
  498. package/dist/fonts/jetbrains-mono-3.woff2 +0 -0
  499. package/dist/fonts/jetbrains-mono-4.woff2 +0 -0
  500. package/dist/fonts/jetbrains-mono-5.woff2 +0 -0
  501. package/dist/fonts/jetbrains-mono-6.woff2 +0 -0
  502. package/dist/fonts/jetbrains-mono-7.woff2 +0 -0
  503. package/dist/fonts/jetbrains-mono-8.woff2 +0 -0
  504. package/dist/fonts/jetbrains-mono-9.woff2 +0 -0
  505. package/dist/fonts.css +187 -0
  506. package/dist/icons/data.js +233 -0
  507. package/dist/icons/data.js.map +1 -0
  508. package/dist/index.js +942 -0
  509. package/dist/index.js.map +1 -0
  510. package/dist/lib/attention.js +75 -0
  511. package/dist/lib/attention.js.map +1 -0
  512. package/dist/lib/board/anchor.js +14 -0
  513. package/dist/lib/board/anchor.js.map +1 -0
  514. package/dist/lib/board/model.js +41 -0
  515. package/dist/lib/board/model.js.map +1 -0
  516. package/dist/lib/board/move.js +161 -0
  517. package/dist/lib/board/move.js.map +1 -0
  518. package/dist/lib/board/position.js +11 -0
  519. package/dist/lib/board/position.js.map +1 -0
  520. package/dist/lib/board/rejection.js +22 -0
  521. package/dist/lib/board/rejection.js.map +1 -0
  522. package/dist/lib/board/use-board.js +43 -0
  523. package/dist/lib/board/use-board.js.map +1 -0
  524. package/dist/lib/calendar/band-packer.js +44 -0
  525. package/dist/lib/calendar/band-packer.js.map +1 -0
  526. package/dist/lib/calendar/drag.js +74 -0
  527. package/dist/lib/calendar/drag.js.map +1 -0
  528. package/dist/lib/calendar/lane-packer.js +67 -0
  529. package/dist/lib/calendar/lane-packer.js.map +1 -0
  530. package/dist/lib/calendar/segments.js +82 -0
  531. package/dist/lib/calendar/segments.js.map +1 -0
  532. package/dist/lib/calendar/types.js +7 -0
  533. package/dist/lib/calendar/types.js.map +1 -0
  534. package/dist/lib/chart-palette.js +27 -0
  535. package/dist/lib/chart-palette.js.map +1 -0
  536. package/dist/lib/clipboard.js +30 -0
  537. package/dist/lib/clipboard.js.map +1 -0
  538. package/dist/lib/cn.js +9 -0
  539. package/dist/lib/cn.js.map +1 -0
  540. package/dist/lib/color.js +24 -0
  541. package/dist/lib/color.js.map +1 -0
  542. package/dist/lib/component-guidance.js +297 -0
  543. package/dist/lib/component-guidance.js.map +1 -0
  544. package/dist/lib/confidence.js +22 -0
  545. package/dist/lib/confidence.js.map +1 -0
  546. package/dist/lib/date-timeline/scale.js +197 -0
  547. package/dist/lib/date-timeline/scale.js.map +1 -0
  548. package/dist/lib/design-frame/document.js +44 -0
  549. package/dist/lib/design-frame/document.js.map +1 -0
  550. package/dist/lib/design-frame/mini-app-script.js +107 -0
  551. package/dist/lib/design-frame/mini-app-script.js.map +1 -0
  552. package/dist/lib/design-frame/mini-app.js +12 -0
  553. package/dist/lib/design-frame/mini-app.js.map +1 -0
  554. package/dist/lib/design-frame/protocol.js +46 -0
  555. package/dist/lib/design-frame/protocol.js.map +1 -0
  556. package/dist/lib/dev-warn.js +17 -0
  557. package/dist/lib/dev-warn.js.map +1 -0
  558. package/dist/lib/dnd/announce.js +120 -0
  559. package/dist/lib/dnd/announce.js.map +1 -0
  560. package/dist/lib/dnd/autoscroll.js +123 -0
  561. package/dist/lib/dnd/autoscroll.js.map +1 -0
  562. package/dist/lib/dnd/cross-drop.js +11 -0
  563. package/dist/lib/dnd/cross-drop.js.map +1 -0
  564. package/dist/lib/dnd/geometry.js +99 -0
  565. package/dist/lib/dnd/geometry.js.map +1 -0
  566. package/dist/lib/dnd/sensors/gesture.js +86 -0
  567. package/dist/lib/dnd/sensors/gesture.js.map +1 -0
  568. package/dist/lib/dnd/sensors/keyboard.js +47 -0
  569. package/dist/lib/dnd/sensors/keyboard.js.map +1 -0
  570. package/dist/lib/dnd/sensors/pointer.js +32 -0
  571. package/dist/lib/dnd/sensors/pointer.js.map +1 -0
  572. package/dist/lib/dnd/session.js +256 -0
  573. package/dist/lib/dnd/session.js.map +1 -0
  574. package/dist/lib/dnd/use-drag.js +90 -0
  575. package/dist/lib/dnd/use-drag.js.map +1 -0
  576. package/dist/lib/dom/scroll-ancestor.js +18 -0
  577. package/dist/lib/dom/scroll-ancestor.js.map +1 -0
  578. package/dist/lib/format.js +23 -0
  579. package/dist/lib/format.js.map +1 -0
  580. package/dist/lib/group-in-order.js +13 -0
  581. package/dist/lib/group-in-order.js.map +1 -0
  582. package/dist/lib/header-fold.js +11 -0
  583. package/dist/lib/header-fold.js.map +1 -0
  584. package/dist/lib/i18n/areas/auth-provenance-flows.js +156 -0
  585. package/dist/lib/i18n/areas/auth-provenance-flows.js.map +1 -0
  586. package/dist/lib/i18n/areas/board.js +35 -0
  587. package/dist/lib/i18n/areas/board.js.map +1 -0
  588. package/dist/lib/i18n/areas/card-face.js +10 -0
  589. package/dist/lib/i18n/areas/card-face.js.map +1 -0
  590. package/dist/lib/i18n/areas/chat-chart.js +118 -0
  591. package/dist/lib/i18n/areas/chat-chart.js.map +1 -0
  592. package/dist/lib/i18n/areas/code-editor.js +24 -0
  593. package/dist/lib/i18n/areas/code-editor.js.map +1 -0
  594. package/dist/lib/i18n/areas/date-timeline.js +21 -0
  595. package/dist/lib/i18n/areas/date-timeline.js.map +1 -0
  596. package/dist/lib/i18n/areas/dates.js +71 -0
  597. package/dist/lib/i18n/areas/dates.js.map +1 -0
  598. package/dist/lib/i18n/areas/docs-views.js +183 -0
  599. package/dist/lib/i18n/areas/docs-views.js.map +1 -0
  600. package/dist/lib/i18n/areas/feedback.js +75 -0
  601. package/dist/lib/i18n/areas/feedback.js.map +1 -0
  602. package/dist/lib/i18n/areas/formats.js +24 -0
  603. package/dist/lib/i18n/areas/formats.js.map +1 -0
  604. package/dist/lib/i18n/areas/forms.js +110 -0
  605. package/dist/lib/i18n/areas/forms.js.map +1 -0
  606. package/dist/lib/i18n/areas/keys.js +25 -0
  607. package/dist/lib/i18n/areas/keys.js.map +1 -0
  608. package/dist/lib/i18n/areas/markdown.js +136 -0
  609. package/dist/lib/i18n/areas/markdown.js.map +1 -0
  610. package/dist/lib/i18n/areas/move-rejected.js +14 -0
  611. package/dist/lib/i18n/areas/move-rejected.js.map +1 -0
  612. package/dist/lib/i18n/areas/navigation.js +104 -0
  613. package/dist/lib/i18n/areas/navigation.js.map +1 -0
  614. package/dist/lib/i18n/areas/rbac.js +331 -0
  615. package/dist/lib/i18n/areas/rbac.js.map +1 -0
  616. package/dist/lib/i18n/emphasis.js +6 -0
  617. package/dist/lib/i18n/emphasis.js.map +1 -0
  618. package/dist/lib/i18n/number-format.js +9 -0
  619. package/dist/lib/i18n/number-format.js.map +1 -0
  620. package/dist/lib/i18n/plural.js +9 -0
  621. package/dist/lib/i18n/plural.js.map +1 -0
  622. package/dist/lib/i18n/provider.js +27 -0
  623. package/dist/lib/i18n/provider.js.map +1 -0
  624. package/dist/lib/i18n/strings.js +38 -0
  625. package/dist/lib/i18n/strings.js.map +1 -0
  626. package/dist/lib/icons.js +17 -0
  627. package/dist/lib/icons.js.map +1 -0
  628. package/dist/lib/interactive-target.js +9 -0
  629. package/dist/lib/interactive-target.js.map +1 -0
  630. package/dist/lib/intl-cache.js +69 -0
  631. package/dist/lib/intl-cache.js.map +1 -0
  632. package/dist/lib/legal-document.js +37 -0
  633. package/dist/lib/legal-document.js.map +1 -0
  634. package/dist/lib/line-diff-model.js +51 -0
  635. package/dist/lib/line-diff-model.js.map +1 -0
  636. package/dist/lib/markdown/attachments.js +71 -0
  637. package/dist/lib/markdown/attachments.js.map +1 -0
  638. package/dist/lib/markdown/caret-map.js +153 -0
  639. package/dist/lib/markdown/caret-map.js.map +1 -0
  640. package/dist/lib/markdown/caret.js +35 -0
  641. package/dist/lib/markdown/caret.js.map +1 -0
  642. package/dist/lib/markdown/commands.js +443 -0
  643. package/dist/lib/markdown/commands.js.map +1 -0
  644. package/dist/lib/markdown/convert.js +153 -0
  645. package/dist/lib/markdown/convert.js.map +1 -0
  646. package/dist/lib/markdown/dom.js +89 -0
  647. package/dist/lib/markdown/dom.js.map +1 -0
  648. package/dist/lib/markdown/edit.js +92 -0
  649. package/dist/lib/markdown/edit.js.map +1 -0
  650. package/dist/lib/markdown/history.js +79 -0
  651. package/dist/lib/markdown/history.js.map +1 -0
  652. package/dist/lib/markdown/hotkeys.js +63 -0
  653. package/dist/lib/markdown/hotkeys.js.map +1 -0
  654. package/dist/lib/markdown/image-pipeline.js +236 -0
  655. package/dist/lib/markdown/image-pipeline.js.map +1 -0
  656. package/dist/lib/markdown/images.js +85 -0
  657. package/dist/lib/markdown/images.js.map +1 -0
  658. package/dist/lib/markdown/input.js +210 -0
  659. package/dist/lib/markdown/input.js.map +1 -0
  660. package/dist/lib/markdown/keys.js +37 -0
  661. package/dist/lib/markdown/keys.js.map +1 -0
  662. package/dist/lib/markdown/paste.js +180 -0
  663. package/dist/lib/markdown/paste.js.map +1 -0
  664. package/dist/lib/markdown/position.js +111 -0
  665. package/dist/lib/markdown/position.js.map +1 -0
  666. package/dist/lib/markdown/project.js +108 -0
  667. package/dist/lib/markdown/project.js.map +1 -0
  668. package/dist/lib/markdown/reconcile.js +127 -0
  669. package/dist/lib/markdown/reconcile.js.map +1 -0
  670. package/dist/lib/markdown/surface.js +373 -0
  671. package/dist/lib/markdown/surface.js.map +1 -0
  672. package/dist/lib/motion.js +22 -0
  673. package/dist/lib/motion.js.map +1 -0
  674. package/dist/lib/pad.js +7 -0
  675. package/dist/lib/pad.js.map +1 -0
  676. package/dist/lib/paged-window/layout.js +15 -0
  677. package/dist/lib/paged-window/layout.js.map +1 -0
  678. package/dist/lib/paged-window/list-owner.js +21 -0
  679. package/dist/lib/paged-window/list-owner.js.map +1 -0
  680. package/dist/lib/paged-window/records-binding.js +239 -0
  681. package/dist/lib/paged-window/records-binding.js.map +1 -0
  682. package/dist/lib/paged-window/store.js +562 -0
  683. package/dist/lib/paged-window/store.js.map +1 -0
  684. package/dist/lib/paged-window/use-measured-pitch.js +38 -0
  685. package/dist/lib/paged-window/use-measured-pitch.js.map +1 -0
  686. package/dist/lib/paged-window/use-page-visibility.js +36 -0
  687. package/dist/lib/paged-window/use-page-visibility.js.map +1 -0
  688. package/dist/lib/paged-window/use-paged-window.js +43 -0
  689. package/dist/lib/paged-window/use-paged-window.js.map +1 -0
  690. package/dist/lib/paged-window/use-scroll-root.js +12 -0
  691. package/dist/lib/paged-window/use-scroll-root.js.map +1 -0
  692. package/dist/lib/persist.js +84 -0
  693. package/dist/lib/persist.js.map +1 -0
  694. package/dist/lib/preference-values.js +13 -0
  695. package/dist/lib/preference-values.js.map +1 -0
  696. package/dist/lib/preferences.js +86 -0
  697. package/dist/lib/preferences.js.map +1 -0
  698. package/dist/lib/reads/hooks.js +156 -0
  699. package/dist/lib/reads/hooks.js.map +1 -0
  700. package/dist/lib/reads/optimistic.js +169 -0
  701. package/dist/lib/reads/optimistic.js.map +1 -0
  702. package/dist/lib/reads/refetch.js +108 -0
  703. package/dist/lib/reads/refetch.js.map +1 -0
  704. package/dist/lib/reads/slots.js +215 -0
  705. package/dist/lib/reads/slots.js.map +1 -0
  706. package/dist/lib/realtime/hooks.js +40 -0
  707. package/dist/lib/realtime/hooks.js.map +1 -0
  708. package/dist/lib/realtime/provider.js +25 -0
  709. package/dist/lib/realtime/provider.js.map +1 -0
  710. package/dist/lib/realtime/registry.js +472 -0
  711. package/dist/lib/realtime/registry.js.map +1 -0
  712. package/dist/lib/records/define-record-type.js +33 -0
  713. package/dist/lib/records/define-record-type.js.map +1 -0
  714. package/dist/lib/records/hooks.js +39 -0
  715. package/dist/lib/records/hooks.js.map +1 -0
  716. package/dist/lib/records/store.js +572 -0
  717. package/dist/lib/records/store.js.map +1 -0
  718. package/dist/lib/records/wire.js +58 -0
  719. package/dist/lib/records/wire.js.map +1 -0
  720. package/dist/lib/reduced-motion-help.js +19 -0
  721. package/dist/lib/reduced-motion-help.js.map +1 -0
  722. package/dist/lib/scroll-caret.js +18 -0
  723. package/dist/lib/scroll-caret.js.map +1 -0
  724. package/dist/lib/sim/createSimStore.js +54 -0
  725. package/dist/lib/sim/createSimStore.js.map +1 -0
  726. package/dist/lib/sim/latency.js +28 -0
  727. package/dist/lib/sim/latency.js.map +1 -0
  728. package/dist/lib/sim/registry.js +13 -0
  729. package/dist/lib/sim/registry.js.map +1 -0
  730. package/dist/lib/sim/settings.js +41 -0
  731. package/dist/lib/sim/settings.js.map +1 -0
  732. package/dist/lib/submit-shortcut.js +25 -0
  733. package/dist/lib/submit-shortcut.js.map +1 -0
  734. package/dist/lib/syntax/index.js +33 -0
  735. package/dist/lib/syntax/index.js.map +1 -0
  736. package/dist/lib/syntax/languages/bash.js +77 -0
  737. package/dist/lib/syntax/languages/bash.js.map +1 -0
  738. package/dist/lib/syntax/languages/css.js +81 -0
  739. package/dist/lib/syntax/languages/css.js.map +1 -0
  740. package/dist/lib/syntax/languages/html.js +91 -0
  741. package/dist/lib/syntax/languages/html.js.map +1 -0
  742. package/dist/lib/syntax/languages/index.js +49 -0
  743. package/dist/lib/syntax/languages/index.js.map +1 -0
  744. package/dist/lib/syntax/languages/javascript.js +133 -0
  745. package/dist/lib/syntax/languages/javascript.js.map +1 -0
  746. package/dist/lib/syntax/languages/json.js +45 -0
  747. package/dist/lib/syntax/languages/json.js.map +1 -0
  748. package/dist/lib/syntax/languages/mongodb.js +24 -0
  749. package/dist/lib/syntax/languages/mongodb.js.map +1 -0
  750. package/dist/lib/syntax/languages/plain.js +10 -0
  751. package/dist/lib/syntax/languages/plain.js.map +1 -0
  752. package/dist/lib/syntax/languages/sql.js +113 -0
  753. package/dist/lib/syntax/languages/sql.js.map +1 -0
  754. package/dist/lib/syntax/languages/vue.js +31 -0
  755. package/dist/lib/syntax/languages/vue.js.map +1 -0
  756. package/dist/lib/syntax/languages/yaml.js +55 -0
  757. package/dist/lib/syntax/languages/yaml.js.map +1 -0
  758. package/dist/lib/syntax/markdown/grammar.js +52 -0
  759. package/dist/lib/syntax/markdown/grammar.js.map +1 -0
  760. package/dist/lib/syntax/markdown/inline.js +477 -0
  761. package/dist/lib/syntax/markdown/inline.js.map +1 -0
  762. package/dist/lib/syntax/markdown/parse.js +464 -0
  763. package/dist/lib/syntax/markdown/parse.js.map +1 -0
  764. package/dist/lib/syntax/markdown/refs.js +94 -0
  765. package/dist/lib/syntax/markdown/refs.js.map +1 -0
  766. package/dist/lib/syntax/markdown/render.js +230 -0
  767. package/dist/lib/syntax/markdown/render.js.map +1 -0
  768. package/dist/lib/syntax/markdown/spans.js +40 -0
  769. package/dist/lib/syntax/markdown/spans.js.map +1 -0
  770. package/dist/lib/syntax/registry.js +55 -0
  771. package/dist/lib/syntax/registry.js.map +1 -0
  772. package/dist/lib/syntax/tokenize.js +96 -0
  773. package/dist/lib/syntax/tokenize.js.map +1 -0
  774. package/dist/lib/time/instant.js +7 -0
  775. package/dist/lib/time/instant.js.map +1 -0
  776. package/dist/lib/time/plain.js +83 -0
  777. package/dist/lib/time/plain.js.map +1 -0
  778. package/dist/lib/time/relativeAge.js +20 -0
  779. package/dist/lib/time/relativeAge.js.map +1 -0
  780. package/dist/lib/time/relativeClock.js +59 -0
  781. package/dist/lib/time/relativeClock.js.map +1 -0
  782. package/dist/lib/time/types.js +23 -0
  783. package/dist/lib/time/types.js.map +1 -0
  784. package/dist/lib/time/zone.js +148 -0
  785. package/dist/lib/time/zone.js.map +1 -0
  786. package/dist/lib/use-controllable.js +16 -0
  787. package/dist/lib/use-controllable.js.map +1 -0
  788. package/dist/lib/use-fill-height.js +49 -0
  789. package/dist/lib/use-fill-height.js.map +1 -0
  790. package/dist/lib/use-hydrated.js +14 -0
  791. package/dist/lib/use-hydrated.js.map +1 -0
  792. package/dist/lib/use-media-query.js +30 -0
  793. package/dist/lib/use-media-query.js.map +1 -0
  794. package/dist/lib/use-relabel-base-ui-dismiss.js +26 -0
  795. package/dist/lib/use-relabel-base-ui-dismiss.js.map +1 -0
  796. package/dist/lib/use-release-snap-drag.js +29 -0
  797. package/dist/lib/use-release-snap-drag.js.map +1 -0
  798. package/dist/lib/use-roving-options.js +18 -0
  799. package/dist/lib/use-roving-options.js.map +1 -0
  800. package/dist/lib/values/absent.js +5 -0
  801. package/dist/lib/values/absent.js.map +1 -0
  802. package/dist/lib/values/boolean.js +13 -0
  803. package/dist/lib/values/boolean.js.map +1 -0
  804. package/dist/lib/values/currency.js +23 -0
  805. package/dist/lib/values/currency.js.map +1 -0
  806. package/dist/lib/values/date.js +35 -0
  807. package/dist/lib/values/date.js.map +1 -0
  808. package/dist/lib/values/datetime.js +54 -0
  809. package/dist/lib/values/datetime.js.map +1 -0
  810. package/dist/lib/values/locale-date.js +60 -0
  811. package/dist/lib/values/locale-date.js.map +1 -0
  812. package/dist/lib/values/number.js +16 -0
  813. package/dist/lib/values/number.js.map +1 -0
  814. package/dist/pure.js +379 -0
  815. package/dist/pure.js.map +1 -0
  816. package/dist/styles.css +190 -0
  817. package/dist/theme.css +360 -0
  818. package/dist/types/components/Accordion.d.ts +15 -0
  819. package/dist/types/components/AgentWorkingSpinner.d.ts +23 -0
  820. package/dist/types/components/AppShell.d.ts +164 -0
  821. package/dist/types/components/Attention.d.ts +87 -0
  822. package/dist/types/components/Avatar.d.ts +154 -0
  823. package/dist/types/components/Badge.d.ts +131 -0
  824. package/dist/types/components/Board.d.ts +239 -0
  825. package/dist/types/components/Button.d.ts +208 -0
  826. package/dist/types/components/Callout.d.ts +163 -0
  827. package/dist/types/components/Card.d.ts +219 -0
  828. package/dist/types/components/Choice.d.ts +127 -0
  829. package/dist/types/components/CodeEditor.d.ts +86 -0
  830. package/dist/types/components/ColorPicker.d.ts +14 -0
  831. package/dist/types/components/Combobox.d.ts +43 -0
  832. package/dist/types/components/CommandPalette.d.ts +35 -0
  833. package/dist/types/components/ConcentricRing.d.ts +61 -0
  834. package/dist/types/components/ConnectionCard.d.ts +64 -0
  835. package/dist/types/components/ContextItemRow.d.ts +35 -0
  836. package/dist/types/components/CopyValue.d.ts +14 -0
  837. package/dist/types/components/CountBadge.d.ts +14 -0
  838. package/dist/types/components/DateCalendar.d.ts +30 -0
  839. package/dist/types/components/DateField.d.ts +29 -0
  840. package/dist/types/components/DatePicker.d.ts +20 -0
  841. package/dist/types/components/DateTimeText.d.ts +9 -0
  842. package/dist/types/components/DescriptionList.d.ts +40 -0
  843. package/dist/types/components/Dialog.d.ts +269 -0
  844. package/dist/types/components/DragDrop.d.ts +196 -0
  845. package/dist/types/components/Drawer.d.ts +163 -0
  846. package/dist/types/components/EditGutter.d.ts +44 -0
  847. package/dist/types/components/EmojiPicker.d.ts +30 -0
  848. package/dist/types/components/ErrorBoundary.d.ts +43 -0
  849. package/dist/types/components/Field.d.ts +37 -0
  850. package/dist/types/components/FileUpload.d.ts +22 -0
  851. package/dist/types/components/FilterMenu.d.ts +120 -0
  852. package/dist/types/components/GatesSection.d.ts +79 -0
  853. package/dist/types/components/Icon.d.ts +40 -0
  854. package/dist/types/components/IconButton.d.ts +69 -0
  855. package/dist/types/components/IconStack.d.ts +28 -0
  856. package/dist/types/components/ImageUploadField.d.ts +38 -0
  857. package/dist/types/components/InlineEdit.d.ts +183 -0
  858. package/dist/types/components/InlineMarkdownEdit.d.ts +100 -0
  859. package/dist/types/components/Input.d.ts +128 -0
  860. package/dist/types/components/LegalDocument.d.ts +23 -0
  861. package/dist/types/components/LineDiff.d.ts +53 -0
  862. package/dist/types/components/ListHeader.d.ts +45 -0
  863. package/dist/types/components/Loading.d.ts +131 -0
  864. package/dist/types/components/Markdown.d.ts +35 -0
  865. package/dist/types/components/MarkdownEditor.d.ts +129 -0
  866. package/dist/types/components/Menu.d.ts +157 -0
  867. package/dist/types/components/Navigation.d.ts +67 -0
  868. package/dist/types/components/NumberInput.d.ts +177 -0
  869. package/dist/types/components/OTPInput.d.ts +13 -0
  870. package/dist/types/components/OrderedEntityManager.d.ts +64 -0
  871. package/dist/types/components/PagedWindowList.d.ts +23 -0
  872. package/dist/types/components/PaginationBar.d.ts +31 -0
  873. package/dist/types/components/Panel.d.ts +94 -0
  874. package/dist/types/components/PasswordInput.d.ts +7 -0
  875. package/dist/types/components/PasswordRequirements.d.ts +11 -0
  876. package/dist/types/components/PatchDiff.d.ts +38 -0
  877. package/dist/types/components/PendingVeil.d.ts +8 -0
  878. package/dist/types/components/Popover.d.ts +231 -0
  879. package/dist/types/components/Progress.d.ts +580 -0
  880. package/dist/types/components/RatingScale.d.ts +30 -0
  881. package/dist/types/components/ReadMore.d.ts +26 -0
  882. package/dist/types/components/RecordCard.d.ts +413 -0
  883. package/dist/types/components/RelativeTime.d.ts +17 -0
  884. package/dist/types/components/SandboxedFrame.d.ts +37 -0
  885. package/dist/types/components/SearchInput.d.ts +6 -0
  886. package/dist/types/components/SecretField.d.ts +90 -0
  887. package/dist/types/components/SectionNav.d.ts +15 -0
  888. package/dist/types/components/Select.d.ts +53 -0
  889. package/dist/types/components/SequenceDiagram.d.ts +15 -0
  890. package/dist/types/components/SettingRow.d.ts +144 -0
  891. package/dist/types/components/SignOffRings.d.ts +29 -0
  892. package/dist/types/components/Slider.d.ts +255 -0
  893. package/dist/types/components/SolutionChoice.d.ts +49 -0
  894. package/dist/types/components/SortMenu.d.ts +45 -0
  895. package/dist/types/components/Spinner.d.ts +29 -0
  896. package/dist/types/components/Stat.d.ts +136 -0
  897. package/dist/types/components/StatusSelect.d.ts +93 -0
  898. package/dist/types/components/Surface.d.ts +145 -0
  899. package/dist/types/components/Table.d.ts +164 -0
  900. package/dist/types/components/Tabs.d.ts +142 -0
  901. package/dist/types/components/ThemeMenu.d.ts +56 -0
  902. package/dist/types/components/Toast.d.ts +63 -0
  903. package/dist/types/components/Toggle.d.ts +168 -0
  904. package/dist/types/components/ToggleMatrix.d.ts +51 -0
  905. package/dist/types/components/Tree.d.ts +20 -0
  906. package/dist/types/components/TriStateSwitch.d.ts +63 -0
  907. package/dist/types/components/VideoPlayer.d.ts +26 -0
  908. package/dist/types/components/auth/AcceptInvitationCard.d.ts +54 -0
  909. package/dist/types/components/auth/AuthLayout.d.ts +12 -0
  910. package/dist/types/components/auth/ForgotPasswordForm.d.ts +6 -0
  911. package/dist/types/components/auth/LoginForm.d.ts +13 -0
  912. package/dist/types/components/auth/ResetPasswordForm.d.ts +9 -0
  913. package/dist/types/components/auth/SignInProviders.d.ts +56 -0
  914. package/dist/types/components/auth/SignupCard.d.ts +62 -0
  915. package/dist/types/components/auth/TermsAcceptance.d.ts +14 -0
  916. package/dist/types/components/auth/index.d.ts +8 -0
  917. package/dist/types/components/board/context.d.ts +65 -0
  918. package/dist/types/components/board/recipe.d.ts +97 -0
  919. package/dist/types/components/calendar/CalendarMonth.d.ts +32 -0
  920. package/dist/types/components/calendar/CalendarTimeGrid.d.ts +74 -0
  921. package/dist/types/components/calendar/EventActions.d.ts +16 -0
  922. package/dist/types/components/calendar/format.d.ts +42 -0
  923. package/dist/types/components/calendar/palette.d.ts +17 -0
  924. package/dist/types/components/calendar/use-calendar-drag.d.ts +53 -0
  925. package/dist/types/components/calendar/use-event-keyboard.d.ts +23 -0
  926. package/dist/types/components/calendar/use-grid-navigation.d.ts +47 -0
  927. package/dist/types/components/calendar/use-now.d.ts +20 -0
  928. package/dist/types/components/card-face/AcRingGlyph.d.ts +20 -0
  929. package/dist/types/components/card-face/BoardCardAgentSlot.d.ts +19 -0
  930. package/dist/types/components/card-face/CardFace.d.ts +106 -0
  931. package/dist/types/components/card-face/CardTypeBadge.d.ts +21 -0
  932. package/dist/types/components/card-face/EffortBadge.d.ts +9 -0
  933. package/dist/types/components/card-face/GateRingGlyph.d.ts +22 -0
  934. package/dist/types/components/card-face/OverflowRow.d.ts +40 -0
  935. package/dist/types/components/card-face/TapTip.d.ts +15 -0
  936. package/dist/types/components/card-face/hit-area.d.ts +20 -0
  937. package/dist/types/components/card-face/vocabulary.d.ts +83 -0
  938. package/dist/types/components/chart/BarList.d.ts +27 -0
  939. package/dist/types/components/chart/LineChart.d.ts +64 -0
  940. package/dist/types/components/chart/ShareBar.d.ts +26 -0
  941. package/dist/types/components/chart/TimeSeriesChart.d.ts +60 -0
  942. package/dist/types/components/chart/label-metrics.d.ts +9 -0
  943. package/dist/types/components/chart/line-chart-axis.d.ts +14 -0
  944. package/dist/types/components/chart/line-chart-scale.d.ts +55 -0
  945. package/dist/types/components/chart/line-series-style.d.ts +14 -0
  946. package/dist/types/components/chart/share-bar-labels.d.ts +17 -0
  947. package/dist/types/components/chart/shared.d.ts +122 -0
  948. package/dist/types/components/chart/time-series-scale.d.ts +29 -0
  949. package/dist/types/components/chat/Attachment.d.ts +125 -0
  950. package/dist/types/components/chat/Chat.d.ts +60 -0
  951. package/dist/types/components/chat/Composer.d.ts +62 -0
  952. package/dist/types/components/chat/ContextMeter.d.ts +45 -0
  953. package/dist/types/components/chat/EffortControl.d.ts +23 -0
  954. package/dist/types/components/chat/FileCover.d.ts +14 -0
  955. package/dist/types/components/chat/Message.d.ts +66 -0
  956. package/dist/types/components/chat/MessageScroller.d.ts +18 -0
  957. package/dist/types/components/chat/ModelSelector.d.ts +44 -0
  958. package/dist/types/components/chat/StreamingMarkdown.d.ts +11 -0
  959. package/dist/types/components/chat/download-file.d.ts +7 -0
  960. package/dist/types/components/chat/file-icon.d.ts +29 -0
  961. package/dist/types/components/chat/types.d.ts +165 -0
  962. package/dist/types/components/checklist/StatusChecklist.d.ts +37 -0
  963. package/dist/types/components/checklist/index.d.ts +3 -0
  964. package/dist/types/components/checklist/tally.d.ts +19 -0
  965. package/dist/types/components/checklist/types.d.ts +28 -0
  966. package/dist/types/components/code-editor/context.d.ts +32 -0
  967. package/dist/types/components/code-editor/editing.d.ts +39 -0
  968. package/dist/types/components/code-editor/highlight.d.ts +20 -0
  969. package/dist/types/components/code-editor/recipe.d.ts +109 -0
  970. package/dist/types/components/date-timeline/DateTimeline.d.ts +99 -0
  971. package/dist/types/components/date-timeline/TimelineRow.d.ts +22 -0
  972. package/dist/types/components/date-timeline/useBarDrag.d.ts +15 -0
  973. package/dist/types/components/date-timeline/useMarkerDrag.d.ts +14 -0
  974. package/dist/types/components/date-timeline/useTimelineZoom.d.ts +23 -0
  975. package/dist/types/components/drag-drop/context.d.ts +85 -0
  976. package/dist/types/components/drag-drop/recipe.d.ts +163 -0
  977. package/dist/types/components/drag-drop/shift.d.ts +153 -0
  978. package/dist/types/components/edit/activation.d.ts +21 -0
  979. package/dist/types/components/edit/outcome.d.ts +29 -0
  980. package/dist/types/components/edit/use-edit-session.d.ts +77 -0
  981. package/dist/types/components/file-viewer/FileViewer.d.ts +2 -0
  982. package/dist/types/components/file-viewer/PageNumberJumpField.d.ts +9 -0
  983. package/dist/types/components/file-viewer/ViewerControls.d.ts +20 -0
  984. package/dist/types/components/file-viewer/ViewerRail.d.ts +10 -0
  985. package/dist/types/components/file-viewer/ViewerStage.d.ts +22 -0
  986. package/dist/types/components/file-viewer/frames.d.ts +28 -0
  987. package/dist/types/components/file-viewer/index.d.ts +3 -0
  988. package/dist/types/components/file-viewer/types.d.ts +70 -0
  989. package/dist/types/components/file-viewer/use-frame-cursor.d.ts +13 -0
  990. package/dist/types/components/file-viewer/use-viewer-keys.d.ts +24 -0
  991. package/dist/types/components/file-viewer/use-viewer-zoom.d.ts +29 -0
  992. package/dist/types/components/focus-web/FocusWeb.d.ts +3 -0
  993. package/dist/types/components/focus-web/index.d.ts +4 -0
  994. package/dist/types/components/focus-web/layout.d.ts +55 -0
  995. package/dist/types/components/focus-web/types.d.ts +131 -0
  996. package/dist/types/components/graph-explorer/GraphExplorer.d.ts +42 -0
  997. package/dist/types/components/graph-explorer/camera-math.d.ts +119 -0
  998. package/dist/types/components/graph-explorer/index.d.ts +5 -0
  999. package/dist/types/components/graph-explorer/tree-layout.d.ts +67 -0
  1000. package/dist/types/components/graph-explorer/types.d.ts +62 -0
  1001. package/dist/types/components/graph-explorer/use-camera.d.ts +81 -0
  1002. package/dist/types/components/graph-explorer/viewport-gesture.d.ts +32 -0
  1003. package/dist/types/components/kanban/KanbanBoard.d.ts +72 -0
  1004. package/dist/types/components/kanban/recipe.d.ts +73 -0
  1005. package/dist/types/components/kanban/types.d.ts +55 -0
  1006. package/dist/types/components/markdown/Affordances.d.ts +105 -0
  1007. package/dist/types/components/markdown/AttachmentStrip.d.ts +25 -0
  1008. package/dist/types/components/markdown/ImageUpload.d.ts +56 -0
  1009. package/dist/types/components/media-error.d.ts +11 -0
  1010. package/dist/types/components/nav-sections.d.ts +10 -0
  1011. package/dist/types/components/node-canvas/NodeCanvas.d.ts +66 -0
  1012. package/dist/types/components/node-canvas/index.d.ts +3 -0
  1013. package/dist/types/components/node-canvas/layout.d.ts +29 -0
  1014. package/dist/types/components/node-canvas/types.d.ts +207 -0
  1015. package/dist/types/components/node-canvas/use-canvas-gestures.d.ts +39 -0
  1016. package/dist/types/components/openapi/OpenApiViewer.d.ts +14 -0
  1017. package/dist/types/components/openapi/OperationCard.d.ts +33 -0
  1018. package/dist/types/components/openapi/SchemaView.d.ts +14 -0
  1019. package/dist/types/components/openapi/index.d.ts +6 -0
  1020. package/dist/types/components/openapi/resolve.d.ts +72 -0
  1021. package/dist/types/components/openapi/types.d.ts +128 -0
  1022. package/dist/types/components/overlay-shell.d.ts +48 -0
  1023. package/dist/types/components/overlay-stack.d.ts +18 -0
  1024. package/dist/types/components/paged-window/PageBlock.d.ts +31 -0
  1025. package/dist/types/components/provenance/ConfidenceBar.d.ts +118 -0
  1026. package/dist/types/components/provenance/ConfidenceMeter.d.ts +21 -0
  1027. package/dist/types/components/provenance/ConfidenceReadout.d.ts +17 -0
  1028. package/dist/types/components/provenance/ProvenanceBadge.d.ts +23 -0
  1029. package/dist/types/components/provenance/ProvenanceDetail.d.ts +109 -0
  1030. package/dist/types/components/provenance/ProvenanceDisclosure.d.ts +107 -0
  1031. package/dist/types/components/provenance/absence.d.ts +37 -0
  1032. package/dist/types/components/provenance/index.d.ts +7 -0
  1033. package/dist/types/components/provenance/types.d.ts +137 -0
  1034. package/dist/types/components/rbac/AccessRequestPanel.d.ts +92 -0
  1035. package/dist/types/components/rbac/AccountMenu.d.ts +46 -0
  1036. package/dist/types/components/rbac/AgentKeysList.d.ts +20 -0
  1037. package/dist/types/components/rbac/ApiKeysPanel.d.ts +26 -0
  1038. package/dist/types/components/rbac/ApiKeysTable.d.ts +63 -0
  1039. package/dist/types/components/rbac/Brand.d.ts +8 -0
  1040. package/dist/types/components/rbac/Can.d.ts +19 -0
  1041. package/dist/types/components/rbac/ChangePasswordForm.d.ts +18 -0
  1042. package/dist/types/components/rbac/DangerZone.d.ts +8 -0
  1043. package/dist/types/components/rbac/DevToolsPopover.d.ts +36 -0
  1044. package/dist/types/components/rbac/EndedLine.d.ts +21 -0
  1045. package/dist/types/components/rbac/InvitationsList.d.ts +39 -0
  1046. package/dist/types/components/rbac/InviteMembersDialog.d.ts +21 -0
  1047. package/dist/types/components/rbac/MembersPanel.d.ts +31 -0
  1048. package/dist/types/components/rbac/PermissionRequestPanel.d.ts +36 -0
  1049. package/dist/types/components/rbac/ProfileForm.d.ts +27 -0
  1050. package/dist/types/components/rbac/ProfilePage.d.ts +16 -0
  1051. package/dist/types/components/rbac/RBACProvider.d.ts +69 -0
  1052. package/dist/types/components/rbac/RoleEditorDialog.d.ts +28 -0
  1053. package/dist/types/components/rbac/RoleKeyPicker.d.ts +24 -0
  1054. package/dist/types/components/rbac/RolePermissionMatrix.d.ts +21 -0
  1055. package/dist/types/components/rbac/RolesPermissionsPage.d.ts +24 -0
  1056. package/dist/types/components/rbac/SessionsList.d.ts +35 -0
  1057. package/dist/types/components/rbac/TeamSettingsForm.d.ts +22 -0
  1058. package/dist/types/components/rbac/TeamSwitcher.d.ts +5 -0
  1059. package/dist/types/components/rbac/approvalPanelParts.d.ts +69 -0
  1060. package/dist/types/components/rbac/index.d.ts +25 -0
  1061. package/dist/types/components/rbac/permissionSections.d.ts +8 -0
  1062. package/dist/types/components/rbac/stagedForm.d.ts +25 -0
  1063. package/dist/types/components/rbac/types.d.ts +65 -0
  1064. package/dist/types/components/rbac/useStagedImage.d.ts +15 -0
  1065. package/dist/types/components/roadmap/PhaseManager.d.ts +19 -0
  1066. package/dist/types/components/roadmap/RoadmapItemCard.d.ts +51 -0
  1067. package/dist/types/components/roadmap/RoadmapPage.d.ts +12 -0
  1068. package/dist/types/components/roadmap/RoadmapSwimlaneBoard.d.ts +15 -0
  1069. package/dist/types/components/roadmap/TrackManager.d.ts +19 -0
  1070. package/dist/types/components/roadmap/UseCaseCard.d.ts +30 -0
  1071. package/dist/types/components/roadmap/UseCaseLedgerPage.d.ts +29 -0
  1072. package/dist/types/components/roadmap/chip-tones.d.ts +2 -0
  1073. package/dist/types/components/roadmap/derive.d.ts +39 -0
  1074. package/dist/types/components/roadmap/index.d.ts +10 -0
  1075. package/dist/types/components/roadmap/types.d.ts +86 -0
  1076. package/dist/types/components/stepper/Stepper.d.ts +79 -0
  1077. package/dist/types/components/stepper/derive.d.ts +49 -0
  1078. package/dist/types/components/stepper/index.d.ts +3 -0
  1079. package/dist/types/components/stepper/types.d.ts +118 -0
  1080. package/dist/types/icons/data.d.ts +2054 -0
  1081. package/dist/types/index.d.ts +209 -0
  1082. package/dist/types/lib/attention.d.ts +62 -0
  1083. package/dist/types/lib/board/anchor.d.ts +69 -0
  1084. package/dist/types/lib/board/index.d.ts +17 -0
  1085. package/dist/types/lib/board/model.d.ts +43 -0
  1086. package/dist/types/lib/board/move.d.ts +181 -0
  1087. package/dist/types/lib/board/position.d.ts +22 -0
  1088. package/dist/types/lib/board/rejection.d.ts +8 -0
  1089. package/dist/types/lib/board/types.d.ts +294 -0
  1090. package/dist/types/lib/board/use-board.d.ts +47 -0
  1091. package/dist/types/lib/calendar/band-packer.d.ts +53 -0
  1092. package/dist/types/lib/calendar/drag.d.ts +125 -0
  1093. package/dist/types/lib/calendar/index.d.ts +4 -0
  1094. package/dist/types/lib/calendar/lane-packer.d.ts +88 -0
  1095. package/dist/types/lib/calendar/segments.d.ts +91 -0
  1096. package/dist/types/lib/calendar/types.d.ts +166 -0
  1097. package/dist/types/lib/chart-palette.d.ts +14 -0
  1098. package/dist/types/lib/clipboard.d.ts +12 -0
  1099. package/dist/types/lib/cn.d.ts +7 -0
  1100. package/dist/types/lib/color.d.ts +14 -0
  1101. package/dist/types/lib/component-guidance.d.ts +15 -0
  1102. package/dist/types/lib/confidence.d.ts +28 -0
  1103. package/dist/types/lib/date-timeline/scale.d.ts +143 -0
  1104. package/dist/types/lib/design-frame/document.d.ts +39 -0
  1105. package/dist/types/lib/design-frame/mini-app-script.d.ts +29 -0
  1106. package/dist/types/lib/design-frame/mini-app.d.ts +17 -0
  1107. package/dist/types/lib/design-frame/protocol.d.ts +78 -0
  1108. package/dist/types/lib/dev-warn.d.ts +10 -0
  1109. package/dist/types/lib/dnd/announce.d.ts +124 -0
  1110. package/dist/types/lib/dnd/autoscroll.d.ts +88 -0
  1111. package/dist/types/lib/dnd/cross-drop.d.ts +18 -0
  1112. package/dist/types/lib/dnd/geometry.d.ts +126 -0
  1113. package/dist/types/lib/dnd/index.d.ts +17 -0
  1114. package/dist/types/lib/dnd/sensors/gesture.d.ts +37 -0
  1115. package/dist/types/lib/dnd/sensors/keyboard.d.ts +54 -0
  1116. package/dist/types/lib/dnd/sensors/pointer.d.ts +59 -0
  1117. package/dist/types/lib/dnd/session.d.ts +124 -0
  1118. package/dist/types/lib/dnd/types.d.ts +226 -0
  1119. package/dist/types/lib/dnd/use-drag.d.ts +82 -0
  1120. package/dist/types/lib/dom/scroll-ancestor.d.ts +15 -0
  1121. package/dist/types/lib/format.d.ts +33 -0
  1122. package/dist/types/lib/group-in-order.d.ts +13 -0
  1123. package/dist/types/lib/header-fold.d.ts +10 -0
  1124. package/dist/types/lib/i18n/areas/auth-provenance-flows.d.ts +287 -0
  1125. package/dist/types/lib/i18n/areas/board.d.ts +51 -0
  1126. package/dist/types/lib/i18n/areas/card-face.d.ts +8 -0
  1127. package/dist/types/lib/i18n/areas/chat-chart.d.ts +202 -0
  1128. package/dist/types/lib/i18n/areas/code-editor.d.ts +40 -0
  1129. package/dist/types/lib/i18n/areas/date-timeline.d.ts +36 -0
  1130. package/dist/types/lib/i18n/areas/dates.d.ts +103 -0
  1131. package/dist/types/lib/i18n/areas/docs-views.d.ts +297 -0
  1132. package/dist/types/lib/i18n/areas/feedback.d.ts +132 -0
  1133. package/dist/types/lib/i18n/areas/formats.d.ts +30 -0
  1134. package/dist/types/lib/i18n/areas/forms.d.ts +182 -0
  1135. package/dist/types/lib/i18n/areas/keys.d.ts +15 -0
  1136. package/dist/types/lib/i18n/areas/markdown.d.ts +150 -0
  1137. package/dist/types/lib/i18n/areas/move-rejected.d.ts +16 -0
  1138. package/dist/types/lib/i18n/areas/navigation.d.ts +185 -0
  1139. package/dist/types/lib/i18n/areas/rbac.d.ts +633 -0
  1140. package/dist/types/lib/i18n/emphasis.d.ts +3 -0
  1141. package/dist/types/lib/i18n/index.d.ts +10 -0
  1142. package/dist/types/lib/i18n/number-format.d.ts +5 -0
  1143. package/dist/types/lib/i18n/plural.d.ts +7 -0
  1144. package/dist/types/lib/i18n/provider.d.ts +16 -0
  1145. package/dist/types/lib/i18n/strings.d.ts +18 -0
  1146. package/dist/types/lib/icons.d.ts +22 -0
  1147. package/dist/types/lib/interactive-target.d.ts +3 -0
  1148. package/dist/types/lib/intl-cache.d.ts +31 -0
  1149. package/dist/types/lib/legal-document.d.ts +82 -0
  1150. package/dist/types/lib/line-diff-model.d.ts +39 -0
  1151. package/dist/types/lib/markdown/attachments.d.ts +50 -0
  1152. package/dist/types/lib/markdown/caret-map.d.ts +69 -0
  1153. package/dist/types/lib/markdown/caret.d.ts +6 -0
  1154. package/dist/types/lib/markdown/commands.d.ts +186 -0
  1155. package/dist/types/lib/markdown/convert.d.ts +99 -0
  1156. package/dist/types/lib/markdown/dom.d.ts +30 -0
  1157. package/dist/types/lib/markdown/edit.d.ts +16 -0
  1158. package/dist/types/lib/markdown/history.d.ts +59 -0
  1159. package/dist/types/lib/markdown/hotkeys.d.ts +63 -0
  1160. package/dist/types/lib/markdown/image-pipeline.d.ts +173 -0
  1161. package/dist/types/lib/markdown/images.d.ts +138 -0
  1162. package/dist/types/lib/markdown/input.d.ts +38 -0
  1163. package/dist/types/lib/markdown/keys.d.ts +34 -0
  1164. package/dist/types/lib/markdown/paste.d.ts +9 -0
  1165. package/dist/types/lib/markdown/position.d.ts +43 -0
  1166. package/dist/types/lib/markdown/project.d.ts +88 -0
  1167. package/dist/types/lib/markdown/reconcile.d.ts +63 -0
  1168. package/dist/types/lib/markdown/surface.d.ts +236 -0
  1169. package/dist/types/lib/motion.d.ts +30 -0
  1170. package/dist/types/lib/pad.d.ts +6 -0
  1171. package/dist/types/lib/paged-window/index.d.ts +2 -0
  1172. package/dist/types/lib/paged-window/layout.d.ts +21 -0
  1173. package/dist/types/lib/paged-window/list-owner.d.ts +12 -0
  1174. package/dist/types/lib/paged-window/records-binding.d.ts +102 -0
  1175. package/dist/types/lib/paged-window/store.d.ts +307 -0
  1176. package/dist/types/lib/paged-window/use-measured-pitch.d.ts +34 -0
  1177. package/dist/types/lib/paged-window/use-page-visibility.d.ts +20 -0
  1178. package/dist/types/lib/paged-window/use-paged-window.d.ts +61 -0
  1179. package/dist/types/lib/paged-window/use-scroll-root.d.ts +18 -0
  1180. package/dist/types/lib/persist.d.ts +57 -0
  1181. package/dist/types/lib/preference-values.d.ts +72 -0
  1182. package/dist/types/lib/preferences.d.ts +26 -0
  1183. package/dist/types/lib/reads/hooks.d.ts +49 -0
  1184. package/dist/types/lib/reads/index.d.ts +5 -0
  1185. package/dist/types/lib/reads/optimistic.d.ts +119 -0
  1186. package/dist/types/lib/reads/refetch.d.ts +83 -0
  1187. package/dist/types/lib/reads/slots.d.ts +137 -0
  1188. package/dist/types/lib/reads/types.d.ts +155 -0
  1189. package/dist/types/lib/realtime/hooks.d.ts +38 -0
  1190. package/dist/types/lib/realtime/index.d.ts +4 -0
  1191. package/dist/types/lib/realtime/provider.d.ts +38 -0
  1192. package/dist/types/lib/realtime/registry.d.ts +225 -0
  1193. package/dist/types/lib/realtime/types.d.ts +242 -0
  1194. package/dist/types/lib/records/define-record-type.d.ts +29 -0
  1195. package/dist/types/lib/records/hooks.d.ts +46 -0
  1196. package/dist/types/lib/records/index.d.ts +5 -0
  1197. package/dist/types/lib/records/store.d.ts +289 -0
  1198. package/dist/types/lib/records/types.d.ts +195 -0
  1199. package/dist/types/lib/records/wire.d.ts +96 -0
  1200. package/dist/types/lib/reduced-motion-help.d.ts +23 -0
  1201. package/dist/types/lib/scroll-caret.d.ts +6 -0
  1202. package/dist/types/lib/sim/createSimStore.d.ts +18 -0
  1203. package/dist/types/lib/sim/index.d.ts +5 -0
  1204. package/dist/types/lib/sim/latency.d.ts +10 -0
  1205. package/dist/types/lib/sim/registry.d.ts +14 -0
  1206. package/dist/types/lib/sim/settings.d.ts +11 -0
  1207. package/dist/types/lib/sim/types.d.ts +3 -0
  1208. package/dist/types/lib/submit-shortcut.d.ts +24 -0
  1209. package/dist/types/lib/syntax/index.d.ts +16 -0
  1210. package/dist/types/lib/syntax/languages/bash.d.ts +1 -0
  1211. package/dist/types/lib/syntax/languages/css.d.ts +1 -0
  1212. package/dist/types/lib/syntax/languages/html.d.ts +17 -0
  1213. package/dist/types/lib/syntax/languages/index.d.ts +33 -0
  1214. package/dist/types/lib/syntax/languages/javascript.d.ts +22 -0
  1215. package/dist/types/lib/syntax/languages/json.d.ts +1 -0
  1216. package/dist/types/lib/syntax/languages/mongodb.d.ts +1 -0
  1217. package/dist/types/lib/syntax/languages/plain.d.ts +9 -0
  1218. package/dist/types/lib/syntax/languages/sql.d.ts +4 -0
  1219. package/dist/types/lib/syntax/languages/vue.d.ts +1 -0
  1220. package/dist/types/lib/syntax/languages/yaml.d.ts +1 -0
  1221. package/dist/types/lib/syntax/markdown/frames.d.ts +145 -0
  1222. package/dist/types/lib/syntax/markdown/grammar.d.ts +1 -0
  1223. package/dist/types/lib/syntax/markdown/index.d.ts +5 -0
  1224. package/dist/types/lib/syntax/markdown/inline.d.ts +21 -0
  1225. package/dist/types/lib/syntax/markdown/parse.d.ts +15 -0
  1226. package/dist/types/lib/syntax/markdown/refs.d.ts +47 -0
  1227. package/dist/types/lib/syntax/markdown/render.d.ts +25 -0
  1228. package/dist/types/lib/syntax/markdown/spans.d.ts +84 -0
  1229. package/dist/types/lib/syntax/markdown/types.d.ts +108 -0
  1230. package/dist/types/lib/syntax/registry.d.ts +37 -0
  1231. package/dist/types/lib/syntax/tokenize.d.ts +17 -0
  1232. package/dist/types/lib/syntax/types.d.ts +119 -0
  1233. package/dist/types/lib/time/index.d.ts +4 -0
  1234. package/dist/types/lib/time/instant.d.ts +2 -0
  1235. package/dist/types/lib/time/plain.d.ts +61 -0
  1236. package/dist/types/lib/time/relativeAge.d.ts +18 -0
  1237. package/dist/types/lib/time/relativeClock.d.ts +8 -0
  1238. package/dist/types/lib/time/types.d.ts +87 -0
  1239. package/dist/types/lib/time/zone.d.ts +106 -0
  1240. package/dist/types/lib/use-controllable.d.ts +14 -0
  1241. package/dist/types/lib/use-fill-height.d.ts +26 -0
  1242. package/dist/types/lib/use-hydrated.d.ts +8 -0
  1243. package/dist/types/lib/use-media-query.d.ts +29 -0
  1244. package/dist/types/lib/use-relabel-base-ui-dismiss.d.ts +6 -0
  1245. package/dist/types/lib/use-release-snap-drag.d.ts +25 -0
  1246. package/dist/types/lib/use-roving-options.d.ts +10 -0
  1247. package/dist/types/lib/values/absent.d.ts +7 -0
  1248. package/dist/types/lib/values/boolean.d.ts +29 -0
  1249. package/dist/types/lib/values/currency.d.ts +22 -0
  1250. package/dist/types/lib/values/date.d.ts +30 -0
  1251. package/dist/types/lib/values/datetime.d.ts +48 -0
  1252. package/dist/types/lib/values/index.d.ts +5 -0
  1253. package/dist/types/lib/values/locale-date.d.ts +34 -0
  1254. package/dist/types/lib/values/number.d.ts +27 -0
  1255. package/dist/types/pure.d.ts +48 -0
  1256. package/package.json +136 -4
@@ -0,0 +1,217 @@
1
+ import { jsx as t, jsxs as c } from "react/jsx-runtime";
2
+ import { useId as h } from "react";
3
+ import { Toast as i } from "@base-ui/react/toast";
4
+ import { cn as u } from "../lib/cn.js";
5
+ import { Icon as f } from "./Icon.js";
6
+ import { Button as b } from "./Button.js";
7
+ import { IconButton as w } from "./IconButton.js";
8
+ import { useUiStrings as v } from "../lib/i18n/provider.js";
9
+ const x = {
10
+ info: { icon: "info", className: "text-info" },
11
+ success: { icon: "circle-check", className: "text-success" },
12
+ warning: { icon: "triangle-alert", className: "text-warning" },
13
+ error: { icon: "circle-x", className: "text-danger" },
14
+ loading: { icon: "loader-circle", className: "text-accent animate-spin" }
15
+ }, g = ({ className: e }) => /* @__PURE__ */ t(i.Action, { className: e, render: /* @__PURE__ */ t(b, { size: "sm", variant: "outline" }) });
16
+ function N({
17
+ hasAction: e,
18
+ tone: s,
19
+ onClick: o,
20
+ closeLabel: a
21
+ }) {
22
+ const r = h(), n = /* @__PURE__ */ t(
23
+ i.Close,
24
+ {
25
+ render: (
26
+ /* The name moved from the Base UI slot onto the control
27
+ itself. It was reaching the button either way, but only
28
+ `IconButton`'s required `label` makes it impossible to
29
+ drop — which is the whole point of routing through it. */
30
+ /* @__PURE__ */ t(
31
+ w,
32
+ {
33
+ label: a,
34
+ hideTooltip: !0,
35
+ size: "xs",
36
+ icon: /* @__PURE__ */ t(f, { name: "x", size: "xs" })
37
+ }
38
+ )
39
+ )
40
+ }
41
+ ), l = /* @__PURE__ */ t(f, { name: s.icon, size: "md", className: u("mt-px", s.className) }), m = /* @__PURE__ */ t(
42
+ i.Title,
43
+ {
44
+ id: o ? r : void 0,
45
+ className: "text-sm font-semibold text-primary"
46
+ }
47
+ ), p = /* @__PURE__ */ t(
48
+ i.Description,
49
+ {
50
+ render: /* @__PURE__ */ t("div", {}),
51
+ className: "mt-0.5 text-xs text-secondary text-pretty"
52
+ }
53
+ );
54
+ return o ? /* @__PURE__ */ c("div", { className: "flex items-start gap-3", children: [
55
+ /* @__PURE__ */ c("div", { className: "min-w-0 flex-1", children: [
56
+ /* @__PURE__ */ c(
57
+ "div",
58
+ {
59
+ role: "button",
60
+ tabIndex: 0,
61
+ "aria-labelledby": r,
62
+ onClick: o,
63
+ onKeyDown: (d) => {
64
+ d.target === d.currentTarget && (d.key === "Enter" || d.key === " ") && (d.preventDefault(), o());
65
+ },
66
+ className: u(
67
+ "-m-1 flex cursor-pointer items-start gap-3 rounded-lg p-1 outline-none",
68
+ "transition-[var(--tx-colors)] hover:bg-surface-hover",
69
+ "focus-visible:ring-2 focus-visible:ring-accent"
70
+ ),
71
+ children: [
72
+ l,
73
+ /* @__PURE__ */ c("div", { className: "min-w-0 flex-1", children: [
74
+ m,
75
+ p
76
+ ] })
77
+ ]
78
+ }
79
+ ),
80
+ e ? /* @__PURE__ */ t(g, { className: "mt-2.5 ml-8" }) : null
81
+ ] }),
82
+ n
83
+ ] }) : /* @__PURE__ */ c("div", { className: "flex items-start gap-3", children: [
84
+ l,
85
+ /* @__PURE__ */ c("div", { className: "min-w-0 flex-1", children: [
86
+ m,
87
+ p,
88
+ e ? /* @__PURE__ */ t(g, { className: "mt-2.5" }) : null
89
+ ] }),
90
+ n
91
+ ] });
92
+ }
93
+ const T = {
94
+ "top-right": "top-4 right-4",
95
+ "top-center": "top-4 left-1/2 -translate-x-1/2",
96
+ "bottom-right": "bottom-4 right-4",
97
+ "bottom-center": "bottom-4 left-1/2 -translate-x-1/2"
98
+ };
99
+ function j({ position: e = "bottom-right" }) {
100
+ const s = v().toast, { toasts: o } = i.useToastManager(), a = e.startsWith("top");
101
+ return /* @__PURE__ */ t(i.Portal, { children: /* @__PURE__ */ t(
102
+ i.Viewport,
103
+ {
104
+ "aria-label": s.viewport,
105
+ className: u(
106
+ "fixed z-(--z-toast) flex w-[min(24rem,calc(100vw-2rem))] flex-col outline-none",
107
+ T[e]
108
+ ),
109
+ children: o.map((r, n) => {
110
+ const l = x[r.type ?? "info"] ?? x.info;
111
+ return /* @__PURE__ */ t(
112
+ i.Root,
113
+ {
114
+ toast: r,
115
+ className: u(
116
+ /* dx-toast is a stable hook for the overlay screenshot pass —
117
+ Base UI gives the root role="dialog", which is not something
118
+ a test can select on unambiguously. */
119
+ "dx-toast absolute inset-x-0 select-none",
120
+ a ? "top-0" : "bottom-0",
121
+ "dx-ground-overlay rounded-xl border border-border bg-surface-overlay p-4 shadow-lg",
122
+ "transition-[var(--tx-colors),opacity,transform] duration-(--dur-slower) ease-emphasis",
123
+ /* The stack expression. `--toast-offset-y` is the summed height
124
+ of the toasts in front, so cards of different heights still
125
+ nest correctly instead of overlapping their own text.
126
+
127
+ IT ALREADY CARRIES UNITS — Base UI publishes it as `73px`,
128
+ not `73`. Multiplying it by `1px` gave `calc(73px * 1px)`,
129
+ which is an area, not a length; CSS dropped the whole
130
+ declaration and every toast landed at the same y, the
131
+ scaled-down ones hidden inside the front one. No error, no
132
+ warning, and the stack simply never existed. Multiply by the
133
+ unitless `-1` to flip direction, and use the value directly
134
+ when it does not need flipping. */
135
+ a ? "translate-y-[var(--toast-offset-y)]" : "translate-y-[calc(var(--toast-offset-y)*-1)]",
136
+ "scale-[calc(1-var(--toast-index)*0.05)]",
137
+ "data-[expanded]:scale-100",
138
+ /* Entry comes from OFF the edge it lives on, so the toast
139
+ reads as sliding in from outside the viewport rather than
140
+ materialising over the content. */
141
+ a ? "data-starting-style:-translate-y-full" : "data-starting-style:translate-y-full",
142
+ "data-starting-style:opacity-0",
143
+ "data-ending-style:opacity-0 data-ending-style:duration-(--dur-exit-slow)",
144
+ /* Swiped away: follow the finger out rather than fading in
145
+ place, which feels like the gesture was ignored. */
146
+ "data-[swipe-direction=right]:data-ending-style:translate-x-full",
147
+ "data-[swipe-direction=left]:data-ending-style:-translate-x-full",
148
+ r.limited && "opacity-0"
149
+ ),
150
+ style: { zIndex: o.length - n },
151
+ swipeDirection: a ? "up" : "down",
152
+ children: /* @__PURE__ */ t(
153
+ N,
154
+ {
155
+ hasAction: !!r.actionProps,
156
+ tone: l,
157
+ onClick: r.data?.onClick,
158
+ closeLabel: s.dismiss
159
+ }
160
+ )
161
+ },
162
+ r.id
163
+ );
164
+ })
165
+ }
166
+ ) });
167
+ }
168
+ function A({ children: e, limit: s = 3 }) {
169
+ return /* @__PURE__ */ t(i.Provider, { limit: s, children: e });
170
+ }
171
+ const y = {
172
+ info: 5e3,
173
+ success: 4e3,
174
+ warning: 7e3,
175
+ /* An error someone never read is an error that will happen again. */
176
+ error: 0,
177
+ /* A loading toast ends when the work does, not on a clock. */
178
+ loading: 0
179
+ };
180
+ function K() {
181
+ const e = i.useToastManager();
182
+ return {
183
+ show({ title: s, description: o, tone: a = "info", timeout: r, action: n, onClick: l, onClose: m }) {
184
+ return e.add({
185
+ title: s,
186
+ description: o,
187
+ type: a,
188
+ timeout: r ?? y[a],
189
+ priority: a === "error" ? "high" : "low",
190
+ onClose: m,
191
+ ...l ? { data: { onClick: l } } : {},
192
+ ...n ? { actionProps: { children: n.label, onClick: n.onClick } } : {}
193
+ });
194
+ },
195
+ promise(s, o) {
196
+ const a = e.add({
197
+ title: o.loading,
198
+ type: "loading",
199
+ timeout: 0
200
+ });
201
+ return s.then((r) => (e.update(a, {
202
+ title: o.success,
203
+ type: "success",
204
+ timeout: y.success
205
+ }), r)).catch((r) => {
206
+ throw e.update(a, { title: o.error, type: "error", timeout: 0 }), r;
207
+ });
208
+ },
209
+ close: e.close
210
+ };
211
+ }
212
+ export {
213
+ A as ToastProvider,
214
+ j as Toaster,
215
+ K as useToast
216
+ };
217
+ //# sourceMappingURL=Toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toast.js","sources":["../../src/components/Toast.tsx"],"sourcesContent":["import { useId, type KeyboardEvent, type ReactNode } from \"react\";\nimport { Toast as BaseToast } from \"@base-ui/react/toast\";\nimport { cn } from \"../lib/cn\";\nimport { useUiStrings } from \"../lib/i18n\";\nimport { Icon, type IconName } from \"./Icon\";\nimport { Button } from \"./Button\";\nimport { IconButton } from \"./IconButton\";\n\n/* ============================================================================\n TOAST\n\n THE STACK IS THE HARD PART, AND IT IS SOLVED WITH ONE VARIABLE.\n\n Toasts do not sit in a list — they sit on top of each other, the front one\n readable and the ones behind it peeking out, scaled down and dimmed. Base UI\n exposes `--toast-index` and `--toast-offset-y` on each toast, so the whole\n effect is a transform expression rather than any layout maths:\n\n translateY push back by the accumulated height of everything in front\n scale shrink 5% per position, so depth reads without a shadow trick\n opacity fade out past the third, so a burst does not become a wall\n\n All three are transform/opacity, so a stack of ten animates on the\n compositor no matter how much text each one holds.\n\n TIMING IS SEMANTIC. An error stays until dismissed (timeout 0) because a\n failure someone did not read is a failure that will happen again; success\n leaves on its own, because it needs acknowledging, not acting on.\n ========================================================================= */\n\nconst TONE: Record<string, { icon: IconName; className: string }> = {\n info: { icon: \"info\", className: \"text-info\" },\n success: { icon: \"circle-check\", className: \"text-success\" },\n warning: { icon: \"triangle-alert\", className: \"text-warning\" },\n error: { icon: \"circle-x\", className: \"text-danger\" },\n loading: { icon: \"loader-circle\", className: \"text-accent animate-spin\" },\n};\n\nexport type ToastTone = keyof typeof TONE;\n\ninterface ToastData {\n onClick?: () => void;\n}\n\nconst ToastAction = ({ className }: { className?: string }) => (\n <BaseToast.Action className={className} render={<Button size=\"sm\" variant=\"outline\" />} />\n);\n\n/**\n * DXUI-13: with `onClick` the icon, title and description are ONE pressable\n * region (role=button, Tab, Enter/Space, named from the title). The action and\n * the close button sit outside it, so pressing them can never reach `onClick`.\n * Without `onClick` the markup is exactly what it was before.\n */\nfunction ToastBody({\n hasAction,\n tone,\n onClick,\n closeLabel,\n}: {\n hasAction: boolean;\n tone: { icon: IconName; className: string };\n onClick?: () => void;\n closeLabel: string;\n}) {\n const titleId = useId();\n const close = (\n <BaseToast.Close\n render={\n /* The name moved from the Base UI slot onto the control\n itself. It was reaching the button either way, but only\n `IconButton`'s required `label` makes it impossible to\n drop — which is the whole point of routing through it. */\n <IconButton\n label={closeLabel}\n hideTooltip\n size=\"xs\"\n icon={<Icon name=\"x\" size=\"xs\" />}\n />\n }\n />\n );\n const icon = <Icon name={tone.icon} size=\"md\" className={cn(\"mt-px\", tone.className)} />;\n const title = (\n <BaseToast.Title\n id={onClick ? titleId : undefined}\n className=\"text-sm font-semibold text-primary\"\n />\n );\n /* `render={<div />}` rather than the default `<p>`. `description`\n is typed `ReactNode` (below), not `string` — a caller passing\n block content (a progress bar, a list) inside a `<p>` produces\n invalid HTML: the browser silently closes the `<p>` at the first\n nested block element, splitting the DOM out from under\n `aria-describedby` and anything a test or a screen reader\n expects to find inside it. `BaseToast.Description` still emits\n the same id/aria wiring either way — only the tag changes. */\n const description = (\n <BaseToast.Description\n render={<div />}\n className=\"mt-0.5 text-xs text-secondary text-pretty\"\n />\n );\n\n if (!onClick) {\n return (\n <div className=\"flex items-start gap-3\">\n {icon}\n <div className=\"min-w-0 flex-1\">\n {title}\n {description}\n {hasAction ? <ToastAction className=\"mt-2.5\" /> : null}\n </div>\n {close}\n </div>\n );\n }\n\n const onKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n if (event.target !== event.currentTarget) return;\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n onClick();\n }\n };\n return (\n <div className=\"flex items-start gap-3\">\n <div className=\"min-w-0 flex-1\">\n <div\n role=\"button\"\n tabIndex={0}\n aria-labelledby={titleId}\n onClick={onClick}\n onKeyDown={onKeyDown}\n className={cn(\n \"-m-1 flex cursor-pointer items-start gap-3 rounded-lg p-1 outline-none\",\n \"transition-[var(--tx-colors)] hover:bg-surface-hover\",\n \"focus-visible:ring-2 focus-visible:ring-accent\",\n )}\n >\n {icon}\n <div className=\"min-w-0 flex-1\">\n {title}\n {description}\n </div>\n </div>\n {/* ml-8 = icon width (md) + gap-3, so the action lines up under the title. */}\n {hasAction ? <ToastAction className=\"mt-2.5 ml-8\" /> : null}\n </div>\n {close}\n </div>\n );\n}\n\nexport interface ToasterProps {\n /** Where the stack lives. Bottom-right keeps it clear of primary content. */\n position?: \"top-right\" | \"top-center\" | \"bottom-right\" | \"bottom-center\";\n}\n\nconst POSITION: Record<NonNullable<ToasterProps[\"position\"]>, string> = {\n \"top-right\": \"top-4 right-4\",\n \"top-center\": \"top-4 left-1/2 -translate-x-1/2\",\n \"bottom-right\": \"bottom-4 right-4\",\n \"bottom-center\": \"bottom-4 left-1/2 -translate-x-1/2\",\n};\n\n/** Renders the stack. Mount once, inside `ToastProvider`. */\nexport function Toaster({ position = \"bottom-right\" }: ToasterProps) {\n const strings = useUiStrings().toast;\n const { toasts } = BaseToast.useToastManager();\n const fromTop = position.startsWith(\"top\");\n\n return (\n <BaseToast.Portal>\n <BaseToast.Viewport\n aria-label={strings.viewport}\n className={cn(\n \"fixed z-(--z-toast) flex w-[min(24rem,calc(100vw-2rem))] flex-col outline-none\",\n POSITION[position],\n )}\n >\n {toasts.map((toast, index) => {\n // I18N-ALLOW: toast type token used as a key into the tone table\n const tone = TONE[toast.type ?? \"info\"] ?? TONE.info;\n return (\n <BaseToast.Root\n key={toast.id}\n toast={toast}\n className={cn(\n /* dx-toast is a stable hook for the overlay screenshot pass —\n Base UI gives the root role=\"dialog\", which is not something\n a test can select on unambiguously. */\n \"dx-toast absolute inset-x-0 select-none\",\n fromTop ? \"top-0\" : \"bottom-0\",\n \"dx-ground-overlay rounded-xl border border-border bg-surface-overlay p-4 shadow-lg\",\n \"transition-[var(--tx-colors),opacity,transform] duration-(--dur-slower) ease-emphasis\",\n /* The stack expression. `--toast-offset-y` is the summed height\n of the toasts in front, so cards of different heights still\n nest correctly instead of overlapping their own text.\n\n IT ALREADY CARRIES UNITS — Base UI publishes it as `73px`,\n not `73`. Multiplying it by `1px` gave `calc(73px * 1px)`,\n which is an area, not a length; CSS dropped the whole\n declaration and every toast landed at the same y, the\n scaled-down ones hidden inside the front one. No error, no\n warning, and the stack simply never existed. Multiply by the\n unitless `-1` to flip direction, and use the value directly\n when it does not need flipping. */\n fromTop\n ? \"translate-y-[var(--toast-offset-y)]\"\n : \"translate-y-[calc(var(--toast-offset-y)*-1)]\",\n \"scale-[calc(1-var(--toast-index)*0.05)]\",\n \"data-[expanded]:scale-100\",\n /* Entry comes from OFF the edge it lives on, so the toast\n reads as sliding in from outside the viewport rather than\n materialising over the content. */\n fromTop\n ? \"data-starting-style:-translate-y-full\"\n : \"data-starting-style:translate-y-full\",\n \"data-starting-style:opacity-0\",\n \"data-ending-style:opacity-0 data-ending-style:duration-(--dur-exit-slow)\",\n /* Swiped away: follow the finger out rather than fading in\n place, which feels like the gesture was ignored. */\n \"data-[swipe-direction=right]:data-ending-style:translate-x-full\",\n \"data-[swipe-direction=left]:data-ending-style:-translate-x-full\",\n toast.limited && \"opacity-0\",\n )}\n /* Newest toast frontmost. `toasts` is newest-first, so the\n z-index has to COUNT DOWN with the index — the first version\n gave every toast the same value, which left DOM order to\n decide and put the oldest on top of the newest. */\n style={{ zIndex: toasts.length - index }}\n swipeDirection={fromTop ? \"up\" : \"down\"}\n >\n <ToastBody\n hasAction={Boolean(toast.actionProps)}\n tone={tone}\n onClick={(toast.data as ToastData | undefined)?.onClick}\n closeLabel={strings.dismiss}\n />\n </BaseToast.Root>\n );\n })}\n </BaseToast.Viewport>\n </BaseToast.Portal>\n );\n}\n\nexport interface ToastProviderProps {\n children: ReactNode;\n limit?: number;\n}\n\nexport function ToastProvider({ children, limit = 3 }: ToastProviderProps) {\n return <BaseToast.Provider limit={limit}>{children}</BaseToast.Provider>;\n}\n\n/** Default lifetimes, in ms. `0` means \"stays until dismissed\". */\nconst TIMEOUT: Record<ToastTone, number> = {\n info: 5000,\n success: 4000,\n warning: 7000,\n /* An error someone never read is an error that will happen again. */\n error: 0,\n /* A loading toast ends when the work does, not on a clock. */\n loading: 0,\n};\n\nexport interface ToastOptions {\n title: ReactNode;\n description?: ReactNode;\n tone?: ToastTone;\n /** Override the tone's default lifetime. `0` keeps it until dismissed. */\n timeout?: number;\n action?: { label: string; onClick: () => void };\n /**\n * Makes the toast body (icon, title, description) one pressable region:\n * pointer cursor, hover and focus styles, Tab, Enter and Space, named from\n * the title. The close button and `action` stay separate targets and never\n * fire it. It does not close the toast; call `close(id)` to do that.\n * `description` must hold no interactive content when `onClick` is set: it\n * sits inside the pressable region.\n */\n onClick?: () => void;\n /**\n * Called when this toast leaves the stack — by its own close button, by\n * swipe, by timeout, or by a caller's own `close(id)`. For a caller that\n * needs to know WHETHER a toast it raised is still up (a reopen affordance\n * beside a dismissed notification, say) without holding a reference to the\n * manager itself.\n */\n onClose?: () => void;\n}\n\n/**\n * Raise toasts from anywhere under `ToastProvider`.\n *\n * `promise` is the one worth reaching for: it shows a loading toast, then\n * swaps that SAME toast to success or error in place. Two separate toasts for\n * one operation makes the stack tell a story nobody asked for.\n */\nexport function useToast() {\n const manager = BaseToast.useToastManager();\n\n return {\n show({ title, description, tone = \"info\", timeout, action, onClick, onClose }: ToastOptions) {\n return manager.add({\n title,\n description,\n type: tone,\n timeout: timeout ?? TIMEOUT[tone],\n priority: tone === \"error\" ? \"high\" : \"low\",\n onClose,\n ...(onClick ? { data: { onClick } satisfies ToastData } : {}),\n ...(action\n ? { actionProps: { children: action.label, onClick: action.onClick } }\n : {}),\n });\n },\n promise<T>(\n promise: Promise<T>,\n messages: { loading: ReactNode; success: ReactNode; error: ReactNode },\n ) {\n const id = manager.add({\n title: messages.loading,\n type: \"loading\",\n timeout: 0,\n });\n return promise\n .then((value) => {\n manager.update(id, {\n title: messages.success,\n type: \"success\",\n timeout: TIMEOUT.success,\n });\n return value;\n })\n .catch((error: unknown) => {\n manager.update(id, { title: messages.error, type: \"error\", timeout: 0 });\n throw error;\n });\n },\n close: manager.close,\n };\n}\n"],"names":["TONE","ToastAction","className","BaseToast","jsx","Button","ToastBody","hasAction","tone","onClick","closeLabel","titleId","useId","close","IconButton","Icon","icon","cn","title","description","jsxs","event","POSITION","Toaster","position","strings","useUiStrings","toasts","fromTop","toast","index","ToastProvider","children","limit","TIMEOUT","useToast","manager","timeout","action","onClose","promise","messages","id","value","error"],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ import { jsx as a, jsxs as m } from "react/jsx-runtime";
2
+ import { Toggle as u } from "@base-ui/react/toggle";
3
+ import { ToggleGroup as c } from "@base-ui/react/toggle-group";
4
+ import { Toolbar as l } from "@base-ui/react/toolbar";
5
+ import { tv as p } from "tailwind-variants";
6
+ import { cn as n } from "../lib/cn.js";
7
+ import { buttonVariants as b } from "./Button.js";
8
+ import { Input as f } from "./Input.js";
9
+ import { PendingVeil as g } from "./PendingVeil.js";
10
+ const x = p({
11
+ base: [
12
+ "inline-flex shrink-0 cursor-pointer items-center justify-center gap-2",
13
+ "rounded-md font-medium whitespace-nowrap text-secondary",
14
+ "transition-[var(--tx-colors),box-shadow] duration-(--dur-fast) ease-hover",
15
+ "hover:not-data-disabled:bg-surface-hover hover:not-data-disabled:text-primary",
16
+ "data-pressed:bg-control-subtle data-pressed:text-control-text",
17
+ /* Pressed AND hovered. The hover rule above carries three conditions and
18
+ `data-pressed:` carries one, so without this a pressed toggle painted
19
+ itself UNPRESSED for as long as the pointer sat on it. */
20
+ "data-pressed:hover:not-data-disabled:bg-control-subtle-hover",
21
+ "data-disabled:pointer-events-none data-disabled:opacity-45",
22
+ "active:not-data-disabled:scale-[0.97]"
23
+ ],
24
+ variants: {
25
+ size: {
26
+ sm: "h-control-sm px-2.5 text-xs",
27
+ md: "h-control-md px-3 text-sm",
28
+ lg: "h-control-lg px-4 text-md"
29
+ },
30
+ iconOnly: { true: "px-0 aspect-square", false: "" }
31
+ },
32
+ defaultVariants: { size: "md", iconOnly: !1 }
33
+ });
34
+ function I({ size: r, iconOnly: t, className: e, children: o, ref: s, ...i }) {
35
+ return /* @__PURE__ */ a(u, { ref: s, className: n(x({ size: r, iconOnly: t }), e), ...i, children: o });
36
+ }
37
+ function V({
38
+ className: r,
39
+ variant: t = "plain",
40
+ loading: e = !1,
41
+ disabled: o,
42
+ children: s,
43
+ ref: i,
44
+ ...d
45
+ }) {
46
+ return /* @__PURE__ */ m(
47
+ c,
48
+ {
49
+ ref: i,
50
+ disabled: o || e,
51
+ "data-loading": e || void 0,
52
+ "aria-busy": e || void 0,
53
+ className: n(
54
+ "relative inline-flex items-center gap-1",
55
+ /* DXUI-51: a track never outgrows its container. Options that do not fit
56
+ share rows (flex-wrap), and one option wider than the track wraps its
57
+ own text (whitespace-normal, h-auto with the size's height as a floor)
58
+ instead of spilling past the rim. Options that fit are unchanged. */
59
+ t === "segmented" && [
60
+ "max-w-full flex-wrap rounded-lg border border-border bg-surface-inset p-1",
61
+ "*:max-w-full *:min-w-0 *:h-auto *:min-h-control-sm *:py-1 *:text-center *:whitespace-normal"
62
+ ],
63
+ r
64
+ ),
65
+ ...d,
66
+ children: [
67
+ s,
68
+ e && /* @__PURE__ */ a(g, {})
69
+ ]
70
+ }
71
+ );
72
+ }
73
+ function $({ className: r, children: t, ref: e, ...o }) {
74
+ return /* @__PURE__ */ a(
75
+ l.Root,
76
+ {
77
+ ref: e,
78
+ className: n(
79
+ "flex min-w-0 flex-wrap items-center gap-1 rounded-lg border border-border bg-surface p-1.5",
80
+ r
81
+ ),
82
+ ...o,
83
+ children: t
84
+ }
85
+ );
86
+ }
87
+ function k({ className: r }) {
88
+ return /* @__PURE__ */ a(
89
+ l.Separator,
90
+ {
91
+ className: n("mx-1 h-5 w-px shrink-0 self-center bg-border", r)
92
+ }
93
+ );
94
+ }
95
+ function B({
96
+ variant: r,
97
+ size: t,
98
+ iconOnly: e,
99
+ className: o,
100
+ children: s,
101
+ ref: i,
102
+ ...d
103
+ }) {
104
+ return /* @__PURE__ */ a(
105
+ l.Button,
106
+ {
107
+ ref: i,
108
+ className: d.render === void 0 ? n(
109
+ b({ variant: r ?? "ghost", size: t ?? "sm", iconOnly: e }),
110
+ o
111
+ ) : o,
112
+ ...d,
113
+ children: s
114
+ }
115
+ );
116
+ }
117
+ function O({ focusableWhenDisabled: r, ref: t, ...e }) {
118
+ return /* @__PURE__ */ a(
119
+ l.Input,
120
+ {
121
+ focusableWhenDisabled: r,
122
+ disabled: e.disabled,
123
+ render: /* @__PURE__ */ a(f, { ...e, ref: t })
124
+ }
125
+ );
126
+ }
127
+ function S({ className: r, children: t, ref: e, ...o }) {
128
+ return /* @__PURE__ */ a(
129
+ l.Group,
130
+ {
131
+ ref: e,
132
+ className: n("flex min-w-0 items-center gap-1", r),
133
+ ...o,
134
+ children: t
135
+ }
136
+ );
137
+ }
138
+ export {
139
+ I as Toggle,
140
+ V as ToggleGroup,
141
+ $ as Toolbar,
142
+ B as ToolbarButton,
143
+ S as ToolbarGroup,
144
+ O as ToolbarInput,
145
+ k as ToolbarSeparator
146
+ };
147
+ //# sourceMappingURL=Toggle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.js","sources":["../../src/components/Toggle.tsx"],"sourcesContent":["import type { Ref } from \"react\";\nimport { Toggle as BaseToggle } from \"@base-ui/react/toggle\";\nimport { ToggleGroup as BaseToggleGroup } from \"@base-ui/react/toggle-group\";\nimport { Toolbar as BaseToolbar } from \"@base-ui/react/toolbar\";\nimport { tv, type VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../lib/cn\";\nimport { buttonVariants, type ButtonProps } from \"./Button\";\nimport { Input, type InputProps } from \"./Input\";\nimport { PendingVeil } from \"./PendingVeil\";\n\n/* ============================================================================\n TOGGLE, TOGGLE GROUP, TOOLBAR\n\n A TOGGLE IS NOT A SWITCH, and the difference is not cosmetic. A switch\n commits a SETTING — it says \"notifications are on\" and takes effect\n immediately. A toggle applies a FORMAT or a FILTER to something you are\n looking at — bold, list view, \"show only failures\". Switches belong in\n settings; toggles belong in toolbars.\n\n Getting this wrong is why some apps have a row of switches above a document,\n which reads as configuration and makes people hesitate before pressing one.\n\n A TOOLBAR IS ONE TAB STOP. Arrow keys move between its controls; Tab leaves\n the whole thing. That is the difference between a toolbar of fifteen buttons\n costing one Tab press to skip and costing fifteen — and it is the single\n thing most hand-rolled toolbars get wrong.\n\n THAT LAST PARAGRAPH WAS UNTRUE FOR AS LONG AS `Toolbar` SHIPPED ALONE.\n Base UI's toolbar is a COMPOSITE: the root keeps a map of registered items\n and moves focus between the entries in it. Registration happens in the ITEM\n wrappers, and this module exported none of them — only the root and the\n separator. So every consumer got a bordered box in which each control was\n still its own tab stop, while the paragraph above promised the opposite.\n Nothing threw and nothing looked wrong; the single behaviour the component\n was adopted for was the one thing it did not do.\n\n `ToolbarButton` / `ToolbarInput` / `ToolbarGroup` are that registration. The\n rule for a consumer is short: EVERY interactive child goes in a wrapper. An\n unwrapped control renders perfectly and is invisible to the composite —\n `toolbar.test.tsx` pins that as a fact so it is read from a test rather than\n discovered from a bug report.\n ========================================================================= */\n\nconst toggle = tv({\n base: [\n \"inline-flex shrink-0 cursor-pointer items-center justify-center gap-2\",\n \"rounded-md font-medium whitespace-nowrap text-secondary\",\n \"transition-[var(--tx-colors),box-shadow] duration-(--dur-fast) ease-hover\",\n \"hover:not-data-disabled:bg-surface-hover hover:not-data-disabled:text-primary\",\n \"data-pressed:bg-control-subtle data-pressed:text-control-text\",\n /* Pressed AND hovered. The hover rule above carries three conditions and\n `data-pressed:` carries one, so without this a pressed toggle painted\n itself UNPRESSED for as long as the pointer sat on it. */\n \"data-pressed:hover:not-data-disabled:bg-control-subtle-hover\",\n \"data-disabled:pointer-events-none data-disabled:opacity-45\",\n \"active:not-data-disabled:scale-[0.97]\",\n ],\n variants: {\n size: {\n sm: \"h-control-sm px-2.5 text-xs\",\n md: \"h-control-md px-3 text-sm\",\n lg: \"h-control-lg px-4 text-md\",\n },\n iconOnly: { true: \"px-0 aspect-square\", false: \"\" },\n },\n defaultVariants: { size: \"md\", iconOnly: false },\n});\n\nexport interface ToggleProps\n extends Omit<BaseToggle.Props, \"className\" | \"render\">,\n VariantProps<typeof toggle> {\n className?: string;\n ref?: Ref<HTMLButtonElement>;\n}\n\nexport function Toggle({ size, iconOnly, className, children, ref, ...props }: ToggleProps) {\n return (\n <BaseToggle ref={ref} className={cn(toggle({ size, iconOnly }), className)} {...props}>\n {children}\n </BaseToggle>\n );\n}\n\nexport interface ToggleGroupProps extends Omit<BaseToggleGroup.Props, \"className\" | \"render\"> {\n className?: string;\n /** Segmented gives the group a shared inset background. */\n variant?: \"plain\" | \"segmented\";\n /**\n * DX-6426 - the choice this group sends is out and unanswered: every option is disabled and a veil with a spinner covers the set until it is\n * answered. Pass it from the pending state of the write; the pressed option stays the saved one until the answer repaints.\n */\n loading?: boolean;\n ref?: Ref<HTMLDivElement>;\n}\n\n/**\n * A set of related toggles.\n *\n * `multiple` decides the meaning: false makes it a single choice (list\n * view OR grid view), true makes it independent formats (bold AND italic).\n * There is no separate \"type\" prop, because the multiplicity IS the type.\n */\nexport function ToggleGroup({\n className,\n variant = \"plain\",\n loading = false,\n disabled,\n children,\n ref,\n ...props\n}: ToggleGroupProps) {\n return (\n <BaseToggleGroup\n ref={ref}\n disabled={disabled || loading}\n data-loading={loading || undefined}\n aria-busy={loading || undefined}\n className={cn(\n \"relative inline-flex items-center gap-1\",\n /* DXUI-51: a track never outgrows its container. Options that do not fit\n share rows (flex-wrap), and one option wider than the track wraps its\n own text (whitespace-normal, h-auto with the size's height as a floor)\n instead of spilling past the rim. Options that fit are unchanged. */\n variant === \"segmented\" && [\n \"max-w-full flex-wrap rounded-lg border border-border bg-surface-inset p-1\",\n \"*:max-w-full *:min-w-0 *:h-auto *:min-h-control-sm *:py-1 *:text-center *:whitespace-normal\",\n ],\n className,\n )}\n {...props}\n >\n {children}\n {loading && <PendingVeil />}\n </BaseToggleGroup>\n );\n}\n\nexport interface ToolbarProps extends Omit<BaseToolbar.Root.Props, \"className\" | \"render\"> {\n className?: string;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport function Toolbar({ className, children, ref, ...props }: ToolbarProps) {\n return (\n <BaseToolbar.Root\n ref={ref}\n className={cn(\n \"flex min-w-0 flex-wrap items-center gap-1 rounded-lg border border-border bg-surface p-1.5\",\n className,\n )}\n {...props}\n >\n {children}\n </BaseToolbar.Root>\n );\n}\n\n/** A hairline between groups of toolbar controls. */\nexport function ToolbarSeparator({ className }: { className?: string }) {\n return (\n <BaseToolbar.Separator\n className={cn(\"mx-1 h-5 w-px shrink-0 self-center bg-border\", className)}\n />\n );\n}\n\ntype ToolbarButtonBase = Omit<BaseToolbar.Button.Props, \"className\" | \"nativeButton\" | \"render\"> & {\n className?: string;\n ref?: Ref<HTMLButtonElement>;\n};\n\n/**\n * TWO FORMS, AND THE TYPE REFUSES TO MIX THEM.\n *\n * Either this renders its own `<button>` and wears `buttonVariants` — in which\n * case `variant` / `size` / `iconOnly` choose which row of that table — or it\n * renders somebody else's control through `render`, in which case that control\n * already carries a variant table and this one must not add a second. The two\n * are mutually exclusive rather than merely discouraged, because a `render`\n * plus a `size` is not a preference somebody expressed: it is two size classes\n * in one attribute with no rule for which wins. See `ToolbarButton`'s own doc\n * for the measurement.\n */\nexport type ToolbarButtonProps =\n | (ToolbarButtonBase &\n Pick<ButtonProps, \"variant\" | \"size\" | \"iconOnly\"> & {\n /** The styled form owns the element, so there is nothing to render into. */\n render?: undefined;\n })\n | (ToolbarButtonBase & {\n render: NonNullable<BaseToolbar.Button.Props[\"render\"]>;\n variant?: never;\n size?: never;\n iconOnly?: never;\n });\n\n/**\n * A button that is part of the toolbar's rotation.\n *\n * It wears `buttonVariants` — the same recipe `Button` compiles — rather than a\n * second class list, so the two can never drift apart. It is not `Button`\n * itself because the registration has to own the element: Base UI needs to put\n * its own `tabIndex` and key handling on the rendered node, and the\n * `focusableWhenDisabled` behaviour below depends on NOT setting the native\n * `disabled` attribute, which `Button` sets unconditionally.\n *\n * `ghost` at `sm` by default — the right resting state in a row of controls,\n * the same default `IconButton` picks. A row of solid buttons reads as a row of\n * primary actions, which no toolbar is.\n *\n * ANYTHING ALREADY BUILT ON `Button` GOES IN THROUGH `render`, which is what\n * keeps this from becoming a second button component:\n * `<ToolbarButton render={<IconButton icon={…} label=\"Bold\" />} />` registers\n * exactly the same and keeps the tooltip and the `disabledReason`.\n *\n * THAT PATH APPLIES NO VARIANT TABLE AT ALL, and the type enforces it —\n * `variant`, `size` and `iconOnly` are not accepted beside `render`. Base UI's\n * render slot CONCATENATES `className`; it does not run `cn`. So a recipe\n * applied here landed in the same attribute as the rendered component's own,\n * and which one won was decided by Tailwind's emission order rather than by\n * either component. It measured fine while the two happened to agree — a\n * default `render={<IconButton/>}` came out 36×36, identical to a standalone\n * one, while carrying both `aspect-square` and `px-3.5` — and broke visibly the\n * moment they disagreed: `<ToolbarButton size=\"lg\" render={<IconButton\n * size=\"sm\" …/>} />` carried `h-control-lg` AND `h-control-sm` and rendered\n * 48 × 36 with 24px of padding, a squashed oval neither component asked for.\n *\n * Unrepresentable beats documented, and it is free to do NOW: nothing has\n * adopted the pair yet, so narrowing the type costs nothing that removing the\n * props after adoption would have cost.\n */\nexport function ToolbarButton({\n variant,\n size,\n iconOnly,\n className,\n children,\n ref,\n ...props\n}: ToolbarButtonProps) {\n return (\n <BaseToolbar.Button\n ref={ref}\n /* `ghost` at `sm` is the DEFAULT of the styled form, not of the\n component — defaulting in the signature would compile a recipe for the\n `render` form too, which is the bug above. */\n className={\n props.render === undefined\n ? cn(\n buttonVariants({ variant: variant ?? \"ghost\", size: size ?? \"sm\", iconOnly }),\n className,\n )\n : className\n }\n {...props}\n >\n {children}\n </BaseToolbar.Button>\n );\n}\n\nexport interface ToolbarInputProps\n extends Omit<InputProps, \"ref\">,\n Pick<BaseToolbar.Input.Props, \"focusableWhenDisabled\"> {\n ref?: Ref<HTMLInputElement>;\n}\n\n/**\n * A text field that is part of the toolbar's rotation — a filter box beside the\n * buttons that filter with it.\n *\n * Renders this library's own `Input` through Base UI's `render` slot, so the\n * adornments, sizes and focus ring are the ones every other field in the\n * application already has. The composite's props land on the `<input>` itself\n * rather than on `Input`'s adornment wrapper, which is what keeps DOM order —\n * and therefore the arrow-key order — matching what the reader sees.\n *\n * Arrow keys still move OUT of it, which is Base UI's deliberate call and not\n * an oversight: a toolbar field is a filter box, not a document, and a caret\n * that traps the only navigation key in the pattern is worse than one that\n * moves on.\n */\nexport function ToolbarInput({ focusableWhenDisabled, ref, ...props }: ToolbarInputProps) {\n return (\n <BaseToolbar.Input\n focusableWhenDisabled={focusableWhenDisabled}\n disabled={props.disabled}\n render={<Input {...props} ref={ref} />}\n />\n );\n}\n\nexport interface ToolbarGroupProps extends Omit<BaseToolbar.Group.Props, \"className\"> {\n className?: string;\n ref?: Ref<HTMLDivElement>;\n}\n\n/**\n * A labelled cluster of toolbar controls — \"Alignment\", \"Text style\".\n *\n * IT IS NOT ITSELF A STOP. The group renders `role=\"group\"` and its CHILDREN\n * register; a group that registered would insert a phantom position between the\n * controls it contains. Give it an `aria-label`: a group announced as an\n * unnamed group is noise in the rotation rather than context for it.\n *\n * Distinct from `ToggleGroup`, which is a set of related toggles with a shared\n * VALUE. This one shares only a name.\n */\nexport function ToolbarGroup({ className, children, ref, ...props }: ToolbarGroupProps) {\n return (\n <BaseToolbar.Group\n ref={ref}\n className={cn(\"flex min-w-0 items-center gap-1\", className)}\n {...props}\n >\n {children}\n </BaseToolbar.Group>\n );\n}\n"],"names":["toggle","tv","Toggle","size","iconOnly","className","children","ref","props","jsx","BaseToggle","cn","ToggleGroup","variant","loading","disabled","jsxs","BaseToggleGroup","PendingVeil","Toolbar","BaseToolbar","ToolbarSeparator","ToolbarButton","buttonVariants","ToolbarInput","focusableWhenDisabled","Input","ToolbarGroup"],"mappings":"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"}
@@ -0,0 +1,157 @@
1
+ import { jsx as e, jsxs as l } from "react/jsx-runtime";
2
+ import { useMemo as S, Fragment as B } from "react";
3
+ import { cn as m } from "../lib/cn.js";
4
+ import { groupInOrder as T } from "../lib/group-in-order.js";
5
+ import { Badge as F } from "./Badge.js";
6
+ import { Checkbox as G } from "./Choice.js";
7
+ import { Icon as y } from "./Icon.js";
8
+ import { Tooltip as U } from "./Popover.js";
9
+ import { Spinner as q } from "./Spinner.js";
10
+ import { useUiStrings as R } from "../lib/i18n/provider.js";
11
+ function Y({
12
+ caption: r,
13
+ rowHeader: d,
14
+ rows: i,
15
+ columns: g,
16
+ cell: c,
17
+ readOnly: x = !1,
18
+ onChange: k,
19
+ onColumnChange: b,
20
+ // I18N-ALLOW: a prop value naming a layout, never user text
21
+ rowDescription: p = "inline",
22
+ dense: n = !1,
23
+ cellLabel: v,
24
+ otherGroupLabel: h,
25
+ columnSetLabel: z,
26
+ className: _
27
+ }) {
28
+ const N = R().toggleMatrix, w = S(() => T(i, (t) => t.group, h ?? N.otherGroup), [i, h, N.otherGroup]), C = g.length + 1, M = n ? "px-2 sm:px-4" : "px-5", I = v ?? ((t, u, a) => N.cell(u.label, t.label, a));
29
+ return /* @__PURE__ */ e("div", { className: m("relative w-full min-w-0 overflow-auto overscroll-x-contain rounded-xl border border-border bg-surface shadow-sm", _), children: /* @__PURE__ */ l("table", { className: "w-full border-collapse text-left", children: [
30
+ /* @__PURE__ */ e("caption", { className: "sr-only", children: r }),
31
+ /* @__PURE__ */ e("thead", { className: "sticky top-0 z-10", children: /* @__PURE__ */ l("tr", { children: [
32
+ /* @__PURE__ */ e(
33
+ "th",
34
+ {
35
+ scope: "col",
36
+ className: m("h-12 border-b border-border bg-surface-raised text-2xs font-semibold tracking-widest text-tertiary uppercase", n ? "px-3 sm:px-5" : "px-5 whitespace-nowrap"),
37
+ children: d
38
+ }
39
+ ),
40
+ g.map((t) => {
41
+ const u = t.lockedReason !== void 0, a = i.filter((s) => s.lockedReason === void 0 && c(s.id, t.id).state !== "unavailable"), o = a.filter((s) => c(s.id, t.id).state === "on"), $ = a.some((s) => {
42
+ const f = c(s.id, t.id);
43
+ return f.state !== "unavailable" && f.busy === !0;
44
+ }), j = b !== void 0 && !x && !u;
45
+ return /* @__PURE__ */ e(
46
+ "th",
47
+ {
48
+ scope: "col",
49
+ className: m(
50
+ "border-b border-border bg-surface-raised text-center align-middle text-2xs font-semibold tracking-widest text-tertiary uppercase",
51
+ n ? "min-w-20 px-2 py-2 sm:px-4" : "h-12 min-w-24 px-5 whitespace-nowrap"
52
+ ),
53
+ children: /* @__PURE__ */ l("span", { className: "inline-flex flex-col items-center gap-1", children: [
54
+ j && /* Above its label, so a column stays narrow and the box and the words stay centred on the cells below them. */
55
+ /* @__PURE__ */ e(
56
+ G,
57
+ {
58
+ "data-testid": `toggle-matrix-column-${t.id}`,
59
+ "aria-label": (z ?? ((s) => N.setColumn(s.label)))(t),
60
+ checked: a.length > 0 && o.length === a.length,
61
+ indeterminate: o.length > 0 && o.length < a.length,
62
+ disabled: a.length === 0 || $,
63
+ onCheckedChange: (s) => b(
64
+ t.id,
65
+ s === !0,
66
+ a.filter((f) => c(f.id, t.id).state === "on" != (s === !0)).map((f) => f.id)
67
+ )
68
+ }
69
+ ),
70
+ /* @__PURE__ */ l("span", { className: m("inline-flex items-center gap-1", n && "whitespace-normal break-words"), children: [
71
+ t.label,
72
+ !x && u && /* @__PURE__ */ e(y, { name: "lock", size: "xs", className: "text-tertiary", label: t.lockedReason })
73
+ ] })
74
+ ] })
75
+ },
76
+ t.id
77
+ );
78
+ })
79
+ ] }) }),
80
+ /* @__PURE__ */ e("tbody", { children: w.map((t, u) => /* @__PURE__ */ l(B, { children: [
81
+ t.label && /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e(
82
+ "th",
83
+ {
84
+ scope: "colgroup",
85
+ colSpan: C,
86
+ className: m("border-b border-border-subtle bg-surface-sunken py-2 text-left text-2xs font-semibold tracking-widest text-tertiary uppercase", n ? "px-3 sm:px-5" : "px-5"),
87
+ children: t.label
88
+ }
89
+ ) }),
90
+ t.items.map((a) => /* @__PURE__ */ l("tr", { className: "border-b border-border-subtle last:border-b-0", children: [
91
+ /* @__PURE__ */ e("th", { scope: "row", className: m("py-3 text-left align-middle text-sm font-normal text-primary", n ? "px-3 sm:px-5" : "px-5"), children: /* @__PURE__ */ l("span", { className: "inline-flex items-center gap-1", children: [
92
+ /* @__PURE__ */ e(A, { row: a, description: p }),
93
+ !x && a.lockedReason !== void 0 && /* @__PURE__ */ e(y, { name: "lock", size: "xs", className: "text-tertiary", label: a.lockedReason })
94
+ ] }) }),
95
+ g.map((o) => /* @__PURE__ */ e("td", { className: m("py-3 text-center align-middle", M), children: /* @__PURE__ */ e(
96
+ D,
97
+ {
98
+ row: a,
99
+ column: o,
100
+ state: c(a.id, o.id),
101
+ editable: !x && o.lockedReason === void 0 && a.lockedReason === void 0,
102
+ sentence: I,
103
+ onChange: k
104
+ }
105
+ ) }, o.id))
106
+ ] }, a.id))
107
+ ] }, t.label ?? `__section-${u}`)) })
108
+ ] }) });
109
+ }
110
+ function A({ row: r, description: d }) {
111
+ return r.description === void 0 || r.description === "" ? r.label : d === "tooltip" ? /* @__PURE__ */ e(U, { content: r.description, children: /* @__PURE__ */ e("span", { tabIndex: 0, className: "cursor-help underline decoration-dotted decoration-border-strong underline-offset-4 outline-none", children: r.label }) }) : /* @__PURE__ */ l("span", { className: "flex flex-col gap-0.5", children: [
112
+ /* @__PURE__ */ e("span", { children: r.label }),
113
+ /* @__PURE__ */ e("span", { className: "text-xs font-normal text-tertiary", children: r.description })
114
+ ] });
115
+ }
116
+ function D({
117
+ row: r,
118
+ column: d,
119
+ state: i,
120
+ editable: g,
121
+ sentence: c,
122
+ onChange: x
123
+ }) {
124
+ const k = R().toggleMatrix, b = `toggle-matrix-${r.id}-${d.id}`;
125
+ if (i.state === "unavailable")
126
+ return /* @__PURE__ */ l("div", { "data-testid": b, "data-state": "unavailable", className: "mx-auto flex max-w-40 flex-col items-center gap-1", children: [
127
+ /* @__PURE__ */ e(F, { size: "sm", tone: "muted", children: k.unavailable }),
128
+ /* @__PURE__ */ e("span", { className: "text-2xs leading-snug font-normal tracking-normal text-tertiary normal-case", children: i.reason })
129
+ ] });
130
+ const p = i.state === "on", n = c(r, d, p), v = p ? /* @__PURE__ */ e(y, { name: "check", size: "sm", className: "mx-auto text-control" }) : /* @__PURE__ */ e("span", { "aria-hidden": !0, className: "mx-auto block text-tertiary", children: "—" });
131
+ if (!g)
132
+ return /* @__PURE__ */ l("span", { "data-testid": b, "data-state": i.state, children: [
133
+ /* @__PURE__ */ e("span", { className: "sr-only", children: n }),
134
+ v
135
+ ] });
136
+ const h = i.busy === !0;
137
+ return /* @__PURE__ */ e(
138
+ "button",
139
+ {
140
+ type: "button",
141
+ role: "checkbox",
142
+ "aria-checked": p,
143
+ "aria-label": n,
144
+ "aria-busy": h || void 0,
145
+ disabled: h,
146
+ "data-testid": b,
147
+ "data-state": i.state,
148
+ onClick: () => x?.(r.id, d.id, !p),
149
+ className: "dx-tap mx-auto flex size-7 items-center justify-center rounded-md transition-[var(--tx-colors)] duration-(--dur-fast) hover:bg-surface-hover focus-visible:shadow-[0_0_0_3px_var(--control-focus-halo)] disabled:cursor-progress",
150
+ children: h ? /* @__PURE__ */ e(q, { size: "xs", label: k.busy }) : p ? /* @__PURE__ */ e(y, { name: "check", size: "sm", className: "text-control" }) : /* @__PURE__ */ e("span", { "aria-hidden": !0, className: "block text-tertiary", children: "—" })
151
+ }
152
+ );
153
+ }
154
+ export {
155
+ Y as ToggleMatrix
156
+ };
157
+ //# sourceMappingURL=ToggleMatrix.js.map