@wealthx/shadcn 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/.turbo/turbo-build.log +235 -154
  2. package/CHANGELOG.md +6 -0
  3. package/dist/{chunk-6OJF6XRN.mjs → chunk-24FUO7TD.mjs} +4 -8
  4. package/dist/{chunk-4AJ5HWHD.mjs → chunk-2I5S2AMY.mjs} +3 -3
  5. package/dist/chunk-2SF672SZ.mjs +161 -0
  6. package/dist/{chunk-GPRJQ24C.mjs → chunk-34NWQURD.mjs} +2 -2
  7. package/dist/{chunk-MQ72DIBH.mjs → chunk-3GF7OVTP.mjs} +14 -5
  8. package/dist/chunk-3WMX6KWS.mjs +245 -0
  9. package/dist/{chunk-PMKODV6M.mjs → chunk-462HMNO4.mjs} +6 -10
  10. package/dist/chunk-4CX4SBRO.mjs +153 -0
  11. package/dist/chunk-4MN6UQHG.mjs +443 -0
  12. package/dist/{chunk-GLW2UO6O.mjs → chunk-5QQVZTVZ.mjs} +82 -61
  13. package/dist/{chunk-BGP2N52Z.mjs → chunk-66MI7Q4B.mjs} +5 -5
  14. package/dist/chunk-6FCGKSZX.mjs +268 -0
  15. package/dist/{chunk-CGOKTPXU.mjs → chunk-6JQFUE5I.mjs} +20 -23
  16. package/dist/{chunk-Z3MK2KKZ.mjs → chunk-7DHU4VGG.mjs} +7 -3
  17. package/dist/{chunk-VZ2NR7L3.mjs → chunk-7PYJD5JI.mjs} +35 -27
  18. package/dist/{chunk-JU2RUWHF.mjs → chunk-7XJHLGUV.mjs} +1 -1
  19. package/dist/{chunk-BMFN37JH.mjs → chunk-7YAU5CY6.mjs} +1 -1
  20. package/dist/chunk-A56YQQHG.mjs +402 -0
  21. package/dist/chunk-AH52LG6N.mjs +315 -0
  22. package/dist/{chunk-SLWCCURD.mjs → chunk-CLIN5525.mjs} +8 -4
  23. package/dist/{chunk-3VQNJ235.mjs → chunk-CSDO6VBW.mjs} +7 -0
  24. package/dist/chunk-D4ILTPOG.mjs +293 -0
  25. package/dist/{chunk-HS7TFG7V.mjs → chunk-D6ID6M4V.mjs} +1 -1
  26. package/dist/chunk-DOH3EHX7.mjs +378 -0
  27. package/dist/{chunk-MJIEMGRD.mjs → chunk-EFRENWEJ.mjs} +9 -17
  28. package/dist/{chunk-YBXCIF5Q.mjs → chunk-ERGGHC2V.mjs} +36 -49
  29. package/dist/{chunk-OXQQNQZI.mjs → chunk-FEZKMUCF.mjs} +10 -1
  30. package/dist/{chunk-55CEW76V.mjs → chunk-FH6QVUVZ.mjs} +1 -1
  31. package/dist/chunk-FMAXJ2SI.mjs +71 -0
  32. package/dist/chunk-FZIXGLMV.mjs +173 -0
  33. package/dist/{chunk-DS2AMHN2.mjs → chunk-GYMYRIZP.mjs} +2 -2
  34. package/dist/{chunk-KQDD5MU3.mjs → chunk-H45TKD34.mjs} +5 -5
  35. package/dist/{chunk-BBJBJSXQ.mjs → chunk-J5UICVJS.mjs} +1 -1
  36. package/dist/{chunk-RL772EH7.mjs → chunk-JHJHG4GO.mjs} +4 -12
  37. package/dist/{chunk-RN67642N.mjs → chunk-KMCGSZTX.mjs} +47 -41
  38. package/dist/{chunk-FHNT55I5.mjs → chunk-KUDCQ4FI.mjs} +4 -4
  39. package/dist/chunk-LE6YFY6D.mjs +209 -0
  40. package/dist/{chunk-NLLKTU4B.mjs → chunk-LLVQKSU3.mjs} +21 -17
  41. package/dist/{chunk-KKHTJNMM.mjs → chunk-MARPPFOJ.mjs} +8 -4
  42. package/dist/{chunk-6AFMNC42.mjs → chunk-N2PT566P.mjs} +15 -11
  43. package/dist/chunk-NLCKVHWB.mjs +161 -0
  44. package/dist/{chunk-YN5SYTOO.mjs → chunk-NQPOYKAQ.mjs} +9 -5
  45. package/dist/{chunk-ZZV5JVNW.mjs → chunk-NSLMILBT.mjs} +3 -7
  46. package/dist/chunk-NXA3CZ7A.mjs +248 -0
  47. package/dist/chunk-OGOYQ7BG.mjs +150 -0
  48. package/dist/{chunk-3NQGYJEZ.mjs → chunk-P6AM5V7O.mjs} +10 -18
  49. package/dist/{chunk-CZ3BW5GL.mjs → chunk-P76HMUI6.mjs} +5 -11
  50. package/dist/chunk-PCPLO5HT.mjs +671 -0
  51. package/dist/chunk-PG6K5XEC.mjs +475 -0
  52. package/dist/{chunk-5JGQAAQV.mjs → chunk-PJHPSRYD.mjs} +84 -62
  53. package/dist/{chunk-DDPA2XXS.mjs → chunk-PMB3A7V3.mjs} +2 -2
  54. package/dist/chunk-PR6V5XKM.mjs +209 -0
  55. package/dist/{chunk-46OFHMQA.mjs → chunk-Q76O3RIQ.mjs} +10 -6
  56. package/dist/chunk-QVKWW6KE.mjs +272 -0
  57. package/dist/chunk-RGU7HOEC.mjs +140 -0
  58. package/dist/{chunk-JF4PHPD5.mjs → chunk-RGVKLTLH.mjs} +4 -4
  59. package/dist/{chunk-VG6UF6UT.mjs → chunk-RP3SQYA3.mjs} +2 -2
  60. package/dist/chunk-RRBS6D63.mjs +163 -0
  61. package/dist/{chunk-UEL4RD5P.mjs → chunk-SMQ3DG25.mjs} +80 -67
  62. package/dist/chunk-SPJ5KXW7.mjs +199 -0
  63. package/dist/chunk-SYOD63OZ.mjs +225 -0
  64. package/dist/chunk-UFYSFDER.mjs +42 -0
  65. package/dist/chunk-VACKZOMY.mjs +190 -0
  66. package/dist/chunk-VLQZANBF.mjs +42 -0
  67. package/dist/chunk-WA6O6EUR.mjs +1885 -0
  68. package/dist/{chunk-E3K6O4FZ.mjs → chunk-WAZD7NFU.mjs} +5 -2
  69. package/dist/chunk-WG6JGJXB.mjs +165 -0
  70. package/dist/{chunk-I64K754C.mjs → chunk-WNGWBVLV.mjs} +2 -2
  71. package/dist/{chunk-3U7SD3MS.mjs → chunk-WOEHFRGB.mjs} +3 -3
  72. package/dist/{chunk-DKZRJOMF.mjs → chunk-XIRTEFKH.mjs} +12 -12
  73. package/dist/chunk-Y6DWJSKZ.mjs +79 -0
  74. package/dist/chunk-YKPROFLB.mjs +161 -0
  75. package/dist/{chunk-CJ46PDXE.mjs → chunk-ZRO5JO3H.mjs} +106 -66
  76. package/dist/{chunk-VYMHBV6D.mjs → chunk-ZU4NV6RG.mjs} +5 -3
  77. package/dist/components/ui/accordion.js +40 -4
  78. package/dist/components/ui/accordion.mjs +2 -2
  79. package/dist/components/ui/add-column-modal.js +789 -0
  80. package/dist/components/ui/add-column-modal.mjs +17 -0
  81. package/dist/components/ui/add-lead-modal.js +647 -0
  82. package/dist/components/ui/add-lead-modal.mjs +16 -0
  83. package/dist/components/ui/ai-assistant-drawer.js +686 -0
  84. package/dist/components/ui/ai-assistant-drawer.mjs +16 -0
  85. package/dist/components/ui/alert-dialog.js +37 -5
  86. package/dist/components/ui/alert-dialog.mjs +4 -4
  87. package/dist/components/ui/alert.js +37 -11
  88. package/dist/components/ui/alert.mjs +2 -2
  89. package/dist/components/ui/avatar.js +36 -8
  90. package/dist/components/ui/avatar.mjs +2 -2
  91. package/dist/components/ui/backoffice-alert-history-chart.js +624 -0
  92. package/dist/components/ui/backoffice-alert-history-chart.mjs +16 -0
  93. package/dist/components/ui/backoffice-contact-history-chart.js +687 -0
  94. package/dist/components/ui/backoffice-contact-history-chart.mjs +16 -0
  95. package/dist/components/ui/badge.js +37 -2
  96. package/dist/components/ui/badge.mjs +2 -2
  97. package/dist/components/ui/borrowing-capacity-line-chart.js +639 -0
  98. package/dist/components/ui/borrowing-capacity-line-chart.mjs +16 -0
  99. package/dist/components/ui/button.js +35 -3
  100. package/dist/components/ui/button.mjs +2 -2
  101. package/dist/components/ui/calendar.js +43 -19
  102. package/dist/components/ui/calendar.mjs +3 -3
  103. package/dist/components/ui/card.js +40 -4
  104. package/dist/components/ui/card.mjs +2 -2
  105. package/dist/components/ui/cash-balance-line-chart.js +627 -0
  106. package/dist/components/ui/cash-balance-line-chart.mjs +16 -0
  107. package/dist/components/ui/cashflow-bar-chart.js +123 -69
  108. package/dist/components/ui/cashflow-bar-chart.mjs +8 -8
  109. package/dist/components/ui/checkbox.js +36 -5
  110. package/dist/components/ui/checkbox.mjs +2 -3
  111. package/dist/components/ui/chip.js +37 -2
  112. package/dist/components/ui/chip.mjs +3 -3
  113. package/dist/components/ui/combobox.js +68 -49
  114. package/dist/components/ui/combobox.mjs +2 -2
  115. package/dist/components/ui/data-table.js +160 -88
  116. package/dist/components/ui/data-table.mjs +10 -11
  117. package/dist/components/ui/date-picker.js +44 -20
  118. package/dist/components/ui/date-picker.mjs +6 -7
  119. package/dist/components/ui/dialog.js +44 -12
  120. package/dist/components/ui/dialog.mjs +4 -4
  121. package/dist/components/ui/drawer.js +46 -10
  122. package/dist/components/ui/drawer.mjs +3 -3
  123. package/dist/components/ui/dropdown-menu.js +40 -16
  124. package/dist/components/ui/dropdown-menu.mjs +3 -3
  125. package/dist/components/ui/empty.js +41 -5
  126. package/dist/components/ui/empty.mjs +2 -2
  127. package/dist/components/ui/expense-bar-chart.js +165 -66
  128. package/dist/components/ui/expense-bar-chart.mjs +8 -8
  129. package/dist/components/ui/field.js +53 -21
  130. package/dist/components/ui/field.mjs +4 -4
  131. package/dist/components/ui/financial-cards.js +1002 -0
  132. package/dist/components/ui/financial-cards.mjs +24 -0
  133. package/dist/components/ui/financial-drawers.js +637 -0
  134. package/dist/components/ui/financial-drawers.mjs +17 -0
  135. package/dist/components/ui/financial-primitives.js +218 -0
  136. package/dist/components/ui/financial-primitives.mjs +22 -0
  137. package/dist/components/ui/financial-sections.js +1422 -0
  138. package/dist/components/ui/financial-sections.mjs +30 -0
  139. package/dist/components/ui/form-primitives.js +682 -0
  140. package/dist/components/ui/form-primitives.mjs +19 -0
  141. package/dist/components/ui/income-bar-chart.js +163 -65
  142. package/dist/components/ui/income-bar-chart.mjs +8 -8
  143. package/dist/components/ui/input-group.js +43 -7
  144. package/dist/components/ui/input-group.mjs +5 -5
  145. package/dist/components/ui/input-otp.js +39 -3
  146. package/dist/components/ui/input-otp.mjs +2 -2
  147. package/dist/components/ui/input.js +34 -2
  148. package/dist/components/ui/input.mjs +2 -2
  149. package/dist/components/ui/kanban-column.js +1143 -0
  150. package/dist/components/ui/kanban-column.mjs +20 -0
  151. package/dist/components/ui/label.js +35 -7
  152. package/dist/components/ui/label.mjs +2 -2
  153. package/dist/components/ui/opportunity-card.js +960 -0
  154. package/dist/components/ui/opportunity-card.mjs +20 -0
  155. package/dist/components/ui/opportunity-edit-modals.js +3360 -0
  156. package/dist/components/ui/opportunity-edit-modals.mjs +37 -0
  157. package/dist/components/ui/opportunity-summary-tab.js +4365 -0
  158. package/dist/components/ui/opportunity-summary-tab.mjs +34 -0
  159. package/dist/components/ui/pagination.js +35 -3
  160. package/dist/components/ui/pagination.mjs +3 -3
  161. package/dist/components/ui/pipeline-alerts.js +103 -0
  162. package/dist/components/ui/pipeline-alerts.mjs +8 -0
  163. package/dist/components/ui/pipeline-board.js +1408 -0
  164. package/dist/components/ui/pipeline-board.mjs +24 -0
  165. package/dist/components/ui/pipeline-chart.js +216 -0
  166. package/dist/components/ui/pipeline-chart.mjs +10 -0
  167. package/dist/components/ui/pipeline-dialogs.js +1183 -0
  168. package/dist/components/ui/pipeline-dialogs.mjs +23 -0
  169. package/dist/components/ui/pipeline-primitives.js +300 -0
  170. package/dist/components/ui/pipeline-primitives.mjs +11 -0
  171. package/dist/components/ui/popover.js +45 -4
  172. package/dist/components/ui/popover.mjs +3 -3
  173. package/dist/components/ui/progress.js +33 -1
  174. package/dist/components/ui/progress.mjs +2 -2
  175. package/dist/components/ui/property-cashflow-doughnut-chart.js +523 -0
  176. package/dist/components/ui/property-cashflow-doughnut-chart.mjs +16 -0
  177. package/dist/components/ui/property-debt-equity-doughnut-chart.js +521 -0
  178. package/dist/components/ui/property-debt-equity-doughnut-chart.mjs +16 -0
  179. package/dist/components/ui/property-mobile-estimate-line-chart.js +682 -0
  180. package/dist/components/ui/property-mobile-estimate-line-chart.mjs +16 -0
  181. package/dist/components/ui/radio-group.js +33 -1
  182. package/dist/components/ui/radio-group.mjs +2 -2
  183. package/dist/components/ui/select.js +66 -26
  184. package/dist/components/ui/select.mjs +3 -3
  185. package/dist/components/ui/separator.js +33 -1
  186. package/dist/components/ui/separator.mjs +2 -2
  187. package/dist/components/ui/sheet.js +37 -9
  188. package/dist/components/ui/sheet.mjs +3 -3
  189. package/dist/components/ui/skeleton.js +33 -1
  190. package/dist/components/ui/skeleton.mjs +2 -2
  191. package/dist/components/ui/slider.js +86 -102
  192. package/dist/components/ui/slider.mjs +2 -2
  193. package/dist/components/ui/spinner.js +33 -1
  194. package/dist/components/ui/spinner.mjs +2 -2
  195. package/dist/components/ui/stage-timeline.js +579 -0
  196. package/dist/components/ui/stage-timeline.mjs +15 -0
  197. package/dist/components/ui/switch.js +37 -4
  198. package/dist/components/ui/switch.mjs +2 -3
  199. package/dist/components/ui/table.js +37 -5
  200. package/dist/components/ui/table.mjs +2 -2
  201. package/dist/components/ui/tabs.js +36 -12
  202. package/dist/components/ui/tabs.mjs +2 -2
  203. package/dist/components/ui/textarea.js +34 -2
  204. package/dist/components/ui/textarea.mjs +2 -2
  205. package/dist/components/ui/toggle-group.js +35 -4
  206. package/dist/components/ui/toggle-group.mjs +3 -4
  207. package/dist/components/ui/toggle.js +35 -4
  208. package/dist/components/ui/toggle.mjs +2 -3
  209. package/dist/components/ui/tooltip.js +51 -22
  210. package/dist/components/ui/tooltip.mjs +3 -3
  211. package/dist/components/ui/transactions-expense-categories-doughnut-chart.js +528 -0
  212. package/dist/components/ui/transactions-expense-categories-doughnut-chart.mjs +16 -0
  213. package/dist/components/ui/transactions-income-expense-bar-chart.js +76 -38
  214. package/dist/components/ui/transactions-income-expense-bar-chart.mjs +8 -8
  215. package/dist/components/ui/transactions-liabilities-breakdown-doughnut-chart.js +528 -0
  216. package/dist/components/ui/transactions-liabilities-breakdown-doughnut-chart.mjs +16 -0
  217. package/dist/index.js +11616 -3831
  218. package/dist/index.mjs +333 -161
  219. package/dist/lib/theme-provider.js +10 -1
  220. package/dist/lib/theme-provider.mjs +1 -1
  221. package/dist/lib/typography.js +8 -0
  222. package/dist/lib/typography.mjs +3 -1
  223. package/dist/lib/utils.js +33 -1
  224. package/dist/lib/utils.mjs +1 -1
  225. package/dist/styles.css +1 -1
  226. package/package.json +140 -5
  227. package/src/components/index.tsx +296 -42
  228. package/src/components/ui/accordion.tsx +6 -3
  229. package/src/components/ui/add-column-modal.tsx +339 -0
  230. package/src/components/ui/add-lead-modal.tsx +290 -0
  231. package/src/components/ui/ai-assistant-drawer.tsx +408 -0
  232. package/src/components/ui/alert-dialog.tsx +80 -54
  233. package/src/components/ui/alert.tsx +28 -28
  234. package/src/components/ui/avatar.tsx +30 -29
  235. package/src/components/ui/backoffice-alert-history-chart.tsx +260 -0
  236. package/src/components/ui/backoffice-contact-history-chart.tsx +325 -0
  237. package/src/components/ui/badge.tsx +17 -15
  238. package/src/components/ui/borrowing-capacity-line-chart.tsx +357 -0
  239. package/src/components/ui/button.tsx +30 -27
  240. package/src/components/ui/calendar.tsx +53 -67
  241. package/src/components/ui/card.tsx +27 -24
  242. package/src/components/ui/cash-balance-line-chart.tsx +302 -0
  243. package/src/components/ui/cashflow-bar-chart.tsx +104 -77
  244. package/src/components/ui/chart-shared.tsx +176 -15
  245. package/src/components/ui/checkbox.tsx +30 -26
  246. package/src/components/ui/combobox.tsx +78 -72
  247. package/src/components/ui/data-table.tsx +160 -99
  248. package/src/components/ui/date-picker.tsx +0 -2
  249. package/src/components/ui/dialog.tsx +70 -60
  250. package/src/components/ui/drawer.tsx +57 -48
  251. package/src/components/ui/dropdown-menu.tsx +90 -82
  252. package/src/components/ui/empty.tsx +31 -27
  253. package/src/components/ui/expense-bar-chart.tsx +83 -65
  254. package/src/components/ui/field.tsx +70 -62
  255. package/src/components/ui/financial-cards.tsx +830 -0
  256. package/src/components/ui/financial-drawers.tsx +339 -0
  257. package/src/components/ui/financial-primitives.tsx +331 -0
  258. package/src/components/ui/financial-sections.tsx +672 -0
  259. package/src/components/ui/form-primitives.tsx +536 -0
  260. package/src/components/ui/income-bar-chart.tsx +79 -60
  261. package/src/components/ui/input-group.tsx +41 -34
  262. package/src/components/ui/input-otp.tsx +29 -24
  263. package/src/components/ui/input.tsx +8 -8
  264. package/src/components/ui/kanban-column.tsx +333 -0
  265. package/src/components/ui/label.tsx +9 -12
  266. package/src/components/ui/opportunity-card.tsx +616 -0
  267. package/src/components/ui/opportunity-edit-modals.tsx +2528 -0
  268. package/src/components/ui/opportunity-summary-tab.tsx +579 -0
  269. package/src/components/ui/pipeline-alerts.tsx +74 -0
  270. package/src/components/ui/pipeline-board.tsx +268 -0
  271. package/src/components/ui/pipeline-chart.tsx +173 -0
  272. package/src/components/ui/pipeline-dialogs.tsx +303 -0
  273. package/src/components/ui/pipeline-primitives.tsx +108 -0
  274. package/src/components/ui/popover.tsx +41 -36
  275. package/src/components/ui/property-cashflow-doughnut-chart.tsx +188 -0
  276. package/src/components/ui/property-debt-equity-doughnut-chart.tsx +185 -0
  277. package/src/components/ui/property-mobile-estimate-line-chart.tsx +393 -0
  278. package/src/components/ui/select.tsx +65 -52
  279. package/src/components/ui/sheet.tsx +55 -52
  280. package/src/components/ui/slider.tsx +54 -77
  281. package/src/components/ui/stage-timeline.tsx +205 -0
  282. package/src/components/ui/switch.tsx +42 -29
  283. package/src/components/ui/table.tsx +28 -28
  284. package/src/components/ui/tabs.tsx +22 -28
  285. package/src/components/ui/textarea.tsx +8 -8
  286. package/src/components/ui/toggle-group.tsx +0 -2
  287. package/src/components/ui/toggle.tsx +13 -15
  288. package/src/components/ui/tooltip.tsx +30 -28
  289. package/src/components/ui/transactions-expense-categories-doughnut-chart.tsx +191 -0
  290. package/src/components/ui/transactions-income-expense-bar-chart.tsx +45 -38
  291. package/src/components/ui/transactions-liabilities-breakdown-doughnut-chart.tsx +191 -0
  292. package/src/lib/theme-provider.tsx +10 -0
  293. package/src/lib/typography.ts +9 -0
  294. package/src/lib/utils.ts +41 -3
  295. package/src/styles/globals.css +371 -124
  296. package/src/styles/styles-css.ts +1 -1
  297. package/tsup.config.ts +27 -0
  298. package/dist/chunk-3EQP72AW.mjs +0 -58
  299. package/dist/chunk-K74JRTJR.mjs +0 -105
  300. package/dist/chunk-V7CNWJT3.mjs +0 -10
