@d4gger/design-system 3.0.0 → 4.0.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 (772) hide show
  1. package/README.md +19 -0
  2. package/dist/{components/controlGroup/ControlGroup.cjs → _internal/floatingLayer.cjs} +11 -26
  3. package/dist/_internal/floatingLayer.cjs.map +7 -0
  4. package/dist/_internal/floatingLayer.d.cts +28 -0
  5. package/dist/_internal/floatingLayer.d.cts.map +1 -0
  6. package/dist/_internal/floatingLayer.d.mts +28 -0
  7. package/dist/_internal/floatingLayer.d.mts.map +1 -0
  8. package/dist/_internal/floatingLayer.d.ts +28 -0
  9. package/dist/_internal/floatingLayer.d.ts.map +1 -0
  10. package/dist/_internal/floatingLayer.js +11 -0
  11. package/dist/_internal/floatingLayer.js.map +7 -0
  12. package/dist/components/accordion.css +9 -2
  13. package/dist/components/alert/Alert.cjs +11 -7
  14. package/dist/components/alert/Alert.cjs.map +2 -2
  15. package/dist/components/alert/Alert.d.cts.map +1 -1
  16. package/dist/components/alert/Alert.d.mts.map +1 -1
  17. package/dist/components/alert/Alert.d.ts.map +1 -1
  18. package/dist/components/alert/Alert.js +12 -8
  19. package/dist/components/alert/Alert.js.map +2 -2
  20. package/dist/components/alert.css +13 -0
  21. package/dist/components/article-nodes.css +16 -1
  22. package/dist/components/articleNodes/ArticleNodes.cjs +46 -5
  23. package/dist/components/articleNodes/ArticleNodes.cjs.map +2 -2
  24. package/dist/components/articleNodes/ArticleNodes.d.cts +7 -3
  25. package/dist/components/articleNodes/ArticleNodes.d.cts.map +1 -1
  26. package/dist/components/articleNodes/ArticleNodes.d.mts +7 -3
  27. package/dist/components/articleNodes/ArticleNodes.d.mts.map +1 -1
  28. package/dist/components/articleNodes/ArticleNodes.d.ts +7 -3
  29. package/dist/components/articleNodes/ArticleNodes.d.ts.map +1 -1
  30. package/dist/components/articleNodes/ArticleNodes.js +46 -5
  31. package/dist/components/articleNodes/ArticleNodes.js.map +2 -2
  32. package/dist/components/articleNodes/articleExtensions.cjs +21 -4
  33. package/dist/components/articleNodes/articleExtensions.cjs.map +2 -2
  34. package/dist/components/articleNodes/articleExtensions.d.cts +8 -2
  35. package/dist/components/articleNodes/articleExtensions.d.cts.map +1 -1
  36. package/dist/components/articleNodes/articleExtensions.d.mts +8 -2
  37. package/dist/components/articleNodes/articleExtensions.d.mts.map +1 -1
  38. package/dist/components/articleNodes/articleExtensions.d.ts +8 -2
  39. package/dist/components/articleNodes/articleExtensions.d.ts.map +1 -1
  40. package/dist/components/articleNodes/articleExtensions.js +21 -4
  41. package/dist/components/articleNodes/articleExtensions.js.map +2 -2
  42. package/dist/components/articleNodes/articleNodeViews.cjs +154 -0
  43. package/dist/components/articleNodes/articleNodeViews.cjs.map +7 -0
  44. package/dist/components/articleNodes/articleNodeViews.d.cts +3 -0
  45. package/dist/components/articleNodes/articleNodeViews.d.cts.map +1 -0
  46. package/dist/components/articleNodes/articleNodeViews.d.mts +3 -0
  47. package/dist/components/articleNodes/articleNodeViews.d.mts.map +1 -0
  48. package/dist/components/articleNodes/articleNodeViews.d.ts +3 -0
  49. package/dist/components/articleNodes/articleNodeViews.d.ts.map +1 -0
  50. package/dist/components/articleNodes/articleNodeViews.js +124 -0
  51. package/dist/components/articleNodes/articleNodeViews.js.map +7 -0
  52. package/dist/components/articleNodes/articleNodes.props.cjs.map +1 -1
  53. package/dist/components/articleNodes/articleNodes.props.d.cts +25 -2
  54. package/dist/components/articleNodes/articleNodes.props.d.cts.map +1 -1
  55. package/dist/components/articleNodes/articleNodes.props.d.mts +25 -2
  56. package/dist/components/articleNodes/articleNodes.props.d.mts.map +1 -1
  57. package/dist/components/articleNodes/articleNodes.props.d.ts +25 -2
  58. package/dist/components/articleNodes/articleNodes.props.d.ts.map +1 -1
  59. package/dist/components/banner/Banner.cjs +105 -0
  60. package/dist/components/banner/Banner.cjs.map +7 -0
  61. package/dist/components/banner/Banner.d.cts +27 -0
  62. package/dist/components/banner/Banner.d.cts.map +1 -0
  63. package/dist/components/banner/Banner.d.mts +27 -0
  64. package/dist/components/banner/Banner.d.mts.map +1 -0
  65. package/dist/components/banner/Banner.d.ts +27 -0
  66. package/dist/components/banner/Banner.d.ts.map +1 -0
  67. package/dist/components/banner/Banner.js +80 -0
  68. package/dist/components/banner/Banner.js.map +7 -0
  69. package/dist/components/{controlGroup/controlGroup.props.cjs → banner/banner.props.cjs} +23 -16
  70. package/dist/components/banner/banner.props.cjs.map +7 -0
  71. package/dist/components/banner/banner.props.d.cts +32 -0
  72. package/dist/components/banner/banner.props.d.cts.map +1 -0
  73. package/dist/components/banner/banner.props.d.mts +32 -0
  74. package/dist/components/banner/banner.props.d.mts.map +1 -0
  75. package/dist/components/banner/banner.props.d.ts +32 -0
  76. package/dist/components/banner/banner.props.d.ts.map +1 -0
  77. package/dist/components/banner/banner.props.js +27 -0
  78. package/dist/components/banner/banner.props.js.map +7 -0
  79. package/dist/components/banner.css +61 -0
  80. package/dist/components/blockquote.css +7 -4
  81. package/dist/components/bottom-dock.css +132 -0
  82. package/dist/components/bottomDock/BottomDock.cjs +140 -0
  83. package/dist/components/bottomDock/BottomDock.cjs.map +7 -0
  84. package/dist/components/bottomDock/BottomDock.d.cts +25 -0
  85. package/dist/components/bottomDock/BottomDock.d.cts.map +1 -0
  86. package/dist/components/bottomDock/BottomDock.d.mts +25 -0
  87. package/dist/components/bottomDock/BottomDock.d.mts.map +1 -0
  88. package/dist/components/bottomDock/BottomDock.d.ts +25 -0
  89. package/dist/components/bottomDock/BottomDock.d.ts.map +1 -0
  90. package/dist/components/bottomDock/BottomDock.js +110 -0
  91. package/dist/components/bottomDock/BottomDock.js.map +7 -0
  92. package/dist/components/bottomDock/bottomDock.props.cjs +49 -0
  93. package/dist/components/bottomDock/bottomDock.props.cjs.map +7 -0
  94. package/dist/components/bottomDock/bottomDock.props.d.cts +29 -0
  95. package/dist/components/bottomDock/bottomDock.props.d.cts.map +1 -0
  96. package/dist/components/bottomDock/bottomDock.props.d.mts +29 -0
  97. package/dist/components/bottomDock/bottomDock.props.d.mts.map +1 -0
  98. package/dist/components/bottomDock/bottomDock.props.d.ts +29 -0
  99. package/dist/components/bottomDock/bottomDock.props.d.ts.map +1 -0
  100. package/dist/components/bottomDock/bottomDock.props.js +29 -0
  101. package/dist/components/bottomDock/bottomDock.props.js.map +7 -0
  102. package/dist/components/breadcrumb.css +24 -3
  103. package/dist/components/button-group.css +25 -0
  104. package/dist/components/button.css +9 -0
  105. package/dist/components/callout.css +20 -7
  106. package/dist/components/card.css +11 -0
  107. package/dist/components/carousel/Carousel.cjs +109 -39
  108. package/dist/components/carousel/Carousel.cjs.map +3 -3
  109. package/dist/components/carousel/Carousel.d.cts.map +1 -1
  110. package/dist/components/carousel/Carousel.d.mts.map +1 -1
  111. package/dist/components/carousel/Carousel.d.ts.map +1 -1
  112. package/dist/components/carousel/Carousel.js +111 -41
  113. package/dist/components/carousel/Carousel.js.map +3 -3
  114. package/dist/components/carousel.css +93 -26
  115. package/dist/components/chart/Chart.cjs +61 -11
  116. package/dist/components/chart/Chart.cjs.map +2 -2
  117. package/dist/components/chart/Chart.d.cts.map +1 -1
  118. package/dist/components/chart/Chart.d.mts.map +1 -1
  119. package/dist/components/chart/Chart.d.ts.map +1 -1
  120. package/dist/components/chart/Chart.js +62 -11
  121. package/dist/components/chart/Chart.js.map +2 -2
  122. package/dist/components/chart.css +10 -1
  123. package/dist/components/checkbox.css +14 -0
  124. package/dist/components/code.css +29 -13
  125. package/dist/components/collapsible/Collapsible.cjs +4 -0
  126. package/dist/components/collapsible/Collapsible.cjs.map +2 -2
  127. package/dist/components/collapsible/Collapsible.d.cts.map +1 -1
  128. package/dist/components/collapsible/Collapsible.d.mts.map +1 -1
  129. package/dist/components/collapsible/Collapsible.d.ts.map +1 -1
  130. package/dist/components/collapsible/Collapsible.js +4 -0
  131. package/dist/components/collapsible/Collapsible.js.map +2 -2
  132. package/dist/components/collapsible.css +10 -1
  133. package/dist/components/combobox/Combobox.cjs +3 -1
  134. package/dist/components/combobox/Combobox.cjs.map +2 -2
  135. package/dist/components/combobox/Combobox.d.cts.map +1 -1
  136. package/dist/components/combobox/Combobox.d.mts.map +1 -1
  137. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  138. package/dist/components/combobox/Combobox.js +3 -1
  139. package/dist/components/combobox/Combobox.js.map +2 -2
  140. package/dist/components/combobox.css +5 -1
  141. package/dist/components/command/Command.cjs +1 -1
  142. package/dist/components/command/Command.cjs.map +2 -2
  143. package/dist/components/command/Command.js +1 -1
  144. package/dist/components/command/Command.js.map +2 -2
  145. package/dist/components/command.css +0 -2
  146. package/dist/components/comment-thread.css +15 -7
  147. package/dist/components/commentThread/CommentThread.cjs +45 -17
  148. package/dist/components/commentThread/CommentThread.cjs.map +2 -2
  149. package/dist/components/commentThread/CommentThread.d.cts +6 -6
  150. package/dist/components/commentThread/CommentThread.d.cts.map +1 -1
  151. package/dist/components/commentThread/CommentThread.d.mts +6 -6
  152. package/dist/components/commentThread/CommentThread.d.mts.map +1 -1
  153. package/dist/components/commentThread/CommentThread.d.ts +6 -6
  154. package/dist/components/commentThread/CommentThread.d.ts.map +1 -1
  155. package/dist/components/commentThread/CommentThread.js +45 -17
  156. package/dist/components/commentThread/CommentThread.js.map +2 -2
  157. package/dist/components/commentThread/commentThread.props.cjs.map +1 -1
  158. package/dist/components/commentThread/commentThread.props.d.cts +24 -0
  159. package/dist/components/commentThread/commentThread.props.d.cts.map +1 -1
  160. package/dist/components/commentThread/commentThread.props.d.mts +24 -0
  161. package/dist/components/commentThread/commentThread.props.d.mts.map +1 -1
  162. package/dist/components/commentThread/commentThread.props.d.ts +24 -0
  163. package/dist/components/commentThread/commentThread.props.d.ts.map +1 -1
  164. package/dist/components/config-drawer.css +7 -3
  165. package/dist/components/configDrawer/ConfigDrawer.cjs +1 -1
  166. package/dist/components/configDrawer/ConfigDrawer.cjs.map +2 -2
  167. package/dist/components/configDrawer/ConfigDrawer.js +1 -1
  168. package/dist/components/configDrawer/ConfigDrawer.js.map +2 -2
  169. package/dist/components/context-menu.css +4 -2
  170. package/dist/components/contextMenu/ContextMenu.cjs +37 -6
  171. package/dist/components/contextMenu/ContextMenu.cjs.map +2 -2
  172. package/dist/components/contextMenu/ContextMenu.d.cts +1 -1
  173. package/dist/components/contextMenu/ContextMenu.d.cts.map +1 -1
  174. package/dist/components/contextMenu/ContextMenu.d.mts +1 -1
  175. package/dist/components/contextMenu/ContextMenu.d.mts.map +1 -1
  176. package/dist/components/contextMenu/ContextMenu.d.ts +1 -1
  177. package/dist/components/contextMenu/ContextMenu.d.ts.map +1 -1
  178. package/dist/components/contextMenu/ContextMenu.js +37 -6
  179. package/dist/components/contextMenu/ContextMenu.js.map +2 -2
  180. package/dist/components/copy-field.css +18 -0
  181. package/dist/components/copyField/CopyField.cjs +3 -3
  182. package/dist/components/copyField/CopyField.cjs.map +2 -2
  183. package/dist/components/copyField/CopyField.d.cts.map +1 -1
  184. package/dist/components/copyField/CopyField.d.mts.map +1 -1
  185. package/dist/components/copyField/CopyField.d.ts.map +1 -1
  186. package/dist/components/copyField/CopyField.js +3 -3
  187. package/dist/components/copyField/CopyField.js.map +2 -2
  188. package/dist/components/data-list.css +19 -4
  189. package/dist/components/data-table.css +190 -0
  190. package/dist/components/dataTable/DataTable.cjs +193 -68
  191. package/dist/components/dataTable/DataTable.cjs.map +3 -3
  192. package/dist/components/dataTable/DataTable.d.cts +29 -1
  193. package/dist/components/dataTable/DataTable.d.cts.map +1 -1
  194. package/dist/components/dataTable/DataTable.d.mts +29 -1
  195. package/dist/components/dataTable/DataTable.d.mts.map +1 -1
  196. package/dist/components/dataTable/DataTable.d.ts +29 -1
  197. package/dist/components/dataTable/DataTable.d.ts.map +1 -1
  198. package/dist/components/dataTable/DataTable.js +193 -68
  199. package/dist/components/dataTable/DataTable.js.map +2 -2
  200. package/dist/components/dataTable/DataTableContext.cjs +41 -0
  201. package/dist/components/dataTable/DataTableContext.cjs.map +7 -0
  202. package/dist/components/dataTable/DataTableContext.d.cts +23 -0
  203. package/dist/components/dataTable/DataTableContext.d.cts.map +1 -0
  204. package/dist/components/dataTable/DataTableContext.d.mts +23 -0
  205. package/dist/components/dataTable/DataTableContext.d.mts.map +1 -0
  206. package/dist/components/dataTable/DataTableContext.d.ts +23 -0
  207. package/dist/components/dataTable/DataTableContext.d.ts.map +1 -0
  208. package/dist/components/dataTable/DataTableContext.js +11 -0
  209. package/dist/components/dataTable/DataTableContext.js.map +7 -0
  210. package/dist/components/dataTable/DataTablePagination.cjs +72 -47
  211. package/dist/components/dataTable/DataTablePagination.cjs.map +2 -2
  212. package/dist/components/dataTable/DataTablePagination.d.cts +5 -1
  213. package/dist/components/dataTable/DataTablePagination.d.cts.map +1 -1
  214. package/dist/components/dataTable/DataTablePagination.d.mts +5 -1
  215. package/dist/components/dataTable/DataTablePagination.d.mts.map +1 -1
  216. package/dist/components/dataTable/DataTablePagination.d.ts +5 -1
  217. package/dist/components/dataTable/DataTablePagination.d.ts.map +1 -1
  218. package/dist/components/dataTable/DataTablePagination.js +75 -47
  219. package/dist/components/dataTable/DataTablePagination.js.map +2 -2
  220. package/dist/components/dataTable/DataTableToolbar.cjs +122 -93
  221. package/dist/components/dataTable/DataTableToolbar.cjs.map +2 -2
  222. package/dist/components/dataTable/DataTableToolbar.d.cts +6 -5
  223. package/dist/components/dataTable/DataTableToolbar.d.cts.map +1 -1
  224. package/dist/components/dataTable/DataTableToolbar.d.mts +6 -5
  225. package/dist/components/dataTable/DataTableToolbar.d.mts.map +1 -1
  226. package/dist/components/dataTable/DataTableToolbar.d.ts +6 -5
  227. package/dist/components/dataTable/DataTableToolbar.d.ts.map +1 -1
  228. package/dist/components/dataTable/DataTableToolbar.js +123 -94
  229. package/dist/components/dataTable/DataTableToolbar.js.map +2 -2
  230. package/dist/components/dataTable/dataTable.export.cjs +83 -0
  231. package/dist/components/dataTable/dataTable.export.cjs.map +7 -0
  232. package/dist/components/dataTable/dataTable.export.d.cts +11 -0
  233. package/dist/components/dataTable/dataTable.export.d.cts.map +1 -0
  234. package/dist/components/dataTable/dataTable.export.d.mts +11 -0
  235. package/dist/components/dataTable/dataTable.export.d.mts.map +1 -0
  236. package/dist/components/dataTable/dataTable.export.d.ts +11 -0
  237. package/dist/components/dataTable/dataTable.export.d.ts.map +1 -0
  238. package/dist/components/dataTable/dataTable.export.js +63 -0
  239. package/dist/components/dataTable/dataTable.export.js.map +7 -0
  240. package/dist/components/dataTable/dataTable.props.cjs +23 -1
  241. package/dist/components/dataTable/dataTable.props.cjs.map +2 -2
  242. package/dist/components/dataTable/dataTable.props.d.cts +21 -1
  243. package/dist/components/dataTable/dataTable.props.d.cts.map +1 -1
  244. package/dist/components/dataTable/dataTable.props.d.mts +21 -1
  245. package/dist/components/dataTable/dataTable.props.d.mts.map +1 -1
  246. package/dist/components/dataTable/dataTable.props.d.ts +21 -1
  247. package/dist/components/dataTable/dataTable.props.d.ts.map +1 -1
  248. package/dist/components/dataTable/dataTable.props.js +23 -1
  249. package/dist/components/dataTable/dataTable.props.js.map +2 -2
  250. package/dist/components/dialog/Dialog.cjs +2 -1
  251. package/dist/components/dialog/Dialog.cjs.map +2 -2
  252. package/dist/components/dialog/Dialog.d.cts.map +1 -1
  253. package/dist/components/dialog/Dialog.d.mts.map +1 -1
  254. package/dist/components/dialog/Dialog.d.ts.map +1 -1
  255. package/dist/components/dialog/Dialog.js +2 -1
  256. package/dist/components/dialog/Dialog.js.map +2 -2
  257. package/dist/components/drawer.css +23 -6
  258. package/dist/components/dropdown-menu.css +1 -1
  259. package/dist/components/dropdownMenu/DropdownMenu.cjs +10 -5
  260. package/dist/components/dropdownMenu/DropdownMenu.cjs.map +2 -2
  261. package/dist/components/dropdownMenu/DropdownMenu.d.cts.map +1 -1
  262. package/dist/components/dropdownMenu/DropdownMenu.d.mts.map +1 -1
  263. package/dist/components/dropdownMenu/DropdownMenu.d.ts.map +1 -1
  264. package/dist/components/dropdownMenu/DropdownMenu.js +10 -5
  265. package/dist/components/dropdownMenu/DropdownMenu.js.map +2 -2
  266. package/dist/components/empty-state.css +5 -0
  267. package/dist/components/file-upload.css +36 -9
  268. package/dist/components/fileUpload/FileUpload.cjs +10 -1
  269. package/dist/components/fileUpload/FileUpload.cjs.map +2 -2
  270. package/dist/components/fileUpload/FileUpload.d.cts +1 -0
  271. package/dist/components/fileUpload/FileUpload.d.cts.map +1 -1
  272. package/dist/components/fileUpload/FileUpload.d.mts +1 -0
  273. package/dist/components/fileUpload/FileUpload.d.mts.map +1 -1
  274. package/dist/components/fileUpload/FileUpload.d.ts +1 -0
  275. package/dist/components/fileUpload/FileUpload.d.ts.map +1 -1
  276. package/dist/components/fileUpload/FileUpload.js +10 -1
  277. package/dist/components/fileUpload/FileUpload.js.map +2 -2
  278. package/dist/components/filter-bar.css +380 -8
  279. package/dist/components/filterBar/FilterBar.cjs +630 -1
  280. package/dist/components/filterBar/FilterBar.cjs.map +2 -2
  281. package/dist/components/filterBar/FilterBar.d.cts +132 -2
  282. package/dist/components/filterBar/FilterBar.d.cts.map +1 -1
  283. package/dist/components/filterBar/FilterBar.d.mts +132 -2
  284. package/dist/components/filterBar/FilterBar.d.mts.map +1 -1
  285. package/dist/components/filterBar/FilterBar.d.ts +132 -2
  286. package/dist/components/filterBar/FilterBar.d.ts.map +1 -1
  287. package/dist/components/filterBar/FilterBar.js +631 -2
  288. package/dist/components/filterBar/FilterBar.js.map +2 -2
  289. package/dist/components/floating-panel.css +50 -19
  290. package/dist/components/floatingPanel/FloatingPanel.cjs +156 -58
  291. package/dist/components/floatingPanel/FloatingPanel.cjs.map +2 -2
  292. package/dist/components/floatingPanel/FloatingPanel.d.cts.map +1 -1
  293. package/dist/components/floatingPanel/FloatingPanel.d.mts.map +1 -1
  294. package/dist/components/floatingPanel/FloatingPanel.d.ts.map +1 -1
  295. package/dist/components/floatingPanel/FloatingPanel.js +156 -58
  296. package/dist/components/floatingPanel/FloatingPanel.js.map +2 -2
  297. package/dist/components/fontProvider/FontProvider.cjs +1 -1
  298. package/dist/components/fontProvider/FontProvider.cjs.map +1 -1
  299. package/dist/components/fontProvider/FontProvider.js +1 -1
  300. package/dist/components/fontProvider/FontProvider.js.map +1 -1
  301. package/dist/components/grid/Grid.cjs +24 -35
  302. package/dist/components/grid/Grid.cjs.map +2 -2
  303. package/dist/components/grid/Grid.d.cts.map +1 -1
  304. package/dist/components/grid/Grid.d.mts.map +1 -1
  305. package/dist/components/grid/Grid.d.ts.map +1 -1
  306. package/dist/components/grid/Grid.js +24 -35
  307. package/dist/components/grid/Grid.js.map +2 -2
  308. package/dist/components/heading/Heading.cjs +1 -8
  309. package/dist/components/heading/Heading.cjs.map +2 -2
  310. package/dist/components/heading/Heading.d.cts.map +1 -1
  311. package/dist/components/heading/Heading.d.mts.map +1 -1
  312. package/dist/components/heading/Heading.d.ts.map +1 -1
  313. package/dist/components/heading/Heading.js +1 -8
  314. package/dist/components/heading/Heading.js.map +2 -2
  315. package/dist/components/heading/heading.props.cjs +9 -9
  316. package/dist/components/heading/heading.props.cjs.map +2 -2
  317. package/dist/components/heading/heading.props.d.cts +42 -43
  318. package/dist/components/heading/heading.props.d.cts.map +1 -1
  319. package/dist/components/heading/heading.props.d.mts +42 -43
  320. package/dist/components/heading/heading.props.d.mts.map +1 -1
  321. package/dist/components/heading/heading.props.d.ts +42 -43
  322. package/dist/components/heading/heading.props.d.ts.map +1 -1
  323. package/dist/components/heading/heading.props.js +9 -9
  324. package/dist/components/heading/heading.props.js.map +2 -2
  325. package/dist/components/heading.css +127 -104
  326. package/dist/components/hover-card.css +5 -2
  327. package/dist/components/icon/Icon.cjs +28 -2
  328. package/dist/components/icon/Icon.cjs.map +2 -2
  329. package/dist/components/icon/Icon.d.cts +33 -1
  330. package/dist/components/icon/Icon.d.cts.map +1 -1
  331. package/dist/components/icon/Icon.d.mts +33 -1
  332. package/dist/components/icon/Icon.d.mts.map +1 -1
  333. package/dist/components/icon/Icon.d.ts +33 -1
  334. package/dist/components/icon/Icon.d.ts.map +1 -1
  335. package/dist/components/icon/Icon.js +37 -2
  336. package/dist/components/icon/Icon.js.map +2 -2
  337. package/dist/components/icon/icons.cjs +18 -0
  338. package/dist/components/icon/icons.cjs.map +2 -2
  339. package/dist/components/icon/icons.d.cts +45 -0
  340. package/dist/components/icon/icons.d.cts.map +1 -1
  341. package/dist/components/icon/icons.d.mts +45 -0
  342. package/dist/components/icon/icons.d.mts.map +1 -1
  343. package/dist/components/icon/icons.d.ts +45 -0
  344. package/dist/components/icon/icons.d.ts.map +1 -1
  345. package/dist/components/icon/icons.js +18 -0
  346. package/dist/components/icon/icons.js.map +2 -2
  347. package/dist/components/icon-button.css +29 -0
  348. package/dist/components/index.cjs +2 -1
  349. package/dist/components/index.cjs.map +2 -2
  350. package/dist/components/index.d.cts +2 -1
  351. package/dist/components/index.d.cts.map +1 -1
  352. package/dist/components/index.d.mts +2 -1
  353. package/dist/components/index.d.mts.map +1 -1
  354. package/dist/components/index.d.ts +2 -1
  355. package/dist/components/index.d.ts.map +1 -1
  356. package/dist/components/index.js +2 -1
  357. package/dist/components/index.js.map +2 -2
  358. package/dist/components/item/Item.cjs +1 -1
  359. package/dist/components/item/Item.cjs.map +2 -2
  360. package/dist/components/item/Item.js +1 -1
  361. package/dist/components/item/Item.js.map +2 -2
  362. package/dist/components/item.css +12 -1
  363. package/dist/components/label.css +3 -0
  364. package/dist/components/link.css +33 -97
  365. package/dist/components/marquee/Marquee.cjs +1 -1
  366. package/dist/components/marquee/Marquee.cjs.map +2 -2
  367. package/dist/components/marquee/Marquee.js +1 -1
  368. package/dist/components/marquee/Marquee.js.map +2 -2
  369. package/dist/components/marquee.css +6 -0
  370. package/dist/components/menu/Menu.cjs +3 -1
  371. package/dist/components/menu/Menu.cjs.map +2 -2
  372. package/dist/components/menu/Menu.d.cts.map +1 -1
  373. package/dist/components/menu/Menu.d.mts.map +1 -1
  374. package/dist/components/menu/Menu.d.ts.map +1 -1
  375. package/dist/components/menu/Menu.js +3 -1
  376. package/dist/components/menu/Menu.js.map +2 -2
  377. package/dist/components/menubar.css +1 -1
  378. package/dist/components/metric.css +5 -0
  379. package/dist/components/notification-center.css +49 -9
  380. package/dist/components/notificationCenter/NotificationCenter.cjs +21 -16
  381. package/dist/components/notificationCenter/NotificationCenter.cjs.map +2 -2
  382. package/dist/components/notificationCenter/NotificationCenter.d.cts.map +1 -1
  383. package/dist/components/notificationCenter/NotificationCenter.d.mts.map +1 -1
  384. package/dist/components/notificationCenter/NotificationCenter.d.ts.map +1 -1
  385. package/dist/components/notificationCenter/NotificationCenter.js +22 -17
  386. package/dist/components/notificationCenter/NotificationCenter.js.map +2 -2
  387. package/dist/components/pagination/Pagination.cjs +143 -17
  388. package/dist/components/pagination/Pagination.cjs.map +2 -2
  389. package/dist/components/pagination/Pagination.d.cts +64 -4
  390. package/dist/components/pagination/Pagination.d.cts.map +1 -1
  391. package/dist/components/pagination/Pagination.d.mts +64 -4
  392. package/dist/components/pagination/Pagination.d.mts.map +1 -1
  393. package/dist/components/pagination/Pagination.d.ts +64 -4
  394. package/dist/components/pagination/Pagination.d.ts.map +1 -1
  395. package/dist/components/pagination/Pagination.js +143 -17
  396. package/dist/components/pagination/Pagination.js.map +2 -2
  397. package/dist/components/pagination.css +50 -8
  398. package/dist/components/phoneInput/PhoneInput.cjs +18 -13
  399. package/dist/components/phoneInput/PhoneInput.cjs.map +2 -2
  400. package/dist/components/phoneInput/PhoneInput.d.cts.map +1 -1
  401. package/dist/components/phoneInput/PhoneInput.d.mts.map +1 -1
  402. package/dist/components/phoneInput/PhoneInput.d.ts.map +1 -1
  403. package/dist/components/phoneInput/PhoneInput.js +19 -14
  404. package/dist/components/phoneInput/PhoneInput.js.map +2 -2
  405. package/dist/components/pills/Pills.cjs +1 -1
  406. package/dist/components/pills/Pills.cjs.map +2 -2
  407. package/dist/components/pills/Pills.js +2 -2
  408. package/dist/components/pills/Pills.js.map +2 -2
  409. package/dist/components/pills.css +6 -0
  410. package/dist/components/popover/Popover.cjs +2 -1
  411. package/dist/components/popover/Popover.cjs.map +2 -2
  412. package/dist/components/popover/Popover.d.cts.map +1 -1
  413. package/dist/components/popover/Popover.d.mts.map +1 -1
  414. package/dist/components/popover/Popover.d.ts.map +1 -1
  415. package/dist/components/popover/Popover.js +2 -1
  416. package/dist/components/popover/Popover.js.map +2 -2
  417. package/dist/components/popover.css +45 -6
  418. package/dist/components/prose.css +4 -4
  419. package/dist/components/qr-code.css +10 -17
  420. package/dist/components/qrCode/QrCode.cjs +14 -11
  421. package/dist/components/qrCode/QrCode.cjs.map +2 -2
  422. package/dist/components/qrCode/QrCode.d.cts.map +1 -1
  423. package/dist/components/qrCode/QrCode.d.mts.map +1 -1
  424. package/dist/components/qrCode/QrCode.d.ts.map +1 -1
  425. package/dist/components/qrCode/QrCode.js +14 -11
  426. package/dist/components/qrCode/QrCode.js.map +2 -2
  427. package/dist/components/radio-group.css +19 -0
  428. package/dist/components/radioGroup/RadioGroup.cjs +3 -2
  429. package/dist/components/radioGroup/RadioGroup.cjs.map +2 -2
  430. package/dist/components/radioGroup/RadioGroup.d.cts.map +1 -1
  431. package/dist/components/radioGroup/RadioGroup.d.mts.map +1 -1
  432. package/dist/components/radioGroup/RadioGroup.d.ts.map +1 -1
  433. package/dist/components/radioGroup/RadioGroup.js +3 -2
  434. package/dist/components/radioGroup/RadioGroup.js.map +2 -2
  435. package/dist/components/radioGroup/radioGroup.props.cjs +1 -1
  436. package/dist/components/radioGroup/radioGroup.props.cjs.map +2 -2
  437. package/dist/components/radioGroup/radioGroup.props.d.cts +1 -1
  438. package/dist/components/radioGroup/radioGroup.props.d.mts +1 -1
  439. package/dist/components/radioGroup/radioGroup.props.d.ts +1 -1
  440. package/dist/components/radioGroup/radioGroup.props.js +1 -1
  441. package/dist/components/radioGroup/radioGroup.props.js.map +2 -2
  442. package/dist/components/rating.css +12 -0
  443. package/dist/components/resizable.css +20 -4
  444. package/dist/components/result.css +2 -1
  445. package/dist/components/rich-text-editor.css +50 -14
  446. package/dist/components/richTextEditor/EditorTools.cjs +226 -0
  447. package/dist/components/richTextEditor/EditorTools.cjs.map +7 -0
  448. package/dist/components/richTextEditor/EditorTools.d.cts +22 -0
  449. package/dist/components/richTextEditor/EditorTools.d.cts.map +1 -0
  450. package/dist/components/richTextEditor/EditorTools.d.mts +22 -0
  451. package/dist/components/richTextEditor/EditorTools.d.mts.map +1 -0
  452. package/dist/components/richTextEditor/EditorTools.d.ts +22 -0
  453. package/dist/components/richTextEditor/EditorTools.d.ts.map +1 -0
  454. package/dist/components/richTextEditor/EditorTools.js +196 -0
  455. package/dist/components/richTextEditor/EditorTools.js.map +7 -0
  456. package/dist/components/richTextEditor/MentionSuggestions.cjs +96 -0
  457. package/dist/components/richTextEditor/MentionSuggestions.cjs.map +7 -0
  458. package/dist/components/richTextEditor/MentionSuggestions.d.cts +7 -0
  459. package/dist/components/richTextEditor/MentionSuggestions.d.cts.map +1 -0
  460. package/dist/components/richTextEditor/MentionSuggestions.d.mts +7 -0
  461. package/dist/components/richTextEditor/MentionSuggestions.d.mts.map +1 -0
  462. package/dist/components/richTextEditor/MentionSuggestions.d.ts +7 -0
  463. package/dist/components/richTextEditor/MentionSuggestions.d.ts.map +1 -0
  464. package/dist/components/richTextEditor/MentionSuggestions.js +66 -0
  465. package/dist/components/richTextEditor/MentionSuggestions.js.map +7 -0
  466. package/dist/components/richTextEditor/RichTextEditor.cjs +63 -208
  467. package/dist/components/richTextEditor/RichTextEditor.cjs.map +3 -3
  468. package/dist/components/richTextEditor/RichTextEditor.d.cts +17 -7
  469. package/dist/components/richTextEditor/RichTextEditor.d.cts.map +1 -1
  470. package/dist/components/richTextEditor/RichTextEditor.d.mts +17 -7
  471. package/dist/components/richTextEditor/RichTextEditor.d.mts.map +1 -1
  472. package/dist/components/richTextEditor/RichTextEditor.d.ts +17 -7
  473. package/dist/components/richTextEditor/RichTextEditor.d.ts.map +1 -1
  474. package/dist/components/richTextEditor/RichTextEditor.js +63 -208
  475. package/dist/components/richTextEditor/RichTextEditor.js.map +3 -3
  476. package/dist/components/richTextEditor/editorTokens.cjs +75 -0
  477. package/dist/components/richTextEditor/editorTokens.cjs.map +7 -0
  478. package/dist/components/richTextEditor/editorTokens.d.cts +21 -0
  479. package/dist/components/richTextEditor/editorTokens.d.cts.map +1 -0
  480. package/dist/components/richTextEditor/editorTokens.d.mts +21 -0
  481. package/dist/components/richTextEditor/editorTokens.d.mts.map +1 -0
  482. package/dist/components/richTextEditor/editorTokens.d.ts +21 -0
  483. package/dist/components/richTextEditor/editorTokens.d.ts.map +1 -0
  484. package/dist/components/richTextEditor/editorTokens.js +55 -0
  485. package/dist/components/richTextEditor/editorTokens.js.map +7 -0
  486. package/dist/components/scroll-area.css +12 -0
  487. package/dist/components/scrollArea/ScrollArea.cjs +12 -1
  488. package/dist/components/scrollArea/ScrollArea.cjs.map +2 -2
  489. package/dist/components/scrollArea/ScrollArea.d.cts.map +1 -1
  490. package/dist/components/scrollArea/ScrollArea.d.mts.map +1 -1
  491. package/dist/components/scrollArea/ScrollArea.d.ts.map +1 -1
  492. package/dist/components/scrollArea/ScrollArea.js +12 -1
  493. package/dist/components/scrollArea/ScrollArea.js.map +2 -2
  494. package/dist/components/segmented-control.css +80 -4
  495. package/dist/components/segmentedControl/SegmentedControl.cjs +18 -5
  496. package/dist/components/segmentedControl/SegmentedControl.cjs.map +2 -2
  497. package/dist/components/segmentedControl/SegmentedControl.d.cts.map +1 -1
  498. package/dist/components/segmentedControl/SegmentedControl.d.mts.map +1 -1
  499. package/dist/components/segmentedControl/SegmentedControl.d.ts.map +1 -1
  500. package/dist/components/segmentedControl/SegmentedControl.js +18 -5
  501. package/dist/components/segmentedControl/SegmentedControl.js.map +2 -2
  502. package/dist/components/segmentedControl/segmentedControl.props.cjs +10 -0
  503. package/dist/components/segmentedControl/segmentedControl.props.cjs.map +2 -2
  504. package/dist/components/segmentedControl/segmentedControl.props.d.cts +9 -0
  505. package/dist/components/segmentedControl/segmentedControl.props.d.cts.map +1 -1
  506. package/dist/components/segmentedControl/segmentedControl.props.d.mts +9 -0
  507. package/dist/components/segmentedControl/segmentedControl.props.d.mts.map +1 -1
  508. package/dist/components/segmentedControl/segmentedControl.props.d.ts +9 -0
  509. package/dist/components/segmentedControl/segmentedControl.props.d.ts.map +1 -1
  510. package/dist/components/segmentedControl/segmentedControl.props.js +10 -0
  511. package/dist/components/segmentedControl/segmentedControl.props.js.map +2 -2
  512. package/dist/components/select/Select.cjs +3 -1
  513. package/dist/components/select/Select.cjs.map +2 -2
  514. package/dist/components/select/Select.d.cts.map +1 -1
  515. package/dist/components/select/Select.d.mts.map +1 -1
  516. package/dist/components/select/Select.d.ts.map +1 -1
  517. package/dist/components/select/Select.js +3 -1
  518. package/dist/components/select/Select.js.map +2 -2
  519. package/dist/components/select.css +1 -1
  520. package/dist/components/separator.css +3 -9
  521. package/dist/components/sidebar/Sidebar.cjs +12 -4
  522. package/dist/components/sidebar/Sidebar.cjs.map +2 -2
  523. package/dist/components/sidebar/Sidebar.d.cts +4 -1
  524. package/dist/components/sidebar/Sidebar.d.cts.map +1 -1
  525. package/dist/components/sidebar/Sidebar.d.mts +4 -1
  526. package/dist/components/sidebar/Sidebar.d.mts.map +1 -1
  527. package/dist/components/sidebar/Sidebar.d.ts +4 -1
  528. package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
  529. package/dist/components/sidebar/Sidebar.js +12 -4
  530. package/dist/components/sidebar/Sidebar.js.map +2 -2
  531. package/dist/components/sidebar/sidebar.props.cjs +8 -1
  532. package/dist/components/sidebar/sidebar.props.cjs.map +2 -2
  533. package/dist/components/sidebar/sidebar.props.d.cts +9 -1
  534. package/dist/components/sidebar/sidebar.props.d.cts.map +1 -1
  535. package/dist/components/sidebar/sidebar.props.d.mts +9 -1
  536. package/dist/components/sidebar/sidebar.props.d.mts.map +1 -1
  537. package/dist/components/sidebar/sidebar.props.d.ts +9 -1
  538. package/dist/components/sidebar/sidebar.props.d.ts.map +1 -1
  539. package/dist/components/sidebar/sidebar.props.js +8 -1
  540. package/dist/components/sidebar/sidebar.props.js.map +2 -2
  541. package/dist/components/sidebar.css +28 -0
  542. package/dist/components/sonner.css +79 -17
  543. package/dist/components/sortableList/SortableList.cjs +8 -2
  544. package/dist/components/sortableList/SortableList.cjs.map +2 -2
  545. package/dist/components/sortableList/SortableList.d.cts.map +1 -1
  546. package/dist/components/sortableList/SortableList.d.mts.map +1 -1
  547. package/dist/components/sortableList/SortableList.d.ts.map +1 -1
  548. package/dist/components/sortableList/SortableList.js +8 -2
  549. package/dist/components/sortableList/SortableList.js.map +2 -2
  550. package/dist/components/stat-card.css +2 -0
  551. package/dist/components/stepper.css +23 -12
  552. package/dist/components/tab-nav.css +25 -13
  553. package/dist/components/tabNav/TabNav.cjs +1 -4
  554. package/dist/components/tabNav/TabNav.cjs.map +2 -2
  555. package/dist/components/tabNav/TabNav.d.cts.map +1 -1
  556. package/dist/components/tabNav/TabNav.d.mts.map +1 -1
  557. package/dist/components/tabNav/TabNav.d.ts.map +1 -1
  558. package/dist/components/tabNav/TabNav.js +1 -4
  559. package/dist/components/tabNav/TabNav.js.map +2 -2
  560. package/dist/components/table/Table.cjs +3 -2
  561. package/dist/components/table/Table.cjs.map +2 -2
  562. package/dist/components/table/Table.d.cts.map +1 -1
  563. package/dist/components/table/Table.d.mts.map +1 -1
  564. package/dist/components/table/Table.d.ts.map +1 -1
  565. package/dist/components/table/Table.js +3 -2
  566. package/dist/components/table/Table.js.map +2 -2
  567. package/dist/components/table/table.props.cjs +6 -0
  568. package/dist/components/table/table.props.cjs.map +2 -2
  569. package/dist/components/table/table.props.d.cts +5 -0
  570. package/dist/components/table/table.props.d.cts.map +1 -1
  571. package/dist/components/table/table.props.d.mts +5 -0
  572. package/dist/components/table/table.props.d.mts.map +1 -1
  573. package/dist/components/table/table.props.d.ts +5 -0
  574. package/dist/components/table/table.props.d.ts.map +1 -1
  575. package/dist/components/table/table.props.js +6 -0
  576. package/dist/components/table/table.props.js.map +2 -2
  577. package/dist/components/table-of-contents.css +12 -2
  578. package/dist/components/table.css +20 -13
  579. package/dist/components/tableOfContents/TableOfContents.cjs +11 -4
  580. package/dist/components/tableOfContents/TableOfContents.cjs.map +2 -2
  581. package/dist/components/tableOfContents/TableOfContents.d.cts.map +1 -1
  582. package/dist/components/tableOfContents/TableOfContents.d.mts.map +1 -1
  583. package/dist/components/tableOfContents/TableOfContents.d.ts.map +1 -1
  584. package/dist/components/tableOfContents/TableOfContents.js +11 -4
  585. package/dist/components/tableOfContents/TableOfContents.js.map +2 -2
  586. package/dist/components/tabs/Tabs.cjs +39 -54
  587. package/dist/components/tabs/Tabs.cjs.map +2 -2
  588. package/dist/components/tabs/Tabs.d.cts.map +1 -1
  589. package/dist/components/tabs/Tabs.d.mts.map +1 -1
  590. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  591. package/dist/components/tabs/Tabs.js +39 -54
  592. package/dist/components/tabs/Tabs.js.map +2 -2
  593. package/dist/components/tabs.css +62 -7
  594. package/dist/components/text/text.props.cjs +9 -9
  595. package/dist/components/text/text.props.cjs.map +2 -2
  596. package/dist/components/text/text.props.d.cts +42 -43
  597. package/dist/components/text/text.props.d.cts.map +1 -1
  598. package/dist/components/text/text.props.d.mts +42 -43
  599. package/dist/components/text/text.props.d.mts.map +1 -1
  600. package/dist/components/text/text.props.d.ts +42 -43
  601. package/dist/components/text/text.props.d.ts.map +1 -1
  602. package/dist/components/text/text.props.js +9 -9
  603. package/dist/components/text/text.props.js.map +2 -2
  604. package/dist/components/text/typography.props.cjs +32 -0
  605. package/dist/components/text/typography.props.cjs.map +7 -0
  606. package/dist/components/text/typography.props.d.cts +3 -0
  607. package/dist/components/text/typography.props.d.cts.map +1 -0
  608. package/dist/components/text/typography.props.d.mts +3 -0
  609. package/dist/components/text/typography.props.d.mts.map +1 -0
  610. package/dist/components/text/typography.props.d.ts +3 -0
  611. package/dist/components/text/typography.props.d.ts.map +1 -0
  612. package/dist/components/text/typography.props.js +12 -0
  613. package/dist/components/text/typography.props.js.map +7 -0
  614. package/dist/components/text-field.css +1 -0
  615. package/dist/components/text.css +41 -6
  616. package/dist/components/theme-panel.css +6 -0
  617. package/dist/components/timeline.css +54 -18
  618. package/dist/components/toast/Toast.cjs +3 -1
  619. package/dist/components/toast/Toast.cjs.map +2 -2
  620. package/dist/components/toast/Toast.d.cts.map +1 -1
  621. package/dist/components/toast/Toast.d.mts.map +1 -1
  622. package/dist/components/toast/Toast.d.ts.map +1 -1
  623. package/dist/components/toast/Toast.js +3 -1
  624. package/dist/components/toast/Toast.js.map +2 -2
  625. package/dist/components/toast.css +50 -18
  626. package/dist/components/toggle-group.css +5 -0
  627. package/dist/components/toggle-tip.css +58 -9
  628. package/dist/components/toggleTip/ToggleTip.cjs +9 -5
  629. package/dist/components/toggleTip/ToggleTip.cjs.map +2 -2
  630. package/dist/components/toggleTip/ToggleTip.d.cts.map +1 -1
  631. package/dist/components/toggleTip/ToggleTip.d.mts.map +1 -1
  632. package/dist/components/toggleTip/ToggleTip.d.ts.map +1 -1
  633. package/dist/components/toggleTip/ToggleTip.js +9 -5
  634. package/dist/components/toggleTip/ToggleTip.js.map +2 -2
  635. package/dist/components/toolbar/Toolbar.cjs +10 -7
  636. package/dist/components/toolbar/Toolbar.cjs.map +2 -2
  637. package/dist/components/toolbar/Toolbar.js +10 -7
  638. package/dist/components/toolbar/Toolbar.js.map +2 -2
  639. package/dist/components/toolbar.css +58 -4
  640. package/dist/components/tooltip.css +9 -5
  641. package/dist/components/tree-view.css +17 -3
  642. package/dist/components/treeView/TreeView.cjs +76 -21
  643. package/dist/components/treeView/TreeView.cjs.map +2 -2
  644. package/dist/components/treeView/TreeView.d.cts.map +1 -1
  645. package/dist/components/treeView/TreeView.d.mts.map +1 -1
  646. package/dist/components/treeView/TreeView.d.ts.map +1 -1
  647. package/dist/components/treeView/TreeView.js +76 -21
  648. package/dist/components/treeView/TreeView.js.map +2 -2
  649. package/dist/components.css +2 -2
  650. package/dist/docs/README.md +2 -1
  651. package/dist/docs/component-contract.md +7 -6
  652. package/dist/docs/component-index.json +17 -9
  653. package/dist/docs/components/accordion.md +5 -36
  654. package/dist/docs/components/alert.md +17 -10
  655. package/dist/docs/components/article-nodes.md +59 -2
  656. package/dist/docs/components/aspect-ratio.md +3 -26
  657. package/dist/docs/components/banner.md +152 -0
  658. package/dist/docs/components/blockquote.md +15 -14
  659. package/dist/docs/components/bottom-dock.md +146 -0
  660. package/dist/docs/components/box.md +3 -34
  661. package/dist/docs/components/breadcrumb.md +13 -8
  662. package/dist/docs/components/button-group.md +4 -3
  663. package/dist/docs/components/button.md +2 -2
  664. package/dist/docs/components/callout.md +18 -7
  665. package/dist/docs/components/card.md +10 -2
  666. package/dist/docs/components/carousel.md +55 -32
  667. package/dist/docs/components/chart.md +25 -7
  668. package/dist/docs/components/checkbox.md +4 -0
  669. package/dist/docs/components/code.md +33 -220
  670. package/dist/docs/components/collapsible.md +11 -35
  671. package/dist/docs/components/combobox.md +3 -1
  672. package/dist/docs/components/command.md +4 -2
  673. package/dist/docs/components/comment-thread.md +51 -1
  674. package/dist/docs/components/config-drawer.md +72 -171
  675. package/dist/docs/components/container.md +2 -0
  676. package/dist/docs/components/context-menu.md +19 -5
  677. package/dist/docs/components/copy-field.md +2 -2
  678. package/dist/docs/components/data-list.md +15 -3
  679. package/dist/docs/components/data-table.md +98 -17
  680. package/dist/docs/components/dialog.md +7 -1
  681. package/dist/docs/components/drawer.md +17 -6
  682. package/dist/docs/components/dropdown-menu.md +13 -3
  683. package/dist/docs/components/em.md +1 -1
  684. package/dist/docs/components/empty-state.md +3 -1
  685. package/dist/docs/components/file-upload.md +14 -7
  686. package/dist/docs/components/filter-bar.md +193 -8
  687. package/dist/docs/components/floating-panel.md +79 -285
  688. package/dist/docs/components/form.md +4 -0
  689. package/dist/docs/components/grid.md +11 -60
  690. package/dist/docs/components/heading.md +35 -32
  691. package/dist/docs/components/hover-card.md +9 -1
  692. package/dist/docs/components/icon-button.md +4 -1
  693. package/dist/docs/components/item.md +18 -13
  694. package/dist/docs/components/kbd.md +2 -0
  695. package/dist/docs/components/label.md +11 -9
  696. package/dist/docs/components/link.md +31 -209
  697. package/dist/docs/components/marquee.md +2 -2
  698. package/dist/docs/components/menu.md +4 -1
  699. package/dist/docs/components/metric.md +4 -1
  700. package/dist/docs/components/notification-center.md +24 -14
  701. package/dist/docs/components/page-header.md +2 -0
  702. package/dist/docs/components/pagination.md +92 -17
  703. package/dist/docs/components/pills.md +13 -4
  704. package/dist/docs/components/popover.md +12 -3
  705. package/dist/docs/components/prose.md +14 -1
  706. package/dist/docs/components/qr-code.md +25 -24
  707. package/dist/docs/components/quote.md +9 -4
  708. package/dist/docs/components/radio-group.md +5 -2
  709. package/dist/docs/components/rating.md +2 -0
  710. package/dist/docs/components/resizable.md +26 -18
  711. package/dist/docs/components/result.md +6 -0
  712. package/dist/docs/components/rich-text-editor.md +68 -18
  713. package/dist/docs/components/scroll-area.md +17 -9
  714. package/dist/docs/components/section.md +3 -38
  715. package/dist/docs/components/segmented-control.md +8 -3
  716. package/dist/docs/components/segmented-meter.md +9 -0
  717. package/dist/docs/components/select.md +3 -2
  718. package/dist/docs/components/separator.md +10 -46
  719. package/dist/docs/components/sidebar.md +20 -4
  720. package/dist/docs/components/sonner.md +26 -17
  721. package/dist/docs/components/sortable-list.md +2 -0
  722. package/dist/docs/components/stat-card.md +5 -4
  723. package/dist/docs/components/stepper.md +8 -32
  724. package/dist/docs/components/strong.md +1 -1
  725. package/dist/docs/components/tab-nav.md +33 -96
  726. package/dist/docs/components/table-of-contents.md +8 -2
  727. package/dist/docs/components/table.md +14 -5
  728. package/dist/docs/components/tabs.md +19 -50
  729. package/dist/docs/components/tag.md +4 -2
  730. package/dist/docs/components/text-field.md +1 -0
  731. package/dist/docs/components/text.md +34 -28
  732. package/dist/docs/components/theme-panel.md +3 -28
  733. package/dist/docs/components/theme.md +7 -3
  734. package/dist/docs/components/timeline.md +9 -5
  735. package/dist/docs/components/toast.md +28 -14
  736. package/dist/docs/components/toggle-group.md +2 -1
  737. package/dist/docs/components/toggle-tip.md +58 -241
  738. package/dist/docs/components/toolbar.md +16 -39
  739. package/dist/docs/components/tooltip.md +13 -7
  740. package/dist/docs/components/tree-view.md +22 -55
  741. package/dist/fonts.css +1 -1
  742. package/dist/generated/tokens.cjs +2 -1
  743. package/dist/generated/tokens.cjs.map +2 -2
  744. package/dist/generated/tokens.d.cts.map +1 -1
  745. package/dist/generated/tokens.d.mts.map +1 -1
  746. package/dist/generated/tokens.d.ts.map +1 -1
  747. package/dist/generated/tokens.js +2 -1
  748. package/dist/generated/tokens.js.map +2 -2
  749. package/dist/motion.css +18 -3
  750. package/dist/styles.css +3045 -1756
  751. package/dist/tokens.css +349 -361
  752. package/package.json +1 -1
  753. package/dist/components/control-group.css +0 -142
  754. package/dist/components/controlGroup/ControlGroup.cjs.map +0 -7
  755. package/dist/components/controlGroup/ControlGroup.d.cts +0 -16
  756. package/dist/components/controlGroup/ControlGroup.d.cts.map +0 -1
  757. package/dist/components/controlGroup/ControlGroup.d.mts +0 -16
  758. package/dist/components/controlGroup/ControlGroup.d.mts.map +0 -1
  759. package/dist/components/controlGroup/ControlGroup.d.ts +0 -16
  760. package/dist/components/controlGroup/ControlGroup.d.ts.map +0 -1
  761. package/dist/components/controlGroup/ControlGroup.js +0 -26
  762. package/dist/components/controlGroup/ControlGroup.js.map +0 -7
  763. package/dist/components/controlGroup/controlGroup.props.cjs.map +0 -7
  764. package/dist/components/controlGroup/controlGroup.props.d.cts +0 -18
  765. package/dist/components/controlGroup/controlGroup.props.d.cts.map +0 -1
  766. package/dist/components/controlGroup/controlGroup.props.d.mts +0 -18
  767. package/dist/components/controlGroup/controlGroup.props.d.mts.map +0 -1
  768. package/dist/components/controlGroup/controlGroup.props.d.ts +0 -18
  769. package/dist/components/controlGroup/controlGroup.props.d.ts.map +0 -1
  770. package/dist/components/controlGroup/controlGroup.props.js +0 -20
  771. package/dist/components/controlGroup/controlGroup.props.js.map +0 -7
  772. package/dist/docs/components/control-group.md +0 -261
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@d4gger/design-system",
3
- "version": "3.0.0",
3
+ "version": "4.0.0",
4
4
  "description": "Publishable design-system package for D4gger foundations, icons, primitives, and components.",
