@d4gger/design-system 2.7.0 → 3.0.1

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 (1313) hide show
  1. package/README.md +116 -136
  2. package/dist/_internal/BaseDialog.cjs +11 -1
  3. package/dist/_internal/BaseDialog.cjs.map +2 -2
  4. package/dist/_internal/BaseDialog.d.cts.map +1 -1
  5. package/dist/_internal/BaseDialog.d.mts.map +1 -1
  6. package/dist/_internal/BaseDialog.d.ts.map +1 -1
  7. package/dist/_internal/BaseDialog.js +11 -1
  8. package/dist/_internal/BaseDialog.js.map +2 -2
  9. package/dist/_internal/constants.cjs +1 -1
  10. package/dist/_internal/constants.cjs.map +2 -2
  11. package/dist/_internal/constants.d.cts +1 -1
  12. package/dist/_internal/constants.d.cts.map +1 -1
  13. package/dist/_internal/constants.d.mts +1 -1
  14. package/dist/_internal/constants.d.mts.map +1 -1
  15. package/dist/_internal/constants.d.ts +1 -1
  16. package/dist/_internal/constants.d.ts.map +1 -1
  17. package/dist/_internal/constants.js +1 -1
  18. package/dist/_internal/constants.js.map +2 -2
  19. package/dist/_internal/floatingLayer.cjs +41 -0
  20. package/dist/_internal/floatingLayer.cjs.map +7 -0
  21. package/dist/_internal/floatingLayer.d.cts +28 -0
  22. package/dist/_internal/floatingLayer.d.cts.map +1 -0
  23. package/dist/_internal/floatingLayer.d.mts +28 -0
  24. package/dist/_internal/floatingLayer.d.mts.map +1 -0
  25. package/dist/_internal/floatingLayer.d.ts +28 -0
  26. package/dist/_internal/floatingLayer.d.ts.map +1 -0
  27. package/dist/_internal/floatingLayer.js +11 -0
  28. package/dist/_internal/floatingLayer.js.map +7 -0
  29. package/dist/_internal/props/height.prop.cjs +1 -2
  30. package/dist/_internal/props/height.prop.cjs.map +2 -2
  31. package/dist/_internal/props/height.prop.d.cts.map +1 -1
  32. package/dist/_internal/props/height.prop.d.mts.map +1 -1
  33. package/dist/_internal/props/height.prop.d.ts.map +1 -1
  34. package/dist/_internal/props/height.prop.js +1 -2
  35. package/dist/_internal/props/height.prop.js.map +2 -2
  36. package/dist/_internal/props/layout.prop.cjs +16 -17
  37. package/dist/_internal/props/layout.prop.cjs.map +2 -2
  38. package/dist/_internal/props/layout.prop.d.cts.map +1 -1
  39. package/dist/_internal/props/layout.prop.d.mts.map +1 -1
  40. package/dist/_internal/props/layout.prop.d.ts.map +1 -1
  41. package/dist/_internal/props/layout.prop.js +1 -2
  42. package/dist/_internal/props/layout.prop.js.map +2 -2
  43. package/dist/_internal/props/margin.prop.cjs +2 -3
  44. package/dist/_internal/props/margin.prop.cjs.map +2 -2
  45. package/dist/_internal/props/margin.prop.d.cts.map +1 -1
  46. package/dist/_internal/props/margin.prop.d.mts.map +1 -1
  47. package/dist/_internal/props/margin.prop.d.ts.map +1 -1
  48. package/dist/_internal/props/margin.prop.js +1 -1
  49. package/dist/_internal/props/margin.prop.js.map +2 -2
  50. package/dist/_internal/props/padding.prop.cjs +8 -9
  51. package/dist/_internal/props/padding.prop.cjs.map +2 -2
  52. package/dist/_internal/props/padding.prop.d.cts.map +1 -1
  53. package/dist/_internal/props/padding.prop.d.mts.map +1 -1
  54. package/dist/_internal/props/padding.prop.d.ts.map +1 -1
  55. package/dist/_internal/props/padding.prop.js +1 -1
  56. package/dist/_internal/props/padding.prop.js.map +2 -2
  57. package/dist/_internal/props/propDef.cjs +11 -0
  58. package/dist/_internal/props/propDef.cjs.map +2 -2
  59. package/dist/_internal/props/propDef.d.cts +17 -3
  60. package/dist/_internal/props/propDef.d.cts.map +1 -1
  61. package/dist/_internal/props/propDef.d.mts +17 -3
  62. package/dist/_internal/props/propDef.d.mts.map +1 -1
  63. package/dist/_internal/props/propDef.d.ts +17 -3
  64. package/dist/_internal/props/propDef.d.ts.map +1 -1
  65. package/dist/_internal/props/propDef.js +11 -0
  66. package/dist/_internal/props/propDef.js.map +2 -2
  67. package/dist/_internal/props/radius.prop.cjs +2 -2
  68. package/dist/_internal/props/radius.prop.cjs.map +2 -2
  69. package/dist/_internal/props/radius.prop.d.cts +1 -1
  70. package/dist/_internal/props/radius.prop.d.cts.map +1 -1
  71. package/dist/_internal/props/radius.prop.d.mts +1 -1
  72. package/dist/_internal/props/radius.prop.d.mts.map +1 -1
  73. package/dist/_internal/props/radius.prop.d.ts +1 -1
  74. package/dist/_internal/props/radius.prop.d.ts.map +1 -1
  75. package/dist/_internal/props/radius.prop.js +1 -1
  76. package/dist/_internal/props/radius.prop.js.map +2 -2
  77. package/dist/_internal/props/width.prop.cjs +1 -2
  78. package/dist/_internal/props/width.prop.cjs.map +2 -2
  79. package/dist/_internal/props/width.prop.d.cts.map +1 -1
  80. package/dist/_internal/props/width.prop.d.mts.map +1 -1
  81. package/dist/_internal/props/width.prop.d.ts.map +1 -1
  82. package/dist/_internal/props/width.prop.js +1 -2
  83. package/dist/_internal/props/width.prop.js.map +2 -2
  84. package/dist/components/alert-dialog.css +7 -0
  85. package/dist/components/alert.css +24 -0
  86. package/dist/components/articleNodes/ArticleNodes.cjs.map +2 -2
  87. package/dist/components/articleNodes/ArticleNodes.d.cts +2 -31
  88. package/dist/components/articleNodes/ArticleNodes.d.cts.map +1 -1
  89. package/dist/components/articleNodes/ArticleNodes.d.mts +2 -31
  90. package/dist/components/articleNodes/ArticleNodes.d.mts.map +1 -1
  91. package/dist/components/articleNodes/ArticleNodes.d.ts +2 -31
  92. package/dist/components/articleNodes/ArticleNodes.d.ts.map +1 -1
  93. package/dist/components/articleNodes/ArticleNodes.js.map +2 -2
  94. package/dist/components/articleNodes/articleNodes.props.cjs +17 -0
  95. package/dist/components/articleNodes/articleNodes.props.cjs.map +7 -0
  96. package/dist/components/articleNodes/articleNodes.props.d.cts +32 -0
  97. package/dist/components/articleNodes/articleNodes.props.d.cts.map +1 -0
  98. package/dist/components/articleNodes/articleNodes.props.d.mts +32 -0
  99. package/dist/components/articleNodes/articleNodes.props.d.mts.map +1 -0
  100. package/dist/components/articleNodes/articleNodes.props.d.ts +32 -0
  101. package/dist/components/articleNodes/articleNodes.props.d.ts.map +1 -0
  102. package/dist/components/articleNodes/articleNodes.props.js +1 -0
  103. package/dist/components/articleNodes/articleNodes.props.js.map +7 -0
  104. package/dist/components/avatar.css +14 -3
  105. package/dist/components/badge/Badge.cjs +1 -1
  106. package/dist/components/badge/Badge.cjs.map +2 -2
  107. package/dist/components/badge/Badge.js +1 -1
  108. package/dist/components/badge/Badge.js.map +2 -2
  109. package/dist/components/badge/badge.props.cjs +1 -1
  110. package/dist/components/badge/badge.props.cjs.map +2 -2
  111. package/dist/components/badge/badge.props.d.cts +1 -1
  112. package/dist/components/badge/badge.props.d.mts +1 -1
  113. package/dist/components/badge/badge.props.d.ts +1 -1
  114. package/dist/components/badge/badge.props.js +1 -1
  115. package/dist/components/badge/badge.props.js.map +2 -2
  116. package/dist/components/badge.css +62 -28
  117. package/dist/components/banner/Banner.cjs +105 -0
  118. package/dist/components/banner/Banner.cjs.map +7 -0
  119. package/dist/components/banner/Banner.d.cts +27 -0
  120. package/dist/components/banner/Banner.d.cts.map +1 -0
  121. package/dist/components/banner/Banner.d.mts +27 -0
  122. package/dist/components/banner/Banner.d.mts.map +1 -0
  123. package/dist/components/banner/Banner.d.ts +27 -0
  124. package/dist/components/banner/Banner.d.ts.map +1 -0
  125. package/dist/components/banner/Banner.js +80 -0
  126. package/dist/components/banner/Banner.js.map +7 -0
  127. package/dist/components/banner/banner.props.cjs +47 -0
  128. package/dist/components/banner/banner.props.cjs.map +7 -0
  129. package/dist/components/banner/banner.props.d.cts +32 -0
  130. package/dist/components/banner/banner.props.d.cts.map +1 -0
  131. package/dist/components/banner/banner.props.d.mts +32 -0
  132. package/dist/components/banner/banner.props.d.mts.map +1 -0
  133. package/dist/components/banner/banner.props.d.ts +32 -0
  134. package/dist/components/banner/banner.props.d.ts.map +1 -0
  135. package/dist/components/banner/banner.props.js +27 -0
  136. package/dist/components/banner/banner.props.js.map +7 -0
  137. package/dist/components/banner.css +60 -0
  138. package/dist/components/button/Button.cjs +2 -0
  139. package/dist/components/button/Button.cjs.map +2 -2
  140. package/dist/components/button/Button.d.cts.map +1 -1
  141. package/dist/components/button/Button.d.mts.map +1 -1
  142. package/dist/components/button/Button.d.ts.map +1 -1
  143. package/dist/components/button/Button.js +2 -0
  144. package/dist/components/button/Button.js.map +2 -2
  145. package/dist/components/button/button.props.cjs +4 -0
  146. package/dist/components/button/button.props.cjs.map +2 -2
  147. package/dist/components/button/button.props.d.cts +4 -0
  148. package/dist/components/button/button.props.d.cts.map +1 -1
  149. package/dist/components/button/button.props.d.mts +4 -0
  150. package/dist/components/button/button.props.d.mts.map +1 -1
  151. package/dist/components/button/button.props.d.ts +4 -0
  152. package/dist/components/button/button.props.d.ts.map +1 -1
  153. package/dist/components/button/button.props.js +4 -0
  154. package/dist/components/button/button.props.js.map +2 -2
  155. package/dist/components/button-group.css +25 -0
  156. package/dist/components/button.css +46 -7
  157. package/dist/components/card/Card.cjs +2 -0
  158. package/dist/components/card/Card.cjs.map +2 -2
  159. package/dist/components/card/Card.d.cts.map +1 -1
  160. package/dist/components/card/Card.d.mts.map +1 -1
  161. package/dist/components/card/Card.d.ts.map +1 -1
  162. package/dist/components/card/Card.js +2 -0
  163. package/dist/components/card/Card.js.map +2 -2
  164. package/dist/components/card/card.props.cjs +12 -1
  165. package/dist/components/card/card.props.cjs.map +2 -2
  166. package/dist/components/card/card.props.d.cts +12 -1
  167. package/dist/components/card/card.props.d.cts.map +1 -1
  168. package/dist/components/card/card.props.d.mts +12 -1
  169. package/dist/components/card/card.props.d.mts.map +1 -1
  170. package/dist/components/card/card.props.d.ts +12 -1
  171. package/dist/components/card/card.props.d.ts.map +1 -1
  172. package/dist/components/card/card.props.js +12 -1
  173. package/dist/components/card/card.props.js.map +2 -2
  174. package/dist/components/card.css +10 -9
  175. package/dist/components/carousel/Carousel.cjs +109 -39
  176. package/dist/components/carousel/Carousel.cjs.map +3 -3
  177. package/dist/components/carousel/Carousel.d.cts.map +1 -1
  178. package/dist/components/carousel/Carousel.d.mts.map +1 -1
  179. package/dist/components/carousel/Carousel.d.ts.map +1 -1
  180. package/dist/components/carousel/Carousel.js +111 -41
  181. package/dist/components/carousel/Carousel.js.map +3 -3
  182. package/dist/components/carousel.css +103 -22
  183. package/dist/components/chart/Chart.cjs +129 -17
  184. package/dist/components/chart/Chart.cjs.map +2 -2
  185. package/dist/components/chart/Chart.d.cts +42 -5
  186. package/dist/components/chart/Chart.d.cts.map +1 -1
  187. package/dist/components/chart/Chart.d.mts +42 -5
  188. package/dist/components/chart/Chart.d.mts.map +1 -1
  189. package/dist/components/chart/Chart.d.ts +42 -5
  190. package/dist/components/chart/Chart.d.ts.map +1 -1
  191. package/dist/components/chart/Chart.js +134 -17
  192. package/dist/components/chart/Chart.js.map +2 -2
  193. package/dist/components/chart.css +30 -5
  194. package/dist/components/checkbox-cards.css +8 -0
  195. package/dist/components/checkbox.css +18 -4
  196. package/dist/components/code.css +9 -6
  197. package/dist/components/collapsible/Collapsible.cjs +7 -1
  198. package/dist/components/collapsible/Collapsible.cjs.map +2 -2
  199. package/dist/components/collapsible/Collapsible.d.cts.map +1 -1
  200. package/dist/components/collapsible/Collapsible.d.mts.map +1 -1
  201. package/dist/components/collapsible/Collapsible.d.ts.map +1 -1
  202. package/dist/components/collapsible/Collapsible.js +7 -1
  203. package/dist/components/collapsible/Collapsible.js.map +2 -2
  204. package/dist/components/color-picker.css +3 -2
  205. package/dist/components/color-swatch.css +16 -4
  206. package/dist/components/colorPicker/ColorPicker.cjs +14 -0
  207. package/dist/components/colorPicker/ColorPicker.cjs.map +2 -2
  208. package/dist/components/colorPicker/ColorPicker.d.cts.map +1 -1
  209. package/dist/components/colorPicker/ColorPicker.d.mts.map +1 -1
  210. package/dist/components/colorPicker/ColorPicker.d.ts.map +1 -1
  211. package/dist/components/colorPicker/ColorPicker.js +14 -0
  212. package/dist/components/colorPicker/ColorPicker.js.map +2 -2
  213. package/dist/components/colorSwatch/ColorSwatch.cjs +20 -1
  214. package/dist/components/colorSwatch/ColorSwatch.cjs.map +2 -2
  215. package/dist/components/colorSwatch/ColorSwatch.d.cts.map +1 -1
  216. package/dist/components/colorSwatch/ColorSwatch.d.mts.map +1 -1
  217. package/dist/components/colorSwatch/ColorSwatch.d.ts.map +1 -1
  218. package/dist/components/colorSwatch/ColorSwatch.js +20 -1
  219. package/dist/components/colorSwatch/ColorSwatch.js.map +2 -2
  220. package/dist/components/combobox/Combobox.cjs +94 -12
  221. package/dist/components/combobox/Combobox.cjs.map +3 -3
  222. package/dist/components/combobox/Combobox.d.cts +10 -2
  223. package/dist/components/combobox/Combobox.d.cts.map +1 -1
  224. package/dist/components/combobox/Combobox.d.mts +10 -2
  225. package/dist/components/combobox/Combobox.d.mts.map +1 -1
  226. package/dist/components/combobox/Combobox.d.ts +10 -2
  227. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  228. package/dist/components/combobox/Combobox.js +95 -13
  229. package/dist/components/combobox/Combobox.js.map +3 -3
  230. package/dist/components/combobox/combobox.props.cjs +6 -1
  231. package/dist/components/combobox/combobox.props.cjs.map +2 -2
  232. package/dist/components/combobox/combobox.props.d.cts +6 -1
  233. package/dist/components/combobox/combobox.props.d.cts.map +1 -1
  234. package/dist/components/combobox/combobox.props.d.mts +6 -1
  235. package/dist/components/combobox/combobox.props.d.mts.map +1 -1
  236. package/dist/components/combobox/combobox.props.d.ts +6 -1
  237. package/dist/components/combobox/combobox.props.d.ts.map +1 -1
  238. package/dist/components/combobox/combobox.props.js +6 -1
  239. package/dist/components/combobox/combobox.props.js.map +2 -2
  240. package/dist/components/combobox.css +103 -26
  241. package/dist/components/command/Command.cjs +11 -5
  242. package/dist/components/command/Command.cjs.map +2 -2
  243. package/dist/components/command/Command.d.cts +2 -2
  244. package/dist/components/command/Command.d.cts.map +1 -1
  245. package/dist/components/command/Command.d.mts +2 -2
  246. package/dist/components/command/Command.d.mts.map +1 -1
  247. package/dist/components/command/Command.d.ts +2 -2
  248. package/dist/components/command/Command.d.ts.map +1 -1
  249. package/dist/components/command/Command.js +13 -6
  250. package/dist/components/command/Command.js.map +2 -2
  251. package/dist/components/command/command.props.cjs +11 -0
  252. package/dist/components/command/command.props.cjs.map +2 -2
  253. package/dist/components/command/command.props.d.cts +11 -1
  254. package/dist/components/command/command.props.d.cts.map +1 -1
  255. package/dist/components/command/command.props.d.mts +11 -1
  256. package/dist/components/command/command.props.d.mts.map +1 -1
  257. package/dist/components/command/command.props.d.ts +11 -1
  258. package/dist/components/command/command.props.d.ts.map +1 -1
  259. package/dist/components/command/command.props.js +11 -0
  260. package/dist/components/command/command.props.js.map +2 -2
  261. package/dist/components/command.css +3 -2
  262. package/dist/components/commentThread/CommentThread.cjs.map +2 -2
  263. package/dist/components/commentThread/CommentThread.d.cts +5 -20
  264. package/dist/components/commentThread/CommentThread.d.cts.map +1 -1
  265. package/dist/components/commentThread/CommentThread.d.mts +5 -20
  266. package/dist/components/commentThread/CommentThread.d.mts.map +1 -1
  267. package/dist/components/commentThread/CommentThread.d.ts +5 -20
  268. package/dist/components/commentThread/CommentThread.d.ts.map +1 -1
  269. package/dist/components/commentThread/CommentThread.js.map +2 -2
  270. package/dist/components/commentThread/commentThread.props.cjs +17 -0
  271. package/dist/components/commentThread/commentThread.props.cjs.map +7 -0
  272. package/dist/components/commentThread/commentThread.props.d.cts +21 -0
  273. package/dist/components/commentThread/commentThread.props.d.cts.map +1 -0
  274. package/dist/components/commentThread/commentThread.props.d.mts +21 -0
  275. package/dist/components/commentThread/commentThread.props.d.mts.map +1 -0
  276. package/dist/components/commentThread/commentThread.props.d.ts +21 -0
  277. package/dist/components/commentThread/commentThread.props.d.ts.map +1 -0
  278. package/dist/components/commentThread/commentThread.props.js +1 -0
  279. package/dist/components/commentThread/commentThread.props.js.map +7 -0
  280. package/dist/components/config-drawer.css +35 -0
  281. package/dist/components/configDrawer/ConfigDrawer.cjs +47 -23
  282. package/dist/components/configDrawer/ConfigDrawer.cjs.map +2 -2
  283. package/dist/components/configDrawer/ConfigDrawer.d.cts +12 -1
  284. package/dist/components/configDrawer/ConfigDrawer.d.cts.map +1 -1
  285. package/dist/components/configDrawer/ConfigDrawer.d.mts +12 -1
  286. package/dist/components/configDrawer/ConfigDrawer.d.mts.map +1 -1
  287. package/dist/components/configDrawer/ConfigDrawer.d.ts +12 -1
  288. package/dist/components/configDrawer/ConfigDrawer.d.ts.map +1 -1
  289. package/dist/components/configDrawer/ConfigDrawer.js +48 -24
  290. package/dist/components/configDrawer/ConfigDrawer.js.map +2 -2
  291. package/dist/components/context-menu.css +4 -2
  292. package/dist/components/copy-button.css +6 -7
  293. package/dist/components/copy-field.css +18 -0
  294. package/dist/components/copyField/CopyField.cjs +3 -3
  295. package/dist/components/copyField/CopyField.cjs.map +2 -2
  296. package/dist/components/copyField/CopyField.d.cts.map +1 -1
  297. package/dist/components/copyField/CopyField.d.mts.map +1 -1
  298. package/dist/components/copyField/CopyField.d.ts.map +1 -1
  299. package/dist/components/copyField/CopyField.js +3 -3
  300. package/dist/components/copyField/CopyField.js.map +2 -2
  301. package/dist/components/data-list.css +19 -4
  302. package/dist/components/data-table.css +190 -0
  303. package/dist/components/dataTable/DataTable.cjs +193 -68
  304. package/dist/components/dataTable/DataTable.cjs.map +3 -3
  305. package/dist/components/dataTable/DataTable.d.cts +29 -1
  306. package/dist/components/dataTable/DataTable.d.cts.map +1 -1
  307. package/dist/components/dataTable/DataTable.d.mts +29 -1
  308. package/dist/components/dataTable/DataTable.d.mts.map +1 -1
  309. package/dist/components/dataTable/DataTable.d.ts +29 -1
  310. package/dist/components/dataTable/DataTable.d.ts.map +1 -1
  311. package/dist/components/dataTable/DataTable.js +193 -68
  312. package/dist/components/dataTable/DataTable.js.map +2 -2
  313. package/dist/components/dataTable/DataTableContext.cjs +41 -0
  314. package/dist/components/dataTable/DataTableContext.cjs.map +7 -0
  315. package/dist/components/dataTable/DataTableContext.d.cts +23 -0
  316. package/dist/components/dataTable/DataTableContext.d.cts.map +1 -0
  317. package/dist/components/dataTable/DataTableContext.d.mts +23 -0
  318. package/dist/components/dataTable/DataTableContext.d.mts.map +1 -0
  319. package/dist/components/dataTable/DataTableContext.d.ts +23 -0
  320. package/dist/components/dataTable/DataTableContext.d.ts.map +1 -0
  321. package/dist/components/dataTable/DataTableContext.js +11 -0
  322. package/dist/components/dataTable/DataTableContext.js.map +7 -0
  323. package/dist/components/dataTable/DataTablePagination.cjs +72 -47
  324. package/dist/components/dataTable/DataTablePagination.cjs.map +2 -2
  325. package/dist/components/dataTable/DataTablePagination.d.cts +5 -1
  326. package/dist/components/dataTable/DataTablePagination.d.cts.map +1 -1
  327. package/dist/components/dataTable/DataTablePagination.d.mts +5 -1
  328. package/dist/components/dataTable/DataTablePagination.d.mts.map +1 -1
  329. package/dist/components/dataTable/DataTablePagination.d.ts +5 -1
  330. package/dist/components/dataTable/DataTablePagination.d.ts.map +1 -1
  331. package/dist/components/dataTable/DataTablePagination.js +75 -47
  332. package/dist/components/dataTable/DataTablePagination.js.map +2 -2
  333. package/dist/components/dataTable/DataTableToolbar.cjs +122 -93
  334. package/dist/components/dataTable/DataTableToolbar.cjs.map +2 -2
  335. package/dist/components/dataTable/DataTableToolbar.d.cts +6 -5
  336. package/dist/components/dataTable/DataTableToolbar.d.cts.map +1 -1
  337. package/dist/components/dataTable/DataTableToolbar.d.mts +6 -5
  338. package/dist/components/dataTable/DataTableToolbar.d.mts.map +1 -1
  339. package/dist/components/dataTable/DataTableToolbar.d.ts +6 -5
  340. package/dist/components/dataTable/DataTableToolbar.d.ts.map +1 -1
  341. package/dist/components/dataTable/DataTableToolbar.js +123 -94
  342. package/dist/components/dataTable/DataTableToolbar.js.map +2 -2
  343. package/dist/components/dataTable/dataTable.export.cjs +83 -0
  344. package/dist/components/dataTable/dataTable.export.cjs.map +7 -0
  345. package/dist/components/dataTable/dataTable.export.d.cts +11 -0
  346. package/dist/components/dataTable/dataTable.export.d.cts.map +1 -0
  347. package/dist/components/dataTable/dataTable.export.d.mts +11 -0
  348. package/dist/components/dataTable/dataTable.export.d.mts.map +1 -0
  349. package/dist/components/dataTable/dataTable.export.d.ts +11 -0
  350. package/dist/components/dataTable/dataTable.export.d.ts.map +1 -0
  351. package/dist/components/dataTable/dataTable.export.js +63 -0
  352. package/dist/components/dataTable/dataTable.export.js.map +7 -0
  353. package/dist/components/dataTable/dataTable.props.cjs +23 -1
  354. package/dist/components/dataTable/dataTable.props.cjs.map +2 -2
  355. package/dist/components/dataTable/dataTable.props.d.cts +21 -1
  356. package/dist/components/dataTable/dataTable.props.d.cts.map +1 -1
  357. package/dist/components/dataTable/dataTable.props.d.mts +21 -1
  358. package/dist/components/dataTable/dataTable.props.d.mts.map +1 -1
  359. package/dist/components/dataTable/dataTable.props.d.ts +21 -1
  360. package/dist/components/dataTable/dataTable.props.d.ts.map +1 -1
  361. package/dist/components/dataTable/dataTable.props.js +23 -1
  362. package/dist/components/dataTable/dataTable.props.js.map +2 -2
  363. package/dist/components/dialog/Dialog.cjs +2 -1
  364. package/dist/components/dialog/Dialog.cjs.map +2 -2
  365. package/dist/components/dialog/Dialog.d.cts.map +1 -1
  366. package/dist/components/dialog/Dialog.d.mts.map +1 -1
  367. package/dist/components/dialog/Dialog.d.ts.map +1 -1
  368. package/dist/components/dialog/Dialog.js +2 -1
  369. package/dist/components/dialog/Dialog.js.map +2 -2
  370. package/dist/components/dialog.css +12 -0
  371. package/dist/components/drawer/Drawer.cjs +0 -12
  372. package/dist/components/drawer/Drawer.cjs.map +2 -2
  373. package/dist/components/drawer/Drawer.d.cts +1 -35
  374. package/dist/components/drawer/Drawer.d.cts.map +1 -1
  375. package/dist/components/drawer/Drawer.d.mts +1 -35
  376. package/dist/components/drawer/Drawer.d.mts.map +1 -1
  377. package/dist/components/drawer/Drawer.d.ts +1 -35
  378. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  379. package/dist/components/drawer/Drawer.js +0 -12
  380. package/dist/components/drawer/Drawer.js.map +2 -2
  381. package/dist/components/dropdown-menu.css +16 -4
  382. package/dist/components/dropdownMenu/DropdownMenu.cjs +1 -0
  383. package/dist/components/dropdownMenu/DropdownMenu.cjs.map +2 -2
  384. package/dist/components/dropdownMenu/DropdownMenu.d.cts.map +1 -1
  385. package/dist/components/dropdownMenu/DropdownMenu.d.mts.map +1 -1
  386. package/dist/components/dropdownMenu/DropdownMenu.d.ts.map +1 -1
  387. package/dist/components/dropdownMenu/DropdownMenu.js +1 -0
  388. package/dist/components/dropdownMenu/DropdownMenu.js.map +2 -2
  389. package/dist/components/editable/Editable.cjs +50 -7
  390. package/dist/components/editable/Editable.cjs.map +2 -2
  391. package/dist/components/editable/Editable.d.cts.map +1 -1
  392. package/dist/components/editable/Editable.d.mts.map +1 -1
  393. package/dist/components/editable/Editable.d.ts.map +1 -1
  394. package/dist/components/editable/Editable.js +50 -7
  395. package/dist/components/editable/Editable.js.map +2 -2
  396. package/dist/components/editable/editable.props.cjs +14 -0
  397. package/dist/components/editable/editable.props.cjs.map +2 -2
  398. package/dist/components/editable/editable.props.d.cts +13 -0
  399. package/dist/components/editable/editable.props.d.cts.map +1 -1
  400. package/dist/components/editable/editable.props.d.mts +13 -0
  401. package/dist/components/editable/editable.props.d.mts.map +1 -1
  402. package/dist/components/editable/editable.props.d.ts +13 -0
  403. package/dist/components/editable/editable.props.d.ts.map +1 -1
  404. package/dist/components/editable/editable.props.js +14 -0
  405. package/dist/components/editable/editable.props.js.map +2 -2
  406. package/dist/components/editable.css +22 -0
  407. package/dist/components/empty-state.css +5 -0
  408. package/dist/components/field/Field.cjs +3 -0
  409. package/dist/components/field/Field.cjs.map +2 -2
  410. package/dist/components/field/Field.d.cts.map +1 -1
  411. package/dist/components/field/Field.d.mts.map +1 -1
  412. package/dist/components/field/Field.d.ts.map +1 -1
  413. package/dist/components/field/Field.js +3 -0
  414. package/dist/components/field/Field.js.map +2 -2
  415. package/dist/components/field/field.props.cjs +0 -3
  416. package/dist/components/field/field.props.cjs.map +2 -2
  417. package/dist/components/field/field.props.d.cts +0 -3
  418. package/dist/components/field/field.props.d.cts.map +1 -1
  419. package/dist/components/field/field.props.d.mts +0 -3
  420. package/dist/components/field/field.props.d.mts.map +1 -1
  421. package/dist/components/field/field.props.d.ts +0 -3
  422. package/dist/components/field/field.props.d.ts.map +1 -1
  423. package/dist/components/field/field.props.js +0 -3
  424. package/dist/components/field/field.props.js.map +2 -2
  425. package/dist/components/field.css +4 -27
  426. package/dist/components/file-upload.css +10 -1
  427. package/dist/components/fileUpload/FileUpload.cjs +69 -25
  428. package/dist/components/fileUpload/FileUpload.cjs.map +2 -2
  429. package/dist/components/fileUpload/FileUpload.d.cts +5 -0
  430. package/dist/components/fileUpload/FileUpload.d.cts.map +1 -1
  431. package/dist/components/fileUpload/FileUpload.d.mts +5 -0
  432. package/dist/components/fileUpload/FileUpload.d.mts.map +1 -1
  433. package/dist/components/fileUpload/FileUpload.d.ts +5 -0
  434. package/dist/components/fileUpload/FileUpload.d.ts.map +1 -1
  435. package/dist/components/fileUpload/FileUpload.js +70 -26
  436. package/dist/components/fileUpload/FileUpload.js.map +2 -2
  437. package/dist/components/fileUpload/fileUpload.props.cjs +7 -1
  438. package/dist/components/fileUpload/fileUpload.props.cjs.map +2 -2
  439. package/dist/components/fileUpload/fileUpload.props.d.cts +5 -0
  440. package/dist/components/fileUpload/fileUpload.props.d.cts.map +1 -1
  441. package/dist/components/fileUpload/fileUpload.props.d.mts +5 -0
  442. package/dist/components/fileUpload/fileUpload.props.d.mts.map +1 -1
  443. package/dist/components/fileUpload/fileUpload.props.d.ts +5 -0
  444. package/dist/components/fileUpload/fileUpload.props.d.ts.map +1 -1
  445. package/dist/components/fileUpload/fileUpload.props.js +7 -1
  446. package/dist/components/fileUpload/fileUpload.props.js.map +2 -2
  447. package/dist/components/filter-bar.css +381 -8
  448. package/dist/components/filterBar/FilterBar.cjs +630 -1
  449. package/dist/components/filterBar/FilterBar.cjs.map +2 -2
  450. package/dist/components/filterBar/FilterBar.d.cts +132 -2
  451. package/dist/components/filterBar/FilterBar.d.cts.map +1 -1
  452. package/dist/components/filterBar/FilterBar.d.mts +132 -2
  453. package/dist/components/filterBar/FilterBar.d.mts.map +1 -1
  454. package/dist/components/filterBar/FilterBar.d.ts +132 -2
  455. package/dist/components/filterBar/FilterBar.d.ts.map +1 -1
  456. package/dist/components/filterBar/FilterBar.js +631 -2
  457. package/dist/components/filterBar/FilterBar.js.map +2 -2
  458. package/dist/components/flex/Flex.cjs +1 -1
  459. package/dist/components/flex/Flex.cjs.map +2 -2
  460. package/dist/components/flex/Flex.d.cts.map +1 -1
  461. package/dist/components/flex/Flex.d.mts.map +1 -1
  462. package/dist/components/flex/Flex.d.ts.map +1 -1
  463. package/dist/components/flex/Flex.js +1 -1
  464. package/dist/components/flex/Flex.js.map +2 -2
  465. package/dist/components/flex.css +24 -0
  466. package/dist/components/floating-panel.css +5 -4
  467. package/dist/components/fontProvider/FontProvider.cjs +44 -20
  468. package/dist/components/fontProvider/FontProvider.cjs.map +2 -2
  469. package/dist/components/fontProvider/FontProvider.d.cts.map +1 -1
  470. package/dist/components/fontProvider/FontProvider.d.mts.map +1 -1
  471. package/dist/components/fontProvider/FontProvider.d.ts.map +1 -1
  472. package/dist/components/fontProvider/FontProvider.js +44 -20
  473. package/dist/components/fontProvider/FontProvider.js.map +2 -2
  474. package/dist/components/fontProvider/fontProvider.props.cjs.map +1 -1
  475. package/dist/components/fontProvider/fontProvider.props.d.cts +1 -0
  476. package/dist/components/fontProvider/fontProvider.props.d.cts.map +1 -1
  477. package/dist/components/fontProvider/fontProvider.props.d.mts +1 -0
  478. package/dist/components/fontProvider/fontProvider.props.d.mts.map +1 -1
  479. package/dist/components/fontProvider/fontProvider.props.d.ts +1 -0
  480. package/dist/components/fontProvider/fontProvider.props.d.ts.map +1 -1
  481. package/dist/components/form/Form.cjs +1 -1
  482. package/dist/components/form/Form.cjs.map +2 -2
  483. package/dist/components/form/Form.d.cts +0 -2
  484. package/dist/components/form/Form.d.cts.map +1 -1
  485. package/dist/components/form/Form.d.mts +0 -2
  486. package/dist/components/form/Form.d.mts.map +1 -1
  487. package/dist/components/form/Form.d.ts +0 -2
  488. package/dist/components/form/Form.d.ts.map +1 -1
  489. package/dist/components/form/Form.js +1 -1
  490. package/dist/components/form/Form.js.map +2 -2
  491. package/dist/components/form/form.props.cjs +0 -1
  492. package/dist/components/form/form.props.cjs.map +2 -2
  493. package/dist/components/form/form.props.d.cts +0 -1
  494. package/dist/components/form/form.props.d.cts.map +1 -1
  495. package/dist/components/form/form.props.d.mts +0 -1
  496. package/dist/components/form/form.props.d.mts.map +1 -1
  497. package/dist/components/form/form.props.d.ts +0 -1
  498. package/dist/components/form/form.props.d.ts.map +1 -1
  499. package/dist/components/form/form.props.js +0 -1
  500. package/dist/components/form/form.props.js.map +2 -2
  501. package/dist/components/form.css +0 -8
  502. package/dist/components/grid/Grid.cjs +4 -3
  503. package/dist/components/grid/Grid.cjs.map +2 -2
  504. package/dist/components/grid/Grid.d.cts +1 -1
  505. package/dist/components/grid/Grid.d.cts.map +1 -1
  506. package/dist/components/grid/Grid.d.mts +1 -1
  507. package/dist/components/grid/Grid.d.mts.map +1 -1
  508. package/dist/components/grid/Grid.d.ts +1 -1
  509. package/dist/components/grid/Grid.d.ts.map +1 -1
  510. package/dist/components/grid/Grid.js +4 -3
  511. package/dist/components/grid/Grid.js.map +2 -2
  512. package/dist/components/heading.css +14 -0
  513. package/dist/components/hover-card.css +7 -10
  514. package/dist/components/hoverCard/HoverCard.cjs +1 -1
  515. package/dist/components/hoverCard/HoverCard.cjs.map +1 -1
  516. package/dist/components/hoverCard/HoverCard.js +1 -1
  517. package/dist/components/hoverCard/HoverCard.js.map +1 -1
  518. package/dist/components/icon/Icon.cjs +31 -2
  519. package/dist/components/icon/Icon.cjs.map +2 -2
  520. package/dist/components/icon/Icon.d.cts +37 -1
  521. package/dist/components/icon/Icon.d.cts.map +1 -1
  522. package/dist/components/icon/Icon.d.mts +37 -1
  523. package/dist/components/icon/Icon.d.mts.map +1 -1
  524. package/dist/components/icon/Icon.d.ts +37 -1
  525. package/dist/components/icon/Icon.d.ts.map +1 -1
  526. package/dist/components/icon/Icon.js +41 -2
  527. package/dist/components/icon/Icon.js.map +2 -2
  528. package/dist/components/icon/icons.cjs +20 -0
  529. package/dist/components/icon/icons.cjs.map +2 -2
  530. package/dist/components/icon/icons.d.cts +50 -0
  531. package/dist/components/icon/icons.d.cts.map +1 -1
  532. package/dist/components/icon/icons.d.mts +50 -0
  533. package/dist/components/icon/icons.d.mts.map +1 -1
  534. package/dist/components/icon/icons.d.ts +50 -0
  535. package/dist/components/icon/icons.d.ts.map +1 -1
  536. package/dist/components/icon/icons.js +20 -0
  537. package/dist/components/icon/icons.js.map +2 -2
  538. package/dist/components/icon-button.css +44 -8
  539. package/dist/components/iconButton/IconButton.cjs +2 -0
  540. package/dist/components/iconButton/IconButton.cjs.map +2 -2
  541. package/dist/components/iconButton/IconButton.d.cts.map +1 -1
  542. package/dist/components/iconButton/IconButton.d.mts.map +1 -1
  543. package/dist/components/iconButton/IconButton.d.ts.map +1 -1
  544. package/dist/components/iconButton/IconButton.js +2 -0
  545. package/dist/components/iconButton/IconButton.js.map +2 -2
  546. package/dist/components/iconButton/iconButton.props.cjs +4 -0
  547. package/dist/components/iconButton/iconButton.props.cjs.map +2 -2
  548. package/dist/components/iconButton/iconButton.props.d.cts +4 -0
  549. package/dist/components/iconButton/iconButton.props.d.cts.map +1 -1
  550. package/dist/components/iconButton/iconButton.props.d.mts +4 -0
  551. package/dist/components/iconButton/iconButton.props.d.mts.map +1 -1
  552. package/dist/components/iconButton/iconButton.props.d.ts +4 -0
  553. package/dist/components/iconButton/iconButton.props.d.ts.map +1 -1
  554. package/dist/components/iconButton/iconButton.props.js +4 -0
  555. package/dist/components/iconButton/iconButton.props.js.map +2 -2
  556. package/dist/components/index.cjs +2 -7
  557. package/dist/components/index.cjs.map +2 -2
  558. package/dist/components/index.d.cts +2 -7
  559. package/dist/components/index.d.cts.map +1 -1
  560. package/dist/components/index.d.mts +2 -7
  561. package/dist/components/index.d.mts.map +1 -1
  562. package/dist/components/index.d.ts +2 -7
  563. package/dist/components/index.d.ts.map +1 -1
  564. package/dist/components/index.js +2 -7
  565. package/dist/components/index.js.map +2 -2
  566. package/dist/components/input-otp.css +4 -0
  567. package/dist/components/input.css +16 -3
  568. package/dist/components/item/Item.cjs +1 -1
  569. package/dist/components/item/Item.cjs.map +2 -2
  570. package/dist/components/item/Item.js +1 -1
  571. package/dist/components/item/Item.js.map +2 -2
  572. package/dist/components/item.css +12 -1
  573. package/dist/components/kbd.css +1 -1
  574. package/dist/components/label/Label.cjs +1 -1
  575. package/dist/components/label/Label.cjs.map +2 -2
  576. package/dist/components/label/Label.js +1 -1
  577. package/dist/components/label/Label.js.map +2 -2
  578. package/dist/components/label.css +1 -1
  579. package/dist/components/marquee/Marquee.cjs +1 -1
  580. package/dist/components/marquee/Marquee.cjs.map +2 -2
  581. package/dist/components/marquee/Marquee.js +1 -1
  582. package/dist/components/marquee/Marquee.js.map +2 -2
  583. package/dist/components/marquee.css +6 -0
  584. package/dist/components/menu/Menu.cjs +3 -1
  585. package/dist/components/menu/Menu.cjs.map +2 -2
  586. package/dist/components/menu/Menu.d.cts.map +1 -1
  587. package/dist/components/menu/Menu.d.mts.map +1 -1
  588. package/dist/components/menu/Menu.d.ts.map +1 -1
  589. package/dist/components/menu/Menu.js +3 -1
  590. package/dist/components/menu/Menu.js.map +2 -2
  591. package/dist/components/menu.css +5 -6
  592. package/dist/components/menubar.css +9 -5
  593. package/dist/components/metric.css +5 -0
  594. package/dist/components/native-select.css +4 -15
  595. package/dist/components/nativeSelect/NativeSelect.cjs +3 -4
  596. package/dist/components/nativeSelect/NativeSelect.cjs.map +2 -2
  597. package/dist/components/nativeSelect/NativeSelect.d.cts.map +1 -1
  598. package/dist/components/nativeSelect/NativeSelect.d.mts.map +1 -1
  599. package/dist/components/nativeSelect/NativeSelect.d.ts.map +1 -1
  600. package/dist/components/nativeSelect/NativeSelect.js +3 -4
  601. package/dist/components/nativeSelect/NativeSelect.js.map +2 -2
  602. package/dist/components/nativeSelect/nativeSelect.props.cjs +0 -8
  603. package/dist/components/nativeSelect/nativeSelect.props.cjs.map +2 -2
  604. package/dist/components/nativeSelect/nativeSelect.props.d.cts +0 -7
  605. package/dist/components/nativeSelect/nativeSelect.props.d.cts.map +1 -1
  606. package/dist/components/nativeSelect/nativeSelect.props.d.mts +0 -7
  607. package/dist/components/nativeSelect/nativeSelect.props.d.mts.map +1 -1
  608. package/dist/components/nativeSelect/nativeSelect.props.d.ts +0 -7
  609. package/dist/components/nativeSelect/nativeSelect.props.d.ts.map +1 -1
  610. package/dist/components/nativeSelect/nativeSelect.props.js +0 -8
  611. package/dist/components/nativeSelect/nativeSelect.props.js.map +2 -2
  612. package/dist/components/navigation-menu.css +67 -44
  613. package/dist/components/navigationMenu/NavigationMenu.cjs +87 -5
  614. package/dist/components/navigationMenu/NavigationMenu.cjs.map +2 -2
  615. package/dist/components/navigationMenu/NavigationMenu.d.cts.map +1 -1
  616. package/dist/components/navigationMenu/NavigationMenu.d.mts.map +1 -1
  617. package/dist/components/navigationMenu/NavigationMenu.d.ts.map +1 -1
  618. package/dist/components/navigationMenu/NavigationMenu.js +87 -5
  619. package/dist/components/navigationMenu/NavigationMenu.js.map +2 -2
  620. package/dist/components/notification-center.css +3 -2
  621. package/dist/components/number-input.css +44 -3
  622. package/dist/components/numberInput/NumberInput.cjs +106 -14
  623. package/dist/components/numberInput/NumberInput.cjs.map +2 -2
  624. package/dist/components/numberInput/NumberInput.d.cts +2 -0
  625. package/dist/components/numberInput/NumberInput.d.cts.map +1 -1
  626. package/dist/components/numberInput/NumberInput.d.mts +2 -0
  627. package/dist/components/numberInput/NumberInput.d.mts.map +1 -1
  628. package/dist/components/numberInput/NumberInput.d.ts +2 -0
  629. package/dist/components/numberInput/NumberInput.d.ts.map +1 -1
  630. package/dist/components/numberInput/NumberInput.js +107 -15
  631. package/dist/components/numberInput/NumberInput.js.map +2 -2
  632. package/dist/components/numberInput/numberInput.props.cjs +20 -0
  633. package/dist/components/numberInput/numberInput.props.cjs.map +2 -2
  634. package/dist/components/numberInput/numberInput.props.d.cts +18 -0
  635. package/dist/components/numberInput/numberInput.props.d.cts.map +1 -1
  636. package/dist/components/numberInput/numberInput.props.d.mts +18 -0
  637. package/dist/components/numberInput/numberInput.props.d.mts.map +1 -1
  638. package/dist/components/numberInput/numberInput.props.d.ts +18 -0
  639. package/dist/components/numberInput/numberInput.props.d.ts.map +1 -1
  640. package/dist/components/numberInput/numberInput.props.js +20 -0
  641. package/dist/components/numberInput/numberInput.props.js.map +2 -2
  642. package/dist/components/pagination/Pagination.cjs +143 -17
  643. package/dist/components/pagination/Pagination.cjs.map +2 -2
  644. package/dist/components/pagination/Pagination.d.cts +64 -4
  645. package/dist/components/pagination/Pagination.d.cts.map +1 -1
  646. package/dist/components/pagination/Pagination.d.mts +64 -4
  647. package/dist/components/pagination/Pagination.d.mts.map +1 -1
  648. package/dist/components/pagination/Pagination.d.ts +64 -4
  649. package/dist/components/pagination/Pagination.d.ts.map +1 -1
  650. package/dist/components/pagination/Pagination.js +143 -17
  651. package/dist/components/pagination/Pagination.js.map +2 -2
  652. package/dist/components/pagination.css +50 -8
  653. package/dist/components/password-input.css +4 -2
  654. package/dist/components/phone-input.css +230 -0
  655. package/dist/components/phoneInput/PhoneInput.cjs +252 -0
  656. package/dist/components/phoneInput/PhoneInput.cjs.map +7 -0
  657. package/dist/components/phoneInput/PhoneInput.d.cts +24 -0
  658. package/dist/components/phoneInput/PhoneInput.d.cts.map +1 -0
  659. package/dist/components/phoneInput/PhoneInput.d.mts +24 -0
  660. package/dist/components/phoneInput/PhoneInput.d.mts.map +1 -0
  661. package/dist/components/phoneInput/PhoneInput.d.ts +24 -0
  662. package/dist/components/phoneInput/PhoneInput.d.ts.map +1 -0
  663. package/dist/components/phoneInput/PhoneInput.js +222 -0
  664. package/dist/components/phoneInput/PhoneInput.js.map +7 -0
  665. package/dist/components/phoneInput/phoneInput.props.cjs +40 -0
  666. package/dist/components/phoneInput/phoneInput.props.cjs.map +7 -0
  667. package/dist/components/phoneInput/phoneInput.props.d.cts +18 -0
  668. package/dist/components/phoneInput/phoneInput.props.d.cts.map +1 -0
  669. package/dist/components/phoneInput/phoneInput.props.d.mts +18 -0
  670. package/dist/components/phoneInput/phoneInput.props.d.mts.map +1 -0
  671. package/dist/components/phoneInput/phoneInput.props.d.ts +18 -0
  672. package/dist/components/phoneInput/phoneInput.props.d.ts.map +1 -0
  673. package/dist/components/phoneInput/phoneInput.props.js +20 -0
  674. package/dist/components/phoneInput/phoneInput.props.js.map +7 -0
  675. package/dist/components/pills/Pills.cjs +11 -2
  676. package/dist/components/pills/Pills.cjs.map +2 -2
  677. package/dist/components/pills/Pills.d.cts.map +1 -1
  678. package/dist/components/pills/Pills.d.mts.map +1 -1
  679. package/dist/components/pills/Pills.d.ts.map +1 -1
  680. package/dist/components/pills/Pills.js +11 -2
  681. package/dist/components/pills/Pills.js.map +2 -2
  682. package/dist/components/pills/pills.props.cjs +6 -1
  683. package/dist/components/pills/pills.props.cjs.map +2 -2
  684. package/dist/components/pills/pills.props.d.cts +6 -1
  685. package/dist/components/pills/pills.props.d.cts.map +1 -1
  686. package/dist/components/pills/pills.props.d.mts +6 -1
  687. package/dist/components/pills/pills.props.d.mts.map +1 -1
  688. package/dist/components/pills/pills.props.d.ts +6 -1
  689. package/dist/components/pills/pills.props.d.ts.map +1 -1
  690. package/dist/components/pills/pills.props.js +6 -1
  691. package/dist/components/pills/pills.props.js.map +2 -2
  692. package/dist/components/pills.css +40 -1
  693. package/dist/components/popover/Popover.cjs +3 -2
  694. package/dist/components/popover/Popover.cjs.map +2 -2
  695. package/dist/components/popover/Popover.d.cts.map +1 -1
  696. package/dist/components/popover/Popover.d.mts.map +1 -1
  697. package/dist/components/popover/Popover.d.ts.map +1 -1
  698. package/dist/components/popover/Popover.js +3 -2
  699. package/dist/components/popover/Popover.js.map +2 -2
  700. package/dist/components/popover.css +10 -0
  701. package/dist/components/progress.css +6 -2
  702. package/dist/components/prose/Prose.cjs.map +2 -2
  703. package/dist/components/prose/Prose.d.cts +2 -5
  704. package/dist/components/prose/Prose.d.cts.map +1 -1
  705. package/dist/components/prose/Prose.d.mts +2 -5
  706. package/dist/components/prose/Prose.d.mts.map +1 -1
  707. package/dist/components/prose/Prose.d.ts +2 -5
  708. package/dist/components/prose/Prose.d.ts.map +1 -1
  709. package/dist/components/prose/Prose.js.map +2 -2
  710. package/dist/components/prose/prose.props.cjs +17 -0
  711. package/dist/components/prose/prose.props.cjs.map +7 -0
  712. package/dist/components/prose/prose.props.d.cts +7 -0
  713. package/dist/components/prose/prose.props.d.cts.map +1 -0
  714. package/dist/components/prose/prose.props.d.mts +7 -0
  715. package/dist/components/prose/prose.props.d.mts.map +1 -0
  716. package/dist/components/prose/prose.props.d.ts +7 -0
  717. package/dist/components/prose/prose.props.d.ts.map +1 -0
  718. package/dist/components/prose/prose.props.js +1 -0
  719. package/dist/components/prose/prose.props.js.map +7 -0
  720. package/dist/components/prose.css +1 -1
  721. package/dist/components/qr-code.css +5 -15
  722. package/dist/components/radio-cards.css +8 -0
  723. package/dist/components/radio-group.css +19 -0
  724. package/dist/components/radioGroup/RadioGroup.cjs +3 -2
  725. package/dist/components/radioGroup/RadioGroup.cjs.map +2 -2
  726. package/dist/components/radioGroup/RadioGroup.d.cts.map +1 -1
  727. package/dist/components/radioGroup/RadioGroup.d.mts.map +1 -1
  728. package/dist/components/radioGroup/RadioGroup.d.ts.map +1 -1
  729. package/dist/components/radioGroup/RadioGroup.js +3 -2
  730. package/dist/components/radioGroup/RadioGroup.js.map +2 -2
  731. package/dist/components/radioGroup/radioGroup.props.cjs +1 -1
  732. package/dist/components/radioGroup/radioGroup.props.cjs.map +2 -2
  733. package/dist/components/radioGroup/radioGroup.props.d.cts +1 -1
  734. package/dist/components/radioGroup/radioGroup.props.d.mts +1 -1
  735. package/dist/components/radioGroup/radioGroup.props.d.ts +1 -1
  736. package/dist/components/radioGroup/radioGroup.props.js +1 -1
  737. package/dist/components/radioGroup/radioGroup.props.js.map +2 -2
  738. package/dist/components/rating/Rating.cjs +2 -1
  739. package/dist/components/rating/Rating.cjs.map +2 -2
  740. package/dist/components/rating/Rating.d.cts.map +1 -1
  741. package/dist/components/rating/Rating.d.mts.map +1 -1
  742. package/dist/components/rating/Rating.d.ts.map +1 -1
  743. package/dist/components/rating/Rating.js +2 -1
  744. package/dist/components/rating/Rating.js.map +2 -2
  745. package/dist/components/rating.css +12 -0
  746. package/dist/components/result/Result.cjs.map +2 -2
  747. package/dist/components/result/Result.d.cts +2 -11
  748. package/dist/components/result/Result.d.cts.map +1 -1
  749. package/dist/components/result/Result.d.mts +2 -11
  750. package/dist/components/result/Result.d.mts.map +1 -1
  751. package/dist/components/result/Result.d.ts +2 -11
  752. package/dist/components/result/Result.d.ts.map +1 -1
  753. package/dist/components/result/Result.js.map +2 -2
  754. package/dist/components/result/result.props.cjs +17 -0
  755. package/dist/components/result/result.props.cjs.map +7 -0
  756. package/dist/components/result/result.props.d.cts +13 -0
  757. package/dist/components/result/result.props.d.cts.map +1 -0
  758. package/dist/components/result/result.props.d.mts +13 -0
  759. package/dist/components/result/result.props.d.mts.map +1 -0
  760. package/dist/components/result/result.props.d.ts +13 -0
  761. package/dist/components/result/result.props.d.ts.map +1 -0
  762. package/dist/components/result/result.props.js +1 -0
  763. package/dist/components/result/result.props.js.map +7 -0
  764. package/dist/components/result.css +3 -1
  765. package/dist/components/richTextEditor/RichTextEditor.cjs +11 -3
  766. package/dist/components/richTextEditor/RichTextEditor.cjs.map +2 -2
  767. package/dist/components/richTextEditor/RichTextEditor.d.cts.map +1 -1
  768. package/dist/components/richTextEditor/RichTextEditor.d.mts.map +1 -1
  769. package/dist/components/richTextEditor/RichTextEditor.d.ts.map +1 -1
  770. package/dist/components/richTextEditor/RichTextEditor.js +11 -3
  771. package/dist/components/richTextEditor/RichTextEditor.js.map +2 -2
  772. package/dist/components/searchBar/SearchBar.cjs +2 -0
  773. package/dist/components/searchBar/SearchBar.cjs.map +2 -2
  774. package/dist/components/searchBar/SearchBar.d.cts.map +1 -1
  775. package/dist/components/searchBar/SearchBar.d.mts.map +1 -1
  776. package/dist/components/searchBar/SearchBar.d.ts.map +1 -1
  777. package/dist/components/searchBar/SearchBar.js +3 -1
  778. package/dist/components/searchBar/SearchBar.js.map +2 -2
  779. package/dist/components/searchBar/searchBar.props.cjs +4 -0
  780. package/dist/components/searchBar/searchBar.props.cjs.map +2 -2
  781. package/dist/components/searchBar/searchBar.props.d.cts +4 -0
  782. package/dist/components/searchBar/searchBar.props.d.cts.map +1 -1
  783. package/dist/components/searchBar/searchBar.props.d.mts +4 -0
  784. package/dist/components/searchBar/searchBar.props.d.mts.map +1 -1
  785. package/dist/components/searchBar/searchBar.props.d.ts +4 -0
  786. package/dist/components/searchBar/searchBar.props.d.ts.map +1 -1
  787. package/dist/components/searchBar/searchBar.props.js +4 -0
  788. package/dist/components/searchBar/searchBar.props.js.map +2 -2
  789. package/dist/components/section/section.props.cjs +8 -0
  790. package/dist/components/section/section.props.cjs.map +2 -2
  791. package/dist/components/section/section.props.d.cts +6 -0
  792. package/dist/components/section/section.props.d.cts.map +1 -1
  793. package/dist/components/section/section.props.d.mts +6 -0
  794. package/dist/components/section/section.props.d.mts.map +1 -1
  795. package/dist/components/section/section.props.d.ts +6 -0
  796. package/dist/components/section/section.props.d.ts.map +1 -1
  797. package/dist/components/section/section.props.js +8 -0
  798. package/dist/components/section/section.props.js.map +2 -2
  799. package/dist/components/segmented-control.css +169 -53
  800. package/dist/components/segmented-meter.css +6 -3
  801. package/dist/components/segmentedControl/SegmentedControl.cjs +118 -13
  802. package/dist/components/segmentedControl/SegmentedControl.cjs.map +2 -2
  803. package/dist/components/segmentedControl/SegmentedControl.d.cts +1 -0
  804. package/dist/components/segmentedControl/SegmentedControl.d.cts.map +1 -1
  805. package/dist/components/segmentedControl/SegmentedControl.d.mts +1 -0
  806. package/dist/components/segmentedControl/SegmentedControl.d.mts.map +1 -1
  807. package/dist/components/segmentedControl/SegmentedControl.d.ts +1 -0
  808. package/dist/components/segmentedControl/SegmentedControl.d.ts.map +1 -1
  809. package/dist/components/segmentedControl/SegmentedControl.js +119 -14
  810. package/dist/components/segmentedControl/SegmentedControl.js.map +2 -2
  811. package/dist/components/segmentedControl/segmentedControl.props.cjs +17 -1
  812. package/dist/components/segmentedControl/segmentedControl.props.cjs.map +2 -2
  813. package/dist/components/segmentedControl/segmentedControl.props.d.cts +15 -1
  814. package/dist/components/segmentedControl/segmentedControl.props.d.cts.map +1 -1
  815. package/dist/components/segmentedControl/segmentedControl.props.d.mts +15 -1
  816. package/dist/components/segmentedControl/segmentedControl.props.d.mts.map +1 -1
  817. package/dist/components/segmentedControl/segmentedControl.props.d.ts +15 -1
  818. package/dist/components/segmentedControl/segmentedControl.props.d.ts.map +1 -1
  819. package/dist/components/segmentedControl/segmentedControl.props.js +17 -1
  820. package/dist/components/segmentedControl/segmentedControl.props.js.map +2 -2
  821. package/dist/components/select/Select.cjs +79 -17
  822. package/dist/components/select/Select.cjs.map +3 -3
  823. package/dist/components/select/Select.d.cts +5 -2
  824. package/dist/components/select/Select.d.cts.map +1 -1
  825. package/dist/components/select/Select.d.mts +5 -2
  826. package/dist/components/select/Select.d.mts.map +1 -1
  827. package/dist/components/select/Select.d.ts +5 -2
  828. package/dist/components/select/Select.d.ts.map +1 -1
  829. package/dist/components/select/Select.js +79 -17
  830. package/dist/components/select/Select.js.map +3 -3
  831. package/dist/components/select/select.props.cjs +5 -1
  832. package/dist/components/select/select.props.cjs.map +2 -2
  833. package/dist/components/select/select.props.d.cts +8 -4
  834. package/dist/components/select/select.props.d.cts.map +1 -1
  835. package/dist/components/select/select.props.d.mts +8 -4
  836. package/dist/components/select/select.props.d.mts.map +1 -1
  837. package/dist/components/select/select.props.d.ts +8 -4
  838. package/dist/components/select/select.props.d.ts.map +1 -1
  839. package/dist/components/select/select.props.js +5 -1
  840. package/dist/components/select/select.props.js.map +2 -2
  841. package/dist/components/select.css +143 -17
  842. package/dist/components/separator.css +8 -2
  843. package/dist/components/sidebar/Sidebar.cjs +513 -113
  844. package/dist/components/sidebar/Sidebar.cjs.map +2 -2
  845. package/dist/components/sidebar/Sidebar.d.cts +61 -5
  846. package/dist/components/sidebar/Sidebar.d.cts.map +1 -1
  847. package/dist/components/sidebar/Sidebar.d.mts +61 -5
  848. package/dist/components/sidebar/Sidebar.d.mts.map +1 -1
  849. package/dist/components/sidebar/Sidebar.d.ts +61 -5
  850. package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
  851. package/dist/components/sidebar/Sidebar.js +514 -113
  852. package/dist/components/sidebar/Sidebar.js.map +2 -2
  853. package/dist/components/sidebar/sidebar.props.cjs +32 -0
  854. package/dist/components/sidebar/sidebar.props.cjs.map +2 -2
  855. package/dist/components/sidebar/sidebar.props.d.cts +34 -1
  856. package/dist/components/sidebar/sidebar.props.d.cts.map +1 -1
  857. package/dist/components/sidebar/sidebar.props.d.mts +34 -1
  858. package/dist/components/sidebar/sidebar.props.d.mts.map +1 -1
  859. package/dist/components/sidebar/sidebar.props.d.ts +34 -1
  860. package/dist/components/sidebar/sidebar.props.d.ts.map +1 -1
  861. package/dist/components/sidebar/sidebar.props.js +32 -0
  862. package/dist/components/sidebar/sidebar.props.js.map +2 -2
  863. package/dist/components/sidebar.css +408 -51
  864. package/dist/components/skeleton/Skeleton.cjs +1 -1
  865. package/dist/components/skeleton/Skeleton.cjs.map +2 -2
  866. package/dist/components/skeleton/Skeleton.js +1 -1
  867. package/dist/components/skeleton/Skeleton.js.map +2 -2
  868. package/dist/components/skeleton.css +9 -3
  869. package/dist/components/slider.css +15 -7
  870. package/dist/components/sonner.css +1 -1
  871. package/dist/components/sortable-list.css +1 -0
  872. package/dist/components/sortableList/SortableList.cjs +15 -4
  873. package/dist/components/sortableList/SortableList.cjs.map +2 -2
  874. package/dist/components/sortableList/SortableList.d.cts +2 -19
  875. package/dist/components/sortableList/SortableList.d.cts.map +1 -1
  876. package/dist/components/sortableList/SortableList.d.mts +2 -19
  877. package/dist/components/sortableList/SortableList.d.mts.map +1 -1
  878. package/dist/components/sortableList/SortableList.d.ts +2 -19
  879. package/dist/components/sortableList/SortableList.d.ts.map +1 -1
  880. package/dist/components/sortableList/SortableList.js +15 -4
  881. package/dist/components/sortableList/SortableList.js.map +2 -2
  882. package/dist/components/sortableList/sortableList.props.cjs +17 -0
  883. package/dist/components/sortableList/sortableList.props.cjs.map +7 -0
  884. package/dist/components/sortableList/sortableList.props.d.cts +21 -0
  885. package/dist/components/sortableList/sortableList.props.d.cts.map +1 -0
  886. package/dist/components/sortableList/sortableList.props.d.mts +21 -0
  887. package/dist/components/sortableList/sortableList.props.d.mts.map +1 -0
  888. package/dist/components/sortableList/sortableList.props.d.ts +21 -0
  889. package/dist/components/sortableList/sortableList.props.d.ts.map +1 -0
  890. package/dist/components/sortableList/sortableList.props.js +1 -0
  891. package/dist/components/sortableList/sortableList.props.js.map +7 -0
  892. package/dist/components/spinner/Spinner.cjs +22 -3
  893. package/dist/components/spinner/Spinner.cjs.map +2 -2
  894. package/dist/components/spinner/Spinner.d.cts.map +1 -1
  895. package/dist/components/spinner/Spinner.d.mts.map +1 -1
  896. package/dist/components/spinner/Spinner.d.ts.map +1 -1
  897. package/dist/components/spinner/Spinner.js +22 -3
  898. package/dist/components/spinner/Spinner.js.map +2 -2
  899. package/dist/components/spinner/spinner.props.cjs +10 -0
  900. package/dist/components/spinner/spinner.props.cjs.map +2 -2
  901. package/dist/components/spinner/spinner.props.d.cts +9 -0
  902. package/dist/components/spinner/spinner.props.d.cts.map +1 -1
  903. package/dist/components/spinner/spinner.props.d.mts +9 -0
  904. package/dist/components/spinner/spinner.props.d.mts.map +1 -1
  905. package/dist/components/spinner/spinner.props.d.ts +9 -0
  906. package/dist/components/spinner/spinner.props.d.ts.map +1 -1
  907. package/dist/components/spinner/spinner.props.js +10 -0
  908. package/dist/components/spinner/spinner.props.js.map +2 -2
  909. package/dist/components/spinner.css +38 -0
  910. package/dist/components/stat-card.css +2 -0
  911. package/dist/components/stepper.css +63 -8
  912. package/dist/components/switch/Switch.cjs +1 -5
  913. package/dist/components/switch/Switch.cjs.map +2 -2
  914. package/dist/components/switch/Switch.d.cts.map +1 -1
  915. package/dist/components/switch/Switch.d.mts.map +1 -1
  916. package/dist/components/switch/Switch.d.ts.map +1 -1
  917. package/dist/components/switch/Switch.js +1 -5
  918. package/dist/components/switch/Switch.js.map +2 -2
  919. package/dist/components/switch.css +38 -16
  920. package/dist/components/table/Table.cjs +3 -2
  921. package/dist/components/table/Table.cjs.map +2 -2
  922. package/dist/components/table/Table.d.cts.map +1 -1
  923. package/dist/components/table/Table.d.mts.map +1 -1
  924. package/dist/components/table/Table.d.ts.map +1 -1
  925. package/dist/components/table/Table.js +3 -2
  926. package/dist/components/table/Table.js.map +2 -2
  927. package/dist/components/table/table.props.cjs +6 -0
  928. package/dist/components/table/table.props.cjs.map +2 -2
  929. package/dist/components/table/table.props.d.cts +5 -0
  930. package/dist/components/table/table.props.d.cts.map +1 -1
  931. package/dist/components/table/table.props.d.mts +5 -0
  932. package/dist/components/table/table.props.d.mts.map +1 -1
  933. package/dist/components/table/table.props.d.ts +5 -0
  934. package/dist/components/table/table.props.d.ts.map +1 -1
  935. package/dist/components/table/table.props.js +6 -0
  936. package/dist/components/table/table.props.js.map +2 -2
  937. package/dist/components/table.css +20 -13
  938. package/dist/components/tableOfContents/TableOfContents.cjs.map +2 -2
  939. package/dist/components/tableOfContents/TableOfContents.d.cts +2 -12
  940. package/dist/components/tableOfContents/TableOfContents.d.cts.map +1 -1
  941. package/dist/components/tableOfContents/TableOfContents.d.mts +2 -12
  942. package/dist/components/tableOfContents/TableOfContents.d.mts.map +1 -1
  943. package/dist/components/tableOfContents/TableOfContents.d.ts +2 -12
  944. package/dist/components/tableOfContents/TableOfContents.d.ts.map +1 -1
  945. package/dist/components/tableOfContents/TableOfContents.js.map +2 -2
  946. package/dist/components/tableOfContents/tableOfContents.props.cjs +17 -0
  947. package/dist/components/tableOfContents/tableOfContents.props.cjs.map +7 -0
  948. package/dist/components/tableOfContents/tableOfContents.props.d.cts +14 -0
  949. package/dist/components/tableOfContents/tableOfContents.props.d.cts.map +1 -0
  950. package/dist/components/tableOfContents/tableOfContents.props.d.mts +14 -0
  951. package/dist/components/tableOfContents/tableOfContents.props.d.mts.map +1 -0
  952. package/dist/components/tableOfContents/tableOfContents.props.d.ts +14 -0
  953. package/dist/components/tableOfContents/tableOfContents.props.d.ts.map +1 -0
  954. package/dist/components/tableOfContents/tableOfContents.props.js +1 -0
  955. package/dist/components/tableOfContents/tableOfContents.props.js.map +7 -0
  956. package/dist/components/tabs.css +11 -1
  957. package/dist/components/tag/Tag.cjs +75 -0
  958. package/dist/components/tag/Tag.cjs.map +7 -0
  959. package/dist/components/tag/Tag.d.cts +12 -0
  960. package/dist/components/tag/Tag.d.cts.map +1 -0
  961. package/dist/components/tag/Tag.d.mts +12 -0
  962. package/dist/components/tag/Tag.d.mts.map +1 -0
  963. package/dist/components/tag/Tag.d.ts +12 -0
  964. package/dist/components/tag/Tag.d.ts.map +1 -0
  965. package/dist/components/tag/Tag.js +45 -0
  966. package/dist/components/tag/Tag.js.map +7 -0
  967. package/dist/components/tag/tag.props.cjs +52 -0
  968. package/dist/components/tag/tag.props.cjs.map +7 -0
  969. package/dist/components/tag/tag.props.d.cts +32 -0
  970. package/dist/components/tag/tag.props.d.cts.map +1 -0
  971. package/dist/components/tag/tag.props.d.mts +32 -0
  972. package/dist/components/tag/tag.props.d.mts.map +1 -0
  973. package/dist/components/tag/tag.props.d.ts +32 -0
  974. package/dist/components/tag/tag.props.d.ts.map +1 -0
  975. package/dist/components/tag/tag.props.js +32 -0
  976. package/dist/components/tag/tag.props.js.map +7 -0
  977. package/dist/components/tag.css +106 -0
  978. package/dist/components/tags-input.css +31 -9
  979. package/dist/components/tagsInput/TagsInput.cjs +43 -9
  980. package/dist/components/tagsInput/TagsInput.cjs.map +2 -2
  981. package/dist/components/tagsInput/TagsInput.d.cts.map +1 -1
  982. package/dist/components/tagsInput/TagsInput.d.mts.map +1 -1
  983. package/dist/components/tagsInput/TagsInput.d.ts.map +1 -1
  984. package/dist/components/tagsInput/TagsInput.js +43 -9
  985. package/dist/components/tagsInput/TagsInput.js.map +2 -2
  986. package/dist/components/tagsInput/tagsInput.props.cjs +20 -0
  987. package/dist/components/tagsInput/tagsInput.props.cjs.map +2 -2
  988. package/dist/components/tagsInput/tagsInput.props.d.cts +20 -0
  989. package/dist/components/tagsInput/tagsInput.props.d.cts.map +1 -1
  990. package/dist/components/tagsInput/tagsInput.props.d.mts +20 -0
  991. package/dist/components/tagsInput/tagsInput.props.d.mts.map +1 -1
  992. package/dist/components/tagsInput/tagsInput.props.d.ts +20 -0
  993. package/dist/components/tagsInput/tagsInput.props.d.ts.map +1 -1
  994. package/dist/components/tagsInput/tagsInput.props.js +20 -0
  995. package/dist/components/tagsInput/tagsInput.props.js.map +2 -2
  996. package/dist/components/text-area-field.css +177 -0
  997. package/dist/components/text-field.css +39 -2
  998. package/dist/components/text.css +9 -0
  999. package/dist/components/textArea/textArea.props.cjs +1 -1
  1000. package/dist/components/textArea/textArea.props.cjs.map +2 -2
  1001. package/dist/components/textArea/textArea.props.d.cts +1 -1
  1002. package/dist/components/textArea/textArea.props.d.mts +1 -1
  1003. package/dist/components/textArea/textArea.props.d.ts +1 -1
  1004. package/dist/components/textArea/textArea.props.js +1 -1
  1005. package/dist/components/textArea/textArea.props.js.map +2 -2
  1006. package/dist/components/textAreaField/TextAreaField.cjs +231 -0
  1007. package/dist/components/textAreaField/TextAreaField.cjs.map +7 -0
  1008. package/dist/components/textAreaField/TextAreaField.d.cts +24 -0
  1009. package/dist/components/textAreaField/TextAreaField.d.cts.map +1 -0
  1010. package/dist/components/textAreaField/TextAreaField.d.mts +24 -0
  1011. package/dist/components/textAreaField/TextAreaField.d.mts.map +1 -0
  1012. package/dist/components/textAreaField/TextAreaField.d.ts +24 -0
  1013. package/dist/components/textAreaField/TextAreaField.d.ts.map +1 -0
  1014. package/dist/components/textAreaField/TextAreaField.js +201 -0
  1015. package/dist/components/textAreaField/TextAreaField.js.map +7 -0
  1016. package/dist/components/textAreaField/textAreaField.props.cjs +68 -0
  1017. package/dist/components/textAreaField/textAreaField.props.cjs.map +7 -0
  1018. package/dist/components/textAreaField/textAreaField.props.d.cts +44 -0
  1019. package/dist/components/textAreaField/textAreaField.props.d.cts.map +1 -0
  1020. package/dist/components/textAreaField/textAreaField.props.d.mts +44 -0
  1021. package/dist/components/textAreaField/textAreaField.props.d.mts.map +1 -0
  1022. package/dist/components/textAreaField/textAreaField.props.d.ts +44 -0
  1023. package/dist/components/textAreaField/textAreaField.props.d.ts.map +1 -0
  1024. package/dist/components/textAreaField/textAreaField.props.js +48 -0
  1025. package/dist/components/textAreaField/textAreaField.props.js.map +7 -0
  1026. package/dist/components/textField/TextField.cjs +3 -2
  1027. package/dist/components/textField/TextField.cjs.map +2 -2
  1028. package/dist/components/textField/TextField.d.cts +1 -0
  1029. package/dist/components/textField/TextField.d.cts.map +1 -1
  1030. package/dist/components/textField/TextField.d.mts +1 -0
  1031. package/dist/components/textField/TextField.d.mts.map +1 -1
  1032. package/dist/components/textField/TextField.d.ts +1 -0
  1033. package/dist/components/textField/TextField.d.ts.map +1 -1
  1034. package/dist/components/textField/TextField.js +3 -2
  1035. package/dist/components/textField/TextField.js.map +2 -2
  1036. package/dist/components/textarea.css +12 -3
  1037. package/dist/components/theme-panel.css +2 -1
  1038. package/dist/components/themeProvider/ThemeProvider.cjs +22 -1
  1039. package/dist/components/themeProvider/ThemeProvider.cjs.map +2 -2
  1040. package/dist/components/themeProvider/ThemeProvider.d.cts.map +1 -1
  1041. package/dist/components/themeProvider/ThemeProvider.d.mts.map +1 -1
  1042. package/dist/components/themeProvider/ThemeProvider.d.ts.map +1 -1
  1043. package/dist/components/themeProvider/ThemeProvider.js +22 -1
  1044. package/dist/components/themeProvider/ThemeProvider.js.map +2 -2
  1045. package/dist/components/themeProvider/ThemeScript.cjs +1 -1
  1046. package/dist/components/themeProvider/ThemeScript.cjs.map +2 -2
  1047. package/dist/components/themeProvider/ThemeScript.d.cts.map +1 -1
  1048. package/dist/components/themeProvider/ThemeScript.d.mts.map +1 -1
  1049. package/dist/components/themeProvider/ThemeScript.d.ts.map +1 -1
  1050. package/dist/components/themeProvider/ThemeScript.js +1 -1
  1051. package/dist/components/themeProvider/ThemeScript.js.map +2 -2
  1052. package/dist/components/time-picker.css +3 -2
  1053. package/dist/components/timeline.css +54 -18
  1054. package/dist/components/toast/Toast.d.cts +1 -1
  1055. package/dist/components/toast/Toast.d.mts +1 -1
  1056. package/dist/components/toast/Toast.d.ts +1 -1
  1057. package/dist/components/toast/toast.props.cjs +1 -1
  1058. package/dist/components/toast/toast.props.cjs.map +2 -2
  1059. package/dist/components/toast/toast.props.d.cts +2 -2
  1060. package/dist/components/toast/toast.props.d.cts.map +1 -1
  1061. package/dist/components/toast/toast.props.d.mts +2 -2
  1062. package/dist/components/toast/toast.props.d.mts.map +1 -1
  1063. package/dist/components/toast/toast.props.d.ts +2 -2
  1064. package/dist/components/toast/toast.props.d.ts.map +1 -1
  1065. package/dist/components/toast/toast.props.js +1 -1
  1066. package/dist/components/toast/toast.props.js.map +2 -2
  1067. package/dist/components/toast.css +62 -3
  1068. package/dist/components/toggle-group.css +38 -0
  1069. package/dist/components/toggle-tip.css +5 -4
  1070. package/dist/components/tooltip/Tooltip.cjs +4 -1
  1071. package/dist/components/tooltip/Tooltip.cjs.map +2 -2
  1072. package/dist/components/tooltip/Tooltip.d.cts +4 -1
  1073. package/dist/components/tooltip/Tooltip.d.cts.map +1 -1
  1074. package/dist/components/tooltip/Tooltip.d.mts +4 -1
  1075. package/dist/components/tooltip/Tooltip.d.mts.map +1 -1
  1076. package/dist/components/tooltip/Tooltip.d.ts +4 -1
  1077. package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
  1078. package/dist/components/tooltip/Tooltip.js +5 -2
  1079. package/dist/components/tooltip/Tooltip.js.map +2 -2
  1080. package/dist/components/tooltip.css +10 -3
  1081. package/dist/components.css +4 -42
  1082. package/dist/docs/README.md +154 -0
  1083. package/dist/docs/component-contract.md +224 -0
  1084. package/dist/docs/component-index.json +1095 -0
  1085. package/dist/docs/{accessible-icon.md → components/accessible-icon.md} +1 -8
  1086. package/dist/docs/{accordion.md → components/accordion.md} +1 -8
  1087. package/dist/docs/{alert-dialog.md → components/alert-dialog.md} +2 -9
  1088. package/dist/docs/{alert.md → components/alert.md} +1 -8
  1089. package/dist/docs/{article-nodes.md → components/article-nodes.md} +0 -2
  1090. package/dist/docs/{aspect-ratio.md → components/aspect-ratio.md} +1 -8
  1091. package/dist/docs/{avatar.md → components/avatar.md} +1 -8
  1092. package/dist/docs/{badge.md → components/badge.md} +10 -17
  1093. package/dist/docs/components/banner.md +152 -0
  1094. package/dist/docs/{blockquote.md → components/blockquote.md} +3 -8
  1095. package/dist/docs/{box.md → components/box.md} +2 -9
  1096. package/dist/docs/{breadcrumb.md → components/breadcrumb.md} +1 -8
  1097. package/dist/docs/{button-group.md → components/button-group.md} +5 -11
  1098. package/dist/docs/{button.md → components/button.md} +22 -23
  1099. package/dist/docs/{calendar.md → components/calendar.md} +1 -8
  1100. package/dist/docs/{callout.md → components/callout.md} +1 -8
  1101. package/dist/docs/{card.md → components/card.md} +7 -9
  1102. package/dist/docs/{carousel.md → components/carousel.md} +60 -42
  1103. package/dist/docs/{chart.md → components/chart.md} +71 -24
  1104. package/dist/docs/{checkbox-cards.md → components/checkbox-cards.md} +1 -6
  1105. package/dist/docs/{checkbox-group.md → components/checkbox-group.md} +1 -8
  1106. package/dist/docs/{checkbox.md → components/checkbox.md} +5 -8
  1107. package/dist/docs/{code-input.md → components/code-input.md} +0 -7
  1108. package/dist/docs/{code.md → components/code.md} +11 -18
  1109. package/dist/docs/{collapsible.md → components/collapsible.md} +1 -8
  1110. package/dist/docs/{color-picker.md → components/color-picker.md} +1 -8
  1111. package/dist/docs/{color-swatch.md → components/color-swatch.md} +9 -10
  1112. package/dist/docs/{combobox.md → components/combobox.md} +31 -31
  1113. package/dist/docs/{command.md → components/command.md} +7 -12
  1114. package/dist/docs/{comment-thread.md → components/comment-thread.md} +0 -2
  1115. package/dist/docs/{config-drawer.md → components/config-drawer.md} +13 -14
  1116. package/dist/docs/{container.md → components/container.md} +3 -10
  1117. package/dist/docs/{context-menu.md → components/context-menu.md} +2 -12
  1118. package/dist/docs/{copy-button.md → components/copy-button.md} +10 -17
  1119. package/dist/docs/{copy-field.md → components/copy-field.md} +2 -9
  1120. package/dist/docs/{data-list.md → components/data-list.md} +16 -11
  1121. package/dist/docs/components/data-table.md +349 -0
  1122. package/dist/docs/{date-picker.md → components/date-picker.md} +1 -8
  1123. package/dist/docs/{dialog.md → components/dialog.md} +7 -10
  1124. package/dist/docs/{direction-provider.md → components/direction-provider.md} +1 -7
  1125. package/dist/docs/{drawer.md → components/drawer.md} +3 -9
  1126. package/dist/docs/{dropdown-menu.md → components/dropdown-menu.md} +5 -14
  1127. package/dist/docs/{editable.md → components/editable.md} +4 -6
  1128. package/dist/docs/{em.md → components/em.md} +3 -8
  1129. package/dist/docs/{empty-state.md → components/empty-state.md} +4 -9
  1130. package/dist/docs/{field.md → components/field.md} +10 -14
  1131. package/dist/docs/{file-upload.md → components/file-upload.md} +33 -23
  1132. package/dist/docs/components/filter-bar.md +255 -0
  1133. package/dist/docs/{flex.md → components/flex.md} +2 -9
  1134. package/dist/docs/{floating-panel.md → components/floating-panel.md} +11 -16
  1135. package/dist/docs/{font-provider.md → components/font-provider.md} +23 -24
  1136. package/dist/docs/{form.md → components/form.md} +5 -10
  1137. package/dist/docs/{grid.md → components/grid.md} +2 -8
  1138. package/dist/docs/{heading.md → components/heading.md} +6 -11
  1139. package/dist/docs/{hover-card.md → components/hover-card.md} +4 -11
  1140. package/dist/docs/{icon-button.md → components/icon-button.md} +5 -9
  1141. package/dist/docs/{icon.md → components/icon.md} +1 -8
  1142. package/dist/docs/{input-group.md → components/input-group.md} +1 -8
  1143. package/dist/docs/{input-otp.md → components/input-otp.md} +6 -10
  1144. package/dist/docs/{input.md → components/input.md} +1 -8
  1145. package/dist/docs/{inset.md → components/inset.md} +1 -8
  1146. package/dist/docs/{item.md → components/item.md} +19 -21
  1147. package/dist/docs/{kbd.md → components/kbd.md} +3 -10
  1148. package/dist/docs/{label.md → components/label.md} +1 -8
  1149. package/dist/docs/{layout-props.md → components/layout-props.md} +2 -9
  1150. package/dist/docs/{link.md → components/link.md} +15 -22
  1151. package/dist/docs/{marquee.md → components/marquee.md} +3 -8
  1152. package/dist/docs/{menu.md → components/menu.md} +12 -15
  1153. package/dist/docs/{menubar.md → components/menubar.md} +3 -13
  1154. package/dist/docs/{metric.md → components/metric.md} +4 -8
  1155. package/dist/docs/{native-select.md → components/native-select.md} +19 -31
  1156. package/dist/docs/{navigation-menu.md → components/navigation-menu.md} +34 -36
  1157. package/dist/docs/{notification-center.md → components/notification-center.md} +3 -10
  1158. package/dist/docs/{number-input.md → components/number-input.md} +11 -12
  1159. package/dist/docs/{page-content.md → components/page-content.md} +1 -8
  1160. package/dist/docs/{page-header.md → components/page-header.md} +1 -8
  1161. package/dist/docs/{pagination.md → components/pagination.md} +89 -26
  1162. package/dist/docs/{password-input.md → components/password-input.md} +5 -11
  1163. package/dist/docs/components/phone-input.md +74 -0
  1164. package/dist/docs/{pills.md → components/pills.md} +7 -13
  1165. package/dist/docs/{popover.md → components/popover.md} +8 -12
  1166. package/dist/docs/{progress.md → components/progress.md} +1 -8
  1167. package/dist/docs/{prose.md → components/prose.md} +5 -3
  1168. package/dist/docs/{qr-code.md → components/qr-code.md} +16 -20
  1169. package/dist/docs/{quote.md → components/quote.md} +3 -8
  1170. package/dist/docs/{radio-cards.md → components/radio-cards.md} +1 -6
  1171. package/dist/docs/{radio-group.md → components/radio-group.md} +6 -10
  1172. package/dist/docs/{rating.md → components/rating.md} +3 -8
  1173. package/dist/docs/{resizable.md → components/resizable.md} +1 -8
  1174. package/dist/docs/{result.md → components/result.md} +6 -2
  1175. package/dist/docs/{rich-text-editor.md → components/rich-text-editor.md} +1 -8
  1176. package/dist/docs/{scroll-area.md → components/scroll-area.md} +1 -8
  1177. package/dist/docs/{search-bar.md → components/search-bar.md} +5 -11
  1178. package/dist/docs/{section.md → components/section.md} +1 -8
  1179. package/dist/docs/components/segmented-control.md +258 -0
  1180. package/dist/docs/{segmented-meter.md → components/segmented-meter.md} +1 -8
  1181. package/dist/docs/{select.md → components/select.md} +26 -31
  1182. package/dist/docs/{separator.md → components/separator.md} +1 -8
  1183. package/dist/docs/{shared.md → components/shared.md} +2 -7
  1184. package/dist/docs/{sidebar.md → components/sidebar.md} +90 -30
  1185. package/dist/docs/{skeleton.md → components/skeleton.md} +1 -8
  1186. package/dist/docs/{slider.md → components/slider.md} +1 -8
  1187. package/dist/docs/{slot.md → components/slot.md} +1 -8
  1188. package/dist/docs/{sonner.md → components/sonner.md} +2 -9
  1189. package/dist/docs/{sortable-list.md → components/sortable-list.md} +11 -2
  1190. package/dist/docs/{spinner.md → components/spinner.md} +9 -10
  1191. package/dist/docs/{stack.md → components/stack.md} +2 -9
  1192. package/dist/docs/{stat-card.md → components/stat-card.md} +6 -12
  1193. package/dist/docs/{status.md → components/status.md} +1 -6
  1194. package/dist/docs/{stepper.md → components/stepper.md} +2 -8
  1195. package/dist/docs/{strong.md → components/strong.md} +3 -8
  1196. package/dist/docs/{switch.md → components/switch.md} +1 -8
  1197. package/dist/docs/{tab-nav.md → components/tab-nav.md} +2 -7
  1198. package/dist/docs/{table-of-contents.md → components/table-of-contents.md} +0 -2
  1199. package/dist/docs/{table.md → components/table.md} +15 -13
  1200. package/dist/docs/{tabs.md → components/tabs.md} +1 -9
  1201. package/dist/docs/components/tag.md +90 -0
  1202. package/dist/docs/{tags-input.md → components/tags-input.md} +6 -6
  1203. package/dist/docs/components/text-area-field.md +183 -0
  1204. package/dist/docs/{text-area.md → components/text-area.md} +6 -11
  1205. package/dist/docs/{text-field.md → components/text-field.md} +9 -12
  1206. package/dist/docs/{text.md → components/text.md} +6 -11
  1207. package/dist/docs/{theme-panel.md → components/theme-panel.md} +4 -11
  1208. package/dist/docs/{theme-provider.md → components/theme-provider.md} +7 -13
  1209. package/dist/docs/{theme.md → components/theme.md} +9 -15
  1210. package/dist/docs/{time-picker.md → components/time-picker.md} +1 -8
  1211. package/dist/docs/{timeline.md → components/timeline.md} +10 -13
  1212. package/dist/docs/{toast.md → components/toast.md} +4 -11
  1213. package/dist/docs/{toggle-group.md → components/toggle-group.md} +3 -9
  1214. package/dist/docs/{toggle-tip.md → components/toggle-tip.md} +5 -10
  1215. package/dist/docs/{toggle.md → components/toggle.md} +1 -8
  1216. package/dist/docs/{toolbar.md → components/toolbar.md} +1 -8
  1217. package/dist/docs/{tooltip.md → components/tooltip.md} +4 -11
  1218. package/dist/docs/{tree-view.md → components/tree-view.md} +1 -6
  1219. package/dist/docs/{typography.md → components/typography.md} +9 -11
  1220. package/dist/docs/{visually-hidden.md → components/visually-hidden.md} +1 -7
  1221. package/dist/docs/consumer-guide.md +84 -31
  1222. package/dist/docs/theme-guide.md +20 -20
  1223. package/dist/flags.css +266 -0
  1224. package/dist/fonts.css +1 -0
  1225. package/dist/foundations/Typography.cjs.map +2 -2
  1226. package/dist/foundations/Typography.d.cts +1 -1
  1227. package/dist/foundations/Typography.d.cts.map +1 -1
  1228. package/dist/foundations/Typography.d.mts +1 -1
  1229. package/dist/foundations/Typography.d.mts.map +1 -1
  1230. package/dist/foundations/Typography.d.ts +1 -1
  1231. package/dist/foundations/Typography.d.ts.map +1 -1
  1232. package/dist/foundations/Typography.js.map +2 -2
  1233. package/dist/foundations/index.cjs +1 -0
  1234. package/dist/foundations/index.cjs.map +2 -2
  1235. package/dist/foundations/index.d.cts +1 -0
  1236. package/dist/foundations/index.d.cts.map +1 -1
  1237. package/dist/foundations/index.d.mts +1 -0
  1238. package/dist/foundations/index.d.mts.map +1 -1
  1239. package/dist/foundations/index.d.ts +1 -0
  1240. package/dist/foundations/index.d.ts.map +1 -1
  1241. package/dist/foundations/index.js +1 -0
  1242. package/dist/foundations/index.js.map +2 -2
  1243. package/dist/generated/tokens.cjs +67 -8
  1244. package/dist/generated/tokens.cjs.map +2 -2
  1245. package/dist/generated/tokens.d.cts.map +1 -1
  1246. package/dist/generated/tokens.d.mts.map +1 -1
  1247. package/dist/generated/tokens.d.ts.map +1 -1
  1248. package/dist/generated/tokens.js +67 -8
  1249. package/dist/generated/tokens.js.map +2 -2
  1250. package/dist/index.cjs +2 -0
  1251. package/dist/index.cjs.map +2 -2
  1252. package/dist/index.d.cts +1 -0
  1253. package/dist/index.d.cts.map +1 -1
  1254. package/dist/index.d.mts +1 -0
  1255. package/dist/index.d.mts.map +1 -1
  1256. package/dist/index.d.ts +1 -0
  1257. package/dist/index.d.ts.map +1 -1
  1258. package/dist/index.js +2 -0
  1259. package/dist/index.js.map +2 -2
  1260. package/dist/layout/Layout.cjs +6 -1
  1261. package/dist/layout/Layout.cjs.map +2 -2
  1262. package/dist/layout/Layout.d.cts.map +1 -1
  1263. package/dist/layout/Layout.d.mts.map +1 -1
  1264. package/dist/layout/Layout.d.ts.map +1 -1
  1265. package/dist/layout/Layout.js +6 -1
  1266. package/dist/layout/Layout.js.map +2 -2
  1267. package/dist/layout/layout.props.cjs +30 -40
  1268. package/dist/layout/layout.props.cjs.map +2 -2
  1269. package/dist/layout/layout.props.d.cts +3 -11
  1270. package/dist/layout/layout.props.d.cts.map +1 -1
  1271. package/dist/layout/layout.props.d.mts +3 -11
  1272. package/dist/layout/layout.props.d.mts.map +1 -1
  1273. package/dist/layout/layout.props.d.ts +3 -11
  1274. package/dist/layout/layout.props.d.ts.map +1 -1
  1275. package/dist/layout/layout.props.js +2 -11
  1276. package/dist/layout/layout.props.js.map +2 -2
  1277. package/dist/motion.css +512 -0
  1278. package/dist/reset.css +37 -0
  1279. package/dist/styles.css +5062 -1389
  1280. package/dist/tailwind.css +1 -1
  1281. package/dist/tokens.css +782 -359
  1282. package/dist/utilities.css +28 -3
  1283. package/package.json +130 -20
  1284. package/dist/components/sheet/Sheet.cjs +0 -269
  1285. package/dist/components/sheet/Sheet.cjs.map +0 -7
  1286. package/dist/components/sheet/Sheet.d.cts +0 -83
  1287. package/dist/components/sheet/Sheet.d.cts.map +0 -1
  1288. package/dist/components/sheet/Sheet.d.mts +0 -83
  1289. package/dist/components/sheet/Sheet.d.mts.map +0 -1
  1290. package/dist/components/sheet/Sheet.d.ts +0 -83
  1291. package/dist/components/sheet/Sheet.d.ts.map +0 -1
  1292. package/dist/components/sheet/Sheet.js +0 -244
  1293. package/dist/components/sheet/Sheet.js.map +0 -7
  1294. package/dist/components/sheet/sheet.props.cjs +0 -59
  1295. package/dist/components/sheet/sheet.props.cjs.map +0 -7
  1296. package/dist/components/sheet/sheet.props.d.cts +0 -52
  1297. package/dist/components/sheet/sheet.props.d.cts.map +0 -1
  1298. package/dist/components/sheet/sheet.props.d.mts +0 -52
  1299. package/dist/components/sheet/sheet.props.d.mts.map +0 -1
  1300. package/dist/components/sheet/sheet.props.d.ts +0 -52
  1301. package/dist/components/sheet/sheet.props.d.ts.map +0 -1
  1302. package/dist/components/sheet/sheet.props.js +0 -39
  1303. package/dist/components/sheet/sheet.props.js.map +0 -7
  1304. package/dist/components/sheet.css +0 -123
  1305. package/dist/docs/HIERARCHY.md +0 -29
  1306. package/dist/docs/component-roster.md +0 -224
  1307. package/dist/docs/component-spec-template.md +0 -256
  1308. package/dist/docs/data-table.md +0 -275
  1309. package/dist/docs/filter-bar.md +0 -77
  1310. package/dist/docs/index.md +0 -149
  1311. package/dist/docs/segmented-control.md +0 -211
  1312. package/dist/docs/sheet.md +0 -326
  1313. package/dist/docs/sidebar-guide.md +0 -732