@@ -10,8 +10,8 @@ import {
10
10
  ComboboxSeparator,
11
11
  ComboboxTrigger,
12
12
  ComboboxValue
13
- } from "../../chunk-YBXCIF5Q.mjs";
14
- import "../../chunk-V7CNWJT3.mjs";
13
+ } from "../../chunk-ERGGHC2V.mjs";
14
+ import "../../chunk-VLQZANBF.mjs";
15
15
  import "../../chunk-FWCSY2DS.mjs";
16
16
  export {
17
17
  Combobox,
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- "use client";
3
2
  var __create = Object.create;
4
3
  var __defProp = Object.defineProperty;
5
4
  var __defProps = Object.defineProperties;
@@ -75,8 +74,40 @@ var import_lucide_react5 = require("lucide-react");
75
74
  // src/lib/utils.ts
76
75
  var import_clsx = require("clsx");
77
76
  var import_tailwind_merge = require("tailwind-merge");
77
+ var twMerge = (0, import_tailwind_merge.extendTailwindMerge)({
78
+ extend: {
79
+ classGroups: {
80
+ "font-size": [
81
+ {
82
+ text: [
83
+ "display-large",
84
+ "display-medium",
85
+ "display-small",
86
+ "h1",
87
+ "h2",
88
+ "h3",
89
+ "h4",
90
+ "h5",
91
+ "h6",
92
+ "body-large",
93
+ "body-medium",
94
+ "body-small",
95
+ "label-large",
96
+ "label-medium",
97
+ "label-small",
98
+ "button",
99
+ "button-xs",
100
+ "caption",
101
+ "overline",
102
+ "code"
103
+ ]
104
+ }
105
+ ]
106
+ }
107
+ }
108
+ });
78
109
  function cn(...inputs) {
79
- return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
110
+ return twMerge((0, import_clsx.clsx)(inputs));
80
111
  }
81
112
 
82
113
  // src/components/ui/table.tsx
@@ -91,7 +122,7 @@ function Table(_a) {
91
122
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
92
123
  "table",
93
124
  __spreadValues({
94
- className: cn("w-full caption-bottom text-sm", className),
125
+ className: cn("w-full caption-bottom text-body-small", className),
95
126
  "data-slot": "table"
96
127
  }, props)
97
128
  )
@@ -137,7 +168,7 @@ function TableHead(_a) {
137
168
  "th",
138
169
  __spreadValues({
139
170
  className: cn(
140
- "h-10 px-4 text-left align-middle font-medium whitespace-nowrap text-muted-foreground",
171
+ "h-10 px-4 text-left align-middle text-label-medium whitespace-nowrap text-muted-foreground",
141
172
  "[&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",
142
173
  className
143
174
  ),
@@ -168,7 +199,7 @@ function Input(_a) {
168
199
  "input",
169
200
  __spreadValues({
170
201
  className: cn(
171
- "h-9 w-full min-w-0 border border-input bg-transparent px-3 py-1 text-base font-sans shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30",
202
+ "h-9 w-full min-w-0 border border-input bg-transparent px-3 py-1 text-body-medium font-sans shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-label-medium file:text-foreground placeholder:font-normal placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 dark:bg-input/30",
172
203
  "focus-visible:border-primary focus-visible:ring-[3px] focus-visible:ring-primary/20",
173
204
  "aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",
174
205
  className
@@ -234,7 +265,7 @@ Slot.displayName = "Slot";
234
265
  // src/components/ui/button.tsx
235
266
  var import_jsx_runtime3 = require("react/jsx-runtime");
236
267
  var buttonVariants = (0, import_class_variance_authority.cva)(
237
- "inline-flex shrink-0 cursor-pointer items-center justify-center gap-2 font-sans text-sm font-medium whitespace-nowrap transition-all active:scale-[0.98] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
268
+ "inline-flex shrink-0 cursor-pointer items-center justify-center gap-2 font-sans text-button whitespace-nowrap transition-all active:scale-[0.98] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
238
269
  {
239
270
  variants: {
240
271
  variant: {
@@ -249,7 +280,7 @@ var buttonVariants = (0, import_class_variance_authority.cva)(
249
280
  },
250
281
  size: {
251
282
  default: "h-9 px-4 py-2 has-[>svg]:px-3",
252
- xs: "h-6 gap-1 px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",
283
+ xs: "h-6 gap-1 px-2 text-button-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",
253
284
  sm: "h-8 gap-1.5 px-3 has-[>svg]:px-2.5",
254
285
  lg: "h-10 px-6 has-[>svg]:px-4",
255
286
  icon: "size-9",
@@ -316,7 +347,7 @@ function Checkbox(_a) {
316
347
  import_checkbox.Checkbox.Root,
317
348
  __spreadProps(__spreadValues({
318
349
  className: cn(
319
- "peer group inline-flex size-4 shrink-0 rounded-[4px] border border-input shadow-xs transition-all outline-none",
350
+ "peer group inline-flex size-4 shrink-0 border border-input shadow-xs transition-all outline-none",
320
351
  "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
321
352
  "disabled:cursor-not-allowed disabled:opacity-50",
322
353
  "aria-invalid:border-destructive aria-invalid:ring-destructive/20",
@@ -382,7 +413,7 @@ function SelectTrigger(_a) {
382
413
  import_select.Select.Trigger,
383
414
  __spreadProps(__spreadValues({
384
415
  className: cn(
385
- "flex w-fit items-center justify-between gap-2 border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-primary focus-visible:ring-[3px] focus-visible:ring-primary/20 data-popup-open:border-primary data-popup-open:ring-[3px] data-popup-open:ring-primary/20 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground 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 [&_svg:not([class*='text-'])]:text-muted-foreground",
416
+ "flex w-fit items-center justify-between gap-2 border border-input bg-transparent px-3 py-2 text-body-medium whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-primary focus-visible:ring-[3px] focus-visible:ring-primary/20 data-popup-open:border-primary data-popup-open:ring-[3px] data-popup-open:ring-primary/20 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-placeholder:font-normal data-placeholder:text-muted-foreground 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 [&_svg:not([class*='text-'])]:text-muted-foreground",
386
417
  className
387
418
  ),
388
419
  "data-size": size,
@@ -406,23 +437,32 @@ function SelectContent(_a) {
406
437
  "style"
407
438
  ]);
408
439
  const themeVars = useThemeVars();
409
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_select.Select.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_select.Select.Positioner, { align: "start", alignItemWithTrigger: false, sideOffset: 4, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
410
- import_select.Select.Popup,
411
- __spreadProps(__spreadValues({
412
- className: cn(
413
- "relative z-50 max-h-[var(--available-height)] min-w-[8rem] overflow-x-hidden overflow-y-auto border bg-popover p-1 text-popover-foreground shadow-md 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 data-ending-style:animate-out data-ending-style:fade-out-0 data-ending-style:zoom-out-95 data-ending-style:fill-mode-forwards data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95",
414
- className
415
- ),
416
- "data-slot": "select-content",
417
- style: __spreadValues(__spreadValues({}, themeVars), style)
418
- }, props), {
419
- children: [
420
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(SelectScrollUpButton, {}),
421
- children,
422
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(SelectScrollDownButton, {})
423
- ]
424
- })
425
- ) }) });
440
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_select.Select.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
441
+ import_select.Select.Positioner,
442
+ {
443
+ className: "z-[200]",
444
+ align: "start",
445
+ alignItemWithTrigger: false,
446
+ sideOffset: 4,
447
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
448
+ import_select.Select.Popup,
449
+ __spreadProps(__spreadValues({
450
+ className: cn(
451
+ "relative max-h-[var(--available-height)] min-w-[var(--anchor-width,8rem)] overflow-x-hidden overflow-y-auto border bg-popover p-1 text-popover-foreground shadow-md 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 data-ending-style:animate-out data-ending-style:fade-out-0 data-ending-style:zoom-out-95 data-ending-style:fill-mode-forwards data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95",
452
+ className
453
+ ),
454
+ "data-slot": "select-content",
455
+ style: __spreadValues(__spreadValues({}, themeVars), style)
456
+ }, props), {
457
+ children: [
458
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(SelectScrollUpButton, {}),
459
+ children,
460
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(SelectScrollDownButton, {})
461
+ ]
462
+ })
463
+ )
464
+ }
465
+ ) });
426
466
  }
427
467
  function SelectItem(_a) {
428
468
  var _b = _a, {
@@ -436,7 +476,7 @@ function SelectItem(_a) {
436
476
  import_select.Select.Item,
437
477
  __spreadProps(__spreadValues({
438
478
  className: cn(
439
- "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-highlighted:bg-primary/5 data-highlighted:text-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
479
+ "relative flex w-full cursor-default items-center gap-2 py-1.5 pr-8 pl-2 text-body-small outline-hidden select-none data-highlighted:bg-primary/5 data-highlighted:text-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
440
480
  className
441
481
  ),
442
482
  "data-slot": "select-item"
@@ -504,12 +544,7 @@ function DropdownMenu(_a) {
504
544
  }
505
545
  function DropdownMenuTrigger(_a) {
506
546
  var props = __objRest(_a, []);
507
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
508
- import_menu.Menu.Trigger,
509
- __spreadValues({
510
- "data-slot": "dropdown-menu-trigger"
511
- }, props)
512
- );
547
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_menu.Menu.Trigger, __spreadValues({ "data-slot": "dropdown-menu-trigger" }, props));
513
548
  }
514
549
  function DropdownMenuContent(_a) {
515
550
  var _b = _a, {
@@ -553,7 +588,7 @@ function DropdownMenuCheckboxItem(_a) {
553
588
  __spreadProps(__spreadValues({
554
589
  checked,
555
590
  className: cn(
556
- "relative flex cursor-default items-center gap-2 rounded-none py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 data-checked:bg-primary/10 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
591
+ "relative flex cursor-default items-center gap-2 rounded-none py-1.5 pr-2 pl-8 text-body-small outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 data-checked:bg-primary/10 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
557
592
  className
558
593
  ),
559
594
  "data-slot": "dropdown-menu-checkbox-item"
@@ -576,10 +611,7 @@ function DropdownMenuLabel(_a) {
576
611
  return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
577
612
  import_menu.Menu.GroupLabel,
578
613
  __spreadValues({
579
- className: cn(
580
- "px-2 py-1.5 text-sm font-medium data-inset:pl-8",
581
- className
582
- ),
614
+ className: cn("px-2 py-1.5 text-label-medium data-inset:pl-8", className),
583
615
  "data-inset": inset,
584
616
  "data-slot": "dropdown-menu-label"
585
617
  }, props)
@@ -635,7 +667,10 @@ function DataTableColumnHeader({
635
667
  return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
636
668
  Button,
637
669
  {
638
- className: cn("-ml-3 h-8 font-medium text-muted-foreground hover:text-foreground", className),
670
+ className: cn(
671
+ "-ml-3 h-8 text-muted-foreground hover:text-foreground",
672
+ className
673
+ ),
639
674
  onClick: () => {
640
675
  column.toggleSorting(sorted === "asc");
641
676
  },
@@ -683,48 +718,62 @@ function DataTableToolbar({
683
718
  enableColumnVisibility
684
719
  }) {
685
720
  var _a;
686
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "flex items-center justify-between gap-2 py-4", "data-slot": "data-table-toolbar", children: [
687
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "flex flex-1 items-center gap-2", children: searchKey ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
688
- Input,
689
- {
690
- className: "max-w-xs",
691
- onChange: (e) => {
692
- var _a2;
693
- return (_a2 = table.getColumn(searchKey)) == null ? void 0 : _a2.setFilterValue(e.target.value);
694
- },
695
- placeholder: searchPlaceholder != null ? searchPlaceholder : `Filter ${searchKey}...`,
696
- value: (_a = table.getColumn(searchKey)) == null ? void 0 : _a.getFilterValue()
697
- }
698
- ) : null }),
699
- enableColumnVisibility ? /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(DropdownMenu, { children: [
700
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
701
- DropdownMenuTrigger,
702
- {
703
- render: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Button, { className: "ml-auto h-8 gap-1.5", size: "sm", variant: "outline" }),
704
- children: [
705
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react5.SlidersHorizontal, { className: "size-3.5" }),
706
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "hidden sm:inline", children: "Columns" })
707
- ]
708
- }
709
- ),
710
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DropdownMenuContent, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(DropdownMenuGroup, { children: [
711
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DropdownMenuLabel, { children: "Toggle columns" }),
712
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DropdownMenuSeparator, {}),
713
- table.getAllColumns().filter((col) => col.getCanHide()).map((col) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
714
- DropdownMenuCheckboxItem,
721
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
722
+ "div",
723
+ {
724
+ className: "flex items-center justify-between gap-2 py-4",
725
+ "data-slot": "data-table-toolbar",
726
+ children: [
727
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "flex flex-1 items-center gap-2", children: searchKey ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
728
+ Input,
715
729
  {
716
- checked: col.getIsVisible(),
717
- className: "capitalize",
718
- onCheckedChange: (value) => {
719
- col.toggleVisibility(Boolean(value));
730
+ className: "max-w-xs",
731
+ onChange: (e) => {
732
+ var _a2;
733
+ return (_a2 = table.getColumn(searchKey)) == null ? void 0 : _a2.setFilterValue(e.target.value);
720
734
  },
721
- children: col.id
722
- },
723
- col.id
724
- ))
725
- ] }) })
726
- ] }) : null
727
- ] });
735
+ placeholder: searchPlaceholder != null ? searchPlaceholder : `Filter ${searchKey}...`,
736
+ value: (_a = table.getColumn(searchKey)) == null ? void 0 : _a.getFilterValue()
737
+ }
738
+ ) : null }),
739
+ enableColumnVisibility ? /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(DropdownMenu, { children: [
740
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
741
+ DropdownMenuTrigger,
742
+ {
743
+ render: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
744
+ Button,
745
+ {
746
+ className: "ml-auto h-8 gap-1.5",
747
+ size: "sm",
748
+ variant: "outline"
749
+ }
750
+ ),
751
+ children: [
752
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react5.SlidersHorizontal, { className: "size-3.5" }),
753
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "hidden sm:inline", children: "Columns" })
754
+ ]
755
+ }
756
+ ),
757
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DropdownMenuContent, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(DropdownMenuGroup, { children: [
758
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DropdownMenuLabel, { children: "Toggle columns" }),
759
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DropdownMenuSeparator, {}),
760
+ table.getAllColumns().filter((col) => col.getCanHide()).map((col) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
761
+ DropdownMenuCheckboxItem,
762
+ {
763
+ checked: col.getIsVisible(),
764
+ className: "capitalize",
765
+ onCheckedChange: (value) => {
766
+ col.toggleVisibility(Boolean(value));
767
+ },
768
+ children: col.id
769
+ },
770
+ col.id
771
+ ))
772
+ ] }) })
773
+ ] }) : null
774
+ ]
775
+ }
776
+ );
728
777
  }
