@langchain/macaw-components 1.0.0-beta.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 (566) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +27 -0
  3. package/dist/_chunks/ErrorState-CmPX01HV.js +13361 -0
  4. package/dist/_chunks/ErrorState-CmPX01HV.js.map +1 -0
  5. package/dist/_chunks/LoadingIndicator-DgtU9aqD.js +80 -0
  6. package/dist/_chunks/LoadingIndicator-DgtU9aqD.js.map +1 -0
  7. package/dist/base.css +305 -0
  8. package/dist/catalog.json +1675 -0
  9. package/dist/components/Avatar/Avatar.d.ts +28 -0
  10. package/dist/components/Avatar/Avatar.js +47 -0
  11. package/dist/components/Avatar/Avatar.js.map +1 -0
  12. package/dist/components/Avatar/index.d.ts +2 -0
  13. package/dist/components/Avatar/index.js +2 -0
  14. package/dist/components/Badge/Badge.d.ts +25 -0
  15. package/dist/components/Badge/Badge.js +82 -0
  16. package/dist/components/Badge/Badge.js.map +1 -0
  17. package/dist/components/Badge/index.d.ts +2 -0
  18. package/dist/components/Badge/index.js +2 -0
  19. package/dist/components/Banner/Banner.d.ts +15 -0
  20. package/dist/components/Banner/Banner.js +102 -0
  21. package/dist/components/Banner/Banner.js.map +1 -0
  22. package/dist/components/Banner/index.d.ts +2 -0
  23. package/dist/components/Banner/index.js +2 -0
  24. package/dist/components/BarChart/AnimatedBar.d.ts +20 -0
  25. package/dist/components/BarChart/AnimatedBar.js +65 -0
  26. package/dist/components/BarChart/AnimatedBar.js.map +1 -0
  27. package/dist/components/BarChart/BarChart.d.ts +25 -0
  28. package/dist/components/BarChart/BarChart.js +248 -0
  29. package/dist/components/BarChart/BarChart.js.map +1 -0
  30. package/dist/components/BarChart/BarChart.types.d.ts +239 -0
  31. package/dist/components/BarChart/BarChart.types.js +0 -0
  32. package/dist/components/BarChart/BarChart.utils.d.ts +51 -0
  33. package/dist/components/BarChart/BarChart.utils.js +215 -0
  34. package/dist/components/BarChart/BarChart.utils.js.map +1 -0
  35. package/dist/components/BarChart/BarChartAxes.d.ts +22 -0
  36. package/dist/components/BarChart/BarChartAxes.js +144 -0
  37. package/dist/components/BarChart/BarChartAxes.js.map +1 -0
  38. package/dist/components/BarChart/BarChartGuides.d.ts +22 -0
  39. package/dist/components/BarChart/BarChartGuides.js +83 -0
  40. package/dist/components/BarChart/BarChartGuides.js.map +1 -0
  41. package/dist/components/BarChart/BarChartPlot.d.ts +40 -0
  42. package/dist/components/BarChart/BarChartPlot.js +262 -0
  43. package/dist/components/BarChart/BarChartPlot.js.map +1 -0
  44. package/dist/components/BarChart/constants.d.ts +21 -0
  45. package/dist/components/BarChart/constants.js +26 -0
  46. package/dist/components/BarChart/constants.js.map +1 -0
  47. package/dist/components/BarChart/index.d.ts +3 -0
  48. package/dist/components/BarChart/index.js +3 -0
  49. package/dist/components/Button/Button.d.ts +36 -0
  50. package/dist/components/Button/Button.js +99 -0
  51. package/dist/components/Button/Button.js.map +1 -0
  52. package/dist/components/Button/constants.d.ts +26 -0
  53. package/dist/components/Button/constants.js +31 -0
  54. package/dist/components/Button/constants.js.map +1 -0
  55. package/dist/components/Button/index.d.ts +2 -0
  56. package/dist/components/Button/index.js +2 -0
  57. package/dist/components/ButtonGroup/ButtonGroup.d.ts +30 -0
  58. package/dist/components/ButtonGroup/ButtonGroup.js +26 -0
  59. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -0
  60. package/dist/components/ButtonGroup/index.d.ts +2 -0
  61. package/dist/components/ButtonGroup/index.js +2 -0
  62. package/dist/components/Card/Card.d.ts +10 -0
  63. package/dist/components/Card/Card.js +23 -0
  64. package/dist/components/Card/Card.js.map +1 -0
  65. package/dist/components/Card/index.d.ts +2 -0
  66. package/dist/components/Card/index.js +2 -0
  67. package/dist/components/ChartCard/ChartCard.d.ts +53 -0
  68. package/dist/components/ChartCard/ChartCard.js +172 -0
  69. package/dist/components/ChartCard/ChartCard.js.map +1 -0
  70. package/dist/components/ChartCard/ChartCardSkeleton.d.ts +7 -0
  71. package/dist/components/ChartCard/ChartCardSkeleton.js +61 -0
  72. package/dist/components/ChartCard/ChartCardSkeleton.js.map +1 -0
  73. package/dist/components/ChartCard/index.d.ts +4 -0
  74. package/dist/components/ChartCard/index.js +3 -0
  75. package/dist/components/ChartLegend/ChartLegend.d.ts +19 -0
  76. package/dist/components/ChartLegend/ChartLegend.js +195 -0
  77. package/dist/components/ChartLegend/ChartLegend.js.map +1 -0
  78. package/dist/components/ChartLegend/ChartLegendItemRenderer.d.ts +14 -0
  79. package/dist/components/ChartLegend/ChartLegendItemRenderer.js +90 -0
  80. package/dist/components/ChartLegend/ChartLegendItemRenderer.js.map +1 -0
  81. package/dist/components/ChartLegend/index.d.ts +3 -0
  82. package/dist/components/ChartLegend/index.js +3 -0
  83. package/dist/components/ChartLegend/useChartLegendActiveItem.d.ts +7 -0
  84. package/dist/components/ChartLegend/useChartLegendActiveItem.js +35 -0
  85. package/dist/components/ChartLegend/useChartLegendActiveItem.js.map +1 -0
  86. package/dist/components/ChartLegend/utils.d.ts +20 -0
  87. package/dist/components/ChartLegend/utils.js +33 -0
  88. package/dist/components/ChartLegend/utils.js.map +1 -0
  89. package/dist/components/ChartTooltip/ChartTooltip.d.ts +23 -0
  90. package/dist/components/ChartTooltip/ChartTooltip.js +83 -0
  91. package/dist/components/ChartTooltip/ChartTooltip.js.map +1 -0
  92. package/dist/components/ChartTooltip/index.d.ts +2 -0
  93. package/dist/components/ChartTooltip/index.js +2 -0
  94. package/dist/components/Checkbox/Checkbox.d.ts +58 -0
  95. package/dist/components/Checkbox/Checkbox.js +50 -0
  96. package/dist/components/Checkbox/Checkbox.js.map +1 -0
  97. package/dist/components/Checkbox/constants.d.ts +28 -0
  98. package/dist/components/Checkbox/constants.js +57 -0
  99. package/dist/components/Checkbox/constants.js.map +1 -0
  100. package/dist/components/Checkbox/getCheckedState.d.ts +6 -0
  101. package/dist/components/Checkbox/getCheckedState.js +14 -0
  102. package/dist/components/Checkbox/getCheckedState.js.map +1 -0
  103. package/dist/components/Checkbox/index.d.ts +3 -0
  104. package/dist/components/Checkbox/index.js +3 -0
  105. package/dist/components/CircularProgress/CircularProgress.d.ts +54 -0
  106. package/dist/components/CircularProgress/CircularProgress.js +85 -0
  107. package/dist/components/CircularProgress/CircularProgress.js.map +1 -0
  108. package/dist/components/CircularProgress/index.d.ts +2 -0
  109. package/dist/components/CircularProgress/index.js +2 -0
  110. package/dist/components/Code/Code.utils.d.ts +24 -0
  111. package/dist/components/Code/Code.utils.js +160 -0
  112. package/dist/components/Code/Code.utils.js.map +1 -0
  113. package/dist/components/Code/CodeLite.d.ts +19 -0
  114. package/dist/components/Code/CodeLite.js +146 -0
  115. package/dist/components/Code/CodeLite.js.map +1 -0
  116. package/dist/components/Code/CodeLite.utils.d.ts +24 -0
  117. package/dist/components/Code/CodeLite.utils.js +273 -0
  118. package/dist/components/Code/CodeLite.utils.js.map +1 -0
  119. package/dist/components/Code/ImageReplacerExtension.d.ts +9 -0
  120. package/dist/components/Code/ImageReplacerExtension.js +227 -0
  121. package/dist/components/Code/ImageReplacerExtension.js.map +1 -0
  122. package/dist/components/Code/JsonHighlighterExtension.d.ts +4 -0
  123. package/dist/components/Code/JsonHighlighterExtension.js +172 -0
  124. package/dist/components/Code/JsonHighlighterExtension.js.map +1 -0
  125. package/dist/components/Code/constants.d.ts +6 -0
  126. package/dist/components/Code/constants.js +11 -0
  127. package/dist/components/Code/constants.js.map +1 -0
  128. package/dist/components/Code/index.d.ts +30 -0
  129. package/dist/components/Code/index.js +140 -0
  130. package/dist/components/Code/index.js.map +1 -0
  131. package/dist/components/Code/languages/json.d.ts +1 -0
  132. package/dist/components/Code/languages/json.js +7 -0
  133. package/dist/components/Code/languages/json.js.map +1 -0
  134. package/dist/components/Code/languages/languages.d.ts +7 -0
  135. package/dist/components/Code/languages/languages.js +12 -0
  136. package/dist/components/Code/languages/languages.js.map +1 -0
  137. package/dist/components/Code/languages/python.d.ts +1 -0
  138. package/dist/components/Code/languages/python.js +7 -0
  139. package/dist/components/Code/languages/python.js.map +1 -0
  140. package/dist/components/Code/languages/shell.d.ts +7 -0
  141. package/dist/components/Code/languages/shell.js +241 -0
  142. package/dist/components/Code/languages/shell.js.map +1 -0
  143. package/dist/components/Code/languages/typescript.d.ts +1 -0
  144. package/dist/components/Code/languages/typescript.js +7 -0
  145. package/dist/components/Code/languages/typescript.js.map +1 -0
  146. package/dist/components/Code/languages/yaml.d.ts +2 -0
  147. package/dist/components/Code/languages/yaml.js +44 -0
  148. package/dist/components/Code/languages/yaml.js.map +1 -0
  149. package/dist/components/Code/types.d.ts +8 -0
  150. package/dist/components/Code/types.js +0 -0
  151. package/dist/components/Code/utils.d.ts +4 -0
  152. package/dist/components/Code/utils.js +27 -0
  153. package/dist/components/Code/utils.js.map +1 -0
  154. package/dist/components/Command/Command.d.ts +78 -0
  155. package/dist/components/Command/Command.js +78 -0
  156. package/dist/components/Command/Command.js.map +1 -0
  157. package/dist/components/Command/CommandMenu.d.ts +65 -0
  158. package/dist/components/Command/CommandMenu.js +101 -0
  159. package/dist/components/Command/CommandMenu.js.map +1 -0
  160. package/dist/components/Command/index.d.ts +4 -0
  161. package/dist/components/Command/index.js +3 -0
  162. package/dist/components/ContextMenu/ContextMenu.d.ts +9 -0
  163. package/dist/components/ContextMenu/ContextMenu.js +43 -0
  164. package/dist/components/ContextMenu/ContextMenu.js.map +1 -0
  165. package/dist/components/ContextMenu/index.d.ts +1 -0
  166. package/dist/components/ContextMenu/index.js +2 -0
  167. package/dist/components/CopyButton/CopyButton.d.ts +24 -0
  168. package/dist/components/CopyButton/CopyButton.js +121 -0
  169. package/dist/components/CopyButton/CopyButton.js.map +1 -0
  170. package/dist/components/CopyButton/copyToClipboard.d.ts +1 -0
  171. package/dist/components/CopyButton/copyToClipboard.js +29 -0
  172. package/dist/components/CopyButton/copyToClipboard.js.map +1 -0
  173. package/dist/components/CopyButton/index.d.ts +4 -0
  174. package/dist/components/CopyButton/index.js +4 -0
  175. package/dist/components/CopyButton/useCopy.d.ts +10 -0
  176. package/dist/components/CopyButton/useCopy.js +46 -0
  177. package/dist/components/CopyButton/useCopy.js.map +1 -0
  178. package/dist/components/Dialog/index.d.ts +49 -0
  179. package/dist/components/Dialog/index.js +130 -0
  180. package/dist/components/Dialog/index.js.map +1 -0
  181. package/dist/components/Divider/Divider.d.ts +9 -0
  182. package/dist/components/Divider/Divider.js +27 -0
  183. package/dist/components/Divider/Divider.js.map +1 -0
  184. package/dist/components/Divider/index.d.ts +2 -0
  185. package/dist/components/Divider/index.js +2 -0
  186. package/dist/components/DonutChart/DonutChart.d.ts +101 -0
  187. package/dist/components/DonutChart/DonutChart.js +197 -0
  188. package/dist/components/DonutChart/DonutChart.js.map +1 -0
  189. package/dist/components/DonutChart/DonutChart.utils.d.ts +38 -0
  190. package/dist/components/DonutChart/DonutChart.utils.js +93 -0
  191. package/dist/components/DonutChart/DonutChart.utils.js.map +1 -0
  192. package/dist/components/DonutChart/constants.d.ts +7 -0
  193. package/dist/components/DonutChart/constants.js +12 -0
  194. package/dist/components/DonutChart/constants.js.map +1 -0
  195. package/dist/components/DonutChart/index.d.ts +4 -0
  196. package/dist/components/DonutChart/index.js +4 -0
  197. package/dist/components/DropdownMenu/DropdownMenu.d.ts +24 -0
  198. package/dist/components/DropdownMenu/DropdownMenu.js +149 -0
  199. package/dist/components/DropdownMenu/DropdownMenu.js.map +1 -0
  200. package/dist/components/DropdownMenu/index.d.ts +1 -0
  201. package/dist/components/DropdownMenu/index.js +2 -0
  202. package/dist/components/EmptyState/EmptyState.d.ts +26 -0
  203. package/dist/components/EmptyState/EmptyState.js +85 -0
  204. package/dist/components/EmptyState/EmptyState.js.map +1 -0
  205. package/dist/components/EmptyState/index.d.ts +2 -0
  206. package/dist/components/EmptyState/index.js +2 -0
  207. package/dist/components/ErrorBoundary.d.ts +35 -0
  208. package/dist/components/ErrorBoundary.js +41 -0
  209. package/dist/components/ErrorBoundary.js.map +1 -0
  210. package/dist/components/ErrorMessage/ErrorMessage.d.ts +17 -0
  211. package/dist/components/ErrorMessage/ErrorMessage.js +146 -0
  212. package/dist/components/ErrorMessage/ErrorMessage.js.map +1 -0
  213. package/dist/components/ErrorMessage/index.d.ts +2 -0
  214. package/dist/components/ErrorMessage/index.js +2 -0
  215. package/dist/components/ErrorState/ErrorState.d.ts +23 -0
  216. package/dist/components/ErrorState/ErrorState.js +2 -0
  217. package/dist/components/ErrorState/index.d.ts +2 -0
  218. package/dist/components/ErrorState/index.js +2 -0
  219. package/dist/components/GroupedTabs/GroupedTabs.d.ts +31 -0
  220. package/dist/components/GroupedTabs/GroupedTabs.js +92 -0
  221. package/dist/components/GroupedTabs/GroupedTabs.js.map +1 -0
  222. package/dist/components/GroupedTabs/index.d.ts +2 -0
  223. package/dist/components/GroupedTabs/index.js +2 -0
  224. package/dist/components/HoverCard.d.ts +4 -0
  225. package/dist/components/HoverCard.js +34 -0
  226. package/dist/components/HoverCard.js.map +1 -0
  227. package/dist/components/Icon/Icon.d.ts +25 -0
  228. package/dist/components/Icon/Icon.js +57 -0
  229. package/dist/components/Icon/Icon.js.map +1 -0
  230. package/dist/components/Icon/index.d.ts +2 -0
  231. package/dist/components/Icon/index.js +2 -0
  232. package/dist/components/IconButton/IconButton.d.ts +35 -0
  233. package/dist/components/IconButton/IconButton.js +73 -0
  234. package/dist/components/IconButton/IconButton.js.map +1 -0
  235. package/dist/components/IconButton/index.d.ts +2 -0
  236. package/dist/components/IconButton/index.js +2 -0
  237. package/dist/components/Input/Input.d.ts +72 -0
  238. package/dist/components/Input/Input.js +221 -0
  239. package/dist/components/Input/Input.js.map +1 -0
  240. package/dist/components/Input/index.d.ts +2 -0
  241. package/dist/components/Input/index.js +2 -0
  242. package/dist/components/Input/inputStyles.d.ts +28 -0
  243. package/dist/components/Input/inputStyles.js +45 -0
  244. package/dist/components/Input/inputStyles.js.map +1 -0
  245. package/dist/components/Kbd/Kbd.d.ts +15 -0
  246. package/dist/components/Kbd/Kbd.js +30 -0
  247. package/dist/components/Kbd/Kbd.js.map +1 -0
  248. package/dist/components/Kbd/index.d.ts +2 -0
  249. package/dist/components/Kbd/index.js +2 -0
  250. package/dist/components/LineChart/LineChart.d.ts +8 -0
  251. package/dist/components/LineChart/LineChart.js +194 -0
  252. package/dist/components/LineChart/LineChart.js.map +1 -0
  253. package/dist/components/LineChart/LineChart.types.d.ts +138 -0
  254. package/dist/components/LineChart/LineChart.types.js +0 -0
  255. package/dist/components/LineChart/LineChart.utils.d.ts +29 -0
  256. package/dist/components/LineChart/LineChart.utils.js +123 -0
  257. package/dist/components/LineChart/LineChart.utils.js.map +1 -0
  258. package/dist/components/LineChart/LineChartPlot.d.ts +43 -0
  259. package/dist/components/LineChart/LineChartPlot.js +306 -0
  260. package/dist/components/LineChart/LineChartPlot.js.map +1 -0
  261. package/dist/components/LineChart/constants.d.ts +3 -0
  262. package/dist/components/LineChart/constants.js +8 -0
  263. package/dist/components/LineChart/constants.js.map +1 -0
  264. package/dist/components/LineChart/index.d.ts +2 -0
  265. package/dist/components/LineChart/index.js +2 -0
  266. package/dist/components/LinearProgress/LinearProgress.d.ts +16 -0
  267. package/dist/components/LinearProgress/LinearProgress.js +42 -0
  268. package/dist/components/LinearProgress/LinearProgress.js.map +1 -0
  269. package/dist/components/LinearProgress/index.d.ts +2 -0
  270. package/dist/components/LinearProgress/index.js +2 -0
  271. package/dist/components/Link/Link.d.ts +30 -0
  272. package/dist/components/Link/Link.js +51 -0
  273. package/dist/components/Link/Link.js.map +1 -0
  274. package/dist/components/Link/index.d.ts +2 -0
  275. package/dist/components/Link/index.js +2 -0
  276. package/dist/components/Logo/index.d.ts +17 -0
  277. package/dist/components/Logo/index.js +705 -0
  278. package/dist/components/Logo/index.js.map +1 -0
  279. package/dist/components/MetricChart/MetricChart.d.ts +9 -0
  280. package/dist/components/MetricChart/MetricChart.js +42 -0
  281. package/dist/components/MetricChart/MetricChart.js.map +1 -0
  282. package/dist/components/MetricChart/formatters.d.ts +18 -0
  283. package/dist/components/MetricChart/formatters.js +34 -0
  284. package/dist/components/MetricChart/formatters.js.map +1 -0
  285. package/dist/components/MetricChart/index.d.ts +4 -0
  286. package/dist/components/MetricChart/index.js +3 -0
  287. package/dist/components/Pane/Pane.d.ts +29 -0
  288. package/dist/components/Pane/Pane.js +171 -0
  289. package/dist/components/Pane/Pane.js.map +1 -0
  290. package/dist/components/Pane/Pane.utils.d.ts +10 -0
  291. package/dist/components/Pane/Pane.utils.js +7 -0
  292. package/dist/components/Pane/Pane.utils.js.map +1 -0
  293. package/dist/components/Pane/index.d.ts +3 -0
  294. package/dist/components/Pane/index.js +3 -0
  295. package/dist/components/PlainTextEditor/hooks/useResizeTextEditor.d.ts +9 -0
  296. package/dist/components/PlainTextEditor/hooks/useResizeTextEditor.js +76 -0
  297. package/dist/components/PlainTextEditor/hooks/useResizeTextEditor.js.map +1 -0
  298. package/dist/components/PlainTextEditor/index.d.ts +18 -0
  299. package/dist/components/PlainTextEditor/index.js +71 -0
  300. package/dist/components/PlainTextEditor/index.js.map +1 -0
  301. package/dist/components/Popover/Popover.d.ts +13 -0
  302. package/dist/components/Popover/Popover.js +48 -0
  303. package/dist/components/Popover/Popover.js.map +1 -0
  304. package/dist/components/Popover/constants.d.ts +1 -0
  305. package/dist/components/Popover/constants.js +6 -0
  306. package/dist/components/Popover/constants.js.map +1 -0
  307. package/dist/components/Popover/index.d.ts +1 -0
  308. package/dist/components/Popover/index.js +2 -0
  309. package/dist/components/PortalSlot.d.ts +11 -0
  310. package/dist/components/PortalSlot.js +41 -0
  311. package/dist/components/PortalSlot.js.map +1 -0
  312. package/dist/components/ProgressBar/ProgressBar.d.ts +38 -0
  313. package/dist/components/ProgressBar/ProgressBar.js +82 -0
  314. package/dist/components/ProgressBar/ProgressBar.js.map +1 -0
  315. package/dist/components/ProgressBar/index.d.ts +2 -0
  316. package/dist/components/ProgressBar/index.js +2 -0
  317. package/dist/components/RadioButton/RadioButton.d.ts +62 -0
  318. package/dist/components/RadioButton/RadioButton.js +38 -0
  319. package/dist/components/RadioButton/RadioButton.js.map +1 -0
  320. package/dist/components/RadioButton/constants.d.ts +30 -0
  321. package/dist/components/RadioButton/constants.js +55 -0
  322. package/dist/components/RadioButton/constants.js.map +1 -0
  323. package/dist/components/RadioButton/index.d.ts +2 -0
  324. package/dist/components/RadioButton/index.js +2 -0
  325. package/dist/components/RadioCard/RadioCard.d.ts +26 -0
  326. package/dist/components/RadioCard/RadioCard.js +43 -0
  327. package/dist/components/RadioCard/RadioCard.js.map +1 -0
  328. package/dist/components/RadioCard/index.d.ts +2 -0
  329. package/dist/components/RadioCard/index.js +2 -0
  330. package/dist/components/RadioGroup/RadioGroup.d.ts +5 -0
  331. package/dist/components/RadioGroup/RadioGroup.js +17 -0
  332. package/dist/components/RadioGroup/RadioGroup.js.map +1 -0
  333. package/dist/components/RadioGroup/RadioGroupItem.d.ts +5 -0
  334. package/dist/components/RadioGroup/RadioGroupItem.js +22 -0
  335. package/dist/components/RadioGroup/RadioGroupItem.js.map +1 -0
  336. package/dist/components/RadioGroup/index.d.ts +4 -0
  337. package/dist/components/RadioGroup/index.js +3 -0
  338. package/dist/components/Select/Select.d.ts +84 -0
  339. package/dist/components/Select/Select.js +120 -0
  340. package/dist/components/Select/Select.js.map +1 -0
  341. package/dist/components/Select/SelectPrimitive.d.ts +17 -0
  342. package/dist/components/Select/SelectPrimitive.js +126 -0
  343. package/dist/components/Select/SelectPrimitive.js.map +1 -0
  344. package/dist/components/Select/index.d.ts +4 -0
  345. package/dist/components/Select/index.js +3 -0
  346. package/dist/components/Skeleton/Skeleton.d.ts +13 -0
  347. package/dist/components/Skeleton/Skeleton.js +25 -0
  348. package/dist/components/Skeleton/Skeleton.js.map +1 -0
  349. package/dist/components/Skeleton/index.d.ts +1 -0
  350. package/dist/components/Skeleton/index.js +2 -0
  351. package/dist/components/Slider/Slider.d.ts +33 -0
  352. package/dist/components/Slider/Slider.js +64 -0
  353. package/dist/components/Slider/Slider.js.map +1 -0
  354. package/dist/components/Slider/index.d.ts +2 -0
  355. package/dist/components/Slider/index.js +2 -0
  356. package/dist/components/SparkLineChart/SparkLineChart.d.ts +14 -0
  357. package/dist/components/SparkLineChart/SparkLineChart.js +112 -0
  358. package/dist/components/SparkLineChart/SparkLineChart.js.map +1 -0
  359. package/dist/components/SparkLineChart/index.d.ts +2 -0
  360. package/dist/components/SparkLineChart/index.js +2 -0
  361. package/dist/components/Spinner/Spinner.d.ts +12 -0
  362. package/dist/components/Spinner/Spinner.js +33 -0
  363. package/dist/components/Spinner/Spinner.js.map +1 -0
  364. package/dist/components/Spinner/index.d.ts +1 -0
  365. package/dist/components/Spinner/index.js +2 -0
  366. package/dist/components/SplitViewPane/SplitViewPane.d.ts +41 -0
  367. package/dist/components/SplitViewPane/SplitViewPane.js +314 -0
  368. package/dist/components/SplitViewPane/SplitViewPane.js.map +1 -0
  369. package/dist/components/SplitViewPane/SplitViewPaneHeader.d.ts +22 -0
  370. package/dist/components/SplitViewPane/SplitViewPaneHeader.js +105 -0
  371. package/dist/components/SplitViewPane/SplitViewPaneHeader.js.map +1 -0
  372. package/dist/components/SplitViewPane/index.d.ts +2 -0
  373. package/dist/components/SplitViewPane/index.js +3 -0
  374. package/dist/components/SplitViewPane/openPaneRegistry.d.ts +2 -0
  375. package/dist/components/SplitViewPane/openPaneRegistry.js +49 -0
  376. package/dist/components/SplitViewPane/openPaneRegistry.js.map +1 -0
  377. package/dist/components/Switch/Switch.d.ts +35 -0
  378. package/dist/components/Switch/Switch.js +65 -0
  379. package/dist/components/Switch/Switch.js.map +1 -0
  380. package/dist/components/Switch/index.d.ts +2 -0
  381. package/dist/components/Switch/index.js +2 -0
  382. package/dist/components/Tabs/index.d.ts +27 -0
  383. package/dist/components/Tabs/index.js +45 -0
  384. package/dist/components/Tabs/index.js.map +1 -0
  385. package/dist/components/Text/Text.d.ts +13 -0
  386. package/dist/components/Text/Text.js +58 -0
  387. package/dist/components/Text/Text.js.map +1 -0
  388. package/dist/components/Text/index.d.ts +2 -0
  389. package/dist/components/Text/index.js +2 -0
  390. package/dist/components/TextVirtualizer.d.ts +8 -0
  391. package/dist/components/TextVirtualizer.js +53 -0
  392. package/dist/components/TextVirtualizer.js.map +1 -0
  393. package/dist/components/TextWithLinks.d.ts +6 -0
  394. package/dist/components/TextWithLinks.js +61 -0
  395. package/dist/components/TextWithLinks.js.map +1 -0
  396. package/dist/components/Textarea/Textarea.d.ts +47 -0
  397. package/dist/components/Textarea/Textarea.js +150 -0
  398. package/dist/components/Textarea/Textarea.js.map +1 -0
  399. package/dist/components/Textarea/index.d.ts +2 -0
  400. package/dist/components/Textarea/index.js +2 -0
  401. package/dist/components/ThinkingState/LoadingIndicator.d.ts +19 -0
  402. package/dist/components/ThinkingState/LoadingIndicator.js +2 -0
  403. package/dist/components/ThinkingState/NOTICE +25 -0
  404. package/dist/components/ThinkingState/ThinkingState.d.ts +21 -0
  405. package/dist/components/ThinkingState/ThinkingState.js +42 -0
  406. package/dist/components/ThinkingState/ThinkingState.js.map +1 -0
  407. package/dist/components/ThinkingState/ThinkingStateTimer.d.ts +9 -0
  408. package/dist/components/ThinkingState/ThinkingStateTimer.js +43 -0
  409. package/dist/components/ThinkingState/ThinkingStateTimer.js.map +1 -0
  410. package/dist/components/ThinkingState/index.d.ts +4 -0
  411. package/dist/components/ThinkingState/index.js +3 -0
  412. package/dist/components/Toast/ToastContext.d.ts +5 -0
  413. package/dist/components/Toast/ToastContext.js +9 -0
  414. package/dist/components/Toast/ToastContext.js.map +1 -0
  415. package/dist/components/Toast/index.d.ts +13 -0
  416. package/dist/components/Toast/index.js +166 -0
  417. package/dist/components/Toast/index.js.map +1 -0
  418. package/dist/components/Toast/useToast.d.ts +3 -0
  419. package/dist/components/Toast/useToast.js +11 -0
  420. package/dist/components/Toast/useToast.js.map +1 -0
  421. package/dist/components/Tooltip/Tooltip.d.ts +19 -0
  422. package/dist/components/Tooltip/Tooltip.js +57 -0
  423. package/dist/components/Tooltip/Tooltip.js.map +1 -0
  424. package/dist/components/Tooltip/index.d.ts +3 -0
  425. package/dist/components/Tooltip/index.js +3 -0
  426. package/dist/components/TopList/TopList.d.ts +3 -0
  427. package/dist/components/TopList/TopList.js +186 -0
  428. package/dist/components/TopList/TopList.js.map +1 -0
  429. package/dist/components/TopList/TopList.types.d.ts +34 -0
  430. package/dist/components/TopList/TopList.types.js +0 -0
  431. package/dist/components/TopList/TopList.utils.d.ts +3 -0
  432. package/dist/components/TopList/TopList.utils.js +16 -0
  433. package/dist/components/TopList/TopList.utils.js.map +1 -0
  434. package/dist/components/TopList/index.d.ts +2 -0
  435. package/dist/components/TopList/index.js +2 -0
  436. package/dist/components/Typeahead/Typeahead.d.ts +5 -0
  437. package/dist/components/Typeahead/Typeahead.js +305 -0
  438. package/dist/components/Typeahead/Typeahead.js.map +1 -0
  439. package/dist/components/Typeahead/Typeahead.types.d.ts +99 -0
  440. package/dist/components/Typeahead/Typeahead.types.js +0 -0
  441. package/dist/components/Typeahead/Typeahead.utils.d.ts +25 -0
  442. package/dist/components/Typeahead/Typeahead.utils.js +73 -0
  443. package/dist/components/Typeahead/Typeahead.utils.js.map +1 -0
  444. package/dist/components/Typeahead/TypeaheadParts.d.ts +25 -0
  445. package/dist/components/Typeahead/TypeaheadParts.js +109 -0
  446. package/dist/components/Typeahead/TypeaheadParts.js.map +1 -0
  447. package/dist/components/Typeahead/TypeaheadView.d.ts +81 -0
  448. package/dist/components/Typeahead/TypeaheadView.js +228 -0
  449. package/dist/components/Typeahead/TypeaheadView.js.map +1 -0
  450. package/dist/components/Typeahead/index.d.ts +2 -0
  451. package/dist/components/Typeahead/index.js +2 -0
  452. package/dist/components/Typeahead/useTypeaheadDomSync.d.ts +15 -0
  453. package/dist/components/Typeahead/useTypeaheadDomSync.js +43 -0
  454. package/dist/components/Typeahead/useTypeaheadDomSync.js.map +1 -0
  455. package/dist/components/Typeahead/useTypeaheadUncontrolledInput.d.ts +11 -0
  456. package/dist/components/Typeahead/useTypeaheadUncontrolledInput.js +32 -0
  457. package/dist/components/Typeahead/useTypeaheadUncontrolledInput.js.map +1 -0
  458. package/dist/components/UnsavedChangesDialog.d.ts +14 -0
  459. package/dist/components/UnsavedChangesDialog.js +67 -0
  460. package/dist/components/UnsavedChangesDialog.js.map +1 -0
  461. package/dist/components/index.d.ts +58 -0
  462. package/dist/components/index.js +35 -0
  463. package/dist/components.css +102 -0
  464. package/dist/contexts/ErrorReporterContext.d.ts +6 -0
  465. package/dist/contexts/ErrorReporterContext.js +7 -0
  466. package/dist/contexts/ErrorReporterContext.js.map +1 -0
  467. package/dist/hooks/AppThemeProvider.d.ts +8 -0
  468. package/dist/hooks/AppThemeProvider.js +52 -0
  469. package/dist/hooks/AppThemeProvider.js.map +1 -0
  470. package/dist/hooks/useColorScheme.d.ts +20 -0
  471. package/dist/hooks/useColorScheme.js +50 -0
  472. package/dist/hooks/useColorScheme.js.map +1 -0
  473. package/dist/icons/LongTailPhosphorIcons.d.ts +51 -0
  474. package/dist/icons/LongTailPhosphorIcons.js +102 -0
  475. package/dist/icons/LongTailPhosphorIcons.js.map +1 -0
  476. package/dist/icons/PaddedPhosphorIcons.d.ts +17 -0
  477. package/dist/icons/PaddedPhosphorIcons.js +55 -0
  478. package/dist/icons/PaddedPhosphorIcons.js.map +1 -0
  479. package/dist/icons/WeightedPhosphorIcons.d.ts +45 -0
  480. package/dist/icons/WeightedPhosphorIcons.js +96 -0
  481. package/dist/icons/WeightedPhosphorIcons.js.map +1 -0
  482. package/dist/icons/index.d.ts +2 -0
  483. package/dist/icons/index.js +4 -0
  484. package/dist/index.d.ts +1 -0
  485. package/dist/index.js +36 -0
  486. package/dist/styles.css +10 -0
  487. package/dist/utilities.css +2 -0
  488. package/dist/utils/VirtuosoCustomScrollParentContext/index.d.ts +7 -0
  489. package/dist/utils/VirtuosoCustomScrollParentContext/index.js +15 -0
  490. package/dist/utils/VirtuosoCustomScrollParentContext/index.js.map +1 -0
  491. package/dist/utils/VirtuosoCustomScrollParentContext/useScrollParent.d.ts +4 -0
  492. package/dist/utils/VirtuosoCustomScrollParentContext/useScrollParent.js +10 -0
  493. package/dist/utils/VirtuosoCustomScrollParentContext/useScrollParent.js.map +1 -0
  494. package/dist/utils/ZIndexContext.d.ts +5 -0
  495. package/dist/utils/ZIndexContext.js +13 -0
  496. package/dist/utils/ZIndexContext.js.map +1 -0
  497. package/dist/utils/animation.d.ts +37 -0
  498. package/dist/utils/animation.js +42 -0
  499. package/dist/utils/animation.js.map +1 -0
  500. package/dist/utils/chartAxisLayout.d.ts +6 -0
  501. package/dist/utils/chartAxisLayout.js +8 -0
  502. package/dist/utils/chartAxisLayout.js.map +1 -0
  503. package/dist/utils/chartColors.d.ts +38 -0
  504. package/dist/utils/chartColors.js +78 -0
  505. package/dist/utils/chartColors.js.map +1 -0
  506. package/dist/utils/chartConstants.d.ts +10 -0
  507. package/dist/utils/chartConstants.js +15 -0
  508. package/dist/utils/chartConstants.js.map +1 -0
  509. package/dist/utils/chartValues.d.ts +2 -0
  510. package/dist/utils/chartValues.js +36 -0
  511. package/dist/utils/chartValues.js.map +1 -0
  512. package/dist/utils/clamp.d.ts +2 -0
  513. package/dist/utils/clamp.js +7 -0
  514. package/dist/utils/clamp.js.map +1 -0
  515. package/dist/utils/cn.d.ts +2 -0
  516. package/dist/utils/cn.js +191 -0
  517. package/dist/utils/cn.js.map +1 -0
  518. package/dist/utils/componentSizes.d.ts +104 -0
  519. package/dist/utils/componentSizes.js +104 -0
  520. package/dist/utils/componentSizes.js.map +1 -0
  521. package/dist/utils/controlIconSizes.d.ts +10 -0
  522. package/dist/utils/controlIconSizes.js +32 -0
  523. package/dist/utils/controlIconSizes.js.map +1 -0
  524. package/dist/utils/csp-nonce.d.ts +11 -0
  525. package/dist/utils/csp-nonce.js +17 -0
  526. package/dist/utils/csp-nonce.js.map +1 -0
  527. package/dist/utils/get-closest-scroll-parent.d.ts +1 -0
  528. package/dist/utils/get-closest-scroll-parent.js +16 -0
  529. package/dist/utils/get-closest-scroll-parent.js.map +1 -0
  530. package/dist/utils/get-color-by-string.d.ts +1 -0
  531. package/dist/utils/get-color-by-string.js +10 -0
  532. package/dist/utils/get-color-by-string.js.map +1 -0
  533. package/dist/utils/getYAxisLeftMargin.d.ts +10 -0
  534. package/dist/utils/getYAxisLeftMargin.js +20 -0
  535. package/dist/utils/getYAxisLeftMargin.js.map +1 -0
  536. package/dist/utils/icon-types.d.ts +8 -0
  537. package/dist/utils/icon-types.js +0 -0
  538. package/dist/utils/lazy-codemirror-loader.d.ts +70 -0
  539. package/dist/utils/lazy-codemirror-loader.js +79 -0
  540. package/dist/utils/lazy-codemirror-loader.js.map +1 -0
  541. package/dist/utils/merge-refs.d.ts +2 -0
  542. package/dist/utils/merge-refs.js +13 -0
  543. package/dist/utils/merge-refs.js.map +1 -0
  544. package/dist/utils/parseTextLinks.d.ts +7 -0
  545. package/dist/utils/parseTextLinks.js +46 -0
  546. package/dist/utils/parseTextLinks.js.map +1 -0
  547. package/dist/utils/prettify-error-payload.d.ts +7 -0
  548. package/dist/utils/prettify-error-payload.js +188 -0
  549. package/dist/utils/prettify-error-payload.js.map +1 -0
  550. package/dist/utils/spacing.d.ts +30 -0
  551. package/dist/utils/spacing.js +34 -0
  552. package/dist/utils/spacing.js.map +1 -0
  553. package/dist/utils/useCodeMirror.d.ts +7 -0
  554. package/dist/utils/useCodeMirror.js +28 -0
  555. package/dist/utils/useCodeMirror.js.map +1 -0
  556. package/dist/utils/useZIndex.d.ts +52 -0
  557. package/dist/utils/useZIndex.js +62 -0
  558. package/dist/utils/useZIndex.js.map +1 -0
  559. package/dist/utils/zIndices.d.ts +42 -0
  560. package/dist/utils/zIndices.js +46 -0
  561. package/dist/utils/zIndices.js.map +1 -0
  562. package/docs/DESIGN.md +134 -0
  563. package/docs/STYLES.md +568 -0
  564. package/package.json +619 -0
  565. package/tailwind.preset.cjs +738 -0
  566. package/tailwind.preset.d.cts +5 -0