@@ -3,13 +3,6 @@ title: EmptyState
3
3
  status: canonical
4
4
  category: Components
5
5
  archetype: composite
6
- package_path: packages/d4gger-design-system/src/components/emptyState/EmptyState.tsx
7
- css_path: packages/d4gger-design-system/src/styles/components/empty-state.css
8
- props_path: packages/d4gger-design-system/src/components/emptyState/emptyState.props.ts
9
- test_path: packages/d4gger-design-system/src/test/components/EmptyState.test.tsx
10
- demo_path: apps/playground/app/(themeable)/docs/[component]/page.tsx
11
- playground_registry_path: apps/playground/lib/registry/display.tsx
12
- playground_manifest_path: apps/playground/lib/component-manifest.ts
13
6
  depends_on:
14
7
  - Icon
15
8
  - Text
@@ -22,7 +15,7 @@ depends_on:
22
15
 
23
16
  `EmptyState` is deprecated but not removed. Its normal host delegates to `Result state="empty"` while preserving the `dsx-empty-state` class, size/variant attributes, unavailable/staleness behavior, and public import. New list-state work should use Result and distinguish `empty` from `no-results`.
24
17
 
25
- > Source of truth: the package source at `package_path`. The spec file mirrors the source. Edits to the spec must land in the source in the same change, or the QA flags will fire.
18
+ > Consumer note: this document describes public intent and contracts; the package TypeScript declarations are the exact API.
26
19
 