729
778
  function DataTablePagination({
730
779
  table,
@@ -736,7 +785,7 @@ function DataTablePagination({
736
785
  className: "flex items-center justify-between gap-4 py-4",
737
786
  "data-slot": "data-table-pagination",
738
787
  children: [
739
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "text-sm text-muted-foreground", children: table.getFilteredSelectedRowModel().rows.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(import_jsx_runtime9.Fragment, { children: [
788
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "text-body-small text-muted-foreground", children: table.getFilteredSelectedRowModel().rows.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(import_jsx_runtime9.Fragment, { children: [
740
789
  table.getFilteredSelectedRowModel().rows.length,
741
790
  " of",
742
791
  " ",
@@ -745,7 +794,7 @@ function DataTablePagination({
745
794
  ] }) }),
746
795
  /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "flex items-center gap-6", children: [
747
796
  /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "flex items-center gap-2", children: [
748
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "text-sm text-muted-foreground whitespace-nowrap", children: "Rows per page" }),
797
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "text-body-small text-muted-foreground whitespace-nowrap", children: "Rows per page" }),
749
798
  /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
750
799
  Select,
751
800
  {
@@ -754,16 +803,22 @@ function DataTablePagination({
754
803
  },
755
804
  value: `${table.getState().pagination.pageSize}`,
756
805
  children: [
757
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectTrigger, { className: "w-[70px]", size: "sm", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectValue, { placeholder: `${table.getState().pagination.pageSize}` }) }),
806
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectTrigger, { className: "w-[70px]", size: "sm", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
807
+ SelectValue,
808
+ {
809
+ placeholder: `${table.getState().pagination.pageSize}`
810
+ }
811
+ ) }),
758
812
  /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectContent, { children: pageSizeOptions.map((pageSize) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectItem, { value: `${pageSize}`, children: pageSize }, pageSize)) })
759
813
  ]
760
814
  }
761
815
  )
