@k3-universe/react-kit 0.0.28 → 0.0.29

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 (831) hide show
  1. package/.storybook/main.ts +1 -1
  2. package/.storybook/preview.ts +18 -10
  3. package/biome.json +10 -0
  4. package/dist/index.js +2786 -1410
  5. package/dist/kit/builder/auth/AuthProvider.d.ts +36 -0
  6. package/dist/kit/builder/auth/AuthProvider.d.ts.map +1 -0
  7. package/dist/kit/builder/auth/adapter.d.ts +14 -0
  8. package/dist/kit/builder/auth/adapter.d.ts.map +1 -0
  9. package/dist/kit/builder/auth/client-adapters.d.ts +149 -0
  10. package/dist/kit/builder/auth/client-adapters.d.ts.map +1 -0
  11. package/dist/kit/builder/auth/components.d.ts +119 -0
  12. package/dist/kit/builder/auth/components.d.ts.map +1 -0
  13. package/dist/kit/builder/auth/hooks.d.ts +158 -0
  14. package/dist/kit/builder/auth/hooks.d.ts.map +1 -0
  15. package/dist/kit/builder/auth/index.d.ts +11 -0
  16. package/dist/kit/builder/auth/index.d.ts.map +1 -0
  17. package/dist/kit/builder/auth/permission-checker.d.ts +31 -0
  18. package/dist/kit/builder/auth/permission-checker.d.ts.map +1 -0
  19. package/dist/kit/builder/auth/storage.d.ts +17 -0
  20. package/dist/kit/builder/auth/storage.d.ts.map +1 -0
  21. package/dist/kit/builder/auth/token-manager.d.ts +9 -0
  22. package/dist/kit/builder/auth/token-manager.d.ts.map +1 -0
  23. package/dist/kit/builder/auth/types.d.ts +183 -0
  24. package/dist/kit/builder/auth/types.d.ts.map +1 -0
  25. package/dist/kit/builder/data-table/components/DataTable.d.ts.map +1 -1
  26. package/dist/kit/builder/data-table/components/DataTableColumnHeader.d.ts +2 -2
  27. package/dist/kit/builder/data-table/components/DataTableColumnHeader.d.ts.map +1 -1
  28. package/dist/kit/builder/data-table/components/DataTablePagination.d.ts +1 -1
  29. package/dist/kit/builder/data-table/components/DataTablePagination.d.ts.map +1 -1
  30. package/dist/kit/builder/data-table/components/DataTableViewOptions.d.ts +1 -1
  31. package/dist/kit/builder/data-table/components/DataTableViewOptions.d.ts.map +1 -1
  32. package/dist/kit/builder/data-table/types.d.ts.map +1 -1
  33. package/dist/kit/builder/dialog/index.d.ts +1 -1
  34. package/dist/kit/builder/dialog/index.d.ts.map +1 -1
  35. package/dist/kit/builder/dialog/provider.d.ts +0 -1
  36. package/dist/kit/builder/dialog/provider.d.ts.map +1 -1
  37. package/dist/kit/builder/form/components/FormBuilder.d.ts.map +1 -1
  38. package/dist/kit/builder/form/components/FormBuilderActions.d.ts.map +1 -1
  39. package/dist/kit/builder/form/components/FormBuilderContext.d.ts.map +1 -1
  40. package/dist/kit/builder/form/components/FormBuilderField.d.ts +1 -1
  41. package/dist/kit/builder/form/components/FormBuilderField.d.ts.map +1 -1
  42. package/dist/kit/builder/form/components/fields/ArrayField.d.ts +1 -1
  43. package/dist/kit/builder/form/components/fields/ArrayField.d.ts.map +1 -1
  44. package/dist/kit/builder/form/components/fields/AutocompleteField.d.ts +1 -1
  45. package/dist/kit/builder/form/components/fields/AutocompleteField.d.ts.map +1 -1
  46. package/dist/kit/builder/form/components/fields/CheckboxField.d.ts +1 -1
  47. package/dist/kit/builder/form/components/fields/CheckboxField.d.ts.map +1 -1
  48. package/dist/kit/builder/form/components/fields/DateField.d.ts +1 -1
  49. package/dist/kit/builder/form/components/fields/DateField.d.ts.map +1 -1
  50. package/dist/kit/builder/form/components/fields/DatePickerField.d.ts +1 -1
  51. package/dist/kit/builder/form/components/fields/DatePickerField.d.ts.map +1 -1
  52. package/dist/kit/builder/form/components/fields/DateRangePickerField.d.ts +1 -1
  53. package/dist/kit/builder/form/components/fields/DateRangePickerField.d.ts.map +1 -1
  54. package/dist/kit/builder/form/components/fields/DateTimePickerField.d.ts +1 -1
  55. package/dist/kit/builder/form/components/fields/DateTimePickerField.d.ts.map +1 -1
  56. package/dist/kit/builder/form/components/fields/DateTimeRangePickerField.d.ts +1 -1
  57. package/dist/kit/builder/form/components/fields/DateTimeRangePickerField.d.ts.map +1 -1
  58. package/dist/kit/builder/form/components/fields/FileField.d.ts +1 -1
  59. package/dist/kit/builder/form/components/fields/FileField.d.ts.map +1 -1
  60. package/dist/kit/builder/form/components/fields/MonthPickerField.d.ts +1 -1
  61. package/dist/kit/builder/form/components/fields/MonthPickerField.d.ts.map +1 -1
  62. package/dist/kit/builder/form/components/fields/MonthRangePickerField.d.ts +1 -1
  63. package/dist/kit/builder/form/components/fields/MonthRangePickerField.d.ts.map +1 -1
  64. package/dist/kit/builder/form/components/fields/NumberField.d.ts +1 -1
  65. package/dist/kit/builder/form/components/fields/NumberField.d.ts.map +1 -1
  66. package/dist/kit/builder/form/components/fields/ObjectField.d.ts.map +1 -1
  67. package/dist/kit/builder/form/components/fields/RadioField.d.ts +1 -1
  68. package/dist/kit/builder/form/components/fields/RadioField.d.ts.map +1 -1
  69. package/dist/kit/builder/form/components/fields/SelectField.d.ts +1 -1
  70. package/dist/kit/builder/form/components/fields/SelectField.d.ts.map +1 -1
  71. package/dist/kit/builder/form/components/fields/SwitchField.d.ts +1 -1
  72. package/dist/kit/builder/form/components/fields/SwitchField.d.ts.map +1 -1
  73. package/dist/kit/builder/form/components/fields/TextField.d.ts +1 -1
  74. package/dist/kit/builder/form/components/fields/TextField.d.ts.map +1 -1
  75. package/dist/kit/builder/form/components/fields/TextareaField.d.ts +1 -1
  76. package/dist/kit/builder/form/components/fields/TextareaField.d.ts.map +1 -1
  77. package/dist/kit/builder/form/components/fields/TimePickerField.d.ts +1 -1
  78. package/dist/kit/builder/form/components/fields/TimePickerField.d.ts.map +1 -1
  79. package/dist/kit/builder/form/components/fields/TimeRangePickerField.d.ts +1 -1
  80. package/dist/kit/builder/form/components/fields/TimeRangePickerField.d.ts.map +1 -1
  81. package/dist/kit/builder/form/components/fields/index.d.ts.map +1 -1
  82. package/dist/kit/builder/form/components/fields/types.d.ts.map +1 -1
  83. package/dist/kit/builder/form/components/sectionNodes.d.ts.map +1 -1
  84. package/dist/kit/builder/form/hooks/useFormBuilder.d.ts.map +1 -1
  85. package/dist/kit/builder/form/types.d.ts.map +1 -1
  86. package/dist/kit/builder/form/utils/section-factories.d.ts.map +1 -1
  87. package/dist/kit/builder/page/Page.d.ts.map +1 -1
  88. package/dist/kit/builder/page/index.d.ts.map +1 -1
  89. package/dist/kit/builder/section/SectionBuilder.d.ts +1 -1
  90. package/dist/kit/builder/section/SectionBuilder.d.ts.map +1 -1
  91. package/dist/kit/builder/section/SectionContainer.d.ts +14 -0
  92. package/dist/kit/builder/section/SectionContainer.d.ts.map +1 -0
  93. package/dist/kit/builder/stack-dialog/context.d.ts.map +1 -1
  94. package/dist/kit/builder/stack-dialog/hooks.d.ts.map +1 -1
  95. package/dist/kit/builder/stack-dialog/index.d.ts +3 -3
  96. package/dist/kit/builder/stack-dialog/index.d.ts.map +1 -1
  97. package/dist/kit/builder/stack-dialog/provider.d.ts.map +1 -1
  98. package/dist/kit/builder/stack-dialog/renderer.d.ts.map +1 -1
  99. package/dist/kit/builder/stack-dialog/types.d.ts +1 -1
  100. package/dist/kit/builder/stack-dialog/types.d.ts.map +1 -1
  101. package/dist/kit/components/autocomplete/Autocomplete.d.ts +1 -1
  102. package/dist/kit/components/autocomplete/Autocomplete.d.ts.map +1 -1
  103. package/dist/kit/components/autocomplete/types.d.ts.map +1 -1
  104. package/dist/kit/components/datepicker/DatePicker.d.ts.map +1 -1
  105. package/dist/kit/components/datepicker/DateRangePicker.d.ts.map +1 -1
  106. package/dist/kit/components/datetimepicker/DateTimePicker.d.ts.map +1 -1
  107. package/dist/kit/components/datetimepicker/DateTimeRangePicker.d.ts.map +1 -1
  108. package/dist/kit/components/datetimepicker/index.d.ts.map +1 -1
  109. package/dist/kit/components/fileuploader/FileUploader.d.ts.map +1 -1
  110. package/dist/kit/components/fileuploader/types.d.ts +2 -2
  111. package/dist/kit/components/forminfo/FormInfoError.d.ts.map +1 -1
  112. package/dist/kit/components/login/Login.d.ts +1 -1
  113. package/dist/kit/components/login/Login.d.ts.map +1 -1
  114. package/dist/kit/components/monthpicker/MonthInput.d.ts.map +1 -1
  115. package/dist/kit/components/monthpicker/MonthPicker.d.ts.map +1 -1
  116. package/dist/kit/components/monthpicker/MonthRangeInput.d.ts.map +1 -1
  117. package/dist/kit/components/monthpicker/MonthRangePicker.d.ts.map +1 -1
  118. package/dist/kit/components/timepicker/TimePicker.d.ts.map +1 -1
  119. package/dist/kit/components/timepicker/TimeRangePicker.d.ts.map +1 -1
  120. package/dist/kit/components/timepicker/index.d.ts.map +1 -1
  121. package/dist/kit/layouts/admin/components/AdminLayout.d.ts.map +1 -1
  122. package/dist/kit/layouts/admin/components/ThemeToggle.d.ts.map +1 -1
  123. package/dist/kit/layouts/admin/hooks/menu.d.ts.map +1 -1
  124. package/dist/kit/layouts/admin/providers/AdminMenuProvider.d.ts +1 -1
  125. package/dist/kit/layouts/admin/providers/AdminMenuProvider.d.ts.map +1 -1
  126. package/dist/kit/themes/base.css +1 -1
  127. package/dist/kit/themes/clean-slate.css +5 -5
  128. package/dist/kit/themes/default.css +5 -5
  129. package/dist/kit/themes/minimal-modern.css +5 -5
  130. package/dist/kit/themes/spotify.css +5 -5
  131. package/dist/shadcn/hooks/use-mobile.d.ts.map +1 -1
  132. package/dist/shadcn/ui/accordion.d.ts +2 -2
  133. package/dist/shadcn/ui/accordion.d.ts.map +1 -1
  134. package/dist/shadcn/ui/alert-dialog.d.ts +4 -4
  135. package/dist/shadcn/ui/alert-dialog.d.ts.map +1 -1
  136. package/dist/shadcn/ui/alert.d.ts +4 -4
  137. package/dist/shadcn/ui/alert.d.ts.map +1 -1
  138. package/dist/shadcn/ui/aspect-ratio.d.ts +1 -1
  139. package/dist/shadcn/ui/aspect-ratio.d.ts.map +1 -1
  140. package/dist/shadcn/ui/avatar.d.ts +2 -2
  141. package/dist/shadcn/ui/avatar.d.ts.map +1 -1
  142. package/dist/shadcn/ui/badge.d.ts +2 -2
  143. package/dist/shadcn/ui/badge.d.ts.map +1 -1
  144. package/dist/shadcn/ui/breadcrumb.d.ts +8 -8
  145. package/dist/shadcn/ui/breadcrumb.d.ts.map +1 -1
  146. package/dist/shadcn/ui/button.d.ts +2 -2
  147. package/dist/shadcn/ui/button.d.ts.map +1 -1
  148. package/dist/shadcn/ui/calendar.d.ts +2 -2
  149. package/dist/shadcn/ui/calendar.d.ts.map +1 -1
  150. package/dist/shadcn/ui/card.d.ts +8 -8
  151. package/dist/shadcn/ui/card.d.ts.map +1 -1
  152. package/dist/shadcn/ui/carousel.d.ts +5 -5
  153. package/dist/shadcn/ui/carousel.d.ts.map +1 -1
  154. package/dist/shadcn/ui/chart.d.ts +7 -7
  155. package/dist/shadcn/ui/chart.d.ts.map +1 -1
  156. package/dist/shadcn/ui/checkbox.d.ts +2 -2
  157. package/dist/shadcn/ui/checkbox.d.ts.map +1 -1
  158. package/dist/shadcn/ui/collapsible.d.ts +1 -1
  159. package/dist/shadcn/ui/collapsible.d.ts.map +1 -1
  160. package/dist/shadcn/ui/command.d.ts +2 -2
  161. package/dist/shadcn/ui/command.d.ts.map +1 -1
  162. package/dist/shadcn/ui/context-menu.d.ts +4 -4
  163. package/dist/shadcn/ui/context-menu.d.ts.map +1 -1
  164. package/dist/shadcn/ui/dialog.d.ts +4 -4
  165. package/dist/shadcn/ui/dialog.d.ts.map +1 -1
  166. package/dist/shadcn/ui/drawer.d.ts +3 -3
  167. package/dist/shadcn/ui/drawer.d.ts.map +1 -1
  168. package/dist/shadcn/ui/dropdown-menu.d.ts +4 -4
  169. package/dist/shadcn/ui/dropdown-menu.d.ts.map +1 -1
  170. package/dist/shadcn/ui/form.d.ts +5 -5
  171. package/dist/shadcn/ui/form.d.ts.map +1 -1
  172. package/dist/shadcn/ui/hover-card.d.ts +2 -2
  173. package/dist/shadcn/ui/hover-card.d.ts.map +1 -1
  174. package/dist/shadcn/ui/input-otp.d.ts +4 -4
  175. package/dist/shadcn/ui/input-otp.d.ts.map +1 -1
  176. package/dist/shadcn/ui/input.d.ts +2 -2
  177. package/dist/shadcn/ui/input.d.ts.map +1 -1
  178. package/dist/shadcn/ui/label.d.ts +2 -2
  179. package/dist/shadcn/ui/label.d.ts.map +1 -1
  180. package/dist/shadcn/ui/menubar.d.ts +4 -4
  181. package/dist/shadcn/ui/menubar.d.ts.map +1 -1
  182. package/dist/shadcn/ui/navigation-menu.d.ts +2 -2
  183. package/dist/shadcn/ui/navigation-menu.d.ts.map +1 -1
  184. package/dist/shadcn/ui/pagination.d.ts +6 -6
  185. package/dist/shadcn/ui/pagination.d.ts.map +1 -1
  186. package/dist/shadcn/ui/popover.d.ts +2 -2
  187. package/dist/shadcn/ui/popover.d.ts.map +1 -1
  188. package/dist/shadcn/ui/progress.d.ts +2 -2
  189. package/dist/shadcn/ui/progress.d.ts.map +1 -1
  190. package/dist/shadcn/ui/radio-group.d.ts +2 -2
  191. package/dist/shadcn/ui/radio-group.d.ts.map +1 -1
  192. package/dist/shadcn/ui/resizable.d.ts +2 -2
  193. package/dist/shadcn/ui/resizable.d.ts.map +1 -1
  194. package/dist/shadcn/ui/scroll-area.d.ts +2 -2
  195. package/dist/shadcn/ui/scroll-area.d.ts.map +1 -1
  196. package/dist/shadcn/ui/select.d.ts +3 -3
  197. package/dist/shadcn/ui/select.d.ts.map +1 -1
  198. package/dist/shadcn/ui/separator.d.ts +2 -2
  199. package/dist/shadcn/ui/separator.d.ts.map +1 -1
  200. package/dist/shadcn/ui/sheet.d.ts +5 -5
  201. package/dist/shadcn/ui/sheet.d.ts.map +1 -1
  202. package/dist/shadcn/ui/sidebar.d.ts +26 -26
  203. package/dist/shadcn/ui/sidebar.d.ts.map +1 -1
  204. package/dist/shadcn/ui/skeleton.d.ts +1 -1
  205. package/dist/shadcn/ui/skeleton.d.ts.map +1 -1
  206. package/dist/shadcn/ui/slider.d.ts +2 -2
  207. package/dist/shadcn/ui/slider.d.ts.map +1 -1
  208. package/dist/shadcn/ui/sonner.d.ts.map +1 -1
  209. package/dist/shadcn/ui/switch.d.ts +2 -2
  210. package/dist/shadcn/ui/switch.d.ts.map +1 -1
  211. package/dist/shadcn/ui/table.d.ts +9 -9
  212. package/dist/shadcn/ui/table.d.ts.map +1 -1
  213. package/dist/shadcn/ui/tabs.d.ts +2 -2
  214. package/dist/shadcn/ui/tabs.d.ts.map +1 -1
  215. package/dist/shadcn/ui/textarea.d.ts +2 -2
  216. package/dist/shadcn/ui/textarea.d.ts.map +1 -1
  217. package/dist/shadcn/ui/toggle-group.d.ts +2 -2
  218. package/dist/shadcn/ui/toggle-group.d.ts.map +1 -1
  219. package/dist/shadcn/ui/toggle.d.ts +2 -2
  220. package/dist/shadcn/ui/toggle.d.ts.map +1 -1
  221. package/dist/shadcn/ui/tooltip.d.ts +2 -2
  222. package/dist/shadcn/ui/tooltip.d.ts.map +1 -1
  223. package/package.json +2 -2
  224. package/src/index.ts +1 -1
  225. package/src/kit/builder/auth/AuthProvider.tsx +131 -0
  226. package/src/kit/builder/auth/adapter.ts +436 -0
  227. package/src/kit/builder/auth/client-adapters.ts +398 -0
  228. package/src/kit/builder/auth/components.tsx +221 -0
  229. package/src/kit/builder/auth/hooks.ts +237 -0
  230. package/src/kit/builder/auth/index.ts +134 -0
  231. package/src/kit/builder/auth/permission-checker.ts +150 -0
  232. package/src/kit/builder/auth/storage.ts +366 -0
  233. package/src/kit/builder/auth/token-manager.ts +55 -0
  234. package/src/kit/builder/auth/types.ts +393 -0
  235. package/src/kit/builder/data-table/components/DataTable.tsx +214 -82
  236. package/src/kit/builder/data-table/components/DataTableColumnHeader.tsx +9 -5
  237. package/src/kit/builder/data-table/components/DataTablePagination.tsx +19 -5
  238. package/src/kit/builder/data-table/components/DataTableViewOptions.tsx +13 -4
  239. package/src/kit/builder/data-table/types.ts +18 -3
  240. package/src/kit/builder/dialog/index.ts +5 -1
  241. package/src/kit/builder/dialog/provider.tsx +56 -27
  242. package/src/kit/builder/form/components/FormBuilder.tsx +10 -14
  243. package/src/kit/builder/form/components/FormBuilderActions.tsx +1 -1
  244. package/src/kit/builder/form/components/FormBuilderContext.tsx +13 -6
  245. package/src/kit/builder/form/components/FormBuilderField.tsx +70 -20
  246. package/src/kit/builder/form/components/fields/ArrayField.tsx +148 -62
  247. package/src/kit/builder/form/components/fields/AutocompleteField.tsx +53 -18
  248. package/src/kit/builder/form/components/fields/CheckboxField.tsx +20 -11
  249. package/src/kit/builder/form/components/fields/DateField.tsx +17 -6
  250. package/src/kit/builder/form/components/fields/DatePickerField.tsx +15 -10
  251. package/src/kit/builder/form/components/fields/DateRangePickerField.tsx +20 -15
  252. package/src/kit/builder/form/components/fields/DateTimePickerField.tsx +16 -11
  253. package/src/kit/builder/form/components/fields/DateTimeRangePickerField.tsx +23 -17
  254. package/src/kit/builder/form/components/fields/FileField.tsx +10 -5
  255. package/src/kit/builder/form/components/fields/MonthPickerField.tsx +18 -11
  256. package/src/kit/builder/form/components/fields/MonthRangePickerField.tsx +23 -17
  257. package/src/kit/builder/form/components/fields/NumberField.tsx +9 -4
  258. package/src/kit/builder/form/components/fields/ObjectField.tsx +12 -7
  259. package/src/kit/builder/form/components/fields/RadioField.tsx +32 -14
  260. package/src/kit/builder/form/components/fields/SelectField.tsx +26 -11
  261. package/src/kit/builder/form/components/fields/SwitchField.tsx +20 -11
  262. package/src/kit/builder/form/components/fields/TextField.tsx +11 -5
  263. package/src/kit/builder/form/components/fields/TextareaField.tsx +9 -4
  264. package/src/kit/builder/form/components/fields/TimePickerField.tsx +16 -11
  265. package/src/kit/builder/form/components/fields/TimeRangePickerField.tsx +23 -17
  266. package/src/kit/builder/form/components/fields/index.ts +21 -21
  267. package/src/kit/builder/form/components/fields/types.ts +15 -11
  268. package/src/kit/builder/form/components/sectionNodes.tsx +63 -40
  269. package/src/kit/builder/form/hooks/useFormBuilder.ts +83 -34
  270. package/src/kit/builder/form/types.ts +173 -148
  271. package/src/kit/builder/form/utils/section-factories.ts +4 -1
  272. package/src/kit/builder/form/utils/transformers.ts +4 -4
  273. package/src/kit/builder/form/utils/validations.ts +1 -1
  274. package/src/kit/builder/page/Page.tsx +26 -6
  275. package/src/kit/builder/page/index.ts +1 -1
  276. package/src/kit/builder/section/SectionBuilder.tsx +252 -127
  277. package/src/kit/builder/section/SectionContainer.tsx +85 -0
  278. package/src/kit/builder/stack-dialog/context.ts +10 -4
  279. package/src/kit/builder/stack-dialog/hooks.ts +4 -3
  280. package/src/kit/builder/stack-dialog/index.ts +5 -11
  281. package/src/kit/builder/stack-dialog/provider.tsx +11 -11
  282. package/src/kit/builder/stack-dialog/renderer.tsx +23 -26
  283. package/src/kit/builder/stack-dialog/types.ts +18 -18
  284. package/src/kit/components/autocomplete/Autocomplete.tsx +631 -549
  285. package/src/kit/components/autocomplete/types.ts +17 -17
  286. package/src/kit/components/datepicker/DatePicker.tsx +33 -9
  287. package/src/kit/components/datepicker/DateRangePicker.tsx +159 -87
  288. package/src/kit/components/datetimepicker/DateTimePicker.tsx +136 -30
  289. package/src/kit/components/datetimepicker/DateTimeRangePicker.tsx +257 -67
  290. package/src/kit/components/datetimepicker/index.ts +3 -3
  291. package/src/kit/components/fileuploader/FileUploader.tsx +315 -180
  292. package/src/kit/components/fileuploader/index.ts +3 -3
  293. package/src/kit/components/fileuploader/types.ts +3 -3
  294. package/src/kit/components/forminfo/FormInfoError.tsx +26 -11
  295. package/src/kit/components/login/Login.tsx +13 -4
  296. package/src/kit/components/monthpicker/MonthInput.tsx +13 -4
  297. package/src/kit/components/monthpicker/MonthPicker.tsx +12 -11
  298. package/src/kit/components/monthpicker/MonthRangeInput.tsx +29 -8
  299. package/src/kit/components/monthpicker/MonthRangePicker.tsx +23 -21
  300. package/src/kit/components/timepicker/TimePicker.tsx +19 -11
  301. package/src/kit/components/timepicker/TimeRangePicker.tsx +106 -29
  302. package/src/kit/components/timepicker/index.ts +3 -3
  303. package/src/kit/layouts/admin/components/AdminLayout.tsx +53 -24
  304. package/src/kit/layouts/admin/components/ThemeToggle.tsx +3 -9
  305. package/src/kit/layouts/admin/hooks/menu.ts +11 -5
  306. package/src/kit/layouts/admin/providers/AdminMenuProvider.tsx +59 -39
  307. package/src/kit/layouts/admin/types/index.ts +1 -1
  308. package/src/kit/themes/base.css +1 -1
  309. package/src/kit/themes/clean-slate.css +40 -32
  310. package/src/kit/themes/default.css +34 -24
  311. package/src/kit/themes/minimal-modern.css +37 -29
  312. package/src/kit/themes/spotify.css +56 -39
  313. package/src/shadcn/hooks/use-mobile.ts +13 -11
  314. package/src/shadcn/lib/utils.ts +2 -2
  315. package/src/shadcn/ui/accordion.tsx +14 -14
  316. package/src/shadcn/ui/alert-dialog.tsx +29 -29
  317. package/src/shadcn/ui/alert.tsx +20 -20
  318. package/src/shadcn/ui/aspect-ratio.tsx +4 -4
  319. package/src/shadcn/ui/avatar.tsx +13 -13
  320. package/src/shadcn/ui/badge.tsx +16 -16
  321. package/src/shadcn/ui/breadcrumb.tsx +28 -28
  322. package/src/shadcn/ui/button.tsx +23 -23
  323. package/src/shadcn/ui/calendar.tsx +82 -78
  324. package/src/shadcn/ui/card.tsx +27 -27
  325. package/src/shadcn/ui/carousel.tsx +93 -93
  326. package/src/shadcn/ui/chart.tsx +103 -103
  327. package/src/shadcn/ui/checkbox.tsx +9 -9
  328. package/src/shadcn/ui/collapsible.tsx +6 -6
  329. package/src/shadcn/ui/command.tsx +36 -36
  330. package/src/shadcn/ui/context-menu.tsx +40 -40
  331. package/src/shadcn/ui/dialog.tsx +28 -28
  332. package/src/shadcn/ui/drawer.tsx +30 -30
  333. package/src/shadcn/ui/dropdown-menu.tsx +41 -41
  334. package/src/shadcn/ui/form.tsx +48 -47
  335. package/src/shadcn/ui/hover-card.tsx +11 -11
  336. package/src/shadcn/ui/input-otp.tsx +23 -23
  337. package/src/shadcn/ui/input.tsx +9 -9
  338. package/src/shadcn/ui/label.tsx +8 -8
  339. package/src/shadcn/ui/menubar.tsx +47 -47
  340. package/src/shadcn/ui/navigation-menu.tsx +33 -33
  341. package/src/shadcn/ui/pagination.tsx +28 -28
  342. package/src/shadcn/ui/popover.tsx +12 -12
  343. package/src/shadcn/ui/progress.tsx +8 -8
  344. package/src/shadcn/ui/radio-group.tsx +11 -11
  345. package/src/shadcn/ui/resizable.tsx +14 -14
  346. package/src/shadcn/ui/scroll-area.tsx +15 -15
  347. package/src/shadcn/ui/select.tsx +34 -34
  348. package/src/shadcn/ui/separator.tsx +9 -9
  349. package/src/shadcn/ui/sheet.tsx +36 -36
  350. package/src/shadcn/ui/sidebar.tsx +227 -227
  351. package/src/shadcn/ui/skeleton.tsx +5 -5
  352. package/src/shadcn/ui/slider.tsx +12 -12
  353. package/src/shadcn/ui/sonner.tsx +11 -11
  354. package/src/shadcn/ui/switch.tsx +9 -9
  355. package/src/shadcn/ui/table.tsx +32 -32
  356. package/src/shadcn/ui/tabs.tsx +14 -14
  357. package/src/shadcn/ui/textarea.tsx +7 -7
  358. package/src/shadcn/ui/toggle-group.tsx +17 -17
  359. package/src/shadcn/ui/toggle.tsx +16 -16
  360. package/src/shadcn/ui/tooltip.tsx +11 -11
  361. package/src/stories/FileUploader.stories.tsx +23 -4
  362. package/src/stories/kit/builder/DataTable.Basic.stories.tsx +14 -4
  363. package/src/stories/kit/builder/DataTable.Filters.stories.tsx +36 -14
  364. package/src/stories/kit/builder/DataTable.Pagination.stories.tsx +3 -2
  365. package/src/stories/kit/builder/DataTable.SelectionAndActions.stories.tsx +18 -4
  366. package/src/stories/kit/builder/DataTable.Sorting.stories.tsx +18 -7
  367. package/src/stories/kit/builder/Dialog.stories.tsx +19 -13
  368. package/src/stories/kit/builder/Form.ArrayLayouts.stories.tsx +40 -16
  369. package/src/stories/kit/builder/Form.Autocomplete.stories.tsx +34 -22
  370. package/src/stories/kit/builder/Form.Basic.stories.tsx +38 -6
  371. package/src/stories/kit/builder/Form.Complex.stories.tsx +356 -111
  372. package/src/stories/kit/builder/Form.DateTime.stories.tsx +12 -8
  373. package/src/stories/kit/builder/Form.Dynamic.stories.tsx +695 -132
  374. package/src/stories/kit/builder/Form.Files.stories.tsx +37 -26
  375. package/src/stories/kit/builder/Form.MultipleFormBuilder.stories.tsx +46 -42
  376. package/src/stories/kit/builder/Form.Pickers.stories.tsx +12 -8
  377. package/src/stories/kit/builder/Form.Simple.stories.tsx +15 -6
  378. package/src/stories/kit/builder/Form.Time.stories.tsx +12 -8
  379. package/src/stories/kit/builder/Page.stories.tsx +32 -6
  380. package/src/stories/kit/builder/Section.stories.tsx +58 -11
  381. package/src/stories/kit/components/Autocomplete.stories.tsx +55 -22
  382. package/src/stories/kit/components/DatePicker.stories.tsx +80 -13
  383. package/src/stories/kit/components/DateRangePicker.stories.tsx +52 -11
  384. package/src/stories/kit/components/Login.stories.tsx +8 -2
  385. package/src/stories/kit/components/MonthPicker.stories.tsx +26 -6
  386. package/src/stories/kit/components/MonthRangePicker.stories.tsx +24 -5
  387. package/src/stories/kit/components/TimePicker.stories.tsx +18 -16
  388. package/src/stories/kit/components/TimeRangePicker.stories.tsx +18 -12
  389. package/src/stories/kit/layouts/admin/AdminLayout.Basic.stories.tsx +29 -6
  390. package/src/stories/kit/layouts/admin/AdminLayout.Collapsible.stories.tsx +26 -5
  391. package/src/stories/kit/layouts/admin/AdminLayout.Complex.stories.tsx +101 -18
  392. package/src/stories/kit/layouts/admin/AdminLayout.CustomSidebarHeaderComponent.stories.tsx +18 -4
  393. package/src/stories/kit/layouts/admin/AdminLayout.CustomSidebarTitleAndIcon.stories.tsx +17 -4
  394. package/src/stories/kit/layouts/admin/AdminLayout.HeaderSlots.stories.tsx +28 -6
  395. package/src/stories/shadcn/ui/Accordion.stories.tsx +33 -10
  396. package/src/stories/shadcn/ui/AlertDialog.stories.tsx +3 -1
  397. package/src/stories/shadcn/ui/Button.stories.tsx +3 -1
  398. package/src/stories/shadcn/ui/Calendar.stories.tsx +6 -1
  399. package/src/stories/shadcn/ui/Card.stories.tsx +11 -2
  400. package/src/stories/shadcn/ui/Checkbox.stories.tsx +11 -3
  401. package/src/stories/shadcn/ui/Collapsible.stories.tsx +12 -5
  402. package/src/stories/shadcn/ui/ContextMenu.stories.tsx +12 -4
  403. package/src/stories/shadcn/ui/Dialog.stories.tsx +15 -3
  404. package/src/stories/shadcn/ui/Drawer.stories.tsx +5 -2
  405. package/src/stories/shadcn/ui/DropdownMenu.stories.tsx +15 -5
  406. package/src/stories/shadcn/ui/Form.stories.tsx +5 -2
  407. package/src/stories/shadcn/ui/HoverCard.stories.tsx +8 -2
  408. package/src/stories/shadcn/ui/Input.stories.tsx +3 -1
  409. package/src/stories/shadcn/ui/InputOtp.stories.tsx +9 -2
  410. package/src/stories/shadcn/ui/Menubar.stories.tsx +21 -7
  411. package/src/stories/shadcn/ui/NavigationMenu.stories.tsx +30 -5
  412. package/src/stories/shadcn/ui/Popover.stories.tsx +8 -2
  413. package/src/stories/shadcn/ui/Resizable.stories.tsx +17 -5
  414. package/src/stories/shadcn/ui/ScrollArea.stories.tsx +54 -2
  415. package/src/stories/shadcn/ui/Select.stories.tsx +7 -1
  416. package/src/stories/shadcn/ui/Sheet.stories.tsx +2 -1
  417. package/src/stories/shadcn/ui/Sidebar.stories.tsx +13 -2
  418. package/src/stories/shadcn/ui/Sonner.stories.tsx +12 -2
  419. package/src/stories/shadcn/ui/Table.stories.tsx +86 -27
  420. package/src/stories/shadcn/ui/Tabs.stories.tsx +9 -2
  421. package/src/stories/shadcn/ui/Textarea.stories.tsx +3 -1
  422. package/src/stories/shadcn/ui/Toggle.stories.tsx +10 -2
  423. package/src/stories/shadcn/ui/Tooltip.stories.tsx +6 -1
  424. package/storybook-static/assets/Accordion.stories-KU4JBR8U.js +52 -0
  425. package/storybook-static/assets/AdminLayout-CPvVCwfY.js +53 -0
  426. package/storybook-static/assets/AdminLayout.Basic.stories-DkP2UVXe.js +4 -0
  427. package/storybook-static/assets/AdminLayout.Collapsible.stories-BuuVjtpW.js +4 -0
  428. package/storybook-static/assets/AdminLayout.Complex.stories-D-k4H0hJ.js +29 -0
  429. package/storybook-static/assets/AdminLayout.CustomSidebarHeaderComponent.stories-B_0IEDd4.js +9 -0
  430. package/storybook-static/assets/AdminLayout.CustomSidebarTitleAndIcon.stories-CvAeXUyA.js +4 -0
  431. package/storybook-static/assets/AdminLayout.HeaderSlots.stories-RBFHoSZK.js +7 -0
  432. package/storybook-static/assets/Alert.stories-DKxKtIc0.js +27 -0
  433. package/storybook-static/assets/AlertDialog.stories-BqTpZ_nG.js +43 -0
  434. package/storybook-static/assets/AspectRatio.stories-DPO9QQ5F.js +22 -0
  435. package/storybook-static/assets/Autocomplete-Cpg4CaJe.js +56 -0
  436. package/storybook-static/assets/Autocomplete.stories-CWj4G5fh.js +56 -0
  437. package/storybook-static/assets/Avatar.stories-DPhov_2g.js +12 -0
  438. package/storybook-static/assets/Badge.stories-DFKrRdXq.js +12 -0
  439. package/storybook-static/assets/Breadcrumb.stories-CTE6CZUC.js +25 -0
  440. package/storybook-static/assets/Button.stories-cbt2InL-.js +26 -0
  441. package/storybook-static/assets/Calendar.stories-DRhTw_43.js +3 -0
  442. package/storybook-static/assets/Card.stories-Isf6n_K3.js +15 -0
  443. package/storybook-static/assets/Carousel.stories-Cmg0I3fR.js +15 -0
  444. package/storybook-static/assets/Chart.stories-aQ-fNijT.js +126 -0
  445. package/storybook-static/assets/Checkbox.stories-B7YMXPDc.js +12 -0
  446. package/storybook-static/assets/Collapsible.stories-BUzl17ZZ.js +18 -0
  447. package/storybook-static/assets/Combination-BdQWAuko.js +41 -0
  448. package/storybook-static/assets/Command.stories-DzBlWQs0.js +30 -0
  449. package/storybook-static/assets/ContextMenu.stories-CJlBQyXc.js +31 -0
  450. package/storybook-static/assets/DataTable.Basic.stories-BWYKFDmK.js +6 -0
  451. package/storybook-static/assets/DataTable.Filters.stories-uZdtJk8t.js +21 -0
  452. package/storybook-static/assets/DataTable.Pagination.stories-C5N1khkp.js +24 -0
  453. package/storybook-static/assets/DataTable.SelectionAndActions.stories-FhCqZKvO.js +26 -0
  454. package/storybook-static/assets/DataTable.Sorting.stories-D-k7EtRj.js +6 -0
  455. package/storybook-static/assets/Dialog.stories-C62AF-Gx.js +54 -0
  456. package/storybook-static/assets/Dialog.stories-lrjRwOus.js +18 -0
  457. package/storybook-static/assets/Drawer.stories-CGjkdJeV.js +24 -0
  458. package/storybook-static/assets/DropdownMenu.stories-DkGClRAA.js +35 -0
  459. package/storybook-static/assets/Form.ArrayLayouts.stories-C5d_062d.js +130 -0
  460. package/storybook-static/assets/Form.Autocomplete.stories-CPZPkk4o.js +142 -0
  461. package/storybook-static/assets/Form.Basic.stories-Bhcu3-3n.js +58 -0
  462. package/storybook-static/assets/Form.Complex.stories-QnXh5a7Q.js +361 -0
  463. package/storybook-static/assets/Form.Dynamic.stories-DFW6wIuT.js +502 -0
  464. package/storybook-static/assets/Form.Simple.stories-BhJcyhbE.js +53 -0
  465. package/storybook-static/assets/Form.stories-PFNsMYxO.js +3 -0
  466. package/storybook-static/assets/FormBuilder-BQBBxo_k.js +5 -0
  467. package/storybook-static/assets/HoverCard.stories-CAlQEVn8.js +21 -0
  468. package/storybook-static/assets/Input.stories-CEhODt0V.js +16 -0
  469. package/storybook-static/assets/InputOtp.stories-DSvNP4dS.js +42 -0
  470. package/storybook-static/assets/Label.stories-B3pa8ZLY.js +14 -0
  471. package/storybook-static/assets/Login.stories-C7KQkmR_.js +37 -0
  472. package/storybook-static/assets/Menubar.stories-CHXhSHxc.js +44 -0
  473. package/storybook-static/assets/MonthPicker.stories-BnrOc4fm.js +99 -0
  474. package/storybook-static/assets/MonthRangePicker.stories-55Gk1t-7.js +134 -0
  475. package/storybook-static/assets/NavigationMenu.stories-CXoS080P.js +30 -0
  476. package/storybook-static/assets/Page.stories-GdSJgZ6-.js +91 -0
  477. package/storybook-static/assets/Pagination.stories-BEBwqH4N.js +29 -0
  478. package/storybook-static/assets/Popover.stories-BICy98Cw.js +15 -0
  479. package/storybook-static/assets/Progress.stories-DECHNOME.js +8 -0
  480. package/storybook-static/assets/RadioGroup.stories-DA7-uKfV.js +16 -0
  481. package/storybook-static/assets/Resizable.stories-B99kWkH7.js +25 -0
  482. package/storybook-static/assets/ScrollArea.stories-BqvUAXqU.js +12 -0
  483. package/storybook-static/assets/Section.stories-lFMlFBQn.js +277 -0
  484. package/storybook-static/assets/SectionBuilder-BQW705x0.js +1 -0
  485. package/storybook-static/assets/Select.stories-BsKyZ6Io.js +17 -0
  486. package/storybook-static/assets/Separator.stories-BTDOaOM2.js +17 -0
  487. package/storybook-static/assets/Sheet.stories-Cam1gR6G.js +24 -0
  488. package/storybook-static/assets/Sidebar.stories-DnOa6G7y.js +106 -0
  489. package/storybook-static/assets/Skeleton.stories-BQNIuIe5.js +9 -0
  490. package/storybook-static/assets/Slider.stories-Bslq7hjq.js +6 -0
  491. package/storybook-static/assets/Sonner.stories-D34pBBtI.js +18 -0
  492. package/storybook-static/assets/Switch.stories-Puyb1-Bx.js +3 -0
  493. package/storybook-static/assets/Table.stories-ClZxAhut.js +35 -0
  494. package/storybook-static/assets/Tabs.stories-CURNTETB.js +10 -0
  495. package/storybook-static/assets/Textarea.stories-Cf1ZBrWw.js +17 -0
  496. package/storybook-static/assets/Toggle.stories-CdMHY_bi.js +3 -0
  497. package/storybook-static/assets/ToggleGroup.stories-BM68m1dX.js +13 -0
  498. package/storybook-static/assets/Tooltip.stories-DiQv64dM.js +10 -0
  499. package/storybook-static/assets/accordion-DVgwQcnw.js +1 -0
  500. package/storybook-static/assets/alert-dialog-DCUEwpqm.js +7 -0
  501. package/storybook-static/assets/avatar-BzwOE-mi.js +1 -0
  502. package/storybook-static/assets/axe-HmUsR1st.js +30 -0
  503. package/storybook-static/assets/badge-BnQWua6u.js +1 -0
  504. package/storybook-static/assets/button-0oMkiryo.js +1 -0
  505. package/storybook-static/assets/card-BJpPOzP8.js +1 -0
  506. package/storybook-static/assets/chart-column-DZGb4ZZS.js +6 -0
  507. package/storybook-static/assets/check-B9hBGj6o.js +6 -0
  508. package/storybook-static/assets/checkbox-CyIeaWHX.js +1 -0
  509. package/storybook-static/assets/chevron-down-D_37S6il.js +6 -0
  510. package/storybook-static/assets/chevron-left-BBoN0vbI.js +6 -0
  511. package/storybook-static/assets/chevron-right-B5vIMLxK.js +6 -0
  512. package/storybook-static/assets/circle-C5Lzx6Nx.js +6 -0
  513. package/storybook-static/assets/clean-slate-D1HmMFJM.css +1 -0
  514. package/storybook-static/assets/command-Csa9p8_a.js +6 -0
  515. package/storybook-static/assets/createLucideIcon-BrHXro7t.js +21 -0
  516. package/storybook-static/assets/default-CN_Fo1GY.css +1 -0
  517. package/storybook-static/assets/dependencies-ctrV69dx.js +1 -0
  518. package/storybook-static/assets/dialog-CsnqITTn.js +1 -0
  519. package/storybook-static/assets/dropdown-menu-BWxxwPHL.js +1 -0
  520. package/storybook-static/assets/ellipsis-BRS038RR.js +6 -0
  521. package/storybook-static/assets/grip-vertical-BxXG8KNA.js +6 -0
  522. package/storybook-static/assets/iframe-C9bogcIc.css +1 -0
  523. package/storybook-static/assets/iframe-v7iAhKit.js +1555 -0
  524. package/storybook-static/assets/index-0-qMRXou.js +1 -0
  525. package/storybook-static/assets/index-AvwFFKJc.js +1 -0
  526. package/storybook-static/assets/index-BVDb4dFc.js +1 -0
  527. package/storybook-static/assets/index-B_qx7A5T.js +1 -0
  528. package/storybook-static/assets/index-BdQq_4o_.js +1 -0
  529. package/storybook-static/assets/index-BfiCOk42.js +1 -0
  530. package/storybook-static/assets/index-Bv9yk470.js +1 -0
  531. package/storybook-static/assets/index-Bw1A27Kp.js +1 -0
  532. package/storybook-static/assets/index-ByqivBWx.js +1 -0
  533. package/storybook-static/assets/index-C9Ta0ZTH.js +1 -0
  534. package/storybook-static/assets/index-CDY5kTx5.js +1 -0
  535. package/storybook-static/assets/index-CGnyVRgB.js +1 -0
  536. package/storybook-static/assets/index-CGrAONsN.js +1 -0
  537. package/storybook-static/assets/index-CWjrGFAQ.js +1 -0
  538. package/storybook-static/assets/index-CwBdPBFz.js +9 -0
  539. package/storybook-static/assets/index-D8RXF03I.js +1 -0
  540. package/storybook-static/assets/index-DLIxT4Z7.js +1 -0
  541. package/storybook-static/assets/index-DW48STyt.js +1 -0
  542. package/storybook-static/assets/index-DbaA6-o1.js +1 -0
  543. package/storybook-static/assets/index-Dph_5COR.js +1 -0
  544. package/storybook-static/assets/index-DrN5n71E.js +1 -0
  545. package/storybook-static/assets/index-Tp9IdbR8.js +1 -0
  546. package/storybook-static/assets/index-WyF3-wTE.js +9 -0
  547. package/storybook-static/assets/index-XSmPROEP.js +1 -0
  548. package/storybook-static/assets/index-Z6wF44KX.js +5 -0
  549. package/storybook-static/assets/index-_RPqOjlQ.js +1 -0
  550. package/storybook-static/assets/index-jrimW4QO.js +1 -0
  551. package/storybook-static/assets/index-nqc17SX4.js +1 -0
  552. package/storybook-static/assets/input-11YRd9gD.js +1 -0
  553. package/storybook-static/assets/jsx-runtime-D_zvdyIk.js +9 -0
  554. package/storybook-static/assets/label-Do8ODIVk.js +1 -0
  555. package/storybook-static/assets/lodash-DDwpuhPG.js +73 -0
  556. package/storybook-static/assets/matchers-7Z3WT2CE-T3xScrR7.js +14 -0
  557. package/storybook-static/assets/minimal-modern-BlYVzfQU.css +1 -0
  558. package/storybook-static/assets/popover-CcciSWAw.js +1 -0
  559. package/storybook-static/assets/preload-helper-Dp1pzeXC.js +1 -0
  560. package/storybook-static/assets/radio-group-DiJ0Y_KQ.js +1 -0
  561. package/storybook-static/assets/react-18-Cr9fq_Ip.js +25 -0
  562. package/storybook-static/assets/react-icons.esm-B_ULMmNU.js +1 -0
  563. package/storybook-static/assets/refresh-cw-BmRDhIV_.js +6 -0
  564. package/storybook-static/assets/schemas-CGNYCiJ6.js +18 -0
  565. package/storybook-static/assets/section-factories-DCCY9R35.js +1 -0
  566. package/storybook-static/assets/select-DDrkxaOg.js +6 -0
  567. package/storybook-static/assets/separator-o5SAUnaJ.js +1 -0
  568. package/storybook-static/assets/settings-2-xWGvvbG6.js +6 -0
  569. package/storybook-static/assets/sheet-C7jhU3XE.js +1 -0
  570. package/storybook-static/assets/shopping-cart-BFlrufvo.js +11 -0
  571. package/storybook-static/assets/sidebar-C8hU1Mxy.js +6 -0
  572. package/storybook-static/assets/skeleton-CjDnQs43.js +1 -0
  573. package/storybook-static/assets/spotify-CUDj7g8m.css +1 -0
  574. package/storybook-static/assets/switch-CKGRuk3u.js +1 -0
  575. package/storybook-static/assets/table-CP3vMqFn.js +1 -0
  576. package/storybook-static/assets/tabs-CopK2m3j.js +1 -0
  577. package/storybook-static/assets/textarea-Dw2vruMl.js +1 -0
  578. package/storybook-static/assets/toggle-DmHbWetf.js +16 -0
  579. package/storybook-static/assets/tooltip-_LqYEYFw.js +1 -0
  580. package/storybook-static/assets/trash-2-xdbApPby.js +11 -0
  581. package/storybook-static/assets/utils-D-KgF5mV.js +1 -0
  582. package/storybook-static/assets/x-B1a4fyWM.js +6 -0
  583. package/storybook-static/favicon-wrapper.svg +46 -0
  584. package/storybook-static/favicon.svg +1 -0
  585. package/storybook-static/iframe.html +687 -0
  586. package/storybook-static/index.d.ts +64 -0
  587. package/storybook-static/index.d.ts.map +1 -0
  588. package/storybook-static/index.html +166 -0
  589. package/storybook-static/index.json +1 -0
  590. package/storybook-static/kit/builder/data-table/components/DataTable.d.ts +37 -0
  591. package/storybook-static/kit/builder/data-table/components/DataTable.d.ts.map +1 -0
  592. package/storybook-static/kit/builder/data-table/components/DataTableColumnHeader.d.ts +8 -0
  593. package/storybook-static/kit/builder/data-table/components/DataTableColumnHeader.d.ts.map +1 -0
  594. package/storybook-static/kit/builder/data-table/components/DataTablePagination.d.ts +6 -0
  595. package/storybook-static/kit/builder/data-table/components/DataTablePagination.d.ts.map +1 -0
  596. package/storybook-static/kit/builder/data-table/components/DataTableViewOptions.d.ts +5 -0
  597. package/storybook-static/kit/builder/data-table/components/DataTableViewOptions.d.ts.map +1 -0
  598. package/storybook-static/kit/builder/data-table/index.d.ts +7 -0
  599. package/storybook-static/kit/builder/data-table/index.d.ts.map +1 -0
  600. package/storybook-static/kit/builder/data-table/types.d.ts +27 -0
  601. package/storybook-static/kit/builder/data-table/types.d.ts.map +1 -0
  602. package/storybook-static/kit/builder/data-table/utils/dotAccessor.d.ts +2 -0
  603. package/storybook-static/kit/builder/data-table/utils/dotAccessor.d.ts.map +1 -0
  604. package/storybook-static/kit/builder/dialog/index.d.ts +3 -0
  605. package/storybook-static/kit/builder/dialog/index.d.ts.map +1 -0
  606. package/storybook-static/kit/builder/dialog/provider.d.ts +26 -0
  607. package/storybook-static/kit/builder/dialog/provider.d.ts.map +1 -0
  608. package/storybook-static/kit/builder/form/components/FormBuilder.d.ts +137 -0
  609. package/storybook-static/kit/builder/form/components/FormBuilder.d.ts.map +1 -0
  610. package/storybook-static/kit/builder/form/components/FormBuilderActions.d.ts +20 -0
  611. package/storybook-static/kit/builder/form/components/FormBuilderActions.d.ts.map +1 -0
  612. package/storybook-static/kit/builder/form/components/FormBuilderField.d.ts +12 -0
  613. package/storybook-static/kit/builder/form/components/FormBuilderField.d.ts.map +1 -0
  614. package/storybook-static/kit/builder/form/components/fields/ArrayField.d.ts +3 -0
  615. package/storybook-static/kit/builder/form/components/fields/ArrayField.d.ts.map +1 -0
  616. package/storybook-static/kit/builder/form/components/fields/AutocompleteField.d.ts +3 -0
  617. package/storybook-static/kit/builder/form/components/fields/AutocompleteField.d.ts.map +1 -0
  618. package/storybook-static/kit/builder/form/components/fields/CheckboxField.d.ts +3 -0
  619. package/storybook-static/kit/builder/form/components/fields/CheckboxField.d.ts.map +1 -0
  620. package/storybook-static/kit/builder/form/components/fields/DateField.d.ts +3 -0
  621. package/storybook-static/kit/builder/form/components/fields/DateField.d.ts.map +1 -0
  622. package/storybook-static/kit/builder/form/components/fields/FileField.d.ts +3 -0
  623. package/storybook-static/kit/builder/form/components/fields/FileField.d.ts.map +1 -0
  624. package/storybook-static/kit/builder/form/components/fields/NumberField.d.ts +3 -0
  625. package/storybook-static/kit/builder/form/components/fields/NumberField.d.ts.map +1 -0
  626. package/storybook-static/kit/builder/form/components/fields/ObjectField.d.ts +3 -0
  627. package/storybook-static/kit/builder/form/components/fields/ObjectField.d.ts.map +1 -0
  628. package/storybook-static/kit/builder/form/components/fields/RadioField.d.ts +3 -0
  629. package/storybook-static/kit/builder/form/components/fields/RadioField.d.ts.map +1 -0
  630. package/storybook-static/kit/builder/form/components/fields/SelectField.d.ts +3 -0
  631. package/storybook-static/kit/builder/form/components/fields/SelectField.d.ts.map +1 -0
  632. package/storybook-static/kit/builder/form/components/fields/SwitchField.d.ts +3 -0
  633. package/storybook-static/kit/builder/form/components/fields/SwitchField.d.ts.map +1 -0
  634. package/storybook-static/kit/builder/form/components/fields/TextField.d.ts +3 -0
  635. package/storybook-static/kit/builder/form/components/fields/TextField.d.ts.map +1 -0
  636. package/storybook-static/kit/builder/form/components/fields/TextareaField.d.ts +3 -0
  637. package/storybook-static/kit/builder/form/components/fields/TextareaField.d.ts.map +1 -0
  638. package/storybook-static/kit/builder/form/components/fields/index.d.ts +14 -0
  639. package/storybook-static/kit/builder/form/components/fields/index.d.ts.map +1 -0
  640. package/storybook-static/kit/builder/form/components/fields/types.d.ts +14 -0
  641. package/storybook-static/kit/builder/form/components/fields/types.d.ts.map +1 -0
  642. package/storybook-static/kit/builder/form/components/index.d.ts +4 -0
  643. package/storybook-static/kit/builder/form/components/index.d.ts.map +1 -0
  644. package/storybook-static/kit/builder/form/index.d.ts +3 -0
  645. package/storybook-static/kit/builder/form/index.d.ts.map +1 -0
  646. package/storybook-static/kit/builder/form/utils/common-forms.d.ts +7 -0
  647. package/storybook-static/kit/builder/form/utils/common-forms.d.ts.map +1 -0
  648. package/storybook-static/kit/builder/form/utils/dependencies.d.ts +41 -0
  649. package/storybook-static/kit/builder/form/utils/dependencies.d.ts.map +1 -0
  650. package/storybook-static/kit/builder/form/utils/field-factories.d.ts +23 -0
  651. package/storybook-static/kit/builder/form/utils/field-factories.d.ts.map +1 -0
  652. package/storybook-static/kit/builder/form/utils/index.d.ts +15 -0
  653. package/storybook-static/kit/builder/form/utils/index.d.ts.map +1 -0
  654. package/storybook-static/kit/builder/form/utils/section-factories.d.ts +7 -0
  655. package/storybook-static/kit/builder/form/utils/section-factories.d.ts.map +1 -0
  656. package/storybook-static/kit/builder/form/utils/transformers.d.ts +6 -0
  657. package/storybook-static/kit/builder/form/utils/transformers.d.ts.map +1 -0
  658. package/storybook-static/kit/builder/form/utils/validations.d.ts +13 -0
  659. package/storybook-static/kit/builder/form/utils/validations.d.ts.map +1 -0
  660. package/storybook-static/kit/builder/form/utils/validators.d.ts +8 -0
  661. package/storybook-static/kit/builder/form/utils/validators.d.ts.map +1 -0
  662. package/storybook-static/kit/builder/page/Page.d.ts +48 -0
  663. package/storybook-static/kit/builder/page/Page.d.ts.map +1 -0
  664. package/storybook-static/kit/builder/page/index.d.ts +2 -0
  665. package/storybook-static/kit/builder/page/index.d.ts.map +1 -0
  666. package/storybook-static/kit/builder/section/SectionBuilder.d.ts +3 -0
  667. package/storybook-static/kit/builder/section/SectionBuilder.d.ts.map +1 -0
  668. package/storybook-static/kit/builder/section/index.d.ts +3 -0
  669. package/storybook-static/kit/builder/section/index.d.ts.map +1 -0
  670. package/storybook-static/kit/builder/section/types.d.ts +70 -0
  671. package/storybook-static/kit/builder/section/types.d.ts.map +1 -0
  672. package/storybook-static/kit/builder/stack-dialog/context.d.ts +3 -0
  673. package/storybook-static/kit/builder/stack-dialog/context.d.ts.map +1 -0
  674. package/storybook-static/kit/builder/stack-dialog/hooks.d.ts +6 -0
  675. package/storybook-static/kit/builder/stack-dialog/hooks.d.ts.map +1 -0
  676. package/storybook-static/kit/builder/stack-dialog/index.d.ts +5 -0
  677. package/storybook-static/kit/builder/stack-dialog/index.d.ts.map +1 -0
  678. package/storybook-static/kit/builder/stack-dialog/provider.d.ts +3 -0
  679. package/storybook-static/kit/builder/stack-dialog/provider.d.ts.map +1 -0
  680. package/storybook-static/kit/builder/stack-dialog/renderer.d.ts +6 -0
  681. package/storybook-static/kit/builder/stack-dialog/renderer.d.ts.map +1 -0
  682. package/storybook-static/kit/builder/stack-dialog/types.d.ts +20 -0
  683. package/storybook-static/kit/builder/stack-dialog/types.d.ts.map +1 -0
  684. package/storybook-static/kit/components/autocomplete/Autocomplete.d.ts +53 -0
  685. package/storybook-static/kit/components/autocomplete/Autocomplete.d.ts.map +1 -0
  686. package/storybook-static/kit/components/autocomplete/index.d.ts +4 -0
  687. package/storybook-static/kit/components/autocomplete/index.d.ts.map +1 -0
  688. package/storybook-static/kit/components/autocomplete/types.d.ts +19 -0
  689. package/storybook-static/kit/components/autocomplete/types.d.ts.map +1 -0
  690. package/storybook-static/kit/components/login/Login.d.ts +29 -0
  691. package/storybook-static/kit/components/login/Login.d.ts.map +1 -0
  692. package/storybook-static/kit/components/login/index.d.ts +2 -0
  693. package/storybook-static/kit/components/login/index.d.ts.map +1 -0
  694. package/storybook-static/kit/components/monthpicker/MonthPicker.d.ts +32 -0
  695. package/storybook-static/kit/components/monthpicker/MonthPicker.d.ts.map +1 -0
  696. package/storybook-static/kit/components/monthpicker/MonthRangePicker.d.ts +48 -0
  697. package/storybook-static/kit/components/monthpicker/MonthRangePicker.d.ts.map +1 -0
  698. package/storybook-static/kit/layouts/admin/components/AdminLayout.d.ts +17 -0
  699. package/storybook-static/kit/layouts/admin/components/AdminLayout.d.ts.map +1 -0
  700. package/storybook-static/kit/layouts/admin/components/ThemeToggle.d.ts +5 -0
  701. package/storybook-static/kit/layouts/admin/components/ThemeToggle.d.ts.map +1 -0
  702. package/storybook-static/kit/layouts/admin/hooks/menu.d.ts +13 -0
  703. package/storybook-static/kit/layouts/admin/hooks/menu.d.ts.map +1 -0
  704. package/storybook-static/kit/layouts/admin/providers/AdminMenuProvider.d.ts +7 -0
  705. package/storybook-static/kit/layouts/admin/providers/AdminMenuProvider.d.ts.map +1 -0
  706. package/storybook-static/kit/layouts/admin/types/index.d.ts +27 -0
  707. package/storybook-static/kit/layouts/admin/types/index.d.ts.map +1 -0
  708. package/storybook-static/kit/providers/ThemeProvider.d.ts +14 -0
  709. package/storybook-static/kit/providers/ThemeProvider.d.ts.map +1 -0
  710. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  711. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  712. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  713. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  714. package/storybook-static/project.json +1 -0
  715. package/storybook-static/sb-addons/a11y-5/manager-bundle.js +5 -0
  716. package/storybook-static/sb-addons/essentials-backgrounds-1/manager-bundle.js +3 -0
  717. package/storybook-static/sb-addons/essentials-measure-2/manager-bundle.js +3 -0
  718. package/storybook-static/sb-addons/essentials-outline-3/manager-bundle.js +3 -0
  719. package/storybook-static/sb-addons/interactions-4/manager-bundle.js +57 -0
  720. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +971 -0
  721. package/storybook-static/sb-addons/storysource-6/manager-bundle.js +3 -0
  722. package/storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
  723. package/storybook-static/sb-common-assets/favicon.svg +1 -0
  724. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  725. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  726. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  727. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  728. package/storybook-static/sb-manager/globals-module-info.js +797 -0
  729. package/storybook-static/sb-manager/globals-runtime.js +69653 -0
  730. package/storybook-static/sb-manager/globals.js +34 -0
  731. package/storybook-static/sb-manager/runtime.js +13181 -0
  732. package/storybook-static/shadcn/hooks/use-mobile.d.ts +2 -0
  733. package/storybook-static/shadcn/hooks/use-mobile.d.ts.map +1 -0
  734. package/storybook-static/shadcn/lib/utils.d.ts +3 -0
  735. package/storybook-static/shadcn/lib/utils.d.ts.map +1 -0
  736. package/storybook-static/shadcn/ui/accordion.d.ts +8 -0
  737. package/storybook-static/shadcn/ui/accordion.d.ts.map +1 -0
  738. package/storybook-static/shadcn/ui/alert-dialog.d.ts +15 -0
  739. package/storybook-static/shadcn/ui/alert-dialog.d.ts.map +1 -0
  740. package/storybook-static/shadcn/ui/alert.d.ts +10 -0
  741. package/storybook-static/shadcn/ui/alert.d.ts.map +1 -0
  742. package/storybook-static/shadcn/ui/aspect-ratio.d.ts +4 -0
  743. package/storybook-static/shadcn/ui/aspect-ratio.d.ts.map +1 -0
  744. package/storybook-static/shadcn/ui/avatar.d.ts +7 -0
  745. package/storybook-static/shadcn/ui/avatar.d.ts.map +1 -0
  746. package/storybook-static/shadcn/ui/badge.d.ts +10 -0
  747. package/storybook-static/shadcn/ui/badge.d.ts.map +1 -0
  748. package/storybook-static/shadcn/ui/breadcrumb.d.ts +12 -0
  749. package/storybook-static/shadcn/ui/breadcrumb.d.ts.map +1 -0
  750. package/storybook-static/shadcn/ui/button.d.ts +11 -0
  751. package/storybook-static/shadcn/ui/button.d.ts.map +1 -0
  752. package/storybook-static/shadcn/ui/calendar.d.ts +9 -0
  753. package/storybook-static/shadcn/ui/calendar.d.ts.map +1 -0
  754. package/storybook-static/shadcn/ui/card.d.ts +10 -0
  755. package/storybook-static/shadcn/ui/card.d.ts.map +1 -0
  756. package/storybook-static/shadcn/ui/carousel.d.ts +20 -0
  757. package/storybook-static/shadcn/ui/carousel.d.ts.map +1 -0
  758. package/storybook-static/shadcn/ui/chart.d.ts +41 -0
  759. package/storybook-static/shadcn/ui/chart.d.ts.map +1 -0
  760. package/storybook-static/shadcn/ui/checkbox.d.ts +5 -0
  761. package/storybook-static/shadcn/ui/checkbox.d.ts.map +1 -0
  762. package/storybook-static/shadcn/ui/collapsible.d.ts +6 -0
  763. package/storybook-static/shadcn/ui/collapsible.d.ts.map +1 -0
  764. package/storybook-static/shadcn/ui/command.d.ts +19 -0
  765. package/storybook-static/shadcn/ui/command.d.ts.map +1 -0
  766. package/storybook-static/shadcn/ui/context-menu.d.ts +26 -0
  767. package/storybook-static/shadcn/ui/context-menu.d.ts.map +1 -0
  768. package/storybook-static/shadcn/ui/dialog.d.ts +16 -0
  769. package/storybook-static/shadcn/ui/dialog.d.ts.map +1 -0
  770. package/storybook-static/shadcn/ui/drawer.d.ts +14 -0
  771. package/storybook-static/shadcn/ui/drawer.d.ts.map +1 -0
  772. package/storybook-static/shadcn/ui/dropdown-menu.d.ts +26 -0
  773. package/storybook-static/shadcn/ui/dropdown-menu.d.ts.map +1 -0
  774. package/storybook-static/shadcn/ui/form.d.ts +25 -0
  775. package/storybook-static/shadcn/ui/form.d.ts.map +1 -0
  776. package/storybook-static/shadcn/ui/hover-card.d.ts +7 -0
  777. package/storybook-static/shadcn/ui/hover-card.d.ts.map +1 -0
  778. package/storybook-static/shadcn/ui/input-otp.d.ts +12 -0
  779. package/storybook-static/shadcn/ui/input-otp.d.ts.map +1 -0
  780. package/storybook-static/shadcn/ui/input.d.ts +4 -0
  781. package/storybook-static/shadcn/ui/input.d.ts.map +1 -0
  782. package/storybook-static/shadcn/ui/label.d.ts +5 -0
  783. package/storybook-static/shadcn/ui/label.d.ts.map +1 -0
  784. package/storybook-static/shadcn/ui/menubar.d.ts +27 -0
  785. package/storybook-static/shadcn/ui/menubar.d.ts.map +1 -0
  786. package/storybook-static/shadcn/ui/navigation-menu.d.ts +15 -0
  787. package/storybook-static/shadcn/ui/navigation-menu.d.ts.map +1 -0
  788. package/storybook-static/shadcn/ui/pagination.d.ts +14 -0
  789. package/storybook-static/shadcn/ui/pagination.d.ts.map +1 -0
  790. package/storybook-static/shadcn/ui/popover.d.ts +8 -0
  791. package/storybook-static/shadcn/ui/popover.d.ts.map +1 -0
  792. package/storybook-static/shadcn/ui/progress.d.ts +5 -0
  793. package/storybook-static/shadcn/ui/progress.d.ts.map +1 -0
  794. package/storybook-static/shadcn/ui/radio-group.d.ts +6 -0
  795. package/storybook-static/shadcn/ui/radio-group.d.ts.map +1 -0
  796. package/storybook-static/shadcn/ui/resizable.d.ts +9 -0
  797. package/storybook-static/shadcn/ui/resizable.d.ts.map +1 -0
  798. package/storybook-static/shadcn/ui/scroll-area.d.ts +6 -0
  799. package/storybook-static/shadcn/ui/scroll-area.d.ts.map +1 -0
  800. package/storybook-static/shadcn/ui/select.d.ts +16 -0
  801. package/storybook-static/shadcn/ui/select.d.ts.map +1 -0
  802. package/storybook-static/shadcn/ui/separator.d.ts +5 -0
  803. package/storybook-static/shadcn/ui/separator.d.ts.map +1 -0
  804. package/storybook-static/shadcn/ui/sheet.d.ts +14 -0
  805. package/storybook-static/shadcn/ui/sheet.d.ts.map +1 -0
  806. package/storybook-static/shadcn/ui/sidebar.d.ts +70 -0
  807. package/storybook-static/shadcn/ui/sidebar.d.ts.map +1 -0
  808. package/storybook-static/shadcn/ui/skeleton.d.ts +3 -0
  809. package/storybook-static/shadcn/ui/skeleton.d.ts.map +1 -0
  810. package/storybook-static/shadcn/ui/slider.d.ts +5 -0
  811. package/storybook-static/shadcn/ui/slider.d.ts.map +1 -0
  812. package/storybook-static/shadcn/ui/sonner.d.ts +4 -0
  813. package/storybook-static/shadcn/ui/sonner.d.ts.map +1 -0
  814. package/storybook-static/shadcn/ui/switch.d.ts +5 -0
  815. package/storybook-static/shadcn/ui/switch.d.ts.map +1 -0
  816. package/storybook-static/shadcn/ui/table.d.ts +11 -0
  817. package/storybook-static/shadcn/ui/table.d.ts.map +1 -0
  818. package/storybook-static/shadcn/ui/tabs.d.ts +8 -0
  819. package/storybook-static/shadcn/ui/tabs.d.ts.map +1 -0
  820. package/storybook-static/shadcn/ui/textarea.d.ts +4 -0
  821. package/storybook-static/shadcn/ui/textarea.d.ts.map +1 -0
  822. package/storybook-static/shadcn/ui/toggle-group.d.ts +8 -0
  823. package/storybook-static/shadcn/ui/toggle-group.d.ts.map +1 -0
  824. package/storybook-static/shadcn/ui/toggle.d.ts +10 -0
  825. package/storybook-static/shadcn/ui/toggle.d.ts.map +1 -0
  826. package/storybook-static/shadcn/ui/tooltip.d.ts +8 -0
  827. package/storybook-static/shadcn/ui/tooltip.d.ts.map +1 -0
  828. package/storybook-static/vite-inject-mocker-entry.js +18 -0
  829. package/tsconfig.json +1 -5
  830. package/tsconfig.tsbuildinfo +1 -0
  831. package/eslint.config.mjs +0 -19