5
5
  "keywords": [
6
6
  "d4gger",
@@ -1,142 +0,0 @@
1
- /* data-group-radius, not data-radius (2026-08-26, real bug found live): data-radius is a
2
- reserved document-theme attribute that PortalThemeBoundary walks up via closest-ancestor
3
- lookup to mirror the app's global radius setting into portaled content (Select/Dialog/
4
- Popover/etc). A component-local data-radius sitting between a portal trigger and <html>
5
- gets picked up instead of the real value — confirmed live via a Select inside this
6
- component whose dropdown opened at 9999px border-radius instead of the real global radius. */
7
- .dsx-control-group {
8
- display: inline-flex;
9
- align-items: center;
10
- gap: 0;
11
- isolation: isolate;
12
- border: var(--dsx-border-width-sm) solid var(--dsx-color-outline-variant);
13
- background: var(--dsx-color-surface);
14
- padding: var(--dsx-space-xs);
15
- min-width: max-content;
16
- }
17
-
18
- /* Real bug found live (2026-08-26, direct screenshot: an active ToggleGroup item's filled
19
- background poked a hard square corner past this frame's rounded-full pill): this used to set
20
- a bespoke `--dsx-control-group-item-radius` custom property that only this file ever read.
21
- ButtonGroup, SegmentedControl, ToggleGroup, and baseInput all already share one established
22
- convention for the same concept — `--dsx-grouped-radius` (declared globally in tokens.css,
23
- defaulting to `--dsx-rounded-md`) — and ToggleGroup's own per-item corner rules (this file's
24
- sibling, toggle-group.css) read exactly that token with that exact fallback. Because
25
- ControlGroup never set it, every child silently fell back to `--dsx-rounded-md` (8px)
26
- regardless of ControlGroup's own `radius` prop — invisible for a plain-bordered rest-state
27
- corner, glaringly visible once an active item got a real fill (this session's ToggleGroup
28
- contrast fix). Renamed to join the existing convention instead of inventing a second one. */
29
- .dsx-control-group[data-group-radius='full'] {
30
- border-radius: var(--dsx-rounded-full);
31
- --dsx-grouped-radius: var(--dsx-rounded-full);
32
- }
33
-
34
- .dsx-control-group[data-group-radius='md'] {
35
- border-radius: var(--dsx-rounded-md);
36
- --dsx-grouped-radius: var(--dsx-rounded-md);
37
- }
38
-
39
- /* Direct children keep their own border/shadow/background — ControlGroup only manages the two
40
- outer corners (so a child's own rounded shape matches the frame's curve instead of poking a
41
- square corner past it, the exact bug that motivated this component) and a 1px seam between
42
- adjacent children. Not a border-collapse like InputGroup: children here are not assumed to
43
- share one border width, since they're full DS components, not stacked form parts.
44
- --dsx-grouped-radius (set on the root above, per data-radius) keeps these child
45
- selectors at class+pseudo-class specificity instead of repeating the [data-radius] attribute
46
- on every rule — the CSS selector policy caps specificity, this keeps both radius values
47
- covered by two selectors instead of four.
48
-
49
- Real bug found live (2026-08-26): a child composed from a component that renders
50
- PortalThemeBoundary (Select, Dialog, Popover, DropdownMenu, ...) injects a `hidden`
51
- `<span data-dsx-portal-probe>` as ITS OWN first DOM sibling, ahead of the component's visible
52
- markup — confirmed via a Select child, whose actual `:first-child` in the DOM was that hidden
53
- probe span, not the visible trigger button. `> *:first-child` landed the corner radius on the
54
- invisible probe, leaving the real trigger's own default (non-full) radius untouched — the
55
- "currency picker isn't rounded" bug. The probe is always exactly one hidden leading sibling
56
- (never last), so `:first-child` alone still needs a fallback for "the element right after a
57
- hidden first child"; `:last-child` needed no change since the probe is never last. */
58
- .dsx-control-group > *:first-child:not([hidden]),
59
- .dsx-control-group > [hidden]:first-child + * {
60
- border-start-start-radius: var(--dsx-grouped-radius);
61
- border-end-start-radius: var(--dsx-grouped-radius);
62
- }
63
-
64
- .dsx-control-group > *:last-child {
65
- border-start-end-radius: var(--dsx-grouped-radius);
66
- border-end-end-radius: var(--dsx-grouped-radius);
67
- }
68
-
69
- /* Real bug found live (2026-08-26, direct screenshot annotation pointing at the seam between
70
- Select and ToggleGroup): the two rules above only ever touched each child's OUTER corners —
71
- the INNER corners (Select's right edge, ToggleGroup's left edge, where they meet at the
72
- divider) were left at that child's own component default (Select's own `--dsx-rounded-md`,
73
- 8px), not explicitly squared. Confirmed via computed style: Select's own `border-radius`
74
- read `9999px 8px 8px 9999px` — the outer-left corner correctly matched the pill, but the
75
- inner-right corner sat at a stray 8px instead of 0, reading as a mismatched notch right at
76
- the seam. Every grouped-control convention in this DS (ButtonGroup, SegmentedControl) squares
77
- the inner-facing corners explicitly rather than assuming a child's own default is already 0 —
78
- this closes the same gap here.
79
-
80
- ROOT CAUSE, not another patch (2026-08-26, same-day correction after the fix above still
81
- broke, confirmed live via a screenshot of the currency dropdown OPEN): the very next rule
82
- added here (a generic "middle child" `:not(:first-child):not(:last-child) { border-radius:
83
- 0 }`) was written for a hypothetical 3+-child ControlGroup that has never existed anywhere in
84
- this codebase — the only real usage today is exactly two children (Select + ToggleGroup).
85
- Because PortalThemeBoundary's hidden probe span sits at real DOM index 0, Select's own
86
- trigger sits at DOM index 1 — neither `:first-child` nor `:last-child` — so the speculative
87
- middle-child rule matched it by accident, tied in specificity with the correct
88
- `[hidden]:first-child + *` rule above, and won by coming later in the file, forcing
89
- `border-radius: 0` on ALL FOUR corners including the outer-left one this file exists to
90
- round. Deleted rather than special-cased further: a selector with no real target is the
91
- actual defect here, not something to keep patching around. If a genuine 3+-child ControlGroup
92
- ever ships, its middle-child corner logic needs designing against that real DOM shape then —
93
- not speculatively now, against a shape that doesn't exist and that the hidden-probe mechanic
94
- actively defeats. */
95
- .dsx-control-group > *:first-child:not([hidden]),
96
- .dsx-control-group > [hidden]:first-child + * {
97
- border-start-end-radius: 0;
98
- border-end-end-radius: 0;
99
- }
100
-
101
- .dsx-control-group > *:last-child {
102
- border-start-start-radius: 0;
103
- border-end-start-radius: 0;
104
- }
105
-
106
- /* The `:not([hidden])` on the preceding sibling keeps the divider off the first VISIBLE child
107
- when a PortalThemeBoundary child (Select, Dialog, Popover, DropdownMenu, ...) injects a hidden
108
- `<span data-dsx-portal-probe>` at real DOM index 0 (2026-08-27 "stray separator on the left
109
- side" bug). A plain `* + *` matches "has a preceding sibling element" regardless of whether
110
- that sibling is hidden, so it previously needed a separate `content: none` override for the
111
- probe case. Folding the guard into the base selector removes that override and keeps the rule
112
- under the `0,3,0` selector-policy specificity ceiling — a three-class guard plus `::before`
113
- lands at `0,3,1`. */
114
- .dsx-control-group > *:not([hidden]) + * {
115
- position: relative;
116
- }
117
-
118
- .dsx-control-group > *:not([hidden]) + *::before {
119
- content: '';
120
- position: absolute;
121
- inset-inline-start: calc(-1 * var(--dsx-space-xs));
122
- top: 50%;
123
- transform: translateY(-50%);
124
- width: var(--dsx-border-width-sm);
125
- height: 60%;
126
- background: var(--dsx-color-outline-variant);
127
- pointer-events: none;
128
- }
129
-
130
- /* Lift a focused child above its neighbors so its focus ring is never clipped by the group's
131
- own rounded corners or the seam divider. */
132
- .dsx-control-group > *:focus-within {
133
- z-index: 1;
134
- }
135
-
136
- .dsx-control-group[data-size='sm'] {
137
- padding: var(--dsx-space-1, 2px);
138
- }
139
-
140
- .dsx-control-group[data-size='lg'] {
141
- padding: var(--dsx-space-sm);
142
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/controlGroup/ControlGroup.tsx"],
4
- "sourcesContent": ["import * as React from 'react'\nimport classNames from 'classnames'\nimport { Slot } from '@radix-ui/react-slot'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { controlGroupPropDefs } from './controlGroup.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\ntype ControlGroupOwnProps = GetPropDefTypes<typeof controlGroupPropDefs>\n\ninterface ControlGroupProps extends React.HTMLAttributes<HTMLDivElement>, ControlGroupOwnProps {}\n\n/**\n * Visually groups two or more unlike controls (a Select next to a ToggleGroup, a Button next to\n * a SegmentedControl) inside one shared bordered frame. Unlike InputGroup, no single child is\n * assumed to be \"the\" input, so children are consumed as-is \u2014 no Addon/Text/Button wrapper slots.\n * See docs/design-system/control-group.md for the full spec.\n */\nconst ControlGroup = React.forwardRef<HTMLDivElement, ControlGroupProps>((props, forwardedRef) => {\n const { asChild, className, size, radius, ...controlGroupProps } = extractProps(props, controlGroupPropDefs)\n const Comp = asChild ? Slot : 'div'\n\n return (\n <Comp\n {...controlGroupProps}\n ref={forwardedRef}\n role={props.role ?? 'group'}\n className={classNames('dsx-control-group', className)}\n data-size={size}\n // NOT data-radius (2026-08-26, real bug found live): `data-radius` is a reserved\n // document-theme attribute \u2014 PortalThemeBoundary's getClosestThemeAttribute(el,\n // 'data-radius') walks up the nearest ancestor with that attribute name to mirror the\n // app's global radius setting into portaled content (Select/Dialog/Popover/etc). A\n // component-local `data-radius` sitting between the portal trigger and <html> gets\n // picked up INSTEAD of the real document-level value \u2014 confirmed live: a Select inside\n // this component's radius=\"full\" frame opened its dropdown at 9999px border-radius and\n // --dsx-rounded-lg itself resolved to 9999px on the portaled content, while <html> still\n // correctly read data-radius=\"md\". data-group-radius avoids the collision.\n data-group-radius={radius}\n />\n )\n})\nControlGroup.displayName = 'ControlGroup'\n\nexport { ControlGroup }\nexport type { ControlGroupProps }\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAuB;AACvB,wBAAuB;AACvB,wBAAqB;AAErB,0BAA6B;AAC7B,0BAAqC;AAmBjC;AALJ,MAAM,eAAe,MAAM,WAA8C,CAAC,OAAO,iBAAiB;AAChG,QAAM,EAAE,SAAS,WAAW,MAAM,QAAQ,GAAG,kBAAkB,QAAI,kCAAa,OAAO,wCAAoB;AAC3G,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,KAAK;AAAA,MACL,MAAM,MAAM,QAAQ;AAAA,MACpB,eAAW,kBAAAA,SAAW,qBAAqB,SAAS;AAAA,MACpD,aAAW;AAAA,MAUX,qBAAmB;AAAA;AAAA,EACrB;AAEJ,CAAC;AACD,aAAa,cAAc;",
6
- "names": ["classNames"]
7
- }
@@ -1,16 +0,0 @@
1
- import * as React from 'react';
2
- import { controlGroupPropDefs } from './controlGroup.props.cjs';
3
- import type { GetPropDefTypes } from '../../_internal/props/propDef.cjs';
4
- type ControlGroupOwnProps = GetPropDefTypes<typeof controlGroupPropDefs>;
5
- interface ControlGroupProps extends React.HTMLAttributes<HTMLDivElement>, ControlGroupOwnProps {
6
- }
7
- /**
8
- * Visually groups two or more unlike controls (a Select next to a ToggleGroup, a Button next to
9
- * a SegmentedControl) inside one shared bordered frame. Unlike InputGroup, no single child is
10
- * assumed to be "the" input, so children are consumed as-is — no Addon/Text/Button wrapper slots.
11
- * See docs/design-system/control-group.md for the full spec.
12
- */
13
- declare const ControlGroup: React.ForwardRefExoticComponent<ControlGroupProps & React.RefAttributes<HTMLDivElement>>;
14
- export { ControlGroup };
15
- export type { ControlGroupProps };
16
- //# sourceMappingURL=ControlGroup.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ControlGroup.d.cts","sourceRoot":"","sources":["../../../src/components/controlGroup/ControlGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,KAAK,oBAAoB,GAAG,eAAe,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAExE,UAAU,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,oBAAoB;CAAG;AAEjG;;;;;GAKG;AACH,QAAA,MAAM,YAAY,0FAuBhB,CAAA;AAGF,OAAO,EAAE,YAAY,EAAE,CAAA;AACvB,YAAY,EAAE,iBAAiB,EAAE,CAAA"}
@@ -1,16 +0,0 @@
1
- import * as React from 'react';
2
- import { controlGroupPropDefs } from './controlGroup.props.js';
3
- import type { GetPropDefTypes } from '../../_internal/props/propDef.js';
4
- type ControlGroupOwnProps = GetPropDefTypes<typeof controlGroupPropDefs>;
5
- interface ControlGroupProps extends React.HTMLAttributes<HTMLDivElement>, ControlGroupOwnProps {
6
- }
7
- /**
8
- * Visually groups two or more unlike controls (a Select next to a ToggleGroup, a Button next to
9
- * a SegmentedControl) inside one shared bordered frame. Unlike InputGroup, no single child is
10
- * assumed to be "the" input, so children are consumed as-is — no Addon/Text/Button wrapper slots.
11
- * See docs/design-system/control-group.md for the full spec.
12
- */
13
- declare const ControlGroup: React.ForwardRefExoticComponent<ControlGroupProps & React.RefAttributes<HTMLDivElement>>;
14
- export { ControlGroup };
15
- export type { ControlGroupProps };
16
- //# sourceMappingURL=ControlGroup.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ControlGroup.d.mts","sourceRoot":"","sources":["../../../src/components/controlGroup/ControlGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,KAAK,oBAAoB,GAAG,eAAe,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAExE,UAAU,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,oBAAoB;CAAG;AAEjG;;;;;GAKG;AACH,QAAA,MAAM,YAAY,0FAuBhB,CAAA;AAGF,OAAO,EAAE,YAAY,EAAE,CAAA;AACvB,YAAY,EAAE,iBAAiB,EAAE,CAAA"}
@@ -1,16 +0,0 @@
1
- import * as React from 'react';
2
- import { controlGroupPropDefs } from './controlGroup.props.js';
3
- import type { GetPropDefTypes } from '../../_internal/props/propDef.js';
4
- type ControlGroupOwnProps = GetPropDefTypes<typeof controlGroupPropDefs>;
5
- interface ControlGroupProps extends React.HTMLAttributes<HTMLDivElement>, ControlGroupOwnProps {
6
- }
7
- /**
8
- * Visually groups two or more unlike controls (a Select next to a ToggleGroup, a Button next to
9
- * a SegmentedControl) inside one shared bordered frame. Unlike InputGroup, no single child is
10
- * assumed to be "the" input, so children are consumed as-is — no Addon/Text/Button wrapper slots.
11
- * See docs/design-system/control-group.md for the full spec.
12
- */
13
- declare const ControlGroup: React.ForwardRefExoticComponent<ControlGroupProps & React.RefAttributes<HTMLDivElement>>;
14
- export { ControlGroup };
15
- export type { ControlGroupProps };
16
- //# sourceMappingURL=ControlGroup.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ControlGroup.d.ts","sourceRoot":"","sources":["../../../src/components/controlGroup/ControlGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,KAAK,oBAAoB,GAAG,eAAe,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAExE,UAAU,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,oBAAoB;CAAG;AAEjG;;;;;GAKG;AACH,QAAA,MAAM,YAAY,0FAuBhB,CAAA;AAGF,OAAO,EAAE,YAAY,EAAE,CAAA;AACvB,YAAY,EAAE,iBAAiB,EAAE,CAAA"}
@@ -1,26 +0,0 @@
1
- import * as React from "react";
2
- import classNames from "classnames";
3
- import { Slot } from "@radix-ui/react-slot";
4
- import { extractProps } from "../../_internal/helpers/extractProps.js";
5
- import { controlGroupPropDefs } from "./controlGroup.props.js";
6
- import { jsx } from "react/jsx-runtime";
7
- const ControlGroup = React.forwardRef((props, forwardedRef) => {
8
- const { asChild, className, size, radius, ...controlGroupProps } = extractProps(props, controlGroupPropDefs);
9
- const Comp = asChild ? Slot : "div";
10
- return /* @__PURE__ */ jsx(
11
- Comp,
12
- {
13
- ...controlGroupProps,
14
- ref: forwardedRef,
15
- role: props.role ?? "group",
16
- className: classNames("dsx-control-group", className),
17
- "data-size": size,
18
- "data-group-radius": radius
19
- }
20
- );
21
- });
22
- ControlGroup.displayName = "ControlGroup";
23
- export {
24
- ControlGroup
25
- };
26
- //# sourceMappingURL=ControlGroup.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/controlGroup/ControlGroup.tsx"],
4
- "sourcesContent": ["import * as React from 'react'\nimport classNames from 'classnames'\nimport { Slot } from '@radix-ui/react-slot'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { controlGroupPropDefs } from './controlGroup.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\ntype ControlGroupOwnProps = GetPropDefTypes<typeof controlGroupPropDefs>\n\ninterface ControlGroupProps extends React.HTMLAttributes<HTMLDivElement>, ControlGroupOwnProps {}\n\n/**\n * Visually groups two or more unlike controls (a Select next to a ToggleGroup, a Button next to\n * a SegmentedControl) inside one shared bordered frame. Unlike InputGroup, no single child is\n * assumed to be \"the\" input, so children are consumed as-is \u2014 no Addon/Text/Button wrapper slots.\n * See docs/design-system/control-group.md for the full spec.\n */\nconst ControlGroup = React.forwardRef<HTMLDivElement, ControlGroupProps>((props, forwardedRef) => {\n const { asChild, className, size, radius, ...controlGroupProps } = extractProps(props, controlGroupPropDefs)\n const Comp = asChild ? Slot : 'div'\n\n return (\n <Comp\n {...controlGroupProps}\n ref={forwardedRef}\n role={props.role ?? 'group'}\n className={classNames('dsx-control-group', className)}\n data-size={size}\n // NOT data-radius (2026-08-26, real bug found live): `data-radius` is a reserved\n // document-theme attribute \u2014 PortalThemeBoundary's getClosestThemeAttribute(el,\n // 'data-radius') walks up the nearest ancestor with that attribute name to mirror the\n // app's global radius setting into portaled content (Select/Dialog/Popover/etc). A\n // component-local `data-radius` sitting between the portal trigger and <html> gets\n // picked up INSTEAD of the real document-level value \u2014 confirmed live: a Select inside\n // this component's radius=\"full\" frame opened its dropdown at 9999px border-radius and\n // --dsx-rounded-lg itself resolved to 9999px on the portaled content, while <html> still\n // correctly read data-radius=\"md\". data-group-radius avoids the collision.\n data-group-radius={radius}\n />\n )\n})\nControlGroup.displayName = 'ControlGroup'\n\nexport { ControlGroup }\nexport type { ControlGroupProps }\n"],
5
- "mappings": "AAAA,YAAY,WAAW;AACvB,OAAO,gBAAgB;AACvB,SAAS,YAAY;AAErB,SAAS,oBAAoB;AAC7B,SAAS,4BAA4B;AAmBjC;AALJ,MAAM,eAAe,MAAM,WAA8C,CAAC,OAAO,iBAAiB;AAChG,QAAM,EAAE,SAAS,WAAW,MAAM,QAAQ,GAAG,kBAAkB,IAAI,aAAa,OAAO,oBAAoB;AAC3G,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,KAAK;AAAA,MACL,MAAM,MAAM,QAAQ;AAAA,MACpB,WAAW,WAAW,qBAAqB,SAAS;AAAA,MACpD,aAAW;AAAA,MAUX,qBAAmB;AAAA;AAAA,EACrB;AAEJ,CAAC;AACD,aAAa,cAAc;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/controlGroup/controlGroup.props.ts"],
4
- "sourcesContent": ["import { asChildPropDef } from '../../_internal/props/asChild.prop'\n\nimport type { PropDef } from '../../_internal/props/propDef'\n\nconst controlGroupSizes = ['sm', 'md', 'lg'] as const\nconst controlGroupRadii = ['md', 'full'] as const\n\nconst controlGroupPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n values: controlGroupSizes,\n default: 'md',\n },\n radius: {\n type: 'enum',\n values: controlGroupRadii,\n default: 'full',\n },\n} satisfies {\n asChild: PropDef\n size: PropDef<(typeof controlGroupSizes)[number]>\n radius: PropDef<(typeof controlGroupRadii)[number]>\n}\n\nexport { controlGroupPropDefs }\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA+B;AAI/B,MAAM,oBAAoB,CAAC,MAAM,MAAM,IAAI;AAC3C,MAAM,oBAAoB,CAAC,MAAM,MAAM;AAEvC,MAAM,uBAAuB;AAAA,EAC3B,GAAG;AAAA,EACH,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AACF;",
6
- "names": []
7
- }
@@ -1,18 +0,0 @@
1
- declare const controlGroupPropDefs: {
2
- size: {
3
- type: "enum";
4
- values: readonly ["sm", "md", "lg"];
5
- default: "md";
6
- };
7
- radius: {
8
- type: "enum";
9
- values: readonly ["md", "full"];
10
- default: "full";
11
- };
12
- asChild: {
13
- type: "boolean";
14
- default: false;
15
- };
16
- };
17
- export { controlGroupPropDefs };
18
- //# sourceMappingURL=controlGroup.props.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"controlGroup.props.d.cts","sourceRoot":"","sources":["../../../src/components/controlGroup/controlGroup.props.ts"],"names":[],"mappings":"AAOA,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;CAgBzB,CAAA;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAA"}
@@ -1,18 +0,0 @@
1
- declare const controlGroupPropDefs: {
2
- size: {
3
- type: "enum";
4
- values: readonly ["sm", "md", "lg"];
5
- default: "md";
6
- };
7
- radius: {
8
- type: "enum";
9
- values: readonly ["md", "full"];
10
- default: "full";
11
- };
12
- asChild: {
13
- type: "boolean";
14
- default: false;
15
- };
16
- };
17
- export { controlGroupPropDefs };
18
- //# sourceMappingURL=controlGroup.props.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"controlGroup.props.d.mts","sourceRoot":"","sources":["../../../src/components/controlGroup/controlGroup.props.ts"],"names":[],"mappings":"AAOA,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;CAgBzB,CAAA;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAA"}
@@ -1,18 +0,0 @@
1
- declare const controlGroupPropDefs: {
2
- size: {
3
- type: "enum";
4
- values: readonly ["sm", "md", "lg"];
5
- default: "md";
6
- };
7
- radius: {
8
- type: "enum";
9
- values: readonly ["md", "full"];
10
- default: "full";
11
- };
12
- asChild: {
13
- type: "boolean";
14
- default: false;
15
- };
16
- };
17
- export { controlGroupPropDefs };
18
- //# sourceMappingURL=controlGroup.props.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"controlGroup.props.d.ts","sourceRoot":"","sources":["../../../src/components/controlGroup/controlGroup.props.ts"],"names":[],"mappings":"AAOA,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;CAgBzB,CAAA;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAA"}
@@ -1,20 +0,0 @@
1
- import { asChildPropDef } from "../../_internal/props/asChild.prop.js";
2
- const controlGroupSizes = ["sm", "md", "lg"];
3
- const controlGroupRadii = ["md", "full"];
4
- const controlGroupPropDefs = {
5
- ...asChildPropDef,
6
- size: {
7
- type: "enum",
8
- values: controlGroupSizes,
9
- default: "md"
10
- },
11
- radius: {
12
- type: "enum",
13
- values: controlGroupRadii,
14
- default: "full"
15
- }
16
- };
17
- export {
18
- controlGroupPropDefs
19
- };
20
- //# sourceMappingURL=controlGroup.props.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/controlGroup/controlGroup.props.ts"],
4
- "sourcesContent": ["import { asChildPropDef } from '../../_internal/props/asChild.prop'\n\nimport type { PropDef } from '../../_internal/props/propDef'\n\nconst controlGroupSizes = ['sm', 'md', 'lg'] as const\nconst controlGroupRadii = ['md', 'full'] as const\n\nconst controlGroupPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n values: controlGroupSizes,\n default: 'md',\n },\n radius: {\n type: 'enum',\n values: controlGroupRadii,\n default: 'full',\n },\n} satisfies {\n asChild: PropDef\n size: PropDef<(typeof controlGroupSizes)[number]>\n radius: PropDef<(typeof controlGroupRadii)[number]>\n}\n\nexport { controlGroupPropDefs }\n"],
5
- "mappings": "AAAA,SAAS,sBAAsB;AAI/B,MAAM,oBAAoB,CAAC,MAAM,MAAM,IAAI;AAC3C,MAAM,oBAAoB,CAAC,MAAM,MAAM;AAEvC,MAAM,uBAAuB;AAAA,EAC3B,GAAG;AAAA,EACH,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AACF;",
6
- "names": []
7
- }
@@ -1,261 +0,0 @@
1
- ---
2
- title: ControlGroup
3
- status: canonical
4
- category: Components
5
- archetype: composite
6
- depends_on:
7
- - Select
8
- - ToggleGroup
9
- - SegmentedControl
10
- - Button
11
- - Separator
12
- ---
13
-
14
- # ControlGroup
15
-
16
- > Consumer note: this document describes public intent and contracts; the package TypeScript declarations are the exact API.
17
-
18
- ## Purpose
19
-
20
- Visually groups two or more *unlike* interactive controls (a `Select` next to a `ToggleGroup`, a
21
- `Button` next to a `SegmentedControl`, etc.) inside one shared bordered frame, so they read as one
22
- settings cluster instead of separate floating widgets.
23
-
24
- ## Anatomy & slots
25
-
26
- **Parent:** `ControlGroup` (flat export — no compound sub-components).
27
-
28
- **Slots:**
29
-
30
- | Slot | Element | Renders | Notes |
31
- |---|---|---|---|
32
- | `ControlGroup` (Root) | `<div>` | Flex container, `role="group"` | Holds any number of DS control children directly — no wrapper slot components. |
33
-
34
- No named child slots: unlike `InputGroup` (which wraps its children in `InputGroup.Addon` /
35
- `InputGroup.Text` / `InputGroup.Button` for input-specific semantics), `ControlGroup`'s children
36
- are consumed as-is. This is the deliberate distinction from `InputGroup` — see Wiring notes.
37
-
38
- ## Props contract
39
-
40
- | Prop | Type | Default | Required | Description | Responsive |
41
- |---|---|---|---|---|---|
42
- | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | no | Controls the group's height and inner item padding. | no |
43
- | `radius` | `'md' \| 'full'` | `'full'` | no | Outer corner radius of the group frame and of the first/last child's outer corners. | no |
44
- | `asChild` | `boolean` | `false` | no | Renders the root as its child via Radix `Slot` instead of a `div`. | no |
45
-
46
- Rules:
47
-
48
- - Every prop in this table must exist in `controlGroup.props.ts`. The runtime prop def is the source.
49
- - Every prop in `controlGroup.props.ts` must be in this table. Mismatches fail `qa:contracts`.
50
- - No `Responsive` column values are `yes` — this component does not vary by breakpoint.
51
-
52
- ## CSS class contract
53
-
54
- **Root class:** `dsx-control-group`
55
-
56
- **Modifier classes** (driven by `data-*` attributes written by the component):
57
-
58
- | Attribute | Allowed values | Class | CSS file |
59
- |---|---|---|---|
60
- | `data-size` | `sm`, `md`, `lg` | `.dsx-control-group[data-size="sm"]` | `control-group.css` |
61
- | `data-group-radius` | `md`, `full` | `.dsx-control-group[data-group-radius="md"]`, `.dsx-control-group[data-group-radius="full"]` | `control-group.css` |
62
-
63
- **Not `data-radius`, deliberately (2026-08-26, real bug found live):** `data-radius` is a
64
- reserved document-theme attribute — `PortalThemeBoundary`'s `getClosestThemeAttribute(el,
65
- 'data-radius')` walks up the nearest ancestor carrying that attribute to mirror the app's global
66
- radius setting into portaled content (`Select`/`Dialog`/`Popover`/etc). A component that emits
67
- its own local `data-radius` between a portal trigger and `<html>` gets picked up *instead of* the
68
- real document-level value. Confirmed live: a `Select` inside a `ControlGroup radius="full"` frame
69
- opened its dropdown at `9999px` border-radius (`--dsx-rounded-lg` itself resolved to `9999px` on
70
- the portaled content), while `<html>` still correctly read `data-radius="md"`. Any future
71
- component with its own per-instance radius axis should avoid the literal `data-radius` name for
72
- the same reason — this isn't `ControlGroup`-specific.
73
-
74
- **Slot classes:** none — flat export, no named slots.
75
-
76
- **Corner-radius mechanism:**
77
-
78
- The root paints the visible border/background. Direct children get their shared (inner-facing)
79
- corners squared and outer corners rounded to match the root, via structural selectors
80
- (`:first-child`, `:last-child`, `:not(:first-child)`) — the same technique `InputGroup` already
81
- uses, applied here to children that are complete DS components (Select, ToggleGroup, Button,
82
- SegmentedControl) rather than raw form parts. A child's own border/shadow/background is
83
- intentionally left alone — `ControlGroup` only manages corner radius on the two outer edges and a
84
- 1px visual seam between children (a `Separator`-style divider, not a border collapse, since
85
- children are not assumed to share the exact same border width the way stacked inputs do).
86
-
87
- **Responsive behavior:**
88
-
89
- - The component does not write `@media` rules.
90
-
91
- **Reduced motion:**
92
-
93
- - No motion — a static layout container.
94
-
95
- ## Token mapping
96
-
97
- | Property | Token | Role |
98
- |---|---|---|
99
- | Background | `var(--dsx-color-surface)` | Group frame surface |
100
- | Border | `var(--dsx-color-outline-variant)` | Group frame edge |
101
- | Radius (full) | `var(--dsx-rounded-full)` | Pill frame |
102
- | Radius (md) | `var(--dsx-rounded-md)` | Rectangular frame |
103
- | Padding | `var(--dsx-space-xs)` | Inner gutter between frame edge and first/last child |
104
- | Seam | `var(--dsx-color-outline-variant)` | Divider between adjacent children |
105
-
106
- Rules:
107
-
108
- - No raw color, spacing, radius, or motion values in this table or in the CSS file.
109
- - Accent-driven children (a `ToggleGroup` item's active fill, a `SegmentedControl`'s active
110
- state) keep their own accent tokens — `ControlGroup` does not repaint or override a child's own
111
- interactive state, only its outer corner radius.
112
-
113
- ## Motion contract
114
-
115
- | Region | Token | Default | Reduced |
116
- |---|---|---|---|
117
- | Root | `none` | `none` | `none` |
118
-
119
- ## Accessibility
120
-
121
- **Roles:**
122
-
123
- - `group` on the root, so assistive tech announces the contained controls as one related cluster.
124
-
125
- **Keyboard:**
126
-
127
- - No keyboard handling of its own — each child control owns its own keyboard interaction
128
- (`Tab` moves between children exactly as it would without the wrapper).
129
-
130
- **Focus:**
131
-
132
- - A focused child's own focus ring must remain fully visible — the root's `overflow` stays
133
- visible (not `hidden`), so a focus ring is never clipped by the group's rounded corners.
134
-
135
- **Reduced motion:**
136
-
137
- - N/A — no motion.
138
-
139
- **Color and meaning:**
140
-
141
- - N/A — a layout container, no semantic state of its own.
142
-
143
- **Naming:**
144
-
145
- - The root's `aria-label` is left to the consumer when the group's purpose isn't obvious from its
146
- children's own labels (e.g. `<ControlGroup aria-label="Currency and language">`).
147
-
148
- ## Playground demo spec
149
-
150
- **Default story:**
151
-
152
- - Renders `ControlGroup` with a `Select` and a `ToggleGroup` child, no extra props.
153
- - Asserts the root class is `dsx-control-group`.
154
-
155
- **Variant story** (one per `radius` value):
156
-
157
- - `radius="full"` and `radius="md"`, asserting `data-group-radius` matches.
158
-
159
- **State story:**
160
-
161
- - One child focused (via `Tab`) — asserts the focus ring is not clipped.
162
-
163
- **Composition story:**
164
-
165
- - Three children (`Select`, `Separator`-free two-item `ToggleGroup`, `Button`) to prove the
166
- corner-radius mechanism holds for more than two children.
167
-
168
- **Token story:**
169
-
170
- - Rendered inside `Theme` with `accentColor="silver"` and `accentColor="bronze"` — asserts a
171
- `ToggleGroup` child's active-item fill still resolves to the right accent (proving
172
- `ControlGroup` doesn't interfere with a child's own accent scoping).
173
-
174
- **A11y story:**
175
-
176
- - `vitest-axe` on the composition story.
177
-
178
- **Props exposed in the playground controls:**
179
-
180
- | Prop | Control | Default |
181
- |---|---|---|
182
- | `size` | `select` | `md` |
183
- | `radius` | `select` | `full` |
184
-
185
- ## Wiring notes
186
-
187
- **Composes from:**
188
-
189
- - Any DS interactive component as a direct child — `Select`, `ToggleGroup`, `SegmentedControl`,
190
- `Button`, `IconButton` are the ones currently exercised.
191
-
192
- **Used by:**
193
-
194
- - Landing header's currency + language cluster (`apps/playground/.../landing/_shared/landing-view.tsx`)
195
- — the motivating real usage. Previously hand-built as a bordered `Stack` with per-instance CSS
196
- overrides for corner radius; migrated to `ControlGroup` in the same change that added this spec.
197
-
198
- **State boundaries:**
199
-
200
- - Owned by this component: corner-radius/seam geometry only.
201
- - Owned by the consumer: every child's own value/state — `ControlGroup` never reads or writes a
202
- child's `value`/`onValueChange`.
203
-
204
- **Boundary rules:**
205
-
206
- - App-owned data: which controls are grouped, their values, their change handlers.
207
- - DS-owned visuals: the group frame's border/background/radius and the inter-child seam.
208
-
209
- **Distinction from InputGroup:** `InputGroup`'s purpose is input-centric (a text field with
210
- leading/trailing addons — "Ideal for search fields, URLs, copy/share flows," per its roster row)
211
- and its convenience sub-components (`Addon`/`Text`/`Button`/`Input`/`Textarea`) assume the group
212
- is built around exactly one text-entry control. `ControlGroup` has no such assumption — it exists
213
- for clusters where no single child is "the" input (e.g. two independent selectors). Using
214
- `InputGroup` for the landing header (checked before building this) would have stretched it past
215
- its documented purpose for a resemblance in CSS mechanism alone, not a real semantic fit.
216
-
217
- ## Penpot build recipe
218
-
219
- ### Root board
220
-
221
- - **Name**: `Components / ControlGroup`.
222
- - **Dimensions**: `auto × auto` (content-sized).
223
- - **Layout**: `Flex`.
224
- - **Sizing**: `horizontalSizing = 'auto'`, `verticalSizing = 'auto'`.
225
-
226
- ### Layer tree
227
-
228
- ```
229
- ControlGroup
230
- ├── Child 1 (e.g. Select instance)
231
- ├── Seam (1px divider)
232
- └── Child 2 (e.g. ToggleGroup instance)
233
- ```
234
-
235
- ### Token bindings (Penpot properties)
236
-
237
- | Shape | Property | Token | Token type | Penpot property name |
238
- |---|---|---|---|---|
239
- | Root | fill | `--dsx-color-surface` | Color | fills |
240
- | Root | stroke | `--dsx-color-outline-variant` | Color | strokes |
241
- | Root | radius | `--dsx-rounded-full` | Radius | corner-radius |
242
- | Root | padding | `--dsx-space-xs` | Spacing | padding |
243
- | Seam | fill | `--dsx-color-outline-variant` | Color | fills |
244
-
245
- ### State transformations
246
-
247
- | State | Root fill | Stroke | Text fill | Shadow |
248
- |---|---|---|---|---|
249
- | `default` | `--dsx-color-surface` | `--dsx-color-outline-variant` | n/a (children own their own text) | none |
250
-
251
- ### Variant model
252
-
253
- - `radius`: `full`, `md`. Default `full`.
254
- - `size`: `sm`, `md`, `lg`. Default `md`.
255
- - Total members: `6`.
256
-
257
- ### Validation checklist
258
-
259
- - [ ] Token bindings resolve at the values `DESIGN.md` describes.
260
- - [ ] Component is promoted to Main Component under `Components`.
261
- - [ ] `penpotUtils.shapeStructure(board, 3)` matches the expected hierarchy.