27
20
  ## Purpose
28
21
 
@@ -94,6 +87,7 @@ Rules:
94
87
  **Responsive behavior:**
95
88
 
96
89
  - The component does not write `@media` rules. `size` is single-value only.
90
+ - The root and header can shrink within the available width. Long titles and identifiers wrap in both the default Result host and the legacy `asChild` host.
97
91
 
98
92
  **Reduced motion:**
99
93
 
@@ -159,7 +153,7 @@ The component is static.
159
153
 
160
154
  **Naming:**
161
155
 
162
- - `title` is the accessible name of the section. The description provides supplementary context. The action's accessible name is the consumer's responsibility.
156
+ - `title` provides the visible heading; it does not automatically name the section. Consumers use `aria-labelledby` or `aria-label` when a named region is needed. The action's accessible name is the consumer's responsibility.
163
157
 
164
158
  ## Playground demo spec
165
159
 
@@ -203,6 +197,7 @@ The component is static.
203
197
 
204
198
  - `Icon`, `Text`, `Button`: the typical content of the illustration, description, and action slots. EmptyState does not import any of these; the consumer supplies the nodes.
205
199
  - `@radix-ui/react-slot`: enables `asChild` on the root.
200
+ - `Result`: supplies the normal section host with `state="empty"`; the legacy `asChild` path uses Slot directly.
206
201
  - `Card` is not composed; the base card surface is inherited through the CSS import (`@import '../../_internal/baseCard.css'`) so the EmptyState background, border, and shadow resolve through the same tokens as `Card`.