@@ -15,13 +15,29 @@ import {
15
15
  import { Loader2, RefreshCw } from 'lucide-react';
16
16
  import * as React from 'react';
17
17
  import { cn } from '../../../../shadcn/lib/utils';
18
- import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '../../../../shadcn/ui/accordion';
18
+ import {
19
+ Accordion,
20
+ AccordionContent,
21
+ AccordionItem,
22
+ AccordionTrigger,
23
+ } from '../../../../shadcn/ui/accordion';
19
24
  import { Button } from '../../../../shadcn/ui/button';
20
25
  import { Checkbox } from '../../../../shadcn/ui/checkbox';
21
26
  import { Skeleton } from '../../../../shadcn/ui/skeleton';
22
- import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from '../../../../shadcn/ui/table';
27
+ import {
28
+ Table,
29
+ TableBody,
30
+ TableCell,
31
+ TableHead,
32
+ TableHeader,
33
+ TableRow,
34
+ } from '../../../../shadcn/ui/table';
23
35
  import { FormBuilder, type FormBuilderSectionConfig } from '../../form';
24
- import type { DataTableAction, DataTableBatchAction, DataTableFiltersProp } from '../types';
36
+ import type {
37
+ DataTableAction,
38
+ DataTableBatchAction,
39
+ DataTableFiltersProp,
40
+ } from '../types';
25
41
  import { DataTablePagination } from './DataTablePagination';
26
42
  import { DataTableViewOptions } from './DataTableViewOptions';
27
43
 
@@ -102,51 +118,68 @@ export function DataTable<TData, TValue>({
102
118
  filterTitle,
103
119
  filterShowActionsSeparator,
104
120
  }: DataTableProps<TData, TValue>) {
105
- const [rowSelection, setRowSelection] = React.useState<Record<string, boolean>>({});
106
- const [internalSortingState, setInternalSortingState] = React.useState<SortingState>([]);
107
- const [internalFiltersState, setInternalFiltersState] = React.useState<ColumnFiltersState>([]);
108
- const [internalPaginationState, setInternalPaginationState] = React.useState<PaginationState>({ pageIndex: 0, pageSize: 10 });
109
- const [internalVisibilityState, setInternalVisibilityState] = React.useState<VisibilityState>({});
121
+ const [rowSelection, setRowSelection] = React.useState<
122
+ Record<string, boolean>
123
+ >({});
124
+ const [internalSortingState, setInternalSortingState] =
125
+ React.useState<SortingState>([]);
126
+ const [internalFiltersState, setInternalFiltersState] =
127
+ React.useState<ColumnFiltersState>([]);
128
+ const [internalPaginationState, setInternalPaginationState] =
129
+ React.useState<PaginationState>({ pageIndex: 0, pageSize: 10 });
130
+ const [internalVisibilityState, setInternalVisibilityState] =
131
+ React.useState<VisibilityState>({});
110
132
 
111
133
  const effectiveSortingState = sortingState ?? internalSortingState;
112
134
  const effectiveFiltersState = columnFiltersState ?? internalFiltersState;
113
- const effectiveVisibilityState = columnVisibilityState ?? internalVisibilityState;
135
+ const effectiveVisibilityState =
136
+ columnVisibilityState ?? internalVisibilityState;
114
137
  const effectivePaginationState = paginationState ?? internalPaginationState;
115
138
 
116
139
  const isPaginationEnabled = pagination;
117
- const isManualPaginationEnabled = paginationState !== undefined && onPaginationChange !== undefined;
140
+ const isManualPaginationEnabled =
141
+ paginationState !== undefined && onPaginationChange !== undefined;
118
142
  const isSortingEnabled = sorting;
119
143
  const isColumnFiltersEnabled = columnFilters;
120
144
  const isColumnVisibilityEnabled = columnVisibility;
121
145
 
122
146
  // Build selection-aware columns by injecting a selection column at the start
123
- const selectionColumn = React.useMemo<ColumnDef<TData, unknown>>(() => ({
124
- id: '__select',
125
- header: ({ table }) => (
126
- <Checkbox
127
- checked={table.getIsAllPageRowsSelected() || (table.getIsSomePageRowsSelected() && 'indeterminate')}
128
- onCheckedChange={val => table.toggleAllPageRowsSelected(!!val)}
129
- aria-label="Select all"
130
- />
131
- ),
132
- cell: ({ row }) => (
133
- <Checkbox
134
- checked={row.getIsSelected()}
135
- onCheckedChange={val => row.toggleSelected(!!val)}
136
- aria-label="Select row"
137
- onClick={e => e.stopPropagation()}
138
- />
139
- ),
140
- enableSorting: false,
141
- enableHiding: false,
142
- size: 32,
143
- minSize: 32,
144
- maxSize: 32,
145
- }), []);
147
+ const selectionColumn = React.useMemo<ColumnDef<TData, unknown>>(
148
+ () => ({
149
+ id: '__select',
150
+ header: ({ table }) => (
151
+ <Checkbox
152
+ checked={
153
+ table.getIsAllPageRowsSelected() ||
154
+ (table.getIsSomePageRowsSelected() && 'indeterminate')
155
+ }
156
+ onCheckedChange={(val) => table.toggleAllPageRowsSelected(!!val)}
157
+ aria-label="Select all"
158
+ />
159
+ ),
160
+ cell: ({ row }) => (
161
+ <Checkbox
162
+ checked={row.getIsSelected()}
163
+ onCheckedChange={(val) => row.toggleSelected(!!val)}
164
+ aria-label="Select row"
165
+ onClick={(e) => e.stopPropagation()}
166
+ />
167
+ ),
168
+ enableSorting: false,
169
+ enableHiding: false,
170
+ size: 32,
171
+ minSize: 32,
172
+ maxSize: 32,
173
+ }),
174
+ [],
175
+ );
146
176
 
147
177
  const renderedColumns = React.useMemo(
148
- () => (selectable ? [selectionColumn as unknown as ColumnDef<TData, TValue>, ...columns] : columns),
149
- [selectable, selectionColumn, columns]
178
+ () =>
179
+ selectable
180
+ ? [selectionColumn as unknown as ColumnDef<TData, TValue>, ...columns]
181
+ : columns,
182
+ [selectable, selectionColumn, columns],
150
183
  );
151
184
 
152
185
  const table = useReactTable({
@@ -168,23 +201,49 @@ export function DataTable<TData, TValue>({
168
201
  manualPagination: isManualPaginationEnabled,
169
202
  enableSorting: isSortingEnabled,
170
203
  enableColumnFilters: isColumnFiltersEnabled,
171
- onSortingChange: isSortingEnabled ? updater => {
172
- const next = typeof updater === 'function' ? (updater as (old: SortingState) => SortingState)(effectiveSortingState) : updater;
173
- setInternalSortingState(next);
174
- onSortingChange?.(next);
175
- } : undefined,
176
- onColumnFiltersChange: isColumnFiltersEnabled ? updater => {
177
- const next = typeof updater === 'function' ? (updater as (old: ColumnFiltersState) => ColumnFiltersState)(effectiveFiltersState) : updater;
178
- setInternalFiltersState(next);
179
- onColumnFiltersChange?.(next);
180
- } : undefined,
181
- onPaginationChange: isPaginationEnabled ? updater => {
182
- const next = typeof updater === 'function' ? (updater as (old: PaginationState) => PaginationState)(effectivePaginationState) : updater;
183
- setInternalPaginationState(next);
184
- onPaginationChange?.(next);
185
- } : undefined,
186
- onColumnVisibilityChange: updater => {
187
- const next = typeof updater === 'function' ? (updater as (old: VisibilityState) => VisibilityState)(effectiveVisibilityState) : updater;
204
+ onSortingChange: isSortingEnabled
205
+ ? (updater) => {
206
+ const next =
207
+ typeof updater === 'function'
208
+ ? (updater as (old: SortingState) => SortingState)(
209
+ effectiveSortingState,
210
+ )
211
+ : updater;
212
+ setInternalSortingState(next);
213
+ onSortingChange?.(next);
214
+ }
215
+ : undefined,
216
+ onColumnFiltersChange: isColumnFiltersEnabled
217
+ ? (updater) => {
218
+ const next =
219
+ typeof updater === 'function'
220
+ ? (updater as (old: ColumnFiltersState) => ColumnFiltersState)(
221
+ effectiveFiltersState,
222
+ )
223
+ : updater;
224
+ setInternalFiltersState(next);
225
+ onColumnFiltersChange?.(next);
226
+ }
227
+ : undefined,
228
+ onPaginationChange: isPaginationEnabled
229
+ ? (updater) => {
230
+ const next =
231
+ typeof updater === 'function'
232
+ ? (updater as (old: PaginationState) => PaginationState)(
233
+ effectivePaginationState,
234
+ )
235
+ : updater;
236
+ setInternalPaginationState(next);
237
+ onPaginationChange?.(next);
238
+ }
239
+ : undefined,
240
+ onColumnVisibilityChange: (updater) => {
241
+ const next =
242
+ typeof updater === 'function'
243
+ ? (updater as (old: VisibilityState) => VisibilityState)(
244
+ effectiveVisibilityState,
245
+ )
246
+ : updater;
188
247
  setInternalVisibilityState(next);
189
248
  onColumnVisibilityChange?.(next);
190
249
  },
@@ -200,16 +259,25 @@ export function DataTable<TData, TValue>({
200
259
  }, [onTable, table]);
201
260
 
202
261
  // Selected rows convenience
203
- const selectedRows = table.getSelectedRowModel().rows.map(r => r.original as TData);
262
+ const selectedRows = table
263
+ .getSelectedRowModel()
264
+ .rows.map((r) => r.original as TData);
204
265
 
205
266
  // Safe action arrays to avoid array literal defaults in props
206
267
  const safeActions = React.useMemo(() => actions ?? [], [actions]);
207
- const safeBatchActions = React.useMemo(() => batchActions ?? [], [batchActions]);
268
+ const safeBatchActions = React.useMemo(
269
+ () => batchActions ?? [],
270
+ [batchActions],
271
+ );
208
272
 
209
273
  // Skeleton row keys (avoid using array index as key)
210
274
  const skeletonRowKeys = React.useMemo(
211
- () => Array.from({ length: Math.max(3, effectivePaginationState.pageSize ?? 10) }, () => Math.random().toString(36).slice(2)),
212
- [effectivePaginationState.pageSize]
275
+ () =>
276
+ Array.from(
277
+ { length: Math.max(3, effectivePaginationState.pageSize ?? 10) },
278
+ () => Math.random().toString(36).slice(2),
279
+ ),
280
+ [effectivePaginationState.pageSize],
213
281
  );
214
282
 
215
283
  // Standard actions state
@@ -220,10 +288,17 @@ export function DataTable<TData, TValue>({
220
288
 
221
289
  // Render a button from action definition
222
290
  const renderActionButton = (action: DataTableAction, key: React.Key) => {
223
- if (action.element) return <React.Fragment key={key}>{action.element}</React.Fragment>;
291
+ if (action.element)
292
+ return <React.Fragment key={key}>{action.element}</React.Fragment>;
224
293
  const content = (
225
294
  <div className="flex items-center gap-x-2">
226
- {action.icon && <span className={cn(action.iconPosition === 'right' ? 'order-last' : '')}>{action.icon}</span>}
295
+ {action.icon && (
296
+ <span
297
+ className={cn(action.iconPosition === 'right' ? 'order-last' : '')}
298
+ >
299
+ {action.icon}
300
+ </span>
301
+ )}
227
302
  {action.label}
228
303
  </div>
229
304
  );
@@ -241,12 +316,26 @@ export function DataTable<TData, TValue>({
241
316
  );
242
317
  };
243
318
 
244
- const renderBatchButton = (action: DataTableBatchAction<TData>, key: React.Key) => {
245
- if (action.element) return <React.Fragment key={key}>{action.element}</React.Fragment>;
246
- const onClick = () => action.onClick?.({ selectedRows, clearSelection: () => table.resetRowSelection() });
319
+ const renderBatchButton = (
320
+ action: DataTableBatchAction<TData>,
321
+ key: React.Key,
322
+ ) => {
323
+ if (action.element)
324
+ return <React.Fragment key={key}>{action.element}</React.Fragment>;
325
+ const onClick = () =>
326
+ action.onClick?.({
327
+ selectedRows,
328
+ clearSelection: () => table.resetRowSelection(),
329
+ });
247
330
  const content = (
248
331
  <div className="flex items-center gap-x-2">
249
- {action.icon && <span className={cn(action.iconPosition === 'right' ? 'order-last' : '')}>{action.icon}</span>}
332
+ {action.icon && (
333
+ <span
334
+ className={cn(action.iconPosition === 'right' ? 'order-last' : '')}
335
+ >
336
+ {action.icon}
337
+ </span>
338
+ )}
250
339
  {action.label}
251
340
  </div>
252
341
  );
@@ -270,18 +359,27 @@ export function DataTable<TData, TValue>({
270
359
 
271
360
  return (
272
361
  <div className={cn('space-y-3', className)}>
273
- {formFilters && formFilters.length ? (
362
+ {formFilters?.length ? (
274
363
  effectiveFilterWrapper === 'accordion' ? (
275
364
  <div className="rounded-md border border-border">
276
- <Accordion type="single" collapsible className="w-full" defaultValue="filters">
365
+ <Accordion
366
+ type="single"
367
+ collapsible
368
+ className="w-full"
369
+ defaultValue="filters"
370
+ >
277
371
  <AccordionItem value="filters">
278
- <AccordionTrigger className="px-4 py-3 border-b border-border text-md">{effectiveFilterTitle}</AccordionTrigger>
372
+ <AccordionTrigger className="px-4 py-3 border-b border-border text-md">
373
+ {effectiveFilterTitle}
374
+ </AccordionTrigger>
279
375
  <AccordionContent className="px-4 pb-4 pt-5">
280
376
  <FormBuilder
281
377
  key={JSON.stringify(formFilterValues ?? {})}
282
378
  sections={formFilters as FormBuilderSectionConfig[]}
283
379
  defaultValues={formFilterValues}
284
- onSubmit={data => onFormFilterChange?.(data as Record<string, unknown>)}
380
+ onSubmit={(data) =>
381
+ onFormFilterChange?.(data as Record<string, unknown>)
382
+ }
285
383
  onReset={() => onFormFilterChange?.({})}
286
384
  showActions
287
385
  submitLabel="Apply"
@@ -298,7 +396,9 @@ export function DataTable<TData, TValue>({
298
396
  key={JSON.stringify(formFilterValues ?? {})}
299
397
  sections={formFilters as FormBuilderSectionConfig[]}
300
398
  defaultValues={formFilterValues}
301
- onSubmit={data => onFormFilterChange?.(data as Record<string, unknown>)}
399
+ onSubmit={(data) =>
400
+ onFormFilterChange?.(data as Record<string, unknown>)
401
+ }
302
402
  onReset={() => onFormFilterChange?.({})}
303
403
  showActions
304
404
  submitLabel="Apply"
@@ -311,7 +411,9 @@ export function DataTable<TData, TValue>({
311
411
  key={JSON.stringify(formFilterValues ?? {})}
312
412
  sections={formFilters as FormBuilderSectionConfig[]}
313
413
  defaultValues={formFilterValues}
314
- onSubmit={data => onFormFilterChange?.(data as Record<string, unknown>)}
414
+ onSubmit={(data) =>
415
+ onFormFilterChange?.(data as Record<string, unknown>)
416
+ }
315
417
  onReset={() => onFormFilterChange?.({})}
316
418
  showActions
317
419
  submitLabel="Apply"
@@ -321,11 +423,17 @@ export function DataTable<TData, TValue>({
321
423
  )
322
424
  ) : null}
323
425
  {/* Actions Bar */}
324
- {(safeActions.length || showStandardActions || (selectable && table.getSelectedRowModel().rows.length > 0 && safeBatchActions.length)) && (
426
+ {(safeActions.length ||
427
+ showStandardActions ||
428
+ (selectable &&
429
+ table.getSelectedRowModel().rows.length > 0 &&
430
+ safeBatchActions.length)) && (
325
431
  <div className="rounded-md p-2 mt-6">
326
432
  <div className="flex items-center justify-between">
327
433
  <div className="flex items-center gap-2">
328
- {selectable && table.getSelectedRowModel().rows.length > 0 && safeBatchActions.map((a) => renderBatchButton(a, a.key))}
434
+ {selectable &&
435
+ table.getSelectedRowModel().rows.length > 0 &&
436
+ safeBatchActions.map((a) => renderBatchButton(a, a.key))}
329
437
  </div>
330
438
  <div className="flex items-center gap-2">
331
439
  {showStandardActions && onRefresh && (
@@ -337,7 +445,10 @@ export function DataTable<TData, TValue>({
337
445
  className="h-8"
338
446
  title="Refresh"
339
447
  >
340
- <RefreshCw className={cn('h-4 w-4', loading && 'animate-spin')} /> Refresh
448
+ <RefreshCw
449
+ className={cn('h-4 w-4', loading && 'animate-spin')}
450
+ />{' '}
451
+ Refresh
341
452
  </Button>
342
453
  )}
343
454
  {isColumnVisibilityEnabled ? (
@@ -348,7 +459,10 @@ export function DataTable<TData, TValue>({
348
459
  </div>
349
460
  </div>
350
461
  )}
351
- <div className="relative overflow-hidden rounded-md border border-border" aria-busy={loading || undefined}>
462
+ <div
463
+ className="relative overflow-hidden rounded-md border border-border"
464
+ aria-busy={loading || undefined}
465
+ >
352
466
  {loading && (
353
467
  <div className="pointer-events-none absolute inset-0 z-10 flex items-start justify-end p-2">
354
468
  <span className="inline-flex items-center gap-2 rounded bg-background/80 px-2 py-1 text-xs shadow-sm ring-1 ring-border">
@@ -358,13 +472,16 @@ export function DataTable<TData, TValue>({
358
472
  )}
359
473
  <Table>
360
474
  <TableHeader>
361
- {table.getHeaderGroups().map(headerGroup => (
475
+ {table.getHeaderGroups().map((headerGroup) => (
362
476
  <TableRow key={headerGroup.id}>
363
- {headerGroup.headers.map(header => (
477
+ {headerGroup.headers.map((header) => (
364
478
  <TableHead key={header.id}>
365
479
  {header.isPlaceholder
366
480
  ? null
367
- : flexRender(header.column.columnDef.header, header.getContext())}
481
+ : flexRender(
482
+ header.column.columnDef.header,
483
+ header.getContext(),
484
+ )}
368
485
  </TableHead>
369
486
  ))}
370
487
  </TableRow>
@@ -382,23 +499,35 @@ export function DataTable<TData, TValue>({
382
499
  </TableRow>
383
500
  ))
384
501
  ) : table.getRowModel().rows?.length ? (
385
- table.getRowModel().rows.map(row => (
502
+ table.getRowModel().rows.map((row) => (
386
503
  <TableRow
387
504
  key={row.id}
388
505
  data-state={row.getIsSelected() && 'selected'}
389
- className={cn(onRowClick && 'cursor-pointer hover:bg-muted/50')}
390
- onClick={onRowClick ? () => onRowClick(row.original as TData) : undefined}
506
+ className={cn(
507
+ onRowClick && 'cursor-pointer hover:bg-muted/50',
508
+ )}
509
+ onClick={
510
+ onRowClick
511
+ ? () => onRowClick(row.original as TData)
512
+ : undefined
513
+ }
391
514
  >
392
- {row.getVisibleCells().map(cell => (
515
+ {row.getVisibleCells().map((cell) => (
393
516
  <TableCell key={cell.id}>
394
- {flexRender(cell.column.columnDef.cell, cell.getContext())}
517
+ {flexRender(
518
+ cell.column.columnDef.cell,
519
+ cell.getContext(),
520
+ )}
395
521
  </TableCell>
396
522
  ))}
397
523
  </TableRow>
398
524
  ))
399
525
  ) : (
400
526
  <TableRow>
401
- <TableCell colSpan={table.getVisibleLeafColumns().length} className="h-24 text-center">
527
+ <TableCell
528
+ colSpan={table.getVisibleLeafColumns().length}
529
+ className="h-24 text-center"
530
+ >
402
531
  {emptyText}
403
532
  </TableCell>
404
533
  </TableRow>
@@ -408,7 +537,10 @@ export function DataTable<TData, TValue>({
408
537
  </div>
409
538
 
410
539
  {isPaginationEnabled && (
411
- <DataTablePagination table={table} paginationVariant={paginationVariant} />
540
+ <DataTablePagination
541
+ table={table}
542
+ paginationVariant={paginationVariant}
543
+ />
412
544
  )}
413
545
  </div>
414
546
  );
@@ -1,5 +1,4 @@
1
- import * as React from 'react';
2
- import { type Column } from '@tanstack/react-table';
1
+ import type { Column } from '@tanstack/react-table';
3
2
  import { ArrowDown, ArrowUp, ChevronsUpDown, EyeOff } from 'lucide-react';
4
3
  import { cn } from '../../../../shadcn/lib/utils';
5
4
  import { Button } from '../../../../shadcn/ui/button';
@@ -10,9 +9,10 @@ import {
10
9
  DropdownMenuSeparator,
11
10
  DropdownMenuTrigger,
12
11
  } from '../../../../shadcn/ui/dropdown-menu';
12
+ import type { HTMLAttributes } from 'react';
13
13
 
14
14
  export interface DataTableColumnHeaderProps<TData, TValue>
15
- extends React.HTMLAttributes<HTMLDivElement> {
15
+ extends HTMLAttributes<HTMLDivElement> {
16
16
  column: Column<TData, TValue>;
17
17
  label?: string;
18
18
  }
@@ -23,7 +23,7 @@ export function DataTableColumnHeader<TData, TValue>({
23
23
  className,
24
24
  }: DataTableColumnHeaderProps<TData, TValue>) {
25
25
  label = (column.columnDef.meta as { label?: string })?.label ?? label;
26
-
26
+
27
27
  if (!column.getCanSort()) {
28
28
  return <div className={cn(className)}>{label}</div>;
29
29
  }
@@ -32,7 +32,11 @@ export function DataTableColumnHeader<TData, TValue>({
32
32
  <div className={cn('flex items-center gap-2', className)}>
33
33
  <DropdownMenu>
34
34
  <DropdownMenuTrigger asChild>
35
- <Button variant="ghost" size="sm" className="data-[state=open]:bg-accent -ml-3 h-8">
35
+ <Button
36
+ variant="ghost"
37
+ size="sm"
38
+ className="data-[state=open]:bg-accent -ml-3 h-8"
39
+ >
36
40
  <span>{label}</span>
37
41
  {column.getIsSorted() === 'desc' ? (
38
42
  <ArrowDown className="ml-2 size-4" />
@@ -1,7 +1,18 @@
1
- import { type Table } from '@tanstack/react-table';
2
- import { ChevronLeft, ChevronRight, ChevronsLeft, ChevronsRight } from 'lucide-react';
1
+ import type { Table } from '@tanstack/react-table';
2
+ import {
3
+ ChevronLeft,
4
+ ChevronRight,
5
+ ChevronsLeft,
6
+ ChevronsRight,
7
+ } from 'lucide-react';
3
8
  import { Button } from '../../../../shadcn/ui/button';
4
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../../../../shadcn/ui/select';
9
+ import {
10
+ Select,
11
+ SelectContent,
12
+ SelectItem,
13
+ SelectTrigger,
14
+ SelectValue,
15
+ } from '../../../../shadcn/ui/select';
5
16
 
6
17
  export interface DataTablePaginationProps<TData> {
7
18
  table: Table<TData>;
@@ -10,9 +21,12 @@ export interface DataTablePaginationProps<TData> {
10
21
 
11
22
  export function DataTablePagination<TData>({
12
23
  table,
13
- paginationVariant = 'full'
24
+ paginationVariant = 'full',
14
25
  }: DataTablePaginationProps<TData>) {
15
- const pagination = table.getState().pagination ?? { pageIndex: 0, pageSize: 10 };
26
+ const pagination = table.getState().pagination ?? {
27
+ pageIndex: 0,
28
+ pageSize: 10,
29
+ };
16
30
 
17
31
  return (
18
32
  <div className="flex items-center justify-between px-2">
@@ -1,4 +1,4 @@
1
- import { type Table } from '@tanstack/react-table';
1
+ import type { Table } from '@tanstack/react-table';
2
2
  import { Settings2 } from 'lucide-react';
3
3
  import { Button } from '../../../../shadcn/ui/button';
4
4
  import {
@@ -10,11 +10,19 @@ import {
10
10
  DropdownMenuTrigger,
11
11
  } from '../../../../shadcn/ui/dropdown-menu';
12
12
 
13
- export function DataTableViewOptions<TData>({ table }: { table: Table<TData> }) {
13
+ export function DataTableViewOptions<TData>({
14
+ table,
15
+ }: {
16
+ table: Table<TData>;
17
+ }) {
14
18
  return (
15
19
  <DropdownMenu>
16
20
  <DropdownMenuTrigger asChild>
17
- <Button variant="outline" size="sm" className="ml-auto hidden h-8 lg:flex">
21
+ <Button
22
+ variant="outline"
23
+ size="sm"
24
+ className="ml-auto hidden h-8 lg:flex"
25
+ >
18
26
  <Settings2 className="mr-2 size-4" /> View
19
27
  </Button>
20
28
  </DropdownMenuTrigger>
@@ -32,7 +40,8 @@ export function DataTableViewOptions<TData>({ table }: { table: Table<TData> })
32
40
  checked={column.getIsVisible()}
33
41
  onCheckedChange={(value) => column.toggleVisibility(!!value)}
34
42
  >
35
- {(column?.columnDef.meta as { label?: string })?.label ?? column.id}
43
+ {(column?.columnDef.meta as { label?: string })?.label ??
44
+ column.id}
36
45
  </DropdownMenuCheckboxItem>
37
46
  );
38
47
  })}
@@ -9,7 +9,13 @@ export interface DataTableAction {
9
9
  label?: React.ReactNode; // string or component
10
10
  icon?: React.ReactNode;
11
11
  iconPosition?: IconPosition;
12
- variant?: 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link';
12
+ variant?:
13
+ | 'default'
14
+ | 'destructive'
15
+ | 'outline'
16
+ | 'secondary'
17
+ | 'ghost'
18
+ | 'link';
13
19
  disabled?: boolean;
14
20
  onClick?: () => void | Promise<void>;
15
21
  // If provided, this element will be rendered directly instead of constructing a Button
@@ -21,9 +27,18 @@ export interface DataTableBatchAction<TData = unknown> {
21
27
  label?: React.ReactNode;
22
28
  icon?: React.ReactNode;
23
29
  iconPosition?: IconPosition;
24
- variant?: 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link';
30
+ variant?:
31
+ | 'default'
32
+ | 'destructive'
33
+ | 'outline'
34
+ | 'secondary'
35
+ | 'ghost'
36
+ | 'link';
25
37
  disabled?: boolean;
26
38
  // Receives selected rows and helpers
27
- onClick?: (args: { selectedRows: TData[]; clearSelection: () => void }) => void | Promise<void>;
39
+ onClick?: (args: {
40
+ selectedRows: TData[];
41
+ clearSelection: () => void;
42
+ }) => void | Promise<void>;
28
43
  element?: React.ReactNode;
29
44
  }
@@ -1,2 +1,6 @@
1
- export { default as DialogProvider, useDialog, useDialogController } from './provider';
1
+ export {
2
+ default as DialogProvider,
3
+ useDialog,
4
+ useDialogController,
5
+ } from './provider';
2
6
  export type { ConfirmOptions, CustomModalOptions } from './provider';