762
816
  ] }),
763
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("p", { className: "text-sm text-muted-foreground whitespace-nowrap", children: [
817
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("p", { className: "text-body-small text-muted-foreground whitespace-nowrap", children: [
764
818
  "Page ",
765
819
  table.getState().pagination.pageIndex + 1,
766
- " of ",
820
+ " of",
821
+ " ",
767
822
  table.getPageCount()
768
823
  ] }),
769
824
  /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "flex items-center gap-1", children: [
@@ -829,7 +884,13 @@ function DataTableSkeleton({
829
884
  columnCount,
830
885
  rowCount = 5
831
886
  }) {
832
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children: Array.from({ length: rowCount }).map((_, rowIdx) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableRow, { children: Array.from({ length: columnCount }).map((_inner, colIdx) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableCell, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Skeleton, { className: "h-4 w-3/4" }) }, `skeleton-cell-${String(rowIdx)}-${String(colIdx)}`)) }, `skeleton-row-${String(rowIdx)}`)) });
887
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children: Array.from({ length: rowCount }).map((_, rowIdx) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableRow, { children: Array.from({ length: columnCount }).map((_inner, colIdx) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
888
+ TableCell,
889
+ {
890
+ children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Skeleton, { className: "h-4 w-3/4" })
891
+ },
892
+ `skeleton-cell-${String(rowIdx)}-${String(colIdx)}`
893
+ )) }, `skeleton-row-${String(rowIdx)}`)) });
833
894
  }
