@dashforge/tw 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (396) hide show
  1. package/CHANGELOG.md +221 -0
  2. package/README.md +74 -15
  3. package/dashforge-tw-1.0.0.tgz +0 -0
  4. package/dist/index.d.ts +1 -146
  5. package/dist/index.esm.js +3127 -748
  6. package/dist/src/components/Alert/Alert.d.ts +65 -0
  7. package/dist/src/components/Alert/Alert.d.ts.map +1 -0
  8. package/dist/src/components/Alert/alert.types.d.ts +130 -0
  9. package/dist/src/components/Alert/alert.types.d.ts.map +1 -0
  10. package/dist/src/components/Alert/alert.variants.d.ts +85 -0
  11. package/dist/src/components/Alert/alert.variants.d.ts.map +1 -0
  12. package/dist/src/components/Avatar/Avatar.d.ts +48 -0
  13. package/dist/src/components/Avatar/Avatar.d.ts.map +1 -0
  14. package/dist/src/components/Avatar/avatar.types.d.ts +162 -0
  15. package/dist/src/components/Avatar/avatar.types.d.ts.map +1 -0
  16. package/dist/src/components/Avatar/avatar.variants.d.ts +208 -0
  17. package/dist/src/components/Avatar/avatar.variants.d.ts.map +1 -0
  18. package/dist/src/components/Badge/Badge.d.ts +63 -0
  19. package/dist/src/components/Badge/Badge.d.ts.map +1 -0
  20. package/dist/src/components/Badge/badge.types.d.ts +124 -0
  21. package/dist/src/components/Badge/badge.types.d.ts.map +1 -0
  22. package/dist/src/components/Badge/badge.variants.d.ts +262 -0
  23. package/dist/src/components/Badge/badge.variants.d.ts.map +1 -0
  24. package/dist/src/components/Box/Box.d.ts.map +1 -1
  25. package/dist/src/components/Box/box.types.d.ts +53 -0
  26. package/dist/src/components/Box/box.types.d.ts.map +1 -1
  27. package/dist/src/components/Button/Button.d.ts.map +1 -1
  28. package/dist/src/components/Button/button.types.d.ts +35 -0
  29. package/dist/src/components/Button/button.types.d.ts.map +1 -1
  30. package/dist/src/components/Card/Card.d.ts +107 -0
  31. package/dist/src/components/Card/Card.d.ts.map +1 -0
  32. package/dist/src/components/Card/card.types.d.ts +119 -0
  33. package/dist/src/components/Card/card.types.d.ts.map +1 -0
  34. package/dist/src/components/Chip/Chip.d.ts +67 -0
  35. package/dist/src/components/Chip/Chip.d.ts.map +1 -0
  36. package/dist/src/components/Chip/chip.types.d.ts +113 -0
  37. package/dist/src/components/Chip/chip.types.d.ts.map +1 -0
  38. package/dist/src/components/Chip/chip.variants.d.ts +155 -0
  39. package/dist/src/components/Chip/chip.variants.d.ts.map +1 -0
  40. package/dist/src/components/IconButton/IconButton.d.ts +57 -0
  41. package/dist/src/components/IconButton/IconButton.d.ts.map +1 -0
  42. package/dist/src/components/IconButton/iconButton.types.d.ts +96 -0
  43. package/dist/src/components/IconButton/iconButton.types.d.ts.map +1 -0
  44. package/dist/src/components/IconButton/iconButton.variants.d.ts +26 -0
  45. package/dist/src/components/IconButton/iconButton.variants.d.ts.map +1 -0
  46. package/dist/src/components/Menu/Menu.d.ts +118 -0
  47. package/dist/src/components/Menu/Menu.d.ts.map +1 -0
  48. package/dist/src/components/Menu/menu.types.d.ts +179 -0
  49. package/dist/src/components/Menu/menu.types.d.ts.map +1 -0
  50. package/dist/src/components/Menu/menu.variants.d.ts +129 -0
  51. package/dist/src/components/Menu/menu.variants.d.ts.map +1 -0
  52. package/dist/src/components/Snackbar/Snackbar.d.ts.map +1 -1
  53. package/dist/src/components/Snackbar/snackbar.types.d.ts +40 -3
  54. package/dist/src/components/Snackbar/snackbar.types.d.ts.map +1 -1
  55. package/dist/src/components/Snackbar/snackbar.variants.d.ts +12 -57
  56. package/dist/src/components/Snackbar/snackbar.variants.d.ts.map +1 -1
  57. package/dist/src/components/Spinner/Spinner.d.ts +44 -0
  58. package/dist/src/components/Spinner/Spinner.d.ts.map +1 -0
  59. package/dist/src/components/Spinner/spinner.types.d.ts +89 -0
  60. package/dist/src/components/Spinner/spinner.types.d.ts.map +1 -0
  61. package/dist/src/components/Spinner/spinner.variants.d.ts +111 -0
  62. package/dist/src/components/Spinner/spinner.variants.d.ts.map +1 -0
  63. package/dist/src/components/Table/cells/RenderChip.d.ts +15 -72
  64. package/dist/src/components/Table/cells/RenderChip.d.ts.map +1 -1
  65. package/dist/src/components/_shared/severity/index.d.ts +21 -0
  66. package/dist/src/components/_shared/severity/index.d.ts.map +1 -0
  67. package/dist/src/components/_shared/severity/severity.types.d.ts +48 -0
  68. package/dist/src/components/_shared/severity/severity.types.d.ts.map +1 -0
  69. package/dist/src/components/_shared/severity/severityIcons.d.ts +45 -0
  70. package/dist/src/components/_shared/severity/severityIcons.d.ts.map +1 -0
  71. package/dist/src/components/_shared/severity/severityVariants.d.ts +22 -0
  72. package/dist/src/components/_shared/severity/severityVariants.d.ts.map +1 -0
  73. package/dist/src/index.d.ts +27 -2
  74. package/dist/src/index.d.ts.map +1 -1
  75. package/package.json +2 -1
  76. package/src/components/Alert/Alert.test.tsx +302 -0
  77. package/src/components/Alert/Alert.tsx +186 -0
  78. package/src/components/Alert/alert.types.ts +144 -0
  79. package/src/components/Alert/alert.variants.ts +71 -0
  80. package/src/components/Autocomplete/autocomplete.variants.ts +1 -1
  81. package/src/components/Avatar/Avatar.test.tsx +287 -0
  82. package/src/components/Avatar/Avatar.tsx +304 -0
  83. package/src/components/Avatar/avatar.types.ts +205 -0
  84. package/src/components/Avatar/avatar.variants.ts +194 -0
  85. package/src/components/Badge/Badge.test.tsx +385 -0
  86. package/src/components/Badge/Badge.tsx +174 -0
  87. package/src/components/Badge/badge.types.ts +154 -0
  88. package/src/components/Badge/badge.variants.ts +161 -0
  89. package/src/components/Box/Box.test.tsx +21 -0
  90. package/src/components/Box/Box.tsx +32 -3
  91. package/src/components/Box/box.types.ts +55 -0
  92. package/src/components/Button/Button.test.tsx +21 -0
  93. package/src/components/Button/Button.tsx +28 -27
  94. package/src/components/Button/button.types.ts +36 -0
  95. package/src/components/Card/Card.test.tsx +291 -0
  96. package/src/components/Card/Card.tsx +241 -0
  97. package/src/components/Card/card.types.ts +132 -0
  98. package/src/components/Chip/Chip.test.tsx +316 -0
  99. package/src/components/Chip/Chip.tsx +224 -0
  100. package/src/components/Chip/chip.types.ts +128 -0
  101. package/src/components/Chip/chip.variants.ts +173 -0
  102. package/src/components/DataGrid/visibility/ColumnVisibilityMenu.tsx +1 -1
  103. package/src/components/IconButton/IconButton.test.tsx +367 -0
  104. package/src/components/IconButton/IconButton.tsx +159 -0
  105. package/src/components/IconButton/iconButton.types.ts +106 -0
  106. package/src/components/IconButton/iconButton.variants.ts +31 -0
  107. package/src/components/LeftNav/leftNav.variants.ts +2 -2
  108. package/src/components/Menu/Menu.test.tsx +408 -0
  109. package/src/components/Menu/Menu.tsx +335 -0
  110. package/src/components/Menu/menu.types.ts +221 -0
  111. package/src/components/Menu/menu.variants.ts +132 -0
  112. package/src/components/Pagination/pagination.variants.ts +1 -1
  113. package/src/components/Snackbar/Snackbar.tsx +46 -28
  114. package/src/components/Snackbar/snackbar.types.ts +47 -3
  115. package/src/components/Snackbar/snackbar.variants.ts +29 -22
  116. package/src/components/Spinner/Spinner.test.tsx +199 -0
  117. package/src/components/Spinner/Spinner.tsx +158 -0
  118. package/src/components/Spinner/spinner.types.ts +113 -0
  119. package/src/components/Spinner/spinner.variants.ts +83 -0
  120. package/src/components/Table/cells/RenderChip.tsx +24 -87
  121. package/src/components/Table/cells/RowActionsMenu.tsx +1 -1
  122. package/src/components/_shared/severity/index.ts +33 -0
  123. package/src/components/_shared/severity/severity.types.ts +50 -0
  124. package/src/components/_shared/severity/severityIcons.tsx +104 -0
  125. package/src/components/_shared/severity/severityVariants.test.ts +136 -0
  126. package/src/components/_shared/severity/severityVariants.ts +115 -0
  127. package/src/index.ts +163 -1
  128. package/LICENSE +0 -21
  129. package/dist/components/Accordion/Accordion.d.ts +0 -21
  130. package/dist/components/Accordion/Accordion.d.ts.map +0 -1
  131. package/dist/components/Accordion/accordion.types.d.ts +0 -74
  132. package/dist/components/Accordion/accordion.types.d.ts.map +0 -1
  133. package/dist/components/Accordion/accordion.variants.d.ts +0 -58
  134. package/dist/components/Accordion/accordion.variants.d.ts.map +0 -1
  135. package/dist/components/AppShell/AppShell.d.ts +0 -46
  136. package/dist/components/AppShell/AppShell.d.ts.map +0 -1
  137. package/dist/components/AppShell/appShell.types.d.ts +0 -62
  138. package/dist/components/AppShell/appShell.types.d.ts.map +0 -1
  139. package/dist/components/AppShell/appShell.variants.d.ts +0 -65
  140. package/dist/components/AppShell/appShell.variants.d.ts.map +0 -1
  141. package/dist/components/AspectRatio/AspectRatio.d.ts +0 -36
  142. package/dist/components/AspectRatio/AspectRatio.d.ts.map +0 -1
  143. package/dist/components/AspectRatio/aspectRatio.types.d.ts +0 -50
  144. package/dist/components/AspectRatio/aspectRatio.types.d.ts.map +0 -1
  145. package/dist/components/Autocomplete/Autocomplete.d.ts +0 -32
  146. package/dist/components/Autocomplete/Autocomplete.d.ts.map +0 -1
  147. package/dist/components/Autocomplete/autocomplete.types.d.ts +0 -214
  148. package/dist/components/Autocomplete/autocomplete.types.d.ts.map +0 -1
  149. package/dist/components/Autocomplete/autocomplete.variants.d.ts +0 -214
  150. package/dist/components/Autocomplete/autocomplete.variants.d.ts.map +0 -1
  151. package/dist/components/Box/Box.d.ts +0 -36
  152. package/dist/components/Box/Box.d.ts.map +0 -1
  153. package/dist/components/Box/box.types.d.ts +0 -54
  154. package/dist/components/Box/box.types.d.ts.map +0 -1
  155. package/dist/components/Box/box.variants.d.ts +0 -402
  156. package/dist/components/Box/box.variants.d.ts.map +0 -1
  157. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +0 -23
  158. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +0 -1
  159. package/dist/components/Breadcrumbs/breadcrumbs.types.d.ts +0 -98
  160. package/dist/components/Breadcrumbs/breadcrumbs.types.d.ts.map +0 -1
  161. package/dist/components/Breadcrumbs/breadcrumbs.variants.d.ts +0 -85
  162. package/dist/components/Breadcrumbs/breadcrumbs.variants.d.ts.map +0 -1
  163. package/dist/components/Button/Button.d.ts +0 -44
  164. package/dist/components/Button/Button.d.ts.map +0 -1
  165. package/dist/components/Button/button.types.d.ts +0 -66
  166. package/dist/components/Button/button.types.d.ts.map +0 -1
  167. package/dist/components/Button/button.variants.d.ts +0 -104
  168. package/dist/components/Button/button.variants.d.ts.map +0 -1
  169. package/dist/components/Calendar/Calendar.d.ts +0 -14
  170. package/dist/components/Calendar/Calendar.d.ts.map +0 -1
  171. package/dist/components/Calendar/calendar.types.d.ts +0 -72
  172. package/dist/components/Calendar/calendar.types.d.ts.map +0 -1
  173. package/dist/components/Calendar/calendar.variants.d.ts +0 -99
  174. package/dist/components/Calendar/calendar.variants.d.ts.map +0 -1
  175. package/dist/components/Checkbox/Checkbox.d.ts +0 -31
  176. package/dist/components/Checkbox/Checkbox.d.ts.map +0 -1
  177. package/dist/components/Checkbox/checkbox.types.d.ts +0 -86
  178. package/dist/components/Checkbox/checkbox.types.d.ts.map +0 -1
  179. package/dist/components/Checkbox/checkbox.variants.d.ts +0 -109
  180. package/dist/components/Checkbox/checkbox.variants.d.ts.map +0 -1
  181. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts +0 -38
  182. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts.map +0 -1
  183. package/dist/components/ConfirmDialog/confirmDialog.types.d.ts +0 -80
  184. package/dist/components/ConfirmDialog/confirmDialog.types.d.ts.map +0 -1
  185. package/dist/components/ConfirmDialog/confirmDialog.variants.d.ts +0 -90
  186. package/dist/components/ConfirmDialog/confirmDialog.variants.d.ts.map +0 -1
  187. package/dist/components/Container/Container.d.ts +0 -35
  188. package/dist/components/Container/Container.d.ts.map +0 -1
  189. package/dist/components/Container/container.types.d.ts +0 -41
  190. package/dist/components/Container/container.types.d.ts.map +0 -1
  191. package/dist/components/Container/container.variants.d.ts +0 -93
  192. package/dist/components/Container/container.variants.d.ts.map +0 -1
  193. package/dist/components/DataGrid/DataGrid.d.ts +0 -29
  194. package/dist/components/DataGrid/DataGrid.d.ts.map +0 -1
  195. package/dist/components/DataGrid/dataGrid.types.d.ts +0 -214
  196. package/dist/components/DataGrid/dataGrid.types.d.ts.map +0 -1
  197. package/dist/components/DataGrid/dataGrid.variants.d.ts +0 -222
  198. package/dist/components/DataGrid/dataGrid.variants.d.ts.map +0 -1
  199. package/dist/components/DataGrid/filters/ColumnFilters.d.ts +0 -23
  200. package/dist/components/DataGrid/filters/ColumnFilters.d.ts.map +0 -1
  201. package/dist/components/DataGrid/reorder/useColumnReorder.d.ts +0 -50
  202. package/dist/components/DataGrid/reorder/useColumnReorder.d.ts.map +0 -1
  203. package/dist/components/DataGrid/resize/useColumnResize.d.ts +0 -39
  204. package/dist/components/DataGrid/resize/useColumnResize.d.ts.map +0 -1
  205. package/dist/components/DataGrid/visibility/ColumnVisibilityMenu.d.ts +0 -44
  206. package/dist/components/DataGrid/visibility/ColumnVisibilityMenu.d.ts.map +0 -1
  207. package/dist/components/DatePicker/DatePicker.d.ts +0 -14
  208. package/dist/components/DatePicker/DatePicker.d.ts.map +0 -1
  209. package/dist/components/DatePicker/datePicker.types.d.ts +0 -88
  210. package/dist/components/DatePicker/datePicker.types.d.ts.map +0 -1
  211. package/dist/components/DatePicker/datePicker.variants.d.ts +0 -97
  212. package/dist/components/DatePicker/datePicker.variants.d.ts.map +0 -1
  213. package/dist/components/DateRangePicker/DateRangePicker.d.ts +0 -13
  214. package/dist/components/DateRangePicker/DateRangePicker.d.ts.map +0 -1
  215. package/dist/components/DateRangePicker/dateRangePicker.types.d.ts +0 -85
  216. package/dist/components/DateRangePicker/dateRangePicker.types.d.ts.map +0 -1
  217. package/dist/components/DateRangePicker/dateRangePicker.variants.d.ts +0 -183
  218. package/dist/components/DateRangePicker/dateRangePicker.variants.d.ts.map +0 -1
  219. package/dist/components/DateTimePicker/DateTimePicker.d.ts +0 -13
  220. package/dist/components/DateTimePicker/DateTimePicker.d.ts.map +0 -1
  221. package/dist/components/DateTimePicker/dateTimePicker.types.d.ts +0 -90
  222. package/dist/components/DateTimePicker/dateTimePicker.types.d.ts.map +0 -1
  223. package/dist/components/DateTimePicker/dateTimePicker.variants.d.ts +0 -107
  224. package/dist/components/DateTimePicker/dateTimePicker.variants.d.ts.map +0 -1
  225. package/dist/components/Dialog/Dialog.d.ts +0 -17
  226. package/dist/components/Dialog/Dialog.d.ts.map +0 -1
  227. package/dist/components/Dialog/dialog.types.d.ts +0 -75
  228. package/dist/components/Dialog/dialog.types.d.ts.map +0 -1
  229. package/dist/components/Dialog/dialog.variants.d.ts +0 -80
  230. package/dist/components/Dialog/dialog.variants.d.ts.map +0 -1
  231. package/dist/components/Divider/Divider.d.ts +0 -50
  232. package/dist/components/Divider/Divider.d.ts.map +0 -1
  233. package/dist/components/Divider/divider.types.d.ts +0 -47
  234. package/dist/components/Divider/divider.types.d.ts.map +0 -1
  235. package/dist/components/Divider/divider.variants.d.ts +0 -129
  236. package/dist/components/Divider/divider.variants.d.ts.map +0 -1
  237. package/dist/components/Grid/Grid.d.ts +0 -32
  238. package/dist/components/Grid/Grid.d.ts.map +0 -1
  239. package/dist/components/Grid/grid.types.d.ts +0 -103
  240. package/dist/components/Grid/grid.types.d.ts.map +0 -1
  241. package/dist/components/Grid/grid.variants.d.ts +0 -453
  242. package/dist/components/Grid/grid.variants.d.ts.map +0 -1
  243. package/dist/components/LeftNav/LeftNav.d.ts +0 -34
  244. package/dist/components/LeftNav/LeftNav.d.ts.map +0 -1
  245. package/dist/components/LeftNav/leftNav.types.d.ts +0 -136
  246. package/dist/components/LeftNav/leftNav.types.d.ts.map +0 -1
  247. package/dist/components/LeftNav/leftNav.variants.d.ts +0 -143
  248. package/dist/components/LeftNav/leftNav.variants.d.ts.map +0 -1
  249. package/dist/components/NumberField/NumberField.d.ts +0 -18
  250. package/dist/components/NumberField/NumberField.d.ts.map +0 -1
  251. package/dist/components/NumberField/numberField.types.d.ts +0 -79
  252. package/dist/components/NumberField/numberField.types.d.ts.map +0 -1
  253. package/dist/components/NumberField/numberField.variants.d.ts +0 -169
  254. package/dist/components/NumberField/numberField.variants.d.ts.map +0 -1
  255. package/dist/components/OTPField/OTPField.d.ts +0 -25
  256. package/dist/components/OTPField/OTPField.d.ts.map +0 -1
  257. package/dist/components/OTPField/otpField.types.d.ts +0 -74
  258. package/dist/components/OTPField/otpField.types.d.ts.map +0 -1
  259. package/dist/components/OTPField/otpField.variants.d.ts +0 -105
  260. package/dist/components/OTPField/otpField.variants.d.ts.map +0 -1
  261. package/dist/components/Pagination/Pagination.d.ts +0 -32
  262. package/dist/components/Pagination/Pagination.d.ts.map +0 -1
  263. package/dist/components/Pagination/pagination.helpers.d.ts +0 -23
  264. package/dist/components/Pagination/pagination.helpers.d.ts.map +0 -1
  265. package/dist/components/Pagination/pagination.types.d.ts +0 -120
  266. package/dist/components/Pagination/pagination.types.d.ts.map +0 -1
  267. package/dist/components/Pagination/pagination.variants.d.ts +0 -150
  268. package/dist/components/Pagination/pagination.variants.d.ts.map +0 -1
  269. package/dist/components/Popover/Popover.d.ts +0 -15
  270. package/dist/components/Popover/Popover.d.ts.map +0 -1
  271. package/dist/components/Popover/popover.types.d.ts +0 -45
  272. package/dist/components/Popover/popover.types.d.ts.map +0 -1
  273. package/dist/components/Popover/popover.variants.d.ts +0 -34
  274. package/dist/components/Popover/popover.variants.d.ts.map +0 -1
  275. package/dist/components/RadioGroup/RadioGroup.d.ts +0 -35
  276. package/dist/components/RadioGroup/RadioGroup.d.ts.map +0 -1
  277. package/dist/components/RadioGroup/radioGroup.types.d.ts +0 -103
  278. package/dist/components/RadioGroup/radioGroup.types.d.ts.map +0 -1
  279. package/dist/components/RadioGroup/radioGroup.variants.d.ts +0 -166
  280. package/dist/components/RadioGroup/radioGroup.variants.d.ts.map +0 -1
  281. package/dist/components/Skeleton/Skeleton.d.ts +0 -23
  282. package/dist/components/Skeleton/Skeleton.d.ts.map +0 -1
  283. package/dist/components/Skeleton/skeleton.types.d.ts +0 -56
  284. package/dist/components/Skeleton/skeleton.types.d.ts.map +0 -1
  285. package/dist/components/Skeleton/skeleton.variants.d.ts +0 -110
  286. package/dist/components/Skeleton/skeleton.variants.d.ts.map +0 -1
  287. package/dist/components/Snackbar/Snackbar.d.ts +0 -37
  288. package/dist/components/Snackbar/Snackbar.d.ts.map +0 -1
  289. package/dist/components/Snackbar/snackbar.types.d.ts +0 -86
  290. package/dist/components/Snackbar/snackbar.types.d.ts.map +0 -1
  291. package/dist/components/Snackbar/snackbar.variants.d.ts +0 -153
  292. package/dist/components/Snackbar/snackbar.variants.d.ts.map +0 -1
  293. package/dist/components/Stack/Stack.d.ts +0 -24
  294. package/dist/components/Stack/Stack.d.ts.map +0 -1
  295. package/dist/components/Stack/stack.types.d.ts +0 -61
  296. package/dist/components/Stack/stack.types.d.ts.map +0 -1
  297. package/dist/components/Stack/stack.variants.d.ts +0 -163
  298. package/dist/components/Stack/stack.variants.d.ts.map +0 -1
  299. package/dist/components/Switch/Switch.d.ts +0 -15
  300. package/dist/components/Switch/Switch.d.ts.map +0 -1
  301. package/dist/components/Switch/switch.types.d.ts +0 -47
  302. package/dist/components/Switch/switch.types.d.ts.map +0 -1
  303. package/dist/components/Switch/switch.variants.d.ts +0 -105
  304. package/dist/components/Switch/switch.variants.d.ts.map +0 -1
  305. package/dist/components/Table/Table.d.ts +0 -24
  306. package/dist/components/Table/Table.d.ts.map +0 -1
  307. package/dist/components/Table/cells/RenderButton.d.ts +0 -13
  308. package/dist/components/Table/cells/RenderButton.d.ts.map +0 -1
  309. package/dist/components/Table/cells/RenderChip.d.ts +0 -80
  310. package/dist/components/Table/cells/RenderChip.d.ts.map +0 -1
  311. package/dist/components/Table/cells/RenderText.d.ts +0 -21
  312. package/dist/components/Table/cells/RenderText.d.ts.map +0 -1
  313. package/dist/components/Table/cells/RenderTwoLine.d.ts +0 -20
  314. package/dist/components/Table/cells/RenderTwoLine.d.ts.map +0 -1
  315. package/dist/components/Table/cells/RowActionsMenu.d.ts +0 -36
  316. package/dist/components/Table/cells/RowActionsMenu.d.ts.map +0 -1
  317. package/dist/components/Table/cells/index.d.ts +0 -11
  318. package/dist/components/Table/cells/index.d.ts.map +0 -1
  319. package/dist/components/Table/table.types.d.ts +0 -399
  320. package/dist/components/Table/table.types.d.ts.map +0 -1
  321. package/dist/components/Table/table.variants.d.ts +0 -285
  322. package/dist/components/Table/table.variants.d.ts.map +0 -1
  323. package/dist/components/Tabs/Tabs.d.ts +0 -19
  324. package/dist/components/Tabs/Tabs.d.ts.map +0 -1
  325. package/dist/components/Tabs/tabs.types.d.ts +0 -61
  326. package/dist/components/Tabs/tabs.types.d.ts.map +0 -1
  327. package/dist/components/Tabs/tabs.variants.d.ts +0 -82
  328. package/dist/components/Tabs/tabs.variants.d.ts.map +0 -1
  329. package/dist/components/Tabs/useTabs.d.ts +0 -55
  330. package/dist/components/Tabs/useTabs.d.ts.map +0 -1
  331. package/dist/components/TextField/TextField.d.ts +0 -25
  332. package/dist/components/TextField/TextField.d.ts.map +0 -1
  333. package/dist/components/TextField/textField.types.d.ts +0 -98
  334. package/dist/components/TextField/textField.types.d.ts.map +0 -1
  335. package/dist/components/TextField/textField.variants.d.ts +0 -166
  336. package/dist/components/TextField/textField.variants.d.ts.map +0 -1
  337. package/dist/components/Textarea/Textarea.d.ts +0 -16
  338. package/dist/components/Textarea/Textarea.d.ts.map +0 -1
  339. package/dist/components/Textarea/textarea.types.d.ts +0 -63
  340. package/dist/components/Textarea/textarea.types.d.ts.map +0 -1
  341. package/dist/components/Textarea/textarea.variants.d.ts +0 -197
  342. package/dist/components/Textarea/textarea.variants.d.ts.map +0 -1
  343. package/dist/components/TimePicker/TimePicker.d.ts +0 -12
  344. package/dist/components/TimePicker/TimePicker.d.ts.map +0 -1
  345. package/dist/components/TimePicker/timePicker.types.d.ts +0 -80
  346. package/dist/components/TimePicker/timePicker.types.d.ts.map +0 -1
  347. package/dist/components/TimePicker/timePicker.variants.d.ts +0 -103
  348. package/dist/components/TimePicker/timePicker.variants.d.ts.map +0 -1
  349. package/dist/components/Tooltip/Tooltip.d.ts +0 -29
  350. package/dist/components/Tooltip/Tooltip.d.ts.map +0 -1
  351. package/dist/components/Tooltip/tooltip.types.d.ts +0 -47
  352. package/dist/components/Tooltip/tooltip.types.d.ts.map +0 -1
  353. package/dist/components/Tooltip/tooltip.variants.d.ts +0 -34
  354. package/dist/components/Tooltip/tooltip.variants.d.ts.map +0 -1
  355. package/dist/components/TopBar/TopBar.d.ts +0 -33
  356. package/dist/components/TopBar/TopBar.d.ts.map +0 -1
  357. package/dist/components/TopBar/topBar.types.d.ts +0 -49
  358. package/dist/components/TopBar/topBar.types.d.ts.map +0 -1
  359. package/dist/components/TopBar/topBar.variants.d.ts +0 -79
  360. package/dist/components/TopBar/topBar.variants.d.ts.map +0 -1
  361. package/dist/components/Typography/Typography.d.ts +0 -42
  362. package/dist/components/Typography/Typography.d.ts.map +0 -1
  363. package/dist/components/Typography/typography.types.d.ts +0 -61
  364. package/dist/components/Typography/typography.types.d.ts.map +0 -1
  365. package/dist/components/Typography/typography.variants.d.ts +0 -167
  366. package/dist/components/Typography/typography.variants.d.ts.map +0 -1
  367. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +0 -42
  368. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +0 -1
  369. package/dist/components/VisuallyHidden/visuallyHidden.types.d.ts +0 -42
  370. package/dist/components/VisuallyHidden/visuallyHidden.types.d.ts.map +0 -1
  371. package/dist/components/_shared/data/getNestedValue.d.ts +0 -20
  372. package/dist/components/_shared/data/getNestedValue.d.ts.map +0 -1
  373. package/dist/components/_shared/data/useColumnAutoDetect.d.ts +0 -45
  374. package/dist/components/_shared/data/useColumnAutoDetect.d.ts.map +0 -1
  375. package/dist/components/_shared/data/useControllableState.d.ts +0 -23
  376. package/dist/components/_shared/data/useControllableState.d.ts.map +0 -1
  377. package/dist/components/_shared/data/useDebouncedValue.d.ts +0 -10
  378. package/dist/components/_shared/data/useDebouncedValue.d.ts.map +0 -1
  379. package/dist/components/_shared/data/useTableFilter.d.ts +0 -36
  380. package/dist/components/_shared/data/useTableFilter.d.ts.map +0 -1
  381. package/dist/components/_shared/data/useTableSearch.d.ts +0 -23
  382. package/dist/components/_shared/data/useTableSearch.d.ts.map +0 -1
  383. package/dist/components/_shared/data/useTableSelection.d.ts +0 -25
  384. package/dist/components/_shared/data/useTableSelection.d.ts.map +0 -1
  385. package/dist/components/_shared/data/useTableSort.d.ts +0 -20
  386. package/dist/components/_shared/data/useTableSort.d.ts.map +0 -1
  387. package/dist/components/_shared/data/useVirtualizer.d.ts +0 -107
  388. package/dist/components/_shared/data/useVirtualizer.d.ts.map +0 -1
  389. package/dist/components/_shared/resolveValidationState.d.ts +0 -42
  390. package/dist/components/_shared/resolveValidationState.d.ts.map +0 -1
  391. package/dist/hooks/useAccessState.d.ts +0 -37
  392. package/dist/hooks/useAccessState.d.ts.map +0 -1
  393. package/dist/index.d.ts.map +0 -1
  394. package/dist/tsconfig.lib.tsbuildinfo +0 -1
  395. package/dist/utils/cn.d.ts +0 -26
  396. package/dist/utils/cn.d.ts.map +0 -1
