@customafk/lunas-ui 0.0.80 → 0.0.81

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 (691) hide show
  1. package/dist/{add-new-DfniMrHa.js → add-new-BFJvt2an.js} +2 -2
  2. package/dist/add-new-BFJvt2an.js.map +1 -0
  3. package/dist/add-new-Bt5QaeJs.cjs +2 -0
  4. package/dist/add-new-Bt5QaeJs.cjs.map +1 -0
  5. package/dist/alert-dialog-B-m2RVMu.cjs +2 -0
  6. package/dist/alert-dialog-B-m2RVMu.cjs.map +1 -0
  7. package/dist/{alert-dialog-UwGNuTYk.js → alert-dialog-DcQKEgVC.js} +1 -1
  8. package/dist/alert-dialog-DcQKEgVC.js.map +1 -0
  9. package/dist/avatar-DmMCBvb6.cjs +2 -0
  10. package/dist/avatar-DmMCBvb6.cjs.map +1 -0
  11. package/dist/avatar-iX5Jhj8E.js.map +1 -1
  12. package/dist/badge-AM9m3CFI.cjs +2 -0
  13. package/dist/badge-AM9m3CFI.cjs.map +1 -0
  14. package/dist/badge-tjlLdDGl.js.map +1 -1
  15. package/dist/button-BaLuKPtr.cjs +2 -0
  16. package/dist/button-BaLuKPtr.cjs.map +1 -0
  17. package/dist/{button-DhQJ9Ey8.js → button-CYsnwc1-.js} +2 -2
  18. package/dist/button-CYsnwc1-.js.map +1 -0
  19. package/dist/{button-CGIJb6H5.d.cts → button-D6hzitQh.d.cts} +6 -6
  20. package/dist/{button-BdYhnlA1.d.ts → button-DKcU4dim.d.ts} +6 -6
  21. package/dist/button-variants-DdVxfrSx.cjs +2 -0
  22. package/dist/button-variants-DdVxfrSx.cjs.map +1 -0
  23. package/dist/button-variants-Y1GTBayz.js.map +1 -1
  24. package/dist/calendar-C4zLgISS.cjs +2 -0
  25. package/dist/calendar-C4zLgISS.cjs.map +1 -0
  26. package/dist/{calendar-C2yGJ9AV.js → calendar-Dmq8I1ey.js} +2 -2
  27. package/dist/calendar-Dmq8I1ey.js.map +1 -0
  28. package/dist/card-CkKO-0o0.cjs +2 -0
  29. package/dist/card-CkKO-0o0.cjs.map +1 -0
  30. package/dist/card-DOv2mZU8.js.map +1 -1
  31. package/dist/cards/grid-product-card.cjs +1 -1
  32. package/dist/cards/grid-product-card.cjs.map +1 -1
  33. package/dist/cards/grid-product-card.js +1 -1
  34. package/dist/cards/grid-product-card.js.map +1 -1
  35. package/dist/cards/product-card.cjs +1 -1
  36. package/dist/cards/product-card.cjs.map +1 -1
  37. package/dist/cards/product-card.js +1 -1
  38. package/dist/cards/product-card.js.map +1 -1
  39. package/dist/cards/simple-card.cjs +1 -1
  40. package/dist/cards/simple-card.cjs.map +1 -1
  41. package/dist/cards/simple-card.js.map +1 -1
  42. package/dist/{command-BWvqtwPS.d.cts → command-BCHEIInv.d.cts} +12 -12
  43. package/dist/command-C13pL2M3.cjs +2 -0
  44. package/dist/command-C13pL2M3.cjs.map +1 -0
  45. package/dist/{command-B23xCgK_.d.ts → command-KnD1dAzj.d.ts} +12 -12
  46. package/dist/{command-DhSE6UaR.js → command-UXLmHGja.js} +2 -2
  47. package/dist/command-UXLmHGja.js.map +1 -0
  48. package/dist/data-display/country.cjs +1 -1
  49. package/dist/data-display/country.cjs.map +1 -1
  50. package/dist/data-display/country.d.ts +1 -1
  51. package/dist/data-display/country.js.map +1 -1
  52. package/dist/data-display/data-list.cjs +1 -1
  53. package/dist/data-display/data-list.cjs.map +1 -1
  54. package/dist/data-display/data-list.js.map +1 -1
  55. package/dist/data-display/date-tooltip.cjs +1 -1
  56. package/dist/data-display/date-tooltip.cjs.map +1 -1
  57. package/dist/data-display/date-tooltip.js +1 -1
  58. package/dist/data-display/date-tooltip.js.map +1 -1
  59. package/dist/data-display/date.cjs +1 -1
  60. package/dist/data-display/date.js +1 -1
  61. package/dist/data-display/empty.cjs +1 -1
  62. package/dist/data-display/empty.cjs.map +1 -1
  63. package/dist/data-display/empty.d.cts +2 -2
  64. package/dist/data-display/empty.js.map +1 -1
  65. package/dist/data-display/name.cjs +1 -1
  66. package/dist/data-display/name.cjs.map +1 -1
  67. package/dist/data-display/name.js.map +1 -1
  68. package/dist/data-display/phone-number.cjs +1 -1
  69. package/dist/data-display/phone-number.cjs.map +1 -1
  70. package/dist/data-display/phone-number.js.map +1 -1
  71. package/dist/data-display/role-badge.cjs +1 -1
  72. package/dist/data-display/role-badge.cjs.map +1 -1
  73. package/dist/data-display/role-badge.d.ts +1 -1
  74. package/dist/data-display/role-badge.js.map +1 -1
  75. package/dist/data-display/statistic.cjs +1 -1
  76. package/dist/data-display/statistic.cjs.map +1 -1
  77. package/dist/data-display/statistic.d.ts +2 -2
  78. package/dist/data-display/statistic.js +1 -1
  79. package/dist/data-display/statistic.js.map +1 -1
  80. package/dist/data-display/user.cjs +1 -1
  81. package/dist/data-display/user.cjs.map +1 -1
  82. package/dist/data-display/user.js.map +1 -1
  83. package/dist/date-BEyT-xKi.cjs +2 -0
  84. package/dist/date-BEyT-xKi.cjs.map +1 -0
  85. package/dist/{date-BuPl--Fc.js → date-CgzMwDPN.js} +2 -2
  86. package/dist/date-CgzMwDPN.js.map +1 -0
  87. package/dist/{dialog-B2LS2JLb.js → dialog-BAlJ18xi.js} +1 -1
  88. package/dist/dialog-BAlJ18xi.js.map +1 -0
  89. package/dist/dialog-BBODhbxh.cjs +2 -0
  90. package/dist/dialog-BBODhbxh.cjs.map +1 -0
  91. package/dist/{dialog-Dn2Q-QRw.d.ts → dialog-MCM90IpD.d.cts} +12 -12
  92. package/dist/{dialog-BFtz_6mv.d.cts → dialog-lKVaxcfs.d.ts} +12 -12
  93. package/dist/dialogs/confirm-dialog.cjs +1 -1
  94. package/dist/dialogs/confirm-dialog.cjs.map +1 -1
  95. package/dist/dialogs/confirm-dialog.js +1 -1
  96. package/dist/dialogs/confirm-dialog.js.map +1 -1
  97. package/dist/dialogs/detail-dialog/component/sidebar.cjs +1 -1
  98. package/dist/dialogs/detail-dialog/component/sidebar.d.cts +30 -30
  99. package/dist/dialogs/detail-dialog/component/sidebar.d.ts +30 -30
  100. package/dist/dialogs/detail-dialog/component/sidebar.js +1 -1
  101. package/dist/dialogs/detail-dialog/index.cjs +1 -1
  102. package/dist/dialogs/detail-dialog/index.cjs.map +1 -1
  103. package/dist/dialogs/detail-dialog/index.js +1 -1
  104. package/dist/dialogs/detail-dialog/index.js.map +1 -1
  105. package/dist/dialogs/error-dialog.cjs +1 -1
  106. package/dist/dialogs/error-dialog.js +1 -1
  107. package/dist/dialogs/form-dialog.cjs +1 -1
  108. package/dist/dialogs/form-dialog.cjs.map +1 -1
  109. package/dist/dialogs/form-dialog.d.cts +2 -2
  110. package/dist/dialogs/form-dialog.d.ts +2 -2
  111. package/dist/dialogs/form-dialog.js +1 -1
  112. package/dist/dialogs/form-dialog.js.map +1 -1
  113. package/dist/dialogs/loading-dialog.cjs +1 -1
  114. package/dist/dialogs/loading-dialog.cjs.map +1 -1
  115. package/dist/dialogs/loading-dialog.js +1 -1
  116. package/dist/dialogs/loading-dialog.js.map +1 -1
  117. package/dist/{dist-CkzytVha.js → dist-BgkALM7U.js} +2 -2
  118. package/dist/{dist-CkzytVha.js.map → dist-BgkALM7U.js.map} +1 -1
  119. package/dist/dist-CAevLI5t.cjs +2 -0
  120. package/dist/{dist-D0uO1qIz.cjs.map → dist-CAevLI5t.cjs.map} +1 -1
  121. package/dist/drawer-70cz3SPB.cjs +2 -0
  122. package/dist/drawer-70cz3SPB.cjs.map +1 -0
  123. package/dist/{drawer-COD1n5aA.js → drawer-DRC3X2-U.js} +1 -1
  124. package/dist/drawer-DRC3X2-U.js.map +1 -0
  125. package/dist/dropdown-menu-Bb68Wd6J.cjs +2 -0
  126. package/dist/dropdown-menu-Bb68Wd6J.cjs.map +1 -0
  127. package/dist/{dropdown-menu-Brlye320.js → dropdown-menu-DtEPAmMV.js} +1 -1
  128. package/dist/dropdown-menu-DtEPAmMV.js.map +1 -0
  129. package/dist/{error-dialog-BF1VNZXk.js → error-dialog-BeYJOtSH.js} +2 -2
  130. package/dist/error-dialog-BeYJOtSH.js.map +1 -0
  131. package/dist/error-dialog-bra3vccX.cjs +2 -0
  132. package/dist/error-dialog-bra3vccX.cjs.map +1 -0
  133. package/dist/field-A43YZ5Wj.cjs +2 -0
  134. package/dist/field-A43YZ5Wj.cjs.map +1 -0
  135. package/dist/field-CGacT8J3.js +2 -0
  136. package/dist/field-CGacT8J3.js.map +1 -0
  137. package/dist/flex-B4klVEz9.cjs +2 -0
  138. package/dist/flex-B4klVEz9.cjs.map +1 -0
  139. package/dist/flex-D6XrXRQW.js.map +1 -1
  140. package/dist/form-B_tL9lO4.js +2 -0
  141. package/dist/form-B_tL9lO4.js.map +1 -0
  142. package/dist/form-DV9tQbiO.cjs +2 -0
  143. package/dist/form-DV9tQbiO.cjs.map +1 -0
  144. package/dist/form-wrapper-BKTvSrZY.js +2 -0
  145. package/dist/form-wrapper-BKTvSrZY.js.map +1 -0
  146. package/dist/form-wrapper-vue82rfg.cjs +2 -0
  147. package/dist/form-wrapper-vue82rfg.cjs.map +1 -0
  148. package/dist/forms/combobox-field.cjs +1 -1
  149. package/dist/forms/combobox-field.cjs.map +1 -1
  150. package/dist/forms/combobox-field.d.cts +2 -2
  151. package/dist/forms/combobox-field.d.ts +2 -2
  152. package/dist/forms/combobox-field.js +1 -1
  153. package/dist/forms/combobox-field.js.map +1 -1
  154. package/dist/forms/date-field.cjs +1 -1
  155. package/dist/forms/date-field.cjs.map +1 -1
  156. package/dist/forms/date-field.d.cts +2 -2
  157. package/dist/forms/date-field.d.ts +2 -2
  158. package/dist/forms/date-field.js +1 -1
  159. package/dist/forms/date-field.js.map +1 -1
  160. package/dist/forms/form-wrapper.cjs +1 -1
  161. package/dist/forms/form-wrapper.d.cts +6 -2
  162. package/dist/forms/form-wrapper.d.ts +6 -2
  163. package/dist/forms/form-wrapper.js +1 -1
  164. package/dist/forms/multi-select-field.cjs +1 -1
  165. package/dist/forms/multi-select-field.cjs.map +1 -1
  166. package/dist/forms/multi-select-field.d.cts +4 -2
  167. package/dist/forms/multi-select-field.d.ts +4 -2
  168. package/dist/forms/multi-select-field.js +1 -1
  169. package/dist/forms/multi-select-field.js.map +1 -1
  170. package/dist/forms/number-field.cjs +1 -1
  171. package/dist/forms/number-field.cjs.map +1 -1
  172. package/dist/forms/number-field.d.cts +2 -2
  173. package/dist/forms/number-field.d.ts +2 -2
  174. package/dist/forms/number-field.js +1 -1
  175. package/dist/forms/number-field.js.map +1 -1
  176. package/dist/forms/password-field.cjs +1 -1
  177. package/dist/forms/password-field.cjs.map +1 -1
  178. package/dist/forms/password-field.d.cts +2 -2
  179. package/dist/forms/password-field.d.ts +2 -2
  180. package/dist/forms/password-field.js +1 -1
  181. package/dist/forms/password-field.js.map +1 -1
  182. package/dist/forms/select-field.cjs +1 -1
  183. package/dist/forms/select-field.cjs.map +1 -1
  184. package/dist/forms/select-field.d.cts +2 -2
  185. package/dist/forms/select-field.d.ts +2 -2
  186. package/dist/forms/select-field.js +1 -1
  187. package/dist/forms/select-field.js.map +1 -1
  188. package/dist/forms/switch-field.cjs +1 -1
  189. package/dist/forms/switch-field.cjs.map +1 -1
  190. package/dist/forms/switch-field.d.cts +4 -2
  191. package/dist/forms/switch-field.d.ts +4 -2
  192. package/dist/forms/switch-field.js +1 -1
  193. package/dist/forms/switch-field.js.map +1 -1
  194. package/dist/forms/text-field.cjs +1 -1
  195. package/dist/forms/text-field.cjs.map +1 -1
  196. package/dist/forms/text-field.d.cts +2 -2
  197. package/dist/forms/text-field.d.ts +2 -2
  198. package/dist/forms/text-field.js +1 -1
  199. package/dist/forms/text-field.js.map +1 -1
  200. package/dist/forms/textarea-field.cjs +1 -1
  201. package/dist/forms/textarea-field.cjs.map +1 -1
  202. package/dist/forms/textarea-field.d.cts +2 -2
  203. package/dist/forms/textarea-field.d.ts +2 -2
  204. package/dist/forms/textarea-field.js +1 -1
  205. package/dist/forms/textarea-field.js.map +1 -1
  206. package/dist/image-C0mClPAY.cjs +2 -0
  207. package/dist/image-C0mClPAY.cjs.map +1 -0
  208. package/dist/image-CiQhTTyt.js.map +1 -1
  209. package/dist/{input-BtT8HfYE.js → input-BStypTnq.js} +1 -1
  210. package/dist/input-BStypTnq.js.map +1 -0
  211. package/dist/{input-CwuYXUPY.d.ts → input-BbxBfHG5.d.ts} +3 -3
  212. package/dist/input-D_tClptL.cjs +2 -0
  213. package/dist/input-D_tClptL.cjs.map +1 -0
  214. package/dist/{input-Kq2bOgsM.d.cts → input-EieQSty7.d.cts} +3 -3
  215. package/dist/label-Bfd7VFEe.d.cts +11 -0
  216. package/dist/label-CdrxlBJ8.js.map +1 -1
  217. package/dist/label-D6mAvVmw.cjs +2 -0
  218. package/dist/label-D6mAvVmw.cjs.map +1 -0
  219. package/dist/label-DlBHUp00.d.ts +11 -0
  220. package/dist/layouts/app-layout/index.cjs +1 -1
  221. package/dist/layouts/app-layout/index.cjs.map +1 -1
  222. package/dist/layouts/app-layout/index.d.cts +28 -28
  223. package/dist/layouts/app-layout/index.d.ts +28 -28
  224. package/dist/layouts/app-layout/index.js +1 -1
  225. package/dist/layouts/app-layout/index.js.map +1 -1
  226. package/dist/layouts/flex.cjs +1 -1
  227. package/dist/layouts/flex.d.cts +2 -2
  228. package/dist/layouts/grid.cjs +1 -1
  229. package/dist/layouts/grid.cjs.map +1 -1
  230. package/dist/layouts/grid.js.map +1 -1
  231. package/dist/layouts/service-layout/index.cjs +1 -1
  232. package/dist/layouts/service-layout/index.cjs.map +1 -1
  233. package/dist/layouts/service-layout/index.d.cts +15 -15
  234. package/dist/layouts/service-layout/index.d.ts +15 -15
  235. package/dist/layouts/service-layout/index.js +1 -1
  236. package/dist/layouts/service-layout/index.js.map +1 -1
  237. package/dist/multi-select-C66U77ON.js +2 -0
  238. package/dist/multi-select-C66U77ON.js.map +1 -0
  239. package/dist/multi-select-D38JwSYL.cjs +2 -0
  240. package/dist/multi-select-D38JwSYL.cjs.map +1 -0
  241. package/dist/paragraph-B9fp9JaI.js.map +1 -1
  242. package/dist/paragraph-Q7vk3BSp.cjs +2 -0
  243. package/dist/paragraph-Q7vk3BSp.cjs.map +1 -0
  244. package/dist/{popover-BJWOgxQ5.js → popover-BnzoeyDG.js} +1 -1
  245. package/dist/popover-BnzoeyDG.js.map +1 -0
  246. package/dist/popover-D6vyPDKA.cjs +2 -0
  247. package/dist/popover-D6vyPDKA.cjs.map +1 -0
  248. package/dist/progress-BUlcGaLz.cjs +2 -0
  249. package/dist/progress-BUlcGaLz.cjs.map +1 -0
  250. package/dist/{progress-DzBPViJg.js → progress-DwLEMPaO.js} +1 -1
  251. package/dist/progress-DwLEMPaO.js.map +1 -0
  252. package/dist/{refresh-BiOPtbhd.js → refresh-CMQ49ae4.js} +2 -2
  253. package/dist/refresh-CMQ49ae4.js.map +1 -0
  254. package/dist/refresh-CvvD6Ckf.cjs +2 -0
  255. package/dist/refresh-CvvD6Ckf.cjs.map +1 -0
  256. package/dist/scroll-area-C_MkdpKg.cjs +2 -0
  257. package/dist/scroll-area-C_MkdpKg.cjs.map +1 -0
  258. package/dist/{scroll-area-BJYI14s5.js → scroll-area-DFENklE1.js} +1 -1
  259. package/dist/scroll-area-DFENklE1.js.map +1 -0
  260. package/dist/{search-input--FQFzdW3.js → search-input-BI1RjMuQ.js} +2 -2
  261. package/dist/search-input-BI1RjMuQ.js.map +1 -0
  262. package/dist/search-input-ryU0Mvaa.cjs +2 -0
  263. package/dist/search-input-ryU0Mvaa.cjs.map +1 -0
  264. package/dist/{select-Di8fOKVF.js → select-B8sXsuUI.js} +1 -1
  265. package/dist/select-B8sXsuUI.js.map +1 -0
  266. package/dist/select-BD7dul2u.cjs +2 -0
  267. package/dist/select-BD7dul2u.cjs.map +1 -0
  268. package/dist/{separator-mZ8r56s2.d.cts → separator-BBWO-2XW.d.cts} +3 -3
  269. package/dist/{separator-C7HQ2ThL.js → separator-D17HxS2f.js} +1 -1
  270. package/dist/separator-D17HxS2f.js.map +1 -0
  271. package/dist/separator-DMMoR-d2.cjs +2 -0
  272. package/dist/separator-DMMoR-d2.cjs.map +1 -0
  273. package/dist/{separator-C4wU5Rr6.d.ts → separator-LYCmJYd5.d.ts} +3 -3
  274. package/dist/{sheet-E0gvN9Gp.js → sheet-BhyEuJtA.js} +1 -1
  275. package/dist/sheet-BhyEuJtA.js.map +1 -0
  276. package/dist/sheet-Bua5MlcG.cjs +2 -0
  277. package/dist/sheet-Bua5MlcG.cjs.map +1 -0
  278. package/dist/sidebar-BgMpq73J.cjs +2 -0
  279. package/dist/sidebar-BgMpq73J.cjs.map +1 -0
  280. package/dist/{sidebar-CBEPWmnf.js → sidebar-Bs42CUTZ.js} +2 -2
  281. package/dist/sidebar-Bs42CUTZ.js.map +1 -0
  282. package/dist/skeleton-BC2E_ohw.cjs +2 -0
  283. package/dist/skeleton-BC2E_ohw.cjs.map +1 -0
  284. package/dist/skeleton-ByN-MrQO.js.map +1 -1
  285. package/dist/{switch-C7foFKpS.js → switch-DwBg-iL4.js} +1 -1
  286. package/dist/switch-DwBg-iL4.js.map +1 -0
  287. package/dist/switch-o_YbWKw4.cjs +2 -0
  288. package/dist/switch-o_YbWKw4.cjs.map +1 -0
  289. package/dist/systems/google.cjs +1 -1
  290. package/dist/systems/google.cjs.map +1 -1
  291. package/dist/systems/google.js +1 -1
  292. package/dist/systems/google.js.map +1 -1
  293. package/dist/table/index.cjs +1 -1
  294. package/dist/table/index.cjs.map +1 -1
  295. package/dist/table/index.d.cts +2 -2
  296. package/dist/table/index.d.ts +2 -2
  297. package/dist/table/index.js +1 -1
  298. package/dist/table/index.js.map +1 -1
  299. package/dist/{table-CKNAm27W.js → table-Cd75vfQ4.js} +1 -1
  300. package/dist/table-Cd75vfQ4.js.map +1 -0
  301. package/dist/table-fp-VtGFA.cjs +2 -0
  302. package/dist/table-fp-VtGFA.cjs.map +1 -0
  303. package/dist/{tabs-D4uObFGW.js → tabs-BVCzl3vY.js} +1 -1
  304. package/dist/tabs-BVCzl3vY.js.map +1 -0
  305. package/dist/tabs-D7oadnxg.cjs +2 -0
  306. package/dist/tabs-D7oadnxg.cjs.map +1 -0
  307. package/dist/textarea-BHME8i5L.cjs +2 -0
  308. package/dist/textarea-BHME8i5L.cjs.map +1 -0
  309. package/dist/{textarea-n8OO0QsI.js → textarea-TGDtYde1.js} +1 -1
  310. package/dist/textarea-TGDtYde1.js.map +1 -0
  311. package/dist/title-Wrzpw9RM.cjs +2 -0
  312. package/dist/title-Wrzpw9RM.cjs.map +1 -0
  313. package/dist/{title-itXqz0us.js → title-Zqs6skyV.js} +1 -1
  314. package/dist/title-Zqs6skyV.js.map +1 -0
  315. package/dist/{toggle-DuNq0es1.js → toggle-AOoz4VtN.js} +1 -1
  316. package/dist/toggle-AOoz4VtN.js.map +1 -0
  317. package/dist/{toggle-DYeyKWVE.d.cts → toggle-Bhwgx-y_.d.cts} +5 -5
  318. package/dist/toggle-D252Z_vH.cjs +2 -0
  319. package/dist/toggle-D252Z_vH.cjs.map +1 -0
  320. package/dist/{toggle-DPTA8XO2.d.ts → toggle-DaTd0CKm.d.ts} +5 -5
  321. package/dist/{tooltip-DijjzZk1.d.cts → tooltip-B3mrjes6.d.cts} +6 -6
  322. package/dist/tooltip-BTrjCwd8.js.map +1 -1
  323. package/dist/{tooltip-Dt83PTkc.d.ts → tooltip-IMUjBDRr.d.ts} +6 -6
  324. package/dist/tooltip-uaF-pxx8.cjs +2 -0
  325. package/dist/tooltip-uaF-pxx8.cjs.map +1 -0
  326. package/dist/{types-BHVCAwAo.d.ts → types-BcE2RjTJ.d.ts} +1 -1
  327. package/dist/types-BiiGENwa.js.map +1 -1
  328. package/dist/types-D32qXHff.cjs.map +1 -1
  329. package/dist/typography/paragraph.cjs +1 -1
  330. package/dist/typography/paragraph.d.cts +2 -2
  331. package/dist/typography/paragraph.d.ts +2 -2
  332. package/dist/typography/title.cjs +1 -1
  333. package/dist/typography/title.d.cts +2 -2
  334. package/dist/typography/title.d.ts +2 -2
  335. package/dist/typography/title.js +1 -1
  336. package/dist/ui/alert-dialog.cjs +1 -1
  337. package/dist/ui/alert-dialog.d.cts +12 -12
  338. package/dist/ui/alert-dialog.d.ts +12 -12
  339. package/dist/ui/alert-dialog.js +1 -1
  340. package/dist/ui/alert.cjs +1 -1
  341. package/dist/ui/alert.cjs.map +1 -1
  342. package/dist/ui/alert.d.cts +6 -6
  343. package/dist/ui/alert.d.ts +6 -6
  344. package/dist/ui/alert.js.map +1 -1
  345. package/dist/ui/aspect-ratio.cjs +1 -1
  346. package/dist/ui/aspect-ratio.cjs.map +1 -1
  347. package/dist/ui/aspect-ratio.d.cts +2 -2
  348. package/dist/ui/aspect-ratio.d.ts +2 -2
  349. package/dist/ui/aspect-ratio.js.map +1 -1
  350. package/dist/ui/avatar.cjs +1 -1
  351. package/dist/ui/avatar.d.cts +4 -4
  352. package/dist/ui/avatar.d.ts +4 -4
  353. package/dist/ui/badge.cjs +1 -1
  354. package/dist/ui/badge.d.cts +2 -2
  355. package/dist/ui/badge.d.ts +4 -4
  356. package/dist/ui/breadcrumb.cjs +1 -1
  357. package/dist/ui/breadcrumb.cjs.map +1 -1
  358. package/dist/ui/breadcrumb.d.cts +8 -8
  359. package/dist/ui/breadcrumb.d.ts +8 -8
  360. package/dist/ui/breadcrumb.js +1 -1
  361. package/dist/ui/breadcrumb.js.map +1 -1
  362. package/dist/ui/button-group.cjs +2 -0
  363. package/dist/ui/button-group.cjs.map +1 -0
  364. package/dist/ui/button-group.d.cts +29 -0
  365. package/dist/ui/button-group.d.ts +29 -0
  366. package/dist/ui/button-group.js +2 -0
  367. package/dist/ui/button-group.js.map +1 -0
  368. package/dist/ui/button.cjs +1 -1
  369. package/dist/ui/button.d.cts +1 -1
  370. package/dist/ui/button.d.ts +1 -1
  371. package/dist/ui/button.js +1 -1
  372. package/dist/ui/buttons/add-new.cjs +1 -1
  373. package/dist/ui/buttons/add-new.js +1 -1
  374. package/dist/ui/buttons/edit.cjs +1 -1
  375. package/dist/ui/buttons/edit.cjs.map +1 -1
  376. package/dist/ui/buttons/edit.js +1 -1
  377. package/dist/ui/buttons/edit.js.map +1 -1
  378. package/dist/ui/buttons/refresh.cjs +1 -1
  379. package/dist/ui/buttons/refresh.js +1 -1
  380. package/dist/ui/buttons/trash.cjs +1 -1
  381. package/dist/ui/buttons/trash.cjs.map +1 -1
  382. package/dist/ui/buttons/trash.js +1 -1
  383. package/dist/ui/buttons/trash.js.map +1 -1
  384. package/dist/ui/buttons/upload-image.cjs +1 -1
  385. package/dist/ui/buttons/upload-image.cjs.map +1 -1
  386. package/dist/ui/buttons/upload-image.js +1 -1
  387. package/dist/ui/buttons/upload-image.js.map +1 -1
  388. package/dist/ui/calendar.cjs +1 -1
  389. package/dist/ui/calendar.d.cts +4 -4
  390. package/dist/ui/calendar.d.ts +4 -4
  391. package/dist/ui/calendar.js +1 -1
  392. package/dist/ui/card.cjs +1 -1
  393. package/dist/ui/card.d.cts +8 -8
  394. package/dist/ui/card.d.ts +8 -8
  395. package/dist/ui/carousel.cjs +1 -1
  396. package/dist/ui/carousel.cjs.map +1 -1
  397. package/dist/ui/carousel.d.cts +7 -7
  398. package/dist/ui/carousel.d.ts +7 -7
  399. package/dist/ui/carousel.js +1 -1
  400. package/dist/ui/carousel.js.map +1 -1
  401. package/dist/ui/collapsible.cjs +1 -1
  402. package/dist/ui/collapsible.cjs.map +1 -1
  403. package/dist/ui/collapsible.d.cts +4 -4
  404. package/dist/ui/collapsible.d.ts +4 -4
  405. package/dist/ui/collapsible.js.map +1 -1
  406. package/dist/ui/command.cjs +1 -1
  407. package/dist/ui/command.d.cts +2 -2
  408. package/dist/ui/command.d.ts +2 -2
  409. package/dist/ui/command.js +1 -1
  410. package/dist/ui/context-menu.cjs +1 -1
  411. package/dist/ui/context-menu.cjs.map +1 -1
  412. package/dist/ui/context-menu.d.cts +16 -16
  413. package/dist/ui/context-menu.d.ts +16 -16
  414. package/dist/ui/context-menu.js.map +1 -1
  415. package/dist/ui/dialog.cjs +1 -1
  416. package/dist/ui/dialog.d.cts +1 -1
  417. package/dist/ui/dialog.d.ts +1 -1
  418. package/dist/ui/dialog.js +1 -1
  419. package/dist/ui/dropdown-menu.cjs +1 -1
  420. package/dist/ui/dropdown-menu.d.cts +16 -16
  421. package/dist/ui/dropdown-menu.d.ts +16 -16
  422. package/dist/ui/dropdown-menu.js +1 -1
  423. package/dist/ui/empty.cjs +2 -0
  424. package/dist/ui/empty.cjs.map +1 -0
  425. package/dist/ui/empty.d.cts +36 -0
  426. package/dist/ui/empty.d.ts +36 -0
  427. package/dist/ui/empty.js +2 -0
  428. package/dist/ui/empty.js.map +1 -0
  429. package/dist/ui/field.cjs +1 -0
  430. package/dist/ui/field.d.cts +65 -0
  431. package/dist/ui/field.d.ts +65 -0
  432. package/dist/ui/field.js +1 -0
  433. package/dist/ui/file-uploader.cjs +1 -1
  434. package/dist/ui/file-uploader.cjs.map +1 -1
  435. package/dist/ui/file-uploader.d.cts +2 -2
  436. package/dist/ui/file-uploader.d.ts +2 -2
  437. package/dist/ui/file-uploader.js +1 -1
  438. package/dist/ui/file-uploader.js.map +1 -1
  439. package/dist/ui/form.cjs +1 -1
  440. package/dist/ui/form.d.cts +7 -8
  441. package/dist/ui/form.d.ts +7 -8
  442. package/dist/ui/form.js +1 -1
  443. package/dist/ui/hover-card.cjs +1 -1
  444. package/dist/ui/hover-card.cjs.map +1 -1
  445. package/dist/ui/hover-card.d.cts +4 -4
  446. package/dist/ui/hover-card.d.ts +4 -4
  447. package/dist/ui/hover-card.js.map +1 -1
  448. package/dist/ui/image.cjs +1 -1
  449. package/dist/ui/input-otp.cjs +1 -1
  450. package/dist/ui/input-otp.cjs.map +1 -1
  451. package/dist/ui/input-otp.d.cts +5 -5
  452. package/dist/ui/input-otp.d.ts +5 -5
  453. package/dist/ui/input-otp.js +1 -1
  454. package/dist/ui/input-otp.js.map +1 -1
  455. package/dist/ui/input.cjs +1 -1
  456. package/dist/ui/input.d.cts +1 -1
  457. package/dist/ui/input.d.ts +1 -1
  458. package/dist/ui/input.js +1 -1
  459. package/dist/ui/inputs/search-input.cjs +1 -1
  460. package/dist/ui/inputs/search-input.d.cts +3 -3
  461. package/dist/ui/inputs/search-input.d.ts +3 -3
  462. package/dist/ui/inputs/search-input.js +1 -1
  463. package/dist/ui/item.cjs +2 -0
  464. package/dist/ui/item.cjs.map +1 -0
  465. package/dist/ui/item.d.cts +62 -0
  466. package/dist/ui/item.d.ts +62 -0
  467. package/dist/ui/item.js +2 -0
  468. package/dist/ui/item.js.map +1 -0
  469. package/dist/ui/label.cjs +1 -1
  470. package/dist/ui/label.d.cts +2 -11
  471. package/dist/ui/label.d.ts +2 -11
  472. package/dist/ui/menubar.cjs +1 -1
  473. package/dist/ui/menubar.cjs.map +1 -1
  474. package/dist/ui/menubar.d.cts +17 -17
  475. package/dist/ui/menubar.d.ts +17 -17
  476. package/dist/ui/menubar.js.map +1 -1
  477. package/dist/ui/multi-select.cjs +1 -1
  478. package/dist/ui/multi-select.d.cts +2 -2
  479. package/dist/ui/multi-select.d.ts +2 -2
  480. package/dist/ui/multi-select.js +1 -1
  481. package/dist/ui/navigation-menu.cjs +1 -1
  482. package/dist/ui/navigation-menu.cjs.map +1 -1
  483. package/dist/ui/navigation-menu.d.cts +11 -11
  484. package/dist/ui/navigation-menu.d.ts +11 -11
  485. package/dist/ui/navigation-menu.js.map +1 -1
  486. package/dist/ui/pagination.cjs +1 -1
  487. package/dist/ui/pagination.cjs.map +1 -1
  488. package/dist/ui/pagination.d.cts +9 -9
  489. package/dist/ui/pagination.d.ts +9 -9
  490. package/dist/ui/pagination.js +1 -1
  491. package/dist/ui/pagination.js.map +1 -1
  492. package/dist/ui/popover.cjs +1 -1
  493. package/dist/ui/popover.d.cts +5 -5
  494. package/dist/ui/popover.d.ts +5 -5
  495. package/dist/ui/popover.js +1 -1
  496. package/dist/ui/progress.cjs +1 -1
  497. package/dist/ui/progress.d.cts +2 -2
  498. package/dist/ui/progress.d.ts +2 -2
  499. package/dist/ui/progress.js +1 -1
  500. package/dist/ui/radio-group.cjs +1 -1
  501. package/dist/ui/radio-group.cjs.map +1 -1
  502. package/dist/ui/radio-group.d.cts +3 -3
  503. package/dist/ui/radio-group.d.ts +3 -3
  504. package/dist/ui/radio-group.js.map +1 -1
  505. package/dist/ui/resizable.cjs +1 -1
  506. package/dist/ui/resizable.cjs.map +1 -1
  507. package/dist/ui/resizable.d.cts +4 -4
  508. package/dist/ui/resizable.d.ts +4 -4
  509. package/dist/ui/resizable.js.map +1 -1
  510. package/dist/ui/scroll-area.cjs +1 -1
  511. package/dist/ui/scroll-area.d.cts +3 -3
  512. package/dist/ui/scroll-area.d.ts +3 -3
  513. package/dist/ui/scroll-area.js +1 -1
  514. package/dist/ui/select.cjs +1 -1
  515. package/dist/ui/select.d.cts +11 -11
  516. package/dist/ui/select.d.ts +11 -11
  517. package/dist/ui/select.js +1 -1
  518. package/dist/ui/separator.cjs +1 -1
  519. package/dist/ui/separator.d.cts +1 -1
  520. package/dist/ui/separator.d.ts +1 -1
  521. package/dist/ui/separator.js +1 -1
  522. package/dist/ui/sheet.cjs +1 -1
  523. package/dist/ui/sheet.d.cts +9 -9
  524. package/dist/ui/sheet.d.ts +9 -9
  525. package/dist/ui/sheet.js +1 -1
  526. package/dist/ui/sidebar.cjs +1 -1
  527. package/dist/ui/sidebar.cjs.map +1 -1
  528. package/dist/ui/sidebar.d.cts +30 -30
  529. package/dist/ui/sidebar.d.ts +30 -30
  530. package/dist/ui/sidebar.js +1 -1
  531. package/dist/ui/sidebar.js.map +1 -1
  532. package/dist/ui/skeleton.cjs +1 -1
  533. package/dist/ui/skeleton.d.cts +2 -2
  534. package/dist/ui/skeleton.d.ts +2 -2
  535. package/dist/ui/slider.cjs +1 -1
  536. package/dist/ui/slider.cjs.map +1 -1
  537. package/dist/ui/slider.d.cts +2 -2
  538. package/dist/ui/slider.d.ts +2 -2
  539. package/dist/ui/slider.js.map +1 -1
  540. package/dist/ui/sonner.cjs +1 -1
  541. package/dist/ui/sonner.cjs.map +1 -1
  542. package/dist/ui/sonner.d.cts +2 -2
  543. package/dist/ui/sonner.d.ts +2 -2
  544. package/dist/ui/sonner.js.map +1 -1
  545. package/dist/ui/spinner.cjs +2 -0
  546. package/dist/ui/spinner.cjs.map +1 -0
  547. package/dist/ui/spinner.d.cts +10 -0
  548. package/dist/ui/spinner.d.ts +10 -0
  549. package/dist/ui/spinner.js +2 -0
  550. package/dist/ui/spinner.js.map +1 -0
  551. package/dist/ui/switch.cjs +1 -1
  552. package/dist/ui/switch.d.cts +2 -2
  553. package/dist/ui/switch.d.ts +2 -2
  554. package/dist/ui/switch.js +1 -1
  555. package/dist/ui/table.cjs +1 -1
  556. package/dist/ui/table.d.cts +9 -9
  557. package/dist/ui/table.d.ts +9 -9
  558. package/dist/ui/table.js +1 -1
  559. package/dist/ui/tabs.cjs +1 -1
  560. package/dist/ui/tabs.d.cts +5 -5
  561. package/dist/ui/tabs.d.ts +5 -5
  562. package/dist/ui/tabs.js +1 -1
  563. package/dist/ui/textarea.cjs +1 -1
  564. package/dist/ui/textarea.d.cts +2 -2
  565. package/dist/ui/textarea.d.ts +2 -2
  566. package/dist/ui/textarea.js +1 -1
  567. package/dist/ui/toggle-group.cjs +1 -1
  568. package/dist/ui/toggle-group.cjs.map +1 -1
  569. package/dist/ui/toggle-group.d.cts +4 -4
  570. package/dist/ui/toggle-group.d.ts +4 -4
  571. package/dist/ui/toggle-group.js +1 -1
  572. package/dist/ui/toggle-group.js.map +1 -1
  573. package/dist/ui/toggle.cjs +1 -1
  574. package/dist/ui/toggle.d.cts +1 -1
  575. package/dist/ui/toggle.d.ts +1 -1
  576. package/dist/ui/toggle.js +1 -1
  577. package/dist/ui/tooltip.cjs +1 -1
  578. package/dist/ui/tooltip.d.cts +1 -1
  579. package/dist/ui/tooltip.d.ts +1 -1
  580. package/package.json +26 -18
  581. package/dist/add-new-DfniMrHa.js.map +0 -1
  582. package/dist/add-new-dgznne6n.cjs +0 -2
  583. package/dist/add-new-dgznne6n.cjs.map +0 -1
  584. package/dist/alert-dialog-BgEaBYoh.cjs +0 -2
  585. package/dist/alert-dialog-BgEaBYoh.cjs.map +0 -1
  586. package/dist/alert-dialog-UwGNuTYk.js.map +0 -1
  587. package/dist/avatar-B4pklWJt.cjs +0 -2
  588. package/dist/avatar-B4pklWJt.cjs.map +0 -1
  589. package/dist/badge-CsA-JCDX.cjs +0 -2
  590. package/dist/badge-CsA-JCDX.cjs.map +0 -1
  591. package/dist/button-CuV2l4ge.cjs +0 -2
  592. package/dist/button-CuV2l4ge.cjs.map +0 -1
  593. package/dist/button-DhQJ9Ey8.js.map +0 -1
  594. package/dist/button-variants-CCiseNSC.cjs +0 -2
  595. package/dist/button-variants-CCiseNSC.cjs.map +0 -1
  596. package/dist/calendar-C2yGJ9AV.js.map +0 -1
  597. package/dist/calendar-Fjm1d0mU.cjs +0 -2
  598. package/dist/calendar-Fjm1d0mU.cjs.map +0 -1
  599. package/dist/card-Pnxpehsp.cjs +0 -2
  600. package/dist/card-Pnxpehsp.cjs.map +0 -1
  601. package/dist/command-DHGZlBKd.cjs +0 -2
  602. package/dist/command-DHGZlBKd.cjs.map +0 -1
  603. package/dist/command-DhSE6UaR.js.map +0 -1
  604. package/dist/date-2wue8L-1.cjs +0 -2
  605. package/dist/date-2wue8L-1.cjs.map +0 -1
  606. package/dist/date-BuPl--Fc.js.map +0 -1
  607. package/dist/dialog-B2LS2JLb.js.map +0 -1
  608. package/dist/dialog-BSdn3QaW.cjs +0 -2
  609. package/dist/dialog-BSdn3QaW.cjs.map +0 -1
  610. package/dist/dist-D0uO1qIz.cjs +0 -2
  611. package/dist/drawer-COD1n5aA.js.map +0 -1
  612. package/dist/drawer-CsCzBHvx.cjs +0 -2
  613. package/dist/drawer-CsCzBHvx.cjs.map +0 -1
  614. package/dist/dropdown-menu-Brlye320.js.map +0 -1
  615. package/dist/dropdown-menu-DwI8o0uQ.cjs +0 -2
  616. package/dist/dropdown-menu-DwI8o0uQ.cjs.map +0 -1
  617. package/dist/error-dialog-BF1VNZXk.js.map +0 -1
  618. package/dist/error-dialog-C3b4fqAI.cjs +0 -2
  619. package/dist/error-dialog-C3b4fqAI.cjs.map +0 -1
  620. package/dist/flex-DS4mxjtf.cjs +0 -2
  621. package/dist/flex-DS4mxjtf.cjs.map +0 -1
  622. package/dist/form-BT1TbgK6.js +0 -2
  623. package/dist/form-BT1TbgK6.js.map +0 -1
  624. package/dist/form-DyH5iWq7.cjs +0 -2
  625. package/dist/form-DyH5iWq7.cjs.map +0 -1
  626. package/dist/form-wrapper-CI2iMUNJ.cjs +0 -2
  627. package/dist/form-wrapper-CI2iMUNJ.cjs.map +0 -1
  628. package/dist/form-wrapper-DaguHv9W.js +0 -2
  629. package/dist/form-wrapper-DaguHv9W.js.map +0 -1
  630. package/dist/image-j62jo7bK.cjs +0 -2
  631. package/dist/image-j62jo7bK.cjs.map +0 -1
  632. package/dist/input-BtT8HfYE.js.map +0 -1
  633. package/dist/input-DfGojpRF.cjs +0 -2
  634. package/dist/input-DfGojpRF.cjs.map +0 -1
  635. package/dist/label-CHNSlaoz.cjs +0 -2
  636. package/dist/label-CHNSlaoz.cjs.map +0 -1
  637. package/dist/multi-select-C0dFenI-.cjs +0 -2
  638. package/dist/multi-select-C0dFenI-.cjs.map +0 -1
  639. package/dist/multi-select-l0HITJuv.js +0 -2
  640. package/dist/multi-select-l0HITJuv.js.map +0 -1
  641. package/dist/paragraph-BLvW7xdo.cjs +0 -2
  642. package/dist/paragraph-BLvW7xdo.cjs.map +0 -1
  643. package/dist/popover-BJWOgxQ5.js.map +0 -1
  644. package/dist/popover-BrDe5Jb8.cjs +0 -2
  645. package/dist/popover-BrDe5Jb8.cjs.map +0 -1
  646. package/dist/progress-DzBPViJg.js.map +0 -1
  647. package/dist/progress-RnZp4jUA.cjs +0 -2
  648. package/dist/progress-RnZp4jUA.cjs.map +0 -1
  649. package/dist/refresh-BiOPtbhd.js.map +0 -1
  650. package/dist/refresh-DgFpv8mw.cjs +0 -2
  651. package/dist/refresh-DgFpv8mw.cjs.map +0 -1
  652. package/dist/scroll-area-BJYI14s5.js.map +0 -1
  653. package/dist/scroll-area-slD5Jekm.cjs +0 -2
  654. package/dist/scroll-area-slD5Jekm.cjs.map +0 -1
  655. package/dist/search-input--FQFzdW3.js.map +0 -1
  656. package/dist/search-input-DV8zjsMQ.cjs +0 -2
  657. package/dist/search-input-DV8zjsMQ.cjs.map +0 -1
  658. package/dist/select-Ce-YROpe.cjs +0 -2
  659. package/dist/select-Ce-YROpe.cjs.map +0 -1
  660. package/dist/select-Di8fOKVF.js.map +0 -1
  661. package/dist/separator-C7HQ2ThL.js.map +0 -1
  662. package/dist/separator-WF5zTNGS.cjs +0 -2
  663. package/dist/separator-WF5zTNGS.cjs.map +0 -1
  664. package/dist/sheet-E0gvN9Gp.js.map +0 -1
  665. package/dist/sheet-cjXJAfUE.cjs +0 -2
  666. package/dist/sheet-cjXJAfUE.cjs.map +0 -1
  667. package/dist/sidebar-B6s0ZZHA.cjs +0 -2
  668. package/dist/sidebar-B6s0ZZHA.cjs.map +0 -1
  669. package/dist/sidebar-CBEPWmnf.js.map +0 -1
  670. package/dist/skeleton-BA-3d3bn.cjs +0 -2
  671. package/dist/skeleton-BA-3d3bn.cjs.map +0 -1
  672. package/dist/switch-C7foFKpS.js.map +0 -1
  673. package/dist/switch-DOgkZVAD.cjs +0 -2
  674. package/dist/switch-DOgkZVAD.cjs.map +0 -1
  675. package/dist/table-CKNAm27W.js.map +0 -1
  676. package/dist/table-CzMEpN9D.cjs +0 -2
  677. package/dist/table-CzMEpN9D.cjs.map +0 -1
  678. package/dist/tabs-D4uObFGW.js.map +0 -1
  679. package/dist/tabs-MolLf09Q.cjs +0 -2
  680. package/dist/tabs-MolLf09Q.cjs.map +0 -1
  681. package/dist/textarea-Ewj89Eq3.cjs +0 -2
  682. package/dist/textarea-Ewj89Eq3.cjs.map +0 -1
  683. package/dist/textarea-n8OO0QsI.js.map +0 -1
  684. package/dist/title-DONX1fR6.cjs +0 -2
  685. package/dist/title-DONX1fR6.cjs.map +0 -1
  686. package/dist/title-itXqz0us.js.map +0 -1
  687. package/dist/toggle-D0B4Ba4H.cjs +0 -2
  688. package/dist/toggle-D0B4Ba4H.cjs.map +0 -1
  689. package/dist/toggle-DuNq0es1.js.map +0 -1
  690. package/dist/tooltip-DXvcPsvM.cjs +0 -2
  691. package/dist/tooltip-DXvcPsvM.cjs.map +0 -1
