@akshar-technosoft/ui 1.3.1 → 1.3.3

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 (338) hide show
  1. package/README.md +0 -0
  2. package/dist/components/core/error.cjs +3 -0
  3. package/dist/components/core/error.cjs.map +1 -0
  4. package/dist/components/core/error.d.cts +5 -0
  5. package/dist/components/core/error.d.ts +5 -0
  6. package/dist/components/core/error.js +3 -0
  7. package/dist/components/core/error.js.map +1 -0
  8. package/dist/components/core/event-success.cjs +3 -0
  9. package/dist/components/core/event-success.cjs.map +1 -0
  10. package/dist/components/core/event-success.d.cts +5 -0
  11. package/dist/components/core/event-success.d.ts +5 -0
  12. package/dist/components/core/event-success.js +3 -0
  13. package/dist/components/core/event-success.js.map +1 -0
  14. package/dist/components/core/index.cjs +3 -0
  15. package/dist/components/core/index.cjs.map +1 -0
  16. package/dist/components/core/index.d.cts +7 -0
  17. package/dist/components/core/index.d.ts +7 -0
  18. package/dist/components/core/index.js +3 -0
  19. package/dist/components/core/index.js.map +1 -0
  20. package/dist/components/core/loader.cjs +3 -0
  21. package/dist/components/core/loader.cjs.map +1 -0
  22. package/dist/components/core/loader.d.cts +5 -0
  23. package/dist/components/core/loader.d.ts +5 -0
  24. package/dist/components/core/loader.js +3 -0
  25. package/dist/components/core/loader.js.map +1 -0
  26. package/dist/components/core/notfound.cjs +3 -0
  27. package/dist/components/core/notfound.cjs.map +1 -0
  28. package/dist/components/core/notfound.d.cts +5 -0
  29. package/dist/components/core/notfound.d.ts +5 -0
  30. package/dist/components/core/notfound.js +3 -0
  31. package/dist/components/core/notfound.js.map +1 -0
  32. package/dist/components/core/offline-content.cjs +3 -0
  33. package/dist/components/core/offline-content.cjs.map +1 -0
  34. package/dist/components/core/offline-content.d.cts +5 -0
  35. package/dist/components/core/offline-content.d.ts +5 -0
  36. package/dist/components/core/offline-content.js +3 -0
  37. package/dist/components/core/offline-content.js.map +1 -0
  38. package/dist/components/core/unauthorized.cjs +3 -0
  39. package/dist/components/core/unauthorized.cjs.map +1 -0
  40. package/dist/components/core/unauthorized.d.cts +5 -0
  41. package/dist/components/core/unauthorized.d.ts +5 -0
  42. package/dist/components/core/unauthorized.js +3 -0
  43. package/dist/components/core/unauthorized.js.map +1 -0
  44. package/dist/components/data/data-table/data-table-action-bar.cjs +3 -0
  45. package/dist/components/data/data-table/data-table-action-bar.cjs.map +1 -0
  46. package/dist/components/data/data-table/data-table-action-bar.d.cts +26 -0
  47. package/dist/components/data/data-table/data-table-action-bar.d.ts +26 -0
  48. package/dist/components/data/data-table/data-table-action-bar.js +3 -0
  49. package/dist/components/data/data-table/data-table-action-bar.js.map +1 -0
  50. package/dist/components/data/data-table/data-table-aggregation.cjs +3 -0
  51. package/dist/components/data/data-table/data-table-aggregation.cjs.map +1 -0
  52. package/dist/components/data/data-table/data-table-aggregation.d.cts +25 -0
  53. package/dist/components/data/data-table/data-table-aggregation.d.ts +25 -0
  54. package/dist/components/data/data-table/data-table-aggregation.js +3 -0
  55. package/dist/components/data/data-table/data-table-aggregation.js.map +1 -0
  56. package/dist/components/data/data-table/data-table-columns.cjs +3 -0
  57. package/dist/components/data/data-table/data-table-columns.cjs.map +1 -0
  58. package/dist/components/data/data-table/data-table-columns.d.cts +20 -0
  59. package/dist/components/data/data-table/data-table-columns.d.ts +20 -0
  60. package/dist/components/data/data-table/data-table-columns.js +3 -0
  61. package/dist/components/data/data-table/data-table-columns.js.map +1 -0
  62. package/dist/components/data/data-table/data-table-export.cjs +3 -0
  63. package/dist/components/data/data-table/data-table-export.cjs.map +1 -0
  64. package/dist/components/data/data-table/data-table-export.d.cts +38 -0
  65. package/dist/components/data/data-table/data-table-export.d.ts +38 -0
  66. package/dist/components/data/data-table/data-table-export.js +3 -0
  67. package/dist/components/data/data-table/data-table-export.js.map +1 -0
  68. package/dist/components/data/data-table/data-table-filtering.cjs +3 -0
  69. package/dist/components/data/data-table/data-table-filtering.cjs.map +1 -0
  70. package/dist/components/data/data-table/data-table-filtering.d.cts +17 -0
  71. package/dist/components/data/data-table/data-table-filtering.d.ts +17 -0
  72. package/dist/components/data/data-table/data-table-filtering.js +3 -0
  73. package/dist/components/data/data-table/data-table-filtering.js.map +1 -0
  74. package/dist/components/data/data-table/data-table-footer.cjs +3 -0
  75. package/dist/components/data/data-table/data-table-footer.cjs.map +1 -0
  76. package/dist/components/data/data-table/data-table-footer.d.cts +21 -0
  77. package/dist/components/data/data-table/data-table-footer.d.ts +21 -0
  78. package/dist/components/data/data-table/data-table-footer.js +3 -0
  79. package/dist/components/data/data-table/data-table-footer.js.map +1 -0
  80. package/dist/components/data/data-table/data-table-header.cjs +3 -0
  81. package/dist/components/data/data-table/data-table-header.cjs.map +1 -0
  82. package/dist/components/data/data-table/data-table-header.d.cts +23 -0
  83. package/dist/components/data/data-table/data-table-header.d.ts +23 -0
  84. package/dist/components/data/data-table/data-table-header.js +3 -0
  85. package/dist/components/data/data-table/data-table-header.js.map +1 -0
  86. package/dist/components/data/data-table/data-table-pagination.cjs +3 -0
  87. package/dist/components/data/data-table/data-table-pagination.cjs.map +1 -0
  88. package/dist/components/data/data-table/data-table-pagination.d.cts +14 -0
  89. package/dist/components/data/data-table/data-table-pagination.d.ts +14 -0
  90. package/dist/components/data/data-table/data-table-pagination.js +3 -0
  91. package/dist/components/data/data-table/data-table-pagination.js.map +1 -0
  92. package/dist/components/data/data-table/data-table-persist.cjs +3 -0
  93. package/dist/components/data/data-table/data-table-persist.cjs.map +1 -0
  94. package/dist/components/data/data-table/data-table-persist.d.cts +103 -0
  95. package/dist/components/data/data-table/data-table-persist.d.ts +103 -0
  96. package/dist/components/data/data-table/data-table-persist.js +3 -0
  97. package/dist/components/data/data-table/data-table-persist.js.map +1 -0
  98. package/dist/components/data/data-table/data-table-pinning.cjs +3 -0
  99. package/dist/components/data/data-table/data-table-pinning.cjs.map +1 -0
  100. package/dist/components/data/data-table/data-table-pinning.d.cts +39 -0
  101. package/dist/components/data/data-table/data-table-pinning.d.ts +39 -0
  102. package/dist/components/data/data-table/data-table-pinning.js +3 -0
  103. package/dist/components/data/data-table/data-table-pinning.js.map +1 -0
  104. package/dist/components/data/data-table/data-table-toolbar-menus.cjs +3 -0
  105. package/dist/components/data/data-table/data-table-toolbar-menus.cjs.map +1 -0
  106. package/dist/components/data/data-table/data-table-toolbar-menus.d.cts +21 -0
  107. package/dist/components/data/data-table/data-table-toolbar-menus.d.ts +21 -0
  108. package/dist/components/data/data-table/data-table-toolbar-menus.js +3 -0
  109. package/dist/components/data/data-table/data-table-toolbar-menus.js.map +1 -0
  110. package/dist/components/data/data-table/data-table-toolbar.cjs +3 -0
  111. package/dist/components/data/data-table/data-table-toolbar.cjs.map +1 -0
  112. package/dist/components/data/data-table/data-table-toolbar.d.cts +36 -0
  113. package/dist/components/data/data-table/data-table-toolbar.d.ts +36 -0
  114. package/dist/components/data/data-table/data-table-toolbar.js +3 -0
  115. package/dist/components/data/data-table/data-table-toolbar.js.map +1 -0
  116. package/dist/components/data/data-table/data-table-types.cjs +3 -0
  117. package/dist/components/data/data-table/data-table-types.cjs.map +1 -0
  118. package/dist/components/data/data-table/data-table-types.d.cts +536 -0
  119. package/dist/components/data/data-table/data-table-types.d.ts +536 -0
  120. package/dist/components/data/data-table/data-table-types.js +2 -0
  121. package/dist/components/data/data-table/data-table-types.js.map +1 -0
  122. package/dist/components/data/data-table/data-table.cjs +3 -0
  123. package/dist/components/data/data-table/data-table.cjs.map +1 -0
  124. package/dist/components/data/data-table/data-table.d.cts +10 -0
  125. package/dist/components/data/data-table/data-table.d.ts +10 -0
  126. package/dist/components/data/data-table/data-table.js +3 -0
  127. package/dist/components/data/data-table/data-table.js.map +1 -0
  128. package/dist/components/data/data-table/index.cjs +3 -0
  129. package/dist/components/data/data-table/index.cjs.map +1 -0
  130. package/dist/components/data/data-table/index.d.cts +16 -0
  131. package/dist/components/data/data-table/index.d.ts +16 -0
  132. package/dist/components/data/data-table/index.js +3 -0
  133. package/dist/components/data/data-table/index.js.map +1 -0
  134. package/dist/components/data/data-table/use-table-filter-param.cjs +3 -0
  135. package/dist/components/data/data-table/use-table-filter-param.cjs.map +1 -0
  136. package/dist/components/data/data-table/use-table-filter-param.d.cts +37 -0
  137. package/dist/components/data/data-table/use-table-filter-param.d.ts +37 -0
  138. package/dist/components/data/data-table/use-table-filter-param.js +3 -0
  139. package/dist/components/data/data-table/use-table-filter-param.js.map +1 -0
  140. package/dist/components/data/data-table/use-table-persist.cjs +3 -0
  141. package/dist/components/data/data-table/use-table-persist.cjs.map +1 -0
  142. package/dist/components/data/data-table/use-table-persist.d.cts +36 -0
  143. package/dist/components/data/data-table/use-table-persist.d.ts +36 -0
  144. package/dist/components/data/data-table/use-table-persist.js +3 -0
  145. package/dist/components/data/data-table/use-table-persist.js.map +1 -0
  146. package/dist/components/data/data-template/data-template-action-bar.cjs +3 -0
  147. package/dist/components/data/data-template/data-template-action-bar.cjs.map +1 -0
  148. package/dist/components/data/data-template/data-template-action-bar.d.cts +14 -0
  149. package/dist/components/data/data-template/data-template-action-bar.d.ts +14 -0
  150. package/dist/components/data/data-template/data-template-action-bar.js +3 -0
  151. package/dist/components/data/data-template/data-template-action-bar.js.map +1 -0
  152. package/dist/components/data/data-template/data-template-pagination.cjs +3 -0
  153. package/dist/components/data/data-template/data-template-pagination.cjs.map +1 -0
  154. package/dist/components/data/data-template/data-template-pagination.d.cts +17 -0
  155. package/dist/components/data/data-template/data-template-pagination.d.ts +17 -0
  156. package/dist/components/data/data-template/data-template-pagination.js +3 -0
  157. package/dist/components/data/data-template/data-template-pagination.js.map +1 -0
  158. package/dist/components/data/data-template/data-template-toolbar.cjs +3 -0
  159. package/dist/components/data/data-template/data-template-toolbar.cjs.map +1 -0
  160. package/dist/components/data/data-template/data-template-toolbar.d.cts +27 -0
  161. package/dist/components/data/data-template/data-template-toolbar.d.ts +27 -0
  162. package/dist/components/data/data-template/data-template-toolbar.js +3 -0
  163. package/dist/components/data/data-template/data-template-toolbar.js.map +1 -0
  164. package/dist/components/data/data-template/data-template-types.cjs +3 -0
  165. package/dist/components/data/data-template/data-template-types.cjs.map +1 -0
  166. package/dist/components/data/data-template/data-template-types.d.cts +105 -0
  167. package/dist/components/data/data-template/data-template-types.d.ts +105 -0
  168. package/dist/components/data/data-template/data-template-types.js +2 -0
  169. package/dist/components/data/data-template/data-template-types.js.map +1 -0
  170. package/dist/components/data/data-template/data-template.cjs +3 -0
  171. package/dist/components/data/data-template/data-template.cjs.map +1 -0
  172. package/dist/components/data/data-template/data-template.d.cts +8 -0
  173. package/dist/components/data/data-template/data-template.d.ts +8 -0
  174. package/dist/components/data/data-template/data-template.js +3 -0
  175. package/dist/components/data/data-template/data-template.js.map +1 -0
  176. package/dist/components/data/data-template/index.cjs +3 -0
  177. package/dist/components/data/data-template/index.cjs.map +1 -0
  178. package/dist/components/data/data-template/index.d.cts +8 -0
  179. package/dist/components/data/data-template/index.d.ts +8 -0
  180. package/dist/components/data/data-template/index.js +3 -0
  181. package/dist/components/data/data-template/index.js.map +1 -0
  182. package/dist/components/date-helper.cjs +0 -0
  183. package/dist/components/date-helper.cjs.map +0 -0
  184. package/dist/components/date-helper.d.cts +0 -0
  185. package/dist/components/date-helper.d.ts +0 -0
  186. package/dist/components/date-helper.js +0 -0
  187. package/dist/components/date-helper.js.map +0 -0
  188. package/dist/components/general.cjs +0 -0
  189. package/dist/components/general.cjs.map +0 -0
  190. package/dist/components/general.d.cts +0 -0
  191. package/dist/components/general.d.ts +0 -0
  192. package/dist/components/general.js +0 -0
  193. package/dist/components/general.js.map +0 -0
  194. package/dist/components/helper/date-filter.cjs +3 -0
  195. package/dist/components/helper/date-filter.cjs.map +1 -0
  196. package/dist/components/helper/date-filter.d.cts +19 -0
  197. package/dist/components/helper/date-filter.d.ts +19 -0
  198. package/dist/components/helper/date-filter.js +3 -0
  199. package/dist/components/helper/date-filter.js.map +1 -0
  200. package/dist/components/layouts/app-container.cjs +3 -0
  201. package/dist/components/layouts/app-container.cjs.map +1 -0
  202. package/dist/components/layouts/app-container.d.cts +11 -0
  203. package/dist/components/layouts/app-container.d.ts +11 -0
  204. package/dist/components/layouts/app-container.js +3 -0
  205. package/dist/components/layouts/app-container.js.map +1 -0
  206. package/dist/components/layouts/app-content.cjs +3 -0
  207. package/dist/components/layouts/app-content.cjs.map +1 -0
  208. package/dist/components/layouts/app-content.d.cts +53 -0
  209. package/dist/components/layouts/app-content.d.ts +53 -0
  210. package/dist/components/layouts/app-content.js +3 -0
  211. package/dist/components/layouts/app-content.js.map +1 -0
  212. package/dist/components/layouts/app-footer.cjs +3 -0
  213. package/dist/components/layouts/app-footer.cjs.map +1 -0
  214. package/dist/components/layouts/app-footer.d.cts +17 -0
  215. package/dist/components/layouts/app-footer.d.ts +17 -0
  216. package/dist/components/layouts/app-footer.js +3 -0
  217. package/dist/components/layouts/app-footer.js.map +1 -0
  218. package/dist/components/layouts/app-header.cjs +3 -0
  219. package/dist/components/layouts/app-header.cjs.map +1 -0
  220. package/dist/components/layouts/app-header.d.cts +32 -0
  221. package/dist/components/layouts/app-header.d.ts +32 -0
  222. package/dist/components/layouts/app-header.js +3 -0
  223. package/dist/components/layouts/app-header.js.map +1 -0
  224. package/dist/components/layouts/index.cjs +3 -0
  225. package/dist/components/layouts/index.cjs.map +1 -0
  226. package/dist/components/layouts/index.d.cts +7 -0
  227. package/dist/components/layouts/index.d.ts +7 -0
  228. package/dist/components/layouts/index.js +3 -0
  229. package/dist/components/layouts/index.js.map +1 -0
  230. package/dist/components/ui/badge.cjs +3 -0
  231. package/dist/components/ui/badge.cjs.map +1 -0
  232. package/dist/components/ui/badge.d.cts +13 -0
  233. package/dist/components/ui/badge.d.ts +13 -0
  234. package/dist/components/ui/badge.js +3 -0
  235. package/dist/components/ui/badge.js.map +1 -0
  236. package/dist/components/ui/button.cjs +3 -0
  237. package/dist/components/ui/button.cjs.map +1 -0
  238. package/dist/components/ui/button.d.cts +14 -0
  239. package/dist/components/ui/button.d.ts +14 -0
  240. package/dist/components/ui/button.js +3 -0
  241. package/dist/components/ui/button.js.map +1 -0
  242. package/dist/components/ui/calendar.cjs +3 -0
  243. package/dist/components/ui/calendar.cjs.map +1 -0
  244. package/dist/components/ui/calendar.d.cts +13 -0
  245. package/dist/components/ui/calendar.d.ts +13 -0
  246. package/dist/components/ui/calendar.js +3 -0
  247. package/dist/components/ui/calendar.js.map +1 -0
  248. package/dist/components/ui/card.cjs +3 -0
  249. package/dist/components/ui/card.cjs.map +1 -0
  250. package/dist/components/ui/card.d.cts +12 -0
  251. package/dist/components/ui/card.d.ts +12 -0
  252. package/dist/components/ui/card.js +3 -0
  253. package/dist/components/ui/card.js.map +1 -0
  254. package/dist/components/ui/checkbox.cjs +3 -0
  255. package/dist/components/ui/checkbox.cjs.map +1 -0
  256. package/dist/components/ui/checkbox.d.cts +7 -0
  257. package/dist/components/ui/checkbox.d.ts +7 -0
  258. package/dist/components/ui/checkbox.js +3 -0
  259. package/dist/components/ui/checkbox.js.map +1 -0
  260. package/dist/components/ui/command.cjs +3 -0
  261. package/dist/components/ui/command.cjs.map +1 -0
  262. package/dist/components/ui/command.d.cts +20 -0
  263. package/dist/components/ui/command.d.ts +20 -0
  264. package/dist/components/ui/command.js +3 -0
  265. package/dist/components/ui/command.js.map +1 -0
  266. package/dist/components/ui/dialog.cjs +3 -0
  267. package/dist/components/ui/dialog.cjs.map +1 -0
  268. package/dist/components/ui/dialog.d.cts +16 -0
  269. package/dist/components/ui/dialog.d.ts +16 -0
  270. package/dist/components/ui/dialog.js +3 -0
  271. package/dist/components/ui/dialog.js.map +1 -0
  272. package/dist/components/ui/dropdown-menu.cjs +3 -0
  273. package/dist/components/ui/dropdown-menu.cjs.map +1 -0
  274. package/dist/components/ui/dropdown-menu.d.cts +28 -0
  275. package/dist/components/ui/dropdown-menu.d.ts +28 -0
  276. package/dist/components/ui/dropdown-menu.js +3 -0
  277. package/dist/components/ui/dropdown-menu.js.map +1 -0
  278. package/dist/components/ui/input.cjs +3 -0
  279. package/dist/components/ui/input.cjs.map +1 -0
  280. package/dist/components/ui/input.d.cts +6 -0
  281. package/dist/components/ui/input.d.ts +6 -0
  282. package/dist/components/ui/input.js +3 -0
  283. package/dist/components/ui/input.js.map +1 -0
  284. package/dist/components/ui/popover.cjs +3 -0
  285. package/dist/components/ui/popover.cjs.map +1 -0
  286. package/dist/components/ui/popover.d.cts +10 -0
  287. package/dist/components/ui/popover.d.ts +10 -0
  288. package/dist/components/ui/popover.js +3 -0
  289. package/dist/components/ui/popover.js.map +1 -0
  290. package/dist/components/ui/select.cjs +3 -0
  291. package/dist/components/ui/select.cjs.map +1 -0
  292. package/dist/components/ui/select.d.cts +18 -0
  293. package/dist/components/ui/select.d.ts +18 -0
  294. package/dist/components/ui/select.js +3 -0
  295. package/dist/components/ui/select.js.map +1 -0
  296. package/dist/components/ui/separator.cjs +3 -0
  297. package/dist/components/ui/separator.cjs.map +1 -0
  298. package/dist/components/ui/separator.d.cts +7 -0
  299. package/dist/components/ui/separator.d.ts +7 -0
  300. package/dist/components/ui/separator.js +3 -0
  301. package/dist/components/ui/separator.js.map +1 -0
  302. package/dist/components/ui/sheet.cjs +3 -0
  303. package/dist/components/ui/sheet.cjs.map +1 -0
  304. package/dist/components/ui/sheet.d.cts +18 -0
  305. package/dist/components/ui/sheet.d.ts +18 -0
  306. package/dist/components/ui/sheet.js +3 -0
  307. package/dist/components/ui/sheet.js.map +1 -0
  308. package/dist/components/ui/table.cjs +3 -0
  309. package/dist/components/ui/table.cjs.map +1 -0
  310. package/dist/components/ui/table.d.cts +13 -0
  311. package/dist/components/ui/table.d.ts +13 -0
  312. package/dist/components/ui/table.js +3 -0
  313. package/dist/components/ui/table.js.map +1 -0
  314. package/dist/components/ui/toggle.cjs +3 -0
  315. package/dist/components/ui/toggle.cjs.map +1 -0
  316. package/dist/components/ui/toggle.d.cts +16 -0
  317. package/dist/components/ui/toggle.d.ts +16 -0
  318. package/dist/components/ui/toggle.js +3 -0
  319. package/dist/components/ui/toggle.js.map +1 -0
  320. package/dist/components/ui/tooltip.cjs +3 -0
  321. package/dist/components/ui/tooltip.cjs.map +1 -0
  322. package/dist/components/ui/tooltip.d.cts +10 -0
  323. package/dist/components/ui/tooltip.d.ts +10 -0
  324. package/dist/components/ui/tooltip.js +3 -0
  325. package/dist/components/ui/tooltip.js.map +1 -0
  326. package/dist/index.cjs +1 -1
  327. package/dist/index.cjs.map +1 -1
  328. package/dist/index.d.cts +28 -920
  329. package/dist/index.d.ts +28 -920
  330. package/dist/index.js +1 -1
  331. package/dist/index.js.map +1 -1
  332. package/dist/lib/utils.cjs +0 -0
  333. package/dist/lib/utils.cjs.map +0 -0
  334. package/dist/lib/utils.d.cts +0 -0
  335. package/dist/lib/utils.d.ts +0 -0
  336. package/dist/lib/utils.js +0 -0
  337. package/dist/lib/utils.js.map +0 -0
  338. package/package.json +92 -92