207
202
 
208
203
  **Used by:**
@@ -3,13 +3,6 @@ title: Field
3
3
  status: canonical
4
4
  category: Components
5
5
  archetype: composite
6
- package_path: packages/d4gger-design-system/src/components/field/Field.tsx
7
- css_path: packages/d4gger-design-system/src/styles/components/field.css
8
- props_path: packages/d4gger-design-system/src/components/field/field.props.ts
9
- test_path: packages/d4gger-design-system/src/test/components/Field.test.tsx
10
- demo_path: apps/playground/app/(themeable)/docs/[component]/page.tsx
11
- playground_registry_path: apps/playground/lib/registry/forms.tsx
12
- playground_manifest_path: apps/playground/lib/component-manifest.ts
13
6
  depends_on:
14
7
  - Label (the `Field.Label` slot renders through the `Label` primitive for accessible `<label htmlFor>` association)
15
8
  - Text (the `Field.Description`, `Field.Error`, and `Field.Title` slots render through the `Text` primitive at the `body-medium` ramp; the runtime does not import `Text` as a value, it composes through it for the typography ramp only — see Anomalies)
@@ -18,7 +11,7 @@ depends_on:
18
11
 
19
12
  # Field
20
13
 
21
- > Source of truth: the package source at `package_path`. The spec file mirrors the source. Edits to the spec must land in the source in the same change, or the QA flags will fire.
14
+ > Consumer note: this document describes public intent and contracts; the package TypeScript declarations are the exact API.
22
15
 