834
895
  function DataTable({
835
896
  columns: userColumns,
@@ -847,7 +908,9 @@ function DataTable({
847
908
  emptyText = "No results."
848
909
  }) {
849
910
  const [sorting, setSorting] = React3.useState([]);
850
- const [columnFilters, setColumnFilters] = React3.useState([]);
911
+ const [columnFilters, setColumnFilters] = React3.useState(
912
+ []
913
+ );
851
914
  const [columnVisibility, setColumnVisibility] = React3.useState({});
852
915
  const [rowSelection, setRowSelection] = React3.useState({});
853
916
  const resolvedColumns = React3.useMemo(() => {
@@ -879,7 +942,13 @@ function DataTable({
879
942
  });
880
943
  function renderTableBody() {
881
944
  if (loading) {
882
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DataTableSkeleton, { columnCount: resolvedColumns.length, rowCount: skeletonRows });
945
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
946
+ DataTableSkeleton,
947
+ {
948
+ columnCount: resolvedColumns.length,
949
+ rowCount: skeletonRows
950
+ }
951
+ );
883
952
  }
884
953
  if (table.getRowModel().rows.length) {
885
954
  return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children: table.getRowModel().rows.map((row) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
@@ -911,7 +980,10 @@ function DataTable({
911
980
  }
912
981
  ),
913
982
  /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "border border-border", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Table, { children: [
914
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableRow, { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableHead, { children: header.isPlaceholder ? null : (0, import_react_table.flexRender)(header.column.columnDef.header, header.getContext()) }, header.id)) }, headerGroup.id)) }),
983
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableRow, { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableHead, { children: header.isPlaceholder ? null : (0, import_react_table.flexRender)(
984
+ header.column.columnDef.header,
985
+ header.getContext()
986
+ ) }, header.id)) }, headerGroup.id)) }),
915
987
  /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TableBody, { children: renderTableBody() })
