@dashforge/tw 1.0.0 → 1.1.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 (692) hide show
  1. package/CHANGELOG.md +241 -0
  2. package/README.md +74 -15
  3. package/dist/index.d.ts +1 -146
  4. package/dist/index.esm.js +3127 -748
  5. package/dist/src/components/Alert/Alert.d.ts +65 -0
  6. package/dist/src/components/Alert/Alert.d.ts.map +1 -0
  7. package/dist/src/components/Alert/alert.types.d.ts +130 -0
  8. package/dist/src/components/Alert/alert.types.d.ts.map +1 -0
  9. package/dist/src/components/Alert/alert.variants.d.ts +85 -0
  10. package/dist/src/components/Alert/alert.variants.d.ts.map +1 -0
  11. package/dist/src/components/Avatar/Avatar.d.ts +48 -0
  12. package/dist/src/components/Avatar/Avatar.d.ts.map +1 -0
  13. package/dist/src/components/Avatar/avatar.types.d.ts +162 -0
  14. package/dist/src/components/Avatar/avatar.types.d.ts.map +1 -0
  15. package/dist/src/components/Avatar/avatar.variants.d.ts +208 -0
  16. package/dist/src/components/Avatar/avatar.variants.d.ts.map +1 -0
  17. package/dist/src/components/Badge/Badge.d.ts +63 -0
  18. package/dist/src/components/Badge/Badge.d.ts.map +1 -0
  19. package/dist/src/components/Badge/badge.types.d.ts +124 -0
  20. package/dist/src/components/Badge/badge.types.d.ts.map +1 -0
  21. package/dist/src/components/Badge/badge.variants.d.ts +262 -0
  22. package/dist/src/components/Badge/badge.variants.d.ts.map +1 -0
  23. package/dist/src/components/Box/Box.d.ts.map +1 -1
  24. package/dist/src/components/Box/box.types.d.ts +53 -0
  25. package/dist/src/components/Box/box.types.d.ts.map +1 -1
  26. package/dist/src/components/Button/Button.d.ts.map +1 -1
  27. package/dist/src/components/Button/button.types.d.ts +35 -0
  28. package/dist/src/components/Button/button.types.d.ts.map +1 -1
  29. package/dist/src/components/Card/Card.d.ts +107 -0
  30. package/dist/src/components/Card/Card.d.ts.map +1 -0
  31. package/dist/src/components/Card/card.types.d.ts +119 -0
  32. package/dist/src/components/Card/card.types.d.ts.map +1 -0
  33. package/dist/src/components/Chip/Chip.d.ts +67 -0
  34. package/dist/src/components/Chip/Chip.d.ts.map +1 -0
  35. package/dist/src/components/Chip/chip.types.d.ts +113 -0
  36. package/dist/src/components/Chip/chip.types.d.ts.map +1 -0
  37. package/dist/src/components/Chip/chip.variants.d.ts +155 -0
  38. package/dist/src/components/Chip/chip.variants.d.ts.map +1 -0
  39. package/dist/src/components/IconButton/IconButton.d.ts +57 -0
  40. package/dist/src/components/IconButton/IconButton.d.ts.map +1 -0
  41. package/dist/src/components/IconButton/iconButton.types.d.ts +96 -0
  42. package/dist/src/components/IconButton/iconButton.types.d.ts.map +1 -0
  43. package/dist/src/components/IconButton/iconButton.variants.d.ts +26 -0
  44. package/dist/src/components/IconButton/iconButton.variants.d.ts.map +1 -0
  45. package/dist/src/components/Menu/Menu.d.ts +118 -0
  46. package/dist/src/components/Menu/Menu.d.ts.map +1 -0
  47. package/dist/src/components/Menu/menu.types.d.ts +179 -0
  48. package/dist/src/components/Menu/menu.types.d.ts.map +1 -0
  49. package/dist/src/components/Menu/menu.variants.d.ts +129 -0
  50. package/dist/src/components/Menu/menu.variants.d.ts.map +1 -0
  51. package/dist/src/components/Snackbar/Snackbar.d.ts.map +1 -1
  52. package/dist/src/components/Snackbar/snackbar.types.d.ts +40 -3
  53. package/dist/src/components/Snackbar/snackbar.types.d.ts.map +1 -1
  54. package/dist/src/components/Snackbar/snackbar.variants.d.ts +12 -57
  55. package/dist/src/components/Snackbar/snackbar.variants.d.ts.map +1 -1
  56. package/dist/src/components/Spinner/Spinner.d.ts +44 -0
  57. package/dist/src/components/Spinner/Spinner.d.ts.map +1 -0
  58. package/dist/src/components/Spinner/spinner.types.d.ts +89 -0
  59. package/dist/src/components/Spinner/spinner.types.d.ts.map +1 -0
  60. package/dist/src/components/Spinner/spinner.variants.d.ts +111 -0
  61. package/dist/src/components/Spinner/spinner.variants.d.ts.map +1 -0
  62. package/dist/src/components/Table/cells/RenderChip.d.ts +15 -72
  63. package/dist/src/components/Table/cells/RenderChip.d.ts.map +1 -1
  64. package/dist/src/components/_shared/severity/index.d.ts +21 -0
  65. package/dist/src/components/_shared/severity/index.d.ts.map +1 -0
  66. package/dist/src/components/_shared/severity/severity.types.d.ts +48 -0
  67. package/dist/src/components/_shared/severity/severity.types.d.ts.map +1 -0
  68. package/dist/src/components/_shared/severity/severityIcons.d.ts +45 -0
  69. package/dist/src/components/_shared/severity/severityIcons.d.ts.map +1 -0
  70. package/dist/src/components/_shared/severity/severityVariants.d.ts +22 -0
  71. package/dist/src/components/_shared/severity/severityVariants.d.ts.map +1 -0
  72. package/dist/src/index.d.ts +27 -2
  73. package/dist/src/index.d.ts.map +1 -1
  74. package/package.json +9 -3
  75. package/.swcrc +0 -29
  76. package/A11Y.md +0 -130
  77. package/CONSUMER-VALIDATION.md +0 -130
  78. package/COVERAGE.md +0 -63
  79. package/LICENSE +0 -21
  80. package/PARITY.md +0 -481
  81. package/PERFORMANCE.md +0 -227
  82. package/REFINEMENT-NOTES.md +0 -50
  83. package/THEME-AUDIT.md +0 -174
  84. package/dist/components/Accordion/Accordion.d.ts +0 -21
  85. package/dist/components/Accordion/Accordion.d.ts.map +0 -1
  86. package/dist/components/Accordion/accordion.types.d.ts +0 -74
  87. package/dist/components/Accordion/accordion.types.d.ts.map +0 -1
  88. package/dist/components/Accordion/accordion.variants.d.ts +0 -58
  89. package/dist/components/Accordion/accordion.variants.d.ts.map +0 -1
  90. package/dist/components/AppShell/AppShell.d.ts +0 -46
  91. package/dist/components/AppShell/AppShell.d.ts.map +0 -1
  92. package/dist/components/AppShell/appShell.types.d.ts +0 -62
  93. package/dist/components/AppShell/appShell.types.d.ts.map +0 -1
  94. package/dist/components/AppShell/appShell.variants.d.ts +0 -65
  95. package/dist/components/AppShell/appShell.variants.d.ts.map +0 -1
  96. package/dist/components/AspectRatio/AspectRatio.d.ts +0 -36
  97. package/dist/components/AspectRatio/AspectRatio.d.ts.map +0 -1
  98. package/dist/components/AspectRatio/aspectRatio.types.d.ts +0 -50
  99. package/dist/components/AspectRatio/aspectRatio.types.d.ts.map +0 -1
  100. package/dist/components/Autocomplete/Autocomplete.d.ts +0 -32
  101. package/dist/components/Autocomplete/Autocomplete.d.ts.map +0 -1
  102. package/dist/components/Autocomplete/autocomplete.types.d.ts +0 -214
  103. package/dist/components/Autocomplete/autocomplete.types.d.ts.map +0 -1
  104. package/dist/components/Autocomplete/autocomplete.variants.d.ts +0 -214
  105. package/dist/components/Autocomplete/autocomplete.variants.d.ts.map +0 -1
  106. package/dist/components/Box/Box.d.ts +0 -36
  107. package/dist/components/Box/Box.d.ts.map +0 -1
  108. package/dist/components/Box/box.types.d.ts +0 -54
  109. package/dist/components/Box/box.types.d.ts.map +0 -1
  110. package/dist/components/Box/box.variants.d.ts +0 -402
  111. package/dist/components/Box/box.variants.d.ts.map +0 -1
  112. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +0 -23
  113. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +0 -1
  114. package/dist/components/Breadcrumbs/breadcrumbs.types.d.ts +0 -98
  115. package/dist/components/Breadcrumbs/breadcrumbs.types.d.ts.map +0 -1
  116. package/dist/components/Breadcrumbs/breadcrumbs.variants.d.ts +0 -85
  117. package/dist/components/Breadcrumbs/breadcrumbs.variants.d.ts.map +0 -1
  118. package/dist/components/Button/Button.d.ts +0 -44
  119. package/dist/components/Button/Button.d.ts.map +0 -1
  120. package/dist/components/Button/button.types.d.ts +0 -66
  121. package/dist/components/Button/button.types.d.ts.map +0 -1
  122. package/dist/components/Button/button.variants.d.ts +0 -104
  123. package/dist/components/Button/button.variants.d.ts.map +0 -1
  124. package/dist/components/Calendar/Calendar.d.ts +0 -14
  125. package/dist/components/Calendar/Calendar.d.ts.map +0 -1
  126. package/dist/components/Calendar/calendar.types.d.ts +0 -72
  127. package/dist/components/Calendar/calendar.types.d.ts.map +0 -1
  128. package/dist/components/Calendar/calendar.variants.d.ts +0 -99
  129. package/dist/components/Calendar/calendar.variants.d.ts.map +0 -1
  130. package/dist/components/Checkbox/Checkbox.d.ts +0 -31
  131. package/dist/components/Checkbox/Checkbox.d.ts.map +0 -1
  132. package/dist/components/Checkbox/checkbox.types.d.ts +0 -86
  133. package/dist/components/Checkbox/checkbox.types.d.ts.map +0 -1
  134. package/dist/components/Checkbox/checkbox.variants.d.ts +0 -109
  135. package/dist/components/Checkbox/checkbox.variants.d.ts.map +0 -1
  136. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts +0 -38
  137. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts.map +0 -1
  138. package/dist/components/ConfirmDialog/confirmDialog.types.d.ts +0 -80
  139. package/dist/components/ConfirmDialog/confirmDialog.types.d.ts.map +0 -1
  140. package/dist/components/ConfirmDialog/confirmDialog.variants.d.ts +0 -90
  141. package/dist/components/ConfirmDialog/confirmDialog.variants.d.ts.map +0 -1
  142. package/dist/components/Container/Container.d.ts +0 -35
  143. package/dist/components/Container/Container.d.ts.map +0 -1
  144. package/dist/components/Container/container.types.d.ts +0 -41
  145. package/dist/components/Container/container.types.d.ts.map +0 -1
  146. package/dist/components/Container/container.variants.d.ts +0 -93
  147. package/dist/components/Container/container.variants.d.ts.map +0 -1
  148. package/dist/components/DataGrid/DataGrid.d.ts +0 -29
  149. package/dist/components/DataGrid/DataGrid.d.ts.map +0 -1
  150. package/dist/components/DataGrid/dataGrid.types.d.ts +0 -214
  151. package/dist/components/DataGrid/dataGrid.types.d.ts.map +0 -1
  152. package/dist/components/DataGrid/dataGrid.variants.d.ts +0 -222
  153. package/dist/components/DataGrid/dataGrid.variants.d.ts.map +0 -1
  154. package/dist/components/DataGrid/filters/ColumnFilters.d.ts +0 -23
  155. package/dist/components/DataGrid/filters/ColumnFilters.d.ts.map +0 -1
  156. package/dist/components/DataGrid/reorder/useColumnReorder.d.ts +0 -50
  157. package/dist/components/DataGrid/reorder/useColumnReorder.d.ts.map +0 -1
  158. package/dist/components/DataGrid/resize/useColumnResize.d.ts +0 -39
  159. package/dist/components/DataGrid/resize/useColumnResize.d.ts.map +0 -1
  160. package/dist/components/DataGrid/visibility/ColumnVisibilityMenu.d.ts +0 -44
  161. package/dist/components/DataGrid/visibility/ColumnVisibilityMenu.d.ts.map +0 -1
  162. package/dist/components/DatePicker/DatePicker.d.ts +0 -14
  163. package/dist/components/DatePicker/DatePicker.d.ts.map +0 -1
  164. package/dist/components/DatePicker/datePicker.types.d.ts +0 -88
  165. package/dist/components/DatePicker/datePicker.types.d.ts.map +0 -1
  166. package/dist/components/DatePicker/datePicker.variants.d.ts +0 -97
  167. package/dist/components/DatePicker/datePicker.variants.d.ts.map +0 -1
  168. package/dist/components/DateRangePicker/DateRangePicker.d.ts +0 -13
  169. package/dist/components/DateRangePicker/DateRangePicker.d.ts.map +0 -1
  170. package/dist/components/DateRangePicker/dateRangePicker.types.d.ts +0 -85
  171. package/dist/components/DateRangePicker/dateRangePicker.types.d.ts.map +0 -1
  172. package/dist/components/DateRangePicker/dateRangePicker.variants.d.ts +0 -183
  173. package/dist/components/DateRangePicker/dateRangePicker.variants.d.ts.map +0 -1
  174. package/dist/components/DateTimePicker/DateTimePicker.d.ts +0 -13
  175. package/dist/components/DateTimePicker/DateTimePicker.d.ts.map +0 -1
  176. package/dist/components/DateTimePicker/dateTimePicker.types.d.ts +0 -90
  177. package/dist/components/DateTimePicker/dateTimePicker.types.d.ts.map +0 -1
  178. package/dist/components/DateTimePicker/dateTimePicker.variants.d.ts +0 -107
  179. package/dist/components/DateTimePicker/dateTimePicker.variants.d.ts.map +0 -1
  180. package/dist/components/Dialog/Dialog.d.ts +0 -17
  181. package/dist/components/Dialog/Dialog.d.ts.map +0 -1
  182. package/dist/components/Dialog/dialog.types.d.ts +0 -75
  183. package/dist/components/Dialog/dialog.types.d.ts.map +0 -1
  184. package/dist/components/Dialog/dialog.variants.d.ts +0 -80
  185. package/dist/components/Dialog/dialog.variants.d.ts.map +0 -1
  186. package/dist/components/Divider/Divider.d.ts +0 -50
  187. package/dist/components/Divider/Divider.d.ts.map +0 -1
  188. package/dist/components/Divider/divider.types.d.ts +0 -47
  189. package/dist/components/Divider/divider.types.d.ts.map +0 -1
  190. package/dist/components/Divider/divider.variants.d.ts +0 -129
  191. package/dist/components/Divider/divider.variants.d.ts.map +0 -1
  192. package/dist/components/Grid/Grid.d.ts +0 -32
  193. package/dist/components/Grid/Grid.d.ts.map +0 -1
  194. package/dist/components/Grid/grid.types.d.ts +0 -103
  195. package/dist/components/Grid/grid.types.d.ts.map +0 -1
  196. package/dist/components/Grid/grid.variants.d.ts +0 -453
  197. package/dist/components/Grid/grid.variants.d.ts.map +0 -1
  198. package/dist/components/LeftNav/LeftNav.d.ts +0 -34
  199. package/dist/components/LeftNav/LeftNav.d.ts.map +0 -1
  200. package/dist/components/LeftNav/leftNav.types.d.ts +0 -136
  201. package/dist/components/LeftNav/leftNav.types.d.ts.map +0 -1
  202. package/dist/components/LeftNav/leftNav.variants.d.ts +0 -143
  203. package/dist/components/LeftNav/leftNav.variants.d.ts.map +0 -1
  204. package/dist/components/NumberField/NumberField.d.ts +0 -18
  205. package/dist/components/NumberField/NumberField.d.ts.map +0 -1
  206. package/dist/components/NumberField/numberField.types.d.ts +0 -79
  207. package/dist/components/NumberField/numberField.types.d.ts.map +0 -1
  208. package/dist/components/NumberField/numberField.variants.d.ts +0 -169
  209. package/dist/components/NumberField/numberField.variants.d.ts.map +0 -1
  210. package/dist/components/OTPField/OTPField.d.ts +0 -25
  211. package/dist/components/OTPField/OTPField.d.ts.map +0 -1
  212. package/dist/components/OTPField/otpField.types.d.ts +0 -74
  213. package/dist/components/OTPField/otpField.types.d.ts.map +0 -1
  214. package/dist/components/OTPField/otpField.variants.d.ts +0 -105
  215. package/dist/components/OTPField/otpField.variants.d.ts.map +0 -1
  216. package/dist/components/Pagination/Pagination.d.ts +0 -32
  217. package/dist/components/Pagination/Pagination.d.ts.map +0 -1
  218. package/dist/components/Pagination/pagination.helpers.d.ts +0 -23
  219. package/dist/components/Pagination/pagination.helpers.d.ts.map +0 -1
  220. package/dist/components/Pagination/pagination.types.d.ts +0 -120
  221. package/dist/components/Pagination/pagination.types.d.ts.map +0 -1
  222. package/dist/components/Pagination/pagination.variants.d.ts +0 -150
  223. package/dist/components/Pagination/pagination.variants.d.ts.map +0 -1
  224. package/dist/components/Popover/Popover.d.ts +0 -15
  225. package/dist/components/Popover/Popover.d.ts.map +0 -1
  226. package/dist/components/Popover/popover.types.d.ts +0 -45
  227. package/dist/components/Popover/popover.types.d.ts.map +0 -1
  228. package/dist/components/Popover/popover.variants.d.ts +0 -34
  229. package/dist/components/Popover/popover.variants.d.ts.map +0 -1
  230. package/dist/components/RadioGroup/RadioGroup.d.ts +0 -35
  231. package/dist/components/RadioGroup/RadioGroup.d.ts.map +0 -1
  232. package/dist/components/RadioGroup/radioGroup.types.d.ts +0 -103
  233. package/dist/components/RadioGroup/radioGroup.types.d.ts.map +0 -1
  234. package/dist/components/RadioGroup/radioGroup.variants.d.ts +0 -166
  235. package/dist/components/RadioGroup/radioGroup.variants.d.ts.map +0 -1
  236. package/dist/components/Skeleton/Skeleton.d.ts +0 -23
  237. package/dist/components/Skeleton/Skeleton.d.ts.map +0 -1
  238. package/dist/components/Skeleton/skeleton.types.d.ts +0 -56
  239. package/dist/components/Skeleton/skeleton.types.d.ts.map +0 -1
  240. package/dist/components/Skeleton/skeleton.variants.d.ts +0 -110
  241. package/dist/components/Skeleton/skeleton.variants.d.ts.map +0 -1
  242. package/dist/components/Snackbar/Snackbar.d.ts +0 -37
  243. package/dist/components/Snackbar/Snackbar.d.ts.map +0 -1
  244. package/dist/components/Snackbar/snackbar.types.d.ts +0 -86
  245. package/dist/components/Snackbar/snackbar.types.d.ts.map +0 -1
  246. package/dist/components/Snackbar/snackbar.variants.d.ts +0 -153
  247. package/dist/components/Snackbar/snackbar.variants.d.ts.map +0 -1
  248. package/dist/components/Stack/Stack.d.ts +0 -24
  249. package/dist/components/Stack/Stack.d.ts.map +0 -1
  250. package/dist/components/Stack/stack.types.d.ts +0 -61
  251. package/dist/components/Stack/stack.types.d.ts.map +0 -1
  252. package/dist/components/Stack/stack.variants.d.ts +0 -163
  253. package/dist/components/Stack/stack.variants.d.ts.map +0 -1
  254. package/dist/components/Switch/Switch.d.ts +0 -15
  255. package/dist/components/Switch/Switch.d.ts.map +0 -1
  256. package/dist/components/Switch/switch.types.d.ts +0 -47
  257. package/dist/components/Switch/switch.types.d.ts.map +0 -1
  258. package/dist/components/Switch/switch.variants.d.ts +0 -105
  259. package/dist/components/Switch/switch.variants.d.ts.map +0 -1
  260. package/dist/components/Table/Table.d.ts +0 -24
  261. package/dist/components/Table/Table.d.ts.map +0 -1
  262. package/dist/components/Table/cells/RenderButton.d.ts +0 -13
  263. package/dist/components/Table/cells/RenderButton.d.ts.map +0 -1
  264. package/dist/components/Table/cells/RenderChip.d.ts +0 -80
  265. package/dist/components/Table/cells/RenderChip.d.ts.map +0 -1
  266. package/dist/components/Table/cells/RenderText.d.ts +0 -21
  267. package/dist/components/Table/cells/RenderText.d.ts.map +0 -1
  268. package/dist/components/Table/cells/RenderTwoLine.d.ts +0 -20
  269. package/dist/components/Table/cells/RenderTwoLine.d.ts.map +0 -1
  270. package/dist/components/Table/cells/RowActionsMenu.d.ts +0 -36
  271. package/dist/components/Table/cells/RowActionsMenu.d.ts.map +0 -1
  272. package/dist/components/Table/cells/index.d.ts +0 -11
  273. package/dist/components/Table/cells/index.d.ts.map +0 -1
  274. package/dist/components/Table/table.types.d.ts +0 -399
  275. package/dist/components/Table/table.types.d.ts.map +0 -1
  276. package/dist/components/Table/table.variants.d.ts +0 -285
  277. package/dist/components/Table/table.variants.d.ts.map +0 -1
  278. package/dist/components/Tabs/Tabs.d.ts +0 -19
  279. package/dist/components/Tabs/Tabs.d.ts.map +0 -1
  280. package/dist/components/Tabs/tabs.types.d.ts +0 -61
  281. package/dist/components/Tabs/tabs.types.d.ts.map +0 -1
  282. package/dist/components/Tabs/tabs.variants.d.ts +0 -82
  283. package/dist/components/Tabs/tabs.variants.d.ts.map +0 -1
  284. package/dist/components/Tabs/useTabs.d.ts +0 -55
  285. package/dist/components/Tabs/useTabs.d.ts.map +0 -1
  286. package/dist/components/TextField/TextField.d.ts +0 -25
  287. package/dist/components/TextField/TextField.d.ts.map +0 -1
  288. package/dist/components/TextField/textField.types.d.ts +0 -98
  289. package/dist/components/TextField/textField.types.d.ts.map +0 -1
  290. package/dist/components/TextField/textField.variants.d.ts +0 -166
  291. package/dist/components/TextField/textField.variants.d.ts.map +0 -1
  292. package/dist/components/Textarea/Textarea.d.ts +0 -16
  293. package/dist/components/Textarea/Textarea.d.ts.map +0 -1
  294. package/dist/components/Textarea/textarea.types.d.ts +0 -63
  295. package/dist/components/Textarea/textarea.types.d.ts.map +0 -1
  296. package/dist/components/Textarea/textarea.variants.d.ts +0 -197
  297. package/dist/components/Textarea/textarea.variants.d.ts.map +0 -1
  298. package/dist/components/TimePicker/TimePicker.d.ts +0 -12
  299. package/dist/components/TimePicker/TimePicker.d.ts.map +0 -1
  300. package/dist/components/TimePicker/timePicker.types.d.ts +0 -80
  301. package/dist/components/TimePicker/timePicker.types.d.ts.map +0 -1
  302. package/dist/components/TimePicker/timePicker.variants.d.ts +0 -103
  303. package/dist/components/TimePicker/timePicker.variants.d.ts.map +0 -1
  304. package/dist/components/Tooltip/Tooltip.d.ts +0 -29
  305. package/dist/components/Tooltip/Tooltip.d.ts.map +0 -1
  306. package/dist/components/Tooltip/tooltip.types.d.ts +0 -47
  307. package/dist/components/Tooltip/tooltip.types.d.ts.map +0 -1
  308. package/dist/components/Tooltip/tooltip.variants.d.ts +0 -34
  309. package/dist/components/Tooltip/tooltip.variants.d.ts.map +0 -1
  310. package/dist/components/TopBar/TopBar.d.ts +0 -33
  311. package/dist/components/TopBar/TopBar.d.ts.map +0 -1
  312. package/dist/components/TopBar/topBar.types.d.ts +0 -49
  313. package/dist/components/TopBar/topBar.types.d.ts.map +0 -1
  314. package/dist/components/TopBar/topBar.variants.d.ts +0 -79
  315. package/dist/components/TopBar/topBar.variants.d.ts.map +0 -1
  316. package/dist/components/Typography/Typography.d.ts +0 -42
  317. package/dist/components/Typography/Typography.d.ts.map +0 -1
  318. package/dist/components/Typography/typography.types.d.ts +0 -61
  319. package/dist/components/Typography/typography.types.d.ts.map +0 -1
  320. package/dist/components/Typography/typography.variants.d.ts +0 -167
  321. package/dist/components/Typography/typography.variants.d.ts.map +0 -1
  322. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +0 -42
  323. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +0 -1
  324. package/dist/components/VisuallyHidden/visuallyHidden.types.d.ts +0 -42
  325. package/dist/components/VisuallyHidden/visuallyHidden.types.d.ts.map +0 -1
  326. package/dist/components/_shared/data/getNestedValue.d.ts +0 -20
  327. package/dist/components/_shared/data/getNestedValue.d.ts.map +0 -1
  328. package/dist/components/_shared/data/useColumnAutoDetect.d.ts +0 -45
  329. package/dist/components/_shared/data/useColumnAutoDetect.d.ts.map +0 -1
  330. package/dist/components/_shared/data/useControllableState.d.ts +0 -23
  331. package/dist/components/_shared/data/useControllableState.d.ts.map +0 -1
  332. package/dist/components/_shared/data/useDebouncedValue.d.ts +0 -10
  333. package/dist/components/_shared/data/useDebouncedValue.d.ts.map +0 -1
  334. package/dist/components/_shared/data/useTableFilter.d.ts +0 -36
  335. package/dist/components/_shared/data/useTableFilter.d.ts.map +0 -1
  336. package/dist/components/_shared/data/useTableSearch.d.ts +0 -23
  337. package/dist/components/_shared/data/useTableSearch.d.ts.map +0 -1
  338. package/dist/components/_shared/data/useTableSelection.d.ts +0 -25
  339. package/dist/components/_shared/data/useTableSelection.d.ts.map +0 -1
  340. package/dist/components/_shared/data/useTableSort.d.ts +0 -20
  341. package/dist/components/_shared/data/useTableSort.d.ts.map +0 -1
  342. package/dist/components/_shared/data/useVirtualizer.d.ts +0 -107
  343. package/dist/components/_shared/data/useVirtualizer.d.ts.map +0 -1
  344. package/dist/components/_shared/resolveValidationState.d.ts +0 -42
  345. package/dist/components/_shared/resolveValidationState.d.ts.map +0 -1
  346. package/dist/hooks/useAccessState.d.ts +0 -37
  347. package/dist/hooks/useAccessState.d.ts.map +0 -1
  348. package/dist/index.d.ts.map +0 -1
  349. package/dist/tsconfig.lib.tsbuildinfo +0 -1
  350. package/dist/utils/cn.d.ts +0 -26
  351. package/dist/utils/cn.d.ts.map +0 -1
  352. package/eslint.config.mjs +0 -62
  353. package/project.json +0 -15
  354. package/rollup.config.cjs +0 -16
  355. package/src/components/Accordion/Accordion.test.tsx +0 -95
  356. package/src/components/Accordion/Accordion.tsx +0 -97
  357. package/src/components/Accordion/accordion.types.ts +0 -66
  358. package/src/components/Accordion/accordion.variants.ts +0 -32
  359. package/src/components/AppShell/AppShell.test.tsx +0 -223
  360. package/src/components/AppShell/AppShell.tsx +0 -239
  361. package/src/components/AppShell/appShell.types.ts +0 -49
  362. package/src/components/AppShell/appShell.variants.ts +0 -54
  363. package/src/components/AspectRatio/AspectRatio.test.tsx +0 -173
  364. package/src/components/AspectRatio/AspectRatio.tsx +0 -73
  365. package/src/components/AspectRatio/aspectRatio.types.ts +0 -54
  366. package/src/components/Autocomplete/Autocomplete.perf.test.tsx +0 -225
  367. package/src/components/Autocomplete/Autocomplete.test.tsx +0 -556
  368. package/src/components/Autocomplete/Autocomplete.tsx +0 -1069
  369. package/src/components/Autocomplete/autocomplete.types.ts +0 -198
  370. package/src/components/Autocomplete/autocomplete.variants.ts +0 -141
  371. package/src/components/Box/Box.test.tsx +0 -370
  372. package/src/components/Box/Box.tsx +0 -83
  373. package/src/components/Box/box.types.ts +0 -61
  374. package/src/components/Box/box.variants.ts +0 -230
  375. package/src/components/Breadcrumbs/Breadcrumbs.perf.test.tsx +0 -128
  376. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +0 -231
  377. package/src/components/Breadcrumbs/Breadcrumbs.tsx +0 -203
  378. package/src/components/Breadcrumbs/breadcrumbs.types.ts +0 -87
  379. package/src/components/Breadcrumbs/breadcrumbs.variants.ts +0 -54
  380. package/src/components/Button/Button.test.tsx +0 -183
  381. package/src/components/Button/Button.tsx +0 -150
  382. package/src/components/Button/button.types.ts +0 -74
  383. package/src/components/Button/button.variants.ts +0 -159
  384. package/src/components/Calendar/Calendar.test.tsx +0 -75
  385. package/src/components/Calendar/Calendar.tsx +0 -264
  386. package/src/components/Calendar/calendar.types.ts +0 -65
  387. package/src/components/Calendar/calendar.variants.ts +0 -64
  388. package/src/components/Checkbox/Checkbox.test.tsx +0 -146
  389. package/src/components/Checkbox/Checkbox.tsx +0 -286
  390. package/src/components/Checkbox/checkbox.types.ts +0 -88
  391. package/src/components/Checkbox/checkbox.variants.ts +0 -68
  392. package/src/components/ConfirmDialog/ConfirmDialog.perf.test.tsx +0 -172
  393. package/src/components/ConfirmDialog/ConfirmDialog.test.tsx +0 -311
  394. package/src/components/ConfirmDialog/ConfirmDialog.tsx +0 -252
  395. package/src/components/ConfirmDialog/confirmDialog.types.ts +0 -70
  396. package/src/components/ConfirmDialog/confirmDialog.variants.ts +0 -76
  397. package/src/components/Container/Container.test.tsx +0 -209
  398. package/src/components/Container/Container.tsx +0 -74
  399. package/src/components/Container/container.types.ts +0 -45
  400. package/src/components/Container/container.variants.ts +0 -81
  401. package/src/components/DataGrid/DataGrid.perf.test.tsx +0 -114
  402. package/src/components/DataGrid/DataGrid.test.tsx +0 -1153
  403. package/src/components/DataGrid/DataGrid.tsx +0 -1282
  404. package/src/components/DataGrid/dataGrid.types.ts +0 -238
  405. package/src/components/DataGrid/dataGrid.variants.ts +0 -152
  406. package/src/components/DataGrid/filters/ColumnFilters.test.tsx +0 -330
  407. package/src/components/DataGrid/filters/ColumnFilters.tsx +0 -456
  408. package/src/components/DataGrid/reorder/useColumnReorder.test.ts +0 -130
  409. package/src/components/DataGrid/reorder/useColumnReorder.ts +0 -144
  410. package/src/components/DataGrid/resize/useColumnResize.test.ts +0 -144
  411. package/src/components/DataGrid/resize/useColumnResize.ts +0 -135
  412. package/src/components/DataGrid/visibility/ColumnVisibilityMenu.tsx +0 -186
  413. package/src/components/DatePicker/DatePicker.test.tsx +0 -76
  414. package/src/components/DatePicker/DatePicker.tsx +0 -305
  415. package/src/components/DatePicker/datePicker.types.ts +0 -77
  416. package/src/components/DatePicker/datePicker.variants.ts +0 -50
  417. package/src/components/DateRangePicker/DateRangePicker.test.tsx +0 -92
  418. package/src/components/DateRangePicker/DateRangePicker.tsx +0 -510
  419. package/src/components/DateRangePicker/dateRangePicker.types.ts +0 -74
  420. package/src/components/DateRangePicker/dateRangePicker.variants.ts +0 -101
  421. package/src/components/DateTimePicker/DateTimePicker.test.tsx +0 -78
  422. package/src/components/DateTimePicker/DateTimePicker.tsx +0 -347
  423. package/src/components/DateTimePicker/dateTimePicker.types.ts +0 -79
  424. package/src/components/DateTimePicker/dateTimePicker.variants.ts +0 -55
  425. package/src/components/Dialog/Dialog.test.tsx +0 -96
  426. package/src/components/Dialog/Dialog.tsx +0 -102
  427. package/src/components/Dialog/dialog.types.ts +0 -62
  428. package/src/components/Dialog/dialog.variants.ts +0 -66
  429. package/src/components/Divider/Divider.test.tsx +0 -243
  430. package/src/components/Divider/Divider.tsx +0 -140
  431. package/src/components/Divider/divider.types.ts +0 -52
  432. package/src/components/Divider/divider.variants.ts +0 -116
  433. package/src/components/Grid/Grid.test.tsx +0 -321
  434. package/src/components/Grid/Grid.tsx +0 -148
  435. package/src/components/Grid/grid.types.ts +0 -112
  436. package/src/components/Grid/grid.variants.ts +0 -133
  437. package/src/components/LeftNav/LeftNav.perf.test.tsx +0 -172
  438. package/src/components/LeftNav/LeftNav.test.tsx +0 -302
  439. package/src/components/LeftNav/LeftNav.tsx +0 -330
  440. package/src/components/LeftNav/leftNav.types.ts +0 -120
  441. package/src/components/LeftNav/leftNav.variants.ts +0 -107
  442. package/src/components/NumberField/NumberField.test.tsx +0 -83
  443. package/src/components/NumberField/NumberField.tsx +0 -321
  444. package/src/components/NumberField/numberField.types.ts +0 -72
  445. package/src/components/NumberField/numberField.variants.ts +0 -94
  446. package/src/components/OTPField/OTPField.test.tsx +0 -121
  447. package/src/components/OTPField/OTPField.tsx +0 -250
  448. package/src/components/OTPField/otpField.types.ts +0 -58
  449. package/src/components/OTPField/otpField.variants.ts +0 -72
  450. package/src/components/Pagination/Pagination.test.tsx +0 -314
  451. package/src/components/Pagination/Pagination.tsx +0 -277
  452. package/src/components/Pagination/pagination.helpers.ts +0 -102
  453. package/src/components/Pagination/pagination.types.ts +0 -117
  454. package/src/components/Pagination/pagination.variants.ts +0 -117
  455. package/src/components/Popover/Popover.test.tsx +0 -72
  456. package/src/components/Popover/Popover.tsx +0 -55
  457. package/src/components/Popover/popover.types.ts +0 -42
  458. package/src/components/Popover/popover.variants.ts +0 -24
  459. package/src/components/RadioGroup/RadioGroup.test.tsx +0 -140
  460. package/src/components/RadioGroup/RadioGroup.tsx +0 -283
  461. package/src/components/RadioGroup/radioGroup.types.ts +0 -85
  462. package/src/components/RadioGroup/radioGroup.variants.ts +0 -87
  463. package/src/components/Skeleton/Skeleton.test.tsx +0 -127
  464. package/src/components/Skeleton/Skeleton.tsx +0 -49
  465. package/src/components/Skeleton/skeleton.types.ts +0 -59
  466. package/src/components/Skeleton/skeleton.variants.ts +0 -87
  467. package/src/components/Snackbar/Snackbar.perf.test.tsx +0 -144
  468. package/src/components/Snackbar/Snackbar.test.tsx +0 -327
  469. package/src/components/Snackbar/Snackbar.tsx +0 -298
  470. package/src/components/Snackbar/snackbar.types.ts +0 -83
  471. package/src/components/Snackbar/snackbar.variants.ts +0 -74
  472. package/src/components/Stack/Stack.test.tsx +0 -309
  473. package/src/components/Stack/Stack.tsx +0 -115
  474. package/src/components/Stack/stack.types.ts +0 -68
  475. package/src/components/Stack/stack.variants.ts +0 -80
  476. package/src/components/Switch/Switch.test.tsx +0 -131
  477. package/src/components/Switch/Switch.tsx +0 -158
  478. package/src/components/Switch/switch.types.ts +0 -36
  479. package/src/components/Switch/switch.variants.ts +0 -70
  480. package/src/components/Table/Table.perf.test.tsx +0 -81
  481. package/src/components/Table/Table.test.tsx +0 -674
  482. package/src/components/Table/Table.tsx +0 -863
  483. package/src/components/Table/cells/RenderButton.tsx +0 -23
  484. package/src/components/Table/cells/RenderChip.tsx +0 -100
  485. package/src/components/Table/cells/RenderText.tsx +0 -37
  486. package/src/components/Table/cells/RenderTwoLine.tsx +0 -34
  487. package/src/components/Table/cells/RowActionsMenu.tsx +0 -147
  488. package/src/components/Table/cells/cells.test.tsx +0 -247
  489. package/src/components/Table/cells/index.ts +0 -14
  490. package/src/components/Table/table.types.ts +0 -438
  491. package/src/components/Table/table.variants.ts +0 -207
  492. package/src/components/Tabs/Tabs.test.tsx +0 -145
  493. package/src/components/Tabs/Tabs.tsx +0 -77
  494. package/src/components/Tabs/tabs.types.ts +0 -55
  495. package/src/components/Tabs/tabs.variants.ts +0 -69
  496. package/src/components/Tabs/useTabs.ts +0 -167
  497. package/src/components/TextField/TextField.test.tsx +0 -198
  498. package/src/components/TextField/TextField.tsx +0 -245
  499. package/src/components/TextField/textField.types.ts +0 -90
  500. package/src/components/TextField/textField.variants.ts +0 -105
  501. package/src/components/Textarea/Textarea.test.tsx +0 -75
  502. package/src/components/Textarea/Textarea.tsx +0 -190
  503. package/src/components/Textarea/textarea.types.ts +0 -60
  504. package/src/components/Textarea/textarea.variants.ts +0 -85
  505. package/src/components/TimePicker/TimePicker.test.tsx +0 -65
  506. package/src/components/TimePicker/TimePicker.tsx +0 -274
  507. package/src/components/TimePicker/timePicker.types.ts +0 -69
  508. package/src/components/TimePicker/timePicker.variants.ts +0 -53
  509. package/src/components/Tooltip/Tooltip.test.tsx +0 -73
  510. package/src/components/Tooltip/Tooltip.tsx +0 -70
  511. package/src/components/Tooltip/tooltip.types.ts +0 -44
  512. package/src/components/Tooltip/tooltip.variants.ts +0 -28
  513. package/src/components/TopBar/TopBar.test.tsx +0 -129
  514. package/src/components/TopBar/TopBar.tsx +0 -66
  515. package/src/components/TopBar/topBar.types.ts +0 -42
  516. package/src/components/TopBar/topBar.variants.ts +0 -38
  517. package/src/components/Typography/Typography.test.tsx +0 -247
  518. package/src/components/Typography/Typography.tsx +0 -112
  519. package/src/components/Typography/typography.types.ts +0 -65
  520. package/src/components/Typography/typography.variants.ts +0 -130
  521. package/src/components/VisuallyHidden/VisuallyHidden.test.tsx +0 -86
  522. package/src/components/VisuallyHidden/VisuallyHidden.tsx +0 -59
  523. package/src/components/VisuallyHidden/visuallyHidden.types.ts +0 -45
  524. package/src/components/_shared/data/getNestedValue.test.ts +0 -50
  525. package/src/components/_shared/data/getNestedValue.ts +0 -32
  526. package/src/components/_shared/data/useColumnAutoDetect.test.ts +0 -123
  527. package/src/components/_shared/data/useColumnAutoDetect.ts +0 -100
  528. package/src/components/_shared/data/useControllableState.ts +0 -48
  529. package/src/components/_shared/data/useDebouncedValue.ts +0 -24
  530. package/src/components/_shared/data/useTableFilter.test.ts +0 -166
  531. package/src/components/_shared/data/useTableFilter.ts +0 -118
  532. package/src/components/_shared/data/useTableSearch.test.ts +0 -115
  533. package/src/components/_shared/data/useTableSearch.ts +0 -66
  534. package/src/components/_shared/data/useTableSelection.test.ts +0 -100
  535. package/src/components/_shared/data/useTableSelection.ts +0 -100
  536. package/src/components/_shared/data/useTableSort.test.ts +0 -150
  537. package/src/components/_shared/data/useTableSort.ts +0 -141
  538. package/src/components/_shared/data/useVirtualizer.test.ts +0 -158
  539. package/src/components/_shared/data/useVirtualizer.ts +0 -199
  540. package/src/components/_shared/resolveValidationState.ts +0 -60
  541. package/src/components/_shared/themeIdentity.test.ts +0 -113
  542. package/src/hooks/useAccessState.spec.tsx +0 -161
  543. package/src/hooks/useAccessState.ts +0 -81
  544. package/src/index.ts +0 -388
  545. package/src/utils/cn.spec.ts +0 -16
  546. package/src/utils/cn.ts +0 -29
  547. package/test-output/vitest/coverage/base.css +0 -224
  548. package/test-output/vitest/coverage/block-navigation.js +0 -87
  549. package/test-output/vitest/coverage/clover.xml +0 -2418
  550. package/test-output/vitest/coverage/coverage-final.json +0 -89
  551. package/test-output/vitest/coverage/favicon.png +0 -0
  552. package/test-output/vitest/coverage/index.html +0 -746
  553. package/test-output/vitest/coverage/prettify.css +0 -1
  554. package/test-output/vitest/coverage/prettify.js +0 -2
  555. package/test-output/vitest/coverage/sort-arrow-sprite.png +0 -0
  556. package/test-output/vitest/coverage/sorter.js +0 -210
  557. package/test-output/vitest/coverage/src/components/Accordion/Accordion.tsx.html +0 -376
  558. package/test-output/vitest/coverage/src/components/Accordion/accordion.variants.ts.html +0 -181
  559. package/test-output/vitest/coverage/src/components/Accordion/index.html +0 -131
  560. package/test-output/vitest/coverage/src/components/AppShell/AppShell.tsx.html +0 -802
  561. package/test-output/vitest/coverage/src/components/AppShell/appShell.variants.ts.html +0 -247
  562. package/test-output/vitest/coverage/src/components/AppShell/index.html +0 -131
  563. package/test-output/vitest/coverage/src/components/AspectRatio/AspectRatio.tsx.html +0 -304
  564. package/test-output/vitest/coverage/src/components/AspectRatio/index.html +0 -116
  565. package/test-output/vitest/coverage/src/components/Autocomplete/Autocomplete.tsx.html +0 -3292
  566. package/test-output/vitest/coverage/src/components/Autocomplete/autocomplete.variants.ts.html +0 -508
  567. package/test-output/vitest/coverage/src/components/Autocomplete/index.html +0 -131
  568. package/test-output/vitest/coverage/src/components/Box/Box.tsx.html +0 -334
  569. package/test-output/vitest/coverage/src/components/Box/box.variants.ts.html +0 -775
  570. package/test-output/vitest/coverage/src/components/Box/index.html +0 -131
  571. package/test-output/vitest/coverage/src/components/Breadcrumbs/Breadcrumbs.tsx.html +0 -694
  572. package/test-output/vitest/coverage/src/components/Breadcrumbs/breadcrumbs.variants.ts.html +0 -247
  573. package/test-output/vitest/coverage/src/components/Breadcrumbs/index.html +0 -131
  574. package/test-output/vitest/coverage/src/components/Button/Button.tsx.html +0 -535
  575. package/test-output/vitest/coverage/src/components/Button/button.variants.ts.html +0 -562
  576. package/test-output/vitest/coverage/src/components/Button/index.html +0 -131
  577. package/test-output/vitest/coverage/src/components/Checkbox/Checkbox.tsx.html +0 -943
  578. package/test-output/vitest/coverage/src/components/Checkbox/checkbox.variants.ts.html +0 -289
  579. package/test-output/vitest/coverage/src/components/Checkbox/index.html +0 -131
  580. package/test-output/vitest/coverage/src/components/ConfirmDialog/ConfirmDialog.tsx.html +0 -841
  581. package/test-output/vitest/coverage/src/components/ConfirmDialog/confirmDialog.variants.ts.html +0 -313
  582. package/test-output/vitest/coverage/src/components/ConfirmDialog/index.html +0 -131
  583. package/test-output/vitest/coverage/src/components/Container/Container.tsx.html +0 -307
  584. package/test-output/vitest/coverage/src/components/Container/container.variants.ts.html +0 -328
  585. package/test-output/vitest/coverage/src/components/Container/index.html +0 -131
  586. package/test-output/vitest/coverage/src/components/DataGrid/DataGrid.tsx.html +0 -3937
  587. package/test-output/vitest/coverage/src/components/DataGrid/dataGrid.variants.ts.html +0 -541
  588. package/test-output/vitest/coverage/src/components/DataGrid/filters/ColumnFilters.tsx.html +0 -1453
  589. package/test-output/vitest/coverage/src/components/DataGrid/filters/index.html +0 -116
  590. package/test-output/vitest/coverage/src/components/DataGrid/index.html +0 -131
  591. package/test-output/vitest/coverage/src/components/DataGrid/reorder/index.html +0 -116
  592. package/test-output/vitest/coverage/src/components/DataGrid/reorder/useColumnReorder.ts.html +0 -517
  593. package/test-output/vitest/coverage/src/components/DataGrid/resize/index.html +0 -116
  594. package/test-output/vitest/coverage/src/components/DataGrid/resize/useColumnResize.ts.html +0 -490
  595. package/test-output/vitest/coverage/src/components/DataGrid/visibility/ColumnVisibilityMenu.tsx.html +0 -592
  596. package/test-output/vitest/coverage/src/components/DataGrid/visibility/index.html +0 -116
  597. package/test-output/vitest/coverage/src/components/DateTimePicker/DateTimePicker.tsx.html +0 -1042
  598. package/test-output/vitest/coverage/src/components/DateTimePicker/dateTimePicker.variants.ts.html +0 -337
  599. package/test-output/vitest/coverage/src/components/DateTimePicker/index.html +0 -131
  600. package/test-output/vitest/coverage/src/components/Dialog/Dialog.tsx.html +0 -391
  601. package/test-output/vitest/coverage/src/components/Dialog/dialog.variants.ts.html +0 -283
  602. package/test-output/vitest/coverage/src/components/Dialog/index.html +0 -131
  603. package/test-output/vitest/coverage/src/components/Divider/Divider.tsx.html +0 -505
  604. package/test-output/vitest/coverage/src/components/Divider/divider.variants.ts.html +0 -433
  605. package/test-output/vitest/coverage/src/components/Divider/index.html +0 -131
  606. package/test-output/vitest/coverage/src/components/Grid/Grid.tsx.html +0 -529
  607. package/test-output/vitest/coverage/src/components/Grid/grid.variants.ts.html +0 -484
  608. package/test-output/vitest/coverage/src/components/Grid/index.html +0 -131
  609. package/test-output/vitest/coverage/src/components/LeftNav/LeftNav.tsx.html +0 -1075
  610. package/test-output/vitest/coverage/src/components/LeftNav/index.html +0 -131
  611. package/test-output/vitest/coverage/src/components/LeftNav/leftNav.variants.ts.html +0 -406
  612. package/test-output/vitest/coverage/src/components/NumberField/NumberField.tsx.html +0 -1048
  613. package/test-output/vitest/coverage/src/components/NumberField/index.html +0 -131
  614. package/test-output/vitest/coverage/src/components/NumberField/numberField.variants.ts.html +0 -367
  615. package/test-output/vitest/coverage/src/components/OTPField/OTPField.tsx.html +0 -835
  616. package/test-output/vitest/coverage/src/components/OTPField/index.html +0 -131
  617. package/test-output/vitest/coverage/src/components/OTPField/otpField.variants.ts.html +0 -301
  618. package/test-output/vitest/coverage/src/components/Pagination/Pagination.tsx.html +0 -916
  619. package/test-output/vitest/coverage/src/components/Pagination/index.html +0 -146
  620. package/test-output/vitest/coverage/src/components/Pagination/pagination.helpers.ts.html +0 -391
  621. package/test-output/vitest/coverage/src/components/Pagination/pagination.variants.ts.html +0 -436
  622. package/test-output/vitest/coverage/src/components/Popover/Popover.tsx.html +0 -250
  623. package/test-output/vitest/coverage/src/components/Popover/index.html +0 -131
  624. package/test-output/vitest/coverage/src/components/Popover/popover.variants.ts.html +0 -157
  625. package/test-output/vitest/coverage/src/components/RadioGroup/RadioGroup.tsx.html +0 -934
  626. package/test-output/vitest/coverage/src/components/RadioGroup/index.html +0 -131
  627. package/test-output/vitest/coverage/src/components/RadioGroup/radioGroup.variants.ts.html +0 -346
  628. package/test-output/vitest/coverage/src/components/Skeleton/Skeleton.tsx.html +0 -232
  629. package/test-output/vitest/coverage/src/components/Skeleton/index.html +0 -131
  630. package/test-output/vitest/coverage/src/components/Skeleton/skeleton.variants.ts.html +0 -346
  631. package/test-output/vitest/coverage/src/components/Snackbar/Snackbar.tsx.html +0 -979
  632. package/test-output/vitest/coverage/src/components/Snackbar/index.html +0 -131
  633. package/test-output/vitest/coverage/src/components/Snackbar/snackbar.variants.ts.html +0 -307
  634. package/test-output/vitest/coverage/src/components/Stack/Stack.tsx.html +0 -430
  635. package/test-output/vitest/coverage/src/components/Stack/index.html +0 -131
  636. package/test-output/vitest/coverage/src/components/Stack/stack.variants.ts.html +0 -325
  637. package/test-output/vitest/coverage/src/components/Switch/Switch.tsx.html +0 -559
  638. package/test-output/vitest/coverage/src/components/Switch/index.html +0 -131
  639. package/test-output/vitest/coverage/src/components/Switch/switch.variants.ts.html +0 -295
  640. package/test-output/vitest/coverage/src/components/Table/Table.tsx.html +0 -2677
  641. package/test-output/vitest/coverage/src/components/Table/cells/RenderButton.tsx.html +0 -154
  642. package/test-output/vitest/coverage/src/components/Table/cells/RenderChip.tsx.html +0 -385
  643. package/test-output/vitest/coverage/src/components/Table/cells/RenderText.tsx.html +0 -196
  644. package/test-output/vitest/coverage/src/components/Table/cells/RenderTwoLine.tsx.html +0 -187
  645. package/test-output/vitest/coverage/src/components/Table/cells/RowActionsMenu.tsx.html +0 -526
  646. package/test-output/vitest/coverage/src/components/Table/cells/index.html +0 -191
  647. package/test-output/vitest/coverage/src/components/Table/cells/index.ts.html +0 -127
  648. package/test-output/vitest/coverage/src/components/Table/index.html +0 -131
  649. package/test-output/vitest/coverage/src/components/Table/table.variants.ts.html +0 -706
  650. package/test-output/vitest/coverage/src/components/Tabs/Tabs.tsx.html +0 -283
  651. package/test-output/vitest/coverage/src/components/Tabs/index.html +0 -131
  652. package/test-output/vitest/coverage/src/components/Tabs/tabs.variants.ts.html +0 -292
  653. package/test-output/vitest/coverage/src/components/TextField/TextField.tsx.html +0 -820
  654. package/test-output/vitest/coverage/src/components/TextField/index.html +0 -131
  655. package/test-output/vitest/coverage/src/components/TextField/textField.variants.ts.html +0 -400
  656. package/test-output/vitest/coverage/src/components/Textarea/Textarea.tsx.html +0 -655
  657. package/test-output/vitest/coverage/src/components/Textarea/index.html +0 -131
  658. package/test-output/vitest/coverage/src/components/Textarea/textarea.variants.ts.html +0 -340
  659. package/test-output/vitest/coverage/src/components/Tooltip/Tooltip.tsx.html +0 -295
  660. package/test-output/vitest/coverage/src/components/Tooltip/index.html +0 -131
  661. package/test-output/vitest/coverage/src/components/Tooltip/tooltip.variants.ts.html +0 -169
  662. package/test-output/vitest/coverage/src/components/TopBar/TopBar.tsx.html +0 -283
  663. package/test-output/vitest/coverage/src/components/TopBar/index.html +0 -131
  664. package/test-output/vitest/coverage/src/components/TopBar/topBar.variants.ts.html +0 -199
  665. package/test-output/vitest/coverage/src/components/Typography/Typography.tsx.html +0 -421
  666. package/test-output/vitest/coverage/src/components/Typography/index.html +0 -131
  667. package/test-output/vitest/coverage/src/components/Typography/typography.variants.ts.html +0 -436
  668. package/test-output/vitest/coverage/src/components/VisuallyHidden/VisuallyHidden.tsx.html +0 -262
  669. package/test-output/vitest/coverage/src/components/VisuallyHidden/index.html +0 -116
  670. package/test-output/vitest/coverage/src/components/_shared/data/getNestedValue.ts.html +0 -181
  671. package/test-output/vitest/coverage/src/components/_shared/data/index.html +0 -236
  672. package/test-output/vitest/coverage/src/components/_shared/data/useColumnAutoDetect.ts.html +0 -385
  673. package/test-output/vitest/coverage/src/components/_shared/data/useControllableState.ts.html +0 -229
  674. package/test-output/vitest/coverage/src/components/_shared/data/useDebouncedValue.ts.html +0 -157
  675. package/test-output/vitest/coverage/src/components/_shared/data/useTableFilter.ts.html +0 -439
  676. package/test-output/vitest/coverage/src/components/_shared/data/useTableSearch.ts.html +0 -283
  677. package/test-output/vitest/coverage/src/components/_shared/data/useTableSelection.ts.html +0 -385
  678. package/test-output/vitest/coverage/src/components/_shared/data/useTableSort.ts.html +0 -508
  679. package/test-output/vitest/coverage/src/components/_shared/data/useVirtualizer.ts.html +0 -682
  680. package/test-output/vitest/coverage/src/components/_shared/index.html +0 -116
  681. package/test-output/vitest/coverage/src/components/_shared/resolveValidationState.ts.html +0 -265
  682. package/test-output/vitest/coverage/src/hooks/index.html +0 -116
  683. package/test-output/vitest/coverage/src/hooks/useAccessState.ts.html +0 -328
  684. package/test-output/vitest/coverage/src/index.html +0 -116
  685. package/test-output/vitest/coverage/src/index.ts.html +0 -1153
  686. package/test-output/vitest/coverage/src/utils/cn.ts.html +0 -172
  687. package/test-output/vitest/coverage/src/utils/index.html +0 -116
  688. package/tsconfig.json +0 -13
  689. package/tsconfig.lib.json +0 -58
  690. package/tsconfig.spec.json +0 -34
  691. package/vite.config.ts +0 -33
  692. package/vitest.config.mts +0 -29
