@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,96 @@
1
+ import { jsx as n, jsxs as m } from "react/jsx-runtime";
2
+ import { useMemo as b } from "react";
3
+ import { cn as k } from "../lib/cn.js";
4
+ import { Accordion as g, AccordionItem as v } from "./Accordion.js";
5
+ import { Badge as w } from "./Badge.js";
6
+ import { lineDiffRow as h } from "./LineDiff.js";
7
+ import { useUiStrings as N } from "../lib/i18n/provider.js";
8
+ import { useNumberFormat as x } from "../lib/i18n/number-format.js";
9
+ const E = {
10
+ added: "success",
11
+ modified: "info",
12
+ removed: "danger",
13
+ renamed: "accent"
14
+ }, D = /^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/, y = "\\";
15
+ function R(r) {
16
+ const s = [];
17
+ let d = 1, i = 0, e = 0, a = !1;
18
+ for (const t of r.split(`
19
+ `)) {
20
+ const c = D.exec(t);
21
+ if (c !== null) {
22
+ const f = Number(c[1]), o = c[2] === void 0 ? 1 : Number(c[2]), l = o === 0 ? f + 1 : f;
23
+ l > d && s.push({ kind: "gap", hidden: l - d }), i = l, e = Number(c[3]), d = l + o, a = !0;
24
+ continue;
25
+ }
26
+ if (!a) throw new Error(`PatchDiff: "${t.slice(0, 40)}" comes before the first @@ hunk header`);
27
+ if (t.startsWith(y))
28
+ s.push({ kind: "note", text: t.slice(1).trim() });
29
+ else if (t.startsWith("+"))
30
+ s.push({ kind: "added", oldNumber: null, newNumber: e++, text: t.slice(1) });
31
+ else if (t.startsWith("-"))
32
+ s.push({ kind: "removed", oldNumber: i++, newNumber: null, text: t.slice(1) });
33
+ else if (t.startsWith(" ") || t === "")
34
+ s.push({ kind: "unchanged", oldNumber: i++, newNumber: e++, text: t.slice(1) });
35
+ else
36
+ throw new Error(`PatchDiff: hunk line "${t.slice(0, 40)}" is not a context, + or - line`);
37
+ }
38
+ return r.endsWith(`
39
+ `) && s.pop(), s;
40
+ }
41
+ const p = "w-10 shrink-0 select-none text-right tabular-nums opacity-60";
42
+ function W({ rows: r, label: s }) {
43
+ const d = N(), i = x();
44
+ return /* @__PURE__ */ n("div", { role: "group", "aria-label": s, "data-slot": "patch-diff-lines", className: "flex flex-col overflow-x-auto", children: r.map((e, a) => e.kind === "gap" ? /* @__PURE__ */ m("div", { "data-slot": "patch-diff-gap", className: h({ kind: "gap" }), children: [
45
+ /* @__PURE__ */ n("span", { "aria-hidden": !0, className: "select-none opacity-60", children: "⋯" }),
46
+ /* @__PURE__ */ n("span", { children: d.lineDiff.unchangedLines(e.hidden, i(e.hidden)) })
47
+ ] }, a) : e.kind === "note" ? /* @__PURE__ */ n("div", { className: h({ kind: "gap" }), children: /* @__PURE__ */ n("span", { children: e.text }) }, a) : /* @__PURE__ */ m("div", { className: h({ kind: e.kind }), children: [
48
+ /* @__PURE__ */ n("span", { "aria-hidden": !0, className: p, children: e.oldNumber ?? "" }),
49
+ /* @__PURE__ */ n("span", { "aria-hidden": !0, className: p, children: e.newNumber ?? "" }),
50
+ /* @__PURE__ */ n("span", { "aria-hidden": !0, className: "select-none opacity-60", children: e.kind === "added" ? "+" : e.kind === "removed" ? "−" : " " }),
51
+ /* @__PURE__ */ n("span", { className: "min-w-0 flex-1 break-all", children: e.text.length === 0 ? " " : e.text })
52
+ ] }, a)) });
53
+ }
54
+ function M({ path: r, status: s, previousPath: d, additions: i, deletions: e, patch: a, unavailable: t, defaultOpen: c = !1, className: f }) {
55
+ const o = N().patchDiff, l = x(), u = b(() => a === void 0 ? null : R(a), [a]);
56
+ if (a === void 0 == (t === void 0))
57
+ throw new Error("PatchDiff: pass exactly one of `patch` (the hunks) or `unavailable` (why there are none)");
58
+ return /* @__PURE__ */ n(
59
+ g,
60
+ {
61
+ defaultValue: c ? [r] : [],
62
+ "data-slot": "patch-diff",
63
+ className: k("min-w-0 overflow-hidden rounded-md border border-border-subtle", f),
64
+ children: /* @__PURE__ */ n(
65
+ v,
66
+ {
67
+ value: r,
68
+ className: "px-3",
69
+ title: /* @__PURE__ */ m("span", { className: "flex min-w-0 flex-col gap-0.5", children: [
70
+ /* @__PURE__ */ m("span", { className: "flex min-w-0 flex-wrap items-center gap-2", children: [
71
+ /* @__PURE__ */ n("span", { className: "min-w-0 break-all font-mono text-xs", children: r }),
72
+ /* @__PURE__ */ n(w, { size: "sm", tone: E[s], children: o.status[s] })
73
+ ] }),
74
+ d !== void 0 ? /* @__PURE__ */ n("span", { className: "break-all font-mono text-2xs font-normal text-tertiary", children: o.renamedFrom(d) }) : null
75
+ ] }),
76
+ meta: /* @__PURE__ */ m("span", { className: "flex shrink-0 items-center gap-2 font-mono text-xs tabular-nums", children: [
77
+ /* @__PURE__ */ m("span", { className: "text-success-text", "aria-label": o.additions(i, l(i)), children: [
78
+ "+",
79
+ l(i)
80
+ ] }),
81
+ /* @__PURE__ */ m("span", { className: "text-danger-text", "aria-label": o.deletions(e, l(e)), children: [
82
+ "−",
83
+ l(e)
84
+ ] })
85
+ ] }),
86
+ children: u === null ? /* @__PURE__ */ n("p", { className: "text-sm text-secondary", children: t }) : /* @__PURE__ */ n(W, { rows: u, label: o.changes(r) })
87
+ }
88
+ )
89
+ }
90
+ );
91
+ }
92
+ export {
93
+ M as PatchDiff,
94
+ R as parsePatch
95
+ };
96
+ //# sourceMappingURL=PatchDiff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PatchDiff.js","sources":["../../src/components/PatchDiff.tsx"],"sourcesContent":["import { useMemo } from \"react\";\r\nimport { cn } from \"../lib/cn\";\r\nimport { useNumberFormat, useUiStrings } from \"../lib/i18n\";\r\nimport { Accordion, AccordionItem } from \"./Accordion\";\r\nimport { Badge, type BadgeProps } from \"./Badge\";\r\nimport { lineDiffRow } from \"./LineDiff\";\r\n\r\n/* ============================================================================\r\n PATCH DIFF - one file's change as a source host reports it. DX-5271.\r\n\r\n WHY THIS EXISTS BESIDE LineDiff. `LineDiff` COMPUTES a diff: it is handed the\r\n two whole texts and finds what changed. A pull request's file comes the other\r\n way round: GitHub (and git) already computed it and send a unified-diff\r\n `patch` - hunks (`@@ -12,6 +12,8 @@`) holding the changed lines and a few\r\n unchanged ones around them, without the rest of the file. There are no two\r\n whole texts to compare, so `LineDiff` cannot draw it. This component reads\r\n the patch as given, and shares `LineDiff`'s row look (`lineDiffRow`, the\r\n library's diff tones) so there is still one diff look, not two.\r\n\r\n WHAT IT DRAWS. A collapsible file: a header (path, how it changed, + and -\r\n counts), then each hunk's lines with the OLD and NEW line numbers the patch\r\n states, and between hunks a gap row naming how many unchanged lines the patch\r\n leaves out (the same words as `LineDiff`'s folded gap). A file the host sent\r\n without a patch (binary, too large, a pure rename) passes `unavailable` -\r\n the host's own reason in the caller's words - and shows that instead of lines.\r\n\r\n COLLAPSED BY DEFAULT WHEN LONG. The panel unmounts while closed (Base UI's\r\n default), so a collapsed file costs one header row and a page of dozens of\r\n files stays responsive. `defaultOpen` is the caller's decision (it knows the\r\n file count); nothing here guesses a size threshold.\r\n\r\n A PATCH THAT IS NOT A PATCH FAILS LOUDLY. The parser throws on a line before\r\n the first hunk header or a hunk body line that is not a context, `+`, `-` or\r\n `\\` line, rather than rendering a plausible-looking wrong diff.\r\n ========================================================================= */\r\n\r\nexport type PatchDiffStatus = \"added\" | \"modified\" | \"removed\" | \"renamed\";\r\n\r\nconst STATUS_TONE: Record<PatchDiffStatus, NonNullable<BadgeProps[\"tone\"]>> = {\r\n added: \"success\",\r\n modified: \"info\",\r\n removed: \"danger\",\r\n renamed: \"accent\",\r\n};\r\n\r\nexport interface PatchDiffProps {\r\n /** The file's path after the change. */\r\n path: string;\r\n status: PatchDiffStatus;\r\n /** A renamed file's path before the change. */\r\n previousPath?: string;\r\n additions: number;\r\n deletions: number;\r\n /** The unified-diff hunks for this file (no `diff --git` / `---` / `+++` header lines). Omit with `unavailable`. */\r\n patch?: string;\r\n /** Why there is no patch to draw (the host's reason, in the caller's words). Mutually exclusive with `patch`. */\r\n unavailable?: string;\r\n /** Whether the file starts open. Default closed. */\r\n defaultOpen?: boolean;\r\n className?: string;\r\n}\r\n\r\ntype PatchLineKind = \"unchanged\" | \"added\" | \"removed\";\r\n\r\ninterface PatchLine {\r\n kind: PatchLineKind;\r\n /** Old-side line number; null for an added line. */\r\n oldNumber: number | null;\r\n /** New-side line number; null for a removed line. */\r\n newNumber: number | null;\r\n text: string;\r\n}\r\n\r\ntype PatchRow = PatchLine | { kind: \"gap\"; hidden: number } | { kind: \"note\"; text: string };\r\n\r\nconst HUNK_HEADER = /^@@ -(\\d+)(?:,(\\d+))? \\+(\\d+)(?:,(\\d+))? @@/;\r\nconst NO_NEWLINE_MARKER = \"\\\\\";\r\n\r\n/** The rows of a patch: every hunk's lines, with a gap row where the patch skips unchanged old-side lines. */\r\nexport function parsePatch(patch: string): PatchRow[] {\r\n const rows: PatchRow[] = [];\r\n let nextOld = 1;\r\n let oldNumber = 0;\r\n let newNumber = 0;\r\n let inHunk = false;\r\n for (const line of patch.split(\"\\n\")) {\r\n const header = HUNK_HEADER.exec(line);\r\n if (header !== null) {\r\n const oldStart = Number(header[1]);\r\n const oldCount = header[2] === undefined ? 1 : Number(header[2]);\r\n // A zero-length old side (an added file's `-0,0`) names the line BEFORE the hunk.\r\n const firstOld = oldCount === 0 ? oldStart + 1 : oldStart;\r\n if (firstOld > nextOld) rows.push({ kind: \"gap\", hidden: firstOld - nextOld });\r\n oldNumber = firstOld;\r\n newNumber = Number(header[3]);\r\n nextOld = firstOld + oldCount;\r\n inHunk = true;\r\n continue;\r\n }\r\n if (!inHunk) throw new Error(`PatchDiff: \"${line.slice(0, 40)}\" comes before the first @@ hunk header`);\r\n if (line.startsWith(NO_NEWLINE_MARKER)) {\r\n rows.push({ kind: \"note\", text: line.slice(1).trim() });\r\n } else if (line.startsWith(\"+\")) {\r\n rows.push({ kind: \"added\", oldNumber: null, newNumber: newNumber++, text: line.slice(1) });\r\n } else if (line.startsWith(\"-\")) {\r\n rows.push({ kind: \"removed\", oldNumber: oldNumber++, newNumber: null, text: line.slice(1) });\r\n } else if (line.startsWith(\" \") || line === \"\") {\r\n // A context line; some hosts trim the single space off a blank one.\r\n rows.push({ kind: \"unchanged\", oldNumber: oldNumber++, newNumber: newNumber++, text: line.slice(1) });\r\n } else {\r\n throw new Error(`PatchDiff: hunk line \"${line.slice(0, 40)}\" is not a context, + or - line`);\r\n }\r\n }\r\n // A patch ends with a newline, which splits into one empty \"context\" line past the last hunk row.\r\n if (patch.endsWith(\"\\n\")) rows.pop();\r\n return rows;\r\n}\r\n\r\nconst NUMBER_CELL = \"w-10 shrink-0 select-none text-right tabular-nums opacity-60\";\r\n\r\nfunction PatchRows({ rows, label }: { rows: PatchRow[]; label: string }) {\r\n const strings = useUiStrings();\r\n const fmt = useNumberFormat();\r\n return (\r\n <div role=\"group\" aria-label={label} data-slot=\"patch-diff-lines\" className=\"flex flex-col overflow-x-auto\">\r\n {rows.map((row, index) => {\r\n if (row.kind === \"gap\") {\r\n return (\r\n <div key={index} data-slot=\"patch-diff-gap\" className={lineDiffRow({ kind: \"gap\" })}>\r\n <span aria-hidden className=\"select-none opacity-60\">\r\n ⋯\r\n </span>\r\n <span>{strings.lineDiff.unchangedLines(row.hidden, fmt(row.hidden))}</span>\r\n </div>\r\n );\r\n }\r\n if (row.kind === \"note\") {\r\n return (\r\n <div key={index} className={lineDiffRow({ kind: \"gap\" })}>\r\n <span>{row.text}</span>\r\n </div>\r\n );\r\n }\r\n return (\r\n <div key={index} className={lineDiffRow({ kind: row.kind })}>\r\n <span aria-hidden className={NUMBER_CELL}>\r\n {row.oldNumber ?? \"\"}\r\n </span>\r\n <span aria-hidden className={NUMBER_CELL}>\r\n {row.newNumber ?? \"\"}\r\n </span>\r\n <span aria-hidden className=\"select-none opacity-60\">\r\n {row.kind === \"added\" ? \"+\" : row.kind === \"removed\" ? \"−\" : \" \"}\r\n </span>\r\n <span className=\"min-w-0 flex-1 break-all\">{row.text.length === 0 ? \" \" : row.text}</span>\r\n </div>\r\n );\r\n })}\r\n </div>\r\n );\r\n}\r\n\r\n/** One changed file: a collapsible header and, when open, its hunks (or why there are none). */\r\nexport function PatchDiff({ path, status, previousPath, additions, deletions, patch, unavailable, defaultOpen = false, className }: PatchDiffProps) {\r\n const strings = useUiStrings().patchDiff;\r\n const fmt = useNumberFormat();\r\n const rows = useMemo(() => (patch === undefined ? null : parsePatch(patch)), [patch]);\r\n if ((patch === undefined) === (unavailable === undefined)) {\r\n throw new Error(\"PatchDiff: pass exactly one of `patch` (the hunks) or `unavailable` (why there are none)\");\r\n }\r\n return (\r\n <Accordion\r\n defaultValue={defaultOpen ? [path] : []}\r\n data-slot=\"patch-diff\"\r\n className={cn(\"min-w-0 overflow-hidden rounded-md border border-border-subtle\", className)}\r\n >\r\n <AccordionItem\r\n value={path}\r\n className=\"px-3\"\r\n title={\r\n <span className=\"flex min-w-0 flex-col gap-0.5\">\r\n <span className=\"flex min-w-0 flex-wrap items-center gap-2\">\r\n <span className=\"min-w-0 break-all font-mono text-xs\">{path}</span>\r\n <Badge size=\"sm\" tone={STATUS_TONE[status]}>\r\n {strings.status[status]}\r\n </Badge>\r\n </span>\r\n {previousPath !== undefined ? <span className=\"break-all font-mono text-2xs font-normal text-tertiary\">{strings.renamedFrom(previousPath)}</span> : null}\r\n </span>\r\n }\r\n meta={\r\n <span className=\"flex shrink-0 items-center gap-2 font-mono text-xs tabular-nums\">\r\n <span className=\"text-success-text\" aria-label={strings.additions(additions, fmt(additions))}>\r\n +{fmt(additions)}\r\n </span>\r\n <span className=\"text-danger-text\" aria-label={strings.deletions(deletions, fmt(deletions))}>\r\n −{fmt(deletions)}\r\n </span>\r\n </span>\r\n }\r\n >\r\n {rows === null ? <p className=\"text-sm text-secondary\">{unavailable}</p> : <PatchRows rows={rows} label={strings.changes(path)} />}\r\n </AccordionItem>\r\n </Accordion>\r\n );\r\n}\r\n"],"names":["STATUS_TONE","HUNK_HEADER","NO_NEWLINE_MARKER","parsePatch","patch","rows","nextOld","oldNumber","newNumber","inHunk","line","header","oldStart","oldCount","firstOld","NUMBER_CELL","PatchRows","label","strings","useUiStrings","fmt","useNumberFormat","jsx","row","index","jsxs","lineDiffRow","PatchDiff","path","status","previousPath","additions","deletions","unavailable","defaultOpen","className","useMemo","Accordion","cn","AccordionItem","Badge"],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { cn as i } from "../lib/cn.js";
3
+ import { Spinner as n } from "./Spinner.js";
4
+ function o({ className: r }) {
5
+ return /* @__PURE__ */ e(
6
+ "span",
7
+ {
8
+ "aria-hidden": !0,
9
+ "data-pending-veil": !0,
10
+ className: i("absolute inset-0 z-10 grid cursor-wait place-items-center rounded-[inherit] bg-surface/60", r),
11
+ children: /* @__PURE__ */ e(n, { size: "sm", className: "text-secondary" })
12
+ }
13
+ );
14
+ }
15
+ export {
16
+ o as PendingVeil
17
+ };
18
+ //# sourceMappingURL=PendingVeil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PendingVeil.js","sources":["../../src/components/PendingVeil.tsx"],"sourcesContent":["import { cn } from \"../lib/cn\";\nimport { Spinner } from \"./Spinner\";\n\n/**\n * DX-6426 - the pending look of a control that is a SET of options (RadioGroup, ToggleGroup): a translucent veil over the whole set with a centred\n * spinner. A set cannot show the spinner on one option, because while the request is out the controlled value is still the old one, so a spinner\n * on the checked option would point at the wrong choice. The veil changes no layout. Internal: it is not exported from the package.\n */\nexport function PendingVeil({ className }: { className?: string }) {\n return (\n <span\n aria-hidden\n data-pending-veil\n className={cn(\"absolute inset-0 z-10 grid cursor-wait place-items-center rounded-[inherit] bg-surface/60\", className)}\n >\n <Spinner size=\"sm\" className=\"text-secondary\" />\n </span>\n );\n}\n"],"names":["PendingVeil","className","jsx","cn","Spinner"],"mappings":";;;AAQO,SAASA,EAAY,EAAE,WAAAC,KAAqC;AACjE,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,eAAW;AAAA,MACX,qBAAiB;AAAA,MACjB,WAAWC,EAAG,6FAA6FF,CAAS;AAAA,MAEpH,UAAA,gBAAAC,EAACE,GAAA,EAAQ,MAAK,MAAK,WAAU,iBAAA,CAAiB;AAAA,IAAA;AAAA,EAAA;AAGpD;"}
@@ -0,0 +1,214 @@
1
+ import { jsxs as p, jsx as o } from "react/jsx-runtime";
2
+ import { useState as h, useContext as B, useRef as I, useMemo as $, useEffect as F } from "react";
3
+ import { Popover as a } from "@base-ui/react/popover";
4
+ import { Tooltip as i } from "@base-ui/react/tooltip";
5
+ import { cn as n } from "../lib/cn.js";
6
+ import { ANCHORED_POPUP_SURFACE as V, ANCHORED_POPUP_MOTION as X } from "./overlay-shell.js";
7
+ import { PopoverScopeContext as R, registerOpenPopover as q } from "./overlay-stack.js";
8
+ const G = [
9
+ V,
10
+ // I18N-ALLOW: CSS utility class
11
+ "relative",
12
+ ...X
13
+ ], A = "max-h-[min(var(--dx-popover-h,80vh),80vh,var(--available-height))]", J = [
14
+ "max-w-[min(var(--dx-popover-w,calc(40rem*var(--ui-scale))),90vw,var(--available-width))]",
15
+ A,
16
+ "flex flex-col"
17
+ ], K = "w-[min(var(--dx-popover-w),90vw,var(--available-width))]", C = "flex min-h-0 flex-col overflow-y-auto", T = [
18
+ "group size-2",
19
+ "data-[side=top]:bottom-[calc(var(--spacing)*-1)]",
20
+ "data-[side=bottom]:top-[calc(var(--spacing)*-1)]",
21
+ "data-[side=left]:right-[calc(var(--spacing)*-1)]",
22
+ "data-[side=right]:left-[calc(var(--spacing)*-1)]"
23
+ ], E = [
24
+ "block size-full border-b border-r border-border bg-surface-overlay",
25
+ "group-data-[side=top]:rotate-45",
26
+ "group-data-[side=bottom]:rotate-[225deg]",
27
+ "group-data-[side=left]:rotate-[315deg]",
28
+ "group-data-[side=right]:rotate-[135deg]"
29
+ ];
30
+ function ie({
31
+ trigger: r,
32
+ anchor: e,
33
+ open: s,
34
+ side: u = "bottom",
35
+ align: f = "center",
36
+ arrow: m = !1,
37
+ width: d,
38
+ className: b,
39
+ children: v,
40
+ ref: g,
41
+ defaultOpen: l,
42
+ onOpenChange: x,
43
+ openOnHover: _ = !1,
44
+ openOnFocus: c = !1,
45
+ delay: z,
46
+ closeDelay: H,
47
+ nativeButton: L = !0,
48
+ "aria-labelledby": U,
49
+ "aria-label": M
50
+ }) {
51
+ if (r === void 0 && e === void 0) throw new Error("Popover needs a `trigger` or an `anchor`.");
52
+ if (r !== void 0 && e !== void 0) throw new Error("Popover takes a `trigger` or an `anchor`, not both.");
53
+ const S = d ? { "--dx-popover-w": d } : void 0, [P] = h(() => /* @__PURE__ */ Symbol("popover")), w = B(R), y = I(null), D = $(() => [...w, P], [w, P]), [O, W] = h(!1), [j, N] = h(l ?? !1), k = s ?? (c ? j : void 0);
54
+ return /* @__PURE__ */ p(
55
+ a.Root,
56
+ {
57
+ actionsRef: y,
58
+ open: k,
59
+ defaultOpen: c ? void 0 : l,
60
+ onOpenChange: (t) => {
61
+ c && N(t), x?.(t);
62
+ },
63
+ children: [
64
+ r !== void 0 && /* @__PURE__ */ o(
65
+ a.Trigger,
66
+ {
67
+ render: r,
68
+ openOnHover: _,
69
+ delay: z,
70
+ closeDelay: H,
71
+ nativeButton: L,
72
+ onFocus: c ? (t) => {
73
+ t.currentTarget.matches(":focus-visible") && (N(!0), x?.(!0));
74
+ } : void 0
75
+ }
76
+ ),
77
+ /* @__PURE__ */ o(a.Portal, { children: /* @__PURE__ */ o(
78
+ a.Positioner,
79
+ {
80
+ side: u,
81
+ align: f,
82
+ sideOffset: 8,
83
+ anchor: e,
84
+ className: "z-(--z-popover) outline-none",
85
+ "data-popover-positioner": "",
86
+ "data-covered": O ? "" : void 0,
87
+ style: O ? { visibility: "hidden" } : void 0,
88
+ children: /* @__PURE__ */ p(
89
+ a.Popup,
90
+ {
91
+ ref: g,
92
+ "aria-labelledby": U,
93
+ "aria-label": M,
94
+ initialFocus: c ? !1 : void 0,
95
+ finalFocus: e === void 0 ? void 0 : () => {
96
+ const t = e && "current" in e ? e.current : e;
97
+ return t instanceof HTMLElement ? t : !0;
98
+ },
99
+ style: S,
100
+ className: n(G, J, d && K, "p-4", b),
101
+ children: [
102
+ m && /* @__PURE__ */ o(a.Arrow, { className: n(T), children: /* @__PURE__ */ o("span", { className: n(E) }) }),
103
+ /* @__PURE__ */ o("div", { className: C, children: /* @__PURE__ */ p(R.Provider, { value: D, children: [
104
+ /* @__PURE__ */ o(Q, { scope: P, actionsRef: y, setCovered: W }),
105
+ v
106
+ ] }) })
107
+ ]
108
+ }
109
+ )
110
+ }
111
+ ) })
112
+ ]
113
+ }
114
+ );
115
+ }
116
+ function Q({
117
+ scope: r,
118
+ actionsRef: e,
119
+ setCovered: s
120
+ }) {
121
+ return F(
122
+ () => q({ scope: r, close: () => e.current?.close(), setCovered: s, covers: 0 }),
123
+ [r, e, s]
124
+ ), null;
125
+ }
126
+ function se({ children: r }) {
127
+ return /* @__PURE__ */ o(a.Close, { render: r });
128
+ }
129
+ function le({ content: r, children: e, side: s = "top", className: u, tone: f = "default", defaultOpen: m, enterable: d = !1, closeOnClick: b = !0, open: v, onOpenChange: g }) {
130
+ const l = f === "danger";
131
+ return /* @__PURE__ */ p(
132
+ i.Root,
133
+ {
134
+ defaultOpen: m,
135
+ disableHoverablePopup: !d,
136
+ ...v === void 0 ? {} : { open: v, onOpenChange: g },
137
+ children: [
138
+ /* @__PURE__ */ o(i.Trigger, { closeOnClick: b, render: e }),
139
+ /* @__PURE__ */ o(i.Portal, { children: /* @__PURE__ */ o(
140
+ i.Positioner,
141
+ {
142
+ side: s,
143
+ sideOffset: 6,
144
+ className: "z-(--z-tooltip) outline-none",
145
+ children: /* @__PURE__ */ p(
146
+ i.Popup,
147
+ {
148
+ className: n(
149
+ /* dx-tooltip is a stable hook for the overlay screenshot pass.
150
+ Base UI does not put role="tooltip" on the popup — it wires
151
+ aria-describedby from the trigger instead — so there is no
152
+ semantic selector to target it by. */
153
+ "dx-tooltip relative rounded-md px-2.5 py-1.5",
154
+ l ? "bg-danger-subtle" : "bg-surface-overlay",
155
+ /* THE SAME CLAMP AS THE POPOVER, for the same reason and with
156
+ the same shape — a tooltip is portalled and positioned by the
157
+ identical machinery, so it goes off the top edge of a short
158
+ viewport in exactly the same way. `max-w-xs` is kept as the
159
+ DESIGN size, written as the `--container-xs` it compiles to so
160
+ it can sit inside the `min()`; there is no `width` prop here
161
+ because a tooltip is a label and a label that needs a declared
162
+ width is a popover.
163
+
164
+ The tooltip is the overlay that PROVED the scroller cannot
165
+ live on the popup: it is the one whose arrow is not opt-in, so
166
+ clipping it was not a possibility but a certainty on every
167
+ tooltip in the library. */
168
+ "max-w-[min(var(--container-xs),80vw,var(--available-width))]",
169
+ A,
170
+ "flex flex-col",
171
+ /* `--shadow-tooltip` rather than a size from the elevation ramp:
172
+ on dark it lifts with a bright rim and halo instead of a
173
+ shadow nobody can see. See tokens.css for why this one overlay
174
+ inverts the technique. */
175
+ "border text-xs font-medium shadow-(--shadow-tooltip)",
176
+ l ? "border-danger-border text-danger-text" : "border-border text-primary",
177
+ "origin-[var(--transform-origin)]",
178
+ /* Faster than a popover on both ends. A tooltip that lingers
179
+ while you are already reading the next thing reads as lag. */
180
+ "transition-[var(--tx-colors),opacity,scale] duration-(--dur-fast) ease-out-strong",
181
+ "data-starting-style:scale-95 data-starting-style:opacity-0",
182
+ "data-ending-style:opacity-0 data-ending-style:duration-(--dur-instant)",
183
+ u
184
+ ),
185
+ children: [
186
+ /* @__PURE__ */ o("div", { className: C, children: r }),
187
+ /* @__PURE__ */ o(i.Arrow, { className: n(T), children: /* @__PURE__ */ o(
188
+ "span",
189
+ {
190
+ className: n(
191
+ E,
192
+ l && "border-danger-border bg-danger-subtle"
193
+ )
194
+ }
195
+ ) })
196
+ ]
197
+ }
198
+ )
199
+ }
200
+ ) })
201
+ ]
202
+ }
203
+ );
204
+ }
205
+ function ne({ children: r, delay: e = 0 }) {
206
+ return /* @__PURE__ */ o(i.Provider, { delay: e, children: r });
207
+ }
208
+ export {
209
+ ie as Popover,
210
+ se as PopoverClose,
211
+ le as Tooltip,
212
+ ne as TooltipProvider
213
+ };
214
+ //# sourceMappingURL=Popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.js","sources":["../../src/components/Popover.tsx"],"sourcesContent":["import { useContext, useEffect, useMemo, useRef, useState, type CSSProperties, type ReactNode, type Ref, type RefObject } from \"react\";\nimport { Popover as BasePopover } from \"@base-ui/react/popover\";\nimport { Tooltip as BaseTooltip } from \"@base-ui/react/tooltip\";\nimport { cn } from \"../lib/cn\";\nimport { ANCHORED_POPUP_MOTION, ANCHORED_POPUP_SURFACE } from \"./overlay-shell\";\nimport { PopoverScopeContext, registerOpenPopover } from \"./overlay-stack\";\n\n/* ============================================================================\n POPOVER + TOOLTIP\n\n These look similar and are not the same thing, which is worth stating\n because using the wrong one is the most common overlay mistake:\n\n POPOVER holds CONTENT. It can be focused, contain controls, and stays\n until dismissed. Opened by click, or by hover when `openOnHover`\n is set (DX-3662).\n TOOLTIP holds a LABEL. It is never focusable, never contains a control,\n and disappears the moment you look away. Opened by hover or focus.\n\n Anything interactive inside a tooltip is unreachable by keyboard and by\n touch — there is no hover on a phone — so a \"tooltip with a button in it\" is\n always a popover wearing the wrong component.\n\n Both scale in from `--transform-origin`, which the positioner sets from the\n side it actually landed on after collision handling. A fixed origin makes a\n flipped overlay grow from the wrong corner, pointing away from its trigger.\n ========================================================================= */\n\nconst POPUP = [\n ANCHORED_POPUP_SURFACE,\n // I18N-ALLOW: CSS utility class\n \"relative\",\n ...ANCHORED_POPUP_MOTION,\n];\n\n/* ────────────────────────────────────────────────────────────────────────────\n THE SIZE CLAMP — a popover is bounded by the room it HAS, not by the\n viewport it sits in.\n\n THE DEFECT. Measured on a real screen at 1177x700: three popovers rendered\n with `top` at -50, -74 and -94 — hanging off the top edge, content\n unreadable, and nothing to scroll them back with. Three facts compose into\n that:\n\n 1. Base UI never shifts on the side axis by default. `crossAxisShiftEnabled`\n (useAnchorPositioning.mjs:162) is false unless `sticky` or a `shift`\n side-avoidance is asked for, so vertically a popup can only FLIP. Flip\n WAS working — `data-side` was measured going bottom → top — it just is\n not enough on its own: flipping a 520px panel into 421px of room still\n leaves 99px off the screen.\n 2. Base UI publishes the room and applies none of it. Its `size()`\n middleware writes `--available-width` / `--available-height` on the\n positioner and sets no max-height; its own comment (:349-352) says it\n EXPECTS the consumer to write `max-height: min(x, var(--available-height))`.\n The vars are pre-seeded to `100vw`/`100vh` so a `min()` resolves on the\n first paint rather than invalidating the declaration.\n 3. This was the one positioner in the library that never applied that cap.\n `Menu`, `Select` and `Combobox` all already do — measured here:\n `getComputedStyle(popup).maxHeight` was `none` and `overflowY` was\n `visible`, on a 520px popup with 421px to live in.\n\n WHY CUSTOM PROPERTIES RATHER THAN PLAIN CLASSES. `cn` is `twMerge`, and a\n consumer's `className` is merged LAST so it always beats the component's\n own — which is right for a design size and catastrophic for a safety rail:\n a caller passing `max-w-[42rem]` would silently delete the viewport clamp\n along with the default width. `twMerge` cannot dedupe a value it never\n sees, so the design size moves INTO a variable (`--dx-popover-w`, set by\n the `width` prop) and the `min()` around it stays in a class nothing can\n replace. Pass a width, not a max-width.\n\n 90vw/80vh ARE THE LIBRARY'S CAP and live only here — no component states\n its own. A panel allowed the full viewport is a panel with no visible edge,\n which reads as a page rather than as something attached to a control. The\n width half was raised from 80vw on request, for a consumer whose panel\n genuinely needed the room (a dense multi-column table, not prose) — the\n height stayed at 80vh, since nothing has asked for more of it and a panel\n that tall starts fighting the very flip logic that keeps it on screen.\n `--available-*` is the tighter, per-open bound: the room the positioner\n actually found beside the anchor. Whatever still does not fit scrolls\n inside the panel, which is why the scroller belongs here and not in any\n caller — ProvenanceDisclosure had written its own, capped at 80% of the\n VIEWPORT, which is the wrong bound for a panel hanging off the top of it.\n\n AND THE SCROLLER IS ONE ELEMENT IN, NOT ON THE POPUP. This was the first\n version and it was wrong: `overflow-y: auto` on the popup itself computes\n `overflow-x` to `auto` as well, so the popup becomes a scroll container in\n BOTH axes — and the arrow is a child that deliberately sits OUTSIDE the\n popup's padding box, half a blade past its edge. Measured: the tooltip's\n `elementFromPoint` at the blade tip returned the page behind it, and the\n screenshot showed a tooltip with no pointer at all. `audit:arrows` passed\n the whole time, because `getBoundingClientRect()` reports layout geometry\n and knows nothing about an ancestor clipping the paint. So the popup keeps\n the clamp and `overflow: visible`, a flex column inside it takes the\n scroll, and `min-h-0` is what lets that child shrink below its content —\n without it a flex item's automatic minimum size is its content height and\n nothing ever scrolls.\n\n THE DEFAULT CAP IS 40rem (DX-5257; it was 20rem). A popup with no `width` is\n shrink-to-fit, so the cap is a ceiling and a short list stays narrow while a\n wide table gets the room; a caller passes `width` only to override. The cap\n has to scale with the size control and\n Tailwind's own `max-w-xs` does not: the max-width scale is a fixed rem\n ladder, while every spacing utility derives from `--spacing`, which IS\n multiplied by `--ui-scale`. ThemeMenu is where that showed — at `lg` its\n `w-72` becomes 19.8rem inside an 18rem content box, so the column spilled\n past the padding edge and the switches crossed the card border, while the\n control doing it was the very control being used to change the setting.\n 18rem of content plus 2rem of padding is exactly 20rem, at every step.\n\n NOTHING IS TOUCHED ON THE POSITIONER. Flip already works, and Base UI\n re-runs it against the CAPPED height on purpose (:164-165) — so capping the\n popup makes the existing flip better rather than competing with it.\n ──────────────────────────────────────────────────────────────────────────── */\n/* The height cap, written once and shared by both overlays below — Tailwind\n scans SOURCE TEXT, so a class name assembled from parts at runtime is never\n generated; a whole class literal in a shared constant is the only form that\n both compiles and stays single-sourced.\n\n `--dx-popover-h` has no prop beside it because no caller has ever wanted a\n design height that was not 80vh — the one that asked, ProvenanceDisclosure,\n asked for exactly the default. The seam is written into the `min()` now so\n that adding the prop later is a prop and not a re-cut of the clamp; until\n then the fallback IS the design height. */\nconst CLAMP_H = \"max-h-[min(var(--dx-popover-h,80vh),80vh,var(--available-height))]\";\n\nconst POPUP_CLAMP = [\n \"max-w-[min(var(--dx-popover-w,calc(40rem*var(--ui-scale))),90vw,var(--available-width))]\",\n CLAMP_H,\n \"flex flex-col\",\n];\n\n/* DX-4086: the design width as the popup's REAL width, applied only when the\n `width` prop is passed. The popup is absolutely positioned, so with only the\n max-width above it shrinks to fit its content and `width` merely raised a\n ceiling — every panel then carried its own fixed-width copy (`w-72 max-w-full\n min-w-0`) to stop a short panel collapsing, and that copy was fixed four\n times (DX-3785, DX-4061, DX-4067, DX-4084). The same `min()` as the clamp, so\n it can still never exceed 90vw or the room the positioner found. A whole\n class literal for the same reason as CLAMP_H: Tailwind scans source text. */\nconst POPUP_WIDTH = \"w-[min(var(--dx-popover-w),90vw,var(--available-width))]\";\n\n/** The box that actually scrolls, inside the clamped popup. See above for why\n * it is not the popup itself. */\nconst SCROLLER = \"flex min-h-0 flex-col overflow-y-auto\";\n\n/**\n * The popup's own style object, carrying the design size as a custom property.\n *\n * Declared as a type rather than cast: `CSSProperties` has no index signature\n * for `--*`, so the alternative is an assertion, and an assertion is exactly\n * the thing that would stop complaining if the property name were misspelt.\n */\ntype PopoverVars = CSSProperties & { \"--dx-popover-w\"?: string };\n\n/* ────────────────────────────────────────────────────────────────────────────\n THE ARROW, AND THE BUG THAT LIVED IN IT FOR THE WHOLE PROJECT\n\n Both overlays share this. Read it before changing a class name.\n\n WHO POSITIONS WHAT. Base UI hands the arrow element inline styles straight\n from Floating UI's arrow middleware:\n\n { position: \"absolute\", top: middlewareData.arrow?.y,\n left: middlewareData.arrow?.x }\n\n and that middleware only ever fills in the CROSS axis — `x` when the popup\n sits above or below its anchor, `y` when it sits beside it. The other value\n is `undefined`, which React omits entirely. So the MAIN-axis offset — the\n half-step that pushes the arrow out through the popup's edge — is ours to\n set, and never collides with what the library writes. `top`/`bottom` for a\n vertical side, `left`/`right` for a horizontal one.\n\n THE BUG. These rules were originally written `data-side-top:bottom-[-5px]`.\n Tailwind compiles that to `[data-side-top]` — an attribute of that literal\n name. Base UI emits `data-side=\"top\"`: an attribute with a VALUE. So the\n selector matched nothing, on every side, from the day it was written. With\n no main-axis rule applying, the arrow kept its static position — the text\n line — and the inline cross-axis `left` then slid it over the first\n character. It rendered \"Open the full transcript\" as \"pen the full\n transcript\", which is what got reported.\n\n Nothing failed while that was true. A Tailwind variant matching no element\n is indistinguishable from one matching an element it does not change: no\n build error, no type error, no failing test. `audit:previews` proves a class\n EXISTS in the stylesheet; it cannot prove a selector ever matches. That is\n what `audit:arrows` measures instead — real geometry, all four sides, both\n themes. The correct syntax is `data-[side=top]:`.\n\n THE SIZE IS CAPPED BY THE SMALLEST CONSUMER. The blade is a square rotated\n 45°, centred on the popup's edge: its outer half is the point, its inner\n half covers the popup's own 1px border so the join has no seam. That inner\n half reaches `size × √2 ÷ 2` inwards — 5.7px at `size-2` — and it must stay\n inside the popup's padding or it paints over the text. The tooltip's `py-1.5`\n is 6px, so `size-2` fits and `size-2.5` (7.1px) would not. Everything here is\n written in `--spacing`, so that relationship holds at every `--ui-scale`\n rather than only at 100%.\n\n Rotation: with `border-b`+`border-r` the solid corner points down-right, 45°.\n Add the rotation that carries it to the side the popup is NOT on — a popup\n above its anchor (`data-side=top`) points down, and so on.\n ──────────────────────────────────────────────────────────────────────────── */\nconst ARROW_BOX = [\n \"group size-2\",\n \"data-[side=top]:bottom-[calc(var(--spacing)*-1)]\",\n \"data-[side=bottom]:top-[calc(var(--spacing)*-1)]\",\n \"data-[side=left]:right-[calc(var(--spacing)*-1)]\",\n \"data-[side=right]:left-[calc(var(--spacing)*-1)]\",\n];\n\nconst ARROW_BLADE = [\n \"block size-full border-b border-r border-border bg-surface-overlay\",\n \"group-data-[side=top]:rotate-45\",\n \"group-data-[side=bottom]:rotate-[225deg]\",\n \"group-data-[side=left]:rotate-[315deg]\",\n \"group-data-[side=right]:rotate-[135deg]\",\n];\n\nexport interface PopoverProps {\n /** The element that opens the popover. Omit it when `anchor` is given. */\n trigger?: ReactNode;\n /**\n * DXUI-71 — an element the CALLER owns (or a ref to one) to open beside, for\n * a popover whose target is drawn by another component, so there is no\n * trigger of our own to render. Passed straight to Base UI's\n * `Positioner.anchor`. Needs controlled `open` / `onOpenChange`; Escape and\n * an outside press close it, and focus returns to the anchor. Exclusive with\n * `trigger`.\n */\n anchor?: Element | RefObject<Element | null> | null;\n /**\n * Controlled open state — for a caller that must open this popover from\n * somewhere other than its own trigger (another control elsewhere on the\n * screen pointing at the same content). `Dialog` and `Menu` already carry\n * this exact prop; `Popover` was the one overlay a consumer could not drive\n * externally, which is a real gap rather than a deliberate omission — there\n * is nothing about a popover's semantics that makes it less legitimate to\n * open by remote control than a dialog.\n */\n open?: boolean;\n side?: \"top\" | \"bottom\" | \"left\" | \"right\";\n align?: \"start\" | \"center\" | \"end\";\n /** Draws the little pointer at the trigger. Off by default — see below. */\n arrow?: boolean;\n /**\n * The popup's width — any CSS length, e.g. `\"30rem\"` — as the REAL width of\n * the popup, not a ceiling: the popup renders at exactly this width unless\n * the room runs out, so a panel inside it is `w-full min-w-0` and carries no\n * width of its own.\n *\n * A prop rather than a `w-*`/`max-w-*` in `className`, and the difference is\n * not cosmetic: `className` is merged last and would take the viewport clamp\n * with it (see THE SIZE CLAMP above). This writes `--dx-popover-w`, which\n * sits INSIDE the `min()` — so a design size can be as large as it likes and\n * still cannot render wider than 90vw or than the room the positioner found.\n * The width includes the popup's padding and border; write it in `rem`\n * multiplied by `var(--ui-scale)` to scale with the size control as spacing does.\n *\n * Unset, the popup is content-sized, capped at the library default of 40rem\n * at the current `--ui-scale`.\n */\n width?: string;\n className?: string;\n children: ReactNode;\n ref?: Ref<HTMLDivElement>;\n /**\n * DX-3662 — open the popover on hover, not just on click, WITHOUT a\n * consumer hand-rolling its own mouseenter/mouseleave state alongside the\n * trigger's own click-to-open. Forwards straight to Base UI's\n * `Popover.Trigger` (`openOnHover`/`delay`/`closeDelay` below), which\n * already coordinates hover, click and touch as ONE state machine\n * (`useHoverReferenceInteraction` + `useClick`, both reading the same\n * `openMethod`/`openReason` store) — a real touch tap is tracked as\n * `openMethod: 'touch'` and is exempted from the hover-close path\n * (`PopoverTrigger`'s own `enabled` check), so it does not fight a\n * subsequent tap the way two independently-owned state machines would.\n * Off by default — every existing click-only popover is unaffected.\n */\n openOnHover?: boolean;\n /**\n * DXUI-34 — also open when the trigger takes KEYBOARD focus (`:focus-visible`),\n * so a help icon reached by Tab reads like one hovered. A mouse or touch focus\n * does not open it (the click that follows would toggle it shut again). Focus\n * stays on the trigger: the popup is never given initial focus, whatever opened\n * it, so tabbing onto the trigger is not a change of context. Escape and\n * clicking outside close it as ever; Tab onward leaves it open until focus\n * moves and a dismissal event arrives, exactly like a hover-open.\n * Off by default.\n */\n openOnFocus?: boolean;\n /** Hover-open delay, ms. Matches Base UI's own `restMs` default (`OPEN_DELAY`) when unset. Only meaningful with `openOnHover`. */\n delay?: number;\n /** Hover-CLOSE delay, ms — how long the popover survives after the pointer leaves BOTH the trigger and the popup before it closes, so crossing the gap between them doesn't flicker it shut. Only meaningful with `openOnHover`. */\n closeDelay?: number;\n /**\n * DX-3662 review round 3 — whether `trigger` IS a real `<button>` element.\n * Forwarded straight to Base UI's `Popover.Trigger`, whose `useButton`\n * hook needs to know: with the default `true`, it expects a genuine\n * `<button>` in `render` and — in development — logs an error and skips\n * adding its own keyboard/ARIA handling on any other element, because a\n * real button already has both natively. A `trigger` that is NOT a\n * `<button>` (a styled `<span>`, a custom donut, ...) MUST pass `false`\n * here, or it mounts with a console error and Enter/Space silently do\n * nothing — Base UI assumed native semantics it was never given.\n * @default true\n */\n nativeButton?: boolean;\n /**\n * Render open on mount. Uncontrolled — the popover still closes on its own\n * afterwards; this only decides the starting state.\n *\n * `Menu` already forwarded its open state and consequently had a preview\n * card showing a real open menu, while these two showed a picture of a\n * button. Consistency across the three overlays is the point; a static\n * documentation surface cannot dispatch a click.\n */\n defaultOpen?: boolean;\n /**\n * Told when the popup opens and when it closes. Uncontrolled still — this\n * OBSERVES the state Base UI owns rather than taking it over, which is why\n * there is no `open` prop beside it.\n *\n * `Collapsible`, `Dialog` and `Menu` all already carry this exact signature;\n * the popover was the one overlay a consumer could not hear. The reason to\n * hear it is almost never styling — it is WORK: a panel whose contents cost\n * a request must not pay for that request while it is shut, and a page of a\n * hundred closed popovers that each fetched on mount is a hundred requests\n * for the one panel somebody eventually opens.\n */\n onOpenChange?: (open: boolean) => void;\n /**\n * Names the popup for assistive technology.\n *\n * Base UI gives the popup `role=\"dialog\"`, and an unlabelled dialog\n * announces itself as nothing. Declared here rather than left to a caller\n * passing `aria-labelledby` through: an undeclared prop on a component that\n * destructures its props is silently DROPPED — it type-checks, renders, and\n * does nothing, which is how this was shipped once already.\n */\n \"aria-labelledby\"?: string;\n \"aria-label\"?: string;\n}\n\nexport function Popover({\n trigger,\n anchor,\n open,\n side = \"bottom\",\n align = \"center\",\n arrow = false,\n width,\n className,\n children,\n ref,\n defaultOpen,\n onOpenChange,\n openOnHover = false,\n openOnFocus = false,\n delay,\n closeDelay,\n nativeButton = true,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-label\": ariaLabel,\n}: PopoverProps) {\n /* `undefined` rather than an empty object when no width was given, so the\n popup carries no `style` attribute at all in the common case and the\n variable stays genuinely unset — a `--dx-popover-w: ` with an empty value\n is an INVALID declaration at computed-value time, which makes the whole\n `min()` invalid and would drop the clamp entirely. */\n if (trigger === undefined && anchor === undefined) throw new Error(\"Popover needs a `trigger` or an `anchor`.\");\n if (trigger !== undefined && anchor !== undefined) throw new Error(\"Popover takes a `trigger` or an `anchor`, not both.\");\n const popupVars: PopoverVars | undefined = width ? { \"--dx-popover-w\": width } : undefined;\n\n /* DX-4398: what a Dialog needs to know to supersede this popover — see\n `overlay-stack.ts`. */\n const [scope] = useState(() => Symbol(\"popover\"));\n const ancestry = useContext(PopoverScopeContext);\n const actionsRef = useRef<BasePopover.Root.Actions | null>(null);\n const scopes = useMemo(() => [...ancestry, scope], [ancestry, scope]);\n const [covered, setCovered] = useState(false);\n /* Only used with `openOnFocus`: Base UI has no focus-open of its own, so the\n open state moves here, inside the one component that owns every open\n trigger, and Base UI's hover/click/Escape still drive it through\n `onOpenChange`. A caller's own `open` wins. */\n const [focusOpen, setFocusOpen] = useState(defaultOpen ?? false);\n const rootOpen = open ?? (openOnFocus ? focusOpen : undefined);\n\n return (\n <BasePopover.Root\n actionsRef={actionsRef}\n open={rootOpen}\n defaultOpen={openOnFocus ? undefined : defaultOpen}\n /* Narrowed to the boolean ON PURPOSE, rather than handed Base UI's\n handler straight through. Base UI calls this with a second argument —\n an event-details object carrying the reason it closed and a\n `cancel()` — and forwarding it would publish that object as part of\n this library's surface without ever having said so: the declared type\n is `(open: boolean) => void`, and a consumer reading it would be wrong\n about what it receives the first time it wrote `(...args) =>`.\n\n The details are genuinely useful and may well be worth exposing one\n day. That is a decision to make deliberately, with a name and a type\n of our own — not one to leak by omission. */\n onOpenChange={(next) => {\n if (openOnFocus) setFocusOpen(next);\n onOpenChange?.(next);\n }}\n >\n {trigger !== undefined && (\n <BasePopover.Trigger\n render={trigger as React.ReactElement}\n openOnHover={openOnHover}\n delay={delay}\n closeDelay={closeDelay}\n nativeButton={nativeButton}\n onFocus={\n openOnFocus\n ? (event: React.FocusEvent<HTMLElement>) => {\n if (event.currentTarget.matches(\":focus-visible\")) {\n setFocusOpen(true);\n onOpenChange?.(true);\n }\n }\n : undefined\n }\n />\n )}\n <BasePopover.Portal>\n <BasePopover.Positioner\n side={side}\n align={align}\n sideOffset={8}\n anchor={anchor}\n className=\"z-(--z-popover) outline-none\"\n /* DX-4398: hidden, not unmounted, while a dialog inside it is open. */\n data-popover-positioner=\"\"\n data-covered={covered ? \"\" : undefined}\n style={covered ? { visibility: \"hidden\" } : undefined}\n >\n <BasePopover.Popup\n ref={ref}\n aria-labelledby={ariaLabelledBy}\n aria-label={ariaLabel}\n initialFocus={openOnFocus ? false : undefined}\n /* DXUI-71: with no trigger of ours, focus goes back to the caller's anchor. */\n finalFocus={\n anchor === undefined\n ? undefined\n : () => {\n const el = anchor && \"current\" in anchor ? anchor.current : anchor;\n return el instanceof HTMLElement ? el : true;\n }\n }\n style={popupVars}\n className={cn(POPUP, POPUP_CLAMP, width && POPUP_WIDTH, \"p-4\", className)}\n >\n {/* Arrows are opt-in because they are frequently WRONG: on a popup\n that has been shifted along its axis to stay on screen, the\n pointer no longer lines up with the trigger, and a pointer\n aimed at nothing is worse than no pointer. Useful when the\n popup is small and the anchor is unambiguous. */}\n {arrow && (\n <BasePopover.Arrow className={cn(ARROW_BOX)}>\n <span className={cn(ARROW_BLADE)} />\n </BasePopover.Arrow>\n )}\n {/* The padding stays on the popup and the scroll happens inside\n it, so a long panel scrolls its CONTENT under a border that\n holds still — and a consumer's `p-0` still means no padding,\n which it would not if the padding had moved in here with the\n overflow. */}\n <div className={SCROLLER}>\n <PopoverScopeContext.Provider value={scopes}>\n <OpenPopoverRegistration scope={scope} actionsRef={actionsRef} setCovered={setCovered} />\n {children}\n </PopoverScopeContext.Provider>\n </div>\n </BasePopover.Popup>\n </BasePopover.Positioner>\n </BasePopover.Portal>\n </BasePopover.Root>\n );\n}\n\n/* Mounted with the popup, so it exists exactly while the popover is open. */\nfunction OpenPopoverRegistration({\n scope,\n actionsRef,\n setCovered,\n}: {\n scope: symbol;\n actionsRef: React.RefObject<BasePopover.Root.Actions | null>;\n setCovered: (covered: boolean) => void;\n}) {\n useEffect(\n () => registerOpenPopover({ scope, close: () => actionsRef.current?.close(), setCovered, covers: 0 }),\n [scope, actionsRef, setCovered],\n );\n return null;\n}\n\n/** Closes the nearest Popover. */\nexport function PopoverClose({ children }: { children: ReactNode }) {\n return <BasePopover.Close render={children as React.ReactElement} />;\n}\n\ninterface TooltipBaseProps {\n /** The label. Plain text — anything interactive belongs in a Popover. */\n content: ReactNode;\n children: ReactNode;\n side?: \"top\" | \"bottom\" | \"left\" | \"right\";\n className?: string;\n /**\n * DX-5327 — `danger` draws the tooltip in the library's danger tokens\n * (danger text, danger border, danger-tinted surface, arrow included), for a\n * label that explains a refusal or a failure. `default` is the plain overlay.\n * @default \"default\"\n */\n tone?: \"default\" | \"danger\";\n /**\n * Render open on mount, without a hover. For documentation surfaces and\n * static captures — a tooltip nobody is pointing at is otherwise invisible,\n * so a preview card of one shows an unexplained button.\n */\n defaultOpen?: boolean;\n /**\n * Whether the pointer can move off the trigger and onto the popup itself\n * without the tooltip closing. Base UI calls the underlying prop\n * `disableHoverablePopup`, worded as the thing being turned OFF; this is\n * worded as the thing being asked for, because every call site reads as a\n * question about the popup (\"can this be entered?\"), never about a flag\n * named after its own negation.\n *\n * DEFAULT FALSE (DX-4349). A tooltip is a label, not a surface (see\n * `content`: \"anything interactive belongs in a Popover\"), and a label\n * that holds itself open under the pointer is a trap wherever marks sit\n * side by side: the popup is drawn right over the neighbouring marks, so\n * moving toward the next one lands on the popup, keeps it open and blocks\n * the mark underneath. Opt IN only for a tooltip whose text a reader must\n * be able to point into and keep reading (WCAG 1.4.13 \"hoverable\") and that\n * sits clear of other controls.\n * @default false\n */\n enterable?: boolean;\n /**\n * DXUI-41: whether a press on the trigger closes the tooltip (Base UI's\n * `closeOnClick`). A trigger whose own tap handler forces the tooltip open\n * (the controlled pair below) sets this FALSE: the press-close runs after\n * that handler on the same tap and shuts the tooltip it just opened, so a\n * touch tap showed nothing.\n * @default true\n */\n closeOnClick?: boolean;\n}\n\n/**\n * DX-3014 — the OPT-IN controlled pair, for a caller that needs to force the\n * tooltip open from an event neither hover nor keyboard focus covers.\n *\n * The gap this closes: Base UI opens on hover AND on keyboard focus (a real\n * Tab keypress), but NOT on a plain `.focus()` call or a touch tap — both\n * land as an ordinary (non-`:focus-visible`) focus, which the interaction the\n * library reads for \"focus\" deliberately excludes (measured directly: a\n * simulated tap focuses the trigger element but never opens the popup; a real\n * Tab keypress does). A caller with a genuine touch-reachability requirement\n * (a segmented-donut status breakdown, e.g.) wires its own tap handler to\n * `onOpenChange`/`open` instead of fighting the trigger's focus semantics.\n *\n * BOTH OR NEITHER: passing only one makes Base UI's `Root` half-controlled\n * (it would echo state changes nobody reads, or ignore an external open) — a\n * discriminated union so TypeScript refuses the half-controlled shape at the\n * call site rather than leaving it a runtime footgun. Omit both (the\n * default, and every existing call site) for the unchanged uncontrolled\n * hover/keyboard-focus behaviour.\n */\nexport type TooltipProps = TooltipBaseProps &\n ({ open?: undefined; onOpenChange?: undefined } | { open: boolean; onOpenChange: (open: boolean) => void });\n\n/**\n * Hover delay is set once on `TooltipProvider`, not per tooltip — that is where\n * Base UI keeps it, and it is the right place: the delay only means anything\n * relative to the OTHER tooltips nearby.\n */\nexport function Tooltip({ content, children, side = \"top\", className, tone = \"default\", defaultOpen, enterable = false, closeOnClick = true, open, onOpenChange }: TooltipProps) {\n const danger = tone === \"danger\";\n return (\n <BaseTooltip.Root\n defaultOpen={defaultOpen}\n disableHoverablePopup={!enterable}\n {...(open === undefined ? {} : { open, onOpenChange })}\n >\n <BaseTooltip.Trigger closeOnClick={closeOnClick} render={children as React.ReactElement} />\n <BaseTooltip.Portal>\n <BaseTooltip.Positioner\n side={side}\n sideOffset={6}\n className=\"z-(--z-tooltip) outline-none\"\n >\n <BaseTooltip.Popup\n className={cn(\n /* dx-tooltip is a stable hook for the overlay screenshot pass.\n Base UI does not put role=\"tooltip\" on the popup — it wires\n aria-describedby from the trigger instead — so there is no\n semantic selector to target it by. */\n \"dx-tooltip relative rounded-md px-2.5 py-1.5\",\n danger ? \"bg-danger-subtle\" : \"bg-surface-overlay\",\n /* THE SAME CLAMP AS THE POPOVER, for the same reason and with\n the same shape — a tooltip is portalled and positioned by the\n identical machinery, so it goes off the top edge of a short\n viewport in exactly the same way. `max-w-xs` is kept as the\n DESIGN size, written as the `--container-xs` it compiles to so\n it can sit inside the `min()`; there is no `width` prop here\n because a tooltip is a label and a label that needs a declared\n width is a popover.\n\n The tooltip is the overlay that PROVED the scroller cannot\n live on the popup: it is the one whose arrow is not opt-in, so\n clipping it was not a possibility but a certainty on every\n tooltip in the library. */\n \"max-w-[min(var(--container-xs),80vw,var(--available-width))]\",\n CLAMP_H,\n \"flex flex-col\",\n /* `--shadow-tooltip` rather than a size from the elevation ramp:\n on dark it lifts with a bright rim and halo instead of a\n shadow nobody can see. See tokens.css for why this one overlay\n inverts the technique. */\n \"border text-xs font-medium shadow-(--shadow-tooltip)\",\n danger ? \"border-danger-border text-danger-text\" : \"border-border text-primary\",\n \"origin-[var(--transform-origin)]\",\n /* Faster than a popover on both ends. A tooltip that lingers\n while you are already reading the next thing reads as lag. */\n \"transition-[var(--tx-colors),opacity,scale] duration-(--dur-fast) ease-out-strong\",\n \"data-starting-style:scale-95 data-starting-style:opacity-0\",\n \"data-ending-style:opacity-0 data-ending-style:duration-(--dur-instant)\",\n className,\n )}\n >\n <div className={SCROLLER}>{content}</div>\n {/* THE TOOLTIP ALWAYS HAS ITS ARROW; the popover's is opt-in. That\n inconsistency is deliberate and worth stating, because it looks\n like an oversight.\n\n The argument against arrows above is about WIDE popups: one\n shifted along its axis to stay on screen ends up pointing at\n nothing, which is worse than not pointing at all. A tooltip is a\n narrow chip — it barely shifts — and naming one specific control\n is its entire job, so the pointer earns its place here. */}\n <BaseTooltip.Arrow className={cn(ARROW_BOX)}>\n <span\n className={cn(\n ARROW_BLADE,\n danger && \"border-danger-border bg-danger-subtle\",\n )}\n />\n </BaseTooltip.Arrow>\n </BaseTooltip.Popup>\n </BaseTooltip.Positioner>\n </BaseTooltip.Portal>\n </BaseTooltip.Root>\n );\n}\n\n/**\n * Share hover timing across every tooltip beneath it.\n *\n * Wrap the app once. Without it each tooltip keeps its own timer, so moving\n * between two adjacent icons makes you wait out the full delay twice — the\n * thing that makes tooltips feel broken in dense toolbars.\n *\n * THE DEFAULT IS ZERO. A hover delay exists to stop tooltips firing while the\n * pointer merely crosses a toolbar on its way somewhere else — but the cost is\n * paid by everyone who actually wanted the label, every time, and it is the\n * cost people describe as \"the tooltip is slow\". These tooltips name controls\n * that are often icon-only, so the label IS the affordance and withholding it\n * for 400ms is withholding the interface. The prop remains for anyone who\n * wants the traditional behaviour back.\n */\nexport function TooltipProvider({ children, delay = 0 }: { children: ReactNode; delay?: number }) {\n return <BaseTooltip.Provider delay={delay}>{children}</BaseTooltip.Provider>;\n}\n"],"names":["POPUP","ANCHORED_POPUP_SURFACE","ANCHORED_POPUP_MOTION","CLAMP_H","POPUP_CLAMP","POPUP_WIDTH","SCROLLER","ARROW_BOX","ARROW_BLADE","Popover","trigger","anchor","open","side","align","arrow","width","className","children","ref","defaultOpen","onOpenChange","openOnHover","openOnFocus","delay","closeDelay","nativeButton","ariaLabelledBy","ariaLabel","popupVars","scope","useState","ancestry","useContext","PopoverScopeContext","actionsRef","useRef","scopes","useMemo","covered","setCovered","focusOpen","setFocusOpen","rootOpen","jsxs","BasePopover","next","jsx","event","el","cn","OpenPopoverRegistration","useEffect","registerOpenPopover","PopoverClose","Tooltip","content","tone","enterable","closeOnClick","danger","BaseTooltip","TooltipProvider"],"mappings":"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"}