916
988
  ] }) }),
917
989
  /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DataTablePagination, { pageSizeOptions, table })
@@ -1,4 +1,3 @@
1
- "use client";
2
1
  import {
3
2
  DataTable,
4
3
  DataTableColumnHeader,
@@ -6,18 +5,18 @@ import {
6
5
  DataTableSkeleton,
7
6
  DataTableToolbar,
8
7
  getSelectionColumn
9
- } from "../../chunk-CJ46PDXE.mjs";
10
- import "../../chunk-BGP2N52Z.mjs";
11
- import "../../chunk-VZ2NR7L3.mjs";
12
- import "../../chunk-DS2AMHN2.mjs";
13
- import "../../chunk-MJIEMGRD.mjs";
14
- import "../../chunk-HS7TFG7V.mjs";
15
- import "../../chunk-JF4PHPD5.mjs";
16
- import "../../chunk-4AJ5HWHD.mjs";
8
+ } from "../../chunk-ZRO5JO3H.mjs";
9
+ import "../../chunk-66MI7Q4B.mjs";
10
+ import "../../chunk-EFRENWEJ.mjs";
11
+ import "../../chunk-D6ID6M4V.mjs";
12
+ import "../../chunk-7PYJD5JI.mjs";
13
+ import "../../chunk-RGVKLTLH.mjs";
14
+ import "../../chunk-GYMYRIZP.mjs";
15
+ import "../../chunk-2I5S2AMY.mjs";
17
16
  import "../../chunk-DBHJ5KC3.mjs";