@@ -1,116 +0,0 @@
1
- import { tv, type VariantProps } from 'tailwind-variants';
2
-
3
- /**
4
- * `dividerVariants` — visual separator with two rendering modes (line-only
5
- * vs labeled). Two interconnected TV recipes:
6
- *
7
- * • `dividerVariants` — root container (block layout, alignment)
8
- * • `dividerLineVariants` — the actual line segments (border style,
9
- * color, orientation)
10
- *
11
- * Two recipes (not one with slots) because the labeled mode renders
12
- * THREE elements (left line · label · right line) while the line-only
13
- * mode is ONE element. Splitting keeps each TV catalogue small and
14
- * the type unions narrow.
15
- *
16
- * Mental model:
17
- * • Without `children` → renders an `<hr>` (or a div if vertical)
18
- * with the line styles applied directly.
19
- * • With `children` → renders a flex row with two `<span>` line
20
- * segments either side of the label. The label's flex-shrink keeps
21
- * it from being squashed; the line segments share the remaining
22
- * space according to `align`.
23
- *
24
- * a11y: the root always carries `role="separator"` + `aria-orientation`
25
- * — handled in Divider.tsx, not in TV (it's a prop, not a class).
26
- */
27
-
28
- /*
29
- * Root container — only relevant when label is present (flex layout).
30
- * For line-only, the root IS the line.
31
- */
32
- export const dividerVariants = tv({
33
- base: 'flex items-center',
34
-
35
- variants: {
36
- orientation: {
37
- horizontal: 'w-full',
38
- vertical: 'h-full flex-col',
39
- },
40
-
41
- /*
42
- * Label alignment along the divider's main axis. Implemented by
43
- * setting the flex-basis of the two line segments asymmetrically
44
- * — handled in the variants for `dividerLineVariants` below via
45
- * compound logic. The root just needs the flex layout.
46
- */
47
- align: {
48
- start: '',
49
- center: '',
50
- end: '',
51
- },
52
- },
53
-
54
- defaultVariants: {
55
- orientation: 'horizontal',
56
- align: 'center',
57
- },
58
- });
59
-
60
- export type DividerVariants = VariantProps<typeof dividerVariants>;
61
-
62
- /*
63
- * Line segment(s).
64
- *
65
- * Border styles (solid/dashed/dotted) are applied as `border-t-{style}`
66
- * for horizontal, `border-l-{style}` for vertical. Color drives the
67
- * border-* color token to the intent.
68
- *
69
- * The `segment` axis distinguishes whether this is a line-only render
70
- * (full width) vs a labeled-mode segment (flex-1 grows to share space).
71
- */
72
- export const dividerLineVariants = tv({
73
- base: '',
74
-
75
- variants: {
76
- orientation: {
77
- horizontal: 'h-0 border-t',
78
- vertical: 'w-0 border-l self-stretch',
79
- },
80
-
81
- variant: {
82
- solid: 'border-solid',
83
- dashed: 'border-dashed',
84
- dotted: 'border-dotted',
85
- },
86
-
87
- color: {
88
- // Neutral palette auto-inverts via CSS-var swap (no `dark:`).
89
- neutral: 'border-neutral-200',
90
- primary: 'border-primary-300 dark:border-primary-700',
91
- secondary: 'border-secondary-300 dark:border-secondary-700',
92
- success: 'border-success-300 dark:border-success-700',
93
- warning: 'border-warning-300 dark:border-warning-700',
94
- danger: 'border-danger-300 dark:border-danger-700',
95
- info: 'border-info-300 dark:border-info-700',
96
- },
97
-
98
- /*
99
- * `segment` controls whether the line spans full width (line-only
100
- * mode) or grows to fill space (labeled-mode flex segment).
101
- */
102
- segment: {
103
- full: 'w-full',
104
- grow: 'flex-1',
105
- },
106
- },
107
-
108
- defaultVariants: {
109
- orientation: 'horizontal',
110
- variant: 'solid',
111
- color: 'neutral',
112
- segment: 'full',
113
- },
114
- });
115
-
116
- export type DividerLineVariants = VariantProps<typeof dividerLineVariants>;
@@ -1,321 +0,0 @@
1
- // @vitest-environment jsdom
2
- import { describe, it, expect } from 'vitest';
3
- import { render } from '@testing-library/react';
4
- import { Grid } from './Grid.js';
5
-
6
- /**
7
- * Suite covers:
8
- * • Container role — display:grid + cols + spacing + autoFlow
9
- * • Item role — col-span at xs/sm/md/lg/xl breakpoints
10
- * • Default semantics — container without cols → 12; item without xs → 'full'
11
- * • Polymorphism — as / asChild on both roles
12
- * • Override — sx wins over variant defaults
13
- *
14
- * We don't enumerate every breakpoint × span (5 × 14 = 70 combos);
15
- * spot-checks across xs/md/xl with span 6/auto/full cover the
16
- * cascade. If those work, the rest works.
17
- */
18
- describe('<Grid>', () => {
19
- // ─── Container role ─────────────────────────────────────────────────
20
- describe('container', () => {
21
- it('renders display:grid + default cols=12', () => {
22
- const { container } = render(<Grid container>x</Grid>);
23
- const cls = container.firstElementChild?.className ?? '';
24
- expect(cls).toContain('grid');
25
- expect(cls).toContain('grid-cols-12');
26
- });
27
-
28
- it('container with cols={6}', () => {
29
- const { container } = render(<Grid container cols={6}>x</Grid>);
30
- expect(container.firstElementChild?.className).toContain('grid-cols-6');
31
- });
32
-
33
- it('spacing={4} emits gap-4', () => {
34
- const { container } = render(<Grid container spacing={4}>x</Grid>);
35
- expect(container.firstElementChild?.className).toContain('gap-4');
36
- });
37
-
38
- it('spacingX + spacingY emit gap-x / gap-y', () => {
39
- const { container } = render(
40
- <Grid container spacingX={6} spacingY={2}>x</Grid>,
41
- );
42
- const cls = container.firstElementChild?.className ?? '';
43
- expect(cls).toContain('gap-x-6');
44
- expect(cls).toContain('gap-y-2');
45
- });
46
-
47
- it('autoFlow="dense"', () => {
48
- const { container } = render(<Grid container autoFlow="dense">x</Grid>);
49
- expect(container.firstElementChild?.className).toContain('grid-flow-dense');
50
- });
51
- });
52
-
53
- // ─── Item role ──────────────────────────────────────────────────────
54
- describe('item', () => {
55
- it('item without props defaults to col-span-full (xs="full")', () => {
56
- const { container } = render(<Grid>x</Grid>);
57
- const cls = container.firstElementChild?.className ?? '';
58
- expect(cls).toContain('col-span-full');
59
- // never accidentally a container
60
- expect(cls).not.toContain('grid-cols-12');
61
- // confirm it's NOT display:grid (no `grid` class)
62
- expect(cls.split(' ')).not.toContain('grid');
63
- });
64
-
65
- it('item xs={6}', () => {
66
- const { container } = render(<Grid xs={6}>x</Grid>);
67
- expect(container.firstElementChild?.className).toContain('col-span-6');
68
- });
69
-
70
- it('item with responsive cascade xs={12} md={6} lg={4}', () => {
71
- const { container } = render(<Grid xs={12} md={6} lg={4}>x</Grid>);
72
- const cls = container.firstElementChild?.className ?? '';
73
- expect(cls).toContain('col-span-12');
74
- expect(cls).toContain('md:col-span-6');
75
- expect(cls).toContain('lg:col-span-4');
76
- });
77
-
78
- it('item xs="auto"', () => {
79
- const { container } = render(<Grid xs="auto">x</Grid>);
80
- expect(container.firstElementChild?.className).toContain('col-auto');
81
- });
82
-
83
- it('item sm="full" xl={3}', () => {
84
- const { container } = render(<Grid sm="full" xl={3}>x</Grid>);
85
- const cls = container.firstElementChild?.className ?? '';
86
- expect(cls).toContain('sm:col-span-full');
87
- expect(cls).toContain('xl:col-span-3');
88
- });
89
- });
90
-
91
- // ─── Composition: container > item ──────────────────────────────────
92
- describe('container > item composition', () => {
93
- it('container with item children produces the canonical class chain', () => {
94
- const { container } = render(
95
- <Grid container spacing={4}>
96
- <Grid xs={12} md={6}>a</Grid>
97
- <Grid xs={12} md={6}>b</Grid>
98
- </Grid>,
99
- );
100
- const root = container.firstElementChild;
101
- expect(root?.className).toContain('grid');
102
- expect(root?.className).toContain('gap-4');
103
- const items = root?.querySelectorAll(':scope > div') ?? [];
104
- expect(items.length).toBe(2);
105
- items.forEach((item) => {
106
- expect(item.className).toContain('col-span-12');
107
- expect(item.className).toContain('md:col-span-6');
108
- });
109
- });
110
- });
111
-
112
- // ─── Override + sx ──────────────────────────────────────────────────
113
- describe('override', () => {
114
- it('sx wins over default cols on container', () => {
115
- const { container } = render(
116
- <Grid container sx="grid-cols-4">x</Grid>,
117
- );
118
- const cls = container.firstElementChild?.className ?? '';
119
- expect(cls).toContain('grid-cols-4');
120
- // tailwind-merge collapses the default 12 → 4
121
- expect(cls).not.toContain('grid-cols-12');
122
- });
123
-
124
- it('sx adds utilities Grid does not expose', () => {
125
- const { container } = render(<Grid container sx="min-h-screen">x</Grid>);
126
- expect(container.firstElementChild?.className).toContain('min-h-screen');
127
- });
128
- });
129
-
130
- // ─── Polymorphism ───────────────────────────────────────────────────
131
- describe('polymorphism', () => {
132
- it('container as="section" renders <section> + grid classes', () => {
133
- const { container } = render(<Grid container as="section">x</Grid>);
134
- const el = container.firstElementChild;
135
- expect(el?.tagName).toBe('SECTION');
136
- expect(el?.className).toContain('grid');
137
- });
138
-
139
- it('item asChild paints onto child element', () => {
140
- const { container } = render(
141
- <Grid xs={6} asChild>
142
- <article>x</article>
143
- </Grid>,
144
- );
145
- const el = container.firstElementChild;
146
- expect(el?.tagName).toBe('ARTICLE');
147
- expect(el?.className).toContain('col-span-6');
148
- });
149
- });
150
-
151
- // ─── DOM cleanliness (no role-specific props leak as HTML attrs) ────
152
- describe('DOM cleanliness', () => {
153
- it('container props (cols/spacing/autoFlow) do not leak to DOM', () => {
154
- const { container } = render(
155
- <Grid container cols={4} spacing={2} autoFlow="dense">x</Grid>,
156
- );
157
- const el = container.firstElementChild as HTMLElement;
158
- expect(el.hasAttribute('cols')).toBe(false);
159
- expect(el.hasAttribute('spacing')).toBe(false);
160
- expect(el.hasAttribute('autoflow')).toBe(false);
161
- });
162
-
163
- it('item props (xs/sm/md/lg/xl) do not leak to DOM', () => {
164
- const { container } = render(
165
- <Grid xs={12} md={6} lg={4}>x</Grid>,
166
- );
167
- const el = container.firstElementChild as HTMLElement;
168
- expect(el.hasAttribute('xs')).toBe(false);
169
- expect(el.hasAttribute('md')).toBe(false);
170
- expect(el.hasAttribute('lg')).toBe(false);
171
- });
172
- });
173
-
174
- // ─── F11-bis edge cases: responsive cascade across ALL breakpoints ──
175
- // The original suite spot-checked xs/md/lg/sm/xl with a couple of
176
- // values each. The publish-validation pass enumerates each breakpoint
177
- // for the high-traffic span values (1, 6, 12, auto, full) so a future
178
- // mapping-table edit can't silently drop one.
179
- describe('responsive cascade — every breakpoint × representative span', () => {
180
- const BREAKPOINTS = ['sm', 'md', 'lg', 'xl'] as const;
181
-
182
- it.each(BREAKPOINTS)('breakpoint %s × span=1', (bp) => {
183
- const props = { [bp]: 1 as const };
184
- const { container } = render(<Grid {...props}>x</Grid>);
185
- expect(container.firstElementChild?.className).toContain(`${bp}:col-span-1`);
186
- });
187
-
188
- it.each(BREAKPOINTS)('breakpoint %s × span=6', (bp) => {
189
- const props = { [bp]: 6 as const };
190
- const { container } = render(<Grid {...props}>x</Grid>);
191
- expect(container.firstElementChild?.className).toContain(`${bp}:col-span-6`);
192
- });
193
-
194
- it.each(BREAKPOINTS)('breakpoint %s × span=12', (bp) => {
195
- const props = { [bp]: 12 as const };
196
- const { container } = render(<Grid {...props}>x</Grid>);
197
- expect(container.firstElementChild?.className).toContain(`${bp}:col-span-12`);
198
- });
199
-
200
- it.each(BREAKPOINTS)('breakpoint %s × auto', (bp) => {
201
- const props = { [bp]: 'auto' as const };
202
- const { container } = render(<Grid {...props}>x</Grid>);
203
- expect(container.firstElementChild?.className).toContain(`${bp}:col-auto`);
204
- });
205
-
206
- it.each(BREAKPOINTS)('breakpoint %s × full', (bp) => {
207
- const props = { [bp]: 'full' as const };
208
- const { container } = render(<Grid {...props}>x</Grid>);
209
- expect(container.firstElementChild?.className).toContain(`${bp}:col-span-full`);
210
- });
211
-
212
- it('full cascade xs=12 sm=6 md=4 lg=3 xl=2 emits all five', () => {
213
- const { container } = render(
214
- <Grid xs={12} sm={6} md={4} lg={3} xl={2}>x</Grid>,
215
- );
216
- const cls = container.firstElementChild?.className ?? '';
217
- expect(cls).toContain('col-span-12');
218
- expect(cls).toContain('sm:col-span-6');
219
- expect(cls).toContain('md:col-span-4');
220
- expect(cls).toContain('lg:col-span-3');
221
- expect(cls).toContain('xl:col-span-2');
222
- });
223
- });
224
-
225
- // ─── F11-bis edge cases: autoFlow all five varianti ─────────────────
226
- describe('autoFlow — every value', () => {
227
- const FLOWS = ['row', 'col', 'dense', 'row-dense', 'col-dense'] as const;
228
- const EXPECTED: Record<typeof FLOWS[number], string> = {
229
- row: 'grid-flow-row',
230
- col: 'grid-flow-col',
231
- dense: 'grid-flow-dense',
232
- 'row-dense': 'grid-flow-row-dense',
233
- 'col-dense': 'grid-flow-col-dense',
234
- };
235
-
236
- it.each(FLOWS)('autoFlow="%s" emits the right grid-flow-* class', (flow) => {
237
- const { container } = render(<Grid container autoFlow={flow}>x</Grid>);
238
- expect(container.firstElementChild?.className).toContain(EXPECTED[flow]);
239
- });
240
- });
241
-
242
- // ─── F11-bis edge cases: container cols all valid values ────────────
243
- describe('cols — every valid value', () => {
244
- const COLS = [1, 2, 3, 4, 6, 12] as const;
245
- it.each(COLS)('container cols=%s emits grid-cols-%s', (n) => {
246
- const { container } = render(<Grid container cols={n}>x</Grid>);
247
- expect(container.firstElementChild?.className).toContain(`grid-cols-${n}`);
248
- });
249
- });
250
-
251
- // ─── F11-bis edge cases: spacingX vs spacingY independence ──────────
252
- describe('spacingX / spacingY independence', () => {
253
- it('spacingX without spacingY emits only gap-x', () => {
254
- const { container } = render(<Grid container spacingX={4}>x</Grid>);
255
- const cls = container.firstElementChild?.className ?? '';
256
- expect(cls).toContain('gap-x-4');
257
- expect(cls).not.toMatch(/gap-y-/);
258
- // standalone `gap-` shouldn't appear unless spacing was passed
259
- expect(cls).not.toMatch(/gap-\d/);
260
- });
261
-
262
- it('spacingY without spacingX emits only gap-y', () => {
263
- const { container } = render(<Grid container spacingY={2}>x</Grid>);
264
- const cls = container.firstElementChild?.className ?? '';
265
- expect(cls).toContain('gap-y-2');
266
- expect(cls).not.toMatch(/gap-x-/);
267
- });
268
-
269
- it('spacing + spacingX: spacing applies symmetrically, spacingX overrides on X', () => {
270
- const { container } = render(
271
- <Grid container spacing={4} spacingX={8}>x</Grid>,
272
- );
273
- const cls = container.firstElementChild?.className ?? '';
274
- expect(cls).toContain('gap-4');
275
- expect(cls).toContain('gap-x-8');
276
- });
277
- });
278
-
279
- // ─── F11-bis edge cases: empty container / orphan item ──────────────
280
- describe('empty children + orphan item', () => {
281
- it('container with NO children emits grid + cols, renders empty div', () => {
282
- const { container } = render(<Grid container />);
283
- const el = container.firstElementChild as HTMLElement;
284
- expect(el.className).toContain('grid');
285
- expect(el.className).toContain('grid-cols-12');
286
- expect(el.children.length).toBe(0);
287
- });
288
-
289
- it('orphan item (no container parent) still emits col-span-* (consumer mistake)', () => {
290
- // Doesn't crash — produces a col-span-* class that has no effect
291
- // outside a CSS Grid parent. Documented behaviour: the consumer
292
- // owns the composition.
293
- const { container } = render(<Grid xs={6}>x</Grid>);
294
- expect(container.firstElementChild?.className).toContain('col-span-6');
295
- });
296
- });
297
-
298
- // ─── F11-bis edge cases: composition deep nesting ───────────────────
299
- describe('deep nesting — Grid inside Grid item', () => {
300
- it('nested Grid container inside an item works (12-col inside a 6-span)', () => {
301
- const { container } = render(
302
- <Grid container spacing={4}>
303
- <Grid xs={6}>
304
- <Grid container spacing={2}>
305
- <Grid xs={6}>inner-a</Grid>
306
- <Grid xs={6}>inner-b</Grid>
307
- </Grid>
308
- </Grid>
309
- <Grid xs={6}>outer-b</Grid>
310
- </Grid>,
311
- );
312
- // Outer: grid + 12-col + gap-4
313
- const outer = container.firstElementChild;
314
- expect(outer?.className).toContain('grid');
315
- expect(outer?.className).toContain('grid-cols-12');
316
- expect(outer?.className).toContain('gap-4');
317
- // Inner items count: outer has 2 direct children
318
- expect(outer?.children.length).toBe(2);
319
- });
320
- });
321
- });
@@ -1,148 +0,0 @@
1
- import { forwardRef, type ElementType, type ReactElement } from 'react';
2
- import { Slot } from '@radix-ui/react-slot';
3
- import { cn } from '../../utils/cn.js';
4
- import { gridVariants } from './grid.variants.js';
5
- import type {
6
- GridProps,
7
- GridContainerProps,
8
- GridItemProps,
9
- ColSpan,
10
- GridSpacingStep,
11
- } from './grid.types.js';
12
-
13
- /**
14
- * `<Grid>` — CSS Grid container + item, polymorphic in role.
15
- *
16
- * API surface mirrors MUI Grid v2:
17
- * • <Grid container spacing={4} cols={12}> ← container
18
- * • <Grid xs={12} md={6}> ← item
19
- *
20
- * Engine is REAL CSS Grid (not flexbox, unlike MUI v2 internals).
21
- * Benefits over flexbox-based implementation:
22
- * • Native `gap` (no negative-margin tricks)
23
- * • `col-span-N` maps directly to `grid-column: span N`
24
- * • Vertical alignment without manual `align-items` per item
25
- * • Auto-flow for dense packing without DOM gymnastics
26
- *
27
- * TypeScript discriminated union (see grid.types.ts) makes mixing
28
- * impossible: `<Grid container xs={6}>` won't compile. Same for the
29
- * inverse. IntelliSense filters by role.
30
- *
31
- * Defaults at the component level (not at the TV level — see the
32
- * variants file for the rationale):
33
- * • container: cols defaults to 12 (MUI convention)
34
- * • item: xs defaults to 'full' so a forgotten prop doesn't
35
- * collapse the cell to 1/12th of a row
36
- *
37
- * `asChild` on a CONTAINER is technically allowed but rarely useful:
38
- * `display:grid` only applies to direct children, so the slotted
39
- * element has to already be a viable container parent. Use sparingly;
40
- * test asserts the wrapping still emits the right class chain.
41
- */
42
- export const Grid = forwardRef<HTMLElement, GridProps>(
43
- function Grid(props, ref) {
44
- const { as, asChild = false, sx, children, ...rest } = props as GridProps & {
45
- as?: ElementType;
46
- asChild?: boolean;
47
- sx?: string;
48
- children?: React.ReactNode;
49
- };
50
- /*
51
- * Discriminated union runtime branch.
52
- *
53
- * TS narrows GridProps to ONE of the two shapes (container or item)
54
- * at the call site, but inside this function body we receive the
55
- * union — so we manually narrow via a single cast per branch.
56
- * `as GridContainerProps` / `as GridItemProps` is sound because
57
- * `container === true` is the literal discriminator declared in
58
- * the types file; the cast just makes TS read the right branch.
59
- */
60
- const isContainer = (props as { container?: boolean }).container === true;
61
-
62
- let classes: string;
63
- let containerPayload: GridContainerProps | null = null;
64
- let itemPayload: GridItemProps | null = null;
65
-
66
- if (isContainer) {
67
- containerPayload = props as GridContainerProps;
68
- /*
69
- * Container branch — pass ONLY container axes to TV. Default cols
70
- * to 12 (MUI v2 convention) so a forgotten prop doesn't collapse
71
- * to grid-cols-1. The spacing axes are passed straight through;
72
- * TV silently drops undefined values.
73
- */
74
- classes = cn(
75
- gridVariants({
76
- container: true,
77
- cols: (containerPayload.cols ?? 12) as 1 | 2 | 3 | 4 | 6 | 12,
78
- spacing: containerPayload.spacing,
79
- spacingX: containerPayload.spacingX,
80
- spacingY: containerPayload.spacingY,
81
- autoFlow: containerPayload.autoFlow,
82
- }),
83
- sx,
84
- );
85
- } else {
86
- itemPayload = props as GridItemProps;
87
- /*
88
- * Item branch — default `xs` to 'full' so a forgotten breakpoint
89
- * prop doesn't collapse the cell to grid-auto's minimum width.
90
- */
91
- classes = cn(
92
- gridVariants({
93
- xs: (itemPayload.xs ?? 'full') as ColSpan,
94
- sm: itemPayload.sm,
95
- md: itemPayload.md,
96
- lg: itemPayload.lg,
97
- xl: itemPayload.xl,
98
- }),
99
- sx,
100
- );
101
- }
102
-
103
- /*
104
- * Strip role-specific props from `rest` before spreading on the DOM
105
- * element. Without this, React warns:
106
- * "React does not recognize the `cols` prop on a DOM element"
107
- */
108
- const domRest: Record<string, unknown> = { ...(rest as Record<string, unknown>) };
109
- if (containerPayload) {
110
- delete domRest.cols;
111
- delete domRest.spacing;
112
- delete domRest.spacingX;
113
- delete domRest.spacingY;
114
- delete domRest.autoFlow;
115
- }
116
- if (itemPayload) {
117
- delete domRest.xs;
118
- delete domRest.sm;
119
- delete domRest.md;
120
- delete domRest.lg;
121
- delete domRest.xl;
122
- }
123
- // `container` discriminator itself must never reach the DOM.
124
- delete domRest.container;
125
- // Silence unused vars that the union typings require us to receive.
126
- void itemPayload; void containerPayload;
127
- // The unused-vars helper from grid.types is a type-only import,
128
- // referenced here to keep ESM tree-shake clean — TS handles imports.
129
- void ({} as GridSpacingStep);
130
-
131
- if (asChild) {
132
- return (
133
- <Slot ref={ref} className={classes} {...domRest}>
134
- {children as ReactElement}
135
- </Slot>
136
- );
137
- }
138
-
139
- const Tag = (as ?? 'div') as ElementType;
140
- return (
141
- <Tag ref={ref as never} className={classes} {...domRest}>
142
- {children}
143
- </Tag>
144
- );
145
- },
146
- );
147
-
148
- Grid.displayName = 'Grid';