@@ -1,2 +1,2 @@
1
- import"../dist-CkzytVha.js";import"../button-variants-Y1GTBayz.js";import{Button as e}from"../button-DhQJ9Ey8.js";import{Flex as t}from"../flex-D6XrXRQW.js";import"../paragraph-B9fp9JaI.js";import"../input-BtT8HfYE.js";import{DropdownMenu as n,DropdownMenuContent as r,DropdownMenuItem as i,DropdownMenuTrigger as a}from"../dropdown-menu-Brlye320.js";import{ScrollArea as o,ScrollBar as s}from"../scroll-area-BJYI14s5.js";import{Table as c,TableBody as l,TableCell as u,TableFooter as d,TableHead as f,TableHeader as p,TableRow as m}from"../table-CKNAm27W.js";import{AddNewBtn as h}from"../add-new-DfniMrHa.js";import{RefreshBtn as g}from"../refresh-BiOPtbhd.js";import{SearchInput as _}from"../search-input--FQFzdW3.js";import{ArrowLeftToLineIcon as v,ArrowRightToLineIcon as y,ChevronDown as b,ChevronUp as x,EllipsisIcon as S,LoaderIcon as C,PinOffIcon as w}from"lucide-react";import{cn as T}from"@customafk/react-toolkit/utils";import{memo as E,useCallback as D,useEffect as O,useMemo as k,useRef as A,useState as j}from"react";import{Fragment as M,jsx as N,jsxs as P}from"react/jsx-runtime";import{flexRender as F,getCoreRowModel as I,getFacetedRowModel as L,getFacetedUniqueValues as R,getFilteredRowModel as z,getSortedRowModel as B,useReactTable as V}from"@tanstack/react-table";import{useVirtualizer as H}from"@tanstack/react-virtual";const U=e=>{let t=e.getIsPinned();return{left:t===`left`?`${e.getStart(`left`)}px`:void 0,right:t===`right`?`${e.getAfter(`right`)}px`:void 0,position:t?`sticky`:`relative`,width:e.getSize(),zIndex:t?1:0}},W=E(({column:e})=>{let t=e.getIsSorted(),n=k(()=>({asc:N(x,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`}),desc:N(b,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`})}),[]);return t?n[t]:null});W.displayName=`SortingIndicator`;const G=E(({column:t})=>{let o=typeof t.columnDef.header==`string`?t.columnDef.header:`Column`,s=D(()=>t.pin(!1),[t]),c=D(()=>t.pin(`left`),[t]),l=D(()=>t.pin(`right`),[t]);return t.getCanPin()?t.getIsPinned()?N(e,{size:`icon`,variant:`ghost`,color:`secondary`,className:`hover:[&_svg]:text-secondary-foreground -mr-1 size-7 shadow-none`,"aria-label":`Unpin ${o} column`,title:`Unpin ${o} column`,onClick:s,children:N(w,{className:`opacity-60`,size:16,"aria-hidden":`true`})}):P(n,{children:[N(a,{asChild:!0,children:N(e,{size:`icon`,variant:`ghost`,color:`secondary`,className:`size-7 shadow-none`,"aria-label":`Pin options for ${o} column`,title:`Pin options for ${o} column`,children:N(S,{className:`opacity-60`,size:16,"aria-hidden":`true`})})}),P(r,{align:`end`,children:[P(i,{onClick:c,children:[N(v,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to left`]}),P(i,{onClick:l,children:[N(y,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to right`]})]})]}):null});G.displayName=`PinControls`;const K=E(({header:e})=>{let{column:t}=e,n=D(e=>{t.getCanSort()&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t.getToggleSortingHandler()?.(e))},[t]),r=t.getToggleSortingHandler();return e.isPlaceholder?N(`div`,{className:`flex items-center justify-between gap-2 truncate`}):P(`div`,{className:`flex items-center justify-between gap-2 truncate`,children:[P(`div`,{className:T(t.getCanSort()&&`flex h-full cursor-pointer items-center justify-between gap-2 select-none`),onClick:r,onKeyDown:n,tabIndex:t.getCanSort()?0:void 0,role:t.getCanSort()?`button`:void 0,children:[N(`span`,{className:`truncate`,children:F(t.columnDef.header,e.getContext())}),N(W,{column:t})]}),N(G,{column:t})]})});K.displayName=`HeaderContent`;const q=E(({row:e,measureElement:t,virtualRow:n,onClickRow:r})=>{let i=D(()=>{r&&r(e.id)},[e.id,r]);return N(m,{"data-index":n.index,ref:e=>t(e),className:`absolute flex w-full cursor-pointer focus:outline-none`,style:{transform:`translateY(${n.start}px)`},onClick:i,tabIndex:r?0:void 0,role:r?`button`:void 0,children:e.getVisibleCells().map(e=>{let t=e.column.getIsPinned(),n=t===`left`&&e.column.getIsLastColumn(`left`),r=t===`right`&&e.column.getIsFirstColumn(`right`);return N(u,{"data-pinned":t||void 0,"data-last-col":n?`left`:r?`right`:void 0,style:{...U(e.column),width:e.column.getSize()},className:T(`flex overflow-hidden py-2.5`,`data-pinned:bg-background/90`,`[&[data-pinned][data-last-col]]:border-border-weak`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right][data-last-col=right]]:border-l`),children:F(e.column.columnDef.cell,e.getContext())},e.id)})})});q.displayName=`DataTableRow`;const J=({table:e,isLoading:t,isFetching:n,allowFetchMore:r=!0,onClickRow:i,onFetchNextPage:a})=>{let h=A(null),{rows:g}=e.getRowModel(),_=H({count:g.length,getScrollElement:()=>h.current,estimateSize:()=>37,measureElement:e=>e?.getBoundingClientRect().height??void 0,overscan:5}),v=D(e=>{if(!e)return;let{scrollHeight:t,scrollTop:i,clientHeight:o}=e;t-i-o<500&&!n&&r&&a?.()},[r,n,a]),y=D(e=>{v(e.currentTarget)},[v]);return O(()=>{let e=setTimeout(()=>{v(h.current)},100);return()=>clearTimeout(e)},[v]),P(o,{ref:h,className:`border-border-weak bg-background relative w-full overflow-auto rounded-lg border`,onScroll:y,children:[P(c,{className:T(`!w-full`,`grid`,`border-separate border-spacing-0`,`[&_td]:border-border-weak`,`[&_th]:border-border-weak`,`[&_th]:border-b`,`[&_th]:border-b-border-weak`,`[&_tfoot_td]:border-t`),children:[N(p,{className:`sticky top-0 z-10 backdrop-blur-xs`,children:e.getHeaderGroups().map(e=>N(m,{className:`flex w-full border-none`,children:e.headers.map(e=>{let{column:t}=e,n=t.getIsPinned(),r=n===`left`&&t.getIsLastColumn(`left`),i=n===`right`&&t.getIsFirstColumn(`right`),a=n||void 0,o=r?`left`:i?`right`:void 0,s={width:e.getSize(),...U(e.column)};return N(f,{"data-pinned":a,"data-last-col":o,className:T(`relative flex h-9 font-semibold select-none`,`data-pinned:backdrop-blur-xs`,`data-pinned:bg-muted-weak`,`[&>.cursor-col-resize]:last:opacity-0`,`[&[data-pinned][data-last-col]]:border-border-weak`,`[&:not([data-pinned]):has(+[data-pinned])_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-last-col=left]_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right]:last-child_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=right][data-last-col=right]]:border-l`),colSpan:e.colSpan,style:s,children:N(K,{header:e})},e.id)})},e.id))}),N(l,{style:{height:`${_.getTotalSize()}px`},className:T(`relative grid w-full`,t&&`h-36`,g?.length===0&&`h-48`),children:t?N(m,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:N(u,{children:`loading...`})}):N(M,{children:_.getVirtualItems().map(e=>{let t=g[e.index],n=t?.id||(t.original&&`id`in t.original?String(t.original.id):null)||(t.original&&`uuid`in t.original?String(t.original.uuid):null);return N(q,{id:n??String(e.index),row:t,measureElement:_.measureElement,virtualRow:e,onClickRow:i},n??e.index)})})}),n&&N(d,{children:N(`div`,{className:`flex w-full justify-center py-2`,children:N(C,{size:16,className:`animate-spin`,"aria-label":`Loading more data`})})})]}),N(s,{orientation:`horizontal`})]})},Y=({onAdd:e,onRefresh:n})=>P(t,{justify:`between`,padding:`none`,width:`full`,className:`flex-0`,children:[N(`div`,{className:`max-sm:flex-1`,children:N(_,{placeholder:`Search...`})}),P(t,{wrap:!1,className:`flex-0 px-0`,children:[!!e&&N(h,{onClick:e}),N(g,{onClick:n})]})]});function X({data:e,totalCount:n,isLoading:r,isFetching:i,allowLoadMore:a,columns:o,onAdd:s,onRefresh:c,onClickRow:l,onFetchNextPage:u}){"use no memo";let[d,f]=j({}),[p,m]=j([]),[h,g]=j([]),[_,v]=j({}),y=k(()=>({columnPinning:{right:[`actions`,`update`,`delete`]}}),[]),b=V({initialState:y,data:e,columns:o,rowCount:n,columnResizeMode:`onChange`,enableColumnResizing:!1,enableMultiRowSelection:!1,getCoreRowModel:I(),getSortedRowModel:B(),getFilteredRowModel:z(),getFacetedRowModel:L(),getFacetedUniqueValues:R(),getRowId:e=>e.id||e.uuid,state:{rowSelection:d,sorting:p,columnVisibility:_,columnFilters:h},onRowSelectionChange:f,onSortingChange:m,onColumnVisibilityChange:v,onColumnFiltersChange:g});return P(t,{vertical:!0,wrap:!1,gap:`sm`,align:`start`,className:`size-full overflow-y-auto pt-1`,children:[N(Y,{onAdd:s,onRefresh:c}),N(t,{padding:`none`,vertical:!0,wrap:!1,width:`full`,className:`flex-1 overflow-auto pb-4`,children:N(J,{table:b,isLoading:r,isFetching:i,allowFetchMore:a,onClickRow:l,onFetchNextPage:u})})]})}export{X as Table};
1
+ import"../dist-BgkALM7U.js";import"../button-variants-Y1GTBayz.js";import{Button as e}from"../button-CYsnwc1-.js";import{Flex as t}from"../flex-D6XrXRQW.js";import"../paragraph-B9fp9JaI.js";import"../input-BStypTnq.js";import{DropdownMenu as n,DropdownMenuContent as r,DropdownMenuItem as i,DropdownMenuTrigger as a}from"../dropdown-menu-DtEPAmMV.js";import{ScrollArea as o,ScrollBar as s}from"../scroll-area-DFENklE1.js";import{Table as c,TableBody as l,TableCell as u,TableFooter as d,TableHead as f,TableHeader as p,TableRow as m}from"../table-Cd75vfQ4.js";import{AddNewBtn as h}from"../add-new-BFJvt2an.js";import{RefreshBtn as g}from"../refresh-CMQ49ae4.js";import{SearchInput as _}from"../search-input-BI1RjMuQ.js";import{ArrowLeftToLineIcon as v,ArrowRightToLineIcon as y,ChevronDown as b,ChevronUp as x,EllipsisIcon as S,LoaderIcon as C,PinOffIcon as w}from"lucide-react";import{cn as T}from"@customafk/react-toolkit/utils";import{memo as E,useCallback as D,useEffect as O,useMemo as k,useRef as A,useState as j}from"react";import{Fragment as M,jsx as N,jsxs as P}from"react/jsx-runtime";import{flexRender as F,getCoreRowModel as I,getFacetedRowModel as L,getFacetedUniqueValues as R,getFilteredRowModel as z,getSortedRowModel as B,useReactTable as V}from"@tanstack/react-table";import{useVirtualizer as H}from"@tanstack/react-virtual";const U=e=>{let t=e.getIsPinned();return{left:t===`left`?`${e.getStart(`left`)}px`:void 0,right:t===`right`?`${e.getAfter(`right`)}px`:void 0,position:t?`sticky`:`relative`,width:e.getSize(),zIndex:t?1:0}},W=E(({column:e})=>{let t=e.getIsSorted(),n=k(()=>({asc:N(x,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`}),desc:N(b,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`})}),[]);return t?n[t]:null});W.displayName=`SortingIndicator`;const G=E(({column:t})=>{let o=typeof t.columnDef.header==`string`?t.columnDef.header:`Column`,s=D(()=>t.pin(!1),[t]),c=D(()=>t.pin(`left`),[t]),l=D(()=>t.pin(`right`),[t]);return t.getCanPin()?t.getIsPinned()?N(e,{size:`icon`,variant:`ghost`,color:`secondary`,className:`hover:[&_svg]:text-secondary-foreground -mr-1 size-7 shadow-none`,"aria-label":`Unpin ${o} column`,title:`Unpin ${o} column`,onClick:s,children:N(w,{className:`opacity-60`,size:16,"aria-hidden":`true`})}):P(n,{children:[N(a,{asChild:!0,children:N(e,{size:`icon`,variant:`ghost`,color:`secondary`,className:`size-7 shadow-none`,"aria-label":`Pin options for ${o} column`,title:`Pin options for ${o} column`,children:N(S,{className:`opacity-60`,size:16,"aria-hidden":`true`})})}),P(r,{align:`end`,children:[P(i,{onClick:c,children:[N(v,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to left`]}),P(i,{onClick:l,children:[N(y,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to right`]})]})]}):null});G.displayName=`PinControls`;const K=E(({header:e})=>{let{column:t}=e,n=D(e=>{t.getCanSort()&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t.getToggleSortingHandler()?.(e))},[t]),r=t.getToggleSortingHandler();return e.isPlaceholder?N(`div`,{className:`flex items-center justify-between gap-2 truncate`}):P(`div`,{className:`flex items-center justify-between gap-2 truncate`,children:[P(`div`,{onClick:r,onKeyDown:n,tabIndex:t.getCanSort()?0:void 0,role:t.getCanSort()?`button`:void 0,className:T(t.getCanSort()&&`flex h-full cursor-pointer items-center justify-between gap-2 select-none`),children:[N(`span`,{className:`truncate`,children:F(t.columnDef.header,e.getContext())}),N(W,{column:t})]}),N(G,{column:t})]})});K.displayName=`HeaderContent`;const q=E(({row:e,measureElement:t,virtualRow:n,onClickRow:r})=>{let i=D(()=>{r&&r(e.id)},[e.id,r]);return N(m,{"data-index":n.index,ref:e=>t(e),className:`absolute flex w-full cursor-pointer focus:outline-none`,style:{transform:`translateY(${n.start}px)`},onClick:i,tabIndex:r?0:void 0,role:r?`button`:void 0,children:e.getVisibleCells().map(e=>{let t=e.column.getIsPinned(),n=t===`left`&&e.column.getIsLastColumn(`left`),r=t===`right`&&e.column.getIsFirstColumn(`right`);return N(u,{"data-pinned":t||void 0,"data-last-col":n?`left`:r?`right`:void 0,style:{...U(e.column),width:e.column.getSize()},className:T(`flex overflow-hidden py-2.5`,`data-pinned:bg-background/90`,`[&[data-pinned][data-last-col]]:border-border-weak`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right][data-last-col=right]]:border-l`),children:F(e.column.columnDef.cell,e.getContext())},e.id)})})});q.displayName=`DataTableRow`;const J=({table:e,isLoading:t,isFetching:n,allowFetchMore:r=!0,onClickRow:i,onFetchNextPage:a})=>{let h=A(null),{rows:g}=e.getRowModel(),_=H({count:g.length,getScrollElement:()=>h.current,estimateSize:()=>37,measureElement:e=>e?.getBoundingClientRect().height??void 0,overscan:5}),v=D(e=>{if(!e)return;let{scrollHeight:t,scrollTop:i,clientHeight:o}=e;t-i-o<500&&!n&&r&&a?.()},[r,n,a]),y=D(e=>{v(e.currentTarget)},[v]);return O(()=>{let e=setTimeout(()=>{v(h.current)},100);return()=>clearTimeout(e)},[v]),P(o,{ref:h,className:`border-border-weak bg-background relative w-full overflow-auto rounded-lg border`,onScroll:y,children:[P(c,{className:T(`!w-full`,`grid`,`border-separate border-spacing-0`,`[&_td]:border-border-weak`,`[&_th]:border-border-weak`,`[&_th]:border-b`,`[&_th]:border-b-border-weak`,`[&_tfoot_td]:border-t`),children:[N(p,{className:`sticky top-0 z-10 backdrop-blur-xs`,children:e.getHeaderGroups().map(e=>N(m,{className:`flex w-full border-none`,children:e.headers.map(e=>{let{column:t}=e,n=t.getIsPinned(),r=n===`left`&&t.getIsLastColumn(`left`),i=n===`right`&&t.getIsFirstColumn(`right`),a=n||void 0,o=r?`left`:i?`right`:void 0,s={width:e.getSize(),...U(e.column)};return N(f,{"data-pinned":a,"data-last-col":o,className:T(`relative flex h-9 font-semibold select-none`,`data-pinned:backdrop-blur-xs`,`data-pinned:bg-muted-weak`,`[&>.cursor-col-resize]:last:opacity-0`,`[&[data-pinned][data-last-col]]:border-border-weak`,`[&:not([data-pinned]):has(+[data-pinned])_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-last-col=left]_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right]:last-child_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=right][data-last-col=right]]:border-l`),colSpan:e.colSpan,style:s,children:N(K,{header:e})},e.id)})},e.id))}),N(l,{style:{height:`${_.getTotalSize()}px`},className:T(`relative grid w-full`,t&&`h-36`,g?.length===0&&`h-48`),children:t?N(m,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:N(u,{children:`loading...`})}):N(M,{children:_.getVirtualItems().map(e=>{let t=g[e.index],n=t?.id||(t.original&&`id`in t.original?String(t.original.id):null)||(t.original&&`uuid`in t.original?String(t.original.uuid):null);return N(q,{id:n??String(e.index),row:t,measureElement:_.measureElement,virtualRow:e,onClickRow:i},n??e.index)})})}),n&&N(d,{children:N(`div`,{className:`flex w-full justify-center py-2`,children:N(C,{size:16,className:`animate-spin`,"aria-label":`Loading more data`})})})]}),N(s,{orientation:`horizontal`})]})},Y=({onAdd:e,onRefresh:n})=>P(t,{justify:`between`,padding:`none`,width:`full`,className:`flex-0`,children:[N(`div`,{className:`max-sm:flex-1`,children:N(_,{placeholder:`Search...`})}),P(t,{wrap:!1,className:`flex-0 px-0`,children:[!!e&&N(h,{onClick:e}),N(g,{onClick:n})]})]});function X({data:e,totalCount:n,isLoading:r,isFetching:i,allowLoadMore:a,columns:o,onAdd:s,onRefresh:c,onClickRow:l,onFetchNextPage:u}){"use no memo";let[d,f]=j({}),[p,m]=j([]),[h,g]=j([]),[_,v]=j({}),y=k(()=>({columnPinning:{right:[`actions`,`update`,`delete`]}}),[]),b=V({initialState:y,data:e,columns:o,rowCount:n,columnResizeMode:`onChange`,enableColumnResizing:!1,enableMultiRowSelection:!1,getCoreRowModel:I(),getSortedRowModel:B(),getFilteredRowModel:z(),getFacetedRowModel:L(),getFacetedUniqueValues:R(),getRowId:e=>e.id||e.uuid,state:{rowSelection:d,sorting:p,columnVisibility:_,columnFilters:h},onRowSelectionChange:f,onSortingChange:m,onColumnVisibilityChange:v,onColumnFiltersChange:g});return P(t,{vertical:!0,wrap:!1,gap:`sm`,align:`start`,className:`size-full overflow-y-auto pt-1`,children:[N(Y,{onAdd:s,onRefresh:c}),N(t,{padding:`none`,vertical:!0,wrap:!1,width:`full`,className:`flex-1 overflow-auto pb-4`,children:N(J,{table:b,isLoading:r,isFetching:i,allowFetchMore:a,onClickRow:l,onFetchNextPage:u})})]})}export{X as Table};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Table","DataTableHeader: React.FC<Props>"],"sources":["../../packages/components/table/data-table.tsx","../../packages/components/table/data-table-header.tsx","../../packages/components/table/index.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, useRef } from 'react'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { type Column, flexRender, type Header, type Row, type Table as ReactTable } from '@tanstack/react-table'\nimport { ArrowLeftToLineIcon, ArrowRightToLineIcon, ChevronDown, ChevronUp, EllipsisIcon, LoaderIcon, PinOffIcon } from 'lucide-react'\n\nimport { Button } from '@/components/ui/button'\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/components/ui/dropdown-menu'\nimport { ScrollArea, ScrollBar } from '@/components/ui/scroll-area'\nimport { Table, TableBody, TableCell, TableFooter, TableHead, TableHeader, TableRow } from '@/components/ui/table'\nimport type { AnyEntity } from '@/types'\nimport { useVirtualizer, type VirtualItem } from '@tanstack/react-virtual'\n\n/**\n * Computes styles for pinned columns\n * @param column Table column\n * @returns CSS styles for pinned columns\n */\nconst getPinningStyles = (column: Column<AnyEntity>): React.CSSProperties => {\n const isPinned = column.getIsPinned()\n return {\n left: isPinned === 'left' ? `${column.getStart('left')}px` : undefined,\n right: isPinned === 'right' ? `${column.getAfter('right')}px` : undefined,\n position: isPinned ? 'sticky' : 'relative',\n width: column.getSize(),\n zIndex: isPinned ? 1 : 0,\n }\n}\n\nconst SortingIndicator = memo(({ column }: { column: Column<AnyEntity> }) => {\n const sortDirection = column.getIsSorted()\n\n const icons = useMemo(\n () => ({\n asc: <ChevronUp className=\"shrink-0 opacity-60\" size={16} strokeWidth={2} aria-hidden=\"true\" />,\n desc: <ChevronDown className=\"shrink-0 opacity-60\" size={16} strokeWidth={2} aria-hidden=\"true\" />,\n }),\n [],\n )\n\n return sortDirection ? icons[sortDirection] : null\n})\n\nSortingIndicator.displayName = 'SortingIndicator'\n\nconst PinControls = memo(({ column }: { column: Column<AnyEntity> }) => {\n const columnHeader = typeof column.columnDef.header === 'string' ? column.columnDef.header : 'Column'\n\n const handleUnpin = useCallback(() => column.pin(false), [column])\n const handlePinLeft = useCallback(() => column.pin('left'), [column])\n const handlePinRight = useCallback(() => column.pin('right'), [column])\n\n if (!column.getCanPin()) return null\n\n if (column.getIsPinned()) {\n return (\n <Button\n size=\"icon\"\n variant=\"ghost\"\n color=\"secondary\"\n className=\"hover:[&_svg]:text-secondary-foreground -mr-1 size-7 shadow-none\"\n aria-label={`Unpin ${columnHeader} column`}\n title={`Unpin ${columnHeader} column`}\n onClick={handleUnpin}\n >\n <PinOffIcon className=\"opacity-60\" size={16} aria-hidden=\"true\" />\n </Button>\n )\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n size=\"icon\"\n variant=\"ghost\"\n color=\"secondary\"\n className=\"size-7 shadow-none\"\n aria-label={`Pin options for ${columnHeader} column`}\n title={`Pin options for ${columnHeader} column`}\n >\n <EllipsisIcon className=\"opacity-60\" size={16} aria-hidden=\"true\" />\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n <DropdownMenuItem onClick={handlePinLeft}>\n <ArrowLeftToLineIcon size={16} className=\"opacity-60\" aria-hidden=\"true\" />\n Stick to left\n </DropdownMenuItem>\n <DropdownMenuItem onClick={handlePinRight}>\n <ArrowRightToLineIcon size={16} className=\"opacity-60\" aria-hidden=\"true\" />\n Stick to right\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n )\n})\n\nPinControls.displayName = 'PinControls'\n\nconst HeaderContent = memo(({ header }: { header: Header<AnyEntity, unknown> }) => {\n const { column } = header\n\n const handleSort = useCallback(\n (e: React.KeyboardEvent) => {\n if (column.getCanSort() && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault()\n column.getToggleSortingHandler()?.(e)\n }\n },\n [column],\n )\n\n const toggleSortHandler = column.getToggleSortingHandler()\n\n if (header.isPlaceholder) {\n return <div className=\"flex items-center justify-between gap-2 truncate\" />\n }\n\n return (\n <div className=\"flex items-center justify-between gap-2 truncate\">\n <div\n className={cn(column.getCanSort() && 'flex h-full cursor-pointer items-center justify-between gap-2 select-none')}\n onClick={toggleSortHandler}\n onKeyDown={handleSort}\n tabIndex={column.getCanSort() ? 0 : undefined}\n role={column.getCanSort() ? 'button' : undefined}\n >\n <span className=\"truncate\">{flexRender(column.columnDef.header, header.getContext())}</span>\n <SortingIndicator column={column} />\n </div>\n <PinControls column={column} />\n </div>\n )\n})\n\nHeaderContent.displayName = 'HeaderContent'\n\ntype DataTableRowProps = {\n id: string\n row: Row<AnyEntity>\n measureElement: (element?: HTMLTableRowElement | null | undefined) => void\n virtualRow: VirtualItem\n onClickRow?: (id: string) => void\n}\nconst DataTableRow = memo(({ row, measureElement, virtualRow, onClickRow }: DataTableRowProps) => {\n const handleClick = useCallback(() => {\n if (!onClickRow) return\n onClickRow(row.id)\n }, [row.id, onClickRow])\n return (\n <TableRow\n data-index={virtualRow.index}\n ref={(node) => measureElement(node)}\n className=\"absolute flex w-full cursor-pointer focus:outline-none\"\n style={{\n transform: `translateY(${virtualRow.start}px)`,\n }}\n onClick={handleClick}\n tabIndex={onClickRow ? 0 : undefined}\n role={onClickRow ? 'button' : undefined}\n >\n {row.getVisibleCells().map((cell) => {\n const isPinned = cell.column.getIsPinned()\n const isLastLeftPinned = isPinned === 'left' && cell.column.getIsLastColumn('left')\n const isFirstRightPinned = isPinned === 'right' && cell.column.getIsFirstColumn('right')\n\n return (\n <TableCell\n key={cell.id}\n data-pinned={isPinned || undefined}\n data-last-col={isLastLeftPinned ? 'left' : isFirstRightPinned ? 'right' : undefined}\n style={{\n ...getPinningStyles(cell.column),\n width: cell.column.getSize(),\n }}\n className={cn(\n 'flex overflow-hidden py-2.5',\n 'data-pinned:bg-background/90',\n '[&[data-pinned][data-last-col]]:border-border-weak',\n '[&[data-pinned=left][data-last-col=left]]:border-r',\n '[&[data-pinned=right][data-last-col=right]]:border-l',\n )}\n >\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n )\n })}\n </TableRow>\n )\n})\nDataTableRow.displayName = 'DataTableRow'\n\ninterface DataTableProps {\n table: ReactTable<AnyEntity>\n columnsLength?: number\n isLoading?: boolean\n isFetching?: boolean\n allowFetchMore?: boolean\n onClickRow?: (id: string) => void\n onFetchNextPage?: () => void\n}\n\nexport const DataTable = ({ table, isLoading, isFetching, allowFetchMore = true, onClickRow, onFetchNextPage }: DataTableProps) => {\n // 'use no memo'\n\n const tableContainerRef = useRef<HTMLDivElement>(null)\n\n const { rows } = table.getRowModel()\n\n // Configure virtualization for performance with large datasets\n const rowVirtualizer = useVirtualizer<HTMLDivElement, HTMLTableRowElement>({\n count: rows.length,\n getScrollElement: () => tableContainerRef.current,\n estimateSize: () => 37, // estimated row height\n measureElement: (element) => element?.getBoundingClientRect().height ?? undefined,\n overscan: 5, // Render additional rows beyond viewport for smoother scrolling\n })\n\n // Fetch more data when user approaches bottom of table\n const fetchMoreOnBottomReached = useCallback(\n (refEl: HTMLDivElement | null) => {\n if (!refEl) return\n const { scrollHeight, scrollTop, clientHeight } = refEl\n // Threshold of 120px from bottom to trigger load more\n if (scrollHeight - scrollTop - clientHeight < 500 && !isFetching && allowFetchMore) {\n onFetchNextPage?.()\n }\n },\n [allowFetchMore, isFetching, onFetchNextPage],\n )\n\n // Handle scroll events to check if more data should be loaded\n const handleScroll = useCallback(\n (ev: React.UIEvent<HTMLDivElement>) => {\n fetchMoreOnBottomReached(ev.currentTarget)\n },\n [fetchMoreOnBottomReached],\n )\n\n // Check for more data on mount and when dependencies change\n useEffect(() => {\n const timer = setTimeout(() => {\n fetchMoreOnBottomReached(tableContainerRef.current)\n }, 100)\n return () => clearTimeout(timer)\n }, [fetchMoreOnBottomReached])\n\n return (\n <ScrollArea ref={tableContainerRef} className=\"border-border-weak bg-background relative w-full overflow-auto rounded-lg border\" onScroll={handleScroll}>\n <Table\n className={cn(\n '!w-full',\n 'grid',\n 'border-separate border-spacing-0',\n '[&_td]:border-border-weak',\n '[&_th]:border-border-weak',\n '[&_th]:border-b',\n '[&_th]:border-b-border-weak',\n '[&_tfoot_td]:border-t',\n )}\n >\n <TableHeader className=\"sticky top-0 z-10 backdrop-blur-xs\">\n {table.getHeaderGroups().map((headerGroup) => (\n <TableRow key={headerGroup.id} className=\"flex w-full border-none\">\n {headerGroup.headers.map((header) => {\n const { column } = header\n const isPinned = column.getIsPinned()\n const isLastLeftPinned = isPinned === 'left' && column.getIsLastColumn('left')\n const isFirstRightPinned = isPinned === 'right' && column.getIsFirstColumn('right')\n const pinningState = isPinned || undefined\n const lastColState = isLastLeftPinned ? 'left' : isFirstRightPinned ? 'right' : undefined\n\n const headerStyles = {\n width: header.getSize(),\n ...getPinningStyles(header.column),\n }\n\n return (\n <TableHead\n key={header.id}\n data-pinned={pinningState}\n data-last-col={lastColState}\n className={cn(\n 'relative flex h-9 font-semibold select-none',\n 'data-pinned:backdrop-blur-xs',\n 'data-pinned:bg-muted-weak',\n '[&>.cursor-col-resize]:last:opacity-0',\n '[&[data-pinned][data-last-col]]:border-border-weak',\n '[&:not([data-pinned]):has(+[data-pinned])_div.cursor-col-resize:last-child]:opacity-0',\n '[&[data-last-col=left]_div.cursor-col-resize:last-child]:opacity-0',\n '[&[data-pinned=left][data-last-col=left]]:border-r',\n '[&[data-pinned=right]:last-child_div.cursor-col-resize:last-child]:opacity-0',\n '[&[data-pinned=right][data-last-col=right]]:border-l',\n )}\n colSpan={header.colSpan}\n style={headerStyles}\n >\n <HeaderContent header={header} />\n </TableHead>\n )\n })}\n </TableRow>\n ))}\n </TableHeader>\n\n <TableBody\n style={{\n height: `${rowVirtualizer.getTotalSize()}px`, //tells scrollbar how big the table is\n }}\n className={cn('relative grid w-full', isLoading && 'h-36', rows?.length === 0 && 'h-48')}\n >\n {isLoading ? (\n <TableRow className=\"absolute top-9 flex h-36 w-full items-center justify-center\">\n <TableCell>loading...</TableCell>\n </TableRow>\n ) : (\n <>\n {rowVirtualizer.getVirtualItems().map((virtualRow) => {\n const row = rows[virtualRow.index]\n const rowId =\n row?.id ||\n (row.original && 'id' in row.original ? String(row.original.id) : null) ||\n (row.original && 'uuid' in row.original ? String(row.original.uuid) : null)\n return (\n <DataTableRow\n key={rowId ?? virtualRow.index}\n id={rowId ?? String(virtualRow.index)}\n row={row}\n measureElement={rowVirtualizer.measureElement}\n virtualRow={virtualRow}\n onClickRow={onClickRow}\n />\n )\n })}\n </>\n )}\n </TableBody>\n {isFetching && (\n <TableFooter>\n <div className=\"flex w-full justify-center py-2\">\n <LoaderIcon size={16} className=\"animate-spin\" aria-label=\"Loading more data\" />\n </div>\n </TableFooter>\n )}\n </Table>\n <ScrollBar orientation=\"horizontal\" />\n </ScrollArea>\n )\n}\n","import { Flex } from '@/components/layouts/flex'\nimport { AddNewBtn } from '@/components/ui/buttons/add-new'\nimport { RefreshBtn } from '@/components/ui/buttons/refresh'\nimport { SearchInput } from '@/components/ui/inputs/search-input'\n\ntype Props = {\n onAdd?: () => void\n onRefresh?: () => void\n}\n\nexport const DataTableHeader: React.FC<Props> = ({ onAdd, onRefresh }) => {\n return (\n <Flex justify=\"between\" padding=\"none\" width=\"full\" className=\"flex-0\">\n <div className=\"max-sm:flex-1\">\n <SearchInput placeholder=\"Search...\" />\n </div>\n <Flex wrap={false} className=\"flex-0 px-0\">\n {!!onAdd && <AddNewBtn onClick={onAdd} />}\n <RefreshBtn onClick={onRefresh} />\n </Flex>\n </Flex>\n )\n}\n","import { useMemo, useState } from 'react'\n\nimport type { ColumnDef, ColumnFiltersState, RowSelectionState, SortingState, VisibilityState } from '@tanstack/react-table'\nimport { getCoreRowModel, getFacetedRowModel, getFacetedUniqueValues, getFilteredRowModel, getSortedRowModel, useReactTable } from '@tanstack/react-table'\n\nimport { DataTable } from './data-table'\nimport { DataTableHeader } from './data-table-header'\nimport { Flex } from '../layouts/flex'\n\ntype Props<T> = {\n data: T[]\n totalCount?: number\n isLoading?: boolean\n isFetching?: boolean\n allowLoadMore?: boolean\n columns: ColumnDef<T>[]\n onAdd?: () => void\n onRefresh?: () => void\n onClickRow?: (id: string) => void\n onFetchNextPage?: () => void\n}\nexport function Table<T extends Record<string, unknown>>({\n data,\n totalCount,\n isLoading,\n isFetching,\n allowLoadMore,\n columns,\n onAdd,\n onRefresh,\n onClickRow,\n onFetchNextPage,\n}: Props<T>) {\n 'use no memo'\n\n const [rowSelection, setRowSelection] = useState<RowSelectionState>({})\n const [sorting, setSorting] = useState<SortingState>([])\n const [columnFilters, setColumnFilters] = useState<ColumnFiltersState>([])\n const [columnVisibility, setColumnVisibility] = useState<VisibilityState>({})\n\n const initialState = useMemo(\n () => ({\n columnPinning: { right: ['actions', 'update', 'delete'] },\n }),\n [],\n )\n\n const table = useReactTable<T>({\n initialState,\n data,\n columns,\n rowCount: totalCount,\n columnResizeMode: 'onChange',\n enableColumnResizing: false,\n enableMultiRowSelection: false,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: getSortedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFacetedUniqueValues: getFacetedUniqueValues(),\n getRowId: (row) => (row.id as string) || (row.uuid as string),\n state: {\n rowSelection,\n sorting,\n columnVisibility,\n columnFilters,\n },\n onRowSelectionChange: setRowSelection,\n onSortingChange: setSorting,\n onColumnVisibilityChange: setColumnVisibility,\n onColumnFiltersChange: setColumnFilters,\n })\n\n return (\n <Flex vertical wrap={false} gap=\"sm\" align=\"start\" className=\"size-full overflow-y-auto pt-1\">\n <DataTableHeader onAdd={onAdd} onRefresh={onRefresh} />\n <Flex padding=\"none\" vertical wrap={false} width=\"full\" className=\"flex-1 overflow-auto pb-4\">\n <DataTable\n table={table}\n isLoading={isLoading}\n isFetching={isFetching}\n allowFetchMore={allowLoadMore}\n onClickRow={onClickRow}\n onFetchNextPage={onFetchNextPage}\n />\n </Flex>\n </Flex>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["Table","DataTableHeader: React.FC<Props>"],"sources":["../../packages/components/table/data-table.tsx","../../packages/components/table/data-table-header.tsx","../../packages/components/table/index.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, useRef } from 'react';\n\nimport { type Column, flexRender, type Header, type Table as ReactTable, type Row } from '@tanstack/react-table';\nimport { ArrowLeftToLineIcon, ArrowRightToLineIcon, ChevronDown, ChevronUp, EllipsisIcon, LoaderIcon, PinOffIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { useVirtualizer, type VirtualItem } from '@tanstack/react-virtual';\nimport { Button } from '@/components/ui/button';\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/components/ui/dropdown-menu';\nimport { ScrollArea, ScrollBar } from '@/components/ui/scroll-area';\nimport { Table, TableBody, TableCell, TableFooter, TableHead, TableHeader, TableRow } from '@/components/ui/table';\nimport type { AnyEntity } from '@/types';\n\n/**\n * Computes styles for pinned columns\n * @param column Table column\n * @returns CSS styles for pinned columns\n */\nconst getPinningStyles = (column: Column<AnyEntity>): React.CSSProperties => {\n const isPinned = column.getIsPinned();\n return {\n left: isPinned === 'left' ? `${column.getStart('left')}px` : undefined,\n right: isPinned === 'right' ? `${column.getAfter('right')}px` : undefined,\n position: isPinned ? 'sticky' : 'relative',\n width: column.getSize(),\n zIndex: isPinned ? 1 : 0,\n };\n};\n\nconst SortingIndicator = memo(({ column }: { column: Column<AnyEntity> }) => {\n const sortDirection = column.getIsSorted();\n\n const icons = useMemo(\n () => ({\n asc: <ChevronUp className=\"shrink-0 opacity-60\" size={16} strokeWidth={2} aria-hidden=\"true\" />,\n desc: <ChevronDown className=\"shrink-0 opacity-60\" size={16} strokeWidth={2} aria-hidden=\"true\" />,\n }),\n []\n );\n\n return sortDirection ? icons[sortDirection] : null;\n});\n\nSortingIndicator.displayName = 'SortingIndicator';\n\nconst PinControls = memo(({ column }: { column: Column<AnyEntity> }) => {\n const columnHeader = typeof column.columnDef.header === 'string' ? column.columnDef.header : 'Column';\n\n const handleUnpin = useCallback(() => column.pin(false), [column]);\n const handlePinLeft = useCallback(() => column.pin('left'), [column]);\n const handlePinRight = useCallback(() => column.pin('right'), [column]);\n\n if (!column.getCanPin()) return null;\n\n if (column.getIsPinned()) {\n return (\n <Button\n size=\"icon\"\n variant=\"ghost\"\n color=\"secondary\"\n className=\"hover:[&_svg]:text-secondary-foreground -mr-1 size-7 shadow-none\"\n aria-label={`Unpin ${columnHeader} column`}\n title={`Unpin ${columnHeader} column`}\n onClick={handleUnpin}\n >\n <PinOffIcon className=\"opacity-60\" size={16} aria-hidden=\"true\" />\n </Button>\n );\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n size=\"icon\"\n variant=\"ghost\"\n color=\"secondary\"\n className=\"size-7 shadow-none\"\n aria-label={`Pin options for ${columnHeader} column`}\n title={`Pin options for ${columnHeader} column`}\n >\n <EllipsisIcon className=\"opacity-60\" size={16} aria-hidden=\"true\" />\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n <DropdownMenuItem onClick={handlePinLeft}>\n <ArrowLeftToLineIcon size={16} className=\"opacity-60\" aria-hidden=\"true\" />\n Stick to left\n </DropdownMenuItem>\n <DropdownMenuItem onClick={handlePinRight}>\n <ArrowRightToLineIcon size={16} className=\"opacity-60\" aria-hidden=\"true\" />\n Stick to right\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n );\n});\n\nPinControls.displayName = 'PinControls';\n\nconst HeaderContent = memo(({ header }: { header: Header<AnyEntity, unknown> }) => {\n const { column } = header;\n\n const handleSort = useCallback(\n (e: React.KeyboardEvent) => {\n if (column.getCanSort() && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n column.getToggleSortingHandler()?.(e);\n }\n },\n [column]\n );\n\n const toggleSortHandler = column.getToggleSortingHandler();\n\n if (header.isPlaceholder) {\n return <div className=\"flex items-center justify-between gap-2 truncate\" />;\n }\n\n return (\n <div className=\"flex items-center justify-between gap-2 truncate\">\n <div\n onClick={toggleSortHandler}\n onKeyDown={handleSort}\n tabIndex={column.getCanSort() ? 0 : undefined}\n role={column.getCanSort() ? 'button' : undefined}\n className={cn(column.getCanSort() && 'flex h-full cursor-pointer items-center justify-between gap-2 select-none')}\n >\n <span className=\"truncate\">{flexRender(column.columnDef.header, header.getContext())}</span>\n <SortingIndicator column={column} />\n </div>\n <PinControls column={column} />\n </div>\n );\n});\n\nHeaderContent.displayName = 'HeaderContent';\n\ntype DataTableRowProps = {\n id: string;\n row: Row<AnyEntity>;\n measureElement: (element?: HTMLTableRowElement | null | undefined) => void;\n virtualRow: VirtualItem;\n onClickRow?: (id: string) => void;\n};\nconst DataTableRow = memo(({ row, measureElement, virtualRow, onClickRow }: DataTableRowProps) => {\n const handleClick = useCallback(() => {\n if (!onClickRow) return;\n onClickRow(row.id);\n }, [row.id, onClickRow]);\n return (\n <TableRow\n data-index={virtualRow.index}\n ref={node => measureElement(node)}\n className=\"absolute flex w-full cursor-pointer focus:outline-none\"\n style={{\n transform: `translateY(${virtualRow.start}px)`,\n }}\n onClick={handleClick}\n tabIndex={onClickRow ? 0 : undefined}\n role={onClickRow ? 'button' : undefined}\n >\n {row.getVisibleCells().map(cell => {\n const isPinned = cell.column.getIsPinned();\n const isLastLeftPinned = isPinned === 'left' && cell.column.getIsLastColumn('left');\n const isFirstRightPinned = isPinned === 'right' && cell.column.getIsFirstColumn('right');\n\n return (\n <TableCell\n key={cell.id}\n data-pinned={isPinned || undefined}\n data-last-col={isLastLeftPinned ? 'left' : isFirstRightPinned ? 'right' : undefined}\n style={{\n ...getPinningStyles(cell.column),\n width: cell.column.getSize(),\n }}\n className={cn(\n 'flex overflow-hidden py-2.5',\n 'data-pinned:bg-background/90',\n '[&[data-pinned][data-last-col]]:border-border-weak',\n '[&[data-pinned=left][data-last-col=left]]:border-r',\n '[&[data-pinned=right][data-last-col=right]]:border-l'\n )}\n >\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n );\n })}\n </TableRow>\n );\n});\nDataTableRow.displayName = 'DataTableRow';\n\ninterface DataTableProps {\n table: ReactTable<AnyEntity>;\n columnsLength?: number;\n isLoading?: boolean;\n isFetching?: boolean;\n allowFetchMore?: boolean;\n onClickRow?: (id: string) => void;\n onFetchNextPage?: () => void;\n}\n\nexport const DataTable = ({ table, isLoading, isFetching, allowFetchMore = true, onClickRow, onFetchNextPage }: DataTableProps) => {\n // 'use no memo'\n\n const tableContainerRef = useRef<HTMLDivElement>(null);\n\n const { rows } = table.getRowModel();\n\n // Configure virtualization for performance with large datasets\n const rowVirtualizer = useVirtualizer<HTMLDivElement, HTMLTableRowElement>({\n count: rows.length,\n getScrollElement: () => tableContainerRef.current,\n estimateSize: () => 37, // estimated row height\n measureElement: element => element?.getBoundingClientRect().height ?? undefined,\n overscan: 5, // Render additional rows beyond viewport for smoother scrolling\n });\n\n // Fetch more data when user approaches bottom of table\n const fetchMoreOnBottomReached = useCallback(\n (refEl: HTMLDivElement | null) => {\n if (!refEl) return;\n const { scrollHeight, scrollTop, clientHeight } = refEl;\n // Threshold of 120px from bottom to trigger load more\n if (scrollHeight - scrollTop - clientHeight < 500 && !isFetching && allowFetchMore) {\n onFetchNextPage?.();\n }\n },\n [allowFetchMore, isFetching, onFetchNextPage]\n );\n\n // Handle scroll events to check if more data should be loaded\n const handleScroll = useCallback(\n (ev: React.UIEvent<HTMLDivElement>) => {\n fetchMoreOnBottomReached(ev.currentTarget);\n },\n [fetchMoreOnBottomReached]\n );\n\n // Check for more data on mount and when dependencies change\n useEffect(() => {\n const timer = setTimeout(() => {\n fetchMoreOnBottomReached(tableContainerRef.current);\n }, 100);\n return () => clearTimeout(timer);\n }, [fetchMoreOnBottomReached]);\n\n return (\n <ScrollArea ref={tableContainerRef} className=\"border-border-weak bg-background relative w-full overflow-auto rounded-lg border\" onScroll={handleScroll}>\n <Table\n className={cn(\n '!w-full',\n 'grid',\n 'border-separate border-spacing-0',\n '[&_td]:border-border-weak',\n '[&_th]:border-border-weak',\n '[&_th]:border-b',\n '[&_th]:border-b-border-weak',\n '[&_tfoot_td]:border-t'\n )}\n >\n <TableHeader className=\"sticky top-0 z-10 backdrop-blur-xs\">\n {table.getHeaderGroups().map(headerGroup => (\n <TableRow key={headerGroup.id} className=\"flex w-full border-none\">\n {headerGroup.headers.map(header => {\n const { column } = header;\n const isPinned = column.getIsPinned();\n const isLastLeftPinned = isPinned === 'left' && column.getIsLastColumn('left');\n const isFirstRightPinned = isPinned === 'right' && column.getIsFirstColumn('right');\n const pinningState = isPinned || undefined;\n const lastColState = isLastLeftPinned ? 'left' : isFirstRightPinned ? 'right' : undefined;\n\n const headerStyles = {\n width: header.getSize(),\n ...getPinningStyles(header.column),\n };\n\n return (\n <TableHead\n key={header.id}\n data-pinned={pinningState}\n data-last-col={lastColState}\n className={cn(\n 'relative flex h-9 font-semibold select-none',\n 'data-pinned:backdrop-blur-xs',\n 'data-pinned:bg-muted-weak',\n '[&>.cursor-col-resize]:last:opacity-0',\n '[&[data-pinned][data-last-col]]:border-border-weak',\n '[&:not([data-pinned]):has(+[data-pinned])_div.cursor-col-resize:last-child]:opacity-0',\n '[&[data-last-col=left]_div.cursor-col-resize:last-child]:opacity-0',\n '[&[data-pinned=left][data-last-col=left]]:border-r',\n '[&[data-pinned=right]:last-child_div.cursor-col-resize:last-child]:opacity-0',\n '[&[data-pinned=right][data-last-col=right]]:border-l'\n )}\n colSpan={header.colSpan}\n style={headerStyles}\n >\n <HeaderContent header={header} />\n </TableHead>\n );\n })}\n </TableRow>\n ))}\n </TableHeader>\n\n <TableBody\n style={{\n height: `${rowVirtualizer.getTotalSize()}px`, //tells scrollbar how big the table is\n }}\n className={cn('relative grid w-full', isLoading && 'h-36', rows?.length === 0 && 'h-48')}\n >\n {isLoading ? (\n <TableRow className=\"absolute top-9 flex h-36 w-full items-center justify-center\">\n <TableCell>loading...</TableCell>\n </TableRow>\n ) : (\n <>\n {rowVirtualizer.getVirtualItems().map(virtualRow => {\n const row = rows[virtualRow.index];\n const rowId =\n row?.id ||\n (row.original && 'id' in row.original ? String(row.original.id) : null) ||\n (row.original && 'uuid' in row.original ? String(row.original.uuid) : null);\n return (\n <DataTableRow\n key={rowId ?? virtualRow.index}\n id={rowId ?? String(virtualRow.index)}\n row={row}\n measureElement={rowVirtualizer.measureElement}\n virtualRow={virtualRow}\n onClickRow={onClickRow}\n />\n );\n })}\n </>\n )}\n </TableBody>\n {isFetching && (\n <TableFooter>\n <div className=\"flex w-full justify-center py-2\">\n <LoaderIcon size={16} className=\"animate-spin\" aria-label=\"Loading more data\" />\n </div>\n </TableFooter>\n )}\n </Table>\n <ScrollBar orientation=\"horizontal\" />\n </ScrollArea>\n );\n};\n","import { Flex } from '@/components/layouts/flex';\nimport { AddNewBtn } from '@/components/ui/buttons/add-new';\nimport { RefreshBtn } from '@/components/ui/buttons/refresh';\nimport { SearchInput } from '@/components/ui/inputs/search-input';\n\ntype Props = {\n onAdd?: () => void;\n onRefresh?: () => void;\n};\n\nexport const DataTableHeader: React.FC<Props> = ({ onAdd, onRefresh }) => {\n return (\n <Flex justify=\"between\" padding=\"none\" width=\"full\" className=\"flex-0\">\n <div className=\"max-sm:flex-1\">\n <SearchInput placeholder=\"Search...\" />\n </div>\n <Flex wrap={false} className=\"flex-0 px-0\">\n {!!onAdd && <AddNewBtn onClick={onAdd} />}\n <RefreshBtn onClick={onRefresh} />\n </Flex>\n </Flex>\n );\n};\n","import { useMemo, useState } from 'react';\n\nimport type { ColumnDef, ColumnFiltersState, RowSelectionState, SortingState, VisibilityState } from '@tanstack/react-table';\nimport { getCoreRowModel, getFacetedRowModel, getFacetedUniqueValues, getFilteredRowModel, getSortedRowModel, useReactTable } from '@tanstack/react-table';\n\nimport { DataTable } from './data-table';\nimport { DataTableHeader } from './data-table-header';\nimport { Flex } from '../layouts/flex';\n\ntype Props<T> = {\n data: T[];\n totalCount?: number;\n isLoading?: boolean;\n isFetching?: boolean;\n allowLoadMore?: boolean;\n columns: ColumnDef<T>[];\n onAdd?: () => void;\n onRefresh?: () => void;\n onClickRow?: (id: string) => void;\n onFetchNextPage?: () => void;\n};\nexport function Table<T extends Record<string, unknown>>({\n data,\n totalCount,\n isLoading,\n isFetching,\n allowLoadMore,\n columns,\n onAdd,\n onRefresh,\n onClickRow,\n onFetchNextPage,\n}: Props<T>) {\n 'use no memo';\n\n const [rowSelection, setRowSelection] = useState<RowSelectionState>({});\n const [sorting, setSorting] = useState<SortingState>([]);\n const [columnFilters, setColumnFilters] = useState<ColumnFiltersState>([]);\n const [columnVisibility, setColumnVisibility] = useState<VisibilityState>({});\n\n const initialState = useMemo(\n () => ({\n columnPinning: { right: ['actions', 'update', 'delete'] },\n }),\n []\n );\n\n const table = useReactTable<T>({\n initialState,\n data,\n columns,\n rowCount: totalCount,\n columnResizeMode: 'onChange',\n enableColumnResizing: false,\n enableMultiRowSelection: false,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: getSortedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFacetedUniqueValues: getFacetedUniqueValues(),\n getRowId: row => (row.id as string) || (row.uuid as string),\n state: {\n rowSelection,\n sorting,\n columnVisibility,\n columnFilters,\n },\n onRowSelectionChange: setRowSelection,\n onSortingChange: setSorting,\n onColumnVisibilityChange: setColumnVisibility,\n onColumnFiltersChange: setColumnFilters,\n });\n\n return (\n <Flex vertical wrap={false} gap=\"sm\" align=\"start\" className=\"size-full overflow-y-auto pt-1\">\n <DataTableHeader onAdd={onAdd} onRefresh={onRefresh} />\n <Flex padding=\"none\" vertical wrap={false} width=\"full\" className=\"flex-1 overflow-auto pb-4\">\n <DataTable\n table={table}\n isLoading={isLoading}\n isFetching={isFetching}\n allowFetchMore={allowLoadMore}\n onClickRow={onClickRow}\n onFetchNextPage={onFetchNextPage}\n />\n </Flex>\n </Flex>\n );\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";function n({className:n,...r}){return t(`table`,{"data-slot":`table`,className:e(`w-full caption-bottom text-sm`,n),...r})}function r({className:n,...r}){return t(`thead`,{"data-slot":`table-header`,className:e(`bg-muted-muted border-border-weak`,`[&_tr]:border-b`,`[&_tr:not(:last-child)_td]:border-b`,`[&_tr_th:not(:last-child)]:border-r`,`[&_tr_th:not(:last-child)]:border-r-border-weak`,n),...r})}function i({className:n,...r}){return t(`tbody`,{"data-slot":`table-body`,className:e(`[&_tr:last-child]:border-0`,n),...r})}function a({className:n,...r}){return t(`tfoot`,{"data-slot":`table-footer`,className:e(`border-border-weak border-t font-medium [&>tr]:last:border-b-0`,n),...r})}function o({className:n,...r}){return t(`tr`,{"data-slot":`table-row`,className:e(`hover:bg-muted-muted/50 active:bg-muted-muted data-[state=selected]:bg-muted border-border-weak border-b transition-colors`,n),...r})}function s({className:n,...r}){return t(`th`,{"data-slot":`table-head`,className:e(`text-text-positive-weak`,`h-10 px-2 text-left align-middle font-medium whitespace-nowrap`,`[&:has([role=checkbox])]:pr-0`,`[&>[role=checkbox]]:translate-y-0.5`,n),...r})}function c({className:n,...r}){return t(`td`,{"data-slot":`table-cell`,className:e(`p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5`,n),...r})}function l({className:n,...r}){return t(`caption`,{"data-slot":`table-caption`,className:e(`text-text-positive-muted mt-4 text-sm`,n),...r})}export{n as Table,i as TableBody,l as TableCaption,c as TableCell,a as TableFooter,s as TableHead,r as TableHeader,o as TableRow};
2
- //# sourceMappingURL=table-CKNAm27W.js.map
2
+ //# sourceMappingURL=table-Cd75vfQ4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-Cd75vfQ4.js","names":[],"sources":["../packages/components/ui/table.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nfunction Table({ className, ...props }: React.ComponentProps<'table'>) {\n return (\n // <ScrollArea data-slot=\"table-conatiner\" className=\"border-border-weak bg-background relative w-full overflow-x-auto rounded-lg border\">\n <table data-slot=\"table\" className={cn('w-full caption-bottom text-sm', className)} {...props} />\n // <ScrollBar orientation=\"vertical\" className=\"z-5 w-2\" />\n // <ScrollBar orientation=\"horizontal\" className=\"absolute right-0 bottom-0 left-0 h-2\" />\n // </ScrollArea>\n );\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<'thead'>) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\n 'bg-muted-muted border-border-weak',\n '[&_tr]:border-b',\n '[&_tr:not(:last-child)_td]:border-b',\n '[&_tr_th:not(:last-child)]:border-r',\n '[&_tr_th:not(:last-child)]:border-r-border-weak',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<'tbody'>) {\n return <tbody data-slot=\"table-body\" className={cn('[&_tr:last-child]:border-0', className)} {...props} />;\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<'tfoot'>) {\n return <tfoot data-slot=\"table-footer\" className={cn('border-border-weak border-t font-medium [&>tr]:last:border-b-0', className)} {...props} />;\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<'tr'>) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn('hover:bg-muted-muted/50 active:bg-muted-muted data-[state=selected]:bg-muted border-border-weak border-b transition-colors', className)}\n {...props}\n />\n );\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<'th'>) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n 'text-text-positive-weak',\n 'h-10 px-2 text-left align-middle font-medium whitespace-nowrap',\n '[&:has([role=checkbox])]:pr-0',\n '[&>[role=checkbox]]:translate-y-0.5',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<'td'>) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn('p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5', className)}\n {...props}\n />\n );\n}\n\nfunction TableCaption({ className, ...props }: React.ComponentProps<'caption'>) {\n return <caption data-slot=\"table-caption\" className={cn('text-text-positive-muted mt-4 text-sm', className)} {...props} />;\n}\n\nexport { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow };\n"],"mappings":"4FAGA,SAAS,EAAM,CAAE,YAAW,GAAG,GAAwC,CACrE,OAEE,EAAC,QAAA,CAAM,YAAU,QAAQ,UAAW,EAAG,gCAAiC,EAAU,CAAE,GAAI,GAAS,CAOrG,SAAS,EAAY,CAAE,YAAW,GAAG,GAAwC,CAC3E,OACE,EAAC,QAAA,CACC,YAAU,eACV,UAAW,EACT,oCACA,kBACA,sCACA,sCACA,kDACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAwC,CACzE,OAAO,EAAC,QAAA,CAAM,YAAU,aAAa,UAAW,EAAG,6BAA8B,EAAU,CAAE,GAAI,GAAS,CAG5G,SAAS,EAAY,CAAE,YAAW,GAAG,GAAwC,CAC3E,OAAO,EAAC,QAAA,CAAM,YAAU,eAAe,UAAW,EAAG,iEAAkE,EAAU,CAAE,GAAI,GAAS,CAGlJ,SAAS,EAAS,CAAE,YAAW,GAAG,GAAqC,CACrE,OACE,EAAC,KAAA,CACC,YAAU,YACV,UAAW,EAAG,6HAA8H,EAAU,CACtJ,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAqC,CACtE,OACE,EAAC,KAAA,CACC,YAAU,aACV,UAAW,EACT,0BACA,iEACA,gCACA,sCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAqC,CACtE,OACE,EAAC,KAAA,CACC,YAAU,aACV,UAAW,EAAG,uGAAwG,EAAU,CAChI,GAAI,GACJ,CAIN,SAAS,EAAa,CAAE,YAAW,GAAG,GAA0C,CAC9E,OAAO,EAAC,UAAA,CAAQ,YAAU,gBAAgB,UAAW,EAAG,wCAAyC,EAAU,CAAE,GAAI,GAAS"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`);let t=require(`@customafk/react-toolkit/utils`);t=e.__toESM(t);let n=require(`react/jsx-runtime`);n=e.__toESM(n);function r({className:e,...r}){return(0,n.jsx)(`table`,{"data-slot":`table`,className:(0,t.cn)(`w-full caption-bottom text-sm`,e),...r})}function i({className:e,...r}){return(0,n.jsx)(`thead`,{"data-slot":`table-header`,className:(0,t.cn)(`bg-muted-muted border-border-weak`,`[&_tr]:border-b`,`[&_tr:not(:last-child)_td]:border-b`,`[&_tr_th:not(:last-child)]:border-r`,`[&_tr_th:not(:last-child)]:border-r-border-weak`,e),...r})}function a({className:e,...r}){return(0,n.jsx)(`tbody`,{"data-slot":`table-body`,className:(0,t.cn)(`[&_tr:last-child]:border-0`,e),...r})}function o({className:e,...r}){return(0,n.jsx)(`tfoot`,{"data-slot":`table-footer`,className:(0,t.cn)(`border-border-weak border-t font-medium [&>tr]:last:border-b-0`,e),...r})}function s({className:e,...r}){return(0,n.jsx)(`tr`,{"data-slot":`table-row`,className:(0,t.cn)(`hover:bg-muted-muted/50 active:bg-muted-muted data-[state=selected]:bg-muted border-border-weak border-b transition-colors`,e),...r})}function c({className:e,...r}){return(0,n.jsx)(`th`,{"data-slot":`table-head`,className:(0,t.cn)(`text-text-positive-weak`,`h-10 px-2 text-left align-middle font-medium whitespace-nowrap`,`[&:has([role=checkbox])]:pr-0`,`[&>[role=checkbox]]:translate-y-0.5`,e),...r})}function l({className:e,...r}){return(0,n.jsx)(`td`,{"data-slot":`table-cell`,className:(0,t.cn)(`p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5`,e),...r})}function u({className:e,...r}){return(0,n.jsx)(`caption`,{"data-slot":`table-caption`,className:(0,t.cn)(`text-text-positive-muted mt-4 text-sm`,e),...r})}Object.defineProperty(exports,`Table`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`TableBody`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`TableCaption`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`TableCell`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`TableFooter`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`TableHead`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`TableHeader`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`TableRow`,{enumerable:!0,get:function(){return s}});
2
+ //# sourceMappingURL=table-fp-VtGFA.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-fp-VtGFA.cjs","names":[],"sources":["../packages/components/ui/table.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nfunction Table({ className, ...props }: React.ComponentProps<'table'>) {\n return (\n // <ScrollArea data-slot=\"table-conatiner\" className=\"border-border-weak bg-background relative w-full overflow-x-auto rounded-lg border\">\n <table data-slot=\"table\" className={cn('w-full caption-bottom text-sm', className)} {...props} />\n // <ScrollBar orientation=\"vertical\" className=\"z-5 w-2\" />\n // <ScrollBar orientation=\"horizontal\" className=\"absolute right-0 bottom-0 left-0 h-2\" />\n // </ScrollArea>\n );\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<'thead'>) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\n 'bg-muted-muted border-border-weak',\n '[&_tr]:border-b',\n '[&_tr:not(:last-child)_td]:border-b',\n '[&_tr_th:not(:last-child)]:border-r',\n '[&_tr_th:not(:last-child)]:border-r-border-weak',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<'tbody'>) {\n return <tbody data-slot=\"table-body\" className={cn('[&_tr:last-child]:border-0', className)} {...props} />;\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<'tfoot'>) {\n return <tfoot data-slot=\"table-footer\" className={cn('border-border-weak border-t font-medium [&>tr]:last:border-b-0', className)} {...props} />;\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<'tr'>) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn('hover:bg-muted-muted/50 active:bg-muted-muted data-[state=selected]:bg-muted border-border-weak border-b transition-colors', className)}\n {...props}\n />\n );\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<'th'>) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n 'text-text-positive-weak',\n 'h-10 px-2 text-left align-middle font-medium whitespace-nowrap',\n '[&:has([role=checkbox])]:pr-0',\n '[&>[role=checkbox]]:translate-y-0.5',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<'td'>) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn('p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5', className)}\n {...props}\n />\n );\n}\n\nfunction TableCaption({ className, ...props }: React.ComponentProps<'caption'>) {\n return <caption data-slot=\"table-caption\" className={cn('text-text-positive-muted mt-4 text-sm', className)} {...props} />;\n}\n\nexport { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow };\n"],"mappings":"yJAGA,SAAS,EAAM,CAAE,YAAW,GAAG,GAAwC,CACrE,OAEE,EAAA,EAAA,KAAC,QAAA,CAAM,YAAU,QAAQ,WAAA,EAAA,EAAA,IAAc,gCAAiC,EAAU,CAAE,GAAI,GAAS,CAOrG,SAAS,EAAY,CAAE,YAAW,GAAG,GAAwC,CAC3E,OACE,EAAA,EAAA,KAAC,QAAA,CACC,YAAU,eACV,WAAA,EAAA,EAAA,IACE,oCACA,kBACA,sCACA,sCACA,kDACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAwC,CACzE,OAAO,EAAA,EAAA,KAAC,QAAA,CAAM,YAAU,aAAa,WAAA,EAAA,EAAA,IAAc,6BAA8B,EAAU,CAAE,GAAI,GAAS,CAG5G,SAAS,EAAY,CAAE,YAAW,GAAG,GAAwC,CAC3E,OAAO,EAAA,EAAA,KAAC,QAAA,CAAM,YAAU,eAAe,WAAA,EAAA,EAAA,IAAc,iEAAkE,EAAU,CAAE,GAAI,GAAS,CAGlJ,SAAS,EAAS,CAAE,YAAW,GAAG,GAAqC,CACrE,OACE,EAAA,EAAA,KAAC,KAAA,CACC,YAAU,YACV,WAAA,EAAA,EAAA,IAAc,6HAA8H,EAAU,CACtJ,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAqC,CACtE,OACE,EAAA,EAAA,KAAC,KAAA,CACC,YAAU,aACV,WAAA,EAAA,EAAA,IACE,0BACA,iEACA,gCACA,sCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAqC,CACtE,OACE,EAAA,EAAA,KAAC,KAAA,CACC,YAAU,aACV,WAAA,EAAA,EAAA,IAAc,uGAAwG,EAAU,CAChI,GAAI,GACJ,CAIN,SAAS,EAAa,CAAE,YAAW,GAAG,GAA0C,CAC9E,OAAO,EAAA,EAAA,KAAC,UAAA,CAAQ,YAAU,gBAAgB,WAAA,EAAA,EAAA,IAAc,wCAAyC,EAAU,CAAE,GAAI,GAAS"}
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{Tabs as n}from"radix-ui";function r({className:r,...i}){return t(n.Root,{"data-slot":`tabs`,className:e(`flex flex-col gap-2`,r),...i})}function i({className:r,...i}){return t(n.List,{"data-slot":`tabs-list`,className:e(`bg-muted-muted inline-flex h-9 w-fit items-center justify-center rounded-full p-1`,r),...i})}function a({className:r,...i}){return t(n.Trigger,{"data-slot":`tabs-trigger`,className:e(`text-text-positive-weak`,`inline-flex h-[calc(100%-1px)] flex-1 cursor-pointer items-center justify-center gap-1.5`,`rounded-full`,`border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition`,`hover:bg-muted-weak`,`data-[state=active]:shadow-card`,`data-[state=active]:bg-background`,`disabled:opacity-50`,`disabled:pointer-events-none`,`focus-visible:border-primary`,`focus-visible:ring-4`,`focus-visible:ring-primary-weak`,`focus-visible:outline-1`,`focus-visible:outline-primary`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,r),...i})}function o({className:r,...i}){return t(n.Content,{"data-slot":`tabs-content`,className:e(`flex-1 outline-none`,r),...i})}export{r as Tabs,o as TabsContent,i as TabsList,a as TabsTrigger};
2
- //# sourceMappingURL=tabs-D4uObFGW.js.map
2
+ //# sourceMappingURL=tabs-BVCzl3vY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs-BVCzl3vY.js","names":["Tabs","TabsPrimitive"],"sources":["../packages/components/ui/tabs.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Tabs as TabsPrimitive } from 'radix-ui';\n\nfunction Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return <TabsPrimitive.Root data-slot=\"tabs\" className={cn('flex flex-col gap-2', className)} {...props} />;\n}\n\nfunction TabsList({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.List>) {\n return (\n <TabsPrimitive.List\n data-slot=\"tabs-list\"\n className={cn('bg-muted-muted inline-flex h-9 w-fit items-center justify-center rounded-full p-1', className)}\n {...props}\n />\n );\n}\n\nfunction TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot=\"tabs-trigger\"\n className={cn(\n 'text-text-positive-weak',\n 'inline-flex h-[calc(100%-1px)] flex-1 cursor-pointer items-center justify-center gap-1.5',\n 'rounded-full',\n 'border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition',\n 'hover:bg-muted-weak',\n 'data-[state=active]:shadow-card',\n 'data-[state=active]:bg-background',\n 'disabled:opacity-50',\n 'disabled:pointer-events-none',\n 'focus-visible:border-primary',\n 'focus-visible:ring-4',\n 'focus-visible:ring-primary-weak',\n 'focus-visible:outline-1',\n 'focus-visible:outline-primary',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TabsContent({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return <TabsPrimitive.Content data-slot=\"tabs-content\" className={cn('flex-1 outline-none', className)} {...props} />;\n}\n\nexport { Tabs, TabsContent, TabsList, TabsTrigger };\n"],"mappings":"4HAKA,SAASA,EAAK,CAAE,YAAW,GAAG,GAA0D,CACtF,OAAO,EAACC,EAAc,KAAA,CAAK,YAAU,OAAO,UAAW,EAAG,sBAAuB,EAAU,CAAE,GAAI,GAAS,CAG5G,SAAS,EAAS,CAAE,YAAW,GAAG,GAA0D,CAC1F,OACE,EAACA,EAAc,KAAA,CACb,YAAU,YACV,UAAW,EAAG,oFAAqF,EAAU,CAC7G,GAAI,GACJ,CAIN,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OACE,EAACA,EAAc,QAAA,CACb,YAAU,eACV,UAAW,EACT,0BACA,2FACA,eACA,uFACA,sBACA,kCACA,oCACA,sBACA,+BACA,+BACA,uBACA,kCACA,0BACA,gCACA,8BACA,mBACA,uCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAc,QAAA,CAAQ,YAAU,eAAe,UAAW,EAAG,sBAAuB,EAAU,CAAE,GAAI,GAAS"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`);let t=require(`@customafk/react-toolkit/utils`);t=e.__toESM(t);let n=require(`react/jsx-runtime`);n=e.__toESM(n);let r=require(`radix-ui`);r=e.__toESM(r);function i({className:e,...i}){return(0,n.jsx)(r.Tabs.Root,{"data-slot":`tabs`,className:(0,t.cn)(`flex flex-col gap-2`,e),...i})}function a({className:e,...i}){return(0,n.jsx)(r.Tabs.List,{"data-slot":`tabs-list`,className:(0,t.cn)(`bg-muted-muted inline-flex h-9 w-fit items-center justify-center rounded-full p-1`,e),...i})}function o({className:e,...i}){return(0,n.jsx)(r.Tabs.Trigger,{"data-slot":`tabs-trigger`,className:(0,t.cn)(`text-text-positive-weak`,`inline-flex h-[calc(100%-1px)] flex-1 cursor-pointer items-center justify-center gap-1.5`,`rounded-full`,`border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition`,`hover:bg-muted-weak`,`data-[state=active]:shadow-card`,`data-[state=active]:bg-background`,`disabled:opacity-50`,`disabled:pointer-events-none`,`focus-visible:border-primary`,`focus-visible:ring-4`,`focus-visible:ring-primary-weak`,`focus-visible:outline-1`,`focus-visible:outline-primary`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,e),...i})}function s({className:e,...i}){return(0,n.jsx)(r.Tabs.Content,{"data-slot":`tabs-content`,className:(0,t.cn)(`flex-1 outline-none`,e),...i})}Object.defineProperty(exports,`Tabs`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`TabsContent`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`TabsList`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`TabsTrigger`,{enumerable:!0,get:function(){return o}});
2
+ //# sourceMappingURL=tabs-D7oadnxg.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs-D7oadnxg.cjs","names":["TabsPrimitive"],"sources":["../packages/components/ui/tabs.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Tabs as TabsPrimitive } from 'radix-ui';\n\nfunction Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return <TabsPrimitive.Root data-slot=\"tabs\" className={cn('flex flex-col gap-2', className)} {...props} />;\n}\n\nfunction TabsList({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.List>) {\n return (\n <TabsPrimitive.List\n data-slot=\"tabs-list\"\n className={cn('bg-muted-muted inline-flex h-9 w-fit items-center justify-center rounded-full p-1', className)}\n {...props}\n />\n );\n}\n\nfunction TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot=\"tabs-trigger\"\n className={cn(\n 'text-text-positive-weak',\n 'inline-flex h-[calc(100%-1px)] flex-1 cursor-pointer items-center justify-center gap-1.5',\n 'rounded-full',\n 'border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition',\n 'hover:bg-muted-weak',\n 'data-[state=active]:shadow-card',\n 'data-[state=active]:bg-background',\n 'disabled:opacity-50',\n 'disabled:pointer-events-none',\n 'focus-visible:border-primary',\n 'focus-visible:ring-4',\n 'focus-visible:ring-primary-weak',\n 'focus-visible:outline-1',\n 'focus-visible:outline-primary',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TabsContent({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return <TabsPrimitive.Content data-slot=\"tabs-content\" className={cn('flex-1 outline-none', className)} {...props} />;\n}\n\nexport { Tabs, TabsContent, TabsList, TabsTrigger };\n"],"mappings":"kMAKA,SAAS,EAAK,CAAE,YAAW,GAAG,GAA0D,CACtF,OAAO,EAAA,EAAA,KAACA,EAAAA,KAAc,KAAA,CAAK,YAAU,OAAO,WAAA,EAAA,EAAA,IAAc,sBAAuB,EAAU,CAAE,GAAI,GAAS,CAG5G,SAAS,EAAS,CAAE,YAAW,GAAG,GAA0D,CAC1F,OACE,EAAA,EAAA,KAACA,EAAAA,KAAc,KAAA,CACb,YAAU,YACV,WAAA,EAAA,EAAA,IAAc,oFAAqF,EAAU,CAC7G,GAAI,GACJ,CAIN,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OACE,EAAA,EAAA,KAACA,EAAAA,KAAc,QAAA,CACb,YAAU,eACV,WAAA,EAAA,EAAA,IACE,0BACA,2FACA,eACA,uFACA,sBACA,kCACA,oCACA,sBACA,+BACA,+BACA,uBACA,kCACA,0BACA,gCACA,8BACA,mBACA,uCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAAA,EAAA,KAACA,EAAAA,KAAc,QAAA,CAAQ,YAAU,eAAe,WAAA,EAAA,EAAA,IAAc,sBAAuB,EAAU,CAAE,GAAI,GAAS"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`);let t=require(`@customafk/react-toolkit/utils`);t=e.__toESM(t);let n=require(`react`);n=e.__toESM(n);let r=require(`react/jsx-runtime`);r=e.__toESM(r);function i({className:e,onChange:i,onValueChange:a,...o}){let s=(0,n.useCallback)(e=>{i?.(e),a?.(e.target.value)},[i,a]);return(0,r.jsx)(`textarea`,{"data-slot":`textarea`,className:(0,t.cn)(`flex min-h-24 w-full px-3 py-2`,`rounded-md border transition-all duration-200`,`text-text-positive-strong bg-transparent text-sm`,`field-sizing-content resize-y`,`border-border-weak shadow-input`,`caret-primary outline-none`,`placeholder:text-text-positive-muted`,`hover:border-border hover:shadow-input`,`focus:border-primary-strong focus:shadow-none`,`focus-visible:ring-primary-muted focus-visible:ring-4`,`aria-invalid:border-danger aria-invalid:ring-danger-muted`,`aria-invalid:hover:border-danger-strong`,`disabled:cursor-not-allowed disabled:opacity-50`,`disabled:pointer-events-none`,`disabled:border-border-weak/50 disabled:bg-secondary-muted/10`,e),...o,onChange:s})}Object.defineProperty(exports,`Textarea`,{enumerable:!0,get:function(){return i}});
2
+ //# sourceMappingURL=textarea-BHME8i5L.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textarea-BHME8i5L.cjs","names":[],"sources":["../packages/components/ui/textarea.tsx"],"sourcesContent":["'use client';\nimport { useCallback } from 'react';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nfunction Textarea({\n className,\n onChange,\n onValueChange,\n ...props\n}: React.ComponentProps<'textarea'> & {\n onValueChange?: (value: string) => void;\n}) {\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n },\n [onChange, onValueChange]\n );\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n // Base styles\n 'flex min-h-24 w-full px-3 py-2',\n 'rounded-md border transition-all duration-200',\n 'text-text-positive-strong bg-transparent text-sm',\n 'field-sizing-content resize-y',\n\n // Border and shadow styles\n 'border-border-weak shadow-input',\n 'caret-primary outline-none',\n\n // Placeholder styling\n 'placeholder:text-text-positive-muted',\n\n // State styles\n 'hover:border-border hover:shadow-input',\n 'focus:border-primary-strong focus:shadow-none',\n 'focus-visible:ring-primary-muted focus-visible:ring-4',\n\n // Invalid state\n 'aria-invalid:border-danger aria-invalid:ring-danger-muted',\n 'aria-invalid:hover:border-danger-strong',\n\n // Disabled state\n 'disabled:cursor-not-allowed disabled:opacity-50',\n 'disabled:pointer-events-none',\n 'disabled:border-border-weak/50 disabled:bg-secondary-muted/10',\n\n // Additional custom styling\n className\n )}\n {...props}\n onChange={handleChange}\n />\n );\n}\n\nexport { Textarea };\n"],"mappings":"+LAIA,SAAS,EAAS,CAChB,YACA,WACA,gBACA,GAAG,GAGF,CACD,IAAM,GAAA,EAAA,EAAA,aACH,GAA8C,CAC7C,IAAW,EAAE,CACb,IAAgB,EAAE,OAAO,MAAM,EAEjC,CAAC,EAAU,EAAc,CAC1B,CACD,OACE,EAAA,EAAA,KAAC,WAAA,CACC,YAAU,WACV,WAAA,EAAA,EAAA,IAEE,iCACA,gDACA,mDACA,gCAGA,kCACA,6BAGA,uCAGA,yCACA,gDACA,wDAGA,4DACA,0CAGA,kDACA,+BACA,gEAGA,EACD,CACD,GAAI,EACJ,SAAU,GACV"}
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{useCallback as t}from"react";import{jsx as n}from"react/jsx-runtime";function r({className:r,onChange:i,onValueChange:a,...o}){let s=t(e=>{i?.(e),a?.(e.target.value)},[i,a]);return n(`textarea`,{"data-slot":`textarea`,className:e(`flex min-h-24 w-full px-3 py-2`,`rounded-md border transition-all duration-200`,`text-text-positive-strong bg-transparent text-sm`,`field-sizing-content resize-y`,`border-border-weak shadow-input`,`caret-primary outline-none`,`placeholder:text-text-positive-muted`,`hover:border-border hover:shadow-input`,`focus:border-primary-strong focus:shadow-none`,`focus-visible:ring-primary-muted focus-visible:ring-4`,`aria-invalid:border-danger aria-invalid:ring-danger-muted`,`aria-invalid:hover:border-danger-strong`,`disabled:cursor-not-allowed disabled:opacity-50`,`disabled:pointer-events-none`,`disabled:border-border-weak/50 disabled:bg-secondary-muted/10`,r),...o,onChange:s})}export{r as Textarea};
2
- //# sourceMappingURL=textarea-n8OO0QsI.js.map
2
+ //# sourceMappingURL=textarea-TGDtYde1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textarea-TGDtYde1.js","names":[],"sources":["../packages/components/ui/textarea.tsx"],"sourcesContent":["'use client';\nimport { useCallback } from 'react';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nfunction Textarea({\n className,\n onChange,\n onValueChange,\n ...props\n}: React.ComponentProps<'textarea'> & {\n onValueChange?: (value: string) => void;\n}) {\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n },\n [onChange, onValueChange]\n );\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n // Base styles\n 'flex min-h-24 w-full px-3 py-2',\n 'rounded-md border transition-all duration-200',\n 'text-text-positive-strong bg-transparent text-sm',\n 'field-sizing-content resize-y',\n\n // Border and shadow styles\n 'border-border-weak shadow-input',\n 'caret-primary outline-none',\n\n // Placeholder styling\n 'placeholder:text-text-positive-muted',\n\n // State styles\n 'hover:border-border hover:shadow-input',\n 'focus:border-primary-strong focus:shadow-none',\n 'focus-visible:ring-primary-muted focus-visible:ring-4',\n\n // Invalid state\n 'aria-invalid:border-danger aria-invalid:ring-danger-muted',\n 'aria-invalid:hover:border-danger-strong',\n\n // Disabled state\n 'disabled:cursor-not-allowed disabled:opacity-50',\n 'disabled:pointer-events-none',\n 'disabled:border-border-weak/50 disabled:bg-secondary-muted/10',\n\n // Additional custom styling\n className\n )}\n {...props}\n onChange={handleChange}\n />\n );\n}\n\nexport { Textarea };\n"],"mappings":"gIAIA,SAAS,EAAS,CAChB,YACA,WACA,gBACA,GAAG,GAGF,CACD,IAAM,EAAe,EAClB,GAA8C,CAC7C,IAAW,EAAE,CACb,IAAgB,EAAE,OAAO,MAAM,EAEjC,CAAC,EAAU,EAAc,CAC1B,CACD,OACE,EAAC,WAAA,CACC,YAAU,WACV,UAAW,EAET,iCACA,gDACA,mDACA,gCAGA,kCACA,6BAGA,uCAGA,yCACA,gDACA,wDAGA,4DACA,0CAGA,kDACA,+BACA,gEAGA,EACD,CACD,GAAI,EACJ,SAAU,GACV"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`);let t=require(`@customafk/react-toolkit/utils`);t=e.__toESM(t);let n=require(`react/jsx-runtime`);n=e.__toESM(n);let r=require(`class-variance-authority`);r=e.__toESM(r);const i=(0,r.cva)(`scroll-m-20 text-text-positive-strong tracking-tight`,{variants:{level:{1:`text-center text-4xl font-extrabold text-balance`,2:`border-b pb-2 text-3xl font-semibold first:mt-0`,3:`text-2xl font-semibold`,4:`text-xl font-semibold`,5:`text-lg font-semibold`,6:`text-base font-semibold`},default:{level:1}}}),a=({level:e=1,className:r,children:a})=>{let o=`h${e}`;return(0,n.jsx)(o,{className:(0,t.cn)(i({level:e}),r),children:a})};Object.defineProperty(exports,`Title`,{enumerable:!0,get:function(){return a}});
2
+ //# sourceMappingURL=title-Wrzpw9RM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"title-Wrzpw9RM.cjs","names":[],"sources":["../packages/components/typography/title.tsx"],"sourcesContent":["import type { JSX } from 'react';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { cva } from 'class-variance-authority';\n\nconst titleVariants = cva('scroll-m-20 text-text-positive-strong tracking-tight', {\n variants: {\n level: {\n 1: 'text-center text-4xl font-extrabold text-balance',\n 2: 'border-b pb-2 text-3xl font-semibold first:mt-0',\n 3: 'text-2xl font-semibold',\n 4: 'text-xl font-semibold',\n 5: 'text-lg font-semibold',\n 6: 'text-base font-semibold',\n },\n default: {\n level: 1,\n },\n },\n});\n\ntype Props = {\n level?: 1 | 2 | 3 | 4 | 5 | 6;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const Title = ({ level = 1, className, children }: Props) => {\n const Comp = `h${level}` as keyof JSX.IntrinsicElements;\n return <Comp className={cn(titleVariants({ level }), className)}>{children}</Comp>;\n};\n"],"mappings":"kNAKA,MAAM,GAAA,EAAA,EAAA,KAAoB,uDAAwD,CAChF,SAAU,CACR,MAAO,CACL,EAAG,mDACH,EAAG,kDACH,EAAG,yBACH,EAAG,wBACH,EAAG,wBACH,EAAG,0BACJ,CACD,QAAS,CACP,MAAO,EACR,CACF,CACF,CAAC,CAQW,GAAS,CAAE,QAAQ,EAAG,YAAW,cAAsB,CAClE,IAAM,EAAO,IAAI,IACjB,OAAO,EAAA,EAAA,KAAC,EAAA,CAAK,WAAA,EAAA,EAAA,IAAc,EAAc,CAAE,QAAO,CAAC,CAAE,EAAU,CAAG,YAAgB"}
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{cva as n}from"class-variance-authority";const r=n(`scroll-m-20 text-text-positive-strong tracking-tight`,{variants:{level:{1:`text-center text-4xl font-extrabold text-balance`,2:`border-b pb-2 text-3xl font-semibold first:mt-0`,3:`text-2xl font-semibold`,4:`text-xl font-semibold`,5:`text-lg font-semibold`,6:`text-base font-semibold`},default:{level:1}}}),i=({level:n=1,className:i,children:a})=>{let o=`h${n}`;return t(o,{className:e(r({level:n}),i),children:a})};export{i as Title};
2
- //# sourceMappingURL=title-itXqz0us.js.map
2
+ //# sourceMappingURL=title-Zqs6skyV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"title-Zqs6skyV.js","names":[],"sources":["../packages/components/typography/title.tsx"],"sourcesContent":["import type { JSX } from 'react';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { cva } from 'class-variance-authority';\n\nconst titleVariants = cva('scroll-m-20 text-text-positive-strong tracking-tight', {\n variants: {\n level: {\n 1: 'text-center text-4xl font-extrabold text-balance',\n 2: 'border-b pb-2 text-3xl font-semibold first:mt-0',\n 3: 'text-2xl font-semibold',\n 4: 'text-xl font-semibold',\n 5: 'text-lg font-semibold',\n 6: 'text-base font-semibold',\n },\n default: {\n level: 1,\n },\n },\n});\n\ntype Props = {\n level?: 1 | 2 | 3 | 4 | 5 | 6;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const Title = ({ level = 1, className, children }: Props) => {\n const Comp = `h${level}` as keyof JSX.IntrinsicElements;\n return <Comp className={cn(titleVariants({ level }), className)}>{children}</Comp>;\n};\n"],"mappings":"2IAKA,MAAM,EAAgB,EAAI,uDAAwD,CAChF,SAAU,CACR,MAAO,CACL,EAAG,mDACH,EAAG,kDACH,EAAG,yBACH,EAAG,wBACH,EAAG,wBACH,EAAG,0BACJ,CACD,QAAS,CACP,MAAO,EACR,CACF,CACF,CAAC,CAQW,GAAS,CAAE,QAAQ,EAAG,YAAW,cAAsB,CAClE,IAAM,EAAO,IAAI,IACjB,OAAO,EAAC,EAAA,CAAK,UAAW,EAAG,EAAc,CAAE,QAAO,CAAC,CAAE,EAAU,CAAG,YAAgB"}
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{cva as n}from"class-variance-authority";import{Toggle as r}from"radix-ui";const i=n(`inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap`,{variants:{variant:{default:`bg-transparent`,outline:`border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground`},size:{default:`h-9 px-2 min-w-9`,sm:`h-8 px-1.5 min-w-8`,lg:`h-10 px-2.5 min-w-10`}},defaultVariants:{variant:`default`,size:`default`}});function a({className:n,variant:a,size:o,...s}){return t(r.Root,{"data-slot":`toggle`,className:e(i({variant:a,size:o,className:n})),...s})}export{a as Toggle,i as toggleVariants};
2
- //# sourceMappingURL=toggle-DuNq0es1.js.map
2
+ //# sourceMappingURL=toggle-AOoz4VtN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toggle-AOoz4VtN.js","names":["Toggle","TogglePrimitive"],"sources":["../packages/components/ui/toggle.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { Toggle as TogglePrimitive } from 'radix-ui';\n\nconst toggleVariants = cva(\n \"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap\",\n {\n variants: {\n variant: {\n default: 'bg-transparent',\n outline: 'border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground',\n },\n size: {\n default: 'h-9 px-2 min-w-9',\n sm: 'h-8 px-1.5 min-w-8',\n lg: 'h-10 px-2.5 min-w-10',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n }\n);\n\nfunction Toggle({ className, variant, size, ...props }: React.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>) {\n return <TogglePrimitive.Root data-slot=\"toggle\" className={cn(toggleVariants({ variant, size, className }))} {...props} />;\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Toggle, toggleVariants };\n"],"mappings":"6KAMA,MAAM,EAAiB,EACrB,gjBACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,iBACT,QAAS,4FACV,CACD,KAAM,CACJ,QAAS,mBACT,GAAI,qBACJ,GAAI,uBACL,CACF,CACD,gBAAiB,CACf,QAAS,UACT,KAAM,UACP,CACF,CACF,CAED,SAASA,EAAO,CAAE,YAAW,UAAS,OAAM,GAAG,GAAkG,CAC/I,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,UAAW,EAAG,EAAe,CAAE,UAAS,OAAM,YAAW,CAAC,CAAC,CAAE,GAAI,GAAS"}
@@ -1,5 +1,5 @@
1
- import * as react_jsx_runtime229 from "react/jsx-runtime";
2
- import * as class_variance_authority_types3 from "class-variance-authority/types";
1
+ import * as react_jsx_runtime260 from "react/jsx-runtime";
2
+ import * as class_variance_authority_types8 from "class-variance-authority/types";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
  import { Toggle } from "radix-ui";
5
5
 
@@ -7,13 +7,13 @@ import { Toggle } from "radix-ui";
7
7
  declare const toggleVariants: (props?: ({
8
8
  variant?: "default" | "outline" | null | undefined;
9
9
  size?: "sm" | "lg" | "default" | null | undefined;
10
- } & class_variance_authority_types3.ClassProp) | undefined) => string;
10
+ } & class_variance_authority_types8.ClassProp) | undefined) => string;
11
11
  declare function Toggle$1({
12
12
  className,
13
13
  variant,
14
14
  size,
15
15
  ...props
16
- }: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime229.JSX.Element;
16
+ }: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime260.JSX.Element;
17
17
  //#endregion
18
18
  export { Toggle$1 as Toggle, toggleVariants };
19
- //# sourceMappingURL=toggle-DYeyKWVE.d.cts.map
19
+ //# sourceMappingURL=toggle-Bhwgx-y_.d.cts.map
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`);let t=require(`@customafk/react-toolkit/utils`);t=e.__toESM(t);let n=require(`react/jsx-runtime`);n=e.__toESM(n);let r=require(`class-variance-authority`);r=e.__toESM(r);let i=require(`radix-ui`);i=e.__toESM(i);const a=(0,r.cva)(`inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap`,{variants:{variant:{default:`bg-transparent`,outline:`border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground`},size:{default:`h-9 px-2 min-w-9`,sm:`h-8 px-1.5 min-w-8`,lg:`h-10 px-2.5 min-w-10`}},defaultVariants:{variant:`default`,size:`default`}});function o({className:e,variant:r,size:o,...s}){return(0,n.jsx)(i.Toggle.Root,{"data-slot":`toggle`,className:(0,t.cn)(a({variant:r,size:o,className:e})),...s})}Object.defineProperty(exports,`Toggle`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`toggleVariants`,{enumerable:!0,get:function(){return a}});
2
+ //# sourceMappingURL=toggle-D252Z_vH.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toggle-D252Z_vH.cjs","names":["TogglePrimitive"],"sources":["../packages/components/ui/toggle.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { Toggle as TogglePrimitive } from 'radix-ui';\n\nconst toggleVariants = cva(\n \"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap\",\n {\n variants: {\n variant: {\n default: 'bg-transparent',\n outline: 'border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground',\n },\n size: {\n default: 'h-9 px-2 min-w-9',\n sm: 'h-8 px-1.5 min-w-8',\n lg: 'h-10 px-2.5 min-w-10',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n }\n);\n\nfunction Toggle({ className, variant, size, ...props }: React.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>) {\n return <TogglePrimitive.Root data-slot=\"toggle\" className={cn(toggleVariants({ variant, size, className }))} {...props} />;\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Toggle, toggleVariants };\n"],"mappings":"2PAMA,MAAM,GAAA,EAAA,EAAA,KACJ,gjBACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,iBACT,QAAS,4FACV,CACD,KAAM,CACJ,QAAS,mBACT,GAAI,qBACJ,GAAI,uBACL,CACF,CACD,gBAAiB,CACf,QAAS,UACT,KAAM,UACP,CACF,CACF,CAED,SAAS,EAAO,CAAE,YAAW,UAAS,OAAM,GAAG,GAAkG,CAC/I,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAgB,KAAA,CAAK,YAAU,SAAS,WAAA,EAAA,EAAA,IAAc,EAAe,CAAE,UAAS,OAAM,YAAW,CAAC,CAAC,CAAE,GAAI,GAAS"}
@@ -1,19 +1,19 @@
1
- import * as react_jsx_runtime211 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime260 from "react/jsx-runtime";
2
2
  import { VariantProps } from "class-variance-authority";
3
3
  import { Toggle } from "radix-ui";
4
- import * as class_variance_authority_types2 from "class-variance-authority/types";
4
+ import * as class_variance_authority_types8 from "class-variance-authority/types";
5
5
 
6
6
  //#region packages/components/ui/toggle.d.ts
7
7
  declare const toggleVariants: (props?: ({
8
8
  variant?: "default" | "outline" | null | undefined;
9
9
  size?: "sm" | "lg" | "default" | null | undefined;
10
- } & class_variance_authority_types2.ClassProp) | undefined) => string;
10
+ } & class_variance_authority_types8.ClassProp) | undefined) => string;
11
11
  declare function Toggle$1({
12
12
  className,
13
13
  variant,
14
14
  size,
15
15
  ...props
16
- }: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime211.JSX.Element;
16
+ }: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime260.JSX.Element;
17
17
  //#endregion
18
18
  export { Toggle$1 as Toggle, toggleVariants };
19
- //# sourceMappingURL=toggle-DPTA8XO2.d.ts.map
19
+ //# sourceMappingURL=toggle-DaTd0CKm.d.ts.map
@@ -1,23 +1,23 @@
1
- import * as react_jsx_runtime230 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime261 from "react/jsx-runtime";
2
2
  import { Tooltip } from "radix-ui";
3
3
 
4
4
  //#region packages/components/ui/tooltip.d.ts
5
5
  declare function TooltipProvider({
6
6
  delayDuration,
7
7
  ...props
8
- }: React.ComponentProps<typeof Tooltip.Provider>): react_jsx_runtime230.JSX.Element;
8
+ }: React.ComponentProps<typeof Tooltip.Provider>): react_jsx_runtime261.JSX.Element;
9
9
  declare function Tooltip$1({
10
10
  ...props
11
- }: React.ComponentProps<typeof Tooltip.Root>): react_jsx_runtime230.JSX.Element;
11
+ }: React.ComponentProps<typeof Tooltip.Root>): react_jsx_runtime261.JSX.Element;
12
12
  declare function TooltipTrigger({
13
13
  ...props
14
- }: React.ComponentProps<typeof Tooltip.Trigger>): react_jsx_runtime230.JSX.Element;
14
+ }: React.ComponentProps<typeof Tooltip.Trigger>): react_jsx_runtime261.JSX.Element;
15
15
  declare function TooltipContent({
16
16
  className,
17
17
  sideOffset,
18
18
  children,
19
19
  ...props
20
- }: React.ComponentProps<typeof Tooltip.Content>): react_jsx_runtime230.JSX.Element;
20
+ }: React.ComponentProps<typeof Tooltip.Content>): react_jsx_runtime261.JSX.Element;
21
21
  //#endregion
22
22
  export { Tooltip$1 as Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
23
- //# sourceMappingURL=tooltip-DijjzZk1.d.cts.map
23
+ //# sourceMappingURL=tooltip-B3mrjes6.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-BTrjCwd8.js","names":["TooltipPrimitive","Tooltip"],"sources":["../packages/components/ui/tooltip.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { Tooltip as TooltipPrimitive } from 'radix-ui'\n\nfunction TooltipProvider({ delayDuration = 0, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return <TooltipPrimitive.Provider data-slot=\"tooltip-provider\" delayDuration={delayDuration} {...props} />\n}\n\nfunction Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n )\n}\n\nfunction TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />\n}\n\nfunction TooltipContent({ className, sideOffset = 0, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-secondary-strong text-text-negative-intense shadow-dropdown outline-none',\n 'animate-in fade-in-0 zoom-in-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n 'z-50 w-fit',\n 'origin-(--radix-tooltip-content-transform-origin)',\n 'rounded-lg px-3 py-1.5 text-xs text-balance',\n className,\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"bg-secondary-strong fill-secondary-strong z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n )\n}\n\nexport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger }\n"],"mappings":"yIAKA,SAAS,EAAgB,CAAE,gBAAgB,EAAG,GAAG,GAAiE,CAChH,OAAO,EAACA,EAAiB,SAAA,CAAS,YAAU,mBAAkC,gBAAe,GAAI,IAGnG,SAASC,EAAQ,CAAE,GAAG,GAA6D,CACjF,OACE,EAAC,EAAA,CAAA,SACC,EAACD,EAAiB,KAAA,CAAK,YAAU,UAAU,GAAI,MAKrD,SAAS,EAAe,CAAE,GAAG,GAAgE,CAC3F,OAAO,EAACA,EAAiB,QAAA,CAAQ,YAAU,kBAAkB,GAAI,IAGnE,SAAS,EAAe,CAAE,YAAW,aAAa,EAAG,WAAU,GAAG,GAAgE,CAChI,OACE,EAACA,EAAiB,OAAA,CAAA,SAChB,EAACA,EAAiB,QAAA,CAChB,YAAU,kBACE,aACZ,UAAW,EACT,8EACA,kCACA,kCACA,iCACA,kCACA,yCACA,yCACA,yCACA,yCACA,aACA,oDACA,8CACA,GAEF,GAAI,YAEH,EACD,EAACA,EAAiB,MAAA,CAAM,UAAU"}
1
+ {"version":3,"file":"tooltip-BTrjCwd8.js","names":["TooltipPrimitive","Tooltip"],"sources":["../packages/components/ui/tooltip.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Tooltip as TooltipPrimitive } from 'radix-ui';\n\nfunction TooltipProvider({ delayDuration = 0, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return <TooltipPrimitive.Provider data-slot=\"tooltip-provider\" delayDuration={delayDuration} {...props} />;\n}\n\nfunction Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\nfunction TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\nfunction TooltipContent({ className, sideOffset = 0, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-secondary-strong text-text-negative-intense shadow-dropdown outline-none',\n 'animate-in fade-in-0 zoom-in-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n 'z-50 w-fit',\n 'origin-(--radix-tooltip-content-transform-origin)',\n 'rounded-lg px-3 py-1.5 text-xs text-balance',\n className\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"bg-secondary-strong fill-secondary-strong z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };\n"],"mappings":"yIAKA,SAAS,EAAgB,CAAE,gBAAgB,EAAG,GAAG,GAAiE,CAChH,OAAO,EAACA,EAAiB,SAAA,CAAS,YAAU,mBAAkC,gBAAe,GAAI,GAAS,CAG5G,SAASC,EAAQ,CAAE,GAAG,GAA6D,CACjF,OACE,EAAC,EAAA,CAAA,SACC,EAACD,EAAiB,KAAA,CAAK,YAAU,UAAU,GAAI,GAAS,CAAA,CACxC,CAItB,SAAS,EAAe,CAAE,GAAG,GAAgE,CAC3F,OAAO,EAACA,EAAiB,QAAA,CAAQ,YAAU,kBAAkB,GAAI,GAAS,CAG5E,SAAS,EAAe,CAAE,YAAW,aAAa,EAAG,WAAU,GAAG,GAAgE,CAChI,OACE,EAACA,EAAiB,OAAA,CAAA,SAChB,EAACA,EAAiB,QAAA,CAChB,YAAU,kBACE,aACZ,UAAW,EACT,8EACA,kCACA,kCACA,iCACA,kCACA,yCACA,yCACA,yCACA,yCACA,aACA,oDACA,8CACA,EACD,CACD,GAAI,YAEH,EACD,EAACA,EAAiB,MAAA,CAAM,UAAU,iHAAA,CAAmH,CAAA,EAC5H,CAAA,CACH"}
@@ -1,23 +1,23 @@
1
- import * as react_jsx_runtime193 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime261 from "react/jsx-runtime";
2
2
  import { Tooltip } from "radix-ui";
3
3
 
4
4
  //#region packages/components/ui/tooltip.d.ts
5
5
  declare function TooltipProvider({
6
6
  delayDuration,
7
7
  ...props
8
- }: React.ComponentProps<typeof Tooltip.Provider>): react_jsx_runtime193.JSX.Element;
8
+ }: React.ComponentProps<typeof Tooltip.Provider>): react_jsx_runtime261.JSX.Element;
9
9
  declare function Tooltip$1({
10
10
  ...props
11
- }: React.ComponentProps<typeof Tooltip.Root>): react_jsx_runtime193.JSX.Element;
11
+ }: React.ComponentProps<typeof Tooltip.Root>): react_jsx_runtime261.JSX.Element;
12
12
  declare function TooltipTrigger({
13
13
  ...props
14
- }: React.ComponentProps<typeof Tooltip.Trigger>): react_jsx_runtime193.JSX.Element;
14
+ }: React.ComponentProps<typeof Tooltip.Trigger>): react_jsx_runtime261.JSX.Element;
15
15
  declare function TooltipContent({
16
16
  className,
17
17
  sideOffset,
18
18
  children,
19
19
  ...props
20
- }: React.ComponentProps<typeof Tooltip.Content>): react_jsx_runtime193.JSX.Element;
20
+ }: React.ComponentProps<typeof Tooltip.Content>): react_jsx_runtime261.JSX.Element;
21
21
  //#endregion
22
22
  export { Tooltip$1 as Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
23
- //# sourceMappingURL=tooltip-Dt83PTkc.d.ts.map
23
+ //# sourceMappingURL=tooltip-IMUjBDRr.d.ts.map
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`);let t=require(`@customafk/react-toolkit/utils`);t=e.__toESM(t);let n=require(`react/jsx-runtime`);n=e.__toESM(n);let r=require(`radix-ui`);r=e.__toESM(r);function i({delayDuration:e=0,...t}){return(0,n.jsx)(r.Tooltip.Provider,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function a({...e}){return(0,n.jsx)(i,{children:(0,n.jsx)(r.Tooltip.Root,{"data-slot":`tooltip`,...e})})}function o({...e}){return(0,n.jsx)(r.Tooltip.Trigger,{"data-slot":`tooltip-trigger`,...e})}function s({className:e,sideOffset:i=0,children:a,...o}){return(0,n.jsx)(r.Tooltip.Portal,{children:(0,n.jsxs)(r.Tooltip.Content,{"data-slot":`tooltip-content`,sideOffset:i,className:(0,t.cn)(`bg-secondary-strong text-text-negative-intense shadow-dropdown outline-none`,`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-lg px-3 py-1.5 text-xs text-balance`,e),...o,children:[a,(0,n.jsx)(r.Tooltip.Arrow,{className:`bg-secondary-strong fill-secondary-strong z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]`})]})})}Object.defineProperty(exports,`Tooltip`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`TooltipContent`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`TooltipProvider`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`TooltipTrigger`,{enumerable:!0,get:function(){return o}});
2
+ //# sourceMappingURL=tooltip-uaF-pxx8.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip-uaF-pxx8.cjs","names":["TooltipPrimitive"],"sources":["../packages/components/ui/tooltip.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Tooltip as TooltipPrimitive } from 'radix-ui';\n\nfunction TooltipProvider({ delayDuration = 0, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return <TooltipPrimitive.Provider data-slot=\"tooltip-provider\" delayDuration={delayDuration} {...props} />;\n}\n\nfunction Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\nfunction TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\nfunction TooltipContent({ className, sideOffset = 0, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-secondary-strong text-text-negative-intense shadow-dropdown outline-none',\n 'animate-in fade-in-0 zoom-in-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n 'z-50 w-fit',\n 'origin-(--radix-tooltip-content-transform-origin)',\n 'rounded-lg px-3 py-1.5 text-xs text-balance',\n className\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"bg-secondary-strong fill-secondary-strong z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };\n"],"mappings":"kMAKA,SAAS,EAAgB,CAAE,gBAAgB,EAAG,GAAG,GAAiE,CAChH,OAAO,EAAA,EAAA,KAACA,EAAAA,QAAiB,SAAA,CAAS,YAAU,mBAAkC,gBAAe,GAAI,GAAS,CAG5G,SAAS,EAAQ,CAAE,GAAG,GAA6D,CACjF,OACE,EAAA,EAAA,KAAC,EAAA,CAAA,UACC,EAAA,EAAA,KAACA,EAAAA,QAAiB,KAAA,CAAK,YAAU,UAAU,GAAI,GAAS,CAAA,CACxC,CAItB,SAAS,EAAe,CAAE,GAAG,GAAgE,CAC3F,OAAO,EAAA,EAAA,KAACA,EAAAA,QAAiB,QAAA,CAAQ,YAAU,kBAAkB,GAAI,GAAS,CAG5E,SAAS,EAAe,CAAE,YAAW,aAAa,EAAG,WAAU,GAAG,GAAgE,CAChI,OACE,EAAA,EAAA,KAACA,EAAAA,QAAiB,OAAA,CAAA,UAChB,EAAA,EAAA,MAACA,EAAAA,QAAiB,QAAA,CAChB,YAAU,kBACE,aACZ,WAAA,EAAA,EAAA,IACE,8EACA,kCACA,kCACA,iCACA,kCACA,yCACA,yCACA,yCACA,yCACA,aACA,oDACA,8CACA,EACD,CACD,GAAI,YAEH,GACD,EAAA,EAAA,KAACA,EAAAA,QAAiB,MAAA,CAAM,UAAU,iHAAA,CAAmH,CAAA,EAC5H,CAAA,CACH"}
@@ -20,4 +20,4 @@ declare enum ECountry {
20
20
  }
21
21
  //#endregion
22
22
  export { ECountry, ERole };
23
- //# sourceMappingURL=types-BHVCAwAo.d.ts.map
23
+ //# sourceMappingURL=types-BcE2RjTJ.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types-BiiGENwa.js","names":[],"sources":["../packages/types.ts"],"sourcesContent":["export enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n USER = 'USER',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n PREORDER = 'preorder',\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AnyEntity = any\n"],"mappings":"AAAA,IAAY,EAAA,SAAA,EAAL,OACL,GAAA,YAAA,cACA,EAAA,MAAA,QACA,EAAA,UAAA,YACA,EAAA,MAAA,QACA,EAAA,KAAA,cAGU,EAAA,SAAA,EAAL,OACL,GAAA,QAAA,UACA,EAAA,IAAA,MACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,OAAA,SACA,EAAA,SAAA,WACA,EAAA,SAAA,WACA,EAAA,UAAA,YACA,EAAA,UAAA"}
1
+ {"version":3,"file":"types-BiiGENwa.js","names":[],"sources":["../packages/types.ts"],"sourcesContent":["export enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n USER = 'USER',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n PREORDER = 'preorder',\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AnyEntity = any;\n"],"mappings":"AAAA,IAAY,EAAA,SAAA,EAAL,OACL,GAAA,YAAA,cACA,EAAA,MAAA,QACA,EAAA,UAAA,YACA,EAAA,MAAA,QACA,EAAA,KAAA,cAGU,EAAA,SAAA,EAAL,OACL,GAAA,QAAA,UACA,EAAA,IAAA,MACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,OAAA,SACA,EAAA,SAAA,WACA,EAAA,SAAA,WACA,EAAA,UAAA,YACA,EAAA,UAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types-D32qXHff.cjs","names":[],"sources":["../packages/types.ts"],"sourcesContent":["export enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n USER = 'USER',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n PREORDER = 'preorder',\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AnyEntity = any\n"],"mappings":"AAAA,IAAY,EAAA,SAAA,EAAL,OACL,GAAA,YAAA,cACA,EAAA,MAAA,QACA,EAAA,UAAA,YACA,EAAA,MAAA,QACA,EAAA,KAAA,cAGU,EAAA,SAAA,EAAL,OACL,GAAA,QAAA,UACA,EAAA,IAAA,MACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,OAAA,SACA,EAAA,SAAA,WACA,EAAA,SAAA,WACA,EAAA,UAAA,YACA,EAAA,UAAA"}
1
+ {"version":3,"file":"types-D32qXHff.cjs","names":[],"sources":["../packages/types.ts"],"sourcesContent":["export enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n USER = 'USER',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n PREORDER = 'preorder',\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AnyEntity = any;\n"],"mappings":"AAAA,IAAY,EAAA,SAAA,EAAL,OACL,GAAA,YAAA,cACA,EAAA,MAAA,QACA,EAAA,UAAA,YACA,EAAA,MAAA,QACA,EAAA,KAAA,cAGU,EAAA,SAAA,EAAL,OACL,GAAA,QAAA,UACA,EAAA,IAAA,MACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,MAAA,QACA,EAAA,OAAA,SACA,EAAA,SAAA,WACA,EAAA,SAAA,WACA,EAAA,UAAA,YACA,EAAA,UAAA"}
@@ -1 +1 @@
1
- "use client";const e=require(`../paragraph-BLvW7xdo.cjs`);exports.Paragraph=e.Paragraph;
1
+ "use client";const e=require(`../paragraph-Q7vk3BSp.cjs`);exports.Paragraph=e.Paragraph;
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime41 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime15 from "react/jsx-runtime";
2
2
 
3
3
  //#region packages/components/typography/paragraph.d.ts
4
4
  type Props = {
@@ -10,7 +10,7 @@ declare const Paragraph: ({
10
10
  variant,
11
11
  className,
12
12
  children
13
- }: Props) => react_jsx_runtime41.JSX.Element;
13
+ }: Props) => react_jsx_runtime15.JSX.Element;
14
14
  //#endregion
15
15
  export { Paragraph };
16
16
  //# sourceMappingURL=paragraph.d.cts.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime26 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime13 from "react/jsx-runtime";
2
2
 
3
3
  //#region packages/components/typography/paragraph.d.ts
4
4
  type Props = {
@@ -10,7 +10,7 @@ declare const Paragraph: ({
10
10
  variant,
11
11
  className,
12
12
  children
13
- }: Props) => react_jsx_runtime26.JSX.Element;
13
+ }: Props) => react_jsx_runtime13.JSX.Element;
14
14
  //#endregion
15
15
  export { Paragraph };
16
16
  //# sourceMappingURL=paragraph.d.ts.map
@@ -1 +1 @@
1
- const e=require(`../title-DONX1fR6.cjs`);exports.Title=e.Title;
1
+ const e=require(`../title-Wrzpw9RM.cjs`);exports.Title=e.Title;
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime11 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime19 from "react/jsx-runtime";
2
2
 
3
3
  //#region packages/components/typography/title.d.ts
4
4
  type Props = {
@@ -10,7 +10,7 @@ declare const Title: ({
10
10
  level,
11
11
  className,
12
12
  children
13
- }: Props) => react_jsx_runtime11.JSX.Element;
13
+ }: Props) => react_jsx_runtime19.JSX.Element;
14
14
  //#endregion
15
15
  export { Title };
16
16
  //# sourceMappingURL=title.d.cts.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime13 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime27 from "react/jsx-runtime";
2
2
 
3
3
  //#region packages/components/typography/title.d.ts
4
4
  type Props = {
@@ -10,7 +10,7 @@ declare const Title: ({
10
10
  level,
11
11
  className,
12
12
  children
13
- }: Props) => react_jsx_runtime13.JSX.Element;
13
+ }: Props) => react_jsx_runtime27.JSX.Element;
14
14
  //#endregion
15
15
  export { Title };
16
16
  //# sourceMappingURL=title.d.ts.map