23
16
  ## Purpose
24
17
 
@@ -49,9 +42,9 @@ The default form-control wrapper for the design repo. Pairs a label, a control r
49
42
  | Prop | Type | Default | Required | Description | Responsive |
50
43
  |---|---|---|---|---|---|
51
44
  | `asChild` | `boolean` | `false` | no | Renders the root through `Slot` from `@radix-ui/react-slot`. | no |
52
- | `invalid` | `boolean` | `false` | no | Marks the row as invalid. Writes `data-invalid="true"`, derives `data-state="invalid"`, and adds the `dsx-field-invalid` class. | no |
53
- | `disabled` | `boolean` | `false` | no | Marks the row as disabled. Writes `data-disabled="true"`, derives `data-state="disabled"`, and adds the `dsx-field-disabled` class. | no |
54
- | `orientation` | `'vertical' \| 'horizontal' \| 'responsive'` | `'vertical'` | no | Row layout. Writes `data-orientation` and the `dsx-field-orientation` class. The CSS uses the attribute to swap to a 2-column grid for `horizontal` and a responsive auto-fit grid for `responsive`. | no |
45
+ | `invalid` | `boolean` | `false` | no | Marks the row as invalid. Writes `data-invalid="true"` and derives `data-state="invalid"`. | no |
46
+ | `disabled` | `boolean` | `false` | no | Marks the row as disabled. Writes `data-disabled="true"` and derives `data-state="disabled"`. | no |
47
+ | `orientation` | `'vertical' \| 'horizontal' \| 'responsive'` | `'vertical'` | no | Row layout. Writes `data-orientation`. The CSS uses the attribute to swap to a 2-column grid for `horizontal` and a responsive auto-fit grid for `responsive`. | no |
55
48
  | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | no | Size of the row. Writes `data-size`. The CSS does not currently declare per-size rules; the attribute is the contract hook. | no |