18
- import "../../chunk-OXQQNQZI.mjs";
17
+ import "../../chunk-FEZKMUCF.mjs";
19
18
  import "../../chunk-QOJ2DQD6.mjs";
20
- import "../../chunk-V7CNWJT3.mjs";
19
+ import "../../chunk-VLQZANBF.mjs";
21
20
  import "../../chunk-FWCSY2DS.mjs";
22
21
  export {
23
22
  DataTable,
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- "use client";
3
2
  var __create = Object.create;
4
3
  var __defProp = Object.defineProperty;
5
4
  var __defProps = Object.defineProperties;
@@ -70,8 +69,40 @@ var import_lucide_react3 = require("lucide-react");
70
69
  // src/lib/utils.ts
71
70
  var import_clsx = require("clsx");
72
71
  var import_tailwind_merge = require("tailwind-merge");
72
+ var twMerge = (0, import_tailwind_merge.extendTailwindMerge)({
73
+ extend: {
74
+ classGroups: {
75
+ "font-size": [
76
+ {
77
+ text: [
78
+ "display-large",
79
+ "display-medium",
80
+ "display-small",
81
+ "h1",
82
+ "h2",
83
+ "h3",
84
+ "h4",
85
+ "h5",
86
+ "h6",
87
+ "body-large",
88
+ "body-medium",
89
+ "body-small",
90
+ "label-large",
91
+ "label-medium",
92
+ "label-small",
93
+ "button",
94
+ "button-xs",
95
+ "caption",
96
+ "overline",
97
+ "code"
98
+ ]
99
+ }
100
+ ]
101
+ }
102
+ }
103
+ });
73
104
  function cn(...inputs) {
74
- return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
105
+ return twMerge((0, import_clsx.clsx)(inputs));
75
106
  }
76
107
 
77
108
  // src/components/ui/button.tsx
@@ -129,7 +160,7 @@ Slot.displayName = "Slot";
129
160
  // src/components/ui/button.tsx
130
161
  var import_jsx_runtime = require("react/jsx-runtime");
131
162
  var buttonVariants = (0, import_class_variance_authority.cva)(
132
- "inline-flex shrink-0 cursor-pointer items-center justify-center gap-2 font-sans text-sm font-medium whitespace-nowrap transition-all active:scale-[0.98] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
163
+ "inline-flex shrink-0 cursor-pointer items-center justify-center gap-2 font-sans text-button whitespace-nowrap transition-all active:scale-[0.98] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
133
164
  {
134
165
  variants: {
135
166
  variant: {
@@ -144,7 +175,7 @@ var buttonVariants = (0, import_class_variance_authority.cva)(
144
175
  },
145
176
  size: {
146
177
  default: "h-9 px-4 py-2 has-[>svg]:px-3",
147
- xs: "h-6 gap-1 px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",
178
+ xs: "h-6 gap-1 px-2 text-button-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",
148
179
  sm: "h-8 gap-1.5 px-3 has-[>svg]:px-2.5",
149
180
  lg: "h-10 px-6 has-[>svg]:px-4",
150
181
  icon: "size-9",
@@ -234,12 +265,7 @@ function CalendarChevron(_a) {
234
265
  return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react2.ChevronLeftIcon, __spreadValues({ className: cn("size-4", className) }, props));
235
266
  }
236
267
  if (orientation === "right") {
237
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
238
- import_lucide_react2.ChevronRightIcon,
239
- __spreadValues({
240
- className: cn("size-4", className)
241
- }, props)
242
- );
268
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react2.ChevronRightIcon, __spreadValues({ className: cn("size-4", className) }, props));
243
269
  }
244
270
  return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react2.ChevronDownIcon, __spreadValues({ className: cn("size-4", className) }, props));
245
271
  }
@@ -306,7 +332,7 @@ function Calendar(_a) {
306
332
  defaultClassNames.month_caption
307
333
  ),
308
334
  dropdowns: cn(
309
- "flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium",
335
+ "flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-label-small",
310
336
  defaultClassNames.dropdowns
311
337
  ),
312
338
  dropdown_root: cn(
@@ -318,14 +344,14 @@ function Calendar(_a) {
318
344
  defaultClassNames.dropdown
319
345
  ),
320
346
  caption_label: cn(
321
- "font-medium select-none",
322
- captionLayout === "label" ? "text-sm" : "flex h-8 items-center gap-1 pr-1 pl-2 text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground",
347
+ "select-none",
348
+ captionLayout === "label" ? "text-label-small" : "flex h-8 items-center gap-1 pr-1 pl-2 text-label-small [&>svg]:size-3.5 [&>svg]:text-muted-foreground",
323
349
  defaultClassNames.caption_label
324
350
  ),
325
351
  table: "w-full border-collapse",
326
352
  weekdays: cn("flex", defaultClassNames.weekdays),
327
353
  weekday: cn(
328
- "flex-1 text-[0.8rem] font-normal text-muted-foreground select-none",
354
+ "flex-1 text-caption font-normal text-muted-foreground select-none",
329
355
  defaultClassNames.weekday
330
356
  ),
331
357
  week: cn("mt-2 flex w-full", defaultClassNames.week),
@@ -334,7 +360,7 @@ function Calendar(_a) {
334
360
  defaultClassNames.week_number_header
335
361
  ),
336
362
  week_number: cn(
337
- "text-[0.8rem] text-muted-foreground select-none",
363
+ "text-caption text-muted-foreground select-none",
338
364
  defaultClassNames.week_number
339
365
  ),
340
366
  day: cn(
@@ -344,10 +370,7 @@ function Calendar(_a) {
344
370
  range_start: cn("bg-accent", defaultClassNames.range_start),
345
371
  range_middle: cn("rounded-none", defaultClassNames.range_middle),
346
372
  range_end: cn("bg-accent", defaultClassNames.range_end),
347
- today: cn(
348
- "bg-accent text-accent-foreground",
349
- defaultClassNames.today
350
- ),
373
+ today: cn("bg-accent text-accent-foreground", defaultClassNames.today),
351
374
  outside: cn(
352
375
  "text-muted-foreground aria-selected:text-muted-foreground",
353
376
  defaultClassNames.outside
@@ -392,7 +415,7 @@ function CalendarDayButton(_a) {
392
415
  Button,
393
416
  __spreadValues({
394
417
  className: cn(
395
- "flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal rounded-none group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none 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-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-accent-foreground [&>span]:text-xs [&>span]:opacity-70",
418
+ "flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 font-normal rounded-none group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none 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-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-accent-foreground [&>span]:text-caption [&>span]:opacity-70",
396
419
  defaultClassNames.day,
397
420
  className
398
421
  ),
@@ -445,6 +468,7 @@ function PopoverContent(_a) {
445
468
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_popover.Popover.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
446
469
  import_popover.Popover.Positioner,
447
470
  {
471
+ className: "z-[200]",
448
472
  align,
449
473
  sideOffset,
450
474
  children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
@@ -1,14 +1,13 @@
1
- "use client";
2
1
  import {
3
2
  DatePicker
4
- } from "../../chunk-FHNT55I5.mjs";
5
- import "../../chunk-MQ72DIBH.mjs";
6
- import "../../chunk-3NQGYJEZ.mjs";
7
- import "../../chunk-4AJ5HWHD.mjs";
3
+ } from "../../chunk-KUDCQ4FI.mjs";
4
+ import "../../chunk-3GF7OVTP.mjs";
5
+ import "../../chunk-P6AM5V7O.mjs";
6
+ import "../../chunk-2I5S2AMY.mjs";
8
7
  import "../../chunk-DBHJ5KC3.mjs";
9
- import "../../chunk-OXQQNQZI.mjs";
8
+ import "../../chunk-FEZKMUCF.mjs";
10
9
  import "../../chunk-QOJ2DQD6.mjs";
11
- import "../../chunk-V7CNWJT3.mjs";
10
+ import "../../chunk-VLQZANBF.mjs";
12
11
  import "../../chunk-FWCSY2DS.mjs";
13
12
  export {
14
13
  DatePicker