@@ -0,0 +1,29 @@
1
+ //#region packages/components/src/components/CopyButton/copyToClipboard.tsx
2
+ async function copyToClipboard(textToCopy) {
3
+ if (textToCopy == null) return;
4
+ if (navigator.clipboard && window.isSecureContext) await navigator.clipboard.writeText(textToCopy);
5
+ else {
6
+ const focusedElement = document.activeElement instanceof HTMLElement ? document.activeElement : null;
7
+ const textArea = document.createElement("textarea");
8
+ textArea.value = textToCopy;
9
+ textArea.style.position = "absolute";
10
+ textArea.style.opacity = "0";
11
+ textArea.style.height = "0";
12
+ textArea.style.width = "0";
13
+ document.body.appendChild(textArea);
14
+ textArea.focus();
15
+ textArea.select();
16
+ try {
17
+ document.execCommand("copy");
18
+ } catch (err) {
19
+ console.error(err);
20
+ } finally {
21
+ document.body.removeChild(textArea);
22
+ focusedElement?.focus({ preventScroll: true });
23
+ }
24
+ }
25
+ }
26
+ //#endregion
27
+ export { copyToClipboard };
28
+
29
+ //# sourceMappingURL=copyToClipboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"copyToClipboard.js","names":[],"sources":["../../../src/components/CopyButton/copyToClipboard.tsx"],"sourcesContent":["export async function copyToClipboard(textToCopy: string | undefined) {\n if (textToCopy == null) return;\n\n // This helper intentionally stays hook-free so non-component utilities can copy text too.\n // Navigator clipboard api needs a secure context (https)\n // eslint-disable-next-line custom/prefer-mantine-hooks\n if (navigator.clipboard && window.isSecureContext) {\n // eslint-disable-next-line custom/prefer-mantine-hooks\n await navigator.clipboard.writeText(textToCopy);\n } else {\n const focusedElement =\n document.activeElement instanceof HTMLElement\n ? document.activeElement\n : null;\n\n const textArea = document.createElement('textarea');\n textArea.value = textToCopy;\n\n textArea.style.position = 'absolute';\n textArea.style.opacity = '0';\n textArea.style.height = '0';\n textArea.style.width = '0';\n document.body.appendChild(textArea);\n textArea.focus();\n textArea.select();\n\n try {\n document.execCommand('copy');\n } catch (err) {\n console.error(err);\n } finally {\n document.body.removeChild(textArea);\n focusedElement?.focus({ preventScroll: true });\n }\n }\n}\n"],"mappings":";AAAA,eAAsB,gBAAgB,YAAgC;CACpE,IAAI,cAAc,MAAM;CAKxB,IAAI,UAAU,aAAa,OAAO,iBAEhC,MAAM,UAAU,UAAU,UAAU,UAAU;MACzC;EACL,MAAM,iBACJ,SAAS,yBAAyB,cAC9B,SAAS,gBACT;EAEN,MAAM,WAAW,SAAS,cAAc,UAAU;EAClD,SAAS,QAAQ;EAEjB,SAAS,MAAM,WAAW;EAC1B,SAAS,MAAM,UAAU;EACzB,SAAS,MAAM,SAAS;EACxB,SAAS,MAAM,QAAQ;EACvB,SAAS,KAAK,YAAY,QAAQ;EAClC,SAAS,MAAM;EACf,SAAS,OAAO;EAEhB,IAAI;GACF,SAAS,YAAY,MAAM;EAC7B,SAAS,KAAK;GACZ,QAAQ,MAAM,GAAG;EACnB,UAAU;GACR,SAAS,KAAK,YAAY,QAAQ;GAClC,gBAAgB,MAAM,EAAE,eAAe,KAAK,CAAC;EAC/C;CACF;AACF"}
@@ -0,0 +1,4 @@
1
+ export { CopyButton, CopyIconButton } from './CopyButton.js';
2
+ export type { CopyButtonProps, CopyIconButtonProps } from './CopyButton.js';
3
+ export { useCopy, useCopyAction } from './useCopy.js';
4
+ export { copyToClipboard } from './copyToClipboard.js';
@@ -0,0 +1,4 @@
1
+ import { copyToClipboard } from "./copyToClipboard.js";
2
+ import { useCopy, useCopyAction } from "./useCopy.js";
3
+ import { CopyButton, CopyIconButton } from "./CopyButton.js";
4
+ export { CopyButton, CopyIconButton, copyToClipboard, useCopy, useCopyAction };
@@ -0,0 +1,10 @@
1
+ export declare const useCopyAction: () => {
2
+ copied: boolean;
3
+ onCopy: (copy: string) => void;
4
+ };
5
+ export declare const useCopy: (props?: {
6
+ copy?: string;
7
+ }) => {
8
+ copied: boolean;
9
+ onCopy: () => void;
10
+ };
@@ -0,0 +1,46 @@
1
+ import { copyToClipboard } from "./copyToClipboard.js";
2
+ import { useEffect, useRef, useState } from "react";
3
+ //#region packages/components/src/components/CopyButton/useCopy.tsx
4
+ var copyWithErrorLogging = (copy) => {
5
+ copyToClipboard(copy).catch((error) => {
6
+ console.error(error);
7
+ });
8
+ };
9
+ var useCopyAction = () => {
10
+ const [copied, setCopied] = useState(false);
11
+ const timerRef = useRef(void 0);
12
+ const onCopy = (copy) => {
13
+ window.clearTimeout(timerRef.current);
14
+ copyWithErrorLogging(copy);
15
+ setCopied(true);
16
+ timerRef.current = window.setTimeout(() => setCopied(false), 2e3);
17
+ };
18
+ useEffect(() => {
19
+ return () => window.clearTimeout(timerRef.current);
20
+ }, []);
21
+ return {
22
+ copied,
23
+ onCopy
24
+ };
25
+ };
26
+ var useCopy = (props) => {
27
+ const [copied, setCopied] = useState(false);
28
+ const timerRef = useRef(void 0);
29
+ const onCopy = () => {
30
+ window.clearTimeout(timerRef.current);
31
+ copyWithErrorLogging(props?.copy);
32
+ setCopied(true);
33
+ timerRef.current = window.setTimeout(() => setCopied(false), 2e3);
34
+ };
35
+ useEffect(() => {
36
+ return () => window.clearTimeout(timerRef.current);
37
+ }, []);
38
+ return {
39
+ copied,
40
+ onCopy
41
+ };
42
+ };
43
+ //#endregion
44
+ export { useCopy, useCopyAction };
45
+
46
+ //# sourceMappingURL=useCopy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCopy.js","names":[],"sources":["../../../src/components/CopyButton/useCopy.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport { copyToClipboard } from './copyToClipboard';\n\n// Alternative to useCopy, where the copy text is provided as an argument\n\nconst copyWithErrorLogging = (copy: string | undefined) => {\n void copyToClipboard(copy).catch((error: unknown) => {\n console.error(error);\n });\n};\n\nexport const useCopyAction = () => {\n const [copied, setCopied] = useState(false);\n\n const timerRef = useRef<number>(undefined);\n const onCopy = (copy: string) => {\n window.clearTimeout(timerRef.current);\n copyWithErrorLogging(copy);\n setCopied(true);\n timerRef.current = window.setTimeout(() => setCopied(false), 2000);\n };\n\n useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n\n return { copied, onCopy };\n};\n\nexport const useCopy = (props?: { copy?: string }) => {\n const [copied, setCopied] = useState(false);\n\n const timerRef = useRef<number>(undefined);\n const onCopy = () => {\n window.clearTimeout(timerRef.current);\n copyWithErrorLogging(props?.copy);\n setCopied(true);\n timerRef.current = window.setTimeout(() => setCopied(false), 2000);\n };\n\n useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n\n return { copied, onCopy };\n};\n"],"mappings":";;;AAMA,IAAM,wBAAwB,SAA6B;CACzD,gBAAqB,IAAI,CAAC,CAAC,OAAO,UAAmB;EACnD,QAAQ,MAAM,KAAK;CACrB,CAAC;AACH;AAEA,IAAa,sBAAsB;CACjC,MAAM,CAAC,QAAQ,aAAa,SAAS,KAAK;CAE1C,MAAM,WAAW,OAAe,KAAA,CAAS;CACzC,MAAM,UAAU,SAAiB;EAC/B,OAAO,aAAa,SAAS,OAAO;EACpC,qBAAqB,IAAI;EACzB,UAAU,IAAI;EACd,SAAS,UAAU,OAAO,iBAAiB,UAAU,KAAK,GAAG,GAAI;CACnE;CAEA,gBAAgB;EACd,aAAa,OAAO,aAAa,SAAS,OAAO;CACnD,GAAG,CAAC,CAAC;CAEL,OAAO;EAAE;EAAQ;CAAO;AAC1B;AAEA,IAAa,WAAW,UAA8B;CACpD,MAAM,CAAC,QAAQ,aAAa,SAAS,KAAK;CAE1C,MAAM,WAAW,OAAe,KAAA,CAAS;CACzC,MAAM,eAAe;EACnB,OAAO,aAAa,SAAS,OAAO;EACpC,qBAAqB,OAAO,IAAI;EAChC,UAAU,IAAI;EACd,SAAS,UAAU,OAAO,iBAAiB,UAAU,KAAK,GAAG,GAAI;CACnE;CAEA,gBAAgB;EACd,aAAa,OAAO,aAAa,SAAS,OAAO;CACnD,GAAG,CAAC,CAAC;CAEL,OAAO;EAAE;EAAQ;CAAO;AAC1B"}
@@ -0,0 +1,49 @@
1
+ import { type ComponentPropsWithoutRef, type KeyboardEvent as ReactKeyboardEvent, type ReactNode } from 'react';
2
+ import { DialogClose as RadixDialogClose, DialogDescription as RadixDialogDescription, DialogTitle as RadixDialogTitle, type DialogContentProps as RadixDialogContentProps } from '@radix-ui/react-dialog';
3
+ import type { IconComponent } from '../Icon/index.js';
4
+ /**
5
+ * Exposes the modal DialogContent DOM node to descendants so portaled overlays
6
+ * (e.g. Typeahead's Popover) can render inside the dialog. A modal Dialog sets
7
+ * `pointer-events: none` outside DialogContent, so overlays portaled to
8
+ * `document.body` become mouse-inert; portaling into this node keeps them
9
+ * interactive. Null when not inside a Dialog.
10
+ */
11
+ export declare const DialogContainerContext: import("react").Context<HTMLElement | null>;
12
+ export declare function useDialogContainer(): HTMLElement | null;
13
+ export type DialogTitleProps = ComponentPropsWithoutRef<typeof RadixDialogTitle>;
14
+ /** Associates a custom-composed heading with the dialog content. */
15
+ export declare const DialogTitle: import("react").ForwardRefExoticComponent<Omit<import("@radix-ui/react-dialog").DialogTitleProps & import("react").RefAttributes<HTMLHeadingElement>, "ref"> & import("react").RefAttributes<HTMLHeadingElement>>;
16
+ export type DialogDescriptionProps = ComponentPropsWithoutRef<typeof RadixDialogDescription>;
17
+ /** Associates supporting copy with the dialog content. */
18
+ export declare const DialogDescription: import("react").ForwardRefExoticComponent<Omit<import("@radix-ui/react-dialog").DialogDescriptionProps & import("react").RefAttributes<HTMLParagraphElement>, "ref"> & import("react").RefAttributes<HTMLParagraphElement>>;
19
+ export type DialogCloseProps = ComponentPropsWithoutRef<typeof RadixDialogClose>;
20
+ /** Closes the nearest dialog and supports custom controls through `asChild`. */
21
+ export declare const DialogClose: import("react").ForwardRefExoticComponent<Omit<import("@radix-ui/react-dialog").DialogCloseProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
22
+ type TitleIconIntent = 'error' | 'warning' | 'info';
23
+ interface DialogContentProps {
24
+ title?: ReactNode;
25
+ description?: ReactNode;
26
+ /** Icon component to display in the title area, inside a colored circular container */
27
+ titleIcon?: IconComponent;
28
+ /** Controls the background and color of the title icon container */
29
+ titleIconIntent?: TitleIconIntent;
30
+ showClose?: boolean;
31
+ children: ReactNode;
32
+ className?: string;
33
+ childrenClassName?: string;
34
+ onPointerDownOutside?: RadixDialogContentProps['onPointerDownOutside'];
35
+ onInteractOutside?: RadixDialogContentProps['onInteractOutside'];
36
+ onOpenAutoFocus?: RadixDialogContentProps['onOpenAutoFocus'];
37
+ onCloseAutoFocus?: RadixDialogContentProps['onCloseAutoFocus'];
38
+ onEscapeKeyDown?: RadixDialogContentProps['onEscapeKeyDown'];
39
+ onKeyDown?: RadixDialogContentProps['onKeyDown'];
40
+ }
41
+ export declare function Dialog({ open, onOpenChange, children, className, onEscapeKeyDown, }: {
42
+ open: boolean;
43
+ onOpenChange: (open: boolean) => void;
44
+ children: ReactNode;
45
+ className?: string;
46
+ onEscapeKeyDown?: (e: ReactKeyboardEvent) => void;
47
+ }): import("react").JSX.Element;
48
+ export declare const DialogContent: import("react").ForwardRefExoticComponent<DialogContentProps & import("react").RefAttributes<HTMLDivElement>>;
49
+ export {};
@@ -0,0 +1,130 @@
1
+ import { cn } from "../../utils/cn.js";
2
+ import zIndices from "../../utils/zIndices.js";
3
+ import { useZIndex } from "../../utils/useZIndex.js";
4
+ import { ZIndexProvider } from "../../utils/ZIndexContext.js";
5
+ import { Text } from "../Text/Text.js";
6
+ import { XIcon } from "../../icons/PaddedPhosphorIcons.js";
7
+ import { Icon } from "../Icon/Icon.js";
8
+ import { IconButton } from "../IconButton/IconButton.js";
9
+ import { mergeRefs } from "../../utils/merge-refs.js";
10
+ import { createContext, forwardRef, useContext, useState } from "react";
11
+ import { jsx, jsxs } from "react/jsx-runtime";
12
+ import { Dialog as Dialog$1, DialogClose as DialogClose$1, DialogContent as DialogContent$1, DialogDescription as DialogDescription$1, DialogOverlay, DialogPortal, DialogTitle as DialogTitle$1 } from "@radix-ui/react-dialog";
13
+ //#region packages/components/src/components/Dialog/index.tsx
14
+ /**
15
+ * Exposes the modal DialogContent DOM node to descendants so portaled overlays
16
+ * (e.g. Typeahead's Popover) can render inside the dialog. A modal Dialog sets
17
+ * `pointer-events: none` outside DialogContent, so overlays portaled to
18
+ * `document.body` become mouse-inert; portaling into this node keeps them
19
+ * interactive. Null when not inside a Dialog.
20
+ */
21
+ var DialogContainerContext = createContext(null);
22
+ function useDialogContainer() {
23
+ return useContext(DialogContainerContext);
24
+ }
25
+ /** Associates a custom-composed heading with the dialog content. */
26
+ var DialogTitle = forwardRef((props, ref) => /* @__PURE__ */ jsx(DialogTitle$1, {
27
+ ref,
28
+ ...props
29
+ }));
30
+ DialogTitle.displayName = "DialogTitle";
31
+ /** Associates supporting copy with the dialog content. */
32
+ var DialogDescription = forwardRef((props, ref) => /* @__PURE__ */ jsx(DialogDescription$1, {
33
+ ref,
34
+ ...props
35
+ }));
36
+ DialogDescription.displayName = "DialogDescription";
37
+ /** Closes the nearest dialog and supports custom controls through `asChild`. */
38
+ var DialogClose = forwardRef((props, ref) => /* @__PURE__ */ jsx(DialogClose$1, {
39
+ ref,
40
+ ...props
41
+ }));
42
+ DialogClose.displayName = "DialogClose";
43
+ function Dialog({ open, onOpenChange, children, className, onEscapeKeyDown }) {
44
+ const zIndex = useZIndex(zIndices.dialogOverlay);
45
+ return /* @__PURE__ */ jsx(Dialog$1, {
46
+ modal: true,
47
+ open,
48
+ onOpenChange,
49
+ children: /* @__PURE__ */ jsx(DialogPortal, { children: /* @__PURE__ */ jsx(DialogOverlay, {
50
+ className: cn("fixed inset-0 bg-overlay", "data-[state=open]:animate-overlay-in data-[state=closed]:animate-overlay-out motion-reduce:animate-none", className),
51
+ style: { zIndex },
52
+ onKeyDown: (e) => {
53
+ if (e.key === "Escape" && onEscapeKeyDown) onEscapeKeyDown(e);
54
+ },
55
+ children
56
+ }) })
57
+ });
58
+ }
59
+ var DialogContent = forwardRef(({ title, description, titleIcon: TitleIcon, titleIconIntent = "info", showClose = true, children, className, childrenClassName, onPointerDownOutside, onInteractOutside, onOpenAutoFocus, onCloseAutoFocus, onEscapeKeyDown, onKeyDown }, ref) => {
60
+ const dialogZIndex = useZIndex(zIndices.dialogContent);
61
+ const hasHeader = Boolean(title || description || showClose);
62
+ const [contentNode, setContentNode] = useState(null);
63
+ return /* @__PURE__ */ jsx(DialogContent$1, {
64
+ ref: mergeRefs([ref, setContentNode]),
65
+ className: cn("fixed left-[50%] top-[50%] flex max-h-[calc(100vh-2rem)] w-[37.5rem] translate-x-[-50%] translate-y-[-50%] flex-col rounded-lg bg-background", "fade-in", "data-[state=closed]:fade-out", className),
66
+ style: { zIndex: dialogZIndex },
67
+ onPointerDownOutside,
68
+ onInteractOutside,
69
+ onOpenAutoFocus,
70
+ onCloseAutoFocus,
71
+ onEscapeKeyDown,
72
+ onKeyDown,
73
+ children: /* @__PURE__ */ jsx(ZIndexProvider, {
74
+ value: dialogZIndex,
75
+ children: /* @__PURE__ */ jsxs(DialogContainerContext.Provider, {
76
+ value: contentNode,
77
+ children: [hasHeader && /* @__PURE__ */ jsx("div", {
78
+ className: "m-0 min-h-14 shrink-0 p-space-4",
79
+ children: /* @__PURE__ */ jsxs("div", {
80
+ className: "flex items-center justify-between gap-space-4",
81
+ children: [/* @__PURE__ */ jsxs("div", {
82
+ className: "flex min-w-0 items-center gap-space-2",
83
+ children: [TitleIcon && /* @__PURE__ */ jsx(Icon, {
84
+ icon: TitleIcon,
85
+ color: titleIconIntent,
86
+ size: "md"
87
+ }), /* @__PURE__ */ jsxs("div", {
88
+ className: "flex min-w-0 flex-col gap-space-1",
89
+ children: [title && /* @__PURE__ */ jsx(DialogTitle, {
90
+ asChild: true,
91
+ children: /* @__PURE__ */ jsx(Text, {
92
+ variant: "h3",
93
+ weight: "semibold",
94
+ children: title
95
+ })
96
+ }), description && /* @__PURE__ */ jsx(DialogDescription, {
97
+ asChild: true,
98
+ children: /* @__PURE__ */ jsx(Text, {
99
+ variant: "sm",
100
+ className: "text-quaternary",
101
+ children: description
102
+ })
103
+ })]
104
+ })]
105
+ }), showClose && /* @__PURE__ */ jsx(DialogClose, {
106
+ asChild: true,
107
+ children: /* @__PURE__ */ jsx(IconButton, {
108
+ icon: XIcon,
109
+ label: "Close",
110
+ color: "secondary",
111
+ variant: "plain",
112
+ className: "shrink-0 self-start",
113
+ "data-testid": "dialog-close-button",
114
+ tooltipProps: { disabled: true }
115
+ })
116
+ })]
117
+ })
118
+ }), /* @__PURE__ */ jsx("div", {
119
+ className: cn("flex min-h-0 flex-col gap-space-4 overflow-y-auto p-space-4", hasHeader && "pt-0", childrenClassName),
120
+ children
121
+ })]
122
+ })
123
+ })
124
+ });
125
+ });
126
+ DialogContent.displayName = "DialogContent";
127
+ //#endregion
128
+ export { Dialog, DialogClose, DialogContainerContext, DialogContent, DialogDescription, DialogTitle, useDialogContainer };
129
+
130
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/Dialog/index.tsx"],"sourcesContent":["import {\n type ComponentPropsWithoutRef,\n type ComponentRef,\n type KeyboardEvent as ReactKeyboardEvent,\n type ReactNode,\n createContext,\n forwardRef,\n useContext,\n useState,\n} from 'react';\n\nimport {\n DialogClose as RadixDialogClose,\n DialogDescription as RadixDialogDescription,\n DialogOverlay,\n DialogPortal,\n DialogTitle as RadixDialogTitle,\n Dialog as RadixDialog,\n DialogContent as RadixDialogContent,\n type DialogContentProps as RadixDialogContentProps,\n} from '@radix-ui/react-dialog';\n\nimport { XIcon } from '../../icons/PaddedPhosphorIcons';\nimport { cn } from '../../utils/cn';\nimport { mergeRefs } from '../../utils/merge-refs';\nimport { useZIndex } from '../../utils/useZIndex';\nimport { ZIndexProvider } from '../../utils/ZIndexContext';\nimport zIndices from '../../utils/zIndices';\nimport { Icon } from '../Icon';\nimport type { IconComponent } from '../Icon';\nimport { IconButton } from '../IconButton';\nimport { Text } from '../Text';\n\n/**\n * Exposes the modal DialogContent DOM node to descendants so portaled overlays\n * (e.g. Typeahead's Popover) can render inside the dialog. A modal Dialog sets\n * `pointer-events: none` outside DialogContent, so overlays portaled to\n * `document.body` become mouse-inert; portaling into this node keeps them\n * interactive. Null when not inside a Dialog.\n */\n// eslint-disable-next-line react-refresh/only-export-components\nexport const DialogContainerContext = createContext<HTMLElement | null>(null);\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport function useDialogContainer(): HTMLElement | null {\n return useContext(DialogContainerContext);\n}\n\nexport type DialogTitleProps = ComponentPropsWithoutRef<\n typeof RadixDialogTitle\n>;\n\n/** Associates a custom-composed heading with the dialog content. */\nexport const DialogTitle = forwardRef<\n ComponentRef<typeof RadixDialogTitle>,\n DialogTitleProps\n>((props, ref) => <RadixDialogTitle ref={ref} {...props} />);\nDialogTitle.displayName = 'DialogTitle';\n\nexport type DialogDescriptionProps = ComponentPropsWithoutRef<\n typeof RadixDialogDescription\n>;\n\n/** Associates supporting copy with the dialog content. */\nexport const DialogDescription = forwardRef<\n ComponentRef<typeof RadixDialogDescription>,\n DialogDescriptionProps\n>((props, ref) => <RadixDialogDescription ref={ref} {...props} />);\nDialogDescription.displayName = 'DialogDescription';\n\nexport type DialogCloseProps = ComponentPropsWithoutRef<\n typeof RadixDialogClose\n>;\n\n/** Closes the nearest dialog and supports custom controls through `asChild`. */\nexport const DialogClose = forwardRef<\n ComponentRef<typeof RadixDialogClose>,\n DialogCloseProps\n>((props, ref) => <RadixDialogClose ref={ref} {...props} />);\nDialogClose.displayName = 'DialogClose';\n\ntype TitleIconIntent = 'error' | 'warning' | 'info';\n\ninterface DialogContentProps {\n title?: ReactNode;\n description?: ReactNode;\n /** Icon component to display in the title area, inside a colored circular container */\n titleIcon?: IconComponent;\n /** Controls the background and color of the title icon container */\n titleIconIntent?: TitleIconIntent;\n showClose?: boolean;\n children: ReactNode;\n className?: string;\n childrenClassName?: string;\n onPointerDownOutside?: RadixDialogContentProps['onPointerDownOutside'];\n onInteractOutside?: RadixDialogContentProps['onInteractOutside'];\n onOpenAutoFocus?: RadixDialogContentProps['onOpenAutoFocus'];\n onCloseAutoFocus?: RadixDialogContentProps['onCloseAutoFocus'];\n onEscapeKeyDown?: RadixDialogContentProps['onEscapeKeyDown'];\n onKeyDown?: RadixDialogContentProps['onKeyDown'];\n}\n\nexport function Dialog({\n open,\n onOpenChange,\n children,\n className,\n onEscapeKeyDown,\n}: {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n children: ReactNode;\n className?: string;\n onEscapeKeyDown?: (e: ReactKeyboardEvent) => void;\n}) {\n const zIndex = useZIndex(zIndices.dialogOverlay);\n return (\n <RadixDialog modal={true} open={open} onOpenChange={onOpenChange}>\n <DialogPortal>\n <DialogOverlay\n className={cn(\n 'fixed inset-0 bg-overlay',\n 'data-[state=open]:animate-overlay-in data-[state=closed]:animate-overlay-out motion-reduce:animate-none',\n className\n )}\n style={{ zIndex }}\n onKeyDown={(e) => {\n if (e.key === 'Escape' && onEscapeKeyDown) {\n onEscapeKeyDown(e);\n }\n }}\n >\n {children}\n </DialogOverlay>\n </DialogPortal>\n </RadixDialog>\n );\n}\n\nexport const DialogContent = forwardRef<HTMLDivElement, DialogContentProps>(\n (\n {\n title,\n description,\n titleIcon: TitleIcon,\n titleIconIntent = 'info',\n showClose = true,\n children,\n className,\n childrenClassName,\n onPointerDownOutside,\n onInteractOutside,\n onOpenAutoFocus,\n onCloseAutoFocus,\n onEscapeKeyDown,\n onKeyDown,\n },\n ref\n ) => {\n const dialogZIndex = useZIndex(zIndices.dialogContent);\n const hasHeader = Boolean(title || description || showClose);\n // A modal Dialog sets `pointer-events: none` outside this node, so overlays\n // portaled to `document.body` (e.g. Typeahead's Popover) become mouse-inert.\n // Expose the content node so descendants can portal into it and stay live.\n const [contentNode, setContentNode] = useState<HTMLDivElement | null>(null);\n\n return (\n <RadixDialogContent\n ref={mergeRefs([ref, setContentNode])}\n className={cn(\n 'fixed left-[50%] top-[50%] flex max-h-[calc(100vh-2rem)] w-[37.5rem] translate-x-[-50%] translate-y-[-50%] flex-col rounded-lg bg-background',\n 'fade-in',\n 'data-[state=closed]:fade-out',\n className\n )}\n style={{ zIndex: dialogZIndex }}\n onPointerDownOutside={onPointerDownOutside}\n onInteractOutside={onInteractOutside}\n onOpenAutoFocus={onOpenAutoFocus}\n onCloseAutoFocus={onCloseAutoFocus}\n onEscapeKeyDown={onEscapeKeyDown}\n onKeyDown={onKeyDown}\n >\n <ZIndexProvider value={dialogZIndex}>\n <DialogContainerContext.Provider value={contentNode}>\n {hasHeader && (\n <div className=\"m-0 min-h-14 shrink-0 p-space-4\">\n <div className=\"flex items-center justify-between gap-space-4\">\n <div className=\"flex min-w-0 items-center gap-space-2\">\n {TitleIcon && (\n <Icon\n icon={TitleIcon}\n color={titleIconIntent}\n size=\"md\"\n />\n )}\n <div className=\"flex min-w-0 flex-col gap-space-1\">\n {title && (\n <DialogTitle asChild>\n <Text variant=\"h3\" weight=\"semibold\">\n {title}\n </Text>\n </DialogTitle>\n )}\n {description && (\n <DialogDescription asChild>\n <Text variant=\"sm\" className=\"text-quaternary\">\n {description}\n </Text>\n </DialogDescription>\n )}\n </div>\n </div>\n {showClose && (\n <DialogClose asChild>\n <IconButton\n icon={XIcon}\n label=\"Close\"\n color=\"secondary\"\n variant=\"plain\"\n className=\"shrink-0 self-start\"\n data-testid=\"dialog-close-button\"\n tooltipProps={{ disabled: true }}\n />\n </DialogClose>\n )}\n </div>\n </div>\n )}\n <div\n className={cn(\n 'flex min-h-0 flex-col gap-space-4 overflow-y-auto p-space-4',\n hasHeader && 'pt-0',\n childrenClassName\n )}\n >\n {children}\n </div>\n </DialogContainerContext.Provider>\n </ZIndexProvider>\n </RadixDialogContent>\n );\n }\n);\n\nDialogContent.displayName = 'DialogContent';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAyCA,IAAa,yBAAyB,cAAkC,IAAI;AAG5E,SAAgB,qBAAyC;CACvD,OAAO,WAAW,sBAAsB;AAC1C;;AAOA,IAAa,cAAc,YAGxB,OAAO,QAAQ,oBAAC,eAAD;CAAuB;CAAK,GAAI;AAAQ,CAAA,CAAC;AAC3D,YAAY,cAAc;;AAO1B,IAAa,oBAAoB,YAG9B,OAAO,QAAQ,oBAAC,qBAAD;CAA6B;CAAK,GAAI;AAAQ,CAAA,CAAC;AACjE,kBAAkB,cAAc;;AAOhC,IAAa,cAAc,YAGxB,OAAO,QAAQ,oBAAC,eAAD;CAAuB;CAAK,GAAI;AAAQ,CAAA,CAAC;AAC3D,YAAY,cAAc;AAuB1B,SAAgB,OAAO,EACrB,MACA,cACA,UACA,WACA,mBAOC;CACD,MAAM,SAAS,UAAU,SAAS,aAAa;CAC/C,OACE,oBAAC,UAAD;EAAa,OAAO;EAAY;EAAoB;EAClD,UAAA,oBAAC,cAAD,EAAA,UACE,oBAAC,eAAD;GACE,WAAW,GACT,4BACA,2GACA,SACF;GACA,OAAO,EAAE,OAAO;GAChB,YAAY,MAAM;IAChB,IAAI,EAAE,QAAQ,YAAY,iBACxB,gBAAgB,CAAC;GAErB;GAEC;EACY,CAAA,EACH,CAAA;CACH,CAAA;AAEjB;AAEA,IAAa,gBAAgB,YAEzB,EACE,OACA,aACA,WAAW,WACX,kBAAkB,QAClB,YAAY,MACZ,UACA,WACA,mBACA,sBACA,mBACA,iBACA,kBACA,iBACA,aAEF,QACG;CACH,MAAM,eAAe,UAAU,SAAS,aAAa;CACrD,MAAM,YAAY,QAAQ,SAAS,eAAe,SAAS;CAI3D,MAAM,CAAC,aAAa,kBAAkB,SAAgC,IAAI;CAE1E,OACE,oBAAC,iBAAD;EACE,KAAK,UAAU,CAAC,KAAK,cAAc,CAAC;EACpC,WAAW,GACT,gJACA,WACA,gCACA,SACF;EACA,OAAO,EAAE,QAAQ,aAAa;EACR;EACH;EACF;EACC;EACD;EACN;EAEX,UAAA,oBAAC,gBAAD;GAAgB,OAAO;GACrB,UAAA,qBAAC,uBAAuB,UAAxB;IAAiC,OAAO;IAAxC,UAAA,CACG,aACC,oBAAC,OAAD;KAAK,WAAU;KACb,UAAA,qBAAC,OAAD;MAAK,WAAU;MAAf,UAAA,CACE,qBAAC,OAAD;OAAK,WAAU;OAAf,UAAA,CACG,aACC,oBAAC,MAAD;QACE,MAAM;QACN,OAAO;QACP,MAAK;OACN,CAAA,GAEH,qBAAC,OAAD;QAAK,WAAU;QAAf,UAAA,CACG,SACC,oBAAC,aAAD;SAAa,SAAA;SACX,UAAA,oBAAC,MAAD;UAAM,SAAQ;UAAK,QAAO;UACvB,UAAA;SACG,CAAA;QACK,CAAA,GAEd,eACC,oBAAC,mBAAD;SAAmB,SAAA;SACjB,UAAA,oBAAC,MAAD;UAAM,SAAQ;UAAK,WAAU;UAC1B,UAAA;SACG,CAAA;QACW,CAAA,CAElB;OACF,CAAA,CAAA;MACJ,CAAA,GAAA,aACC,oBAAC,aAAD;OAAa,SAAA;OACX,UAAA,oBAAC,YAAD;QACE,MAAM;QACN,OAAM;QACN,OAAM;QACN,SAAQ;QACR,WAAU;QACV,eAAY;QACZ,cAAc,EAAE,UAAU,KAAK;OAChC,CAAA;MACU,CAAA,CAEZ;;IACF,CAAA,GAEP,oBAAC,OAAD;KACE,WAAW,GACT,+DACA,aAAa,QACb,iBACF;KAEC;IACE,CAAA,CAC0B;;EACnB,CAAA;CACE,CAAA;AAExB,CACF;AAEA,cAAc,cAAc"}
@@ -0,0 +1,9 @@
1
+ interface DividerProps extends React.HTMLAttributes<HTMLElement> {
2
+ orientation?: 'horizontal' | 'vertical';
3
+ /** Strong emphasizes section boundaries; default keeps separators subtle. */
4
+ weight?: 'default' | 'strong';
5
+ decorative?: boolean;
6
+ }
7
+ declare const Divider: import("react").ForwardRefExoticComponent<DividerProps & import("react").RefAttributes<HTMLElement>>;
8
+ export { Divider };
9
+ export type { DividerProps };
@@ -0,0 +1,27 @@
1
+ import { cn } from "../../utils/cn.js";
2
+ import { forwardRef } from "react";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region packages/components/src/components/Divider/Divider.tsx
5
+ var Divider = forwardRef(({ orientation = "horizontal", weight = "default", decorative = true, className, role, ...props }, ref) => {
6
+ const accessibilityProps = decorative ? { "aria-hidden": true } : {
7
+ role: role ?? "separator",
8
+ "aria-orientation": orientation
9
+ };
10
+ if (orientation === "vertical") return /* @__PURE__ */ jsx("div", {
11
+ ref,
12
+ className: cn("self-stretch border-l", weight === "strong" ? "border-default" : "border-subtle", className),
13
+ ...accessibilityProps,
14
+ ...props
15
+ });
16
+ return /* @__PURE__ */ jsx("hr", {
17
+ ref,
18
+ className: cn("w-full border-0 border-t", weight === "strong" ? "border-default" : "border-subtle", className),
19
+ ...accessibilityProps,
20
+ ...props
21
+ });
22
+ });
23
+ Divider.displayName = "Divider";
24
+ //#endregion
25
+ export { Divider };
26
+
27
+ //# sourceMappingURL=Divider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Divider.js","names":[],"sources":["../../../src/components/Divider/Divider.tsx"],"sourcesContent":["import { forwardRef } from 'react';\n\nimport { cn } from '../../utils/cn';\n\ninterface DividerProps extends React.HTMLAttributes<HTMLElement> {\n orientation?: 'horizontal' | 'vertical';\n /** Strong emphasizes section boundaries; default keeps separators subtle. */\n weight?: 'default' | 'strong';\n decorative?: boolean;\n}\n\nconst Divider = forwardRef<HTMLElement, DividerProps>(\n (\n {\n orientation = 'horizontal',\n weight = 'default',\n decorative = true,\n className,\n role,\n ...props\n },\n ref\n ) => {\n const accessibilityProps = decorative\n ? { 'aria-hidden': true }\n : {\n role: role ?? 'separator',\n 'aria-orientation': orientation,\n };\n\n if (orientation === 'vertical') {\n return (\n <div\n ref={ref as React.Ref<HTMLDivElement>}\n className={cn(\n 'self-stretch border-l',\n weight === 'strong' ? 'border-default' : 'border-subtle',\n className\n )}\n {...accessibilityProps}\n {...props}\n />\n );\n }\n\n return (\n <hr\n ref={ref as React.Ref<HTMLHRElement>}\n className={cn(\n 'w-full border-0 border-t',\n weight === 'strong' ? 'border-default' : 'border-subtle',\n className\n )}\n {...accessibilityProps}\n {...props}\n />\n );\n }\n);\n\nDivider.displayName = 'Divider';\n\nexport { Divider };\nexport type { DividerProps };\n"],"mappings":";;;;AAWA,IAAM,UAAU,YAEZ,EACE,cAAc,cACd,SAAS,WACT,aAAa,MACb,WACA,MACA,GAAG,SAEL,QACG;CACH,MAAM,qBAAqB,aACvB,EAAE,eAAe,KAAK,IACtB;EACE,MAAM,QAAQ;EACd,oBAAoB;CACtB;CAEJ,IAAI,gBAAgB,YAClB,OACE,oBAAC,OAAD;EACO;EACL,WAAW,GACT,yBACA,WAAW,WAAW,mBAAmB,iBACzC,SACF;EACA,GAAI;EACJ,GAAI;CACL,CAAA;CAIL,OACE,oBAAC,MAAD;EACO;EACL,WAAW,GACT,4BACA,WAAW,WAAW,mBAAmB,iBACzC,SACF;EACA,GAAI;EACJ,GAAI;CACL,CAAA;AAEL,CACF;AAEA,QAAQ,cAAc"}
@@ -0,0 +1,2 @@
1
+ export { Divider } from './Divider.js';
2
+ export type { DividerProps } from './Divider.js';
@@ -0,0 +1,2 @@
1
+ import { Divider } from "./Divider.js";
2
+ export { Divider };
@@ -0,0 +1,101 @@
1
+ import { type AriaAttributes, type FocusEvent, type HTMLAttributes, type PointerEvent, type ReactNode } from 'react';
2
+ import { type ChartLegendProps } from '../ChartLegend/index.js';
3
+ export type DonutChartSegment = {
4
+ id: string;
5
+ label: ReactNode;
6
+ value: number;
7
+ /** Use DS CSS color token; typically a `var(--chart-...)` reference. */
8
+ color: string;
9
+ /**
10
+ * Marks a segment that already stands for a group of others — a remainder the
11
+ * data source rolled up, say. `otherCollationThreshold` merges it with the
12
+ * tail it collates instead of drawing a second "Other" beside it.
13
+ */
14
+ isOther?: boolean;
15
+ };
16
+ /**
17
+ * Everything `ChartLegend` accepts except `items`, which the donut derives from
18
+ * `segments`. Namespacing these under `legendProps` keeps `className` and the
19
+ * other DOM attributes on the chart root unambiguous.
20
+ */
21
+ type DonutChartLegendProps = Omit<ChartLegendProps, 'items'>;
22
+ /**
23
+ * `legendProps` only exists while there is a legend to configure: with
24
+ * `showLegend={false}` it narrows to `never`, so autocomplete stops offering it
25
+ * and passing it is a type error rather than a silently ignored prop.
26
+ */
27
+ type DonutChartLegendConfig = {
28
+ /** Defaults to true. */
29
+ showLegend?: true;
30
+ /** Forwarded to the rendered `ChartLegend`. */
31
+ legendProps?: DonutChartLegendProps;
32
+ } | {
33
+ showLegend: false;
34
+ legendProps?: never;
35
+ };
36
+ export type DonutChartProps = Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'onPointerOut'> & DonutChartLegendConfig & {
37
+ segments: readonly DonutChartSegment[];
38
+ /**
39
+ * When provided and non-empty, only segments whose IDs are in the set are
40
+ * rendered in the donut. Unselected segments stay in the legend with a 0%
41
+ * share. IDs address the collated list, so the segments behind an "Other"
42
+ * slice are selected as `DONUT_OTHER_SEGMENT_ID` rather than individually. A
43
+ * set naming none of those IDs draws everything, so a selection outliving
44
+ * the data it was made against cannot empty the chart.
45
+ */
46
+ selectedIds?: ReadonlySet<string>;
47
+ /**
48
+ * Number to render in the donut hole.
49
+ */
50
+ centerNumber?: string;
51
+ /**
52
+ * Descriptor for the number in the donut hole.
53
+ */
54
+ centerDescriptor?: string;
55
+ /**
56
+ * Scales `centerNumber` to the width of the donut hole.
57
+ */
58
+ scaleCenterNumberSize?: boolean;
59
+ /** Emphasizes one segment and dims the rest. */
60
+ activeSegmentId?: string | null;
61
+ /** Emphasizes the segment represented by one external legend item. Built-in legends set this automatically. */
62
+ activeLegendItemId?: string | null;
63
+ /** Animates segments when they are drawn. Defaults to true. */
64
+ shouldAnimate?: boolean;
65
+ /** Names segments and makes them focusable. */
66
+ getSegmentAriaLabel?: (segment: DonutChartSegment) => AriaAttributes['aria-label'];
67
+ /**
68
+ * Set to false to skip drawing the donut. Use it to avoid the work while a
69
+ * parent container is actively resizing. Defaults to true.
70
+ */
71
+ isRendering?: boolean;
72
+ /**
73
+ * Collates segments less than this set number to an "Other" slice, automatically merging any segment flagged `isOther`. Do not pass a value to render all segments, even if they are tiny.
74
+ */
75
+ otherCollationThreshold?: number;
76
+ /**
77
+ * Formats each segment's value for the legend. Defaults to a plain
78
+ * `en-US` number; pass a unit-aware formatter for durations, bytes, cost.
79
+ */
80
+ formatValue?: (value: number) => ReactNode;
81
+ onSegmentPointerMove?: (segment: DonutChartSegment, event: PointerEvent<SVGPathElement>) => void;
82
+ onSegmentPointerOut?: () => void;
83
+ onSegmentPointerUp?: (segment: DonutChartSegment, event: PointerEvent<SVGPathElement>) => void;
84
+ onSegmentFocus?: (segment: DonutChartSegment, event: FocusEvent<SVGPathElement>) => void;
85
+ onSegmentBlur?: (segment: DonutChartSegment, event: FocusEvent<SVGPathElement>) => void;
86
+ };
87
+ /**
88
+ * DonutChart renders a donut and its `ChartLegend` from a flat list of
89
+ * segments. Consumers own the segment palette and pair the chart
90
+ * with `ChartCard` and their own tooltip.
91
+ *
92
+ * The legend sits below the donut in narrow containers and beside it once the
93
+ * container passes 496px. Pass `showLegend={false}` for the donut alone,
94
+ * `legendProps` to configure the legend, and `legendProps.onItemClick` with
95
+ * `selectedIds` to make legend entries filter the donut. A long tail of tiny
96
+ * slices collapses into one "Other" slice via `otherCollationThreshold`, which
97
+ * absorbs any segment flagged `isOther`.
98
+
99
+ */
100
+ export declare const DonutChart: ({ segments, selectedIds, centerNumber, centerDescriptor, scaleCenterNumberSize, activeSegmentId, activeLegendItemId, shouldAnimate, getSegmentAriaLabel, isRendering, otherCollationThreshold, showLegend, legendProps, formatValue, onSegmentPointerMove, onSegmentPointerOut, onSegmentPointerUp, onSegmentFocus, onSegmentBlur, className, ...rest }: DonutChartProps) => import("react").JSX.Element;
101
+ export {};