56
49
  | (HTML div props) | n/a | n/a | no | All standard `<div>` attributes are forwarded. | no |
57
50
 
@@ -113,6 +106,7 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
113
106
  | Row gap | `var(--dsx-space-xs)` | Default row gap. |
114
107
  | Row min-width | `0` | Allows the grid to shrink. |
115
108
  | Horizontal label column | `minmax(var(--dsx-size-field-label-min), var(--dsx-size-field-label-max))` | Label column size for `horizontal` orientation. |
109
+ | Horizontal label alignment | `end` | Label text magnetizes toward the control in `horizontal` orientation. |
116
110
  | Horizontal row column gap | `var(--dsx-space-md)` | Row gap for `horizontal` orientation. |
117
111
  | Responsive column min | `var(--dsx-size-popover-min-width)` | Min column width for `responsive` orientation. |
118
112
  | Label color | `var(--dsx-color-on-surface)` | Default label. |
@@ -166,7 +160,7 @@ Rules:
166
160
 
167
161
  **Color and meaning:**
168
162
 
169
- - Invalid state is communicated by the `data-state="invalid"` attribute, the `data-invalid="true"` attribute, the `dsx-field-invalid` class, and the `Field.Error` slot. The label color also shifts to the error color, so the row does not rely on color alone.
163
+ - Invalid state is communicated by the `data-state="invalid"` attribute, the `data-invalid="true"` attribute, and the `Field.Error` slot. The label color also shifts to the error color, so the row does not rely on color alone.
170
164
 
171
165
  **Naming:**
172
166
 
@@ -176,11 +170,12 @@ Rules:
176
170
 
177
171
  **Default story:**
178
172
 
179
- - Renders `Field` with a label, an input, and a description. Asserts the root class is `dsx-field`, the label is bound to the input via `htmlFor`, and the description text is rendered.
173
+ - Renders `Field` with a label, an input, and a description. Asserts the root class is `dsx-field`, the label is bound to the input via `htmlFor`, and the description text is rendered. The matrix demo forwards the row's `size` (as the demo control's `density`), `disabled`, and `invalid` to the demo control so each axis reads visually; `Field` itself never sizes or disables children — that wiring is the consumer's composition.
180
174
 
181
175
  **Orientation story:**
182
176
 
183
- - Renders `Field` with `orientation="vertical"`, `orientation="horizontal"`, and `orientation="responsive"`. Asserts the matching `data-orientation` attribute is set on the root.
177
+ - Renders `Field` with `orientation="vertical"`, `orientation="horizontal"`, and `orientation="responsive"`. Asserts the matching `data-orientation` attribute is set on the root. The `horizontal` story asserts the label is end-aligned toward the control.
178
+ - The `responsive` orientation is an auto-fit grid: it needs room (wider than twice the 200px column minimum) and sibling controls to reflow. The fixture demonstrates it with a two-control dense row in a 640px container; a single control in a narrow container stacks exactly like `vertical` by design.
184
179
 
185
180
  **State story:**
186
181
 
@@ -221,6 +216,7 @@ Rules:
221
216
 