@@ -0,0 +1,159 @@
1
+ import { forwardRef, useContext } from 'react';
2
+ import { Slot } from '@radix-ui/react-slot';
3
+ import { DashFormContext, useEngineVisibility } from '@dashforge/ui-core';
4
+ import { cn } from '../../utils/cn.js';
5
+ import { useAccessState } from '../../hooks/useAccessState.js';
6
+ import { buttonVariants } from '../Button/button.variants.js';
7
+ import { Spinner } from '../Spinner/Spinner.js';
8
+ import type { SpinnerSize } from '../Spinner/spinner.types.js';
9
+ import {
10
+ ICON_BUTTON_BASE,
11
+ ICON_BUTTON_SIZE_OVERRIDES,
12
+ } from './iconButton.variants.js';
13
+ import type { IconButtonProps } from './iconButton.types.js';
14
+
15
+ /**
16
+ * Map IconButton size to Spinner size. Same mapping as Button —
17
+ * Spinner has 5 steps, the parent has 3.
18
+ *
19
+ * @internal
20
+ */
21
+ function iconButtonSizeToSpinnerSize(size: 'sm' | 'md' | 'lg'): SpinnerSize {
22
+ return size === 'sm' ? 'xs' : size === 'lg' ? 'md' : 'sm';
23
+ }
24
+
25
+ /**
26
+ * Dashforge TW IconButton — square, icon-only action button.
27
+ *
28
+ * Reuses `buttonVariants` 1:1 (same `variant` / `color` / `size` /
29
+ * `loading` axes) so every `<Button>` style maps to the equivalent
30
+ * `<IconButton>` with zero code duplication. The ONLY additions are:
31
+ *
32
+ * - `ICON_BUTTON_SIZE_OVERRIDES` — forces `w-N + px-0` so the button
33
+ * is square at every size token
34
+ * - `ICON_BUTTON_BASE` — `aspect-square inline-flex items-center
35
+ * justify-center` for layout
36
+ *
37
+ * Both additions are token-driven (spacing) or layout-primitive
38
+ * (geometry) — no hardcoded hex, no `dark:` variants.
39
+ *
40
+ * **`aria-label` is REQUIRED** at the type level — icon-only buttons
41
+ * are invisible to assistive tech without an explicit accessible
42
+ * name. The TypeScript compiler enforces this rather than relying on
43
+ * runtime warnings.
44
+ *
45
+ * RBAC integration mirrors `<Button>`: `access` with
46
+ * `onUnauthorized: 'hide' | 'disable' | 'readonly'`. No `visibleWhen`
47
+ * (mirror Button — buttons should disable, not hide, on
48
+ * state-driven unavailability; permission-driven hiding is `access`).
49
+ *
50
+ * @example
51
+ * ```tsx
52
+ * import { Trash2 } from 'lucide-react';
53
+ *
54
+ * <IconButton aria-label="Delete row" color="danger" onClick={onDelete}>
55
+ * <Trash2 size={20} />
56
+ * </IconButton>
57
+ *
58
+ * // Polymorphism via Radix Slot
59
+ * <IconButton asChild aria-label="Open settings" variant="ghost">
60
+ * <Link to="/settings"><SettingsIcon size={20} /></Link>
61
+ * </IconButton>
62
+ *
63
+ * // RBAC-gated
64
+ * <IconButton
65
+ * aria-label="Publish article"
66
+ * variant="solid"
67
+ * color="primary"
68
+ * access={{ resource: 'article', action: 'publish', onUnauthorized: 'disable' }}
69
+ * >
70
+ * <PublishIcon size={20} />
71
+ * </IconButton>
72
+ *
73
+ * // Loading swap
74
+ * <IconButton aria-label="Save" loading={isSaving}>
75
+ * <SaveIcon size={20} />
76
+ * </IconButton>
77
+ * ```
78
+ */
79
+ export const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(
80
+ function IconButton(props, ref) {
81
+ const {
82
+ access,
83
+ visibleWhen,
84
+ disabled,
85
+ variant,
86
+ color,
87
+ size = 'md',
88
+ loading,
89
+ asChild,
90
+ sx,
91
+ className,
92
+ children,
93
+ ...rest
94
+ } = props;
95
+
96
+ // Bridge — both hooks called unconditionally (rules-of-hooks).
97
+ const bridge = useContext(DashFormContext);
98
+ const isVisible = useEngineVisibility(bridge?.engine, visibleWhen);
99
+ const accessState = useAccessState(access);
100
+ if (!isVisible || !accessState.visible) return null;
101
+
102
+ // Effective disabled = explicit OR RBAC.disabled OR RBAC.readonly OR loading.
103
+ // Mirrors `<Button>` exactly — IconButton has no true read-only
104
+ // state, so RBAC readonly maps to disabled (same as MUI side).
105
+ const effectiveDisabled =
106
+ Boolean(disabled) ||
107
+ accessState.disabled ||
108
+ accessState.readonly ||
109
+ Boolean(loading);
110
+
111
+ const classes = cn(
112
+ buttonVariants({ variant, color, size, loading }),
113
+ ICON_BUTTON_SIZE_OVERRIDES[size],
114
+ ICON_BUTTON_BASE,
115
+ sx,
116
+ className
117
+ );
118
+
119
+ // `aria-busy` while loading — distinguishes "wait for action to
120
+ // finish" from "you can't do this" in screen-reader announcements.
121
+ const ariaBusy = loading ? true : undefined;
122
+
123
+ if (asChild) {
124
+ return (
125
+ <Slot
126
+ ref={ref}
127
+ className={classes}
128
+ data-disabled={effectiveDisabled || undefined}
129
+ aria-disabled={effectiveDisabled || undefined}
130
+ aria-busy={ariaBusy}
131
+ >
132
+ {children}
133
+ </Slot>
134
+ );
135
+ }
136
+
137
+ return (
138
+ <button
139
+ ref={ref}
140
+ type={rest.type ?? 'button'}
141
+ disabled={effectiveDisabled}
142
+ aria-busy={ariaBusy}
143
+ className={classes}
144
+ {...rest}
145
+ >
146
+ {loading ? (
147
+ <Spinner
148
+ size={iconButtonSizeToSpinnerSize(size)}
149
+ thickness="thick"
150
+ withTrack
151
+ label=""
152
+ />
153
+ ) : (
154
+ children
155
+ )}
156
+ </button>
157
+ );
158
+ }
159
+ );
@@ -0,0 +1,106 @@
1
+ import type { ButtonHTMLAttributes, ReactNode } from 'react';
2
+ import type { ClassValue } from 'tailwind-variants';
3
+ import type { Engine } from '@dashforge/ui-core';
4
+ import type { AccessRequirement } from '@dashforge/rbac';
5
+ import type { ButtonVariants } from '../Button/button.variants.js';
6
+
7
+ /**
8
+ * Props for `<IconButton>`.
9
+ *
10
+ * IconButton is the **icon-only variant of `<Button>`** — it reuses
11
+ * `buttonVariants` 1:1 (same `variant` × `color` × `size` × `loading`
12
+ * compound matrix) and adds:
13
+ *
14
+ * - Square geometry (width = height = size token, `aspect-square`)
15
+ * - Zero horizontal padding (no text to pad around)
16
+ * - **`aria-label` REQUIRED** at the type level — icon-only buttons
17
+ * are invisible to screen readers without an explicit label, so we
18
+ * enforce it via TypeScript rather than runtime warning.
19
+ *
20
+ * Notes on excluded props (deliberate parity with `<Button>`):
21
+ * - **No `slotProps`** — IconButton renders a single DOM element
22
+ * (`<button>` plus a transient loading swap); `className` + `sx`
23
+ * cover the override surface fully, matching Button.
24
+ * - **No `fullWidth`** — meaningless on an icon-sized button.
25
+ *
26
+ * As of 1.1.0 (Sprint 4.4 alignment), IconButton + Button both
27
+ * support `visibleWhen` — see prop docs below.
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * import { TrashIcon } from 'lucide-react';
32
+ *
33
+ * <IconButton aria-label="Delete row" color="danger" onClick={onDelete}>
34
+ * <TrashIcon size={20} />
35
+ * </IconButton>
36
+ *
37
+ * // Polymorphism via Radix Slot — wrap a router Link without nesting
38
+ * // a button inside an anchor.
39
+ * <IconButton asChild aria-label="Open settings" variant="ghost">
40
+ * <Link to="/settings"><SettingsIcon size={20} /></Link>
41
+ * </IconButton>
42
+ *
43
+ * // RBAC-gated
44
+ * <IconButton
45
+ * aria-label="Publish article"
46
+ * variant="solid"
47
+ * color="primary"
48
+ * access={{ resource: 'article', action: 'publish', onUnauthorized: 'disable' }}
49
+ * >
50
+ * <PublishIcon size={20} />
51
+ * </IconButton>
52
+ * ```
53
+ */
54
+ export interface IconButtonProps
55
+ extends Omit<
56
+ ButtonHTMLAttributes<HTMLButtonElement>,
57
+ 'color' | 'children'
58
+ >,
59
+ Pick<ButtonVariants, 'variant' | 'color' | 'size' | 'loading'> {
60
+ /**
61
+ * The icon — typically an SVG element from the consumer's icon
62
+ * library (Lucide / Phosphor / Tabler / inline SVG). A single
63
+ * `ReactNode` is expected.
64
+ */
65
+ children: ReactNode;
66
+
67
+ /**
68
+ * Required at the type level — icon-only buttons MUST have an
69
+ * accessible name. Pass a short verb phrase describing the action
70
+ * (e.g. `"Delete row"`, `"Open settings"`, NOT `"Trash icon"`).
71
+ */
72
+ 'aria-label': string;
73
+
74
+ /**
75
+ * Render-as-child via Radix Slot — the resolved IconButton
76
+ * className is forwarded to the immediate child element, no
77
+ * `<button>` DOM is emitted. Useful for router `<Link>`s.
78
+ * Same contract as `<Button asChild>`.
79
+ */
80
+ asChild?: boolean;
81
+
82
+ /**
83
+ * RBAC requirement. When the current subject doesn't satisfy the
84
+ * requirement, the button is hidden / disabled / read-only per
85
+ * `onUnauthorized`. Same contract as `<Button access>`.
86
+ */
87
+ access?: AccessRequirement;
88
+
89
+ /**
90
+ * Reactive visibility predicate — same contract as `<Button>` and
91
+ * `<Chip>`. When the predicate returns `false`, the component
92
+ * renders `null`. Inside a `<DashForm>` it subscribes to engine
93
+ * state and re-evaluates on every change; outside a form, it's
94
+ * called with `null` engine (capture external state in closure).
95
+ *
96
+ * Added in 1.1.0 (Sprint 4.4 alignment) to keep IconButton in
97
+ * lockstep with Button.
98
+ */
99
+ visibleWhen?: (engine: Engine) => boolean;
100
+
101
+ /**
102
+ * Root-element class shortcut (string or `clsx`-compatible value).
103
+ * Last-wins via `tailwind-merge` inside `cn()`.
104
+ */
105
+ sx?: ClassValue;
106
+ }
@@ -0,0 +1,31 @@
1
+ import type { ButtonVariants } from '../Button/button.variants.js';
2
+
3
+ /**
4
+ * IconButton size overrides — applied ON TOP of `buttonVariants(...)`.
5
+ *
6
+ * Button's `size` axis sets `h-X` + `px-Y` (rectangular). For
7
+ * IconButton we need a SQUARE shape, so we:
8
+ * - zero out the horizontal padding (`px-0`)
9
+ * - set an explicit width that matches the height (`w-N` mirrors the
10
+ * `h-N` from Button's size variant)
11
+ *
12
+ * The `aspect-square` utility provides belt-and-braces in the edge
13
+ * case where Tailwind purges the explicit `w-N` (e.g., when the user
14
+ * passes `size` dynamically and the JIT can't statically see all
15
+ * combinations).
16
+ *
17
+ * Token propagation: `w-N` resolves to `var(--df-tw-spacing-N)`
18
+ * through `dashforgePreset()`, identical to how `h-N` works for
19
+ * Button. `patchTheme({ spacing: { 10: '2.75rem' } })` patches both
20
+ * Button height and IconButton size in lockstep.
21
+ */
22
+ type IconButtonSize = NonNullable<ButtonVariants['size']>;
23
+
24
+ export const ICON_BUTTON_SIZE_OVERRIDES: Record<IconButtonSize, string> = {
25
+ sm: 'w-8 px-0',
26
+ md: 'w-10 px-0',
27
+ lg: 'w-12 px-0',
28
+ };
29
+
30
+ /** Always-applied layout primitives — not token-driven (geometric CSS). */
31
+ export const ICON_BUTTON_BASE = 'aspect-square inline-flex items-center justify-center';
@@ -33,7 +33,7 @@ export const leftNavVariants = tv({
33
33
  'flex items-center gap-2 px-3 h-14 shrink-0',
34
34
  'border-b border-neutral-200 text-neutral-900 font-semibold',
35
35
  ],
36
- list: 'flex flex-col gap-0.5 p-2 flex-1 overflow-y-auto',
36
+ list: 'flex flex-col gap-0.5 p-2 flex-1 overflow-y-auto list-none m-0',
37
37
  item: 'list-none',
38
38
  itemLink: [
39
39
  'flex items-center gap-2 px-2 py-2 rounded-md',
@@ -66,7 +66,7 @@ export const leftNavVariants = tv({
66
66
  'outline-none focus-visible:ring-2 focus-visible:ring-primary-500/50',
67
67
  'transition-colors w-full',
68
68
  ],
69
- groupChildren: 'flex flex-col gap-0.5 pl-6',
69
+ groupChildren: 'flex flex-col gap-0.5 pl-6 list-none m-0',
70
70
  footer: [
71
71
  'border-t border-neutral-200 p-3 shrink-0',
72
72
  'flex items-center gap-2',