@@ -0,0 +1,16 @@
1
+ export { DataTable } from './data-table.cjs';
2
+ export { DataTableActionBar, DataTableActionBarAction, DataTableActionBarSelection } from './data-table-action-bar.cjs';
3
+ export { DataTableToolbar } from './data-table-toolbar.cjs';
4
+ export { DataTablePagination } from './data-table-pagination.cjs';
5
+ export { PersistConfig, PersistGroupId, PersistGroupRegistry, PersistSlotFor, PersistSlotId, readPersistedExternal } from './data-table-persist.cjs';
6
+ export { TableExportColumn, TableExportView, getTableExportView } from './data-table-export.cjs';
7
+ export { FilterKeys, useTableFilterParam } from './use-table-filter-param.cjs';
8
+ export { DataTableProps, FilterConfig, GroupColumnDef, PaginationConfig, TableSettings } from './data-table-types.cjs';
9
+ import 'react/jsx-runtime';
10
+ import '../../ui/button.cjs';
11
+ import 'class-variance-authority/types';
12
+ import 'react';
13
+ import 'class-variance-authority';
14
+ import '@tanstack/react-table';
15
+ import 'framer-motion';
16
+ import 'lucide-react';
@@ -0,0 +1,16 @@
1
+ export { DataTable } from './data-table.js';
2
+ export { DataTableActionBar, DataTableActionBarAction, DataTableActionBarSelection } from './data-table-action-bar.js';
3
+ export { DataTableToolbar } from './data-table-toolbar.js';
4
+ export { DataTablePagination } from './data-table-pagination.js';
5
+ export { PersistConfig, PersistGroupId, PersistGroupRegistry, PersistSlotFor, PersistSlotId, readPersistedExternal } from './data-table-persist.js';
6
+ export { TableExportColumn, TableExportView, getTableExportView } from './data-table-export.js';
7
+ export { FilterKeys, useTableFilterParam } from './use-table-filter-param.js';
8
+ export { DataTableProps, FilterConfig, GroupColumnDef, PaginationConfig, TableSettings } from './data-table-types.js';
9
+ import 'react/jsx-runtime';
10
+ import '../../ui/button.js';
11
+ import 'class-variance-authority/types';
12
+ import 'react';
13
+ import 'class-variance-authority';
14
+ import '@tanstack/react-table';
15
+ import 'framer-motion';
16
+ import 'lucide-react';
@@ -0,0 +1,3 @@
1
+ "use client"
2
+ import{flexRender as Gr,getCoreRowModel as _r,getFilteredRowModel as Er,getPaginationRowModel as Vr,getSortedRowModel as Lr,useReactTable as Hr}from"@tanstack/react-table";import{Loader2 as ho}from"lucide-react";import{Slot as Vo}from"radix-ui";import{cva as Lo}from"class-variance-authority";import{clsx as _o}from"clsx";import{twMerge as Eo}from"tailwind-merge";function r(...e){return Eo(_o(e))}import{jsx as Ho}from"react/jsx-runtime";var mt=Lo("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",destructive:"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 dark:focus-visible:border-ring",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function k({className:e,variant:t,size:o,asChild:n=!1,...c}){let d=n?Vo.Slot:"button";return Ho(d,{"data-slot":"button",className:r(mt({variant:t,size:o,className:e})),...c})}import{jsx as Ce}from"react/jsx-runtime";function Vt({className:e,...t}){return Ce("div",{"data-slot":"table-container",className:"relative w-full h-full max-h-full overflow-auto",children:Ce("table",{"data-slot":"table",className:r("w-full caption-bottom text-sm",e),...t})})}function yn({className:e,...t}){return Ce("thead",{"data-slot":"table-header",className:r("[&_tr]:border-b",e),...t})}function wn({className:e,...t}){return Ce("tbody",{"data-slot":"table-body",className:r("[&_tr:last-child]:border-0",e),...t})}function gt({className:e,...t}){return Ce("tfoot",{"data-slot":"table-footer",className:r("bg-muted/50 border-t font-medium [&>tr]:last:border-b-0",e),...t})}function pe({className:e,...t}){return Ce("tr",{"data-slot":"table-row",className:r("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",e),...t})}function Cn({className:e,...t}){return Ce("th",{"data-slot":"table-head",className:r("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap",e),...t})}function ge({className:e,...t}){return Ce("td",{"data-slot":"table-cell",className:r("p-2 align-middle whitespace-nowrap",e),...t})}import{jsx as Pn}from"react/jsx-runtime";function Lt({className:e,...t}){return Pn("div",{"data-slot":"card",className:r("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",e),...t})}function Ht({className:e,...t}){return Pn("div",{"data-slot":"card-content",className:r("px-6",e),...t})}import{Tooltip as Ue}from"radix-ui";import{jsx as $e,jsxs as Bo}from"react/jsx-runtime";function Ze({delayDuration:e=0,...t}){return $e(Ue.Provider,{"data-slot":"tooltip-provider",delayDuration:e,...t})}function Bt({...e}){return $e(Ze,{children:$e(Ue.Root,{"data-slot":"tooltip",...e})})}function Ot({...e}){return $e(Ue.Trigger,{"data-slot":"tooltip-trigger",...e})}function jt({className:e,sideOffset:t=0,children:o,...n}){return $e(Ue.Portal,{children:Bo(Ue.Content,{"data-slot":"tooltip-content",sideOffset:t,className:r("bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",e),...n,children:[o,$e(Ue.Arrow,{className:"bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}import{Search as sr,RefreshCw as lr,Download as dr,Settings2 as cr,Filter as On,FilterX as ur,ArrowUpDown as pr,PinOff as mr,ChevronDown as gr,Calculator as fr,Check as br,X as hr}from"lucide-react";import{jsx as Oo}from"react/jsx-runtime";function Ut({className:e,type:t,...o}){return Oo("input",{type:t,"data-slot":"input",className:r("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...o})}import{DropdownMenu as oe}from"radix-ui";import{CheckIcon as jo,ChevronRightIcon as Uo,CircleIcon as Ca}from"lucide-react";import{jsx as ne,jsxs as Dn}from"react/jsx-runtime";function Pe({...e}){return ne(oe.Root,{"data-slot":"dropdown-menu",...e})}function Te({...e}){return ne(oe.Trigger,{"data-slot":"dropdown-menu-trigger",...e})}function Se({className:e,sideOffset:t=4,...o}){return ne(oe.Portal,{children:ne(oe.Content,{"data-slot":"dropdown-menu-content",sideOffset:t,className:r("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) rounded-md border p-1 shadow-md",e),...o})})}function $t({...e}){return ne(oe.Group,{"data-slot":"dropdown-menu-group",...e})}function Q({className:e,inset:t,variant:o="default",...n}){return ne(oe.Item,{"data-slot":"dropdown-menu-item","data-inset":t,"data-variant":o,className:r("cursor-pointer focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...n})}function ft({className:e,children:t,checked:o,...n}){return Dn(oe.CheckboxItem,{"data-slot":"dropdown-menu-checkbox-item",className:r("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),checked:o,...n,children:[ne("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:ne(oe.ItemIndicator,{children:ne(jo,{className:"size-4"})})}),t]})}function ie({className:e,inset:t,...o}){return ne(oe.Label,{"data-slot":"dropdown-menu-label","data-inset":t,className:r("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",e),...o})}function fe({className:e,...t}){return ne(oe.Separator,{"data-slot":"dropdown-menu-separator",className:r("bg-border -mx-1 my-1 h-px",e),...t})}function Tn({...e}){return ne(oe.Sub,{"data-slot":"dropdown-menu-sub",...e})}function Sn({className:e,inset:t,children:o,...n}){return Dn(oe.SubTrigger,{"data-slot":"dropdown-menu-sub-trigger","data-inset":t,className:r("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8",e),...n,children:[o,ne(Uo,{className:"ml-auto size-4"})]})}function Nn({className:e,...t}){return ne(oe.SubContent,{"data-slot":"dropdown-menu-sub-content",className:r("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg",e),...t})}var $o=new Set(["select","serialNumber"]);function Kt(e){let t=e.getVisibleLeafColumns().filter(n=>$o.has(n.id)?!1:!!n.columnDef.exportValue||!!n.accessorFn),o=e.getPrePaginationRowModel().rows;return{columns:t.map(n=>{let c=n.columnDef;return{id:n.id,header:c.exportHeader??(typeof c.header=="string"?c.header:n.id)}}),rows:o.map(n=>t.map(c=>{let d=c.columnDef;return d.exportValue?d.exportValue(n.original):n.getValue(c.id)})),originals:o.map(n=>n.original)}}import{useEffect as xr,useRef as jn,useState as Un}from"react";import{useEffect as Qo,useState as In}from"react";import{Calendar as Yo}from"lucide-react";import{format as Zo}from"date-fns";import{Popover as bt}from"radix-ui";import{jsx as ht}from"react/jsx-runtime";function Rn({...e}){return ht(bt.Root,{"data-slot":"popover",...e})}function kn({...e}){return ht(bt.Trigger,{"data-slot":"popover-trigger",...e})}function Mn({className:e,align:t="center",sideOffset:o=4,...n}){return ht(bt.Portal,{children:ht(bt.Content,{"data-slot":"popover-content",align:t,sideOffset:o,className:r("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",e),...n})})}import*as xt from"react";import{ChevronDownIcon as Ko,ChevronLeftIcon as Wo,ChevronRightIcon as qo}from"lucide-react";import{DayPicker as Xo,getDefaultClassNames as zn}from"react-day-picker";import{jsx as Ne}from"react/jsx-runtime";function Fn({className:e,classNames:t,showOutsideDays:o=!0,captionLayout:n="label",buttonVariant:c="ghost",formatters:d,components:p,...a}){let i=zn();return Ne(Xo,{showOutsideDays:o,className:r("bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),captionLayout:n,formatters:{formatMonthDropdown:f=>f.toLocaleString("default",{month:"short"}),...d},classNames:{root:r("w-fit",i.root),months:r("flex gap-4 flex-col md:flex-row relative",i.months),month:r("flex flex-col w-full gap-4",i.month),nav:r("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",i.nav),button_previous:r(mt({variant:c}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_previous),button_next:r(mt({variant:c}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_next),month_caption:r("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",i.month_caption),dropdowns:r("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",i.dropdowns),dropdown_root:r("relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md",i.dropdown_root),dropdown:r("absolute bg-popover inset-0 opacity-0",i.dropdown),caption_label:r("select-none font-medium",n==="label"?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5",i.caption_label),table:"w-full border-collapse",weekdays:r("flex",i.weekdays),weekday:r("text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none",i.weekday),week:r("flex w-full mt-2",i.week),week_number_header:r("select-none w-(--cell-size)",i.week_number_header),week_number:r("text-[0.8rem] select-none text-muted-foreground",i.week_number),day:r("relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",i.day),range_start:r("rounded-l-md bg-accent",i.range_start),range_middle:r("rounded-none",i.range_middle),range_end:r("rounded-r-md bg-accent",i.range_end),today:r("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",i.today),outside:r("text-muted-foreground aria-selected:text-muted-foreground",i.outside),disabled:r("text-muted-foreground opacity-50",i.disabled),hidden:r("invisible",i.hidden),...t},components:{Root:({className:f,rootRef:g,...m})=>Ne("div",{"data-slot":"calendar",ref:g,className:r(f),...m}),Chevron:({className:f,orientation:g,...m})=>g==="left"?Ne(Wo,{className:r("size-4",f),...m}):g==="right"?Ne(qo,{className:r("size-4",f),...m}):Ne(Ko,{className:r("size-4",f),...m}),DayButton:Jo,WeekNumber:({children:f,...g})=>Ne("td",{...g,children:Ne("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:f})}),...p},...a})}function Jo({className:e,day:t,modifiers:o,...n}){let c=zn(),d=xt.useRef(null);return xt.useEffect(()=>{o.focused&&d.current?.focus()},[o.focused]),Ne(k,{ref:d,variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(),"data-selected-single":o.selected&&!o.range_start&&!o.range_end&&!o.range_middle,"data-range-start":o.range_start,"data-range-end":o.range_end,"data-range-middle":o.range_middle,className:r("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",c.day,e),...n})}import{jsx as Ge,jsxs as et}from"react/jsx-runtime";function An({value:e,onChange:t,placeholder:o,mode:n,externalSearch:c,onExternalChange:d,dateFormat:p,triggerClassName:a}){let i=p?p.replace(/Y/g,"y").replace(/D/g,"d"):null,[f,g]=In(!1),[m,v]=In(e);Qo(()=>{v(e)},[e]);let l=w=>{if(w==null)return null;if(w instanceof Date)return isNaN(w.getTime())?null:w;let T=new Date(w);return isNaN(T.getTime())?null:T},_=(w,T)=>{let M=l(w);return M?Zo(M,T):null},D=w=>{c?d?.(w):t?.(w)},H=()=>{D(m),g(!1)},E=()=>{v(e),g(!1)},A=()=>{let w=n==="single"?null:{from:null,to:null};v(w),D(w),g(!1)},B=()=>{let w=e;if(!w)return o;if(n==="single")return _(w,i||"PPP")??o;if(w.from&&w.to){let T=_(w.from,i||"MMM dd"),M=_(w.to,i||"MMM dd, yyyy");return T&&M?`${T} - ${M}`:o}if(w.from){let T=_(w.from,i||"MMM dd, yyyy");return T?`From ${T}`:o}if(w.to){let T=_(w.to,i||"MMM dd, yyyy");return T?`To ${T}`:o}return o},ee=w=>{v(n==="single"?w:w||{from:null,to:null})};return et(Rn,{open:f,onOpenChange:g,children:[Ge(kn,{className:"h-8",asChild:!0,children:et(k,{variant:"outline",className:r("w-full justify-start text-left font-normal h-8 rounded-lg",B()===o&&"text-muted-foreground",a),children:[Ge(Yo,{className:"mr-2 h-4 w-4 shrink-0"}),B()]})}),et(Mn,{className:"w-auto p-0",align:"start",children:[Ge("div",{className:"p-3",children:Ge(Fn,{mode:n,selected:m,onSelect:ee,numberOfMonths:n==="range"?2:1,className:"rounded-md border",...n==="range"&&{required:!0}})}),et("div",{className:"flex items-center justify-between p-3 border-t",children:[Ge(k,{variant:"ghost",size:"sm",onClick:A,children:"Clear"}),et("div",{className:"flex gap-2",children:[Ge(k,{variant:"outline",size:"sm",onClick:E,children:"Cancel"}),Ge(k,{size:"sm",onClick:H,disabled:n==="range"&&(!m?.from||!m?.to),children:"Apply"})]})]})]})]})}import{Calculator as tr,ChevronDown as En,Columns3 as nr}from"lucide-react";import{Checkbox as Gn}from"radix-ui";import{CheckIcon as er}from"lucide-react";import{jsx as Wt}from"react/jsx-runtime";function tt({className:e,...t}){return Wt(Gn.Root,{"data-slot":"checkbox",className:r("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e),...t,children:Wt(Gn.Indicator,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-current transition-none",children:Wt(er,{className:"size-3.5"})})})}import{jsx as F,jsxs as Y}from"react/jsx-runtime";var _n=[{value:"sum",label:"Sum",description:"Total of all values"},{value:"average",label:"Average",description:"Mean value"},{value:"min",label:"Minimum",description:"Smallest value"},{value:"max",label:"Maximum",description:"Largest value"},{value:"count",label:"Count",description:"Number of rows"},{value:"unique",label:"Unique",description:"Count of distinct values"},{value:"median",label:"Median",description:"Middle value"}],qt=(e,t)=>(t&&e.startsWith(`${t}.`)?e.replace(`${t}.`,""):e).split("_").map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ");function Xt(e,t){t&&Object.keys(e).forEach(o=>{let n=e[o];n&&t(o,{...n,enabled:!1,functions:[]})})}var Vn=e=>e.getAllLeafColumns().filter(t=>t.getCanHide?.()!==!1);function Ln({table:e,aggregations:t,onAggregationChange:o}){let n=Vn(e).filter(a=>a.id==="select"||a.id==="serialNumber"?!1:a.columnDef.meta?.aggregatable?!0:e.getRowModel().rows.slice(0,5).some(i=>{let f=i.getValue(a.id);return typeof f=="number"||typeof f=="string"&&!isNaN(parseFloat(String(f)))||typeof f=="object"&&f!==null&&"props"in f}));if(n.length===0||!o)return null;let c=Object.values(t).some(a=>a?.enabled),d=a=>{let i=t[a];o(a,{enabled:!i?.enabled,functions:i?.functions||["sum","average"]})},p=(a,i)=>{let f=t[a]?.functions||[],g=f.includes(i)?f.filter(m=>m!==i):[...f,i];o(a,{enabled:g.length>0,functions:g})};return Y(Pe,{children:[F(Te,{asChild:!0,children:Y(k,{variant:"outline",size:"sm",className:"gap-1 rounded-lg",children:[F(tr,{className:"size-4"}),F("span",{children:"Aggregations"}),F(En,{className:"opacity-50 size-4"})]})}),Y(Se,{align:"end",className:"w-64 rounded-lg max-h-[500px] overflow-y-auto",children:[Y(ie,{className:"flex items-center justify-between px-4 py-2",children:[F("span",{className:"text-sm font-medium",children:"Column Aggregations"}),c&&F(k,{variant:"ghost",size:"sm",className:"h-6 px-2 text-xs",onClick:()=>Xt(t,o),children:"Clear All"})]}),F(fe,{}),n.map(a=>{let i=t[a.id],f=i?.enabled;return Y(Tn,{children:[F(Sn,{className:"text-sm",children:Y("div",{className:"flex items-center w-full gap-2",children:[F(tt,{checked:f,onCheckedChange:()=>d(a.id),className:"data-[state=checked]:bg-primary"}),F("span",{className:r("flex-1",f&&"font-medium text-primary"),children:qt(a.id)}),f&&Y("div",{className:"flex items-center gap-1",children:[i?.functions?.slice(0,2).map(g=>F("div",{className:"w-2 h-2 rounded-full bg-primary",title:_n.find(m=>m.value===g)?.label},g)),i?.functions&&i.functions.length>2&&Y("div",{className:"text-xs text-muted-foreground",children:["+",i.functions.length-2]})]})]})}),Y(Nn,{className:"w-48 rounded-lg",children:[F(ie,{className:"px-3 py-2 text-xs font-medium text-muted-foreground",children:"Select Functions"}),_n.map(g=>F(ft,{checked:i?.functions?.includes(g.value)||!1,onCheckedChange:()=>p(a.id,g.value),className:"py-2 text-sm",children:Y("div",{className:"flex flex-col",children:[F("span",{children:g.label}),F("span",{className:"text-xs text-muted-foreground",children:g.description})]})},g.value))]})]},a.id)})]})]})}function Hn({table:e}){let t=Vn(e),o=e.getAllColumns().filter(d=>!e.getAllLeafColumns().includes(d)&&d.columns?.length&&d.columns.some(p=>p.getCanHide?.()!==!1)),n=new Set(o.flatMap(d=>d.columns?.filter(p=>p.getCanHide?.()!==!1).map(p=>p.id)||[])),c=t.filter(d=>!n.has(d.id));return Y(Pe,{children:[F(Te,{asChild:!0,children:Y(k,{variant:"outline",size:"sm",className:"gap-1 rounded-lg",children:[F(nr,{className:"size-4"}),F("span",{children:"Columns"}),F(En,{className:"opacity-50 size-4"})]})}),Y(Se,{align:"end",className:"w-[220px] rounded-lg max-h-[400px] overflow-y-auto",children:[F(ie,{className:"px-4 py-2 text-sm font-medium",children:"Toggle Columns"}),F(fe,{}),c.length>0&&Y($t,{children:[F(ie,{className:"px-4 py-1.5 text-sm font-medium text-muted-foreground",children:"General"}),c.map(d=>F(ft,{className:"text-sm",checked:d.getIsVisible(),onCheckedChange:p=>d.toggleVisibility(!!p),children:qt(d.id)},d.id))]}),o.map(d=>Y($t,{children:[F(fe,{}),F(ie,{className:"px-4 py-1.5 text-sm font-medium text-muted-foreground",children:d.id}),d.columns?.filter(p=>p.getCanHide?.()!==!1).map(p=>F(ft,{className:"text-sm",checked:p.getIsVisible(),onCheckedChange:a=>p.toggleVisibility(!!a),children:qt(p.id,d.id)},p.id))]},d.id))]})]})}import{Select as se}from"radix-ui";import{CheckIcon as or,ChevronDownIcon as Bn,ChevronUpIcon as rr}from"lucide-react";import{jsx as K,jsxs as Jt}from"react/jsx-runtime";function vt({...e}){return K(se.Root,{"data-slot":"select",...e})}function yt({...e}){return K(se.Value,{"data-slot":"select-value",...e})}function wt({className:e,size:t="default",children:o,...n}){return Jt(se.Trigger,{"data-slot":"select-trigger","data-size":t,className:r("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...n,children:[o,K(se.Icon,{asChild:!0,children:K(Bn,{className:"size-4 opacity-50"})})]})}function Ct({className:e,children:t,position:o="popper",...n}){return K(se.Portal,{children:Jt(se.Content,{"data-slot":"select-content",className:r("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md",o==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:o,...n,children:[K(ar,{}),K(se.Viewport,{className:r("p-1",o==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:t}),K(ir,{})]})})}function nt({className:e,children:t,...o}){return Jt(se.Item,{"data-slot":"select-item",className:r("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",e),...o,children:[K("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:K(se.ItemIndicator,{children:K(or,{className:"size-4"})})}),K(se.ItemText,{children:t})]})}function ar({className:e,...t}){return K(se.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:r("flex cursor-default items-center justify-center py-1",e),...t,children:K(rr,{className:"size-4"})})}function ir({className:e,...t}){return K(se.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:r("flex cursor-default items-center justify-center py-1",e),...t,children:K(Bn,{className:"size-4"})})}import{Fragment as vr,jsx as P,jsxs as L}from"react/jsx-runtime";var W=e=>e.id??e.key;function Qt({table:e,filters:t=[],globalFilter:o,onGlobalFilterChange:n,enableGlobalFilter:c=!0,onExport:d,onRefresh:p,loading:a=!1,enableColumnVisibility:i=!0,onClearSorting:f,onClearFilters:g,enableColumnPinning:m=!1,enableSorting:v=!0,onExternalSearch:l,initialExternalValues:_,aggregations:D={},onAggregationChange:H,groupedFilterLabel:E="Global",showFilterChips:A=!0,initialGroupedField:B,onGroupedFieldChange:ee}){let[w,T]=Un(_??{}),[M,U]=Un(B??"all"),j=jn(_??{}),u=jn(void 0);xr(()=>()=>clearTimeout(u.current),[]);let x=(s,V,te=!1)=>{let $={...j.current,[s]:V};j.current=$,T($),clearTimeout(u.current),te?u.current=setTimeout(()=>l?.($),500):l?.($)},S=()=>{clearTimeout(u.current),j.current={},T({}),U("all"),ee?.("all"),g(),l?.({})},C=s=>t.find(te=>W(te)===s)?.externalSearch?w[s]??"":e.getColumn(s)?.getFilterValue(),b=(s,V)=>{let te=t.find($=>W($)===s);te?.externalSearch?x(s,V,te.type==="text"):e.getColumn(s)?.setFilterValue(V)},N=s=>{U(s),ee?.(s),s!=="all"&&n("")},X=Object.values(D).some(s=>s?.enabled),z=s=>!!s.externalSearch||!!e.getColumn(W(s)),O=s=>{let V=C(W(s));return V==null||V===""?!1:typeof V=="object"?!!(V.from||V.to):!0},ke=s=>s.type==="date"||s.type==="daterange",Me=s=>{b(W(s),ke(s)?null:"")},dt=s=>{let V=C(W(s));return s.type==="select"?s.options?.find(te=>te.value===V)?.label??String(V):ke(s)?"set":String(V)},ve=(s,V)=>{let te=V?.embedded;if(s.type==="select"){let $=W(s),qe=C($);return L(vt,{value:qe?String(qe):"",onValueChange:we=>b($,we==="__all__"?"":we),children:[P(wt,{size:"sm",className:r("w-full",te?"border border-transparent rounded-l-none rounded-r-lg shadow-none relative focus-visible:z-10 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]":"rounded-lg"),children:L("span",{className:"flex items-center gap-2 truncate",children:[s.icon&&P(s.icon,{className:"size-4 shrink-0 text-muted-foreground"}),P(yt,{placeholder:s.placeholder})]})}),L(Ct,{className:"rounded-lg",children:[P(nt,{value:"__all__",children:"All"}),s.options?.map(we=>P(nt,{value:we.value,children:we.label},we.value))]})]})}return s.type==="date"||s.type==="daterange"?P(An,{value:C(W(s)),onChange:$=>b(W(s),$),placeholder:s.placeholder,mode:s.type==="daterange"?"range":"single",dateFormat:s.dateFormat,externalSearch:s.externalSearch,onExternalChange:$=>x(W(s),$),triggerClassName:te?"border border-transparent rounded-l-none rounded-r-lg shadow-none relative focus-visible:z-10 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]":void 0}):L("div",{className:"relative w-full",children:[s.icon&&P(s.icon,{className:"absolute -translate-y-1/2 size-4 left-3 top-1/2 text-muted-foreground"}),P(Ut,{placeholder:s.placeholder,value:C(W(s))??"",onChange:$=>{b(W(s),$.target.value)},className:r("h-8",s.icon&&"pl-9",te?"border border-transparent rounded-l-none rounded-r-lg shadow-none relative focus-visible:z-10 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]":"rounded-lg"),type:s.type==="number"?"number":"text"})]})},Le=t.filter(s=>(s.placement??"bar")==="bar"),He=t.filter(s=>s.placement==="menu"),ze=c&&He.length>0,Dt=He.filter(O),ct=e.getState().columnFilters.length>0||!!o||t.some(O),{left:Rt=[],right:Fe=[]}=e.getState().columnPinning,Ie=Rt.some(s=>s!=="serialNumber"&&s!=="select")||Fe.length>0,ye=[{value:"all",label:"All Fields"},...He.map(s=>({value:W(s),label:s.placeholder}))];return L("div",{className:"flex flex-wrap items-center gap-3",children:[Le.length>0&&P(On,{className:"size-4 text-muted-foreground shrink-0"}),Le.map(s=>z(s)?P("div",{className:r("relative min-w-[150px]",s.width),children:ve(s)},W(s)):null),A&&Dt.map(s=>L("span",{className:"inline-flex items-center gap-1 h-8 px-2 rounded-lg border bg-muted/50 text-sm",children:[L("span",{className:"text-muted-foreground",children:[s.placeholder,":"]}),P("span",{className:"font-medium truncate max-w-[120px]",children:dt(s)}),P("button",{type:"button",onClick:()=>Me(s),className:"ml-1 p-0.5 rounded hover:bg-accent","aria-label":`Clear ${s.placeholder}`,children:P(hr,{className:"size-3.5"})})]},`chip-${W(s)}`)),ct&&L(k,{variant:"ghost",size:"sm",onClick:S,className:"h-8 px-2 rounded-lg text-muted-foreground hover:text-foreground",children:[P(ur,{className:"size-4"}),"Clear Filters"]}),L("div",{className:"flex flex-wrap items-center gap-2 ml-auto",children:[c&&L("div",{className:r("flex items-center",ze&&"bg-background border rounded-lg"),children:[ze&&L(Pe,{children:[P(Te,{asChild:!0,children:L(k,{variant:"ghost",size:"sm",className:"gap-1 border border-transparent border-r-border rounded-l-lg rounded-r-none hover:bg-transparent shrink-0 relative focus-visible:z-10 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",children:[P("span",{className:"text-sm font-medium max-w-28 truncate",children:M==="all"?E:ye.find(s=>s.value===M)?.label}),P(gr,{className:"opacity-50 size-4"})]})}),P(Se,{align:"start",className:"w-48 rounded-lg",children:ye.map(s=>L(Q,{onClick:()=>N(s.value),className:"flex items-center justify-between",children:[P("span",{children:s.label}),M===s.value&&P(br,{className:"size-4 text-primary"})]},s.value))})]}),(()=>{let s=ze&&M!=="all"?He.find(V=>W(V)===M):void 0;return s?P("div",{className:"w-48",children:ve(s,{embedded:!0})}):L("div",{className:"relative",children:[P(sr,{className:"absolute -translate-y-1/2 size-4 left-3 top-1/2 text-muted-foreground"}),P(Ut,{placeholder:ze?"Search all fields...":"Global search...",value:o??"",onChange:V=>n(V.target.value),className:r("pl-9 h-8 w-48",ze&&"border border-transparent rounded-l-none rounded-r-lg shadow-none relative focus-visible:z-10 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]")})]})})()]}),P(Ln,{table:e,aggregations:D,onAggregationChange:H}),i&&P(Hn,{table:e}),L(Pe,{children:[P(Te,{asChild:!0,children:P(k,{variant:"outline",size:"sm",className:"rounded-lg",children:P(cr,{className:"size-4"})})}),L(Se,{align:"end",className:"w-[200px] rounded-lg",children:[P(ie,{children:"Table Settings"}),P(fe,{}),d&&L(Q,{onClick:()=>{let s=Kt(e);d(s.originals,s)},children:[P(dr,{className:"size-4"}),"Export"]}),v&&L(Q,{onClick:f,disabled:e.getState().sorting.length===0,children:[P(pr,{className:"size-4"}),"Clear All Sorting"]}),L(Q,{onClick:S,disabled:!ct,children:[P(On,{className:"size-4"}),"Clear All Filters"]}),Object.keys(D).length>0&&L(Q,{onClick:()=>Xt(D,H),disabled:!X,children:[P(fr,{className:"size-4"}),"Clear Aggregations"]}),m&&L(vr,{children:[P(fe,{}),P(ie,{children:"Column Pinning"}),L(Q,{onClick:()=>e.setColumnPinning({left:[],right:[]}),disabled:!Ie,children:[P(mr,{className:"size-4"}),"Reset All Pinning"]})]})]})]}),p&&P(k,{variant:"outline",size:"sm",onClick:p,disabled:a,className:"rounded-lg",children:P(lr,{className:r("h-4 w-4",a&&"animate-spin")})})]})]})}import{ChevronLeft as yr,ChevronRight as wr}from"lucide-react";import{Fragment as Pr,jsx as le,jsxs as De}from"react/jsx-runtime";function Cr(e,t,o=1){let n=e+1,c=o*2+5;if(t<=c)return Array.from({length:t},(m,v)=>v+1);let d=Math.max(n-o,1),p=Math.min(n+o,t),a=d>2,i=p<t-1,f=3+o*2,g=[];if(!a&&i){for(let m=1;m<=f;m++)g.push(m);g.push("ellipsis",t)}else if(a&&!i){g.push(1,"ellipsis");for(let m=t-f+1;m<=t;m++)g.push(m)}else{g.push(1,"ellipsis");for(let m=d;m<=p;m++)g.push(m);g.push("ellipsis",t)}return g}function Yt({table:e,config:t}){if(!t)return null;let o=e.getPageCount(),n=e.getState().pagination.pageIndex,c=e.getState().pagination.pageSize,d=e.getFilteredRowModel().rows.length,p="size-8 p-0 rounded-lg";return De("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl",children:[t.showInfo!==!1&&De("span",{className:"hidden text-sm text-muted-foreground sm:inline",children:["Showing ",d===0?0:n*c+1," to"," ",Math.min((n+1)*c,d)," of ",d," entries"]}),De("div",{className:"flex items-center gap-3",children:[(()=>{let a=t.pageSizeOptions??[10,25,50,100,-1];if(a.length===0)return null;let i=a.includes(-1),f=d>0&&c>=d,g=i&&f?"-1":`${c}`;return De("div",{className:"flex items-center gap-2",children:[le("span",{className:"hidden text-sm font-medium md:inline",children:"Rows"}),De(vt,{value:g,onValueChange:m=>e.setPageSize(m==="-1"?Math.max(d,1):Number(m)),children:[le(wt,{className:"h-8 w-auto min-w-[4rem] gap-1 rounded-lg",children:le(yt,{})}),le(Ct,{side:"top",className:"rounded-lg",children:a.map(m=>le(nt,{value:`${m}`,children:m===-1?"All":m},m))})]})]})})(),o>1&&De("div",{className:"flex items-center gap-1",children:[le(k,{variant:"outline",size:"sm",onClick:()=>e.previousPage(),disabled:!e.getCanPreviousPage(),"aria-label":"Previous page",className:p,children:le(yr,{className:"size-4"})}),t.showPageNumbers&&De(Pr,{children:[De("span",{className:"px-2 text-sm text-muted-foreground tabular-nums sm:hidden",children:[n+1," / ",o]}),le("div",{className:"hidden items-center gap-1 sm:flex",children:Cr(n,o).map((a,i)=>a==="ellipsis"?le("span",{className:"flex size-8 items-center justify-center text-sm text-muted-foreground",children:"\u2026"},`e${i}`):le(k,{variant:a-1===n?"default":"outline",size:"sm",className:r(p,"tabular-nums"),onClick:()=>e.setPageIndex(a-1),"aria-label":`Page ${a}`,"aria-current":a-1===n?"page":void 0,children:a},a))})]}),le(k,{variant:"outline",size:"sm",onClick:()=>e.nextPage(),disabled:!e.getCanNextPage(),"aria-label":"Next page",className:p,children:le(wr,{className:"size-4"})})]})]})]})}import{useCallback as ln,useEffect as re,useMemo as Nt,useRef as be,useState as de}from"react";function _e(e,t){if(!t)return{};let o=e.getIsPinned();if(!o)return{};let n=e.getSize();return{position:"sticky",left:o==="left"?e.getStart("left"):void 0,right:o==="right"?e.getAfter("right"):void 0,width:n,minWidth:n,maxWidth:n,boxShadow:o==="right"&&e.getIsFirstColumn("right")?"inset 1px 0 0 0 var(--border)":void 0}}var me=(e,t)=>t||e!==150?e:"auto";function $n(e){let t=[],o=[],n=new Set,c=p=>{p.forEach((a,i)=>{let f=a.id??a.accessorKey,g=f!=null?String(f):"";if(g&&(a.defaultPin==="left"||a.defaultPin==="right")&&!n.has(g)){n.add(g);let m=Number.isFinite(a.pinIndex)?a.pinIndex:i;(a.defaultPin==="left"?t:o).push({id:g,order:m})}a.columns&&c(a.columns)})};c(e);let d=p=>p.sort((a,i)=>a.order-i.order).map(a=>a.id);return{left:d(t),right:d(o)}}function Kn(e,t){return{left:[...t,...(e.left??[]).filter(o=>!t.includes(o))],right:(e.right??[]).filter(o=>!t.includes(o))}}function Wn(e,t,o,n){if(o===!1)e.setColumnSizing(a=>{let i={...a};return delete i[t],i});else{let a=n.container?.querySelector(`[data-col-id="${t}"]`),i=a?Math.round(a.getBoundingClientRect().width):0;i>0&&e.setColumnSizing(f=>({...f,[t]:i}))}let{alwaysPinnedLeft:c}=n,d=e.getState().columnPinning,p={left:(d.left??[]).filter(a=>c.includes(a)),right:[...d.right??[]]};o==="right"?p.right.includes(t)||p.right.push(t):o==="left"?(p.right=p.right.filter(a=>a!==t),!p.left.includes(t)&&!c.includes(t)&&p.left.push(t)):(p.left=p.left.filter(a=>a!==t),p.right=p.right.filter(a=>a!==t)),e.setColumnPinning(p)}var qn={sum:e=>e.reduce((t,o)=>t+o,0),average:e=>e.length>0?e.reduce((t,o)=>t+o,0)/e.length:0,min:e=>e.length>0?Math.min(...e):0,max:e=>e.length>0?Math.max(...e):0,count:e=>e.length,unique:e=>new Set(e).size,median:e=>{if(e.length===0)return 0;let t=[...e].sort((n,c)=>n-c),o=Math.floor(t.length/2);return t.length%2===0?(t[o-1]+t[o])/2:t[o]}};function Xn(e,t){if(!t||Object.keys(t).length===0)return{};let o={},n=e.getFilteredRowModel().rows;return Object.entries(t).forEach(([c,d])=>{if(!d?.enabled)return;let p=n.map(i=>{if(d.accessor)return d.accessor(i.original);let f=i.getValue(c);return typeof f=="number"?f:parseFloat(String(f))}).filter(i=>i!==null&&!isNaN(i)),a={};d.functions?.forEach(i=>{qn[i]&&(a[i]=qn[i](p))}),Object.keys(a).length>0&&(o[c]=a)}),o}function Jn(e,t){return typeof t=="number"?e==="count"||e==="unique"?t.toLocaleString():t.toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2}):t}function Tr(e,t){return t.split(".").reduce((o,n)=>o&&o[n],e)}function Qn(e,t=new Set){for(let o of e){let n=o.id??o.accessorKey;n&&t.add(String(n)),o.columns&&Qn(o.columns,t)}return t}function Pt(e,t){let o=Qn(e),n=[];for(let c of t){if(c.externalSearch)continue;let d=typeof c.filterFn=="function",p=d?c.id:c.key;if(!p||o.has(String(p)))continue;let a=c.key;n.push({id:String(p),accessorFn:a?i=>Tr(i,a):()=>null,...d&&{filterFn:(i,f,g)=>c.filterFn(i.original,g)},enableHiding:!1,enableSorting:!1,enablePinning:!1,enableGlobalFilter:!1,meta:{filterOnly:!0}})}return n}import{jsx as Ke}from"react/jsx-runtime";function Yn({initialColumns:e,filters:t,showSerialNumbers:o,enableRowSelection:n,selectionMode:c,showCheckbox:d,enableHeaderCheckbox:p,isRowSelectable:a}){let i=m=>m.map(v=>{if(v.id==="select"||v.id==="serialNumber")return v;let l={...v,enablePinning:!0};return v.enableColumnVisibility!==void 0&&v.enableHiding===void 0&&(l.enableHiding=v.enableColumnVisibility),v.columns&&(l.columns=i(v.columns)),l}),f=i([...e]),g={id:"select",header:({table:m})=>{if(c==="single")return null;let v=m.getRowModel().rows.filter(D=>a?.(D.original)??!0),l=v.length>0&&v.every(D=>D.getIsSelected()),_=v.some(D=>D.getIsSelected());return Ke("div",{className:"flex justify-center items-center",children:Ke(tt,{checked:l||_&&"indeterminate",onCheckedChange:D=>{v.forEach(H=>H.toggleSelected(!!D))},disabled:!p||v.length===0,"aria-label":"Select all selectable rows"})})},cell:({row:m})=>{let v=a?.(m.original)??!0;return Ke("div",{className:r("flex justify-center items-center",!v&&"opacity-50"),children:c==="multiple"?Ke(tt,{checked:m.getIsSelected(),onCheckedChange:l=>v&&m.toggleSelected(!!l),"aria-label":"Select row",disabled:!v}):d?Ke("input",{type:"radio",checked:m.getIsSelected(),onChange:()=>v&&m.toggleSelected(!0),disabled:!v,className:"border-primary rounded-full focus:ring-primary w-4 h-4 text-primary"}):null})},enableSorting:!1,enableHiding:!1,enablePinning:!1,enableHeaderMenu:!1,headerAlign:"center",size:c==="multiple"?40:30};return n&&f.unshift(g),o&&f.unshift({id:"serialNumber",header:"No.",cell:({row:m,table:v})=>{let _=v.getRowModel().rows.findIndex(A=>A.id===m.id),{pageIndex:D,pageSize:H}=v.getState().pagination,E=D*H+_+1;return Ke("div",{className:"font-medium text-muted-foreground text-center",children:E})},enableSorting:!0,enableHiding:!1,enablePinning:!0,size:60,headerAlign:"center"}),[...f,...Pt(e,t)]}import{useEffect as Nr,useMemo as Dr,useRef as rt}from"react";import{useSearchParams as Rr}from"react-router";var Zn="atsui:tbl:v1:",tn=new Map,eo=new Map;function nn(e){try{let t=localStorage.getItem(Zn+e);return t?JSON.parse(t):void 0}catch{return}}function to(e,t){try{localStorage.setItem(Zn+e,JSON.stringify(t))}catch{}}function no(e){return e?typeof e=="string"?{key:e}:e:null}function Tt(e,t){return tn.get(e)??(t?nn(e):void 0)??{}}function Ee(e,t,o){let n={...Tt(e,t),...o};tn.set(e,n),t&&to(e,n)}var en=new Map;function oo(e,t){let o=en.get(e);return o||(o=new Set,en.set(e,o)),o.add(t),()=>{o.delete(t)}}function ot(e,t){return{...t?nn("g:"+e)??{}:{},...eo.get(e)??{}}}function St(e,t,o,n){let c=ot(e,t),d=n==null||n==="";if(d?c[o]===void 0:c[o]===n)return;let p={...c};d?delete p[o]:p[o]=n,eo.set(e,p),t&&to("g:"+e,p),en.get(e)?.forEach(a=>a())}function ro(e,t){if(Ee(e.key,e.local,{filters:{},globalFilter:"",external:{},groupedField:"all"}),e.group)for(let o of t)St(e.group,e.local,o,void 0)}function Sr(e){return(tn.get(e)??nn(e))?.external??{}}var Zt=new Set;function ao(e){return Zt.has(e)&&console.warn(`[DataTable] persist key "${e}" is used by two mounted tables \u2014 they will overwrite each other's saved state. Give each table a unique key.`),Zt.add(e),()=>{Zt.delete(e)}}var We="q",at="page",it="pageSize",on=e=>{if(e==null||e instanceof Date)return e;let t=new Date(e);return isNaN(t.getTime())?e:t},st=e=>{if(e&&typeof e=="object"&&("from"in e||"to"in e)){let t=on(e.from),o=on(e.to);return t===e.from&&o===e.to?e:{from:t,to:o}}return on(e)},rn=e=>{let t=e instanceof Date?e:new Date(e);return isNaN(t.getTime())?"":t.toISOString().slice(0,10)},kr=e=>{if(e==null)return;let t=typeof e=="object"&&("from"in e||"to"in e),o=rn(t?e.from:e),n=t?rn(e.to):"";if(!(!o&&!n))return t?`${o},${n}`:o},io=e=>{if(!e.includes(","))return st(e);let[t,o]=e.split(",");return st({from:t||void 0,to:o||void 0})},so=e=>{if(e===null)return;let t=Number(e);return Number.isInteger(t)&&t>0?t:void 0};function lo(e,t,o){let n=no(e),[c,d]=Rr(),p=t.map(u=>({id:String(u.id??u.key),shared:u.shared,persist:u.persist!==!1,external:!!u.externalSearch,isDate:u.type==="date"||u.type==="daterange"})),a=rt(p);a.current=p;let i=Dr(()=>{if(!n)return{columnFilters:[],globalFilter:"",pagination:{pageIndex:0,pageSize:o},external:{},groupedField:"all"};let u=Tt(n.key,n.local),x=n.group?ot(n.group,n.local):{},S=z=>{let O=c.get(z.id);if(O!==null)return z.isDate?io(O):O;if(z.shared&&n.group){let Me=x[z.shared];return z.isDate?st(Me):Me}let ke=u.filters?.[z.id]??u.external?.[z.id];return z.isDate?st(ke):ke},C=[],b={};for(let z of p){if(!z.persist)continue;let O=S(z);O==null||O===""||(z.external?b[z.id]=O:C.push({id:z.id,value:O}))}let N=so(c.get(at)),X=so(c.get(it));return{columnFilters:C,globalFilter:c.get(We)??u.globalFilter??"",pagination:{pageIndex:n.pagination===!1?0:N!==void 0?N-1:u.pagination?.pageIndex??0,pageSize:n.pagination===!1?o:X??u.pagination?.pageSize??o},external:b,groupedField:u.groupedField??"all"}},[]),f=rt(i.pagination.pageIndex),g=rt(i.pagination.pageIndex===0);Nr(()=>{if(n)return!n.group&&a.current.some(u=>u.shared)&&console.warn(`[DataTable] persist key "${n.key}": filters use \`shared\` but the table has no \`persist.group\` \u2014 shared is inert. Add a group to enable it.`),ao(n.key)},[]);let m=rt({}),v=rt(!1),l=u=>{if(Object.keys(u).length===0||(Object.assign(m.current,u),v.current))return;v.current=!0;let x=window.location.pathname;queueMicrotask(()=>{v.current=!1;let S=m.current;m.current={},window.location.pathname===x&&_(S)})},_=u=>{let x=new URLSearchParams(window.location.search),S=!1;for(let[C,b]of Object.entries(u)){let N=x.get(C);b===void 0?N!==null&&(x.delete(C),S=!0):N!==b&&(x.set(C,b),S=!0)}S&&d(x,{replace:!0})},D=(u,x)=>u.isDate?kr(x):x==null||x===""?void 0:String(x),H=u=>{if(!n)return;let x={};for(let b of u)x[b.id]=b.value;let S={},C={};for(let b of a.current)!b.persist||b.external||(b.shared&&n.group?St(n.group,n.local,b.shared,x[b.id]):x[b.id]!==void 0&&(S[b.id]=x[b.id]),C[b.id]=D(b,x[b.id]));Ee(n.key,n.local,{filters:S}),l(C)},E=u=>{n&&(Ee(n.key,n.local,{globalFilter:u}),l({[We]:u||void 0}))},A=u=>{if(!n)return;let x={},S={};for(let C of a.current)!C.persist||!C.external||(C.shared&&n.group?St(n.group,n.local,C.shared,u[C.id]):u[C.id]!==void 0&&(x[C.id]=u[C.id]),S[C.id]=D(C,u[C.id]));Ee(n.key,n.local,{external:x}),l(S)},B=u=>{!n||n.pagination===!1||g.current&&(Ee(n.key,n.local,{pagination:{pageIndex:u.pageIndex,pageSize:u.pageSize}}),l({[at]:u.pageIndex>0?String(u.pageIndex+1):void 0,[it]:u.pageSize!==o?String(u.pageSize):void 0}))},ee=(u,x)=>{if(!n||g.current||u.getCoreRowModel().rows.length===0)return;let S=Math.min(f.current,Math.max(u.getPageCount()-1,0));g.current=!0,S>0&&x({pageIndex:S,pageSize:u.getState().pagination.pageSize})},w=()=>!!n&&n.pagination!==!1&&!g.current,T=u=>{n&&Ee(n.key,n.local,{groupedField:u})},M=u=>{if(!n?.group)return;let x=n.group,S=a.current.filter(C=>C.shared&&C.persist&&!C.external);if(S.length!==0)return oo(x,()=>{let C=ot(x,n.local);for(let b of S){let N=u.getColumn(b.id);if(!N)continue;let X=C[b.shared],z=X===void 0?void 0:b.isDate?st(X):X,O=N.getFilterValue();Object.is(O??void 0,z??void 0)||N.setFilterValue(z)}})},U=u=>{if(!n)return;let x={},S=Tt(n.key,n.local),C=n.group?ot(n.group,n.local):{};for(let b of a.current){if(!b.persist||b.id in m.current)continue;let N=c.get(b.id);if(b.external){if(N===null){let O=D(b,b.shared&&n.group?C[b.shared]:S.external?.[b.id]);O!==void 0&&(x[b.id]=O)}continue}let X=u.getColumn(b.id);if(!X)continue;let z=D(b,X.getFilterValue())??null;if(N!==z){if(N===null){z!==null&&(x[b.id]=z);continue}X.setFilterValue(N===""?void 0:b.isDate?io(N):N)}}if(!(We in m.current)){let b=c.get(We),N=u.getState().globalFilter??"";b===null?N!==""&&(x[We]=N):b!==N&&u.setGlobalFilter(b)}if(n.pagination!==!1&&g.current){let b=S.pagination;b&&!(at in m.current)&&c.get(at)===null&&b.pageIndex>0&&(x[at]=String(b.pageIndex+1)),b&&!(it in m.current)&&c.get(it)===null&&b.pageSize!==o&&(x[it]=String(b.pageSize))}l(x)},j=()=>{if(!n)return;ro(n,a.current.filter(x=>x.shared).map(x=>x.shared));let u={[We]:void 0};for(let x of a.current)x.persist&&(u[x.id]=void 0);l(u)};return{enabled:!!n,initial:i,searchParamsKey:c.toString(),persistFilters:H,persistGlobalFilter:E,persistExternal:A,persistPagination:B,persistGroupedField:T,restorePageIndex:ee,syncSharedSlots:M,applyURLToTable:U,clearAll:j,pendingPageRestore:w}}import{flexRender as co}from"@tanstack/react-table";import{ChevronUp as uo,ChevronDown as po,ChevronsUpDown as mo,EyeOff as Mr,MoreHorizontal as zr,MoveLeftIcon as Fr,MoveRightIcon as Ir,PinOffIcon as Ar,Calculator as go}from"lucide-react";import{Fragment as an,jsx as I,jsxs as q}from"react/jsx-runtime";function fo({table:e,aggregations:t,enableColumnPinning:o,enableColumnResizing:n,enableColumnVisibility:c,enableRowSelection:d,fixedCheckboxColumn:p,bordered:a,compact:i,onPinColumn:f}){let g=e.getVisibleLeafColumns().filter(v=>!v.getIsPinned()),m=g[g.length-1]?.id;return I(an,{children:e.getHeaderGroups().map(v=>I(pe,{className:"hover:bg-transparent",children:v.headers.map((l,_)=>{let D=l.depth===0&&l.colSpan>1,H=o&&(l.column.getIsPinned()==="left"||l.column.id==="serialNumber"||l.column.id==="select"&&d),E=o&&l.column.getIsPinned()==="right",A=l.column.getCanSort(),B=o&&l.column.columnDef.enablePinning!==!1,ee=l.column.id==="serialNumber",w=l.column.id==="select",T=ee||w&&p,M=l.column.columnDef.headerAlign||"left",U=t&&t[l.column.id]?.enabled,j=c&&!T&&l.column.getCanHide(),x=l.column.columnDef.enableHeaderMenu!==!1&&(A||B&&!T||j),S=l.column.getIsSorted(),C=l.column.columnDef.reserveMenuSpace===!0,b={left:"justify-start",center:"justify-center",right:"justify-end"}[M];return q(Cn,{colSpan:l.colSpan,"data-col-id":D?void 0:l.column.id,className:r("group bg-sidebar px-0 font-semibold text-foreground",!i&&"py-2",a&&_<v.headers.length-1&&l.column.id!==m&&"border-r","relative",H&&"sticky left-0 z-25 bg-sidebar/95",E&&"sticky right-0 z-25 bg-sidebar/95",(ee||w)&&"sticky left-0 z-25 bg-sidebar/95",D?"text-center":"text-left"),style:{width:me(l.getSize(),H||E),minWidth:me(l.getSize(),H||E),..._e(l.column,o)},children:[D?q("div",{className:"flex justify-center items-center",children:[co(l.column.columnDef.header,l.getContext()),U&&I(go,{className:"ml-1 w-3 h-3 text-primary"})]}):q("div",{className:r("relative flex items-center px-2 w-full",b,A&&"cursor-pointer select-none"),onClick:A?N=>{N.target.closest("button, a, input, select, [role=button], [role=checkbox]")||l.column.getToggleSortingHandler()?.(N)}:void 0,children:[q("div",{className:r("flex items-center gap-1 min-w-0 max-w-full",S&&(M==="right"?"pl-6":"pr-6"),C&&(M==="right"?x?"pl-12":"pl-6":x?"pr-12":"pr-6")),children:[U&&I(go,{className:"mr-1 w-3 h-3 text-primary shrink-0"}),l.isPlaceholder?null:I("span",{className:"truncate",children:co(l.column.columnDef.header,l.getContext())})]}),(x||A)&&q("div",{className:r("absolute inset-y-0 flex items-center pointer-events-none",M==="right"?"left-0 pr-8 pl-1 flex-row-reverse":"right-0 pl-8 pr-1"),children:[I("div",{className:r("absolute inset-0 from-sidebar from-45% to-transparent",M==="right"?"bg-gradient-to-r":"bg-gradient-to-l","transition-opacity duration-200 ease-out","opacity-0 group-hover:opacity-100 group-has-[[data-state=open]]:opacity-100")}),A&&I("span",{className:"relative shrink-0",children:S?S==="asc"?I(uo,{className:"w-4 h-4"}):I(po,{className:"w-4 h-4"}):I(mo,{className:"w-3.5 h-3.5 opacity-0 group-hover:opacity-40 transition-opacity"})}),x&&q(Pe,{children:[I(Te,{asChild:!0,children:I(k,{variant:"ghost",size:"icon",tabIndex:-1,"aria-label":"Column options",onClick:N=>N.stopPropagation(),className:r("relative size-6 rounded-sm pointer-events-auto overflow-hidden","bg-sidebar hover:bg-border dark:bg-sidebar dark:hover:bg-accent","w-0 opacity-0 group-hover:w-5 group-hover:opacity-100",M==="right"?"mr-0":"ml-0",A&&(M==="right"?"group-hover:mr-0.5":"group-hover:ml-0.5"),"data-[state=open]:w-5 data-[state=open]:opacity-100",A&&(M==="right"?"data-[state=open]:mr-0.5":"data-[state=open]:ml-0.5"),"transition-all duration-200 ease-out"),children:I(zr,{className:"w-4 h-4"})})}),q(Se,{align:"end",className:"w-48",onClick:N=>N.stopPropagation(),children:[A&&q(an,{children:[I(ie,{children:"Sorting"}),q(Q,{onClick:()=>l.column.toggleSorting(!1),disabled:S==="asc",children:[I(uo,{className:"mr-2 w-4 h-4"}),"Sort Ascending"]}),q(Q,{onClick:()=>l.column.toggleSorting(!0),disabled:S==="desc",children:[I(po,{className:"mr-2 w-4 h-4"}),"Sort Descending"]}),q(Q,{onClick:()=>l.column.clearSorting(),disabled:!S,children:[I(mo,{className:"mr-2 w-4 h-4"}),"Clear Sort"]}),(B&&!T||j)&&I(fe,{})]}),B&&!T&&q(an,{children:[I(ie,{children:"Pin Column"}),q(Q,{onClick:()=>f(l.column.id,"left"),disabled:l.column.getIsPinned()==="left",children:[I(Fr,{}),"Pin Left"]}),q(Q,{onClick:()=>f(l.column.id,"right"),disabled:l.column.getIsPinned()==="right",children:[I(Ir,{}),"Pin Right"]}),q(Q,{onClick:()=>f(l.column.id,!1),disabled:!l.column.getIsPinned(),children:[I(Ar,{}),"Unpin"]}),j&&I(fe,{})]}),j&&q(Q,{onClick:()=>l.column.toggleVisibility(!1),children:[I(Mr,{className:"mr-2 w-4 h-4"}),"Hide Column"]})]})]})]})]}),I("div",{className:r("absolute bottom-0 inset-x-0 pointer-events-none",U?"h-0.5 bg-primary/40":"h-px bg-border")}),n&&l.column.getCanResize()&&!D&&l.colSpan===1&&I("div",{className:"top-0 right-0 absolute hover:bg-primary opacity-0 hover:opacity-100 bg-border w-1 h-full transition-opacity cursor-col-resize select-none touch-none",onMouseDown:l.getResizeHandler(),onTouchStart:l.getResizeHandler(),onClick:N=>N.stopPropagation()})]},l.id)})},v.id))})}import{jsx as xe,jsxs as sn}from"react/jsx-runtime";function bo({table:e,columnAggregations:t,aggregations:o,enableColumnPinning:n,enableRowSelection:c,showSerialNumbers:d,compact:p}){let a=Object.keys(t).length>0,i=e.getHeaderGroups()[0]?.headers.some(l=>l.column.columnDef.customFooter),f=d&&e.getFilteredRowModel().rows.length>0&&(a||i),g=e.getHeaderGroups()[0]?.headers.length??0,m=e.getVisibleLeafColumns().filter(l=>!l.getIsPinned()),v=m[m.length-1]?.id;return!a&&!i&&!f?null:xe(gt,{className:"bottom-0 z-20 sticky bg-sidebar border-t-0 shadow-[0_1px_0_0_var(--border)]",children:xe(pe,{className:"bg-sidebar hover:bg-transparent",children:e.getHeaderGroups()[0]?.headers.map((l,_)=>{let D=l.column.id,H=t[D],E=n&&(l.column.getIsPinned()==="left"||l.column.id==="serialNumber"||l.column.id==="select"&&c),A=n&&l.column.getIsPinned()==="right",B=l.column.id==="serialNumber",ee=l.column.id==="select",T=l.column.columnDef.customFooter;return H||T||B&&f?sn(ge,{className:r("relative px-2 py-2 font-semibold text-sm",_<g-1&&"border-r",p&&"py-1",E&&"sticky left-0 z-30 bg-sidebar",A&&"sticky right-0 z-30 bg-sidebar",(B||ee)&&"sticky left-0 z-30 bg-sidebar",T?.className),style:{width:me(l.getSize(),E||A),minWidth:me(l.getSize(),E||A),..._e(l.column,n)},children:[xe("div",{className:"absolute top-0 inset-x-0 h-px bg-border pointer-events-none"}),(()=>{if(T?.content){let U=typeof T.content=="function"?T.content(e):T.content;return xe("div",{className:r("w-full h-full",T.align==="center"&&"text-center",T.align==="right"&&"text-right",T.align==="left"&&"text-left"),children:U})}return H?xe("div",{className:"flex flex-col gap-0.5 text-xs",children:Object.entries(H).map(([U,j])=>sn("div",{className:"flex justify-between items-center text-muted-foreground",children:[xe("span",{className:"text-xs capitalize",children:U}),xe("span",{className:"font-medium text-foreground",children:o?.[D]?.format?.(j,U)??Jn(U,j)})]},U))}):B&&f?sn("div",{className:"text-muted-foreground text-xs text-center",children:["Total ",e.getFilteredRowModel().rows.length]}):null})()]},`agg-${l.id}`):xe(ge,{className:r("relative px-0 py-0",_<g-1&&l.column.id!==v&&"border-r",p&&"py-0",E&&"sticky left-0 z-30 bg-sidebar",A&&"sticky right-0 z-30 bg-sidebar",(B||ee)&&"sticky left-0 z-30 bg-sidebar"),style:{width:me(l.getSize(),E||A),minWidth:me(l.getSize(),E||A),..._e(l.column,n)},children:xe("div",{className:"absolute top-0 inset-x-0 h-px bg-border pointer-events-none"})},`agg-${l.id}`)})})})}import{jsx as y,jsxs as Ve}from"react/jsx-runtime";function Br({data:e,columns:t,filters:o=[],pagination:n,settings:c={},header:d,footer:p,className:a="",maxHeight:i="100%",loading:f=!1,error:g,emptyMessage:m="No data available",onRowSelectionChange:v,onExport:l,onRefresh:_,onTableReady:D,children:H,isRowSelectable:E,getRowId:A,defaultSelectedRows:B,onExternalSearch:ee,aggregations:w={},onAggregationChange:T,rowClassName:M,persist:U}){let j=!!n,u=lo(U,o,n?.pageSize||10),x=be(u.initial.external),[S,C]=de([]),[b,N]=de(u.initial.columnFilters),[X,z]=de(u.initial.pagination),[O,ke]=de(()=>Object.fromEntries(Pt(t,o).map(h=>[h.id,!1]))),[Me,dt]=de({}),[ve,Le]=de(u.initial.globalFilter),[He,ze]=de([]),[Dt,ct]=de(()=>{if(c.enableColumnPinning===!1)return{};let h=[...c.showSerialNumbers!==!1?["serialNumber"]:[],...c.enableRowSelection!==!1?["select"]:[]],G=$n(t);return{left:[...h,...G.left.filter(he=>!h.includes(he))],right:G.right}}),Rt=be(null),Fe=be(null),Ie=be(null),ye=be(null),[s,V]=de(0),[te,$]=de(0),[qe,we]=de(0),Xe=be(null),[kt,yo]=de(!1),{enableSorting:Je=!0,enableFiltering:Mt=!0,enableGlobalFilter:zt=!0,enableColumnVisibility:ut=!0,enableRowSelection:J=!0,showToolbar:Be=!1,enableHeaderCheckbox:dn=!0,toolbarPosition:Ae="default",showSerialNumbers:Oe=!0,fixedCheckboxColumn:cn=!0,striped:wo=!0,hoverable:Co=!0,compact:pt=!0,bordered:Ft=!0,fullHeight:un=!1,enableColumnResizing:pn=!1,enableColumnPinning:ce=!0,showHeader:Po=!0,selectionMode:je="multiple",showCheckbox:mn=!0,groupedFilterLabel:To="Global",showFilterChips:So=!0}=c;re(()=>{o.length>0&&!Be&&console.warn("[DataTable] `filters` are provided but settings.showToolbar is off \u2014 filters live in the toolbar, so none will render."),o.some(h=>h.placement==="menu")&&!zt&&console.warn("[DataTable] placement:'menu' filters are reached through the global search's field picker \u2014 with enableGlobalFilter off they are unreachable (only their chips would show).")},[]),re(()=>{let h=()=>{Xe.current&&yo(Xe.current.scrollTop>0)},G=Xe.current;if(G)return G.addEventListener("scroll",h),()=>G.removeEventListener("scroll",h)},[]),re(()=>{let h=()=>{Fe.current&&V(Fe.current.offsetHeight+16),Ie.current&&$(Ie.current.offsetHeight+16),ye.current&&we(ye.current.offsetHeight+16)};h();let G=new ResizeObserver(()=>{setTimeout(h,50)});return Fe.current&&G.observe(Fe.current),Ie.current&&G.observe(Ie.current),ye.current&&G.observe(ye.current),()=>{G.disconnect()}},[Be,d,Ae]),re(()=>{u.persistFilters(b)},[b]),re(()=>{u.persistGlobalFilter(ve)},[ve]),re(()=>{u.persistPagination(X)},[X]);let gn=h=>{x.current=h,u.persistExternal(h),ee?.(h)},It=Nt(()=>Yn({initialColumns:t,filters:o,showSerialNumbers:Oe,enableRowSelection:J,selectionMode:je,showCheckbox:mn,enableHeaderCheckbox:dn,isRowSelectable:E}),[t,o,Oe,J,E,je,mn,dn]),R=Hr({data:e,columns:It,getRowId:A,onSortingChange:Je?C:void 0,onColumnFiltersChange:Mt?N:void 0,onGlobalFilterChange:zt?Le:void 0,getCoreRowModel:_r(),getPaginationRowModel:j?Vr():void 0,getSortedRowModel:Je?Lr():void 0,getFilteredRowModel:Mt?Er():void 0,onColumnVisibilityChange:ut?ke:void 0,onRowSelectionChange:J?dt:void 0,onColumnOrderChange:ze,onColumnPinningChange:ce?h=>ct(G=>Kn(typeof h=="function"?h(G):h,[...Oe?["serialNumber"]:[],...J?["select"]:[]])):void 0,state:{sorting:Je?S:void 0,columnFilters:Mt?b:void 0,columnVisibility:ut?O:void 0,rowSelection:J?Me:{},globalFilter:ve,pagination:j?X:void 0,columnOrder:He,columnPinning:ce?Dt:{}},onPaginationChange:j?z:void 0,initialState:{columnPinning:ce?{left:[...Oe?["serialNumber"]:[],...J?["select"]:[]],right:[]}:void 0},enableRowSelection:J?h=>E?.(h.original)??!0:!1,enableSorting:Je,enableColumnResizing:pn,enableColumnPinning:ce,columnResizeMode:"onChange",autoResetPageIndex:!u.pendingPageRestore()}),At=Nt(()=>Xn(R,w),[R,w,e,b,ve]),No=Nt(()=>Object.keys(At).length>0||It.some(h=>h.customFooter),[At,It]),fn=be({onRowSelectionChange:v,isRowSelectable:E});fn.current={onRowSelectionChange:v,isRowSelectable:E};let bn=be(!1);re(()=>{if(bn.current||!B||!J)return;let h=R.getCoreRowModel().rows;if(h.length===0)return;let G={};for(let he of h)he.getCanSelect()&&B(he.original)&&(G[he.id]=!0);bn.current=!0,Object.keys(G).length>0&&dt(G)},[B,J,R,e]),re(()=>{let{onRowSelectionChange:h,isRowSelectable:G}=fn.current;if(J&&h){let he=R.getFilteredSelectedRowModel().rows.filter(Ye=>G?.(Ye.original)??!0).map(Ye=>Ye.original);h(he)}},[Me,J,R]);let Do=ln(h=>{je==="single"?(R.resetRowSelection(),h.toggleSelected(!0)):h.toggleSelected()},[je,R]),hn=be(D);hn.current=D,re(()=>{hn.current?.(R)},[R]);let xn=be(!1);re(()=>{xn.current||(xn.current=!0,Object.keys(u.initial.external).length>0&&gn(u.initial.external))},[]),re(()=>u.syncSharedSlots(R),[R]),re(()=>u.applyURLToTable(R),[R,u.searchParamsKey]),re(()=>{j&&u.restorePageIndex(R,z)},[e]);let Ro=ln(()=>{C([])},[]),ko=ln(()=>{N([]),Le(""),u.clearAll()},[]),Mo=(h,G)=>{ce&&Wn(R,h,G,{container:Xe.current,alwaysPinnedLeft:[...Oe?["serialNumber"]:[],...J&&cn?["select"]:[]]})},zo=h=>h&&typeof h=="object"&&"content"in h,ue=Nt(()=>d?zo(d)?{content:d.content,align:d.align||"left",className:d.className||"",showOnEmpty:d.showOnEmpty!==void 0?d.showOnEmpty:!0}:{content:d,align:"left",className:"",showOnEmpty:!0}:null,[d]);if(g)return y(Lt,{className:"shadow-sm rounded-xl w-full",children:y(Ht,{className:"flex justify-center items-center",children:Ve("div",{className:"text-center",children:[y("div",{className:"mb-3 text-red-500 text-2xl",children:"\u26A0\uFE0F"}),y("p",{className:"mb-4 text-muted-foreground text-sm",children:g}),_&&Ve(k,{variant:"outline",size:"sm",onClick:_,className:"rounded-lg",children:[y(ho,{className:"mr-2 w-4 h-4"}),"Try Again"]})]})})});let Gt=()=>Be?y(Qt,{table:R,filters:o,globalFilter:ve,onGlobalFilterChange:h=>Le(h),enableGlobalFilter:zt,onExport:l,onRefresh:_,loading:f,enableColumnVisibility:ut,enableColumnPinning:ce,enableSorting:Je,showFilterChips:So,onClearSorting:Ro,onClearFilters:ko,onExternalSearch:gn,initialExternalValues:x.current,aggregations:w,onAggregationChange:T,groupedFilterLabel:To,initialGroupedField:u.initial.groupedField,onGroupedFieldChange:u.persistGroupedField}):null,Fo=()=>{let h=0;return Ae==="above-header"&&(h+=s),ue&&(h+=qe),Ae==="below-header"&&(h+=te),h},vn=R.getVisibleLeafColumns().filter(h=>!h.getIsPinned()),Io=vn[vn.length-1]?.id,Qe=Math.max(R.getVisibleLeafColumns().length,1);return y(Ze,{children:Ve("div",{className:r("flex flex-col space-y-2 w-full h-full p-1",a),children:[Be&&Ae==="default"&&y("div",{ref:Rt,className:"z-40 relative",children:Gt()}),y(Lt,{className:r("shadow-sm overflow-hidden py-0",un&&"flex-1 min-h-0"),children:y(Ht,{className:"h-full p-0",children:Ve("div",{className:"relative flex flex-col justify-between h-full",children:[f&&y("div",{className:"z-50 absolute inset-0 flex justify-center items-center bg-background/80 rounded-xl",children:Ve("div",{className:"flex items-center gap-3 bg-background/90 shadow-sm px-4 py-3 rounded-lg",children:[y(ho,{className:"size-5 text-primary animate-spin"}),y("span",{className:"font-medium text-muted-foreground text-sm",children:"Loading..."})]})}),y("div",{ref:Xe,className:r("relative overflow-auto rounded-t-xl",un?"flex-1 min-h-0":R.getRowModel().rows?.length===0&&"h-full"),style:{maxHeight:i},children:Ve(Vt,{className:r("w-full border-separate border-spacing-0 relative",R.getState().columnSizingInfo.isResizingColumn&&"select-none",R.getRowModel().rows?.length===0&&"h-full"),children:[Be&&Ae==="above-header"&&y("thead",{className:"top-0 z-40 sticky bg-sidebar border-b",children:y(pe,{className:"hover:bg-transparent",children:y(ge,{colSpan:Qe,className:"p-2 bg-sidebar border-b shadow-sm",children:y("div",{ref:Fe,children:Gt()})})})}),ue&&(ue.showOnEmpty||R.getRowModel().rows?.length>0)&&y("thead",{className:r("sticky bg-sidebar border-b",kt&&"shadow-sm"),style:{top:Ae==="above-header"?`${s}px`:"0px",zIndex:35},children:y(pe,{className:"hover:bg-transparent",children:y(ge,{colSpan:Qe,className:r("bg-sidebar border-b p-2 font-semibold text-foreground",pt?"py-2":"py-4",ue.className),children:y("div",{ref:ye,className:r("flex items-center w-full",ue.align==="center"&&"justify-center",ue.align==="right"&&"justify-end",ue.align==="left"&&"justify-start"),children:typeof ue.content=="string"?y("span",{className:"font-bold text-foreground text-lg tracking-tight",children:ue.content}):ue.content})})})}),Be&&Ae==="below-header"&&y("thead",{className:r("sticky bg-sidebar border-b",kt&&"shadow-sm"),style:{top:ue?`${qe}px`:"0px",zIndex:35},children:y(pe,{className:"hover:bg-transparent",children:y(ge,{colSpan:Qe,className:"bg-sidebar border-b p-2",children:y("div",{ref:Ie,children:Gt()})})})}),Po&&y(yn,{className:r("sticky bg-sidebar [&_tr]:border-b-0",kt&&"shadow-sm"),style:{top:`${Fo()}px`,zIndex:30},children:y(fo,{table:R,aggregations:w,enableColumnPinning:ce,enableColumnResizing:pn,enableColumnVisibility:ut,enableRowSelection:J,fixedCheckboxColumn:cn,bordered:Ft,compact:pt,onPinColumn:Mo})}),y(wn,{children:R.getRowModel().rows?.length?R.getRowModel().rows.map((h,G)=>{let he=G===R.getRowModel().rows.length-1,Ye=M?M(h):"";return y(pe,{"data-index":G,"data-state":h.getIsSelected()&&"selected",className:r(Co&&"hover:bg-muted/50",wo&&G%2===0&&"bg-muted/20",h.getIsSelected()&&"bg-muted",je==="single"&&"cursor-pointer",Ye),onClick:()=>{je==="single"&&Do(h)},children:h.getVisibleCells().map((ae,Ao)=>{let _t=ce&&(ae.column.getIsPinned()==="left"||ae.column.id==="serialNumber"||ae.column.id==="select"&&J),Et=ce&&ae.column.getIsPinned()==="right",Go=ae.column.id==="serialNumber";return y(ge,{className:r(pt?"py-2":"py-4",Ft&&Ao<h.getVisibleCells().length-1&&ae.column.id!==Io&&"border-r",(!he||!No)&&"border-b",_t&&"sticky left-0 z-20 bg-sidebar/95",Go&&"sticky left-0 z-20 bg-card/95",Et&&"sticky right-0 z-20 bg-sidebar/95","p-1"),style:{width:me(ae.column.getSize(),_t||Et),minWidth:me(ae.column.getSize(),_t||Et),..._e(ae.column,ce)},children:Gr(ae.column.columnDef.cell,ae.getContext())},ae.id)})},h.id)}):y(pe,{children:y(ge,{colSpan:Qe,className:"border-0 h-32 text-center",children:Ve("div",{className:"flex flex-col items-center gap-3",children:[y("div",{className:"text-muted-foreground text-6xl",children:"\u{1F4CB}"}),y("p",{className:"font-medium text-muted-foreground",children:m})]})})})}),y(bo,{table:R,columnAggregations:At,aggregations:w,enableColumnPinning:ce,enableRowSelection:J,showSerialNumbers:Oe,bordered:Ft,compact:pt})]})}),p&&y("div",{className:"bottom-0 z-10 sticky bg-sidebar w-full",style:{width:"100%",minWidth:"fit-content"},children:y(Vt,{children:y(gt,{children:y(pe,{className:"bg-sidebar",children:y(ge,{colSpan:Qe,className:"p-2",children:p})})})})})]})})}),y(Yt,{table:R,config:n}),H&&H(R)]})})}import{Separator as Or}from"radix-ui";import{jsx as jr}from"react/jsx-runtime";function xo({className:e,orientation:t="horizontal",decorative:o=!0,...n}){return jr(Or.Root,{"data-slot":"separator-root",decorative:o,orientation:t,className:r("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",e),...n})}import{Loader as Ur,X as $r}from"lucide-react";import{AnimatePresence as Kr,motion as Wr}from"framer-motion";import*as Re from"react";import*as vo from"react-dom";import{jsx as Z,jsxs as lt}from"react/jsx-runtime";function qr({table:e,visible:t,container:o,children:n,className:c,...d}){let[p,a]=Re.useState(!1);Re.useLayoutEffect(()=>{a(!0)},[]),Re.useEffect(()=>{function g(m){m.key==="Escape"&&e&&e.toggleAllRowsSelected(!1)}return window.addEventListener("keydown",g),()=>window.removeEventListener("keydown",g)},[e]);let i=o??(p?globalThis.document?.body:null);if(!i||!e)return null;let f=t??e.getFilteredSelectedRowModel().rows.length>0;return vo.createPortal(Z(Kr,{children:f&&Z(Wr.div,{role:"toolbar","aria-orientation":"horizontal",initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:20},transition:{duration:.3,ease:"easeInOut"},className:r("fixed inset-x-0 bottom-6 z-50 mx-auto flex w-fit flex-wrap items-center justify-center gap-2 rounded-xl border bg-primary/10 backdrop-blur-sm p-3 text-foreground ring-5 ring-primary/5",c),...d,children:Z(Ze,{children:n})})}),i)}function Xr({size:e="sm",tooltip:t,isPending:o,disabled:n,className:c,children:d,...p}){let a=Z(k,{variant:"secondary",size:e,className:r("gap-1.5 rounded-lg border border-secondary bg-secondary/50 hover:bg-secondary/70 transition-all duration-200",e==="icon"?"size-8":"h-8 px-3",c),disabled:n||o,...p,children:o?Z(Ur,{className:"animate-spin"}):d});return t?lt(Bt,{children:[Z(Ot,{asChild:!0,children:a}),Z(jt,{sideOffset:8,className:"rounded-lg border font-semibold text-foreground bg-secondary [&>span]:hidden",children:Z("p",{children:t})})]}):a}function Jr({table:e}){let t=Re.useCallback(()=>{e&&e.toggleAllRowsSelected(!1)},[e]);return e?lt("div",{className:"flex h-8 items-center rounded-lg border bg-muted/50 pr-1 pl-3",children:[lt("span",{className:"whitespace-nowrap text-sm font-medium",children:[e.getFilteredSelectedRowModel().rows.length," selected"]}),Z(xo,{orientation:"vertical",className:"mr-2 ml-3 data-[orientation=vertical]:h-4"}),lt(Bt,{children:[Z(Ot,{asChild:!0,children:Z(k,{variant:"ghost",size:"icon",className:"size-6 rounded-md",onClick:t,children:Z($r,{className:"size-3.5"})})}),lt(jt,{sideOffset:10,className:"flex items-center gap-2 rounded-lg border px-3 py-2 font-semibold text-foregroun bg-secondary [&>span]:hidden",children:[Z("p",{children:"Clear selection"}),Z("kbd",{className:"select-none rounded border bg-primary/50 px-2 py-1 font-mono font-normal text-[0.7rem] text-foreground shadow-sm",children:Z("abbr",{title:"Escape",className:"no-underline",children:"Esc"})})]})]})]}):null}import{useSearchParams as Qr}from"react-router";function Yr(e,t){let[o,n]=Qr();return[o.get(t)||void 0,p=>{let a=new URLSearchParams(window.location.search);a.set(t,p??""),n(a,{replace:!0})}]}export{Br as DataTable,qr as DataTableActionBar,Xr as DataTableActionBarAction,Jr as DataTableActionBarSelection,Yt as DataTablePagination,Qt as DataTableToolbar,Kt as getTableExportView,Sr as readPersistedExternal,Yr as useTableFilterParam};
3
+ //# sourceMappingURL=index.js.map