222
217
  - `Form` (per the roster's `Composed From` column) uses `Field` as its label, description, and error carrier. The `Form` runtime does not import `Field` directly; it composes the same primitives (`Label`, `Text`).
223
218
  - Every DS form-row spec (e.g. `Select`, `Combobox`, `InputOtp`) is intended to live inside `Field.Root` for label, description, and error wiring.
219
+ - See [form-ownership.md](./form-ownership.md) for the Field vs Form ownership diagram and nesting rules.
224
220
 
225
221
  **State boundaries:**
226
222
 
@@ -3,13 +3,6 @@ title: FileUpload
3
3
  status: canonical
4
4
  category: Components
5
5
  archetype: composite
6
- package_path: packages/d4gger-design-system/src/components/fileUpload/FileUpload.tsx
7
- css_path: packages/d4gger-design-system/src/styles/components/file-upload.css
8
- props_path: packages/d4gger-design-system/src/components/fileUpload/fileUpload.props.ts
9
- test_path: packages/d4gger-design-system/src/test/components/FileUpload.test.tsx
10
- demo_path: apps/playground/app/(themeable)/docs/[component]/page.tsx
11
- playground_registry_path: apps/playground/lib/registry/forms.tsx
12
- playground_manifest_path: apps/playground/lib/component-manifest.ts
13
6
  depends_on:
14
7
  - Card
15
8
  - EmptyState
@@ -17,15 +10,16 @@ depends_on:
17
10
  - Progress
18
11
  - Button
19
12
  - Icon
13
+ - react-dropzone
20
14
  ---
21
15
 
22
16
  # FileUpload
23
17
 
24
- > Source of truth: the package source at `package_path`. The spec file mirrors the source. Edits to the spec must land in the source in the same change, or the QA flags will fire.
18
+ > Consumer note: this document describes public intent and contracts; the package TypeScript declarations are the exact API.
25
19
 
26
20
  ## Purpose
27
21
 
28
- A card-based file selection surface with a dropzone, a list of file rows, and a progress bar per row. The dropzone is built on `EmptyState` and exposes a `dragging` data attribute, the list wraps `Item` rows that compose a `Progress` bar and an actions block, and the root is a `Card` so the whole surface fits the standard card surface treatment.
22
+ A card-based file selection surface with a dropzone, a list of file rows, and a progress bar per row. The dropzone is built on `EmptyState` and captures files through `react-dropzone` (optional peer) when `onFiles` is set — without `onFiles` it renders a visual-only shell with no file input. It exposes a `dragging` data attribute, the list wraps `Item` rows that compose a `Progress` bar and an actions block, and each row carries a `statusTone` (`muted`/`danger`) so failed uploads read in the error color. The root is a `Card` so the whole surface fits the standard card surface treatment.
29
23
 
30
24
  ## Anatomy & slots
31
25
 
@@ -36,9 +30,9 @@ A card-based file selection surface with a dropzone, a list of file rows, and a
36
30
  | Slot | Element | Renders | Notes |
37
31
  |---|---|---|---|
38
32
  | `FileUpload.Root` | `Card.Root` | card host | The surface container. Writes `data-size`. |
39
- | `FileUpload.Dropzone` | `EmptyState` (rendered through a `<section>`) | dropzone target with title, description, illustration, and action | Exposes `data-dragging` for the active drop state. |
33
+ | `FileUpload.Dropzone` | `EmptyState` (rendered through a `<section>`) | dropzone target with title, description, illustration, and action | Captures files via `react-dropzone` when `onFiles` is set (hidden input + drag events); visual-only shell otherwise. Exposes `data-dragging` for the active drop state. |
40
34
  | `FileUpload.List` | `<div>` | vertical list container | The list of `FileUpload.Item` rows. |
41
- | `FileUpload.Item` | `Item` | one file row with media, content, and actions | Composes `ItemMedia`, `ItemContent` (title, description, optional progress), and `ItemActions` (status, actions). |
35
+ | `FileUpload.Item` | `Item` | one file row with media, content, and actions | Composes `ItemMedia`, `ItemContent` (title, description, status, optional progress), and `ItemActions` (icon actions only). Writes `data-status-tone="danger"` when `statusTone` is `danger`; omits the attribute when `muted`. |
42
36
  | `FileUpload.Progress` | `<div>` wrapping `Progress` | progress bar + optional label | When `showValueLabel` is `true` and no `label` is provided, the progress label is ``${Math.round(value)}%``. |
43
37
 
44
38
  ## Props contract
@@ -62,6 +56,10 @@ A card-based file selection surface with a dropzone, a list of file rows, and a
62
56
  | `action` | `ReactNode` | `undefined` | no | Custom action element. Takes precedence over `actionLabel`. | no |
63
57
  | `actionLabel` | `ReactNode` | `undefined` | no | Default action label. When set without an explicit `action`, the dropzone renders a `Button` with `variant="outline"`. | no |
64
58
  | `onActionClick` | `MouseEventHandler<HTMLButtonElement>` | `undefined` | no | Default action click handler. | no |
59
+ | `accept` | `Accept` (`react-dropzone`) | `undefined` | no | Accepted MIME types / extensions forwarded to `useDropzone`. | no |
60
+ | `multiple` | `boolean` | `undefined` | no | When `true`, the hidden input and drop accept multiple files. | no |
61
+ | `capture` | `boolean \| 'user' \| 'environment'` | `undefined` | no | Mobile capture hint forwarded to the hidden input (`getInputProps`); pairs with `accept="image/*"` for direct camera capture. Omitted by default so desktop file dialogs are unaffected. | no |
62
+ | `onFiles` | `(files: File[]) => void` | `undefined` | no | File capture handler. When set, the dropzone mounts the hidden input and forwards drops and picks; when absent, the dropzone is a visual-only shell (`useDropzone` disabled, no input). | no |
65
63
  | `dragging` | `boolean` | `false` | no | Active drop state. Drives `data-dragging="true"`. | no |
66
64
  | `asChild` | `boolean` | `false` | no | Renders the dropzone through `Slot` from `@radix-ui/react-slot`. | no |
67
65
  | Standard `EmptyState` props | `EmptyStateProps` (without `action`, `description`, `illustration`, `title`) | n/a | no | The dropzone omits the four props it owns and forwards the rest. | no |
@@ -83,7 +81,8 @@ A card-based file selection surface with a dropzone, a list of file rows, and a
83
81
  | `icon` | `ReactNode` | `undefined` | no | Custom file icon. When `null`, the icon slot is hidden. Default is `Icon name="file" size="sm"`. | no |
84
82
  | `progress` | `number` | `undefined` | no | When a number, the item renders a `FileUpload.Progress` with this value. | no |
85
83
  | `progressLabel` | `ReactNode` | `undefined` | no | Custom progress label. Overrides the auto `${value}%` label. | no |
86
- | `status` | `ReactNode` | `undefined` | no | Status text rendered above the actions block. | no |
84
+ | `status` | `ReactNode` | `undefined` | no | Status text rendered in the content column under the description (name → meta → bar, icons alone on the right). | no |
85
+ | `statusTone` | `'muted' \| 'danger'` | `'muted'` | no | Status text tone. `danger` paints the status in the error color and writes `data-status-tone="danger"` on the item; `muted` keeps the quiet label and omits the attribute. | no |
87
86
  | `actions` | `ReactNode` | `undefined` | no | Action affordances rendered in the `ItemActions` block. | no |
88
87
  | `asChild` | `boolean` | `false` | no | Renders the item through `Slot`. | no |
89
88
  | Standard `Item` props | `Omit<ItemProps, 'children'>` | n/a | no | Forwarded. The interface omits `children` because the item composes its own. | no |
@@ -111,7 +110,8 @@ Rules:
111
110
  | Attribute | Allowed values | Class | CSS file |
112
111
  |---|---|---|---|
113
112
  | `data-size` | `sm`, `md`, `lg` | n/a (no size-specific root CSS today) | `file-upload.css` |
114
- | `data-dragging` | `true` | `.dsx-file-upload__dropzone[data-dragging='true']` border, background, and focus ring | `file-upload.css` |
113
+ | `data-dragging` | `true` | `.dsx-file-upload__dropzone[data-dragging='true']` thicker accent dashed border + active background (no ring) | `file-upload.css` |
114
+ | `data-status-tone` | `danger` (omitted when `muted`) | `.dsx-file-upload__item:where([data-status-tone='danger']) .dsx-file-upload__status` error color | `file-upload.css` |
115
115
 
116
116
  **Slot classes:**
117
117
 
@@ -149,13 +149,13 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
149
149
  | Root layout | `display: grid; gap: var(--dsx-space-md); width: 100%` | Surface layout. |
150
150
  | Dropzone width | `width: 100%` | Full width. |
151
151
  | Dropzone min-height | `calc(var(--dsx-size-4xl) * 2)` | Tall enough to invite a drop. |
152
- | Dropzone border | `var(--dsx-border-width-sm)` dashed `var(--dsx-color-outline-variant)` | Resting edge. |
152
+ | Dropzone border | `var(--dsx-border-width-md)` dashed `var(--dsx-color-outline)` | Resting edge, visible against the sunken fill. |
153
153
  | Dropzone radius | `var(--dsx-rounded-lg)` | Round corners. |
154
154
  | Dropzone background | `var(--dsx-color-surface-sunken)` | Sunken surface. |
155
155
  | Dropzone transition | `var(--dsx-motion-duration-fast, 150ms)` + `var(--dsx-motion-easing-standard, ease)` | Border, background, and box-shadow transitions. |
156
- | Dropzone dragging border | `var(--dsx-color-primary)` | Active edge. |
156
+ | Dropzone dragging border | `var(--dsx-border-width-md)` dashed `var(--dsx-color-primary)` | Active edge — thicker and accent-colored, no ring, so the drag state never doubles the outline. |
157
157
  | Dropzone dragging background | `var(--dsx-color-high-contrast-container)` | Active fill. |
158
- | Dropzone dragging shadow | `var(--dsx-shadow-focus-ring)` | Active focus ring. |
158
+ | Dropzone keyboard focus | `var(--dsx-shadow-focus-ring)` on `:focus-visible` | The ring belongs to keyboard focus, not to the drag state. |
159
159
  | Dropzone icon color | `var(--dsx-color-primary)` | Active affordance color. |
160
160
  | Item icon size | `var(--dsx-size-lg)` square | Round icon slot. |
161
161
  | Item icon color | `var(--dsx-color-on-surface-variant)` | Quiet icon. |
@@ -166,6 +166,7 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
166
166
  | Progress width | `width: 100%` | Full row width. |
167
167
  | Progress label/status typography | `var(--dsx-typography-label-small-*)` | Small label ramp. |
168
168
  | Progress label/status color | `var(--dsx-color-on-surface-variant)` | Quiet label. |
169
+ | Failed status color | `var(--dsx-color-error)` | Error tone, gated behind `data-status-tone="danger"` so `muted` rows never pay for it. |
169
170
 
170
171
  ## Motion contract
171
172
 
@@ -188,7 +189,7 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
188
189
 
189
190
  **Focus:**
190
191
 
191
- - The dropzone relies on the underlying `EmptyState` and `Button` focus rules. The `data-dragging='true'` state adds the focus ring to the dropzone as a visual cue.
192
+ - The dropzone relies on the underlying `EmptyState` and `Button` focus rules. Keyboard focus paints `var(--dsx-shadow-focus-ring)` via `:focus-visible`; the `data-dragging='true'` state instead thickens the dashed border to the accent color, so drag feedback and focus feedback never stack into a double outline.
192
193
 
193
194
  **Reduced motion:**
194
195
 
@@ -200,7 +201,7 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
200
201
 
201
202
  **Naming:**
202
203
 
203
- - The dropzone should expose an accessible name via its `title` prop. The default action button labels itself through the `actionLabel` prop. Each `FileUpload.Item` is named by its `fileName` content.
204
+ - The dropzone should expose an accessible name via its `title` prop. The default action button labels itself through the `actionLabel` prop. Each `FileUpload.Item` is named by its `fileName` content. Row actions are consumer-owned — the recommended pattern is ghost `IconButton`s (`trash` for remove, `redo` for retry) with `aria-label`s naming the file, as the playground fixture demonstrates.
204
205
 
205
206
  ## Playground demo spec
206
207
 
@@ -218,7 +219,11 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
218
219
 
219
220
  **Composition story:**
220
221
 
221
- - Renders the full surface: dropzone, list, two items. The first item has a `progress={42}` and a `progressLabel="Uploading…"`. The second item has a `status="Complete"` and an `actions={<Button>Remove</Button>}`. Asserts each slot renders with the right class, the progress bar renders with the rounded percentage, and the actions block sits at the right edge.
222
+ - Renders the full surface: dropzone, list, three items. The first item has a `progress={42}` with no label (the meta line carries the numbers, as in the reference). The second item has a `status="Complete"` and a ghost `IconButton` trash remove action. The third item has a `status="Upload failed"` with `statusTone="danger"` and ghost `IconButton` redo retry + trash remove actions. Asserts each slot renders with the right class, the progress bar renders, the failed row writes `data-status-tone="danger"`, and the actions block sits at the right edge with icons only.
223
+
224
+ **Live capture story:**
225
+
226
+ - Renders `FileUploadLiveCapture`: a `multiple` dropzone with `onFiles` feeding a simulated upload list (interval-driven `progress` with reference-style `"X MB | Y% • Z sec left"` descriptions), an "Or upload from URL" `Input` + `Upload` `Button` composition appending completed rows, ghost `IconButton` row actions (trash remove always, redo retry on failed rows — retry resets the row to 0%), a fail preview (files with "fail" in the name fail at 60%), and a Cancel / Attach-files footer. Covered by `tests/file-upload.spec.ts` (drag capture, browse capture, zero console issues).
222
227
 
223
228
  **A11y story:**
224
229
 
@@ -239,22 +244,27 @@ Every CSS value the component paints is a `var(--dsx-*)` token.
239
244
 
240
245
  - `Card`: the root extends `CardProps` and renders through `Card.Root`.
241
246
  - `EmptyState`: the dropzone extends `EmptyStateProps` and renders through `EmptyState`.
247
+ - `react-dropzone` (optional peer `>=14`, declared in `peerDependencies`): the dropzone forwards `accept`, `multiple`, and `onDrop → onFiles` to `useDropzone`. Consumers install it only when they use file capture; the visual-only shell never touches it. The hidden input carries an `aria-label` derived from the dropzone `title`.
242
248
  - `Item` and its subcomponents: the file row composes `ItemMedia`, `ItemContent`, `ItemTitle`, `ItemDescription`, and `ItemActions`.
243
249
  - `Progress`: the progress block composes the package `Progress` primitive.
244
250
  - `Button`: the default dropzone action renders through `Button` with `variant="outline"`.
245
251
  - `Icon` (lucide-react `upload`, `file`): the default illustrations.
246
252
  - `@radix-ui/react-slot`: enables `asChild` on the root, dropzone, list, and item hosts.
247
253
 
254
+ **Composed by consumers (not DS slots):**
255
+
256
+ - URL upload (`Input` + `Button` appending a completed row) and modal shells with Cancel / Attach-files footers are app composition. The playground `FileUploadLiveCapture` fixture demonstrates both against the same list state.
257
+
248
258
  **Used by:**
249
259
 
250
260
  - Form specs that need a managed file picker. Apps own the file selection pipeline, the upload progress source, the onAction click handler, and the actual upload transport.
251
261
 
252
262
  **State boundaries:**
253
263
 
254
- - Owned by FileUpload: the root card surface, the dropzone presentation, the file row layout, the progress block, and the auto `${value}%` label derivation.
255
- - Owned by the consumer: the file list, the upload progress source, the dropzone click handler, the drag state (`dragging` is a controlled boolean), the per-item `fileName` and `description`, and the surrounding form context.
264
+ - Owned by FileUpload: the root card surface, the dropzone presentation, the file capture engine (drag events, keyboard activation, hidden input) while `onFiles` is set, the file row layout, the progress block, the `statusTone` derivation, and the auto `${value}%` label derivation.
265
+ - Owned by the consumer: the file list, the upload progress source and transport, the dropzone click handler, the forced drag state (`dragging` is a controlled boolean layered over the engine's own active state), the per-item `fileName` and `description`, URL fetching, and the surrounding form or dialog context.
256
266
 
257
267
  **Boundary rules:**
258
268
 
259
- - App-owned data: the files, the upload pipeline, the drag detection (the package does not implement drag-and-drop, only the visual `dragging` state), the validation, and the persisted references.
260
- - DS-owned visuals: the surface, the dropzone, the list, the item, the progress block, the icons, the labels, and the size token.
269
+ - App-owned data: the files, the upload pipeline, the validation, the persisted references, URL fetching, and transport-level progress.
270
+ - DS-owned visuals and capture: the surface, the dropzone, the drag-and-drop plus browse capture engine, the list, the item, the progress block, the icons, the labels, the `statusTone`, and the size token.
@@ -0,0 +1,255 @@
1
+ ---
2
+ title: FilterBar
3
+ status: canonical
4
+ category: Components
5
+ archetype: composite
6
+ depends_on:
7
+ - Toolbar
8
+ - Button
9
+ - IconButton
10
+ - Icon
11
+ - Pills
12
+ - Popover
13
+ - Select
14
+ - Input
15
+ - NumberInput
16
+ - TagsInput
17
+ - Badge
18
+ ---
19
+
20
+ # FilterBar
21
+
22
+ ## 2.6 contract
23
+
24
+ Root accepts optional `activeCount`. `FilterBar.Control` applies the same wrapper contract to search, select, date, and custom filters and writes `data-active`. `FilterBar.Count` reads the root count. `FilterBar.Clear` is disabled when an explicit active count is zero; omitting `activeCount` preserves the 2.5 uncontrolled compatibility behavior. `FilterBar.Search`, `FilterBar.Rules`, `FilterBar.Rule`, `FilterBar.ConditionGroup`, `FilterBar.Condition`, and `FilterBar.Builder` are additive slots: every pre-existing prop and slot keeps working unchanged.
25
+
26
+ ## Purpose
27
+
28
+ A product-agnostic filter system that organizes consumer-controlled filters three ways: the classic grouped-controls shell (search, select, date, custom filters plus summary, actions, clear), the first-class rule-builder composition (rule chips showing field/operator/value plus a field → operator → value → Apply builder popup), and the advanced-condition composition (AND/OR condition groups with nesting, per-condition trash delete, Clear all). Consumers own all filter values, reset logic, query execution, date-range policy, and domain fields. The DS owns layout, slots, accessible naming, Clear styling, the rule-chip presentation, and the builder popup shell.
29
+
30
+ ## Anatomy & slots
31
+
32
+ **Parent:** `FilterBar` (alias of `FilterBar.Root`).
33
+
34
+ | Slot | Element | Renders | Notes |
35
+ |---|---|---|---|
36
+ | `FilterBar.Root` | `div role="toolbar"` | `dsx-filter-bar` | Default accessible name is `Filters`. |
37
+ | `FilterBar.Group` | `div role="group"` | `dsx-filter-bar__group` | Groups related controls. |
38
+ | `FilterBar.Search` | `div` | `dsx-filter-bar__search` | Flex-growing search cell for the toolbar cluster. |
39
+ | `FilterBar.Rules` | `Pills (ul)` | `dsx-filter-bar__rules` + `dsx-pills` | Rule-chip cluster; accepts `size` (`sm`/`md`/`lg`, default `md`). Optional `maxVisible` collapses overflow behind `+N more` / `Show less` with an optional `Clear` (`onClearAll`). |
40
+ | `FilterBar.Rule` | `Pill (li)` | `dsx-filter-bar__rule` + `dsx-pill` | One rule chip: `field`/`operator`/`value`, optional `count`, remove, click-to-reopen. |
41
+ | `FilterBar.ConditionGroup` | `div` (+ `role="group"` when named) | `dsx-filter-bar__condition-group` | AND/OR condition group with nesting: combinator toggle, `Add condition` / `Add subgroup`, `Clear all`. Buttons render only for the handlers passed. |
42
+ | `FilterBar.Condition` | `div` | `dsx-filter-bar__condition` | One advanced condition: `field`/`operator`/`value`, optional `count`, click-to-reopen, trash delete (`onRemove`). |
43
+ | `FilterBar.ConditionEditor` | `div role="group"` | `dsx-filter-bar__condition-editor` | Docked BI-panel editor for condition trees that outgrow the Builder popup: field rail, operator/value config, Apply/New. |
44
+ | `FilterBar.Builder` | `Popover` | `dsx-filter-bar__builder` on the popup | Field → operator → value → Apply popup. |
45
+ | `FilterBar.Summary` | `div` | `dsx-filter-bar__summary` | Result/filter summary. |
46
+ | `FilterBar.Actions` | `div` | `dsx-filter-bar__actions` | Action cluster. |
47
+ | `FilterBar.Clear` | `Button` | `dsx-filter-bar__clear` | Styled callback only. |
48
+
49
+ ## Props contract
50
+
51
+ | Prop | Type | Default | Required | Description | Responsive |
52
+ |---|---|---|---|---|---|
53
+ | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | no | Toolbar density. | no |
54
+ | `aria-label` | `string` | `'Filters'` | no | Accessible toolbar name. | no |
55
+ | `className` | `string` | `undefined` | no | Appended root class. | no |
56
+
57
+ `FilterBar.Clear` accepts Button props and an optional `onClear: () => void`; its default children are `Clear filters`. All wrapper slots accept standard div attributes.
58
+
59
+ `FilterBar.Rules` accepts `size: 'sm' \| 'md' \| 'lg'` (default `'md'`) plus standard list attributes; it renders a `Pills` cluster so rule chips inherit the Pills contract. `maxVisible: number` collapses the cluster: only the first `maxVisible` chips render, followed by an overflow row with `+N more` (expands; `aria-label="Show N more filters"`, `aria-expanded`), `Show less` (collapses), and an optional `Clear` wired to `onClearAll` (rendered only when the handler is passed, `aria-label="Clear all filters"`). Expansion is controlled (`expanded` + `onExpandedChange`) or uncontrolled (`defaultExpanded`, default `false`). `showMoreLabel(hiddenCount)`, `showLessLabel`, and `clearAllLabel` override the overflow chrome. Omitting `maxVisible` preserves the flat chip list.
60
+
61
+ `FilterBar.Rule` accepts `field`, `operator`, `value` (`ReactNode`, typically strings), `count` (`ReactNode`, typically a number: per-option match count), `size` (default `'md'`), and `active`. `onRemove` adds the Pills removable affordance (omitting it hides the remove button); `onEdit` wraps the field/operator/value label in a button named `Edit filter: <field> <operator> <value>` that reopens the builder (click-to-reopen). Omitting `onEdit` renders static text. Extra children render after the label inside the chip.
62
+
63
+ `FilterBar.ConditionGroup` accepts `combinator: 'and' | 'or'` (default `'and'`) plus standard div attributes. `editor` docks a `FilterBar.ConditionEditor` inside the group card between the combinator and the rows, making one composed unit: the group owns add/remove/clear, the editor owns field/operator/value. `rowsLabel` (e.g. `Where:`) heads the row stack; `allLabel`/`anyLabel` (e.g. `All/Any of the following are true:`) head the combinator, falling back to `Match all`/`Match any` when only one is set. `gapCombinators` (one combinator per gap, index-aligned to children) with `onGapCombinatorChange` renders And/Or pills between rows for independent per-gap logic (react-querybuilder pattern) and replaces the header toggle; omitting it keeps the single group combinator. Grouping evaluation (e.g. AND-precedence) is consumer-owned. `onCombinatorChange` renders the AND/OR toggle (buttons with `aria-pressed` inside a group named by `combinatorLabel`, default `Match`); omitting it renders the combinator as static text. `onAddCondition`, `onAddSubgroup`, and `onClearAll` render `Add condition` / `Add subgroup` / `Clear all` (overridable via `addConditionLabel`, `addSubgroupLabel`, `clearAllLabel`); each button renders only when its handler is passed, so there are never dead controls. An empty group (no conditions or subgroups) renders the `emptyHint` line (default `No conditions yet — add one below.`) instead of a void, and writes `data-empty="true"` with a dashed frame. Nested groups indent through a rail (inset start border), not just a margin, so depth reads at a glance. Children are conditions (`FilterBar.Condition`) and nested `FilterBar.ConditionGroup`s to any depth. With an `aria-label` the group takes `role="group"`; without one it renders a plain div so unnamed groups never fail naming rules.
64
+
65
+ `FilterBar.Condition` accepts `field`, `operator`, `value` (`ReactNode`), optional `count`, and standard div attributes. An empty-string `value` renders an explicit `empty` pill (`data-empty="true"`) instead of blank space, in both `Condition` and `Rule`. `onEdit` wraps the label in a button named `Edit filter: <field> <operator> <value>` (click-to-reopen, same naming as `Rule`); `editLabel` overrides that name (needed when `value` is rich content rather than text). `dragProps` (spread onto the row root) enables native drag reorder and renders the grip handle; omitting it hides the grip. Passing `fields` with `onFieldChange`/`onOperatorChange`/`onValueChange` renders the row as live inline editors (field select, operator select, shared value renderer with `renderValue` support) instead of the display label — the Gyaan pattern; omitting `fields` keeps display mode with click-to-reopen. `onRemove` renders a trash `IconButton` (`aria-label` from `removeLabel`, default `Remove condition`); omitting it hides the delete affordance. Extra children render after the delete button.
66
+
67
+ `FilterBar.Builder` accepts `fields: Array<{ value: string; label?: ReactNode; type?: 'text' | 'number' | 'enum' | 'multi' | 'range' | 'date' | 'person'; operators?: string[]; options?: Array<{ value: string; label?: ReactNode }>; min?: number; max?: number; step?: number; renderValue?: (state: { value: string; onChange: (nextValue: string) => void; id: string }) => ReactNode }>` and an optional global `operators` fallback (default `is`, `is not`, `contains`, `does not contain`). The value editor resolves in order: `renderValue` when provided; a `Select` when `options` are present (or `type: 'enum'`); a `NumberInput` for `type: 'number'` (bridged to the string rule value); a `TagsInput` for `type: 'multi'` (values are comma-joined into the string rule value); a dual-thumb `Slider` for `type: 'range'` (value encodes as `"min..max"`, bounds from `min`/`max`/`step`, default `0`/`100`/`1`); otherwise a free-text `Input` (`date` hints `YYYY-MM-DD`, `person` hints a name). `date` and `person` are intentionally Input-backed in the package: `DatePicker` and `Combobox` carry optional peers the root barrel must not eagerly load, so consumers plug them through `renderValue` from their dedicated subpaths. `count` renders an active-count `Badge` inside the default `+ Add filter` trigger so the bar has one adhesive filter entry with its number attached. `initialRule` seeds the draft and is re-read every time the popup opens, so editing an existing rule is `initialRule={rule}` plus open state. Open state is controlled (`open` + `onOpenChange`) or uncontrolled (`defaultOpen`). `trigger` overrides the default `+ Add filter` outline button. Pass `trigger={null}` for a triggerless controlled popup (the click-to-reopen edit flow: `open` + `onOpenChange` with no visible trigger) — the popup anchors to a zero-size viewport-center span (`dsx-filter-bar__builder-anchor`), so it opens centered and clickable. `title` (default `Add filter`), `submitLabel` (default `Apply`), and `cancelLabel` (default `Cancel`) override the popup chrome. `onApply(rule: { field; operator; value })` fires on Apply; `onCancel` fires on Cancel. Apply stays disabled until field and operator are chosen; Apply and Cancel both close the popup.
68
+
69
+ ## Density scale
70
+
71
+ All three sizes render explicit rules through `--dsx-filter-bar-*` custom properties (selected with `:where([data-size])` so specificity stays at the policy baseline):
72
+
73
+ | Size | Padding | Gap | Control height | Summary type |
74
+ |---|---|---|---|---|
75
+ | `sm` | `space-sm` | `space-xs` | `density-control-height-sm` | `label-small` |
76
+ | `md` | `space-md` | `space-sm` | `density-control-height` | `body-small` |
77
+ | `lg` | `space-lg` | `space-md` | `density-control-height-lg` | `body-medium` |
78
+
79
+ `FilterBar.Rules` stretches to the row control height so chips align with sibling controls. Pair `Rules`/`Rule` `size` with the root `size` so chips and shell step together.
80
+
81
+ Editable rule labels retain their typography and chip paint with a centered invisible hit layer at least `size-md` (24px) high. Static labels have no hit layer. The layer stays within the label's horizontal bounds so removal remains a separate action.
82
+
83
+ Inside FilterBar rules, the Pill remove button likewise has a centered invisible `size-md` floor in both dimensions; its icon paint stays unchanged and the button does not shrink as the label wraps. This scoped rule does not alter other Pills compositions.
84
+
85
+ Rules clusters and individual chips shrink within their parent. Label parts wrap intrinsically and long identifiers can break inside their part, preserving the separate remove button within the chip at narrow widths.
86
+
87
+ ## Rule-builder composition
88
+
89
+ The prescribed composition for structured filters (LemonSqueezy-style query builders):
90
+
91
+ ```tsx
92
+ <FilterBar activeCount={rules.length}>
93
+ <FilterBar.Search>{/* search input, consumer-owned */}</FilterBar.Search>
94
+ <FilterBar.Rules>
95
+ {rules.map((rule) => (
96
+ <FilterBar.Rule
97
+ key={rule.id}
98
+ field={rule.fieldLabel}
99
+ operator={rule.operator}
100
+ value={rule.valueLabel}
101
+ onRemove={() => removeRule(rule.id)}
102
+ onEdit={() => editRule(rule)}
103
+ />
104
+ ))}
105
+ </FilterBar.Rules>
106
+ <FilterBar.Builder fields={fieldDefs} initialRule={editingRule} onApply={applyRule} />
107
+ <FilterBar.Summary>{summary}</FilterBar.Summary>
108
+ <FilterBar.Actions>{/* toolbar cluster */}</FilterBar.Actions>
109
+ </FilterBar>
110
+ ```
111
+
112
+ Rule chips belong to the Pills family per the F6 cardinality rule (Tag = lone dismissible chip, Pills = selectable cluster): `Rule` renders a `Pill` with `removable`, never a `Tag`. The builder popup renders a `Popover` whose title wires the popup's accessible name. Consumers own rule state, field definitions, and what Apply executes; the DS owns chip presentation, popup layout, and the field → operator → value step order.
113
+
114
+ ## Advanced-condition composition
115
+
116
+ The prescribed composition for Gyaan-style advanced filters (AND/OR groups with nesting):
117
+
118
+ ```tsx
119
+ const [group, setGroup] = useState<ConditionGroupState>({ combinator: 'and', conditions: [...], subgroups: [...] })
120
+
121
+ <FilterBar>
122
+ <FilterBar.ConditionGroup
123
+ aria-label="Advanced conditions"
124
+ combinator={group.combinator}
125
+ onCombinatorChange={(next) => setGroup({ ...group, combinator: next })}
126
+ onAddCondition={addCondition}
127
+ onAddSubgroup={addSubgroup}
128
+ onClearAll={clearGroup}
129
+ >
130
+ {group.conditions.map((cond) => (
131
+ <FilterBar.Condition
132
+ key={cond.id}
133
+ field={labelFor(cond.field)}
134
+ operator={cond.operator}
135
+ value={cond.value}
136
+ onRemove={() => removeCondition(cond.id)}
137
+ />
138
+ ))}
139
+ {group.subgroups.map((sub, i) => (
140
+ <FilterBar.ConditionGroup key={sub.id} aria-label={`Subgroup ${i + 1}`} /* ...same handlers, nested */ />
141
+ ))}
142
+ </FilterBar.ConditionGroup>
143
+ </FilterBar>
144
+ ```
145
+
146
+ Conditions reuse the rule part presentation (`field`/`operator`/`value` spans) but render as group rows with trash delete instead of Pills remove, so the Pill remove affordance and the condition trash affordance never compete. Consumers own the group tree, combinator state, and what Add/Clear executes; the DS owns group layout, nesting indent, toggle presentation, and the action row.
147
+
148
+ ## Condition editor (docked BI panel)
149
+
150
+ For condition trees that outgrow the Builder popup, `FilterBar.ConditionEditor` docks the editor beside the accumulation surface instead of floating it: a field rail (one button per field def, `aria-pressed` on the active field) on the left, the selected field's operator select plus its value editor on the right, Apply/New beneath. It accepts `fields` (same shape as `Builder`), a controlled `draft` (`{ field, operator, value }`) with `onDraftChange`, an `operators` fallback, `title` (default `Condition editor`), `submitLabel` (default `Apply`), and `newLabel` (default `New`); `onApply` fires Apply (disabled until field and operator are set), `onNew` fires New and renders the New button only when passed — omit it when the hosting group already offers Add condition, so there is exactly one entry point. The operator/value editors are the same internals as the Builder popup — typed editors, `renderValue` hatch, and range encoding behave identically in both. The editor is a single slot (no sub-slots): the value-editor machinery stays internal so the two surfaces cannot drift. Consumers own the draft and what Apply/New executes; the DS owns rail/config/actions layout, the framed card surface, and the named `Condition editor` group.
151
+
152
+ ## Checked-filter pills with counts and overflow
153
+
154
+ The drill-down multi-select pattern (counts per option, collapse, clear) on the Rules cluster:
155
+
156
+ ```tsx
157
+ <FilterBar.Rules aria-label="Checked filters" maxVisible={2} onClearAll={clearChecked}>
158
+ {checked.map((f) => (
159
+ <FilterBar.Rule key={f.id} field={f.field} operator={f.operator} value={f.value} count={f.count} onRemove={() => uncheck(f.id)} />
160
+ ))}
161
+ </FilterBar.Rules>
162
+ ```
163
+
164
+ `count` paints the per-option match count after the value. Past `maxVisible`, the cluster collapses behind `+N more` with `Show less` to collapse and `Clear` to reset. Faceted drill-down with select-all stays DataTable-owned (`DataTable.FacetedFilter`); this pattern covers the standalone-bar equivalent without duplicating it.
165
+
166
+ ## Toolbar cluster prescription
167
+
168
+ The shared toolbar cluster, in order: search (`FilterBar.Search`), Columns control (DataTable-owned, see below), Filters button with active-count `Badge`, Export action. The order and behavior are shared with `DataTable.Toolbar`; only the host differs.
169
+
170
+ - Search flex-grows (`flex: 1 1 12rem`) and collapses first on narrow widths.
171
+ - The Filters button carries a `Badge` count (`FilterBar.Count` reads the root `activeCount` for the same number) and opens the filter surface; it is never a second clear affordance.
172
+ - Export is a plain action; it never mutates filter state.
173
+
174
+ ## FilterBar vs DataTable.Toolbar
175
+
176
+ `FilterBar` is the standalone bar for custom surfaces: consumer-composed controls, rule chips, and actions with no table attached. `DataTable.Toolbar` is the built-in shell toolbar: search, column visibility, export, and row counts wired to table state (`Search`, `ColumnVisibility`, `Export`, `RowCount`). Use `FilterBar` when the surface is custom; use `DataTable.Toolbar` when the table owns the query. Columns visibility and faceted drill-down multi-select (counts per option, select-all) stay DataTable-owned (`ColumnVisibility`, `FacetedFilter`) and are deliberately not re-implemented here — the toolbar cluster prescription above references them without duplicating them.
177
+
178
+ ## FilterBar → DataTable bridge
179
+
180
+ Rules are consumer state; `DataTable` consumes them through its controlled filter/search/sort props. The connection story, worked through:
181
+
182
+ ```tsx
183
+ // 1. FilterBar owns the rule drafts (consumer state, never table state).
184
+ const [rules, setRules] = useState<FilterRule[]>([])
185
+ const [query, setQuery] = useState('')
186
+ const [sort, setSort] = useState<{ sortBy: string; sortOrder: 'asc' | 'desc' } | null>(null)
187
+
188
+ // 2. Translate rules into the table's faceted-filter shape
189
+ // (DataTableFacetedFilterState: { columnId, accessorKey, selectedValues: Set<string> }).
190
+ const facetedFilters = rules.map((rule) => ({
191
+ columnId: rule.field,
192
+ accessorKey: rule.field,
193
+ selectedValues: new Set([rule.value]),
194
+ }))
195
+
196
+ // 3. Feed the table; take sort/search back out of it.
197
+ <DataTable
198
+ columns={columns}
199
+ data={rows}
200
+ facetedFilters={facetedFilters}
201
+ onFacetedFiltersChange={(next) => setRules(fromFaceted(next))}
202
+ sortBy={sort?.sortBy}
203
+ sortOrder={sort?.sortOrder}
204
+ onSortChange={(sortBy, sortOrder) => setSort({ sortBy, sortOrder })}
205
+ />
206
+ <FilterBar activeCount={rules.length}>
207
+ {/* rule chips + builder writing `rules`, search writing `query` */}
208
+ </FilterBar>
209
+ ```
210
+
211
+ Direction of travel: FilterBar → consumer state → DataTable props. The table never reads FilterBar slots, and FilterBar never reads table state; the consumer's translation layer (`rules ↔ facetedFilters`) is the only coupling. Sort travels the same road (controlled `sortBy`/`sortOrder`/`onSortChange`). Search stays consumer-side (`FilterBar.Search` writes `query`): client-side apps filter rows with `rules + query` together, and server-side apps send the translated state (`facetedFilters`, `sortBy`/`sortOrder`, `query`) as their query params instead of filtering client-side.
212
+
213
+ ## Composition recipes (app-owned, documented here)
214
+
215
+ - **Single-filter backends.** When the API accepts one filter, the Builder's `onApply` replaces instead of appends (`setRules([rule])`), and `Rules` renders at most one chip. No Builder prop changes; the cardinality lives in consumer state.
216
+ - **Searchable enums.** Enum fields past ~7 options switch the value editor from `Select` to `Combobox` (list search) via `renderValue`. Below the threshold the built-in `Select` applies.
217
+ - **Refine entry with count.** The `Builder` `count` prop badges the default `+ Add filter` trigger, giving the bar one adhesive filter entry with its number attached. Pair with a view switcher (`SegmentedControl`) and a result count (`FilterBar.Summary`) for the Refine | View | Count trio — composed by the app, never a new slot.
218
+ - **BI-panel advanced builder.** For AND/OR condition trees that outgrow the popup, dock the editor beside the accumulation surface instead of floating it: a field rail (one button per field def) on the left, the selected field's operator select plus its `renderValue` editor on the right, Apply/Cancel beneath, and the `ConditionGroup` rows as the top-to-bottom accumulation below or beside. Row click loads the condition into the panel (selected state); trash removes in place. Every typed editor is reused through `renderValue`, so date/person/number/range behave identically in the panel and the popup. No new slots — arrangement only.
219
+
220
+ ## CSS class contract
221
+
222
+ Root `dsx-filter-bar` writes `data-size`. Slot classes are `dsx-filter-bar__group`, `__search`, `__rules`, `__rule`, `__condition-group`, `__condition`, `__summary`, `__actions`, and `__clear`. Rule parts are `dsx-filter-bar__rule-label`, `__rule-field`, `__rule-operator`, `__rule-value` (empty string renders an `empty` pill via `data-empty="true"`), and `__rule-count` (shared by `Rule` and `Condition`); an `active` rule writes `data-active` on the chip. Rules overflow is `dsx-filter-bar__rules-overflow`. Condition-group parts are `__condition-combinator`, `__condition-combinator-label`, `__condition-match-label` (Any/All sentence header), `__condition-children`, `__condition-rows-label` (`Where:` head), `__condition-empty` (hint line for childless groups, which also write `data-empty="true"`), `__condition`, `__condition-label`, and `__condition-actions`; condition rows prepend `__condition-grip` when draggable and lay inline editors out as `__condition-field` / `__condition-operator` / `__condition-value`. Per-gap logic renders `__condition-gap` pill rows between children. nesting indents through a rail (inset start border on the descendant selector), not a depth attribute. Condition rows are full-width flex top-to-bottom: the label grows (long values ellipsize) and the trash delete pins to the right edge. Builder parts are `dsx-filter-bar__builder`, `__builder-anchor` (triggerless centering span), `__builder-field`, `__builder-label`, `__builder-actions`. Condition-editor parts are `dsx-filter-bar__condition-editor` (framed card, `role="group"` named by `title`), `__condition-editor-title`, `__condition-editor-body` (rail + config grid), `__condition-editor-fields` (rail), `__condition-editor-config`, `__condition-editor-field`, `__condition-editor-label`, `__condition-editor-actions`. The editor writes no `data-*` attributes; the rail's active field is `aria-pressed` on the button. The Builder's field/operator/value selects ride the shared nested floating tier (see the contract in `menu.md`): the Builder popup is a `Popover` host, so its option lists escalate to `modal + 2` automatically via `dsx-menu__nested` — the round-3 scoped `dsx-filter-bar__builder-select` override is retired. Rule parts render in the chip font throughout (field, operator, and value share one weight; the operator is distinguished by `on-surface-variant` color only). The shell uses flex wrapping without embedded product breakpoints. No new `data-variant`, `data-accent-color`, `data-radius`, or `data-high-contrast` attributes are written by FilterBar source (Pills, Badge, Popover, Select, Input, IconButton, Icon, and Button write their own in their files), so the component-contract profile stays size-only.
223
+
224
+ ## Token mapping
225
+
226
+ | Property | Token | Role |
227
+ |---|---|---|
228
+ | Gap/padding | `--dsx-filter-bar-gap` / `--dsx-filter-bar-padding` (per-size: `space-xs`–`space-md` / `space-sm`–`space-lg`) | Responsive wrapping rhythm |
229
+ | Border | `var(--dsx-control-separator-color)` | Muted toolbar edge |
230
+ | Background | `var(--dsx-color-surface-raised)` | Toolbar surface |
231
+ | Radius | `var(--dsx-rounded-lg)` | Shell roundness |
232
+ | Control height | `--dsx-filter-bar-control-height` (`density-control-height-sm` / `-height` / `-height-lg`) | Row alignment for chips |
233
+ | Summary type | per-size `label-small` / `body-small` / `body-medium` | Density-matched summary |
234
+ | Rule operator/label | `on-surface-variant`, chip font throughout | Chip part hierarchy |
235
+ | Builder label | `on-surface-variant`, `label-small` | Popup field labels |
236
+
237
+ ## Motion contract
238
+
239
+ No motion. The builder popup inherits the Popover motion contract (reduced-motion aware); rule chips have no transitions.
240
+
241
+ ## Accessibility
242
+
243
+ The root is a named toolbar. Tab order follows DOM order and controls retain their own semantics; FilterBar does not implement roving focus because it may contain form controls. Groups may provide their own accessible names. Clear is a native button and never mutates sibling controls automatically. Rule chips render in a list (`Rules` is a `ul`, including the overflow row which is an `li`); the remove affordance is the Pills remove button and the edit affordance is a named button (`Edit filter: field operator value`), so both are keyboard-reachable with no nested-interactive violation. Condition groups take `role="group"` only when named via `aria-label`; the AND/OR toggle is an `aria-pressed` button pair, the overflow `+N more` carries `aria-expanded` with a counted label, and condition delete is a named trash button (`Remove condition` by default). The builder popup is a Popover with a title-wired accessible name; its field/operator/value controls are labelled (visible label spans for the selects, native label for the value input).
244
+
245
+ ## Playground demo spec
246
+
247
+ The orders workspace separates three consumer-defined bands: search plus the Add filter/More command group; applied rules followed immediately by one Clear filters action; and a passive results count. The applied band exists only while a query or condition is active. Clear resets the query, simple rules, advanced conditions, selection, and page, then hides the emptied advanced editor. Its position follows the labels rather than the far edge of the results row. Advanced conditions have an editable/removable summary chip even while their editor is hidden; hiding that editor does not disable applied conditions. A group's Clear conditions action resets only that group. Advanced filters and Export live in the More menu at every width. Group slots accept layout styles for these full-width bands; the package does not invent a width-driven mode. Search clamps its minimum to the available width. Related commands stay together, with intrinsic wrapping as the containment fallback.
248
+
249
+ Research: [PatternFly toolbar guidelines](https://www.patternfly.org/components/toolbar/design-guidelines/) group related controls and use overflow for secondary actions. Local Primer Table's named filter/actions regions and ActionBar's grouping/overflow model informed the composition; see the data-stream decisions for pinned source references.
250
+
251
+ Show ONE complete workspace in the live example: a 28-row orders dataset (text, person, status, currency, date, tag columns) with FilterBar query + typed rule Builder, removable and editable rule chips, a toggleable advanced AND/OR condition group wired to the same rows, a passive selectable DataTable payload with bulk actions and the DataTable pagination footer. The workspace Builder plugs `renderValue` with the `DatePicker` (Placed) and `Combobox` (Owner) dedicated subpaths — the package stays Input-backed per barrel policy; rule chips display owner labels while rule state keeps raw values. The workspace DataTable sets `wrapScrollArea` so the 7-column table scrolls internally at narrow widths and the bar wraps into clean rows instead of stretching past the viewport. Consumer-owned `query`, rules, and group tree filter the same dataset; the summary counts visible rows (`N of M orders`); Export downloads those rows with a count label; Clear resets query, rules, group, selection, and page. The result table uses `showToolbar={false}` so the FilterBar is the only tool zone, with `selectionMode="multiple"` so the bulk bar proves itself against live filters. Use a ten-row page to make filtering and pagination directly testable. The dataset-empty state is proven on the DataTable route; the workspace proves the filtered-empty state with its Clear recovery. Advanced condition-group and overflow mechanics stay unit-tested component capabilities; the workspace additionally wires one live group tree.
252
+
253
+ ## Wiring notes
254
+
255
+ Consumers own all filter values, rule state, field definitions, reset logic, query execution, date-range policy, and domain fields. The DS owns only layout, slots, accessible naming, Clear styling, rule-chip presentation, and the builder popup shell. Drill-down multi-select with per-option counts and select-all is owned by `DataTable.FacetedFilter`; column visibility is owned by `DataTable.Toolbar.ColumnVisibility`.
@@ -3,20 +3,13 @@ title: Flex
3
3
  status: canonical
4
4
  category: Foundations
5
5
  archetype: layout-primitive
6
- package_path: packages/d4gger-design-system/src/components/flex/Flex.tsx
7
- css_path: packages/d4gger-design-system/src/styles/components/flex.css
8
- props_path: packages/d4gger-design-system/src/layout/layout.props.ts
9
- test_path: packages/d4gger-design-system/src/test/components/Flex.test.tsx
10
- demo_path: apps/playground/app/(themeable)/docs/[component]/page.tsx
11
- playground_registry_path: apps/playground/lib/registry/layout.tsx
12
- playground_manifest_path: apps/playground/lib/component-manifest.ts
13
6
  depends_on:
14
7
  - Box
15
8
  ---
16
9
 
17
10
  # Flex
18
11
 
19
- > Source of truth: the package source at `package_path`. The spec mirrors the source. Edits to the spec must land in the source in the same change, or the QA flags will fire.
12
+ > Consumer note: this document describes public intent and contracts; the package TypeScript declarations are the exact API.
20
13
 
21
14
  ## Purpose
22
15
 
@@ -80,7 +73,7 @@ The runtime also produces the same set of classes for the `align`, `justify`, an
80
73
  | `data-align` | serialized `ResponsiveValue` of `align` | Visual value |
81
74
  | `data-justify` | serialized `ResponsiveValue` of `justify` | Visual value |
82
75
 
83
- The `dsx-flex` selector sets `display: var(--dsx-box-display, flex)` so the default Flex container is `display: flex`.
76
+ The `dsx-flex` selector sets `display: var(--dsx-box-display, flex)` so the default Flex container is `display: flex`. It also consumes the `--dsx-flex-direction`, `--dsx-flex-align`, `--dsx-flex-justify`, and `--dsx-flex-wrap` custom properties written through `FLEX_PROP_DEFS` (for example by `Container` flex props), with `row` / `stretch` / `flex-start` / `nowrap` fallbacks. The canonical `Flex` component itself renders the `dsx-r-fd-*` / `dsx-r-ai-*` / `dsx-r-jc-*` / `dsx-r-fw-*` utility classes, which load after `flex.css` and win at equal specificity; the custom-property path is the fallback for `extractLayoutProps` consumers that do not emit those classes.
84
77
 
85
78
  **Slot classes:** none. Flex is a flat export.
86
79