@customafk/lunas-ui 0.2.40 → 0.2.42

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 (644) hide show
  1. package/dist/{alert-BztgYPpW.d.cts → alert-BVsYpWFX.d.cts} +5 -5
  2. package/dist/{alert-BzBDfGk2.js → alert-D5VmhFT9.js} +2 -2
  3. package/dist/{alert-BzBDfGk2.js.map → alert-D5VmhFT9.js.map} +1 -1
  4. package/dist/{alert-DFvMshuq.d.ts → alert-DXmXDeGs.d.ts} +5 -5
  5. package/dist/{alert-B2PaDJp6.cjs → alert-JwECRZfz.cjs} +2 -2
  6. package/dist/{alert-B2PaDJp6.cjs.map → alert-JwECRZfz.cjs.map} +1 -1
  7. package/dist/{button-DloFFxkz.d.ts → button-BBfGvggN.d.ts} +3 -3
  8. package/dist/{button-CRSezlCi.d.cts → button-BEjRVw6s.d.cts} +3 -3
  9. package/dist/{button.variants-CoSpd71B.js → button.variants-BruXd4VM.js} +1 -1
  10. package/dist/{button.variants-CoSpd71B.js.map → button.variants-BruXd4VM.js.map} +1 -1
  11. package/dist/{button.variants-4kw6plrv.cjs → button.variants-DgVFNsVc.cjs} +2 -2
  12. package/dist/{button.variants-4kw6plrv.cjs.map → button.variants-DgVFNsVc.cjs.map} +1 -1
  13. package/dist/cards/grid-product-card.cjs +1 -1
  14. package/dist/cards/grid-product-card.cjs.map +1 -1
  15. package/dist/cards/grid-product-card.js +1 -1
  16. package/dist/cards/grid-product-card.js.map +1 -1
  17. package/dist/cards/product-card.cjs +1 -1
  18. package/dist/cards/product-card.cjs.map +1 -1
  19. package/dist/cards/product-card.js +1 -1
  20. package/dist/cards/product-card.js.map +1 -1
  21. package/dist/cards/simple-card.cjs +1 -1
  22. package/dist/cards/simple-card.d.ts +2 -2
  23. package/dist/cards/simple-card.js +1 -1
  24. package/dist/chunk-Bmb41Sf3.cjs +1 -0
  25. package/dist/{close-Dlo1bI8x.cjs → close-Dflkky9q.cjs} +2 -2
  26. package/dist/{close-Dlo1bI8x.cjs.map → close-Dflkky9q.cjs.map} +1 -1
  27. package/dist/{close-C0PdZGxr.js → close-DrkwaVXK.js} +1 -1
  28. package/dist/{close-C0PdZGxr.js.map → close-DrkwaVXK.js.map} +1 -1
  29. package/dist/cms-layout-B8maJRLp.cjs +2 -0
  30. package/dist/{cms-layout-BCH4NroR.cjs.map → cms-layout-B8maJRLp.cjs.map} +1 -1
  31. package/dist/cms-layout-CLeGdpMb.js +2 -0
  32. package/dist/{cms-layout-tPwrgJZc.js.map → cms-layout-CLeGdpMb.js.map} +1 -1
  33. package/dist/data-display/country.cjs +1 -1
  34. package/dist/data-display/country.cjs.map +1 -1
  35. package/dist/data-display/country.d.cts +1 -1
  36. package/dist/data-display/country.d.ts +1 -1
  37. package/dist/data-display/country.js +1 -1
  38. package/dist/data-display/country.js.map +1 -1
  39. package/dist/data-display/data-list.cjs +1 -1
  40. package/dist/data-display/date-tooltip.cjs +1 -1
  41. package/dist/data-display/date-tooltip.cjs.map +1 -1
  42. package/dist/data-display/date-tooltip.js +1 -1
  43. package/dist/data-display/date-tooltip.js.map +1 -1
  44. package/dist/data-display/date.cjs +2 -1
  45. package/dist/data-display/date.cjs.map +1 -0
  46. package/dist/data-display/date.js +2 -1
  47. package/dist/data-display/date.js.map +1 -0
  48. package/dist/data-display/empty.cjs +1 -1
  49. package/dist/data-display/name.cjs +1 -1
  50. package/dist/data-display/name.cjs.map +1 -1
  51. package/dist/data-display/name.js +1 -1
  52. package/dist/data-display/name.js.map +1 -1
  53. package/dist/data-display/phone-number.cjs +1 -1
  54. package/dist/data-display/phone-number.cjs.map +1 -1
  55. package/dist/data-display/phone-number.js +1 -1
  56. package/dist/data-display/phone-number.js.map +1 -1
  57. package/dist/data-display/role-badge.cjs +1 -1
  58. package/dist/data-display/role-badge.cjs.map +1 -1
  59. package/dist/data-display/role-badge.d.cts +1 -1
  60. package/dist/data-display/role-badge.d.ts +1 -1
  61. package/dist/data-display/role-badge.js +1 -1
  62. package/dist/data-display/role-badge.js.map +1 -1
  63. package/dist/data-display/statistic.cjs +2 -1
  64. package/dist/data-display/statistic.cjs.map +1 -0
  65. package/dist/data-display/statistic.d.cts +3 -3
  66. package/dist/data-display/statistic.d.ts +3 -3
  67. package/dist/data-display/statistic.js +2 -1
  68. package/dist/data-display/statistic.js.map +1 -0
  69. package/dist/data-display/user.cjs +2 -1
  70. package/dist/data-display/user.cjs.map +1 -0
  71. package/dist/data-display/user.js +2 -1
  72. package/dist/data-display/user.js.map +1 -0
  73. package/dist/dialogs/confirm-dialog.cjs +1 -1
  74. package/dist/dialogs/confirm-dialog.js +1 -1
  75. package/dist/dialogs/detail-dialog/components/sidebar.cjs +1 -1
  76. package/dist/dialogs/detail-dialog/components/sidebar.d.cts +26 -26
  77. package/dist/dialogs/detail-dialog/components/sidebar.d.ts +26 -26
  78. package/dist/dialogs/detail-dialog/components/sidebar.js +1 -1
  79. package/dist/dialogs/detail-dialog/index.cjs +1 -1
  80. package/dist/dialogs/detail-dialog/index.cjs.map +1 -1
  81. package/dist/dialogs/detail-dialog/index.js +1 -1
  82. package/dist/dialogs/detail-dialog/index.js.map +1 -1
  83. package/dist/dialogs/error-dialog.cjs +1 -1
  84. package/dist/dialogs/error-dialog.js +1 -1
  85. package/dist/dialogs/loading-dialog.cjs +1 -1
  86. package/dist/dialogs/loading-dialog.cjs.map +1 -1
  87. package/dist/dialogs/loading-dialog.js +1 -1
  88. package/dist/dialogs/loading-dialog.js.map +1 -1
  89. package/dist/features/descriptions/index.cjs +1 -1
  90. package/dist/features/descriptions/index.cjs.map +1 -1
  91. package/dist/features/descriptions/index.d.cts +3 -3
  92. package/dist/features/descriptions/index.d.ts +4 -4
  93. package/dist/features/descriptions/index.js +1 -1
  94. package/dist/features/descriptions/index.js.map +1 -1
  95. package/dist/features/search-modal/index.cjs +1 -1
  96. package/dist/features/search-modal/index.d.cts +2 -2
  97. package/dist/features/search-modal/index.d.ts +2 -2
  98. package/dist/features/search-modal/index.js +1 -1
  99. package/dist/features/tables/index.cjs +1 -1
  100. package/dist/features/tables/index.d.cts +1 -1
  101. package/dist/features/tables/index.d.ts +1 -2
  102. package/dist/features/tables/index.js +1 -1
  103. package/dist/features/tanstack-form/index.cjs +1 -1
  104. package/dist/features/tanstack-form/index.d.cts +1 -1
  105. package/dist/features/tanstack-form/index.d.ts +1 -1
  106. package/dist/features/tanstack-form/index.js +1 -1
  107. package/dist/features/text-editor/index.cjs +1 -1
  108. package/dist/features/text-editor/index.d.cts +1 -1
  109. package/dist/features/text-editor/index.d.ts +1 -1
  110. package/dist/features/text-editor/index.js +1 -1
  111. package/dist/field-0gaEKxov.cjs +2 -0
  112. package/dist/{field-BrlETeXX.cjs.map → field-0gaEKxov.cjs.map} +1 -1
  113. package/dist/field-DG-kX3HU.js +2 -0
  114. package/dist/{field-DpoKF1nY.js.map → field-DG-kX3HU.js.map} +1 -1
  115. package/dist/{flex-DmWmOBn5.cjs → flex-BAfCk_in.cjs} +2 -2
  116. package/dist/{flex-DmWmOBn5.cjs.map → flex-BAfCk_in.cjs.map} +1 -1
  117. package/dist/{flex-CinRrgEy.js → flex-D_XtSjf4.js} +2 -2
  118. package/dist/{flex-CinRrgEy.js.map → flex-D_XtSjf4.js.map} +1 -1
  119. package/dist/{heading-tGTqk3pA.cjs → heading-BX7ZVnVg.cjs} +2 -2
  120. package/dist/{heading-tGTqk3pA.cjs.map → heading-BX7ZVnVg.cjs.map} +1 -1
  121. package/dist/{heading-Bz-hSatD.js → heading-Bw3eo6IT.js} +1 -1
  122. package/dist/{heading-Bz-hSatD.js.map → heading-Bw3eo6IT.js.map} +1 -1
  123. package/dist/{index-FIl1Am8j.d.cts → index--eHW_BCk.d.ts} +7 -7
  124. package/dist/{index-BlQGXGqt.d.ts → index-C257sc-c.d.ts} +1 -1
  125. package/dist/{index-DSciiDhn.d.cts → index-C4ZFmaZm.d.cts} +326 -326
  126. package/dist/{index-BX_ZHO1J.d.cts → index-DWEpRM8i.d.cts} +31 -31
  127. package/dist/{index-B3NschgB.d.ts → index-DnQeeNHV.d.ts} +3 -3
  128. package/dist/{index-0jdHH3H_.d.ts → index-_MFRCXuJ.d.cts} +2 -2
  129. package/dist/{index-KO98y6L0.d.cts → index-rNI5ia8r.d.cts} +1 -1
  130. package/dist/{index-DZVn4x4Q.d.ts → index-rZ2RtGJp.d.ts} +2 -2
  131. package/dist/index.cjs +1 -1
  132. package/dist/index.d.cts +11 -11
  133. package/dist/index.d.ts +11 -11
  134. package/dist/index.js +1 -1
  135. package/dist/layouts/cms-layout/index.cjs +1 -1
  136. package/dist/layouts/cms-layout/index.d.cts +1 -1
  137. package/dist/layouts/cms-layout/index.d.ts +1 -1
  138. package/dist/layouts/cms-layout/index.js +1 -1
  139. package/dist/layouts/flex.cjs +1 -1
  140. package/dist/layouts/flex.d.cts +5 -5
  141. package/dist/layouts/flex.d.ts +3 -3
  142. package/dist/layouts/flex.js +1 -1
  143. package/dist/layouts/grid.cjs +1 -1
  144. package/dist/layouts/payment-layout/index.cjs +1 -1
  145. package/dist/layouts/payment-layout/index.js +1 -1
  146. package/dist/pages/FeatureDeveloping.cjs +1 -1
  147. package/dist/pages/FeatureDeveloping.cjs.map +1 -1
  148. package/dist/pages/FeatureDeveloping.d.cts +2 -2
  149. package/dist/pages/FeatureDeveloping.d.ts +2 -2
  150. package/dist/pages/FeatureDeveloping.js +1 -1
  151. package/dist/pages/FeatureDeveloping.js.map +1 -1
  152. package/dist/pages/FeatureFixing.cjs +1 -1
  153. package/dist/pages/FeatureFixing.cjs.map +1 -1
  154. package/dist/pages/FeatureFixing.d.cts +2 -2
  155. package/dist/pages/FeatureFixing.d.ts +2 -2
  156. package/dist/pages/FeatureFixing.js +1 -1
  157. package/dist/pages/FeatureFixing.js.map +1 -1
  158. package/dist/pages/LoginPage.cjs +1 -1
  159. package/dist/pages/LoginPage.cjs.map +1 -1
  160. package/dist/pages/LoginPage.d.cts +2 -2
  161. package/dist/pages/LoginPage.d.ts +2 -2
  162. package/dist/pages/LoginPage.js +1 -1
  163. package/dist/pages/LoginPage.js.map +1 -1
  164. package/dist/pages/NotAuthorized.cjs +1 -1
  165. package/dist/pages/NotAuthorized.cjs.map +1 -1
  166. package/dist/pages/NotAuthorized.d.ts +2 -2
  167. package/dist/pages/NotAuthorized.js +1 -1
  168. package/dist/pages/NotAuthorized.js.map +1 -1
  169. package/dist/pages/NotFound.cjs +1 -1
  170. package/dist/pages/NotFound.cjs.map +1 -1
  171. package/dist/pages/NotFound.d.cts +2 -2
  172. package/dist/pages/NotFound.d.ts +2 -2
  173. package/dist/pages/NotFound.js +1 -1
  174. package/dist/pages/NotFound.js.map +1 -1
  175. package/dist/pages/RegisterPage.cjs +1 -1
  176. package/dist/pages/RegisterPage.cjs.map +1 -1
  177. package/dist/pages/RegisterPage.d.cts +2 -2
  178. package/dist/pages/RegisterPage.d.ts +2 -2
  179. package/dist/pages/RegisterPage.js +1 -1
  180. package/dist/pages/RegisterPage.js.map +1 -1
  181. package/dist/pages/VerifyEmailPage.cjs +1 -1
  182. package/dist/pages/VerifyEmailPage.cjs.map +1 -1
  183. package/dist/pages/VerifyEmailPage.d.cts +2 -2
  184. package/dist/pages/VerifyEmailPage.d.ts +2 -2
  185. package/dist/pages/VerifyEmailPage.js +1 -1
  186. package/dist/pages/VerifyEmailPage.js.map +1 -1
  187. package/dist/{paragraph-DvTZvbzw.cjs → paragraph-D0x3Jc6W.cjs} +2 -2
  188. package/dist/{paragraph-DvTZvbzw.cjs.map → paragraph-D0x3Jc6W.cjs.map} +1 -1
  189. package/dist/{paragraph-Cc13ZI4d.js → paragraph-ESjXXqHU.js} +1 -1
  190. package/dist/{paragraph-Cc13ZI4d.js.map → paragraph-ESjXXqHU.js.map} +1 -1
  191. package/dist/payment-layout-CksJbGsl.js +2 -0
  192. package/dist/{payment-layout-giaGvs8T.js.map → payment-layout-CksJbGsl.js.map} +1 -1
  193. package/dist/payment-layout-O7TNw2Cr.cjs +2 -0
  194. package/dist/{payment-layout-DyILfyVG.cjs.map → payment-layout-O7TNw2Cr.cjs.map} +1 -1
  195. package/dist/search-modal-Db8Xp2L4.cjs +2 -0
  196. package/dist/{search-modal-B-pzGcfP.cjs.map → search-modal-Db8Xp2L4.cjs.map} +1 -1
  197. package/dist/search-modal-DdonKbwA.js +2 -0
  198. package/dist/{search-modal-b2AE5WEW.js.map → search-modal-DdonKbwA.js.map} +1 -1
  199. package/dist/sidebar-BCuXtop_.js +2 -0
  200. package/dist/sidebar-BCuXtop_.js.map +1 -0
  201. package/dist/sidebar-CQZlWCK4.cjs +2 -0
  202. package/dist/{sidebar-D5J2gcTw.cjs.map → sidebar-CQZlWCK4.cjs.map} +1 -1
  203. package/dist/{skeleton-DlRDNM97.js → skeleton-DAcbjBGp.js} +1 -1
  204. package/dist/{skeleton-DlRDNM97.js.map → skeleton-DAcbjBGp.js.map} +1 -1
  205. package/dist/{skeleton-CX1USu1w.cjs → skeleton-oQFT4xR2.cjs} +2 -2
  206. package/dist/{skeleton-CX1USu1w.cjs.map → skeleton-oQFT4xR2.cjs.map} +1 -1
  207. package/dist/systems/google.cjs +1 -1
  208. package/dist/systems/google.js +1 -1
  209. package/dist/tables-DbwtCMRI.js +4 -0
  210. package/dist/{tables-DWQytYNm.js.map → tables-DbwtCMRI.js.map} +1 -1
  211. package/dist/tables-DgZbLZQP.cjs +4 -0
  212. package/dist/{tables-CPKHe3k-.cjs.map → tables-DgZbLZQP.cjs.map} +1 -1
  213. package/dist/tanstack-form-C3SGhsmN.cjs +2 -0
  214. package/dist/tanstack-form-C3SGhsmN.cjs.map +1 -0
  215. package/dist/tanstack-form-Ds_Zjt20.js +2 -0
  216. package/dist/tanstack-form-Ds_Zjt20.js.map +1 -0
  217. package/dist/text-editor-DhTxCxvH.cjs +2 -0
  218. package/dist/{text-editor-CvJN3nSL.cjs.map → text-editor-DhTxCxvH.cjs.map} +1 -1
  219. package/dist/text-editor-DwisU9_U.js +2 -0
  220. package/dist/{text-editor-WbS7pJJs.js.map → text-editor-DwisU9_U.js.map} +1 -1
  221. package/dist/typography/paragraph.cjs +1 -1
  222. package/dist/typography/paragraph.d.cts +4 -4
  223. package/dist/typography/paragraph.d.ts +3 -3
  224. package/dist/typography/paragraph.js +1 -1
  225. package/dist/typography/title.cjs +1 -1
  226. package/dist/ui/alert-dialog.cjs +1 -1
  227. package/dist/ui/alert-dialog.d.cts +12 -12
  228. package/dist/ui/alert-dialog.d.ts +12 -12
  229. package/dist/ui/alert-dialog.js +1 -1
  230. package/dist/ui/alert.cjs +1 -1
  231. package/dist/ui/alert.d.cts +1 -1
  232. package/dist/ui/alert.d.ts +1 -1
  233. package/dist/ui/alert.js +1 -1
  234. package/dist/ui/aspect-ratio.cjs +1 -1
  235. package/dist/ui/aspect-ratio.d.cts +2 -2
  236. package/dist/ui/aspect-ratio.d.ts +2 -2
  237. package/dist/ui/avatar.cjs +2 -1
  238. package/dist/ui/avatar.cjs.map +1 -0
  239. package/dist/ui/avatar.d.cts +4 -4
  240. package/dist/ui/avatar.d.ts +4 -4
  241. package/dist/ui/avatar.js +2 -1
  242. package/dist/ui/avatar.js.map +1 -0
  243. package/dist/ui/badge.cjs +2 -1
  244. package/dist/ui/badge.cjs.map +1 -0
  245. package/dist/ui/badge.d.cts +42 -2
  246. package/dist/ui/badge.d.ts +42 -2
  247. package/dist/ui/badge.js +2 -1
  248. package/dist/ui/badge.js.map +1 -0
  249. package/dist/ui/breadcrumb.cjs +1 -1
  250. package/dist/ui/breadcrumb.cjs.map +1 -1
  251. package/dist/ui/breadcrumb.d.cts +8 -8
  252. package/dist/ui/breadcrumb.d.ts +8 -8
  253. package/dist/ui/breadcrumb.js +1 -1
  254. package/dist/ui/breadcrumb.js.map +1 -1
  255. package/dist/ui/button-group.cjs +1 -1
  256. package/dist/ui/button-group.cjs.map +1 -1
  257. package/dist/ui/button-group.d.cts +7 -7
  258. package/dist/ui/button-group.d.ts +7 -7
  259. package/dist/ui/button-group.js +1 -1
  260. package/dist/ui/button-group.js.map +1 -1
  261. package/dist/ui/button.cjs +2 -1
  262. package/dist/ui/button.cjs.map +1 -0
  263. package/dist/ui/button.d.cts +1 -1
  264. package/dist/ui/button.d.ts +1 -1
  265. package/dist/ui/button.js +2 -1
  266. package/dist/ui/button.js.map +1 -0
  267. package/dist/ui/buttons/add-new.cjs +1 -1
  268. package/dist/ui/buttons/add-new.cjs.map +1 -1
  269. package/dist/ui/buttons/add-new.js +1 -1
  270. package/dist/ui/buttons/add-new.js.map +1 -1
  271. package/dist/ui/buttons/edit.cjs +1 -1
  272. package/dist/ui/buttons/edit.cjs.map +1 -1
  273. package/dist/ui/buttons/edit.js +1 -1
  274. package/dist/ui/buttons/edit.js.map +1 -1
  275. package/dist/ui/buttons/refresh.cjs +1 -1
  276. package/dist/ui/buttons/refresh.cjs.map +1 -1
  277. package/dist/ui/buttons/refresh.js +1 -1
  278. package/dist/ui/buttons/refresh.js.map +1 -1
  279. package/dist/ui/buttons/trash.cjs +1 -1
  280. package/dist/ui/buttons/trash.cjs.map +1 -1
  281. package/dist/ui/buttons/trash.js +1 -1
  282. package/dist/ui/buttons/trash.js.map +1 -1
  283. package/dist/ui/buttons/upload-image.cjs +1 -1
  284. package/dist/ui/buttons/upload-image.cjs.map +1 -1
  285. package/dist/ui/buttons/upload-image.js +1 -1
  286. package/dist/ui/buttons/upload-image.js.map +1 -1
  287. package/dist/ui/calendar.cjs +2 -1
  288. package/dist/ui/calendar.cjs.map +1 -0
  289. package/dist/ui/calendar.d.cts +4 -4
  290. package/dist/ui/calendar.d.ts +4 -4
  291. package/dist/ui/calendar.js +2 -1
  292. package/dist/ui/calendar.js.map +1 -0
  293. package/dist/ui/card.cjs +1 -1
  294. package/dist/ui/card.d.cts +8 -8
  295. package/dist/ui/card.d.ts +8 -8
  296. package/dist/ui/card.js +1 -1
  297. package/dist/ui/carousel.cjs +1 -1
  298. package/dist/ui/carousel.cjs.map +1 -1
  299. package/dist/ui/carousel.d.cts +7 -7
  300. package/dist/ui/carousel.d.ts +7 -7
  301. package/dist/ui/carousel.js +1 -1
  302. package/dist/ui/carousel.js.map +1 -1
  303. package/dist/ui/checkbox.cjs +2 -1
  304. package/dist/ui/checkbox.cjs.map +1 -0
  305. package/dist/ui/checkbox.d.cts +2 -2
  306. package/dist/ui/checkbox.js +2 -1
  307. package/dist/ui/checkbox.js.map +1 -0
  308. package/dist/ui/collapsible.cjs +1 -1
  309. package/dist/ui/collapsible.d.cts +4 -4
  310. package/dist/ui/command.cjs +2 -1
  311. package/dist/ui/command.cjs.map +1 -0
  312. package/dist/ui/command.d.cts +11 -11
  313. package/dist/ui/command.d.ts +11 -11
  314. package/dist/ui/command.js +2 -1
  315. package/dist/ui/command.js.map +1 -0
  316. package/dist/ui/context-menu.cjs +1 -1
  317. package/dist/ui/context-menu.d.cts +16 -16
  318. package/dist/ui/context-menu.d.ts +16 -16
  319. package/dist/ui/dialog.cjs +2 -1
  320. package/dist/ui/dialog.cjs.map +1 -0
  321. package/dist/ui/dialog.d.cts +90 -2
  322. package/dist/ui/dialog.d.ts +90 -2
  323. package/dist/ui/dialog.js +2 -1
  324. package/dist/ui/dialog.js.map +1 -0
  325. package/dist/ui/drawer.cjs +2 -1
  326. package/dist/ui/drawer.cjs.map +1 -0
  327. package/dist/ui/drawer.d.cts +11 -11
  328. package/dist/ui/drawer.d.ts +11 -11
  329. package/dist/ui/drawer.js +2 -1
  330. package/dist/ui/drawer.js.map +1 -0
  331. package/dist/ui/dropdown-menu.cjs +2 -1
  332. package/dist/ui/dropdown-menu.cjs.map +1 -0
  333. package/dist/ui/dropdown-menu.d.cts +16 -16
  334. package/dist/ui/dropdown-menu.d.ts +16 -16
  335. package/dist/ui/dropdown-menu.js +2 -1
  336. package/dist/ui/dropdown-menu.js.map +1 -0
  337. package/dist/ui/empty.cjs +1 -1
  338. package/dist/ui/empty.d.cts +9 -9
  339. package/dist/ui/empty.d.ts +7 -7
  340. package/dist/ui/field.cjs +1 -1
  341. package/dist/ui/field.d.cts +24 -24
  342. package/dist/ui/field.d.ts +24 -24
  343. package/dist/ui/field.js +1 -1
  344. package/dist/ui/file-uploader.cjs +2 -2
  345. package/dist/ui/file-uploader.cjs.map +1 -1
  346. package/dist/ui/file-uploader.d.cts +2 -2
  347. package/dist/ui/file-uploader.d.ts +2 -2
  348. package/dist/ui/file-uploader.js +2 -2
  349. package/dist/ui/file-uploader.js.map +1 -1
  350. package/dist/ui/form.cjs +1 -1
  351. package/dist/ui/form.cjs.map +1 -1
  352. package/dist/ui/form.d.cts +10 -10
  353. package/dist/ui/form.d.ts +10 -10
  354. package/dist/ui/form.js +1 -1
  355. package/dist/ui/form.js.map +1 -1
  356. package/dist/ui/hover-card.cjs +1 -1
  357. package/dist/ui/hover-card.d.cts +4 -4
  358. package/dist/ui/hover-card.d.ts +4 -4
  359. package/dist/ui/image.cjs +2 -1
  360. package/dist/ui/image.cjs.map +1 -0
  361. package/dist/ui/image.js +2 -1
  362. package/dist/ui/image.js.map +1 -0
  363. package/dist/ui/input-otp.cjs +1 -1
  364. package/dist/ui/input-otp.d.cts +5 -5
  365. package/dist/ui/input-otp.d.ts +5 -5
  366. package/dist/ui/input-otp.js +1 -1
  367. package/dist/ui/input.cjs +2 -1
  368. package/dist/ui/input.cjs.map +1 -0
  369. package/dist/ui/input.d.cts +44 -2
  370. package/dist/ui/input.d.ts +44 -2
  371. package/dist/ui/input.js +2 -1
  372. package/dist/ui/input.js.map +1 -0
  373. package/dist/ui/inputs/search-input.cjs +1 -1
  374. package/dist/ui/inputs/search-input.cjs.map +1 -1
  375. package/dist/ui/inputs/search-input.d.cts +3 -3
  376. package/dist/ui/inputs/search-input.d.ts +3 -3
  377. package/dist/ui/inputs/search-input.js +1 -1
  378. package/dist/ui/inputs/search-input.js.map +1 -1
  379. package/dist/ui/item.cjs +1 -1
  380. package/dist/ui/item.cjs.map +1 -1
  381. package/dist/ui/item.d.cts +15 -15
  382. package/dist/ui/item.d.ts +15 -15
  383. package/dist/ui/item.js +1 -1
  384. package/dist/ui/item.js.map +1 -1
  385. package/dist/ui/label.cjs +2 -1
  386. package/dist/ui/label.cjs.map +1 -0
  387. package/dist/ui/label.d.cts +2 -2
  388. package/dist/ui/label.d.ts +2 -2
  389. package/dist/ui/label.js +2 -1
  390. package/dist/ui/label.js.map +1 -0
  391. package/dist/ui/menubar.cjs +1 -1
  392. package/dist/ui/menubar.d.cts +17 -17
  393. package/dist/ui/menubar.d.ts +17 -17
  394. package/dist/ui/multi-select.cjs +1 -1
  395. package/dist/ui/multi-select.cjs.map +1 -1
  396. package/dist/ui/multi-select.d.cts +3 -3
  397. package/dist/ui/multi-select.d.ts +6 -7
  398. package/dist/ui/multi-select.js +1 -1
  399. package/dist/ui/multi-select.js.map +1 -1
  400. package/dist/ui/navigation-menu.cjs +1 -1
  401. package/dist/ui/navigation-menu.d.cts +9 -9
  402. package/dist/ui/navigation-menu.d.ts +9 -9
  403. package/dist/ui/pagination.cjs +1 -1
  404. package/dist/ui/pagination.d.cts +9 -9
  405. package/dist/ui/pagination.d.ts +9 -9
  406. package/dist/ui/pagination.js +1 -1
  407. package/dist/ui/popover.cjs +2 -1
  408. package/dist/ui/popover.cjs.map +1 -0
  409. package/dist/ui/popover.d.cts +6 -6
  410. package/dist/ui/popover.d.ts +6 -6
  411. package/dist/ui/popover.js +2 -1
  412. package/dist/ui/popover.js.map +1 -0
  413. package/dist/ui/progress.cjs +2 -1
  414. package/dist/ui/progress.cjs.map +1 -0
  415. package/dist/ui/progress.d.cts +2 -2
  416. package/dist/ui/progress.d.ts +2 -2
  417. package/dist/ui/progress.js +2 -1
  418. package/dist/ui/progress.js.map +1 -0
  419. package/dist/ui/radio-group.cjs +2 -1
  420. package/dist/ui/radio-group.cjs.map +1 -0
  421. package/dist/ui/radio-group.d.cts +3 -3
  422. package/dist/ui/radio-group.d.ts +3 -3
  423. package/dist/ui/radio-group.js +2 -1
  424. package/dist/ui/radio-group.js.map +1 -0
  425. package/dist/ui/resizable.cjs +2 -1
  426. package/dist/ui/resizable.cjs.map +1 -0
  427. package/dist/ui/resizable.d.cts +9 -9
  428. package/dist/ui/resizable.d.ts +9 -9
  429. package/dist/ui/resizable.js +2 -1
  430. package/dist/ui/resizable.js.map +1 -0
  431. package/dist/ui/scroll-area.cjs +1 -1
  432. package/dist/ui/scroll-area.d.cts +5 -5
  433. package/dist/ui/scroll-area.d.ts +5 -5
  434. package/dist/ui/scroll-area.js +1 -1
  435. package/dist/ui/select.cjs +2 -1
  436. package/dist/ui/select.cjs.map +1 -0
  437. package/dist/ui/select.d.cts +9 -9
  438. package/dist/ui/select.d.ts +9 -9
  439. package/dist/ui/select.js +2 -1
  440. package/dist/ui/select.js.map +1 -0
  441. package/dist/ui/separator.cjs +2 -1
  442. package/dist/ui/separator.cjs.map +1 -0
  443. package/dist/ui/separator.d.cts +2 -2
  444. package/dist/ui/separator.d.ts +2 -2
  445. package/dist/ui/separator.js +2 -1
  446. package/dist/ui/separator.js.map +1 -0
  447. package/dist/ui/sheet.cjs +2 -1
  448. package/dist/ui/sheet.cjs.map +1 -0
  449. package/dist/ui/sheet.d.cts +9 -9
  450. package/dist/ui/sheet.d.ts +9 -9
  451. package/dist/ui/sheet.js +2 -1
  452. package/dist/ui/sheet.js.map +1 -0
  453. package/dist/ui/skeleton.cjs +1 -1
  454. package/dist/ui/skeleton.d.cts +2 -2
  455. package/dist/ui/skeleton.d.ts +2 -2
  456. package/dist/ui/skeleton.js +1 -1
  457. package/dist/ui/slider.cjs +1 -1
  458. package/dist/ui/slider.d.cts +2 -2
  459. package/dist/ui/slider.d.ts +2 -2
  460. package/dist/ui/slider.js +1 -1
  461. package/dist/ui/sonner.cjs +1 -1
  462. package/dist/ui/sonner.d.cts +2 -2
  463. package/dist/ui/sonner.d.ts +2 -2
  464. package/dist/ui/spinner.cjs +2 -1
  465. package/dist/ui/spinner.cjs.map +1 -0
  466. package/dist/ui/spinner.d.cts +2 -2
  467. package/dist/ui/spinner.d.ts +2 -2
  468. package/dist/ui/spinner.js +2 -1
  469. package/dist/ui/spinner.js.map +1 -0
  470. package/dist/ui/switch.cjs +2 -1
  471. package/dist/ui/switch.cjs.map +1 -0
  472. package/dist/ui/switch.d.cts +2 -2
  473. package/dist/ui/switch.d.ts +2 -2
  474. package/dist/ui/switch.js +2 -1
  475. package/dist/ui/switch.js.map +1 -0
  476. package/dist/ui/table.cjs +1 -1
  477. package/dist/ui/table.d.cts +17 -17
  478. package/dist/ui/table.d.ts +17 -17
  479. package/dist/ui/table.js +1 -1
  480. package/dist/ui/tabs.cjs +1 -1
  481. package/dist/ui/tabs.d.cts +5 -5
  482. package/dist/ui/tabs.d.ts +5 -5
  483. package/dist/ui/textarea.cjs +2 -1
  484. package/dist/ui/textarea.cjs.map +1 -0
  485. package/dist/ui/textarea.d.cts +2 -2
  486. package/dist/ui/textarea.d.ts +2 -2
  487. package/dist/ui/textarea.js +2 -1
  488. package/dist/ui/textarea.js.map +1 -0
  489. package/dist/ui/toggle-group.cjs +1 -1
  490. package/dist/ui/toggle-group.cjs.map +1 -1
  491. package/dist/ui/toggle-group.d.cts +4 -4
  492. package/dist/ui/toggle-group.d.ts +4 -4
  493. package/dist/ui/toggle-group.js +1 -1
  494. package/dist/ui/toggle-group.js.map +1 -1
  495. package/dist/ui/toggle.cjs +1 -1
  496. package/dist/ui/toggle.d.cts +4 -4
  497. package/dist/ui/toggle.d.ts +4 -4
  498. package/dist/ui/tooltip.cjs +2 -1
  499. package/dist/ui/tooltip.cjs.map +1 -0
  500. package/dist/ui/tooltip.d.cts +5 -5
  501. package/dist/ui/tooltip.d.ts +5 -5
  502. package/dist/ui/tooltip.js +2 -1
  503. package/dist/ui/tooltip.js.map +1 -0
  504. package/package.json +1 -1
  505. package/dist/avatar-Hpj8lmux.js +0 -2
  506. package/dist/avatar-Hpj8lmux.js.map +0 -1
  507. package/dist/avatar-TyOphzGo.cjs +0 -2
  508. package/dist/avatar-TyOphzGo.cjs.map +0 -1
  509. package/dist/badge-BvKBYsIh.d.ts +0 -42
  510. package/dist/badge-CRpRXSuO.js +0 -2
  511. package/dist/badge-CRpRXSuO.js.map +0 -1
  512. package/dist/badge-KW7xu5Ca.cjs +0 -2
  513. package/dist/badge-KW7xu5Ca.cjs.map +0 -1
  514. package/dist/badge-Y-DJHIVI.d.cts +0 -42
  515. package/dist/button-C--DAN1D.cjs +0 -2
  516. package/dist/button-C--DAN1D.cjs.map +0 -1
  517. package/dist/button-LMMbL-uH.js +0 -2
  518. package/dist/button-LMMbL-uH.js.map +0 -1
  519. package/dist/calendar-4weBDnXz.cjs +0 -2
  520. package/dist/calendar-4weBDnXz.cjs.map +0 -1
  521. package/dist/calendar-DzPt7b6k.js +0 -2
  522. package/dist/calendar-DzPt7b6k.js.map +0 -1
  523. package/dist/checkbox-DLGDoU-1.js +0 -2
  524. package/dist/checkbox-DLGDoU-1.js.map +0 -1
  525. package/dist/checkbox-Dsq-MSbH.cjs +0 -2
  526. package/dist/checkbox-Dsq-MSbH.cjs.map +0 -1
  527. package/dist/chunk-350yNsax.cjs +0 -1
  528. package/dist/cms-layout-BCH4NroR.cjs +0 -2
  529. package/dist/cms-layout-tPwrgJZc.js +0 -2
  530. package/dist/command-2gUejA6g.js +0 -2
  531. package/dist/command-2gUejA6g.js.map +0 -1
  532. package/dist/command-CsP8a1Un.cjs +0 -2
  533. package/dist/command-CsP8a1Un.cjs.map +0 -1
  534. package/dist/date-BIqCFM1Z.js +0 -2
  535. package/dist/date-BIqCFM1Z.js.map +0 -1
  536. package/dist/date-D4NVl6C9.cjs +0 -2
  537. package/dist/date-D4NVl6C9.cjs.map +0 -1
  538. package/dist/dialog-BXkm3_Bk.d.ts +0 -90
  539. package/dist/dialog-BigPrWIj.cjs +0 -2
  540. package/dist/dialog-BigPrWIj.cjs.map +0 -1
  541. package/dist/dialog-CmutQ3rp.js +0 -2
  542. package/dist/dialog-CmutQ3rp.js.map +0 -1
  543. package/dist/dialog-DAl7wicp.d.cts +0 -90
  544. package/dist/dist-Cx5ufCdr.cjs +0 -2
  545. package/dist/dist-Cx5ufCdr.cjs.map +0 -1
  546. package/dist/dist-EPxjIRJp.js +0 -2
  547. package/dist/dist-EPxjIRJp.js.map +0 -1
  548. package/dist/drawer-B3qXaN5p.js +0 -2
  549. package/dist/drawer-B3qXaN5p.js.map +0 -1
  550. package/dist/drawer-BB8BZzDG.cjs +0 -2
  551. package/dist/drawer-BB8BZzDG.cjs.map +0 -1
  552. package/dist/dropdown-menu-CVh520yG.cjs +0 -2
  553. package/dist/dropdown-menu-CVh520yG.cjs.map +0 -1
  554. package/dist/dropdown-menu-DeHCVyby.js +0 -2
  555. package/dist/dropdown-menu-DeHCVyby.js.map +0 -1
  556. package/dist/field-BrlETeXX.cjs +0 -2
  557. package/dist/field-DpoKF1nY.js +0 -2
  558. package/dist/image-BpTuF_1w.js +0 -2
  559. package/dist/image-BpTuF_1w.js.map +0 -1
  560. package/dist/image-W_Yb0xTB.cjs +0 -2
  561. package/dist/image-W_Yb0xTB.cjs.map +0 -1
  562. package/dist/input-BBxY18n7.d.ts +0 -44
  563. package/dist/input-D59Pfu7U.d.cts +0 -44
  564. package/dist/input-DAfP6LZ7.js +0 -2
  565. package/dist/input-DAfP6LZ7.js.map +0 -1
  566. package/dist/input-WJ0DLHTR.cjs +0 -2
  567. package/dist/input-WJ0DLHTR.cjs.map +0 -1
  568. package/dist/label-B8cAG2kc.js +0 -2
  569. package/dist/label-B8cAG2kc.js.map +0 -1
  570. package/dist/label-CC6fXVbC.cjs +0 -2
  571. package/dist/label-CC6fXVbC.cjs.map +0 -1
  572. package/dist/payment-layout-DyILfyVG.cjs +0 -2
  573. package/dist/payment-layout-giaGvs8T.js +0 -2
  574. package/dist/popover-6233wU1s.js +0 -2
  575. package/dist/popover-6233wU1s.js.map +0 -1
  576. package/dist/popover-DBsC8Ltp.cjs +0 -2
  577. package/dist/popover-DBsC8Ltp.cjs.map +0 -1
  578. package/dist/progress-AYknlEgK.js +0 -2
  579. package/dist/progress-AYknlEgK.js.map +0 -1
  580. package/dist/progress-gvBqNiHp.cjs +0 -2
  581. package/dist/progress-gvBqNiHp.cjs.map +0 -1
  582. package/dist/radio-group-ImoBjpqZ.js +0 -2
  583. package/dist/radio-group-ImoBjpqZ.js.map +0 -1
  584. package/dist/radio-group-_TdMkv8w.cjs +0 -2
  585. package/dist/radio-group-_TdMkv8w.cjs.map +0 -1
  586. package/dist/resizable-C-M-mu6b.js +0 -2
  587. package/dist/resizable-C-M-mu6b.js.map +0 -1
  588. package/dist/resizable-sgpaHAb8.cjs +0 -2
  589. package/dist/resizable-sgpaHAb8.cjs.map +0 -1
  590. package/dist/search-modal-B-pzGcfP.cjs +0 -2
  591. package/dist/search-modal-b2AE5WEW.js +0 -2
  592. package/dist/select-CWLQHh8x.cjs +0 -2
  593. package/dist/select-CWLQHh8x.cjs.map +0 -1
  594. package/dist/select-CryLzZA0.js +0 -2
  595. package/dist/select-CryLzZA0.js.map +0 -1
  596. package/dist/separator-BM8hA4DP.js +0 -2
  597. package/dist/separator-BM8hA4DP.js.map +0 -1
  598. package/dist/separator-KuymG9g0.cjs +0 -2
  599. package/dist/separator-KuymG9g0.cjs.map +0 -1
  600. package/dist/sheet-CvKSi0UC.cjs +0 -2
  601. package/dist/sheet-CvKSi0UC.cjs.map +0 -1
  602. package/dist/sheet-DGXXYgWB.js +0 -2
  603. package/dist/sheet-DGXXYgWB.js.map +0 -1
  604. package/dist/sidebar-BDrsbzo5.js +0 -2
  605. package/dist/sidebar-BDrsbzo5.js.map +0 -1
  606. package/dist/sidebar-D5J2gcTw.cjs +0 -2
  607. package/dist/spinner-C1eamx3w.js +0 -2
  608. package/dist/spinner-C1eamx3w.js.map +0 -1
  609. package/dist/spinner-CFxorYEt.cjs +0 -2
  610. package/dist/spinner-CFxorYEt.cjs.map +0 -1
  611. package/dist/statistic-CYMqAYNc.js +0 -2
  612. package/dist/statistic-CYMqAYNc.js.map +0 -1
  613. package/dist/statistic-DDXilD7q.cjs +0 -2
  614. package/dist/statistic-DDXilD7q.cjs.map +0 -1
  615. package/dist/switch-BLHmdRq2.js +0 -2
  616. package/dist/switch-BLHmdRq2.js.map +0 -1
  617. package/dist/switch-DVfOV7wP.cjs +0 -2
  618. package/dist/switch-DVfOV7wP.cjs.map +0 -1
  619. package/dist/tables-CPKHe3k-.cjs +0 -4
  620. package/dist/tables-DWQytYNm.js +0 -4
  621. package/dist/tanstack-form-DatI41wz.cjs +0 -12
  622. package/dist/tanstack-form-DatI41wz.cjs.map +0 -1
  623. package/dist/tanstack-form-YVdm9V01.js +0 -12
  624. package/dist/tanstack-form-YVdm9V01.js.map +0 -1
  625. package/dist/text-editor-CvJN3nSL.cjs +0 -2
  626. package/dist/text-editor-WbS7pJJs.js +0 -2
  627. package/dist/textarea-Bp6VvhiA.js +0 -2
  628. package/dist/textarea-Bp6VvhiA.js.map +0 -1
  629. package/dist/textarea-Cc9CF8wD.cjs +0 -2
  630. package/dist/textarea-Cc9CF8wD.cjs.map +0 -1
  631. package/dist/tooltip-CBdoIzoM.cjs +0 -2
  632. package/dist/tooltip-CBdoIzoM.cjs.map +0 -1
  633. package/dist/tooltip-CVIl6Hln.js +0 -2
  634. package/dist/tooltip-CVIl6Hln.js.map +0 -1
  635. package/dist/types-BD1t0Bj8.cjs +0 -2
  636. package/dist/types-BD1t0Bj8.cjs.map +0 -1
  637. package/dist/types-BVSfF-1o.d.ts +0 -24
  638. package/dist/types-BZqffRVJ.js +0 -2
  639. package/dist/types-BZqffRVJ.js.map +0 -1
  640. package/dist/types-Cc_mLRAn.d.cts +0 -24
  641. package/dist/user-BSpgswEC.js +0 -2
  642. package/dist/user-BSpgswEC.js.map +0 -1
  643. package/dist/user-ii4FBhO1.cjs +0 -2
  644. package/dist/user-ii4FBhO1.cjs.map +0 -1
@@ -1,4 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`),t=require(`./button-C--DAN1D.cjs`),n=require(`./paragraph-DvTZvbzw.cjs`),r=require(`./flex-DmWmOBn5.cjs`),i=require(`./date-D4NVl6C9.cjs`),a=require(`./badge-KW7xu5Ca.cjs`),o=require(`./tooltip-CBdoIzoM.cjs`),s=require(`./statistic-DDXilD7q.cjs`),c=require(`./avatar-TyOphzGo.cjs`),l=require(`./separator-KuymG9g0.cjs`),u=require(`./dropdown-menu-CVh520yG.cjs`),d=require(`./progress-gvBqNiHp.cjs`),f=require(`./checkbox-Dsq-MSbH.cjs`),p=require(`./spinner-CFxorYEt.cjs`),m=require(`./resizable-sgpaHAb8.cjs`),h=require(`./input-WJ0DLHTR.cjs`),g=require(`./label-CC6fXVbC.cjs`),_=require(`./popover-DBsC8Ltp.cjs`),v=require(`./select-CWLQHh8x.cjs`);let y=require(`lucide-react`),b=require(`react`),x=require(`@customafk/react-toolkit/utils`),S=require(`class-variance-authority`),C=require(`react/jsx-runtime`),w=require(`@customafk/react-toolkit/color-hash`),T=require(`@tanstack/react-table`),E=require(`@tanstack/react-virtual`),ee=require(`@customafk/react-toolkit/hooks/useDebounceCallback`);const te=({name:e,avatarUrl:t,uuid:n})=>{let r=w.colorHashLight.hex(n??e);return(0,C.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,C.jsxs)(c.t,{className:`size-8 shrink-0`,children:[(0,C.jsx)(c.r,{src:t,alt:e}),(0,C.jsx)(c.n,{style:{backgroundColor:r},children:(0,C.jsx)(y.UserRoundIcon,{size:18,className:`text-white`})})]}),(0,C.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e})]})},D=()=>(0,C.jsxs)(`div`,{className:`flex gap-0 text-text-positive-weak`,children:[(0,C.jsx)(y.MinusIcon,{size:16}),(0,C.jsx)(y.MinusIcon,{size:16})]}),ne=({label:e,onClick:t,onRemove:n})=>e?n?(0,C.jsxs)(`div`,{className:`flex w-fit gap-x-0.5 rounded-full border border-border py-1 pr-2 pl-3 text-text-positive text-xs shadow-xs`,onClick:e=>{t?.(),e.stopPropagation(),e.preventDefault()},children:[e,(0,C.jsx)(`button`,{className:`cursor-pointer text-text-positive-weak hover:text-text-positive-strong`,onClick:e=>{n?.(),e.stopPropagation(),e.preventDefault()},children:(0,C.jsx)(y.XIcon,{size:12})})]}):(0,C.jsx)(`button`,{className:`w-fit rounded-full border border-border px-3 py-1 text-text-positive text-xs shadow-xs`,onClick:e=>{t?.(),e.stopPropagation(),e.preventDefault()},children:e}):(0,C.jsx)(D,{}),re=({value:e})=>e==null?(0,C.jsx)(D,{}):e===!1?(0,C.jsx)(y.XIcon,{size:14,strokeWidth:2,className:`text-danger-strong`}):(0,C.jsx)(y.CheckIcon,{size:14,strokeWidth:2,className:`text-success-strong`}),O=(0,b.memo)(({value:e,currency:t=`USD`,locale:n=`en-US`,display:r=`symbol`,size:i=`md`,colorize:a=!1})=>{let o=(0,b.useMemo)(()=>{let i=typeof e==`string`?Number(e.trim()):e;return i==null||Number.isNaN(i)||!Number.isFinite(i)?null:new Intl.NumberFormat(n,{style:`currency`,currency:t,currencyDisplay:r,minimumFractionDigits:2,maximumFractionDigits:2}).format(i)},[e,t,n,r]),s=(0,b.useMemo)(()=>{let t=typeof e==`string`?Number(e.trim()):e;return typeof t==`number`&&t<0},[e]);return o?(0,C.jsx)(`p`,{className:(0,x.cn)(`font-number tabular-nums`,i===`xs`&&`text-xs`,i===`sm`&&`text-sm`,i===`md`&&`text-base`,i===`lg`&&`text-lg`,i===`xl`&&`text-xl`,!a&&`text-text-positive`,a&&s&&`text-danger-strong`,a&&!s&&`text-success-strong`),children:o}):(0,C.jsx)(D,{})});O.displayName=`UITableCurrencyDisplay`;const ie=({date:e})=>e==null?(0,C.jsx)(D,{}):(0,C.jsx)(o.r,{children:(0,C.jsxs)(o.t,{children:[(0,C.jsx)(o.i,{asChild:!0,children:(0,C.jsx)(a.t,{className:`h-fit`,children:(0,C.jsx)(i.t,{date:e,format:`medium`,className:`font-normal text-white`})})}),(0,C.jsx)(o.n,{className:`rounded px-2`,children:(0,C.jsx)(i.t,{date:e,format:`full`,showTime:!0,className:`font-medium text-text-negative text-xs`})})]})}),k=({content:e})=>e==null?(0,C.jsx)(D,{}):(0,C.jsxs)(o.t,{children:[(0,C.jsx)(o.i,{children:(0,C.jsx)(n.t,{variant:`sm`,className:`line-clamp-2 whitespace-pre-line break-all`,children:e})}),(0,C.jsx)(o.n,{align:`start`,className:`h-fit min-w-48 max-w-80 pt-4`,children:(0,C.jsxs)(`div`,{className:`flex flex-col gap-y-2`,children:[(0,C.jsx)(n.t,{variant:`xs`,className:`whitespace-pre-line text-wrap break-keep text-text-negative-weak`,children:e}),(0,C.jsxs)(`p`,{className:`w-full text-end`,children:[e.toString().length,` chars`]})]})})]}),ae=({email:e,linkable:t=!0})=>{let[n,r]=(0,b.useState)(!1);return e?(0,C.jsx)(o.r,{children:(0,C.jsxs)(`div`,{className:`group flex items-center gap-x-1.5`,children:[(0,C.jsx)(y.MailIcon,{size:13,className:`shrink-0 text-text-positive-weak`}),t?(0,C.jsx)(`a`,{href:`mailto:${e}`,className:`truncate text-primary text-sm underline-offset-2 hover:underline`,onClick:e=>e.stopPropagation(),children:e}):(0,C.jsx)(`span`,{className:`truncate text-text-positive text-sm`,children:e}),(0,C.jsxs)(o.t,{children:[(0,C.jsx)(o.i,{asChild:!0,children:(0,C.jsx)(`button`,{onClick:t=>{t.stopPropagation(),t.preventDefault(),navigator.clipboard.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1500)})},className:`shrink-0 cursor-pointer text-text-positive-weak opacity-0 transition-opacity group-hover:opacity-100 hover:text-text-positive`,children:n?(0,C.jsx)(y.CheckIcon,{size:13,className:`text-success-strong`}):(0,C.jsx)(y.CopyIcon,{size:13})})}),(0,C.jsx)(o.n,{children:n?`Copied!`:`Copy email`})]})]})}):(0,C.jsx)(D,{})},oe=({items:e,maxVisible:t=3})=>{if(!e||e.length===0)return(0,C.jsx)(D,{});let n=e.slice(0,t),r=e.slice(t);return(0,C.jsxs)(`div`,{className:`flex flex-wrap gap-1`,children:[n.map((e,t)=>(0,C.jsx)(`span`,{className:`inline-flex items-center rounded-full border border-border bg-muted-weak px-2 py-0.5 text-text-positive text-xs`,children:e},t)),r.length>0&&(0,C.jsx)(o.r,{children:(0,C.jsxs)(o.t,{children:[(0,C.jsx)(o.i,{asChild:!0,children:(0,C.jsxs)(`span`,{className:`inline-flex cursor-default items-center rounded-full bg-primary-bg-subtle px-2 py-0.5 text-primary-intense text-xs`,children:[`+`,r.length,` more`]})}),(0,C.jsx)(o.n,{align:`start`,className:`flex max-w-64 flex-wrap gap-1 p-2`,children:r.map((e,t)=>(0,C.jsx)(`span`,{className:`inline-flex items-center rounded-full border border-border px-2 py-0.5 text-text-negative text-xs`,children:e},t))})]})})]})},se=({items:e=[]})=>(0,C.jsxs)(u.t,{children:[(0,C.jsx)(u.h,{asChild:!0,children:(0,C.jsx)(t.t,{size:`sm`,variant:`ghost`,color:`secondary`,className:`size-9 rounded-full`,children:(0,C.jsx)(y.MoreVerticalIcon,{})})}),(0,C.jsx)(u.r,{children:(0,C.jsx)(u.i,{children:e.map(e=>(0,C.jsx)(u.a,{className:`px-3`,onSelect:t=>{e.onClick(e.id),t.preventDefault(),t.stopPropagation()},children:e.label},e.id))})})]}),A=({name:e})=>e?(0,C.jsxs)(o.t,{children:[(0,C.jsx)(o.i,{children:(0,C.jsx)(n.t,{variant:`sm`,className:`line-clamp-2 w-full truncate text-wrap pb-px text-start`,children:e})}),(0,C.jsx)(o.n,{align:`start`,className:`h-fit min-w-48 max-w-80 pt-4`,children:(0,C.jsxs)(`div`,{className:`flex flex-col gap-y-2`,children:[(0,C.jsx)(`p`,{className:`whitespace-pre-line text-wrap break-keep`,children:e}),(0,C.jsxs)(`p`,{className:`w-full text-end`,children:[e.length,` chars`]})]})})]}):(0,C.jsx)(D,{}),j=({href:e,label:t})=>(0,C.jsxs)(`a`,{href:e,target:`_blank`,className:`inline-flex items-center gap-1 truncate text-primary text-sm underline`,rel:`noopener noreferrer`,children:[(0,C.jsx)(`span`,{children:t||e}),(0,C.jsx)(y.ExternalLinkIcon,{size:14})]}),ce=({value:e})=>(0,C.jsxs)(o.t,{children:[(0,C.jsx)(o.i,{asChild:!0,children:(0,C.jsx)(`p`,{className:`font-number text-text-positive text-sm tabular-nums`,children:e.replace(/(\d{3})(\d{3})(\d{4})/,`($1) $2-$3`)})}),(0,C.jsx)(o.n,{align:`start`,children:(0,C.jsx)(`p`,{className:`tabular-nums`,children:e.slice(1).replace(/(\d{2})(\d{3})(\d{4})/,`(00) (+84) ($1) $2-$3`)})})]}),M=(0,b.memo)(({value:e,showLabel:t=!0,successThreshold:n=70,warningThreshold:r=40})=>{if(e==null)return(0,C.jsx)(D,{});let i=Math.min(100,Math.max(0,e));return(0,C.jsxs)(`div`,{className:`flex w-full min-w-24 items-center gap-x-2`,children:[(0,C.jsx)(d.t,{value:i,className:(0,x.cn)(`flex-1`,i>=n?`[&>[data-slot=progress-indicator]]:bg-success`:i>=r?`[&>[data-slot=progress-indicator]]:bg-warning`:`[&>[data-slot=progress-indicator]]:bg-danger`)}),t&&(0,C.jsxs)(`span`,{className:`w-9 shrink-0 text-right font-number text-text-positive-weak text-xs tabular-nums`,children:[i,`%`]})]})});M.displayName=`UITableProgressDisplay`;const le=({title:e,onClick:n})=>(0,C.jsxs)(o.t,{children:[(0,C.jsx)(o.i,{children:(0,C.jsx)(t.t,{type:`button`,variant:`ghost`,color:`danger`,size:`icon`,onClick:(0,b.useCallback)(async e=>{e.preventDefault(),e.stopPropagation(),await n?.()},[n]),children:(0,C.jsx)(y.Trash2Icon,{})})}),(0,C.jsx)(o.n,{children:(0,C.jsx)(`p`,{children:e||`Remove item from list table`})})]}),ue=(e,t,n)=>{let r=10**t;switch(n){case`floor`:return Math.floor(e*r)/r;case`ceil`:return Math.ceil(e*r)/r;default:return Math.round(e*r)/r}},N=(0,b.memo)(({decimalSeparator:e=`.`,groupSeparator:t=`,`,prefix:n,suffix:i,precision:a,roundingMode:o=`round`,showTrailingZeros:s=!1,size:c=`lg`,value:l=0})=>{let u=(0,b.useMemo)(()=>{let e={};return typeof a==`number`&&a>=0&&s&&(e.minimumFractionDigits=a),e.maximumFractionDigits=a,e},[a,s]),d=(0,b.useCallback)(e=>{let t=e;return typeof a==`number`&&a>=0&&(t=ue(e,a,o)),t.toLocaleString(`en-US`,u)},[o,u,a]),f=(0,b.useMemo)(()=>{if(typeof l==`number`)return Number.isNaN(l)||!Number.isFinite(l)?`N/A`:d(l);if(typeof l==`string`){let e=l.trim();if(!e)return`N/A`;let t=Number(e);return Number.isNaN(t)||!Number.isFinite(t)?`N/A`:d(t)}return`N/A`},[l,d]),p=(0,b.useMemo)(()=>e===`.`&&t===`,`?f:f.replace(/,/g,t).replace(/\./g,e),[f,e,t]);return p===`0`||p===`N/A`||!p?(0,C.jsx)(D,{}):(0,C.jsxs)(r.t,{padding:`none`,className:(0,x.cn)(`font-number text-lg text-text-positive tabular-nums`,c===`xs`&&`text-xs`,c===`sm`&&`text-sm`,c===`md`&&`text-base`,c===`lg`&&`text-lg`,c===`xl`&&`text-xl`),children:[n,(0,C.jsx)(`p`,{children:p}),i]})});N.displayName=`UITableStatisticDisplay`;const de=({value:e,colorMap:t,defaultColor:n=`muted`,variant:r=`soft`})=>e==null||e===``?(0,C.jsx)(D,{}):(0,C.jsx)(a.t,{variant:r,color:(t&&t[e])??n,size:`sm`,className:`min-w-16 justify-center capitalize`,children:e.charAt(0).toUpperCase()+e.slice(1).replace(/_/g,` `)}),P=({uuid:e,username:t,email:i})=>(0,C.jsxs)(r.t,{wrap:!1,gap:`sm`,padding:`none`,children:[!e&&(0,C.jsx)(c.t,{className:`size-10 shadow-card`,children:(0,C.jsx)(c.n,{className:`bg-muted-weak`,children:(0,C.jsx)(y.UserRoundIcon,{size:28,className:`text-text-negative`})})}),e&&(0,C.jsx)(c.t,{className:`size-10 shadow-card`,children:(0,C.jsx)(c.n,{style:{backgroundColor:w.colorHashLight.hex(e)},children:(0,C.jsx)(y.UserRoundIcon,{size:28,className:`text-white`})})}),(0,C.jsxs)(r.t,{vertical:!0,padding:`none`,gap:`none`,align:`start`,children:[(0,C.jsx)(n.t,{className:`font-medium text-sm text-text-positive-weak`,children:t??`Unknown User`}),(0,C.jsx)(n.t,{variant:`sm`,className:`mt-0! text-text-positive-weak text-xs`,children:i})]})]}),F=(0,b.createContext)(null),I=()=>{let e=(0,b.use)(F);if(!e)throw Error(`useTableInnerWrapperContext must be used within a TableInnerWrapperProvider`);return e},fe=(0,b.createContext)(null),L=()=>{let e=(0,b.use)(fe);if(!e)throw Error(`useTableInnerTableContext must be used within a TableInnerTableProvider`);return e},R=(0,b.createContext)(null),pe=()=>{let e=(0,b.use)(R);if(!e)throw Error(`useTableHeaderRowContext must be used within a TableHeaderRowProvider`);return e},z=(0,b.createContext)(null),B=()=>{let e=(0,b.use)(z);if(!e)throw Error(`useTableBodyContext must be used within a TableBodyProvider`);return e},V=(0,b.createContext)(null),me=()=>{let e=(0,b.use)(V);if(!e)throw Error(`useTableRowContext must be used within a TableRowProvider`);return e},he=(0,b.createContext)(null),H=()=>{let e=(0,b.use)(he);if(!e)throw Error(`useTableContext must be used within a TableProvider`);return e},ge=(0,b.createContext)(null),_e=()=>{let e=(0,b.use)(ge);if(!e)throw Error(`useUITableFilterContext must be used within a UITableProvider`);return e},ve=(0,b.createContext)(null),ye=()=>{let e=(0,b.use)(ve);if(!e)throw Error(`useUITableAnalysisContext must be used within a UITableProvider`);return e},be=(0,S.cva)([`absolute right-2 z-10 p-0.5 opacity-0 bg-card`,`cursor-pointer rounded-full transition-all`,`text-text-positive-weak`,`[&>svg]:size-4`,`group-hover:opacity-100`,`hover:bg-muted-muted hover:text-text-positive`]),xe=(0,S.cva)([`sticky left-0 flex flex-1 items-center justify-center bg-transparent text-text-positive-weak opacity-100`]),Se=(0,S.cva)([`relative m-0 flex size-full flex-col flex-nowrap items-start justify-start gap-2`]),Ce=(0,S.cva)([`relative w-full flex-1 min-h-0 overflow-auto border-b border-b-border border-l border-l-border`]),we=(0,S.cva)([`grid w-full table-fixed caption-bottom border-collapse border-spacing-0 flex-col content-start`]),Te=(0,S.cva)([`sticky top-0 z-20 h-9 w-full`,`grid select-none bg-white`,`border-b border-b-border shadow`,`font-medium text-[13px] text-text-positive-weak`,`[&_tr:not(:last-child)_td]:border-b`,`[&_th]:inline-flex`,`[&_th]:bg-card`,`[&_th]:items-center`,`[&_th]:transition-all`,`[&_th]:duration-300`,`[&_th]:whitespace-nowrap`,`[&_th]:border-border`,`[&_th]:border-r`,`[&_th]:first:border-l-0`,`[&_tr_th:not([data-pinned=false])]:bg-card`]),Ee=(0,S.cva)([`flex`]),De=(0,S.cva)([`group flex`],{variants:{isPinned:{left:`sticky`,right:`sticky`,false:`relative`},isActions:{true:`border-r-0!`,false:``},isLastCell:{true:``,false:``},isFirstCell:{true:``,false:``},position:{start:`justify-start`,center:`justify-center`,end:`justify-end`}},compoundVariants:[{isPinned:`left`,isLastCell:!0,className:`border-r border-r-border`},{isPinned:`right`,isFirstCell:!0,className:`border-l border-l-border`}]}),Oe=(0,S.cva)(`relative w-full,grid,[&_tr]:absolute,[&_tr]:flex,[&_tr]:flex-none,[&_tr]:w-full,[&_tr]:cursor-pointer [&_tr]:focus:outline-none,[&_tr]:border-b [&_tr]:border-b-border,[&_td]:z-10,[&_td]:transition-all,[&_td]:flex,[&_td]:flex-none,[&_td]:overflow-hidden,[&_td]:whitespace-nowrap,[&_td]:px-4,[&_td]:py-2.5,[&_td]:align-middle,[&_td]:border-border,[&_td]:data-[selected=true]:bg-muted-muted!,[&_td]:data-[selected=true]:hover:bg-muted-muted!,[&_td>div]:inline-flex,[&_td>div]:items-center,[&_td>div]:w-full,[&_td:not([data-pinned=false])]:z-20,[&_td:not([data-pinned=false])]:sticky,[&_td:not([data-pinned=false])]:bg-muted-bg-subtle`.split(`,`)),ke=(0,S.cva)([`group transition-colors hover:bg-muted-muted hover:[&_td]:bg-muted-muted! [&_td]:border-r [&_td]:border-r-border`]),U=(0,S.cva)([`group-hover:bg-muted-muted!`],{variants:{isPinned:{left:`sticky`,right:`sticky`,false:`relative`}},defaultVariants:{isPinned:void 0}}),Ae=(0,S.cva)([`sticky border-r-0! inset-y-0 right-0 z-50 flex items-center pr-4 group-hover:bg-muted-muted!`]),je=(0,S.cva)([`group-hover:bg-muted-muted!`],{variants:{isPinned:{left:``,right:``,false:``},isLastCell:{true:``,false:``},isFirstCell:{true:``,false:``}},compoundVariants:[{isPinned:`left`,isLastCell:!0,className:`border-r border-r-border`},{isPinned:`right`,isFirstCell:!0,className:`border-l border-l-border`}]}),Me=(0,S.cva)([`overflow-x-hidden`],{variants:{position:{start:`justify-start`,center:`justify-center`,end:`justify-end`}},defaultVariants:{position:`start`}}),Ne=(0,S.cva)([`shrink-0 flex w-full justify-center border-t border-border-weak font-medium`]),Pe=(0,S.cva)([`flex w-full`,`text-[13px] font-medium text-text-positive-weak`]),W=(0,S.cva)([`flex flex-none items-center overflow-hidden whitespace-nowrap px-4 py-2`,`border-r border-r-border`],{variants:{isPinned:{left:`sticky z-20 bg-white`,right:`sticky z-20 bg-white`,false:`relative`},isFirstCell:{true:`border-l border-l-border`,false:``},isLastCell:{true:`border-r border-r-border`,false:``}}}),Fe=(0,S.cva)([`flex cursor-pointer gap-x-0.5`],{variants:{state:{idle:`text-text-positive-weak hover:text-text-positive`,fetching:`cursor-not-allowed`,error:`text-danger hover:text-danger-strong`}},defaultVariants:{state:`idle`}}),G=(0,b.memo)(({height:e,className:t,children:n,...r})=>{let{isFetching:i,isRefetching:a,isEmpty:o}=B();return o||i||a?null:(0,C.jsx)(`tbody`,{slot:`table-body`,style:{height:e},className:(0,x.cn)(Oe(),t),...r,children:n})});G.displayName=`UITableBody`;const K=(0,b.memo)(({isPinned:e=!1,isFirstCell:t=!1,isLastCell:n=!1,colId:r,position:i=`start`,column:a,getContext:o,...s})=>{let{innerTableId:c,table:l}=L(),u=(0,b.useRef)(null),d=(0,b.useRef)(null),f=(0,b.useMemo)(()=>{let t=a?.getStart(`left`);return e===`left`&&typeof t==`number`?`${t}px`:void 0},[e,a]),p=(0,b.useMemo)(()=>{let t=a?.getAfter(`right`);return e===`right`&&typeof t==`number`?`${t}px`:void 0},[e,a]),m=(0,b.useMemo)(()=>`calc(var(--col-${r}-size) * 1px)`,[r]),h=(0,b.useMemo)(()=>a?.columnDef.minSize?`calc(var(--col-${r}-minSize) * 1px)`:void 0,[r,a]),g=(0,b.useMemo)(()=>a?.columnDef.maxSize?`calc(var(--col-${r}-maxSize) * 1px)`:void 0,[r,a]),_=(0,b.useMemo)(()=>(0,T.flexRender)(a?.columnDef.cell,o()),[a,o]);return(0,b.useEffect)(()=>{u.current=document.querySelector(`table[id="${c}"]`)},[c]),(0,b.useEffect)(()=>{if(!d.current)return;let e=d.current.scrollWidth,t=a?.getSize();t!=null&&e>t&&u.current instanceof HTMLTableElement&&typeof r==`string`&&a?.columnDef.meta?.fitContent&&l.setColumnSizing(t=>({...t,[r]:e+32}))},[r,a,l]),(0,C.jsx)(`td`,{slot:`table-body-cell`,"data-pinned":e,"data-lastcell":n||void 0,"data-firstcell":t||void 0,style:{left:f,right:p,width:m,minWidth:h,maxWidth:g},className:je({isPinned:e||void 0,isLastCell:n,isFirstCell:t}),...s,children:(0,C.jsx)(`div`,{ref:d,slot:`table-body-cell-inner`,className:Me({position:i}),children:_})})});K.displayName=`UITableCell`;const q=(0,b.memo)(({virtualRowIndex:e,column:t,getContext:n,className:r,...i})=>{let a=(0,b.useMemo)(()=>(0,T.flexRender)(t?.columnDef.cell,n()),[t,n]);return(0,C.jsx)(`td`,{"data-col":`actions`,"data-cell":e,className:Ae(),...i,children:a})});q.displayName=`UITableCellActions`;const Ie=60,Le=60,Re=20,ze=20,J=(0,b.memo)(({isPinned:e,isSelected:t=!1,className:n,onToggleRowSelected:r,...i})=>{let a=(0,b.useCallback)(e=>{r?.(!!e)},[r]);return(0,C.jsx)(`td`,{slot:`table-body-cell`,"data-pinned":!0,style:{left:0,zIndex:20,width:60,maxWidth:60},className:(0,x.cn)(U({isPinned:e}),n),...i,children:(0,C.jsx)(`div`,{"data-slot":`table-cell-inner`,className:`flex! w-full! items-center justify-center bg-transparent text-center align-middle`,onClick:e=>{e.preventDefault(),e.stopPropagation()},children:(0,C.jsx)(f.t,{"aria-label":`Select Row`,checked:t,onCheckedChange:a})})})});J.displayName=`UITableCellSelect`;const Be=(0,b.memo)(()=>{let{table:e,isFetching:t,isRefetching:n,loadingDisplayRow:r=3}=H();return!t&&!n?null:(0,C.jsx)(`tbody`,{className:(0,x.cn)(Oe(),`pointer-events-none`),children:Array.from({length:r}).map((t,n)=>(0,C.jsx)(`tr`,{"data-slot":`table-row`,"data-index":n,className:(0,x.cn)(ke(),`animate-pulse relative!`),children:e.getAllColumns().map((t,r)=>{let i=t.getIsPinned(),a=t.getStart(`left`),o=t.getAfter(`right`);return t.id===`actions`?(0,C.jsx)(`td`,{"data-slot":`table-body-cell`,"data-col":t.id,"data-cell":r,style:{width:60},className:Ae(),children:(0,C.jsx)(`div`,{className:`w-full h-4 bg-muted-muted rounded-full`})},`${t.id}-${r}`):t.id===`select`?(0,C.jsx)(`td`,{"data-slot":`table-body-cell`,"data-col":t.id,"data-cell":r,"data-pinned":!0,style:{left:0,zIndex:20,width:60,maxWidth:60},className:U({isPinned:`left`}),children:(0,C.jsx)(`div`,{className:`w-full flex justify-center`,children:(0,C.jsx)(`div`,{className:`size-4 bg-muted-muted rounded-full`})})},`${t.id}-${n}`):(0,C.jsx)(`td`,{"data-col":t.id,"data-cell":r,"data-selected":void 0,"data-lastcell":t.id===e.getAllColumns()[e.getAllColumns().length-1].id||void 0,"data-firstcell":t.id===e.getAllColumns()[0].id||void 0,style:{zIndex:i?20:0,left:i===`left`&&typeof a==`number`?`${a}px`:void 0,right:i===`right`&&typeof o==`number`?`${o}px`:void 0,width:`calc(var(--col-${t.id}-size) * 1px)`,minWidth:t.columnDef.minSize?`calc(var(--col-${t.id}-minSize) * 1px)`:void 0,maxWidth:t.columnDef.maxSize?`calc(var(--col-${t.id}-maxSize) * 1px)`:void 0},className:je({isPinned:t.getIsPinned(),isFirstCell:t.id===e.getRightHeaderGroups()[0]?.headers[0]?.id,isLastCell:t.id===e.getLeftHeaderGroups()[0]?.headers[e.getLeftHeaderGroups()[0].headers.length-1]?.id}),children:(0,C.jsx)(`div`,{className:Me({position:t.columnDef.meta?.position??`start`}),children:(0,C.jsx)(`div`,{className:`w-full h-4 bg-muted-muted rounded-full`})})},`${t.id}-${r}`)})},n))})}),Y=(0,b.memo)(()=>{let{isEmpty:e,emptyDisplayHeight:t}=H();return e?(0,C.jsx)(C.Fragment,{children:e&&(0,C.jsx)(`div`,{className:xe(),style:{minHeight:t??`24rem`},children:(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-1`,children:[(0,C.jsx)(y.BoxIcon,{strokeWidth:1,size:48}),(0,C.jsx)(`p`,{children:`Không có dữ liệu`})]})})}):null});Y.displayName=`UITableEmptyDisplay`;const Ve=(0,b.memo)(({className:e,children:t,...n})=>(0,C.jsx)(`div`,{slot:`table-footer`,className:(0,x.cn)(Ne(),e),...n,children:t}));Ve.displayName=`UITableFooter`;function He(e,t,n){switch(n){case`count`:return e;case`sum`:return t.reduce((e,t)=>e+t,0);case`avg`:return t.length===0?0:t.reduce((e,t)=>e+t,0)/t.length;case`min`:return t.length===0?0:Math.min(...t);case`max`:return t.length===0?0:Math.max(...t)}}function Ue(e,t){return e.map(e=>{let n=e.getValue(t);return typeof n==`string`?Number(n):typeof n==`number`?n:NaN}).filter(e=>!Number.isNaN(e))}const We=(0,b.memo)(()=>{let{table:e}=H(),{rowSelectionState:t}=B(),n=(0,b.useMemo)(()=>e.getHeaderGroups()[0]?.headers??[],[e.getHeaderGroups()]),r=(0,b.useMemo)(()=>n.some(e=>e.column.columnDef.meta?.aggregation),[n]),i=(0,b.useMemo)(()=>e.getSelectedRowModel().flatRows,[e,t]),a=(0,b.useMemo)(()=>e.getRowModel().rows,[e]),o=i.length>0?i:a,c=(0,b.useMemo)(()=>{let e={};for(let t of n){let n=t.column.columnDef.meta?.aggregation;if(!n)continue;let r=Ue(o,t.id);e[t.id]=He(o.length,r,n.type)}return e},[n,o]),l=e.getState().columnPinning,u=l.left??[],d=l.right??[],f=n.find(e=>d.includes(e.id))?.id,p=[...n].reverse().find(e=>u.includes(e.id))?.id;if(!r)return null;let m=i.length>0?`${i.length}`:`${a.length}`;return(0,C.jsx)(`div`,{slot:`table-footer-row`,className:Pe(),children:n.map(e=>{let t=e.id,n=u.includes(t)?`left`:d.includes(t)?`right`:!1,r=t===f,i=t===p,a=n===`left`?`${e.column.getStart(`left`)}px`:void 0,o=n===`right`?`${e.column.getAfter(`right`)}px`:void 0;if(t===`select`)return(0,C.jsx)(`div`,{slot:`table-footer-select`,"data-pinned":`left`,style:{left:`0px`,width:`60px`},className:(0,x.cn)(W({isPinned:`left`,isFirstCell:!1,isLastCell:!1}),`justify-center`),children:(0,C.jsx)(`span`,{className:`truncate text-[11px] items-center text-text-positive-weak`,children:m})},t);if(t===`actions`)return(0,C.jsx)(`div`,{slot:`table-footer-actions`,style:{width:`calc(var(--col-${t}-size) * 1px)`,right:`0px`},className:W({isPinned:!1,isFirstCell:!1,isLastCell:!1})},t);let l=e.column.columnDef.meta?.aggregation,h=c[t]??null;return(0,C.jsx)(`div`,{slot:`table-footer-cell`,"data-pinned":n,style:{left:a,right:o,width:`calc(var(--col-${t}-size) * 1px)`},className:W({isPinned:n||`left`,isFirstCell:r,isLastCell:i}),children:l&&h!==null?(0,C.jsx)(s.t,{value:h,prefix:l.prefix,suffix:l.suffix,precision:l.precision,size:`sm`}):(0,C.jsx)(`span`,{className:`text-text-positive-weak`,children:`—`})},t)})})});We.displayName=`UITableFooterRow`;const X=(0,b.memo)(({className:e,children:t,...n})=>(0,C.jsx)(`thead`,{slot:`table-head`,className:(0,x.cn)(Te(),e),...n,children:t}));X.displayName=`UITableHead`;const Ge=(0,b.memo)(({isPinned:e,onLeftPin:t,onRightPin:n,onUnpin:r,className:i})=>{let a=(0,b.useCallback)(()=>{t?.(`left`)},[t]),o=(0,b.useCallback)(()=>{n?.(`right`)},[n]),s=(0,b.useCallback)(()=>{r?.(!1)},[r]);return(0,C.jsxs)(u.t,{children:[(0,C.jsx)(u.h,{asChild:!0,children:(0,C.jsx)(`button`,{type:`button`,className:(0,x.cn)(be(),i),children:(0,C.jsx)(y.EllipsisVerticalIcon,{})})}),(0,C.jsx)(u.r,{align:`end`,className:`w-64 p-4`,children:(0,C.jsxs)(u.i,{className:`*:data-[slot=dropdown-menu-item]:rounded-xs *:data-[slot=dropdown-menu-item]:p-2`,children:[(0,C.jsx)(b.Activity,{mode:e?`visible`:`hidden`,children:(0,C.jsxs)(u.a,{onClick:s,children:[!!e&&`Bỏ ghim`,(0,C.jsx)(u.d,{children:(0,C.jsx)(y.PinOffIcon,{className:`size-4`})})]})}),(0,C.jsxs)(b.Activity,{mode:e?`hidden`:`visible`,children:[(0,C.jsxs)(u.a,{onClick:a,children:[e?`Bỏ ghim`:`Ghim trái`,(0,C.jsx)(u.d,{children:(0,C.jsx)(y.MoveLeftIcon,{className:`size-4`})})]}),(0,C.jsxs)(u.a,{onClick:o,children:[e?`Bỏ ghim`:`Ghim phải`,(0,C.jsx)(u.d,{children:(0,C.jsx)(y.MoveRightIcon,{className:`size-4`})})]})]})]})})]})});Ge.displayName=`UITableHeadCellOption`;const Ke=(0,b.memo)(({isVisible:e=!0,isPinned:t=!1,isFirstCell:n=!1,isLastCell:r=!1,isOptionsVisible:i=!0,headerId:a,headerColumn:o,className:s,children:c,onColumnPin:l,onToggleVisibility:u,...d})=>{let f=o?.columnDef.meta?.position,p=(0,b.useMemo)(()=>t?20:void 0,[t]),m=(0,b.useMemo)(()=>{let e=o?.getStart?.(`left`);return t===`left`&&typeof e==`number`?`${e}px`:void 0},[t,o]),h=(0,b.useMemo)(()=>{let e=o?.getAfter?.(`right`);return t===`right`&&typeof e==`number`?`${e}px`:void 0},[t,o]),g=(0,b.useMemo)(()=>`calc(var(--header-${a}-size) * 1px)`,[a]),_=(0,b.useMemo)(()=>o?.columnDef.minSize?`calc(var(--col-${a}-minSize) * 1px)`:void 0,[a,o]),v=(0,b.useMemo)(()=>o?.columnDef.maxSize?`calc(var(--col-${a}-maxSize) * 1px)`:void 0,[a,o]);return(0,C.jsxs)(`th`,{slot:`table-head-cell`,"data-pinned":t,"data-header":a,style:{zIndex:p,left:m,right:h,width:g,minWidth:_,maxWidth:v},className:(0,x.cn)(De({isPinned:t||`false`,isActions:a===`actions`,isLastCell:r,isFirstCell:n,position:f}),s),...d,children:[(0,C.jsx)(`div`,{className:`truncate px-4`,children:c}),i&&(0,C.jsx)(Ge,{isPinned:t,isVisible:e,onLeftPin:l,onRightPin:l,onUnpin:l})]})});Ke.displayName=`UITableHeadCell`;const qe=(0,b.memo)(({isPinned:e,isAllRowsSelected:t,style:n,onToggleAllRowsSelected:r,...i})=>{let a=(0,b.useCallback)(e=>{r?.(!!e)},[r]);return(0,C.jsx)(`th`,{slot:`table-header-cell`,"data-pinned":!0,style:{left:0,zIndex:20,width:60,maxWidth:60},className:U({isPinned:e}),...i,children:(0,C.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,onClick:e=>{e.preventDefault(),e.stopPropagation()},children:(0,C.jsx)(f.t,{"aria-label":`Select All Rows`,checked:t,onCheckedChange:a})})})});qe.displayName=`UITableHeadCellSelect`;const Je=(0,b.memo)(({headerGroup:e,className:t,...n})=>{let{isAllRowsSelected:r,columnPinningState:i,leftPinnedHeaders:a,rightPinnedHeaders:o,onToggleAllRowsSelected:s}=pe(),c=o[0]?.id,l=a[a.length-1]?.id;return(0,C.jsx)(`tr`,{slot:`table-head-row`,className:(0,x.cn)(Ee(),t),...n,children:e.headers.map((e,t)=>{let n=e.column.getIsVisible(),a=i.left?.includes(e.id)?`left`:i.right?.includes(e.id)?`right`:!1;return e.id===`select`?(0,C.jsx)(qe,{isPinned:a,isAllRowsSelected:r,onToggleAllRowsSelected:s},e.id):(0,C.jsx)(Ke,{isVisible:n,isPinned:a,isFirstCell:e.id===c,isLastCell:e.id===l,isOptionsVisible:![`select`,`actions`].includes(e.id),headerId:e.id,headerColumn:e.column,colSpan:e.colSpan,onColumnPin:e.column.pin,onToggleVisibility:e.column.toggleVisibility,children:(0,T.flexRender)(e.column.columnDef.header,e.getContext())},`${e.id}-${t}`)})})});Je.displayName=`UITableHeadRow`;const Ye=(0,b.memo)(({children:e,...t})=>{let{table:n,innerTableId:r,totalSize:i}=L(),a=(0,b.useRef)(null);return(0,b.useEffect)(()=>{if(!a.current)return;let e=n.getFlatHeaders(),t,r=new ResizeObserver(r=>{t!==void 0&&cancelAnimationFrame(t),t=requestAnimationFrame(()=>{let t=r[0];if(!t)return;let i=t.target;if(!(i instanceof HTMLTableElement))return;let a=t.contentRect.width,{left:o=[],right:s=[]}=n.getState().columnPinning,c=0,l=0,u=0,d=e.map(e=>{let{id:t}=e,n=t===`select`||t===`actions`,r=o.includes(t)||s.includes(t),i=e.getSize(),a=e.column.columnDef.maxSize;return n?(c+=60,{id:t,isFlex:!1,width:60}):r?(c+=i,{id:t,isFlex:!1,width:i}):e.column.columnDef.size||i!==150?(u+=i,{id:t,isFlex:!1,width:i}):(l++,{id:t,isFlex:!0,maxSize:a})}),f=a-c-u,p=l>0?Math.max(0,Math.floor(f/l)):0,m=i.closest(`[data-slot="table-scroll-host"]`);d.forEach(e=>{if(e.isFlex){let t=e.maxSize?Math.min(p,e.maxSize):p;i.style.setProperty(`--header-${e.id}-size`,`${t}`),i.style.setProperty(`--col-${e.id}-size`,`${t}`),m?.style.setProperty(`--col-${e.id}-size`,`${t}`),e.maxSize&&i.style.setProperty(`--col-${e.id}-maxSize`,`${e.maxSize}`)}else i.style.setProperty(`--header-${e.id}-size`,`${e.width}`),i.style.setProperty(`--col-${e.id}-size`,`${e.width}`),m?.style.setProperty(`--col-${e.id}-size`,`${e.width}`)})})});return r.observe(a.current),()=>{t!==void 0&&cancelAnimationFrame(t),r.disconnect()}},[n.getState().columnSizingInfo,n.getState().columnSizing,n.getState().columnPinning]),(0,C.jsx)(`table`,{id:r,ref:a,slot:`table-inner-table`,className:we(),style:{minWidth:i},...t,children:e})});Ye.displayName=`UITableInnerTable`;const Xe=(0,b.memo)(({children:e,...t})=>{let{innerWrapperId:n}=I();return(0,C.jsx)(`div`,{id:n,slot:`table-inner-wrapper`,className:Ce(),...t,children:e})});Xe.displayName=`UITableInnerWrapper`;const Z=(0,b.memo)(({virtualRowIndex:e,virtualRowStart:t,fetchMoreData:n})=>{let{innerWrapperId:r}=I(),i=(0,b.useRef)(null),a=(0,b.useRef)(null),[o,s]=(0,b.useState)(`idle`),[c,l]=(0,b.useState)(0),u=(0,b.useCallback)(async()=>{try{s(`fetching`),await n?.(),s(`idle`)}catch(e){console.error(`Error fetching more data:`,e),s(`error`)}},[n]);return(0,b.useEffect)(()=>{if(i.current=document.querySelector(`div[id="${r}"]`),!i.current)return;let e=new ResizeObserver(e=>{l(e[0].contentRect.width)});return e.observe(i.current),()=>e.disconnect()},[r]),n?(0,C.jsx)(`tr`,{ref:a,"data-index":e,style:{transform:`translateY(${t}px)`,width:c},className:`sticky! left-0 h-10`,children:(0,C.jsx)(`td`,{className:`absolute left-0 flex w-full items-center justify-center text-xs`,children:(0,C.jsxs)(`button`,{type:`button`,disabled:o===`fetching`,className:Fe({state:o}),onClick:u,children:[o===`idle`&&(0,C.jsx)(y.ChevronDown,{className:`size-4`}),o===`fetching`&&(0,C.jsx)(p.t,{className:`size-4 animate-spin`}),o===`error`&&(0,C.jsx)(y.AlertTriangle,{className:`size-4 text-danger`}),o===`idle`&&`Tải thêm`,o===`fetching`&&`Đang tải...`,o===`error`&&`Lỗi! Thử lại?`]})})}):null});Z.displayName=`UITableLoadMore`;const Ze=(0,b.memo)(({row:e,isSelected:t,virtualRowIndex:n,virtualRowStart:r,children:i,...a})=>{let{keyOfClickRow:o,isAllRowsSelected:s,columnPinningState:c,leftPinnedHeaders:l,rightPinnedHeaders:u,onClickRow:d}=me(),f=(0,b.useMemo)(()=>c.left??[],[c]),p=(0,b.useMemo)(()=>c.right??[],[c]),m=(0,b.useMemo)(()=>u?.[0]?.id,[u]),h=(0,b.useMemo)(()=>l?.[l.length-1]?.id,[l]),g=(0,b.useMemo)(()=>e.getVisibleCells().some(e=>e.column.id===`select`),[e]),_=(0,b.useCallback)(t=>{if(d){let t=o?e.original?.[o]:void 0;d(n,typeof t==`string`||typeof t==`number`?t:void 0)}else g&&e.toggleSelected();t.preventDefault(),t.stopPropagation()},[o,d,e,n,g]);return(0,C.jsx)(`tr`,{slot:`table-row`,"data-index":n,style:{transform:`translateY(${r}px)`},className:ke(),onClick:_,...a,children:e.getVisibleCells().map((e,r)=>{let i=f.includes(e.column.id),a=p.includes(e.column.id),o=i?`left`:a?`right`:!1;return e.column.id===`actions`?(0,C.jsx)(q,{"data-col":e.column.id,"data-cell":n,"data-selected":t||void 0,virtualRowIndex:n,column:e.column,getContext:e.getContext},`${e.id}-${r}`):e.column.id===`select`?(0,C.jsx)(J,{"data-col":e.column.id,"data-cell":n,"data-selected":t||void 0,isPinned:o,isSelected:s||t,onToggleRowSelected:e.row.toggleSelected},`${e.id}-${r}`):(0,C.jsx)(K,{"data-col":e.column.id,"data-cell":n,"data-selected":t||void 0,isPinned:o,isFirstCell:e.column.id===m,isLastCell:e.column.id===h,colId:e.column.id,position:e.column.columnDef.meta?.position??`start`,column:e.column,getContext:e.getContext},`${e.id}-${r}`)})})});Ze.displayName=`UITableRow`;const Qe=(0,b.memo)(({className:e,children:t,...n})=>(0,C.jsx)(`div`,{slot:`table-wrapper`,className:(0,x.cn)(Se(),e),...n,children:t}));Qe.displayName=`UITableWrapper`;const $e=({children:e})=>{let{table:t,fetchMoreData:n}=H(),{rowSelectionState:r}=B(),i=(0,b.useRef)(null),{rows:a}=t.getRowModel(),o=(0,E.useVirtualizer)({count:a.length+(n?1:0),estimateSize:()=>40,getScrollElement:()=>i.current,measureElement:typeof window<`u`&&navigator.userAgent.indexOf(`Firefox`)===-1?e=>e?.getBoundingClientRect().height:void 0,overscan:2}),s=(0,b.useMemo)(()=>`${o.getTotalSize()}px`,[o.getTotalSize()]);return(0,C.jsxs)(m.r,{direction:`horizontal`,style:{direction:t.options.columnResizeDirection},className:`relative flex w-full max-w-full flex-1 gap-1 overflow-auto border-t border-t-border border-r border-r-border p-0 text-sm`,children:[(0,C.jsx)(m.n,{"data-slot":`table-scroll-host`,className:`relative flex flex-col`,children:(0,C.jsxs)(Xe,{ref:i,children:[(0,C.jsxs)(Ye,{children:[(0,C.jsx)(X,{children:t.getHeaderGroups().map(e=>(0,C.jsx)(Je,{headerGroup:e},e.id))}),(0,C.jsx)(G,{height:s,children:o.getVirtualItems().map(e=>{let t=a[e.index];if(!t&&n)return(0,C.jsx)(Z,{virtualRowIndex:e.index,virtualRowStart:e.start,fetchMoreData:n},e.key);let i=r[t.id]===!0;return(0,C.jsx)(Ze,{ref:o.measureElement,row:t,isSelected:i,virtualRowIndex:e.index,virtualRowStart:e.start},e.key)})}),(0,C.jsx)(Be,{})]}),(0,C.jsx)(Y,{})]})}),e&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(m.t,{}),e]})]})};function et(e,t,n){switch(n){case`count`:return e;case`sum`:return t.reduce((e,t)=>e+t,0);case`avg`:return t.length===0?0:t.reduce((e,t)=>e+t,0)/t.length;case`min`:return t.length===0?0:Math.min(...t);case`max`:return t.length===0?0:Math.max(...t)}}function tt(e,t){return e.map(e=>{let n=e.getValue(t);return typeof n==`string`?Number(n):typeof n==`number`?n:NaN}).filter(e=>!Number.isNaN(e))}const nt={sum:`Tổng`,avg:`Trung bình`,count:`Đếm`,min:`Nhỏ nhất`,max:`Lớn nhất`},rt=(0,b.memo)(()=>{let{table:e,totalRows:t}=H(),{rowSelectionState:n}=B(),{isOpen:r,toggle:i}=ye(),a=(0,b.useMemo)(()=>e.getRowModel().rows,[e]),o=(0,b.useMemo)(()=>e.getSelectedRowModel().flatRows,[e,n]),c=(0,b.useMemo)(()=>e.getHeaderGroups()[0]?.headers??[],[e]),l=(0,b.useMemo)(()=>c.filter(e=>![`select`,`actions`].includes(e.id)).flatMap(e=>{let t=e.column.columnDef.meta?.aggregation;if(!t)return[];let n=t.label??(typeof e.column.columnDef.header==`string`?e.column.columnDef.header:e.id),r=tt(a,e.id),i=o.length>0?tt(o,e.id):null;return[{colId:e.id,header:n,aggregation:t,allValue:et(a.length,r,t.type),selectedValue:i===null?null:et(o.length,i,t.type)}]}),[c,a,o]);return(0,C.jsxs)(`div`,{"data-slot":`table-analysis-panel`,className:`w-full border-t border-border`,children:[(0,C.jsxs)(`button`,{type:`button`,className:(0,x.cn)(`flex w-full items-center justify-between px-4 py-2 text-sm font-medium text-text-positive`,`hover:bg-muted-bg-subtle transition-colors outline-none`,`focus-visible:ring-2 focus-visible:ring-primary-weak`),onClick:i,"aria-expanded":r,children:[(0,C.jsx)(`span`,{children:`Tổng quan dữ liệu`}),r?(0,C.jsx)(y.ChevronUpIcon,{size:14}):(0,C.jsx)(y.ChevronDownIcon,{size:14})]}),r&&(0,C.jsxs)(`div`,{className:`px-4 pb-4 pt-2 space-y-4`,children:[(0,C.jsxs)(`div`,{className:`flex flex-wrap gap-4`,children:[(0,C.jsx)(Q,{label:`Tổng bản ghi`,value:t??a.length}),(0,C.jsx)(Q,{label:`Hàng hiển thị`,value:a.length}),(0,C.jsx)(Q,{label:`Hàng đã chọn`,value:o.length,highlight:o.length>0})]}),l.length>0&&(0,C.jsxs)(`div`,{children:[(0,C.jsx)(`p`,{className:`mb-2 text-xs font-semibold uppercase tracking-wide text-text-positive-weak`,children:`Tóm tắt cột`}),(0,C.jsx)(`div`,{className:`overflow-x-auto rounded-md border border-border`,children:(0,C.jsxs)(`table`,{className:`w-full text-sm`,children:[(0,C.jsx)(`thead`,{children:(0,C.jsxs)(`tr`,{className:`border-b border-border bg-muted-bg-subtle text-xs text-text-positive-weak`,children:[(0,C.jsx)(`th`,{className:`px-3 py-2 text-left font-medium`,children:`Cột`}),(0,C.jsx)(`th`,{className:`px-3 py-2 text-left font-medium`,children:`Kiểu`}),(0,C.jsx)(`th`,{className:`px-3 py-2 text-right font-medium`,children:`Tất cả hàng`}),o.length>0&&(0,C.jsx)(`th`,{className:`px-3 py-2 text-right font-medium`,children:`Hàng đã chọn`})]})}),(0,C.jsx)(`tbody`,{children:l.map((e,t)=>(0,C.jsxs)(`tr`,{className:(0,x.cn)(`border-b border-border last:border-b-0`,t%2==1&&`bg-muted-bg-subtle/50`),children:[(0,C.jsx)(`td`,{className:`px-3 py-2 text-text-positive font-medium`,children:e.header}),(0,C.jsx)(`td`,{className:`px-3 py-2 text-text-positive-weak`,children:nt[e.aggregation.type]}),(0,C.jsx)(`td`,{className:`px-3 py-2 text-right`,children:(0,C.jsx)(s.t,{value:e.allValue,prefix:e.aggregation.prefix,suffix:e.aggregation.suffix,precision:e.aggregation.precision,size:`sm`})}),o.length>0&&(0,C.jsx)(`td`,{className:`px-3 py-2 text-right`,children:e.selectedValue===null?(0,C.jsx)(`span`,{className:`text-text-positive-weak`,children:`—`}):(0,C.jsx)(s.t,{value:e.selectedValue,prefix:e.aggregation.prefix,suffix:e.aggregation.suffix,precision:e.aggregation.precision,size:`sm`})})]},e.colId))})]})})]})]})]})});rt.displayName=`UITableAnalysisPanel`;const Q=(0,b.memo)(({label:e,value:t,highlight:n})=>(0,C.jsxs)(`div`,{className:(0,x.cn)(`flex flex-col gap-0.5 rounded border px-3 py-2 min-w-25 bg-white`,n&&t>0?`border-primary bg-primary-bg-subtle`:`border-border bg-white`),children:[(0,C.jsx)(`span`,{className:`text-[11px] text-text-positive-weak`,children:e}),(0,C.jsx)(`span`,{className:`text-base font-semibold tabular-nums text-text-positive-strong`,children:t.toLocaleString()})]}));Q.displayName=`StatChip`;const it={tag:(0,C.jsx)(y.TagIcon,{size:14}),"single-tag":(0,C.jsx)(y.TagIcon,{size:14}),"date-range":(0,C.jsx)(y.CalendarIcon,{size:14}),number:(0,C.jsx)(y.HashIcon,{size:14}),text:(0,C.jsx)(y.TypeIcon,{size:14}),boolean:(0,C.jsx)(y.ToggleLeftIcon,{size:14})},at=[{value:`eq`,label:`Bằng (=)`},{value:`ne`,label:`Không bằng (≠)`},{value:`gt`,label:`Lớn hơn (>)`},{value:`gte`,label:`Ít nhất (≥)`},{value:`lt`,label:`Nhỏ hơn (<)`},{value:`lte`,label:`Nhiều nhất (≤)`},{value:`between`,label:`Trong khoảng`}],ot=[{value:`contains`,label:`Chứa`},{value:`equals`,label:`Bằng`},{value:`starts-with`,label:`Bắt đầu bằng`},{value:`ends-with`,label:`Kết thúc bằng`}];function st(e,t){switch(e.type){case`single-tag`:return e.value?t.options?.find(t=>t.value===e.value)?.label??e.value:`Chưa đặt`;case`tag`:return e.values.length?e.values.map(e=>t.options?.find(t=>t.value===e)?.label??e).join(`, `):`Chưa đặt`;case`date-range`:return!e.from&&!e.to?`Ngày không xác định`:e.from&&e.to?`${e.from} → ${e.to}`:e.from?`từ ${e.from}`:`đến ${e.to}`;case`number`:{let t={eq:`=`,ne:`≠`,gt:`>`,gte:`≥`,lt:`<`,lte:`≤`,between:`trong khoảng`}[e.operator];return e.value===void 0?t:e.operator===`between`?`${t} ${e.value} – ${e.valueTo??`?`}`:`${t} ${e.value}`}case`text`:{let t={contains:`chứa`,equals:`là`,"starts-with":`bắt đầu bằng`,"ends-with":`kết thúc bằng`}[e.operator];return e.value?`${t} "${e.value}"`:t}case`boolean`:return e.value===null?`Không xác định`:e.value?`Có`:`Không`}}const ct=({value:e,definition:t,onChange:n})=>(0,C.jsx)(`div`,{className:`flex flex-col gap-1 p-3`,children:(t.options??[]).length===0?(0,C.jsx)(`p`,{className:`text-xs text-text-positive-muted`,children:`Không có tùy chọn`}):t.options.map(t=>(0,C.jsxs)(g.t,{className:(0,x.cn)(`flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors`,e.values.includes(t.value)&&`bg-primary-muted hover:bg-primary-subtle`),children:[(0,C.jsx)(f.t,{checked:e.values.includes(t.value),onCheckedChange:r=>{n({type:`tag`,values:r?[...e.values,t.value]:e.values.filter(e=>e!==t.value)})}}),(0,C.jsx)(`span`,{className:`text-sm`,children:t.label})]},t.value))}),lt=({value:e,definition:t,onChange:n})=>(0,C.jsx)(`div`,{className:`flex flex-col gap-1 p-3`,children:(t.options??[]).length===0?(0,C.jsx)(`p`,{className:`text-xs text-text-positive-muted`,children:`Không có tùy chọn`}):t.options.map(t=>(0,C.jsxs)(g.t,{className:(0,x.cn)(`flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors`,e.value===t.value&&`bg-primary-muted hover:bg-primary-subtle`),children:[(0,C.jsx)(f.t,{checked:e.value===t.value,onCheckedChange:e=>{n({type:`single-tag`,value:e?t.value:null})}}),(0,C.jsx)(`span`,{className:`text-sm`,children:t.label})]},t.value))}),ut=({value:e,onChange:t})=>(0,C.jsxs)(`div`,{className:`flex flex-col gap-3 p-3`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,C.jsx)(`span`,{className:`text-text-positive-muted text-xs`,children:`Từ ngày`}),(0,C.jsx)(h.t,{type:`date`,size:`md`,value:e.from??``,onValueChange:n=>t({...e,from:n||void 0})})]}),(0,C.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,C.jsx)(`span`,{className:`text-text-positive-muted text-xs`,children:`Đến ngày`}),(0,C.jsx)(h.t,{type:`date`,size:`md`,value:e.to??``,onValueChange:n=>t({...e,to:n||void 0})})]})]}),dt=({value:e,onChange:t})=>(0,C.jsxs)(`div`,{className:`flex flex-col gap-3 p-3`,children:[(0,C.jsxs)(v.t,{value:e.operator,onValueChange:n=>t({...e,operator:n}),children:[(0,C.jsx)(v.s,{size:`sm`,children:(0,C.jsx)(v.c,{})}),(0,C.jsx)(v.n,{children:at.map(e=>(0,C.jsx)(v.i,{value:e.value,children:e.label},e.value))})]}),(0,C.jsx)(h.t,{type:`number`,size:`md`,placeholder:`Giá trị`,value:e.value??``,onValueChange:n=>t({...e,value:n?Number(n):void 0})}),e.operator===`between`&&(0,C.jsx)(h.t,{type:`number`,size:`md`,placeholder:`Đến giá trị`,value:e.valueTo??``,onValueChange:n=>t({...e,valueTo:n?Number(n):void 0})})]}),ft=({value:e,onChange:t})=>(0,C.jsxs)(`div`,{className:`flex flex-col gap-3 p-3`,children:[(0,C.jsxs)(v.t,{value:e.operator,onValueChange:n=>t({...e,operator:n}),children:[(0,C.jsx)(v.s,{size:`sm`,children:(0,C.jsx)(v.c,{})}),(0,C.jsx)(v.n,{children:ot.map(e=>(0,C.jsx)(v.i,{value:e.value,children:e.label},e.value))})]}),(0,C.jsx)(h.t,{type:`text`,size:`md`,placeholder:`Nhập văn bản...`,value:e.value,onValueChange:n=>t({...e,value:n})})]}),pt=[{label:`Có`,value:!0},{label:`Không`,value:!1},{label:`Không xác định`,value:null}],mt=({value:e,onChange:n})=>(0,C.jsx)(`div`,{className:`flex flex-col gap-1 p-3`,children:pt.map(({label:r,value:i})=>(0,C.jsx)(t.t,{type:`button`,tabIndex:-1,variant:`outline`,className:(0,x.cn)(`rounded px-3 py-1.5 text-left text-sm transition-colors`,e.value===i?`bg-primary-muted font-medium`:`hover:bg-muted-bg-subtle`),onClick:()=>n({type:`boolean`,value:i}),children:r},r))});function ht({value:e,definition:t,onChange:n}){switch(e.type){case`tag`:return(0,C.jsx)(ct,{value:e,definition:t,onChange:n});case`single-tag`:return(0,C.jsx)(lt,{value:e,definition:t,onChange:n});case`date-range`:return(0,C.jsx)(ut,{value:e,onChange:n});case`number`:return(0,C.jsx)(dt,{value:e,onChange:n});case`text`:return(0,C.jsx)(ft,{value:e,onChange:n});case`boolean`:return(0,C.jsx)(mt,{value:e,onChange:n})}}const gt=({filter:e,definition:n,onRemove:r,onUpdate:i})=>(0,C.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,C.jsxs)(_.t,{children:[(0,C.jsx)(_.a,{asChild:!0,children:(0,C.jsxs)(t.t,{type:`button`,variant:`outline`,color:`muted`,className:`flex-1 bg-white max-w-[calc(100%-32px)] justify-start`,innerClassName:`flex truncate gap-1.5`,children:[(0,C.jsx)(`span`,{className:`shrink-0 text-text-positive font-medium`,children:n.label}),(0,C.jsx)(`span`,{className:`truncate text-xs text-text-positive-weak`,children:st(e.value,n)})]})}),(0,C.jsxs)(_.i,{className:`w-64 p-0`,align:`start`,side:`bottom`,children:[(0,C.jsx)(`div`,{className:`border-b border-border px-3 py-2`,children:(0,C.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,C.jsx)(`span`,{className:`text-text-positive-muted`,children:it[n.type]}),(0,C.jsx)(`p`,{className:`font-medium`,children:n.label})]})}),(0,C.jsx)(ht,{value:e.value,definition:n,onChange:i})]})]}),(0,C.jsx)(t.t,{type:`button`,size:`icon`,variant:`soft`,color:`danger`,className:`shrink`,onClick:r,children:(0,C.jsx)(y.Trash2Icon,{size:13})})]}),_t=()=>{let{filterDefinitions:e,activeFilters:n,addFilter:r,removeFilter:i,updateFilter:a}=_e(),[o,s]=(0,b.useState)(null),c=e.filter(e=>!n.some(t=>t.definitionId===e.id));return(0,C.jsx)(m.n,{defaultSize:25,className:(0,x.cn)(`bg-card`,o===null?`max-w-8!`:`min-w-64`),children:(0,C.jsxs)(`div`,{className:`relative z-20 flex size-full bg-muted-bg-subtle`,children:[(0,C.jsx)(`div`,{className:`min-w-0 flex-1 overflow-hidden`,children:(0,C.jsx)(b.Activity,{mode:o===`filters`?`visible`:`hidden`,children:(0,C.jsxs)(`div`,{className:`flex size-full flex-col gap-2 p-4`,children:[(0,C.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,C.jsx)(`p`,{className:`font-medium`,children:`Bộ lọc`}),(0,C.jsxs)(u.t,{children:[(0,C.jsx)(u.h,{asChild:!0,children:(0,C.jsxs)(t.t,{variant:`outline`,color:`muted`,disabled:c.length===0,children:[(0,C.jsx)(y.ListFilterPlus,{size:13}),`Thêm bộ lọc`]})}),(0,C.jsx)(u.r,{align:`end`,children:c.map(e=>(0,C.jsxs)(u.a,{className:`flex items-center gap-2`,onClick:()=>r(e.id),children:[it[e.type],e.label]},e.id))})]})]}),(0,C.jsx)(l.t,{}),n.length===0?(0,C.jsx)(`p`,{className:`py-6 text-center text-xs text-text-positive-muted`,children:`Không có bộ lọc nào`}):(0,C.jsx)(`div`,{className:`flex flex-col gap-2 pt-1`,children:n.map(t=>{let n=e.find(e=>e.id===t.definitionId);return n?(0,C.jsx)(gt,{filter:t,definition:n,onRemove:()=>i(t.id),onUpdate:e=>a(t.id,e)},t.id):null})})]})})}),(0,C.jsxs)(`div`,{className:`flex h-full flex-col border-l border-border bg-muted-bg-subtle text-sm`,children:[(0,C.jsxs)(`button`,{type:`button`,className:(0,x.cn)(`relative flex h-32 cursor-pointer flex-col items-center gap-y-2 p-2 py-4`,o===`filters`&&`bg-card`),onClick:()=>s(o===`filters`?null:`filters`),children:[(0,C.jsx)(y.ListFilterIcon,{size:18}),n.length>0&&(0,C.jsx)(`span`,{className:`absolute top-2 right-1.5 flex h-4 w-4 items-center justify-center rounded-full bg-primary text-[10px] leading-none text-primary-foreground`,children:n.length}),(0,C.jsx)(`span`,{className:`text-nowrap [writing-mode:vertical-lr]`,children:`Bộ lọc`})]}),(0,C.jsx)(l.t,{})]})]})})};function vt(e){switch(e){case`tag`:return{type:`tag`,values:[]};case`single-tag`:return{type:`single-tag`,value:null};case`date-range`:return{type:`date-range`};case`number`:return{type:`number`,operator:`eq`};case`text`:return{type:`text`,operator:`contains`,value:``};case`boolean`:return{type:`boolean`,value:null}}}const yt=(0,b.memo)(({innerWrapperId:e,children:t})=>{let n=(0,b.useMemo)(()=>({innerWrapperId:e}),[e]);return(0,C.jsx)(F.Provider,{value:n,children:t})});yt.displayName=`UITableInnerWrapperProvider`;const bt=(0,b.memo)(({table:e,innerTableId:t,totalSize:n,children:r})=>{let i=(0,b.useMemo)(()=>({table:e,innerTableId:t,totalSize:n}),[e,t,n]);return(0,C.jsx)(fe.Provider,{value:i,children:r})});bt.displayName=`UITableInnerTableProvider`;const xt=(0,b.memo)(({isAllRowsSelected:e,columnPinningState:t,leftPinnedHeaders:n,rightPinnedHeaders:r,onToggleAllRowsSelected:i,children:a})=>{let o=(0,b.useMemo)(()=>({isAllRowsSelected:e,columnPinningState:t,leftPinnedHeaders:n,rightPinnedHeaders:r,onToggleAllRowsSelected:i}),[e,t,n,r,i]);return(0,C.jsx)(R.Provider,{value:o,children:a})});xt.displayName=`UITableHeadRowProvider`;const St=(0,b.memo)(({isFetching:e,isRefetching:t,isEmpty:n,rowSelectionState:r,children:i})=>{let a=(0,b.useMemo)(()=>({isFetching:e,isRefetching:t,isEmpty:n,rowSelectionState:r}),[e,n,r]);return(0,C.jsx)(z.Provider,{value:a,children:i})});St.displayName=`UITableBodyProvider`;const Ct=(0,b.memo)(({keyOfClickRow:e,isAllRowsSelected:t,columnPinningState:n,leftPinnedHeaders:r,rightPinnedHeaders:i,onClickRow:a,children:o})=>{let s=(0,b.useMemo)(()=>({keyOfClickRow:e,isAllRowsSelected:t,columnPinningState:n,leftPinnedHeaders:r,rightPinnedHeaders:i,onClickRow:a}),[e,t,n,r,i,a]);return(0,C.jsx)(V.Provider,{value:s,children:o})});Ct.displayName=`UITableRowProvider`;const wt=({title:e,isFetching:t=!1,isRefetching:n=!1,isLoading:r=!1,loadingDisplayRow:i=3,data:a,columns:o,totalRows:s,leftPinnedColumns:c=[],rightPinnedColumns:l=[],keyOfClickRow:u,onClickRow:d,onRowSelection:f,onColumnPinning:p,fetchMoreData:m,emptyDisplayHeight:h,csvData:g,csvFileName:_,filterDefinitions:v=[],onFilterChange:y,summary:x=[],showAnalysisPanel:S=!1,description:w,headerActions:E,children:ee})=>{let te=(0,b.useId)(),D=(0,b.useId)(),[ne,re]=(0,b.useState)(!1),[O,ie]=(0,b.useState)({}),[k,ae]=(0,b.useState)({right:l,left:[`select`,...c]}),[oe,se]=(0,b.useState)({}),[A,j]=(0,b.useState)([]),ce=(0,b.useCallback)(e=>(ie(e),f?.(e instanceof Function?e(O):e),e),[O,f]),M=(0,b.useCallback)(e=>{ae(e),p?.(e instanceof Function?e(k):e)},[k,p]),le=(0,b.useCallback)(e=>{let t=v.find(t=>t.id===e);if(!t)return;let n={id:`${e}-${crypto.randomUUID()}`,definitionId:e,value:vt(t.type)};j(e=>{let t=[...e,n];return y?.(t),t})},[v,y]),ue=(0,b.useCallback)(e=>{j(t=>{let n=t.filter(t=>t.id!==e);return y?.(n),n})},[y]),N=(0,b.useCallback)((e,t)=>{j(n=>{let r=n.map(n=>n.id===e?{...n,value:t}:n);return y?.(r),r})},[y]),de=(0,b.useMemo)(()=>({filterDefinitions:v,activeFilters:A,addFilter:le,removeFilter:ue,updateFilter:N}),[v,A,le,ue,N]),P=(0,T.useReactTable)({data:a,columns:o,state:{rowSelection:O,columnPinning:k,expanded:oe},defaultColumn:{enableResizing:!1,size:void 0,minSize:void 0,maxSize:void 0},columnResizeMode:`onChange`,columnResizeDirection:`ltr`,enableColumnPinning:!0,enableRowSelection:!0,enableColumnResizing:!0,enableMultiRowSelection:!0,autoResetAll:!1,autoResetExpanded:!1,autoResetPageIndex:!1,getSubRows:e=>e.subRows,getCoreRowModel:(0,T.getCoreRowModel)(),getGroupedRowModel:(0,T.getGroupedRowModel)(),getExpandedRowModel:(0,T.getExpandedRowModel)(),onRowSelectionChange:ce,onColumnPinningChange:M,onExpandedChange:se}),F=(0,b.useMemo)(()=>{let{rows:e}=P.getRowModel();return e},[P.getRowModel().rows,P.getState().columnPinning]),I=(0,b.useMemo)(()=>!t&&!n&&F.length===0,[F,t,n]),fe=(0,b.useMemo)(()=>({title:e,table:P,isEmpty:I,isFetching:t,isRefetching:n,isLoading:r,loadingDisplayRow:i,totalRows:s,fetchMoreData:m,emptyDisplayHeight:h,csvData:g,csvFileName:_,summary:x,showAnalysisPanel:S,description:w,headerActions:E}),[e,P,I,n,t,r,i,s,m,h,P.getState().columnPinning,P.getState().expanded,g,_,x,S,w,E]),L=(0,b.useMemo)(()=>P.getState(),[P.getState()]),R=(0,b.useMemo)(()=>P.getIsAllRowsSelected(),[P.getIsAllRowsSelected()]),pe=(0,b.useMemo)(()=>L.rowSelection,[L.rowSelection]),z=(0,b.useMemo)(()=>L.columnPinning,[L.columnPinning]),B=(0,b.useMemo)(()=>P.getLeftHeaderGroups()[0]?.headers||[],[P.getState().columnPinning]),V=(0,b.useMemo)(()=>P.getRightHeaderGroups()[0]?.headers||[],[P.getState().columnPinning]),me=(0,b.useMemo)(()=>P.getTotalSize(),[P.getTotalSize()]),H=(0,b.useCallback)(()=>re(e=>!e),[]),_e=(0,b.useMemo)(()=>({isOpen:ne,toggle:H}),[ne,H]);return(0,C.jsx)(ve.Provider,{value:_e,children:(0,C.jsx)(ge.Provider,{value:de,children:(0,C.jsx)(he.Provider,{value:fe,children:(0,C.jsx)(yt,{innerWrapperId:te,children:(0,C.jsx)(bt,{table:P,innerTableId:D,totalSize:me,children:(0,C.jsx)(xt,{isAllRowsSelected:R,columnPinningState:z,leftPinnedHeaders:B,rightPinnedHeaders:V,onToggleAllRowsSelected:P.toggleAllRowsSelected,children:(0,C.jsx)(St,{isFetching:t,isRefetching:n,isEmpty:I,rowSelectionState:pe,children:(0,C.jsx)(Ct,{keyOfClickRow:u,isAllRowsSelected:R,columnPinningState:z,leftPinnedHeaders:B,rightPinnedHeaders:V,onClickRow:d,children:ee})})})})})})})})},Tt={up:`bg-success`,down:`bg-danger`,neutral:`bg-primary`},Et=(0,b.memo)(()=>{let{summary:e}=H();return!e||e.length===0?null:(0,C.jsx)(`div`,{"data-slot":`table-summary-bar`,className:`grid w-full gap-3 px-2 pb-1`,style:{gridTemplateColumns:`repeat(${e.length}, minmax(0, 240px))`},children:e.map(e=>{let t=Tt[e.trend??`neutral`];return(0,C.jsxs)(`div`,{className:`flex flex-col overflow-hidden rounded border border-border bg-card shadow-card`,children:[(0,C.jsx)(`div`,{className:(0,x.cn)(`h-0.75 w-full shrink-0`,t)}),(0,C.jsxs)(`div`,{className:`flex flex-1 flex-col gap-2 px-5 py-4`,children:[(0,C.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-text-positive-weak`,children:e.label}),e.value!==null&&e.value!==void 0?(0,C.jsx)(s.t,{value:e.value,prefix:e.prefix,suffix:e.suffix,precision:e.precision,trend:e.trend,size:`xl`,className:`font-bold`}):(0,C.jsx)(`span`,{className:`text-xl font-bold tabular-nums text-text-positive-strong`,children:`—`}),e.description&&(0,C.jsx)(`span`,{className:`text-xs text-text-positive-weak`,children:e.description})]})]},e.label)})})});Et.displayName=`UITableSummaryBar`;function Dt(e){if(e==null)return``;if(typeof e==`number`)return String(e);if(typeof e==`boolean`)return e?`true`:`false`;let t=String(e);return t.includes(`,`)||t.includes(`"`)||t.includes(`
2
- `)||t.includes(`\r`)?`"${t.replace(/"/g,`""`)}"`:t}function Ot(e){if(e.length===0)return``;let t=e[0].map(e=>Dt(e.label)),n=e.map(e=>e.map(e=>Dt(e.value)).join(`,`));return[t.join(`,`),...n].join(`
3
- `)}function kt(e,t){let n=Ot(e);if(!n)return;let r=new Blob([n],{type:`text/csv;charset=utf-8;`}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=`${t}.csv`,a.click(),URL.revokeObjectURL(i)}const At=({onSearch:e,onChange:t,...n})=>{let r=(0,ee.useDebounceCallback)(t=>{e?.(t)},500);return(0,C.jsxs)(`div`,{className:`relative w-full max-w-80 flex-1`,children:[(0,C.jsx)(h.t,{...n,size:`lg`,type:`search`,placeholder:`Tìm kiếm...`,className:`flex-1 ps-9 pe-9`,onChange:e=>{t?.(e),r(e.target.value??``)}}),(0,C.jsx)(`div`,{className:`pointer-events-none absolute inset-y-0 inset-s-0 flex items-center justify-center ps-3 text-text-positive-weak peer-disabled:opacity-50`,children:(0,C.jsx)(y.SearchIcon,{size:16})}),(0,C.jsx)(`button`,{className:`absolute inset-y-0 inset-e-0 flex h-full w-9 items-center justify-center rounded-e-md text-text-positive-weak outline-none transition-[color,box-shadow] hover:text-text-positive focus:z-10 focus-visible:border focus-visible:border-primary-strong focus-visible:ring-[3px] focus-visible:ring-primary-weak disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,"aria-label":`Submit search`,type:`submit`,children:(0,C.jsx)(y.ArrowRightIcon,{size:16,"aria-hidden":`true`})})]})},$=({children:e,disabled:t,onClick:n,className:r,...i})=>(0,C.jsx)(`button`,{type:`button`,disabled:t,className:(0,x.cn)(`flex cursor-pointer items-center gap-x-1 rounded-sm border border-border bg-background p-2.5 text-sm text-text-positive-weak outline-none transition-all hover:shadow-card focus:border-border-emphasis focus:bg-muted-muted active:border-border-emphasis active:bg-muted-muted active:text-text-positive disabled:pointer-events-none disabled:cursor-default disabled:opacity-60 [&_svg]:size-3.5`,r),onClick:n,...i,children:e}),jt=({onCreate:e,onDownload:t,onRefresh:n})=>{let{table:r,csvData:i,csvFileName:a,title:o,showAnalysisPanel:s}=H(),{isOpen:c,toggle:l}=ye(),u=(0,b.useCallback)(()=>{if(t){t();return}if(!i||i.length===0)return;let e=r.getSelectedRowModel().flatRows;kt(e.length>0?e.map(e=>i[e.index]).filter(Boolean):i,a||o)},[t,i,a,r,o]),d=!!(t||i&&i.length>0);return(0,C.jsxs)(`div`,{className:`flex [&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none`,children:[(0,C.jsx)($,{disabled:!e,onClick:t=>{e?.(),t.stopPropagation(),t.preventDefault()},children:(0,C.jsx)(y.CirclePlus,{})}),(0,C.jsx)($,{disabled:!n,onClick:e=>{n?.(),e.stopPropagation(),e.preventDefault()},children:(0,C.jsx)(y.RefreshCwIcon,{})}),(0,C.jsx)($,{disabled:!d,onClick:e=>{u(),e.stopPropagation(),e.preventDefault()},children:(0,C.jsx)(y.DownloadIcon,{})}),s&&(0,C.jsx)($,{onClick:e=>{l(),e.stopPropagation(),e.preventDefault()},"aria-pressed":c,className:c?`bg-muted-muted text-text-positive`:void 0,children:(0,C.jsx)(y.BarChart2Icon,{})})]})},Mt=({children:e})=>{let{title:t,description:n,headerActions:r}=H();return(0,C.jsxs)(`div`,{"data-slot":`table-tooltip`,className:`relative flex w-full flex-col gap-2 px-2 py-0 text-sm`,children:[(0,C.jsxs)(`div`,{className:`flex w-full items-start justify-between gap-4`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,C.jsx)(`h3`,{className:`font-semibold text-base text-text-positive`,children:t}),n&&(0,C.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n})]}),r&&(0,C.jsx)(`div`,{className:`flex items-center gap-2 shrink-0`,children:r})]}),(0,C.jsx)(`div`,{className:`flex w-full flex-1 justify-between gap-x-2`,children:e})]})};Mt.displayName=`TableTooltip`,Object.defineProperty(exports,`A`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`B`,{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,`F`,{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,`H`,{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,`I`,{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,`L`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`M`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`N`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,`P`,{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,`R`,{enumerable:!0,get:function(){return ie}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,`V`,{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return Ge}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return wt}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return Ve}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return $e}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return Xe}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return Ke}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return qe}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return Et}}),Object.defineProperty(exports,`j`,{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return le}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return Qe}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return Je}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return jt}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return _t}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return Ye}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return At}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return rt}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return Mt}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return We}}),Object.defineProperty(exports,`z`,{enumerable:!0,get:function(){return O}});
4
- //# sourceMappingURL=tables-CPKHe3k-.cjs.map
@@ -1,4 +0,0 @@
1
- import{t as e}from"./button-LMMbL-uH.js";import{t}from"./paragraph-Cc13ZI4d.js";import{t as n}from"./flex-CinRrgEy.js";import{t as r}from"./date-BIqCFM1Z.js";import{t as i}from"./badge-CRpRXSuO.js";import{i as a,n as o,r as s,t as c}from"./tooltip-CVIl6Hln.js";import{t as l}from"./statistic-CYMqAYNc.js";import{n as u,r as d,t as f}from"./avatar-Hpj8lmux.js";import{t as p}from"./separator-BM8hA4DP.js";import{a as m,d as h,h as g,i as _,r as v,t as y}from"./dropdown-menu-DeHCVyby.js";import{t as ee}from"./progress-AYknlEgK.js";import{t as b}from"./checkbox-DLGDoU-1.js";import{t as x}from"./spinner-C1eamx3w.js";import{n as S,r as te,t as ne}from"./resizable-C-M-mu6b.js";import{t as C}from"./input-DAfP6LZ7.js";import{t as w}from"./label-B8cAG2kc.js";import{a as re,i as T,t as ie}from"./popover-6233wU1s.js";import{c as E,i as ae,n as oe,s as se,t as D}from"./select-CryLzZA0.js";import{AlertTriangle as O,ArrowRightIcon as ce,BarChart2Icon as le,BoxIcon as ue,CalendarIcon as de,CheckIcon as k,ChevronDown as fe,ChevronDownIcon as A,ChevronUpIcon as pe,CirclePlus as j,CopyIcon as me,DownloadIcon as M,EllipsisVerticalIcon as N,ExternalLinkIcon as he,HashIcon as P,ListFilterIcon as ge,ListFilterPlus as _e,MailIcon as ve,MinusIcon as F,MoreVerticalIcon as ye,MoveLeftIcon as be,MoveRightIcon as xe,PinOffIcon as Se,RefreshCwIcon as Ce,SearchIcon as we,TagIcon as Te,ToggleLeftIcon as Ee,Trash2Icon as De,TypeIcon as Oe,UserRoundIcon as ke,XIcon as Ae}from"lucide-react";import{Activity as je,createContext as I,memo as L,use as R,useCallback as z,useEffect as B,useId as Me,useMemo as V,useRef as H,useState as U}from"react";import{cn as W}from"@customafk/react-toolkit/utils";import{cva as G}from"class-variance-authority";import{Fragment as Ne,jsx as K,jsxs as q}from"react/jsx-runtime";import{colorHashLight as Pe}from"@customafk/react-toolkit/color-hash";import{flexRender as Fe,getCoreRowModel as Ie,getExpandedRowModel as Le,getGroupedRowModel as Re,useReactTable as ze}from"@tanstack/react-table";import{useVirtualizer as Be}from"@tanstack/react-virtual";import{useDebounceCallback as Ve}from"@customafk/react-toolkit/hooks/useDebounceCallback";const He=({name:e,avatarUrl:t,uuid:n})=>{let r=Pe.hex(n??e);return q(`div`,{className:`flex min-w-0 items-center gap-2`,children:[q(f,{className:`size-8 shrink-0`,children:[K(d,{src:t,alt:e}),K(u,{style:{backgroundColor:r},children:K(ke,{size:18,className:`text-white`})})]}),K(`span`,{className:`truncate text-sm font-medium`,children:e})]})},J=()=>q(`div`,{className:`flex gap-0 text-text-positive-weak`,children:[K(F,{size:16}),K(F,{size:16})]}),Ue=({label:e,onClick:t,onRemove:n})=>e?n?q(`div`,{className:`flex w-fit gap-x-0.5 rounded-full border border-border py-1 pr-2 pl-3 text-text-positive text-xs shadow-xs`,onClick:e=>{t?.(),e.stopPropagation(),e.preventDefault()},children:[e,K(`button`,{className:`cursor-pointer text-text-positive-weak hover:text-text-positive-strong`,onClick:e=>{n?.(),e.stopPropagation(),e.preventDefault()},children:K(Ae,{size:12})})]}):K(`button`,{className:`w-fit rounded-full border border-border px-3 py-1 text-text-positive text-xs shadow-xs`,onClick:e=>{t?.(),e.stopPropagation(),e.preventDefault()},children:e}):K(J,{}),We=({value:e})=>e==null?K(J,{}):e===!1?K(Ae,{size:14,strokeWidth:2,className:`text-danger-strong`}):K(k,{size:14,strokeWidth:2,className:`text-success-strong`}),Ge=L(({value:e,currency:t=`USD`,locale:n=`en-US`,display:r=`symbol`,size:i=`md`,colorize:a=!1})=>{let o=V(()=>{let i=typeof e==`string`?Number(e.trim()):e;return i==null||Number.isNaN(i)||!Number.isFinite(i)?null:new Intl.NumberFormat(n,{style:`currency`,currency:t,currencyDisplay:r,minimumFractionDigits:2,maximumFractionDigits:2}).format(i)},[e,t,n,r]),s=V(()=>{let t=typeof e==`string`?Number(e.trim()):e;return typeof t==`number`&&t<0},[e]);return o?K(`p`,{className:W(`font-number tabular-nums`,i===`xs`&&`text-xs`,i===`sm`&&`text-sm`,i===`md`&&`text-base`,i===`lg`&&`text-lg`,i===`xl`&&`text-xl`,!a&&`text-text-positive`,a&&s&&`text-danger-strong`,a&&!s&&`text-success-strong`),children:o}):K(J,{})});Ge.displayName=`UITableCurrencyDisplay`;const Ke=({date:e})=>e==null?K(J,{}):K(s,{children:q(c,{children:[K(a,{asChild:!0,children:K(i,{className:`h-fit`,children:K(r,{date:e,format:`medium`,className:`font-normal text-white`})})}),K(o,{className:`rounded px-2`,children:K(r,{date:e,format:`full`,showTime:!0,className:`font-medium text-text-negative text-xs`})})]})}),qe=({content:e})=>e==null?K(J,{}):q(c,{children:[K(a,{children:K(t,{variant:`sm`,className:`line-clamp-2 whitespace-pre-line break-all`,children:e})}),K(o,{align:`start`,className:`h-fit min-w-48 max-w-80 pt-4`,children:q(`div`,{className:`flex flex-col gap-y-2`,children:[K(t,{variant:`xs`,className:`whitespace-pre-line text-wrap break-keep text-text-negative-weak`,children:e}),q(`p`,{className:`w-full text-end`,children:[e.toString().length,` chars`]})]})})]}),Je=({email:e,linkable:t=!0})=>{let[n,r]=U(!1);return e?K(s,{children:q(`div`,{className:`group flex items-center gap-x-1.5`,children:[K(ve,{size:13,className:`shrink-0 text-text-positive-weak`}),t?K(`a`,{href:`mailto:${e}`,className:`truncate text-primary text-sm underline-offset-2 hover:underline`,onClick:e=>e.stopPropagation(),children:e}):K(`span`,{className:`truncate text-text-positive text-sm`,children:e}),q(c,{children:[K(a,{asChild:!0,children:K(`button`,{onClick:t=>{t.stopPropagation(),t.preventDefault(),navigator.clipboard.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1500)})},className:`shrink-0 cursor-pointer text-text-positive-weak opacity-0 transition-opacity group-hover:opacity-100 hover:text-text-positive`,children:n?K(k,{size:13,className:`text-success-strong`}):K(me,{size:13})})}),K(o,{children:n?`Copied!`:`Copy email`})]})]})}):K(J,{})},Ye=({items:e,maxVisible:t=3})=>{if(!e||e.length===0)return K(J,{});let n=e.slice(0,t),r=e.slice(t);return q(`div`,{className:`flex flex-wrap gap-1`,children:[n.map((e,t)=>K(`span`,{className:`inline-flex items-center rounded-full border border-border bg-muted-weak px-2 py-0.5 text-text-positive text-xs`,children:e},t)),r.length>0&&K(s,{children:q(c,{children:[K(a,{asChild:!0,children:q(`span`,{className:`inline-flex cursor-default items-center rounded-full bg-primary-bg-subtle px-2 py-0.5 text-primary-intense text-xs`,children:[`+`,r.length,` more`]})}),K(o,{align:`start`,className:`flex max-w-64 flex-wrap gap-1 p-2`,children:r.map((e,t)=>K(`span`,{className:`inline-flex items-center rounded-full border border-border px-2 py-0.5 text-text-negative text-xs`,children:e},t))})]})})]})},Xe=({items:t=[]})=>q(y,{children:[K(g,{asChild:!0,children:K(e,{size:`sm`,variant:`ghost`,color:`secondary`,className:`size-9 rounded-full`,children:K(ye,{})})}),K(v,{children:K(_,{children:t.map(e=>K(m,{className:`px-3`,onSelect:t=>{e.onClick(e.id),t.preventDefault(),t.stopPropagation()},children:e.label},e.id))})})]}),Ze=({name:e})=>e?q(c,{children:[K(a,{children:K(t,{variant:`sm`,className:`line-clamp-2 w-full truncate text-wrap pb-px text-start`,children:e})}),K(o,{align:`start`,className:`h-fit min-w-48 max-w-80 pt-4`,children:q(`div`,{className:`flex flex-col gap-y-2`,children:[K(`p`,{className:`whitespace-pre-line text-wrap break-keep`,children:e}),q(`p`,{className:`w-full text-end`,children:[e.length,` chars`]})]})})]}):K(J,{}),Qe=({href:e,label:t})=>q(`a`,{href:e,target:`_blank`,className:`inline-flex items-center gap-1 truncate text-primary text-sm underline`,rel:`noopener noreferrer`,children:[K(`span`,{children:t||e}),K(he,{size:14})]}),$e=({value:e})=>q(c,{children:[K(a,{asChild:!0,children:K(`p`,{className:`font-number text-text-positive text-sm tabular-nums`,children:e.replace(/(\d{3})(\d{3})(\d{4})/,`($1) $2-$3`)})}),K(o,{align:`start`,children:K(`p`,{className:`tabular-nums`,children:e.slice(1).replace(/(\d{2})(\d{3})(\d{4})/,`(00) (+84) ($1) $2-$3`)})})]}),et=L(({value:e,showLabel:t=!0,successThreshold:n=70,warningThreshold:r=40})=>{if(e==null)return K(J,{});let i=Math.min(100,Math.max(0,e));return q(`div`,{className:`flex w-full min-w-24 items-center gap-x-2`,children:[K(ee,{value:i,className:W(`flex-1`,i>=n?`[&>[data-slot=progress-indicator]]:bg-success`:i>=r?`[&>[data-slot=progress-indicator]]:bg-warning`:`[&>[data-slot=progress-indicator]]:bg-danger`)}),t&&q(`span`,{className:`w-9 shrink-0 text-right font-number text-text-positive-weak text-xs tabular-nums`,children:[i,`%`]})]})});et.displayName=`UITableProgressDisplay`;const tt=({title:t,onClick:n})=>q(c,{children:[K(a,{children:K(e,{type:`button`,variant:`ghost`,color:`danger`,size:`icon`,onClick:z(async e=>{e.preventDefault(),e.stopPropagation(),await n?.()},[n]),children:K(De,{})})}),K(o,{children:K(`p`,{children:t||`Remove item from list table`})})]}),nt=(e,t,n)=>{let r=10**t;switch(n){case`floor`:return Math.floor(e*r)/r;case`ceil`:return Math.ceil(e*r)/r;default:return Math.round(e*r)/r}},rt=L(({decimalSeparator:e=`.`,groupSeparator:t=`,`,prefix:r,suffix:i,precision:a,roundingMode:o=`round`,showTrailingZeros:s=!1,size:c=`lg`,value:l=0})=>{let u=V(()=>{let e={};return typeof a==`number`&&a>=0&&s&&(e.minimumFractionDigits=a),e.maximumFractionDigits=a,e},[a,s]),d=z(e=>{let t=e;return typeof a==`number`&&a>=0&&(t=nt(e,a,o)),t.toLocaleString(`en-US`,u)},[o,u,a]),f=V(()=>{if(typeof l==`number`)return Number.isNaN(l)||!Number.isFinite(l)?`N/A`:d(l);if(typeof l==`string`){let e=l.trim();if(!e)return`N/A`;let t=Number(e);return Number.isNaN(t)||!Number.isFinite(t)?`N/A`:d(t)}return`N/A`},[l,d]),p=V(()=>e===`.`&&t===`,`?f:f.replace(/,/g,t).replace(/\./g,e),[f,e,t]);return p===`0`||p===`N/A`||!p?K(J,{}):q(n,{padding:`none`,className:W(`font-number text-lg text-text-positive tabular-nums`,c===`xs`&&`text-xs`,c===`sm`&&`text-sm`,c===`md`&&`text-base`,c===`lg`&&`text-lg`,c===`xl`&&`text-xl`),children:[r,K(`p`,{children:p}),i]})});rt.displayName=`UITableStatisticDisplay`;const it=({value:e,colorMap:t,defaultColor:n=`muted`,variant:r=`soft`})=>e==null||e===``?K(J,{}):K(i,{variant:r,color:(t&&t[e])??n,size:`sm`,className:`min-w-16 justify-center capitalize`,children:e.charAt(0).toUpperCase()+e.slice(1).replace(/_/g,` `)}),at=({uuid:e,username:r,email:i})=>q(n,{wrap:!1,gap:`sm`,padding:`none`,children:[!e&&K(f,{className:`size-10 shadow-card`,children:K(u,{className:`bg-muted-weak`,children:K(ke,{size:28,className:`text-text-negative`})})}),e&&K(f,{className:`size-10 shadow-card`,children:K(u,{style:{backgroundColor:Pe.hex(e)},children:K(ke,{size:28,className:`text-white`})})}),q(n,{vertical:!0,padding:`none`,gap:`none`,align:`start`,children:[K(t,{className:`font-medium text-sm text-text-positive-weak`,children:r??`Unknown User`}),K(t,{variant:`sm`,className:`mt-0! text-text-positive-weak text-xs`,children:i})]})]}),ot=I(null),st=()=>{let e=R(ot);if(!e)throw Error(`useTableInnerWrapperContext must be used within a TableInnerWrapperProvider`);return e},ct=I(null),lt=()=>{let e=R(ct);if(!e)throw Error(`useTableInnerTableContext must be used within a TableInnerTableProvider`);return e},ut=I(null),dt=()=>{let e=R(ut);if(!e)throw Error(`useTableHeaderRowContext must be used within a TableHeaderRowProvider`);return e},ft=I(null),Y=()=>{let e=R(ft);if(!e)throw Error(`useTableBodyContext must be used within a TableBodyProvider`);return e},pt=I(null),mt=()=>{let e=R(pt);if(!e)throw Error(`useTableRowContext must be used within a TableRowProvider`);return e},ht=I(null),X=()=>{let e=R(ht);if(!e)throw Error(`useTableContext must be used within a TableProvider`);return e},gt=I(null),_t=()=>{let e=R(gt);if(!e)throw Error(`useUITableFilterContext must be used within a UITableProvider`);return e},vt=I(null),yt=()=>{let e=R(vt);if(!e)throw Error(`useUITableAnalysisContext must be used within a UITableProvider`);return e},bt=G([`absolute right-2 z-10 p-0.5 opacity-0 bg-card`,`cursor-pointer rounded-full transition-all`,`text-text-positive-weak`,`[&>svg]:size-4`,`group-hover:opacity-100`,`hover:bg-muted-muted hover:text-text-positive`]),xt=G([`sticky left-0 flex flex-1 items-center justify-center bg-transparent text-text-positive-weak opacity-100`]),St=G([`relative m-0 flex size-full flex-col flex-nowrap items-start justify-start gap-2`]),Ct=G([`relative w-full flex-1 min-h-0 overflow-auto border-b border-b-border border-l border-l-border`]),wt=G([`grid w-full table-fixed caption-bottom border-collapse border-spacing-0 flex-col content-start`]),Tt=G([`sticky top-0 z-20 h-9 w-full`,`grid select-none bg-white`,`border-b border-b-border shadow`,`font-medium text-[13px] text-text-positive-weak`,`[&_tr:not(:last-child)_td]:border-b`,`[&_th]:inline-flex`,`[&_th]:bg-card`,`[&_th]:items-center`,`[&_th]:transition-all`,`[&_th]:duration-300`,`[&_th]:whitespace-nowrap`,`[&_th]:border-border`,`[&_th]:border-r`,`[&_th]:first:border-l-0`,`[&_tr_th:not([data-pinned=false])]:bg-card`]),Et=G([`flex`]),Dt=G([`group flex`],{variants:{isPinned:{left:`sticky`,right:`sticky`,false:`relative`},isActions:{true:`border-r-0!`,false:``},isLastCell:{true:``,false:``},isFirstCell:{true:``,false:``},position:{start:`justify-start`,center:`justify-center`,end:`justify-end`}},compoundVariants:[{isPinned:`left`,isLastCell:!0,className:`border-r border-r-border`},{isPinned:`right`,isFirstCell:!0,className:`border-l border-l-border`}]}),Ot=G(`relative w-full,grid,[&_tr]:absolute,[&_tr]:flex,[&_tr]:flex-none,[&_tr]:w-full,[&_tr]:cursor-pointer [&_tr]:focus:outline-none,[&_tr]:border-b [&_tr]:border-b-border,[&_td]:z-10,[&_td]:transition-all,[&_td]:flex,[&_td]:flex-none,[&_td]:overflow-hidden,[&_td]:whitespace-nowrap,[&_td]:px-4,[&_td]:py-2.5,[&_td]:align-middle,[&_td]:border-border,[&_td]:data-[selected=true]:bg-muted-muted!,[&_td]:data-[selected=true]:hover:bg-muted-muted!,[&_td>div]:inline-flex,[&_td>div]:items-center,[&_td>div]:w-full,[&_td:not([data-pinned=false])]:z-20,[&_td:not([data-pinned=false])]:sticky,[&_td:not([data-pinned=false])]:bg-muted-bg-subtle`.split(`,`)),kt=G([`group transition-colors hover:bg-muted-muted hover:[&_td]:bg-muted-muted! [&_td]:border-r [&_td]:border-r-border`]),At=G([`group-hover:bg-muted-muted!`],{variants:{isPinned:{left:`sticky`,right:`sticky`,false:`relative`}},defaultVariants:{isPinned:void 0}}),jt=G([`sticky border-r-0! inset-y-0 right-0 z-50 flex items-center pr-4 group-hover:bg-muted-muted!`]),Mt=G([`group-hover:bg-muted-muted!`],{variants:{isPinned:{left:``,right:``,false:``},isLastCell:{true:``,false:``},isFirstCell:{true:``,false:``}},compoundVariants:[{isPinned:`left`,isLastCell:!0,className:`border-r border-r-border`},{isPinned:`right`,isFirstCell:!0,className:`border-l border-l-border`}]}),Nt=G([`overflow-x-hidden`],{variants:{position:{start:`justify-start`,center:`justify-center`,end:`justify-end`}},defaultVariants:{position:`start`}}),Pt=G([`shrink-0 flex w-full justify-center border-t border-border-weak font-medium`]),Ft=G([`flex w-full`,`text-[13px] font-medium text-text-positive-weak`]),It=G([`flex flex-none items-center overflow-hidden whitespace-nowrap px-4 py-2`,`border-r border-r-border`],{variants:{isPinned:{left:`sticky z-20 bg-white`,right:`sticky z-20 bg-white`,false:`relative`},isFirstCell:{true:`border-l border-l-border`,false:``},isLastCell:{true:`border-r border-r-border`,false:``}}}),Lt=G([`flex cursor-pointer gap-x-0.5`],{variants:{state:{idle:`text-text-positive-weak hover:text-text-positive`,fetching:`cursor-not-allowed`,error:`text-danger hover:text-danger-strong`}},defaultVariants:{state:`idle`}}),Rt=L(({height:e,className:t,children:n,...r})=>{let{isFetching:i,isRefetching:a,isEmpty:o}=Y();return o||i||a?null:K(`tbody`,{slot:`table-body`,style:{height:e},className:W(Ot(),t),...r,children:n})});Rt.displayName=`UITableBody`;const zt=L(({isPinned:e=!1,isFirstCell:t=!1,isLastCell:n=!1,colId:r,position:i=`start`,column:a,getContext:o,...s})=>{let{innerTableId:c,table:l}=lt(),u=H(null),d=H(null),f=V(()=>{let t=a?.getStart(`left`);return e===`left`&&typeof t==`number`?`${t}px`:void 0},[e,a]),p=V(()=>{let t=a?.getAfter(`right`);return e===`right`&&typeof t==`number`?`${t}px`:void 0},[e,a]),m=V(()=>`calc(var(--col-${r}-size) * 1px)`,[r]),h=V(()=>a?.columnDef.minSize?`calc(var(--col-${r}-minSize) * 1px)`:void 0,[r,a]),g=V(()=>a?.columnDef.maxSize?`calc(var(--col-${r}-maxSize) * 1px)`:void 0,[r,a]),_=V(()=>Fe(a?.columnDef.cell,o()),[a,o]);return B(()=>{u.current=document.querySelector(`table[id="${c}"]`)},[c]),B(()=>{if(!d.current)return;let e=d.current.scrollWidth,t=a?.getSize();t!=null&&e>t&&u.current instanceof HTMLTableElement&&typeof r==`string`&&a?.columnDef.meta?.fitContent&&l.setColumnSizing(t=>({...t,[r]:e+32}))},[r,a,l]),K(`td`,{slot:`table-body-cell`,"data-pinned":e,"data-lastcell":n||void 0,"data-firstcell":t||void 0,style:{left:f,right:p,width:m,minWidth:h,maxWidth:g},className:Mt({isPinned:e||void 0,isLastCell:n,isFirstCell:t}),...s,children:K(`div`,{ref:d,slot:`table-body-cell-inner`,className:Nt({position:i}),children:_})})});zt.displayName=`UITableCell`;const Bt=L(({virtualRowIndex:e,column:t,getContext:n,className:r,...i})=>{let a=V(()=>Fe(t?.columnDef.cell,n()),[t,n]);return K(`td`,{"data-col":`actions`,"data-cell":e,className:jt(),...i,children:a})});Bt.displayName=`UITableCellActions`;const Vt=L(({isPinned:e,isSelected:t=!1,className:n,onToggleRowSelected:r,...i})=>{let a=z(e=>{r?.(!!e)},[r]);return K(`td`,{slot:`table-body-cell`,"data-pinned":!0,style:{left:0,zIndex:20,width:60,maxWidth:60},className:W(At({isPinned:e}),n),...i,children:K(`div`,{"data-slot":`table-cell-inner`,className:`flex! w-full! items-center justify-center bg-transparent text-center align-middle`,onClick:e=>{e.preventDefault(),e.stopPropagation()},children:K(b,{"aria-label":`Select Row`,checked:t,onCheckedChange:a})})})});Vt.displayName=`UITableCellSelect`;const Ht=L(()=>{let{table:e,isFetching:t,isRefetching:n,loadingDisplayRow:r=3}=X();return!t&&!n?null:K(`tbody`,{className:W(Ot(),`pointer-events-none`),children:Array.from({length:r}).map((t,n)=>K(`tr`,{"data-slot":`table-row`,"data-index":n,className:W(kt(),`animate-pulse relative!`),children:e.getAllColumns().map((t,r)=>{let i=t.getIsPinned(),a=t.getStart(`left`),o=t.getAfter(`right`);return t.id===`actions`?K(`td`,{"data-slot":`table-body-cell`,"data-col":t.id,"data-cell":r,style:{width:60},className:jt(),children:K(`div`,{className:`w-full h-4 bg-muted-muted rounded-full`})},`${t.id}-${r}`):t.id===`select`?K(`td`,{"data-slot":`table-body-cell`,"data-col":t.id,"data-cell":r,"data-pinned":!0,style:{left:0,zIndex:20,width:60,maxWidth:60},className:At({isPinned:`left`}),children:K(`div`,{className:`w-full flex justify-center`,children:K(`div`,{className:`size-4 bg-muted-muted rounded-full`})})},`${t.id}-${n}`):K(`td`,{"data-col":t.id,"data-cell":r,"data-selected":void 0,"data-lastcell":t.id===e.getAllColumns()[e.getAllColumns().length-1].id||void 0,"data-firstcell":t.id===e.getAllColumns()[0].id||void 0,style:{zIndex:i?20:0,left:i===`left`&&typeof a==`number`?`${a}px`:void 0,right:i===`right`&&typeof o==`number`?`${o}px`:void 0,width:`calc(var(--col-${t.id}-size) * 1px)`,minWidth:t.columnDef.minSize?`calc(var(--col-${t.id}-minSize) * 1px)`:void 0,maxWidth:t.columnDef.maxSize?`calc(var(--col-${t.id}-maxSize) * 1px)`:void 0},className:Mt({isPinned:t.getIsPinned(),isFirstCell:t.id===e.getRightHeaderGroups()[0]?.headers[0]?.id,isLastCell:t.id===e.getLeftHeaderGroups()[0]?.headers[e.getLeftHeaderGroups()[0].headers.length-1]?.id}),children:K(`div`,{className:Nt({position:t.columnDef.meta?.position??`start`}),children:K(`div`,{className:`w-full h-4 bg-muted-muted rounded-full`})})},`${t.id}-${r}`)})},n))})}),Ut=L(()=>{let{isEmpty:e,emptyDisplayHeight:t}=X();return e?K(Ne,{children:e&&K(`div`,{className:xt(),style:{minHeight:t??`24rem`},children:q(`div`,{className:`flex flex-col items-center gap-1`,children:[K(ue,{strokeWidth:1,size:48}),K(`p`,{children:`Không có dữ liệu`})]})})}):null});Ut.displayName=`UITableEmptyDisplay`;const Wt=L(({className:e,children:t,...n})=>K(`div`,{slot:`table-footer`,className:W(Pt(),e),...n,children:t}));Wt.displayName=`UITableFooter`;function Gt(e,t,n){switch(n){case`count`:return e;case`sum`:return t.reduce((e,t)=>e+t,0);case`avg`:return t.length===0?0:t.reduce((e,t)=>e+t,0)/t.length;case`min`:return t.length===0?0:Math.min(...t);case`max`:return t.length===0?0:Math.max(...t)}}function Kt(e,t){return e.map(e=>{let n=e.getValue(t);return typeof n==`string`?Number(n):typeof n==`number`?n:NaN}).filter(e=>!Number.isNaN(e))}const qt=L(()=>{let{table:e}=X(),{rowSelectionState:t}=Y(),n=V(()=>e.getHeaderGroups()[0]?.headers??[],[e.getHeaderGroups()]),r=V(()=>n.some(e=>e.column.columnDef.meta?.aggregation),[n]),i=V(()=>e.getSelectedRowModel().flatRows,[e,t]),a=V(()=>e.getRowModel().rows,[e]),o=i.length>0?i:a,s=V(()=>{let e={};for(let t of n){let n=t.column.columnDef.meta?.aggregation;if(!n)continue;let r=Kt(o,t.id);e[t.id]=Gt(o.length,r,n.type)}return e},[n,o]),c=e.getState().columnPinning,u=c.left??[],d=c.right??[],f=n.find(e=>d.includes(e.id))?.id,p=[...n].reverse().find(e=>u.includes(e.id))?.id;if(!r)return null;let m=i.length>0?`${i.length}`:`${a.length}`;return K(`div`,{slot:`table-footer-row`,className:Ft(),children:n.map(e=>{let t=e.id,n=u.includes(t)?`left`:d.includes(t)?`right`:!1,r=t===f,i=t===p,a=n===`left`?`${e.column.getStart(`left`)}px`:void 0,o=n===`right`?`${e.column.getAfter(`right`)}px`:void 0;if(t===`select`)return K(`div`,{slot:`table-footer-select`,"data-pinned":`left`,style:{left:`0px`,width:`60px`},className:W(It({isPinned:`left`,isFirstCell:!1,isLastCell:!1}),`justify-center`),children:K(`span`,{className:`truncate text-[11px] items-center text-text-positive-weak`,children:m})},t);if(t===`actions`)return K(`div`,{slot:`table-footer-actions`,style:{width:`calc(var(--col-${t}-size) * 1px)`,right:`0px`},className:It({isPinned:!1,isFirstCell:!1,isLastCell:!1})},t);let c=e.column.columnDef.meta?.aggregation,h=s[t]??null;return K(`div`,{slot:`table-footer-cell`,"data-pinned":n,style:{left:a,right:o,width:`calc(var(--col-${t}-size) * 1px)`},className:It({isPinned:n||`left`,isFirstCell:r,isLastCell:i}),children:c&&h!==null?K(l,{value:h,prefix:c.prefix,suffix:c.suffix,precision:c.precision,size:`sm`}):K(`span`,{className:`text-text-positive-weak`,children:`—`})},t)})})});qt.displayName=`UITableFooterRow`;const Jt=L(({className:e,children:t,...n})=>K(`thead`,{slot:`table-head`,className:W(Tt(),e),...n,children:t}));Jt.displayName=`UITableHead`;const Yt=L(({isPinned:e,onLeftPin:t,onRightPin:n,onUnpin:r,className:i})=>{let a=z(()=>{t?.(`left`)},[t]),o=z(()=>{n?.(`right`)},[n]),s=z(()=>{r?.(!1)},[r]);return q(y,{children:[K(g,{asChild:!0,children:K(`button`,{type:`button`,className:W(bt(),i),children:K(N,{})})}),K(v,{align:`end`,className:`w-64 p-4`,children:q(_,{className:`*:data-[slot=dropdown-menu-item]:rounded-xs *:data-[slot=dropdown-menu-item]:p-2`,children:[K(je,{mode:e?`visible`:`hidden`,children:q(m,{onClick:s,children:[!!e&&`Bỏ ghim`,K(h,{children:K(Se,{className:`size-4`})})]})}),q(je,{mode:e?`hidden`:`visible`,children:[q(m,{onClick:a,children:[e?`Bỏ ghim`:`Ghim trái`,K(h,{children:K(be,{className:`size-4`})})]}),q(m,{onClick:o,children:[e?`Bỏ ghim`:`Ghim phải`,K(h,{children:K(xe,{className:`size-4`})})]})]})]})})]})});Yt.displayName=`UITableHeadCellOption`;const Xt=L(({isVisible:e=!0,isPinned:t=!1,isFirstCell:n=!1,isLastCell:r=!1,isOptionsVisible:i=!0,headerId:a,headerColumn:o,className:s,children:c,onColumnPin:l,onToggleVisibility:u,...d})=>{let f=o?.columnDef.meta?.position,p=V(()=>t?20:void 0,[t]),m=V(()=>{let e=o?.getStart?.(`left`);return t===`left`&&typeof e==`number`?`${e}px`:void 0},[t,o]),h=V(()=>{let e=o?.getAfter?.(`right`);return t===`right`&&typeof e==`number`?`${e}px`:void 0},[t,o]),g=V(()=>`calc(var(--header-${a}-size) * 1px)`,[a]),_=V(()=>o?.columnDef.minSize?`calc(var(--col-${a}-minSize) * 1px)`:void 0,[a,o]),v=V(()=>o?.columnDef.maxSize?`calc(var(--col-${a}-maxSize) * 1px)`:void 0,[a,o]);return q(`th`,{slot:`table-head-cell`,"data-pinned":t,"data-header":a,style:{zIndex:p,left:m,right:h,width:g,minWidth:_,maxWidth:v},className:W(Dt({isPinned:t||`false`,isActions:a===`actions`,isLastCell:r,isFirstCell:n,position:f}),s),...d,children:[K(`div`,{className:`truncate px-4`,children:c}),i&&K(Yt,{isPinned:t,isVisible:e,onLeftPin:l,onRightPin:l,onUnpin:l})]})});Xt.displayName=`UITableHeadCell`;const Zt=L(({isPinned:e,isAllRowsSelected:t,style:n,onToggleAllRowsSelected:r,...i})=>{let a=z(e=>{r?.(!!e)},[r]);return K(`th`,{slot:`table-header-cell`,"data-pinned":!0,style:{left:0,zIndex:20,width:60,maxWidth:60},className:At({isPinned:e}),...i,children:K(`div`,{className:`absolute inset-0 flex items-center justify-center`,onClick:e=>{e.preventDefault(),e.stopPropagation()},children:K(b,{"aria-label":`Select All Rows`,checked:t,onCheckedChange:a})})})});Zt.displayName=`UITableHeadCellSelect`;const Qt=L(({headerGroup:e,className:t,...n})=>{let{isAllRowsSelected:r,columnPinningState:i,leftPinnedHeaders:a,rightPinnedHeaders:o,onToggleAllRowsSelected:s}=dt(),c=o[0]?.id,l=a[a.length-1]?.id;return K(`tr`,{slot:`table-head-row`,className:W(Et(),t),...n,children:e.headers.map((e,t)=>{let n=e.column.getIsVisible(),a=i.left?.includes(e.id)?`left`:i.right?.includes(e.id)?`right`:!1;return e.id===`select`?K(Zt,{isPinned:a,isAllRowsSelected:r,onToggleAllRowsSelected:s},e.id):K(Xt,{isVisible:n,isPinned:a,isFirstCell:e.id===c,isLastCell:e.id===l,isOptionsVisible:![`select`,`actions`].includes(e.id),headerId:e.id,headerColumn:e.column,colSpan:e.colSpan,onColumnPin:e.column.pin,onToggleVisibility:e.column.toggleVisibility,children:Fe(e.column.columnDef.header,e.getContext())},`${e.id}-${t}`)})})});Qt.displayName=`UITableHeadRow`;const $t=L(({children:e,...t})=>{let{table:n,innerTableId:r,totalSize:i}=lt(),a=H(null);return B(()=>{if(!a.current)return;let e=n.getFlatHeaders(),t,r=new ResizeObserver(r=>{t!==void 0&&cancelAnimationFrame(t),t=requestAnimationFrame(()=>{let t=r[0];if(!t)return;let i=t.target;if(!(i instanceof HTMLTableElement))return;let a=t.contentRect.width,{left:o=[],right:s=[]}=n.getState().columnPinning,c=0,l=0,u=0,d=e.map(e=>{let{id:t}=e,n=t===`select`||t===`actions`,r=o.includes(t)||s.includes(t),i=e.getSize(),a=e.column.columnDef.maxSize;return n?(c+=60,{id:t,isFlex:!1,width:60}):r?(c+=i,{id:t,isFlex:!1,width:i}):e.column.columnDef.size||i!==150?(u+=i,{id:t,isFlex:!1,width:i}):(l++,{id:t,isFlex:!0,maxSize:a})}),f=a-c-u,p=l>0?Math.max(0,Math.floor(f/l)):0,m=i.closest(`[data-slot="table-scroll-host"]`);d.forEach(e=>{if(e.isFlex){let t=e.maxSize?Math.min(p,e.maxSize):p;i.style.setProperty(`--header-${e.id}-size`,`${t}`),i.style.setProperty(`--col-${e.id}-size`,`${t}`),m?.style.setProperty(`--col-${e.id}-size`,`${t}`),e.maxSize&&i.style.setProperty(`--col-${e.id}-maxSize`,`${e.maxSize}`)}else i.style.setProperty(`--header-${e.id}-size`,`${e.width}`),i.style.setProperty(`--col-${e.id}-size`,`${e.width}`),m?.style.setProperty(`--col-${e.id}-size`,`${e.width}`)})})});return r.observe(a.current),()=>{t!==void 0&&cancelAnimationFrame(t),r.disconnect()}},[n.getState().columnSizingInfo,n.getState().columnSizing,n.getState().columnPinning]),K(`table`,{id:r,ref:a,slot:`table-inner-table`,className:wt(),style:{minWidth:i},...t,children:e})});$t.displayName=`UITableInnerTable`;const Z=L(({children:e,...t})=>{let{innerWrapperId:n}=st();return K(`div`,{id:n,slot:`table-inner-wrapper`,className:Ct(),...t,children:e})});Z.displayName=`UITableInnerWrapper`;const en=L(({virtualRowIndex:e,virtualRowStart:t,fetchMoreData:n})=>{let{innerWrapperId:r}=st(),i=H(null),a=H(null),[o,s]=U(`idle`),[c,l]=U(0),u=z(async()=>{try{s(`fetching`),await n?.(),s(`idle`)}catch(e){console.error(`Error fetching more data:`,e),s(`error`)}},[n]);return B(()=>{if(i.current=document.querySelector(`div[id="${r}"]`),!i.current)return;let e=new ResizeObserver(e=>{l(e[0].contentRect.width)});return e.observe(i.current),()=>e.disconnect()},[r]),n?K(`tr`,{ref:a,"data-index":e,style:{transform:`translateY(${t}px)`,width:c},className:`sticky! left-0 h-10`,children:K(`td`,{className:`absolute left-0 flex w-full items-center justify-center text-xs`,children:q(`button`,{type:`button`,disabled:o===`fetching`,className:Lt({state:o}),onClick:u,children:[o===`idle`&&K(fe,{className:`size-4`}),o===`fetching`&&K(x,{className:`size-4 animate-spin`}),o===`error`&&K(O,{className:`size-4 text-danger`}),o===`idle`&&`Tải thêm`,o===`fetching`&&`Đang tải...`,o===`error`&&`Lỗi! Thử lại?`]})})}):null});en.displayName=`UITableLoadMore`;const tn=L(({row:e,isSelected:t,virtualRowIndex:n,virtualRowStart:r,children:i,...a})=>{let{keyOfClickRow:o,isAllRowsSelected:s,columnPinningState:c,leftPinnedHeaders:l,rightPinnedHeaders:u,onClickRow:d}=mt(),f=V(()=>c.left??[],[c]),p=V(()=>c.right??[],[c]),m=V(()=>u?.[0]?.id,[u]),h=V(()=>l?.[l.length-1]?.id,[l]),g=V(()=>e.getVisibleCells().some(e=>e.column.id===`select`),[e]),_=z(t=>{if(d){let t=o?e.original?.[o]:void 0;d(n,typeof t==`string`||typeof t==`number`?t:void 0)}else g&&e.toggleSelected();t.preventDefault(),t.stopPropagation()},[o,d,e,n,g]);return K(`tr`,{slot:`table-row`,"data-index":n,style:{transform:`translateY(${r}px)`},className:kt(),onClick:_,...a,children:e.getVisibleCells().map((e,r)=>{let i=f.includes(e.column.id),a=p.includes(e.column.id),o=i?`left`:a?`right`:!1;return e.column.id===`actions`?K(Bt,{"data-col":e.column.id,"data-cell":n,"data-selected":t||void 0,virtualRowIndex:n,column:e.column,getContext:e.getContext},`${e.id}-${r}`):e.column.id===`select`?K(Vt,{"data-col":e.column.id,"data-cell":n,"data-selected":t||void 0,isPinned:o,isSelected:s||t,onToggleRowSelected:e.row.toggleSelected},`${e.id}-${r}`):K(zt,{"data-col":e.column.id,"data-cell":n,"data-selected":t||void 0,isPinned:o,isFirstCell:e.column.id===m,isLastCell:e.column.id===h,colId:e.column.id,position:e.column.columnDef.meta?.position??`start`,column:e.column,getContext:e.getContext},`${e.id}-${r}`)})})});tn.displayName=`UITableRow`;const nn=L(({className:e,children:t,...n})=>K(`div`,{slot:`table-wrapper`,className:W(St(),e),...n,children:t}));nn.displayName=`UITableWrapper`;const rn=({children:e})=>{let{table:t,fetchMoreData:n}=X(),{rowSelectionState:r}=Y(),i=H(null),{rows:a}=t.getRowModel(),o=Be({count:a.length+(n?1:0),estimateSize:()=>40,getScrollElement:()=>i.current,measureElement:typeof window<`u`&&navigator.userAgent.indexOf(`Firefox`)===-1?e=>e?.getBoundingClientRect().height:void 0,overscan:2}),s=V(()=>`${o.getTotalSize()}px`,[o.getTotalSize()]);return q(te,{direction:`horizontal`,style:{direction:t.options.columnResizeDirection},className:`relative flex w-full max-w-full flex-1 gap-1 overflow-auto border-t border-t-border border-r border-r-border p-0 text-sm`,children:[K(S,{"data-slot":`table-scroll-host`,className:`relative flex flex-col`,children:q(Z,{ref:i,children:[q($t,{children:[K(Jt,{children:t.getHeaderGroups().map(e=>K(Qt,{headerGroup:e},e.id))}),K(Rt,{height:s,children:o.getVirtualItems().map(e=>{let t=a[e.index];if(!t&&n)return K(en,{virtualRowIndex:e.index,virtualRowStart:e.start,fetchMoreData:n},e.key);let i=r[t.id]===!0;return K(tn,{ref:o.measureElement,row:t,isSelected:i,virtualRowIndex:e.index,virtualRowStart:e.start},e.key)})}),K(Ht,{})]}),K(Ut,{})]})}),e&&q(Ne,{children:[K(ne,{}),e]})]})};function an(e,t,n){switch(n){case`count`:return e;case`sum`:return t.reduce((e,t)=>e+t,0);case`avg`:return t.length===0?0:t.reduce((e,t)=>e+t,0)/t.length;case`min`:return t.length===0?0:Math.min(...t);case`max`:return t.length===0?0:Math.max(...t)}}function on(e,t){return e.map(e=>{let n=e.getValue(t);return typeof n==`string`?Number(n):typeof n==`number`?n:NaN}).filter(e=>!Number.isNaN(e))}const sn={sum:`Tổng`,avg:`Trung bình`,count:`Đếm`,min:`Nhỏ nhất`,max:`Lớn nhất`},cn=L(()=>{let{table:e,totalRows:t}=X(),{rowSelectionState:n}=Y(),{isOpen:r,toggle:i}=yt(),a=V(()=>e.getRowModel().rows,[e]),o=V(()=>e.getSelectedRowModel().flatRows,[e,n]),s=V(()=>e.getHeaderGroups()[0]?.headers??[],[e]),c=V(()=>s.filter(e=>![`select`,`actions`].includes(e.id)).flatMap(e=>{let t=e.column.columnDef.meta?.aggregation;if(!t)return[];let n=t.label??(typeof e.column.columnDef.header==`string`?e.column.columnDef.header:e.id),r=on(a,e.id),i=o.length>0?on(o,e.id):null;return[{colId:e.id,header:n,aggregation:t,allValue:an(a.length,r,t.type),selectedValue:i===null?null:an(o.length,i,t.type)}]}),[s,a,o]);return q(`div`,{"data-slot":`table-analysis-panel`,className:`w-full border-t border-border`,children:[q(`button`,{type:`button`,className:W(`flex w-full items-center justify-between px-4 py-2 text-sm font-medium text-text-positive`,`hover:bg-muted-bg-subtle transition-colors outline-none`,`focus-visible:ring-2 focus-visible:ring-primary-weak`),onClick:i,"aria-expanded":r,children:[K(`span`,{children:`Tổng quan dữ liệu`}),K(r?pe:A,{size:14})]}),r&&q(`div`,{className:`px-4 pb-4 pt-2 space-y-4`,children:[q(`div`,{className:`flex flex-wrap gap-4`,children:[K(Q,{label:`Tổng bản ghi`,value:t??a.length}),K(Q,{label:`Hàng hiển thị`,value:a.length}),K(Q,{label:`Hàng đã chọn`,value:o.length,highlight:o.length>0})]}),c.length>0&&q(`div`,{children:[K(`p`,{className:`mb-2 text-xs font-semibold uppercase tracking-wide text-text-positive-weak`,children:`Tóm tắt cột`}),K(`div`,{className:`overflow-x-auto rounded-md border border-border`,children:q(`table`,{className:`w-full text-sm`,children:[K(`thead`,{children:q(`tr`,{className:`border-b border-border bg-muted-bg-subtle text-xs text-text-positive-weak`,children:[K(`th`,{className:`px-3 py-2 text-left font-medium`,children:`Cột`}),K(`th`,{className:`px-3 py-2 text-left font-medium`,children:`Kiểu`}),K(`th`,{className:`px-3 py-2 text-right font-medium`,children:`Tất cả hàng`}),o.length>0&&K(`th`,{className:`px-3 py-2 text-right font-medium`,children:`Hàng đã chọn`})]})}),K(`tbody`,{children:c.map((e,t)=>q(`tr`,{className:W(`border-b border-border last:border-b-0`,t%2==1&&`bg-muted-bg-subtle/50`),children:[K(`td`,{className:`px-3 py-2 text-text-positive font-medium`,children:e.header}),K(`td`,{className:`px-3 py-2 text-text-positive-weak`,children:sn[e.aggregation.type]}),K(`td`,{className:`px-3 py-2 text-right`,children:K(l,{value:e.allValue,prefix:e.aggregation.prefix,suffix:e.aggregation.suffix,precision:e.aggregation.precision,size:`sm`})}),o.length>0&&K(`td`,{className:`px-3 py-2 text-right`,children:e.selectedValue===null?K(`span`,{className:`text-text-positive-weak`,children:`—`}):K(l,{value:e.selectedValue,prefix:e.aggregation.prefix,suffix:e.aggregation.suffix,precision:e.aggregation.precision,size:`sm`})})]},e.colId))})]})})]})]})]})});cn.displayName=`UITableAnalysisPanel`;const Q=L(({label:e,value:t,highlight:n})=>q(`div`,{className:W(`flex flex-col gap-0.5 rounded border px-3 py-2 min-w-25 bg-white`,n&&t>0?`border-primary bg-primary-bg-subtle`:`border-border bg-white`),children:[K(`span`,{className:`text-[11px] text-text-positive-weak`,children:e}),K(`span`,{className:`text-base font-semibold tabular-nums text-text-positive-strong`,children:t.toLocaleString()})]}));Q.displayName=`StatChip`;const ln={tag:K(Te,{size:14}),"single-tag":K(Te,{size:14}),"date-range":K(de,{size:14}),number:K(P,{size:14}),text:K(Oe,{size:14}),boolean:K(Ee,{size:14})},un=[{value:`eq`,label:`Bằng (=)`},{value:`ne`,label:`Không bằng (≠)`},{value:`gt`,label:`Lớn hơn (>)`},{value:`gte`,label:`Ít nhất (≥)`},{value:`lt`,label:`Nhỏ hơn (<)`},{value:`lte`,label:`Nhiều nhất (≤)`},{value:`between`,label:`Trong khoảng`}],dn=[{value:`contains`,label:`Chứa`},{value:`equals`,label:`Bằng`},{value:`starts-with`,label:`Bắt đầu bằng`},{value:`ends-with`,label:`Kết thúc bằng`}];function fn(e,t){switch(e.type){case`single-tag`:return e.value?t.options?.find(t=>t.value===e.value)?.label??e.value:`Chưa đặt`;case`tag`:return e.values.length?e.values.map(e=>t.options?.find(t=>t.value===e)?.label??e).join(`, `):`Chưa đặt`;case`date-range`:return!e.from&&!e.to?`Ngày không xác định`:e.from&&e.to?`${e.from} → ${e.to}`:e.from?`từ ${e.from}`:`đến ${e.to}`;case`number`:{let t={eq:`=`,ne:`≠`,gt:`>`,gte:`≥`,lt:`<`,lte:`≤`,between:`trong khoảng`}[e.operator];return e.value===void 0?t:e.operator===`between`?`${t} ${e.value} – ${e.valueTo??`?`}`:`${t} ${e.value}`}case`text`:{let t={contains:`chứa`,equals:`là`,"starts-with":`bắt đầu bằng`,"ends-with":`kết thúc bằng`}[e.operator];return e.value?`${t} "${e.value}"`:t}case`boolean`:return e.value===null?`Không xác định`:e.value?`Có`:`Không`}}const pn=({value:e,definition:t,onChange:n})=>K(`div`,{className:`flex flex-col gap-1 p-3`,children:(t.options??[]).length===0?K(`p`,{className:`text-xs text-text-positive-muted`,children:`Không có tùy chọn`}):t.options.map(t=>q(w,{className:W(`flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors`,e.values.includes(t.value)&&`bg-primary-muted hover:bg-primary-subtle`),children:[K(b,{checked:e.values.includes(t.value),onCheckedChange:r=>{n({type:`tag`,values:r?[...e.values,t.value]:e.values.filter(e=>e!==t.value)})}}),K(`span`,{className:`text-sm`,children:t.label})]},t.value))}),mn=({value:e,definition:t,onChange:n})=>K(`div`,{className:`flex flex-col gap-1 p-3`,children:(t.options??[]).length===0?K(`p`,{className:`text-xs text-text-positive-muted`,children:`Không có tùy chọn`}):t.options.map(t=>q(w,{className:W(`flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors`,e.value===t.value&&`bg-primary-muted hover:bg-primary-subtle`),children:[K(b,{checked:e.value===t.value,onCheckedChange:e=>{n({type:`single-tag`,value:e?t.value:null})}}),K(`span`,{className:`text-sm`,children:t.label})]},t.value))}),hn=({value:e,onChange:t})=>q(`div`,{className:`flex flex-col gap-3 p-3`,children:[q(`div`,{className:`flex flex-col gap-1`,children:[K(`span`,{className:`text-text-positive-muted text-xs`,children:`Từ ngày`}),K(C,{type:`date`,size:`md`,value:e.from??``,onValueChange:n=>t({...e,from:n||void 0})})]}),q(`div`,{className:`flex flex-col gap-1`,children:[K(`span`,{className:`text-text-positive-muted text-xs`,children:`Đến ngày`}),K(C,{type:`date`,size:`md`,value:e.to??``,onValueChange:n=>t({...e,to:n||void 0})})]})]}),gn=({value:e,onChange:t})=>q(`div`,{className:`flex flex-col gap-3 p-3`,children:[q(D,{value:e.operator,onValueChange:n=>t({...e,operator:n}),children:[K(se,{size:`sm`,children:K(E,{})}),K(oe,{children:un.map(e=>K(ae,{value:e.value,children:e.label},e.value))})]}),K(C,{type:`number`,size:`md`,placeholder:`Giá trị`,value:e.value??``,onValueChange:n=>t({...e,value:n?Number(n):void 0})}),e.operator===`between`&&K(C,{type:`number`,size:`md`,placeholder:`Đến giá trị`,value:e.valueTo??``,onValueChange:n=>t({...e,valueTo:n?Number(n):void 0})})]}),_n=({value:e,onChange:t})=>q(`div`,{className:`flex flex-col gap-3 p-3`,children:[q(D,{value:e.operator,onValueChange:n=>t({...e,operator:n}),children:[K(se,{size:`sm`,children:K(E,{})}),K(oe,{children:dn.map(e=>K(ae,{value:e.value,children:e.label},e.value))})]}),K(C,{type:`text`,size:`md`,placeholder:`Nhập văn bản...`,value:e.value,onValueChange:n=>t({...e,value:n})})]}),vn=[{label:`Có`,value:!0},{label:`Không`,value:!1},{label:`Không xác định`,value:null}],yn=({value:t,onChange:n})=>K(`div`,{className:`flex flex-col gap-1 p-3`,children:vn.map(({label:r,value:i})=>K(e,{type:`button`,tabIndex:-1,variant:`outline`,className:W(`rounded px-3 py-1.5 text-left text-sm transition-colors`,t.value===i?`bg-primary-muted font-medium`:`hover:bg-muted-bg-subtle`),onClick:()=>n({type:`boolean`,value:i}),children:r},r))});function bn({value:e,definition:t,onChange:n}){switch(e.type){case`tag`:return K(pn,{value:e,definition:t,onChange:n});case`single-tag`:return K(mn,{value:e,definition:t,onChange:n});case`date-range`:return K(hn,{value:e,onChange:n});case`number`:return K(gn,{value:e,onChange:n});case`text`:return K(_n,{value:e,onChange:n});case`boolean`:return K(yn,{value:e,onChange:n})}}const xn=({filter:t,definition:n,onRemove:r,onUpdate:i})=>q(`div`,{className:`flex items-center gap-1`,children:[q(ie,{children:[K(re,{asChild:!0,children:q(e,{type:`button`,variant:`outline`,color:`muted`,className:`flex-1 bg-white max-w-[calc(100%-32px)] justify-start`,innerClassName:`flex truncate gap-1.5`,children:[K(`span`,{className:`shrink-0 text-text-positive font-medium`,children:n.label}),K(`span`,{className:`truncate text-xs text-text-positive-weak`,children:fn(t.value,n)})]})}),q(T,{className:`w-64 p-0`,align:`start`,side:`bottom`,children:[K(`div`,{className:`border-b border-border px-3 py-2`,children:q(`div`,{className:`flex items-center gap-1.5`,children:[K(`span`,{className:`text-text-positive-muted`,children:ln[n.type]}),K(`p`,{className:`font-medium`,children:n.label})]})}),K(bn,{value:t.value,definition:n,onChange:i})]})]}),K(e,{type:`button`,size:`icon`,variant:`soft`,color:`danger`,className:`shrink`,onClick:r,children:K(De,{size:13})})]}),Sn=()=>{let{filterDefinitions:t,activeFilters:n,addFilter:r,removeFilter:i,updateFilter:a}=_t(),[o,s]=U(null),c=t.filter(e=>!n.some(t=>t.definitionId===e.id));return K(S,{defaultSize:25,className:W(`bg-card`,o===null?`max-w-8!`:`min-w-64`),children:q(`div`,{className:`relative z-20 flex size-full bg-muted-bg-subtle`,children:[K(`div`,{className:`min-w-0 flex-1 overflow-hidden`,children:K(je,{mode:o===`filters`?`visible`:`hidden`,children:q(`div`,{className:`flex size-full flex-col gap-2 p-4`,children:[q(`div`,{className:`flex items-center justify-between gap-2`,children:[K(`p`,{className:`font-medium`,children:`Bộ lọc`}),q(y,{children:[K(g,{asChild:!0,children:q(e,{variant:`outline`,color:`muted`,disabled:c.length===0,children:[K(_e,{size:13}),`Thêm bộ lọc`]})}),K(v,{align:`end`,children:c.map(e=>q(m,{className:`flex items-center gap-2`,onClick:()=>r(e.id),children:[ln[e.type],e.label]},e.id))})]})]}),K(p,{}),n.length===0?K(`p`,{className:`py-6 text-center text-xs text-text-positive-muted`,children:`Không có bộ lọc nào`}):K(`div`,{className:`flex flex-col gap-2 pt-1`,children:n.map(e=>{let n=t.find(t=>t.id===e.definitionId);return n?K(xn,{filter:e,definition:n,onRemove:()=>i(e.id),onUpdate:t=>a(e.id,t)},e.id):null})})]})})}),q(`div`,{className:`flex h-full flex-col border-l border-border bg-muted-bg-subtle text-sm`,children:[q(`button`,{type:`button`,className:W(`relative flex h-32 cursor-pointer flex-col items-center gap-y-2 p-2 py-4`,o===`filters`&&`bg-card`),onClick:()=>s(o===`filters`?null:`filters`),children:[K(ge,{size:18}),n.length>0&&K(`span`,{className:`absolute top-2 right-1.5 flex h-4 w-4 items-center justify-center rounded-full bg-primary text-[10px] leading-none text-primary-foreground`,children:n.length}),K(`span`,{className:`text-nowrap [writing-mode:vertical-lr]`,children:`Bộ lọc`})]}),K(p,{})]})]})})};function Cn(e){switch(e){case`tag`:return{type:`tag`,values:[]};case`single-tag`:return{type:`single-tag`,value:null};case`date-range`:return{type:`date-range`};case`number`:return{type:`number`,operator:`eq`};case`text`:return{type:`text`,operator:`contains`,value:``};case`boolean`:return{type:`boolean`,value:null}}}const wn=L(({innerWrapperId:e,children:t})=>{let n=V(()=>({innerWrapperId:e}),[e]);return K(ot.Provider,{value:n,children:t})});wn.displayName=`UITableInnerWrapperProvider`;const Tn=L(({table:e,innerTableId:t,totalSize:n,children:r})=>{let i=V(()=>({table:e,innerTableId:t,totalSize:n}),[e,t,n]);return K(ct.Provider,{value:i,children:r})});Tn.displayName=`UITableInnerTableProvider`;const En=L(({isAllRowsSelected:e,columnPinningState:t,leftPinnedHeaders:n,rightPinnedHeaders:r,onToggleAllRowsSelected:i,children:a})=>{let o=V(()=>({isAllRowsSelected:e,columnPinningState:t,leftPinnedHeaders:n,rightPinnedHeaders:r,onToggleAllRowsSelected:i}),[e,t,n,r,i]);return K(ut.Provider,{value:o,children:a})});En.displayName=`UITableHeadRowProvider`;const Dn=L(({isFetching:e,isRefetching:t,isEmpty:n,rowSelectionState:r,children:i})=>{let a=V(()=>({isFetching:e,isRefetching:t,isEmpty:n,rowSelectionState:r}),[e,n,r]);return K(ft.Provider,{value:a,children:i})});Dn.displayName=`UITableBodyProvider`;const On=L(({keyOfClickRow:e,isAllRowsSelected:t,columnPinningState:n,leftPinnedHeaders:r,rightPinnedHeaders:i,onClickRow:a,children:o})=>{let s=V(()=>({keyOfClickRow:e,isAllRowsSelected:t,columnPinningState:n,leftPinnedHeaders:r,rightPinnedHeaders:i,onClickRow:a}),[e,t,n,r,i,a]);return K(pt.Provider,{value:s,children:o})});On.displayName=`UITableRowProvider`;const kn=({title:e,isFetching:t=!1,isRefetching:n=!1,isLoading:r=!1,loadingDisplayRow:i=3,data:a,columns:o,totalRows:s,leftPinnedColumns:c=[],rightPinnedColumns:l=[],keyOfClickRow:u,onClickRow:d,onRowSelection:f,onColumnPinning:p,fetchMoreData:m,emptyDisplayHeight:h,csvData:g,csvFileName:_,filterDefinitions:v=[],onFilterChange:y,summary:ee=[],showAnalysisPanel:b=!1,description:x,headerActions:S,children:te})=>{let ne=Me(),C=Me(),[w,re]=U(!1),[T,ie]=U({}),[E,ae]=U({right:l,left:[`select`,...c]}),[oe,se]=U({}),[D,O]=U([]),ce=z(e=>(ie(e),f?.(e instanceof Function?e(T):e),e),[T,f]),le=z(e=>{ae(e),p?.(e instanceof Function?e(E):e)},[E,p]),ue=z(e=>{let t=v.find(t=>t.id===e);if(!t)return;let n={id:`${e}-${crypto.randomUUID()}`,definitionId:e,value:Cn(t.type)};O(e=>{let t=[...e,n];return y?.(t),t})},[v,y]),de=z(e=>{O(t=>{let n=t.filter(t=>t.id!==e);return y?.(n),n})},[y]),k=z((e,t)=>{O(n=>{let r=n.map(n=>n.id===e?{...n,value:t}:n);return y?.(r),r})},[y]),fe=V(()=>({filterDefinitions:v,activeFilters:D,addFilter:ue,removeFilter:de,updateFilter:k}),[v,D,ue,de,k]),A=ze({data:a,columns:o,state:{rowSelection:T,columnPinning:E,expanded:oe},defaultColumn:{enableResizing:!1,size:void 0,minSize:void 0,maxSize:void 0},columnResizeMode:`onChange`,columnResizeDirection:`ltr`,enableColumnPinning:!0,enableRowSelection:!0,enableColumnResizing:!0,enableMultiRowSelection:!0,autoResetAll:!1,autoResetExpanded:!1,autoResetPageIndex:!1,getSubRows:e=>e.subRows,getCoreRowModel:Ie(),getGroupedRowModel:Re(),getExpandedRowModel:Le(),onRowSelectionChange:ce,onColumnPinningChange:le,onExpandedChange:se}),pe=V(()=>{let{rows:e}=A.getRowModel();return e},[A.getRowModel().rows,A.getState().columnPinning]),j=V(()=>!t&&!n&&pe.length===0,[pe,t,n]),me=V(()=>({title:e,table:A,isEmpty:j,isFetching:t,isRefetching:n,isLoading:r,loadingDisplayRow:i,totalRows:s,fetchMoreData:m,emptyDisplayHeight:h,csvData:g,csvFileName:_,summary:ee,showAnalysisPanel:b,description:x,headerActions:S}),[e,A,j,n,t,r,i,s,m,h,A.getState().columnPinning,A.getState().expanded,g,_,ee,b,x,S]),M=V(()=>A.getState(),[A.getState()]),N=V(()=>A.getIsAllRowsSelected(),[A.getIsAllRowsSelected()]),he=V(()=>M.rowSelection,[M.rowSelection]),P=V(()=>M.columnPinning,[M.columnPinning]),ge=V(()=>A.getLeftHeaderGroups()[0]?.headers||[],[A.getState().columnPinning]),_e=V(()=>A.getRightHeaderGroups()[0]?.headers||[],[A.getState().columnPinning]),ve=V(()=>A.getTotalSize(),[A.getTotalSize()]),F=z(()=>re(e=>!e),[]),ye=V(()=>({isOpen:w,toggle:F}),[w,F]);return K(vt.Provider,{value:ye,children:K(gt.Provider,{value:fe,children:K(ht.Provider,{value:me,children:K(wn,{innerWrapperId:ne,children:K(Tn,{table:A,innerTableId:C,totalSize:ve,children:K(En,{isAllRowsSelected:N,columnPinningState:P,leftPinnedHeaders:ge,rightPinnedHeaders:_e,onToggleAllRowsSelected:A.toggleAllRowsSelected,children:K(Dn,{isFetching:t,isRefetching:n,isEmpty:j,rowSelectionState:he,children:K(On,{keyOfClickRow:u,isAllRowsSelected:N,columnPinningState:P,leftPinnedHeaders:ge,rightPinnedHeaders:_e,onClickRow:d,children:te})})})})})})})})},An={up:`bg-success`,down:`bg-danger`,neutral:`bg-primary`},jn=L(()=>{let{summary:e}=X();return!e||e.length===0?null:K(`div`,{"data-slot":`table-summary-bar`,className:`grid w-full gap-3 px-2 pb-1`,style:{gridTemplateColumns:`repeat(${e.length}, minmax(0, 240px))`},children:e.map(e=>{let t=An[e.trend??`neutral`];return q(`div`,{className:`flex flex-col overflow-hidden rounded border border-border bg-card shadow-card`,children:[K(`div`,{className:W(`h-0.75 w-full shrink-0`,t)}),q(`div`,{className:`flex flex-1 flex-col gap-2 px-5 py-4`,children:[K(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-text-positive-weak`,children:e.label}),e.value!==null&&e.value!==void 0?K(l,{value:e.value,prefix:e.prefix,suffix:e.suffix,precision:e.precision,trend:e.trend,size:`xl`,className:`font-bold`}):K(`span`,{className:`text-xl font-bold tabular-nums text-text-positive-strong`,children:`—`}),e.description&&K(`span`,{className:`text-xs text-text-positive-weak`,children:e.description})]})]},e.label)})})});jn.displayName=`UITableSummaryBar`;function Mn(e){if(e==null)return``;if(typeof e==`number`)return String(e);if(typeof e==`boolean`)return e?`true`:`false`;let t=String(e);return t.includes(`,`)||t.includes(`"`)||t.includes(`
2
- `)||t.includes(`\r`)?`"${t.replace(/"/g,`""`)}"`:t}function Nn(e){if(e.length===0)return``;let t=e[0].map(e=>Mn(e.label)),n=e.map(e=>e.map(e=>Mn(e.value)).join(`,`));return[t.join(`,`),...n].join(`
3
- `)}function Pn(e,t){let n=Nn(e);if(!n)return;let r=new Blob([n],{type:`text/csv;charset=utf-8;`}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=`${t}.csv`,a.click(),URL.revokeObjectURL(i)}const Fn=({onSearch:e,onChange:t,...n})=>{let r=Ve(t=>{e?.(t)},500);return q(`div`,{className:`relative w-full max-w-80 flex-1`,children:[K(C,{...n,size:`lg`,type:`search`,placeholder:`Tìm kiếm...`,className:`flex-1 ps-9 pe-9`,onChange:e=>{t?.(e),r(e.target.value??``)}}),K(`div`,{className:`pointer-events-none absolute inset-y-0 inset-s-0 flex items-center justify-center ps-3 text-text-positive-weak peer-disabled:opacity-50`,children:K(we,{size:16})}),K(`button`,{className:`absolute inset-y-0 inset-e-0 flex h-full w-9 items-center justify-center rounded-e-md text-text-positive-weak outline-none transition-[color,box-shadow] hover:text-text-positive focus:z-10 focus-visible:border focus-visible:border-primary-strong focus-visible:ring-[3px] focus-visible:ring-primary-weak disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,"aria-label":`Submit search`,type:`submit`,children:K(ce,{size:16,"aria-hidden":`true`})})]})},$=({children:e,disabled:t,onClick:n,className:r,...i})=>K(`button`,{type:`button`,disabled:t,className:W(`flex cursor-pointer items-center gap-x-1 rounded-sm border border-border bg-background p-2.5 text-sm text-text-positive-weak outline-none transition-all hover:shadow-card focus:border-border-emphasis focus:bg-muted-muted active:border-border-emphasis active:bg-muted-muted active:text-text-positive disabled:pointer-events-none disabled:cursor-default disabled:opacity-60 [&_svg]:size-3.5`,r),onClick:n,...i,children:e}),In=({onCreate:e,onDownload:t,onRefresh:n})=>{let{table:r,csvData:i,csvFileName:a,title:o,showAnalysisPanel:s}=X(),{isOpen:c,toggle:l}=yt(),u=z(()=>{if(t){t();return}if(!i||i.length===0)return;let e=r.getSelectedRowModel().flatRows;Pn(e.length>0?e.map(e=>i[e.index]).filter(Boolean):i,a||o)},[t,i,a,r,o]),d=!!(t||i&&i.length>0);return q(`div`,{className:`flex [&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none`,children:[K($,{disabled:!e,onClick:t=>{e?.(),t.stopPropagation(),t.preventDefault()},children:K(j,{})}),K($,{disabled:!n,onClick:e=>{n?.(),e.stopPropagation(),e.preventDefault()},children:K(Ce,{})}),K($,{disabled:!d,onClick:e=>{u(),e.stopPropagation(),e.preventDefault()},children:K(M,{})}),s&&K($,{onClick:e=>{l(),e.stopPropagation(),e.preventDefault()},"aria-pressed":c,className:c?`bg-muted-muted text-text-positive`:void 0,children:K(le,{})})]})},Ln=({children:e})=>{let{title:t,description:n,headerActions:r}=X();return q(`div`,{"data-slot":`table-tooltip`,className:`relative flex w-full flex-col gap-2 px-2 py-0 text-sm`,children:[q(`div`,{className:`flex w-full items-start justify-between gap-4`,children:[q(`div`,{className:`flex flex-col gap-0.5`,children:[K(`h3`,{className:`font-semibold text-base text-text-positive`,children:t}),n&&K(`p`,{className:`text-sm text-muted-foreground`,children:n})]}),r&&K(`div`,{className:`flex items-center gap-2 shrink-0`,children:r})]}),K(`div`,{className:`flex w-full flex-1 justify-between gap-x-2`,children:e})]})};Ln.displayName=`TableTooltip`;export{et as A,We as B,Bt as C,it as D,at as E,Ye as F,He as H,Je as I,qe as L,Qe as M,Ze as N,rt as O,Xe as P,Ke as R,Vt as S,Rt as T,Ue as V,Yt as _,kn as a,Wt as b,rn as c,en as d,Z as f,Xt as g,Zt as h,jn as i,$e as j,tt as k,nn as l,Qt as m,In as n,Sn as o,$t as p,Fn as r,cn as s,Ln as t,tn as u,Jt as v,zt as w,Ut as x,qt as y,Ge as z};
4
- //# sourceMappingURL=tables-DWQytYNm.js.map
@@ -1,12 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`),t=require(`./button-C--DAN1D.cjs`),n=require(`./tooltip-CBdoIzoM.cjs`),r=require(`./separator-KuymG9g0.cjs`),i=require(`./close-Dlo1bI8x.cjs`),a=require(`./dialog-BigPrWIj.cjs`),o=require(`./command-CsP8a1Un.cjs`),s=require(`./checkbox-Dsq-MSbH.cjs`),c=require(`./input-WJ0DLHTR.cjs`),l=require(`./label-CC6fXVbC.cjs`),u=require(`./popover-DBsC8Ltp.cjs`),d=require(`./select-CWLQHh8x.cjs`),f=require(`./switch-DVfOV7wP.cjs`),p=require(`./drawer-BB8BZzDG.cjs`),m=require(`./calendar-4weBDnXz.cjs`),h=require(`./radio-group-_TdMkv8w.cjs`),g=require(`./textarea-Cc9CF8wD.cjs`),_=require(`./text-editor-CvJN3nSL.cjs`);let v=require(`lucide-react`),y=require(`react`),b=require(`@customafk/react-toolkit/utils`),x=require(`class-variance-authority`),S=require(`react/jsx-runtime`),C=require(`@customafk/react-toolkit/date-fns`),w=require(`radix-ui`),T=require(`@customafk/react-toolkit/hooks/useMobile`),E=require(`@tanstack/react-form`);function D({width:e,className:t,children:n}){let r=e?{width:typeof e==`number`?`${e}px`:e,flexShrink:0}:{flex:1,minWidth:0};return(0,S.jsx)(`div`,{"data-slot":`array-col`,style:r,className:t,children:n})}function O({className:e,children:t}){return(0,S.jsxs)(`div`,{"data-slot":`array-header-row`,className:(0,b.cn)(`mb-1 flex items-center gap-2 px-1 text-xs font-medium text-text-positive-weak`,e),children:[t,(0,S.jsx)(`div`,{className:`min-w-8 w-8 shrink-0`})]})}function k({defaultRow:e,children:n,addLabel:r=`Thêm hàng`,className:i}){let a=Q(),o=a.state.value??[],s=(0,y.useCallback)(()=>{a.pushValue({...e})},[a,e]),c=(0,y.useCallback)(e=>{a.removeValue(e)},[a]);return(0,S.jsxs)(`div`,{"data-slot":`simple-array-field`,className:(0,b.cn)(`flex flex-col gap-2`,i),children:[o.map((e,r)=>(0,S.jsxs)(`div`,{className:`flex items-start gap-2`,children:[n(r),(0,S.jsx)(t.t,{type:`button`,size:`icon`,variant:`ghost`,color:`danger`,className:`min-w-8`,onClick:()=>c(r),children:(0,S.jsx)(v.Trash2Icon,{size:14})})]},r)),(0,S.jsx)(`div`,{children:(0,S.jsxs)(t.t,{type:`button`,variant:`outline`,color:`muted`,size:`xs`,onClick:s,children:[(0,S.jsx)(v.PlusIcon,{size:13}),r]})})]})}
2
- /**
3
- * @license React
4
- * use-sync-external-store-shim.production.js
5
- *
6
- * Copyright (c) Meta Platforms, Inc. and affiliates.
7
- *
8
- * This source code is licensed under the MIT license found in the
9
- * LICENSE file in the root directory of this source tree.
10
- */
11
- var A=e.t((e=>{var t=require(`react`);function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useState,a=t.useEffect,o=t.useLayoutEffect,s=t.useDebugValue;function c(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),c=r[0].inst,u=r[1];return o(function(){c.value=n,c.getSnapshot=t,l(c)&&u({inst:c})},[e,n,t]),a(function(){return l(c)&&u({inst:c}),e(function(){l(c)&&u({inst:c})})},[e]),s(n),n}function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch{return!0}}function u(e,t){return t()}var d=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?u:c;e.useSyncExternalStore=t.useSyncExternalStore===void 0?d:t.useSyncExternalStore})),j=e.t((e=>{process.env.NODE_ENV!==`production`&&(function(){function t(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}function n(e,t){d||a.startTransition===void 0||(d=!0,console.error(`You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release.`));var n=t();if(!f){var i=t();o(n,i)||(console.error(`The result of getSnapshot should be cached to avoid an infinite loop`),f=!0)}i=s({inst:{value:n,getSnapshot:t}});var p=i[0].inst,m=i[1];return l(function(){p.value=n,p.getSnapshot=t,r(p)&&m({inst:p})},[e,n,t]),c(function(){return r(p)&&m({inst:p}),e(function(){r(p)&&m({inst:p})})},[e]),u(n),n}function r(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!o(e,n)}catch{return!0}}function i(e,t){return t()}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var a=require(`react`),o=typeof Object.is==`function`?Object.is:t,s=a.useState,c=a.useEffect,l=a.useLayoutEffect,u=a.useDebugValue,d=!1,f=!1,p=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?i:n;e.useSyncExternalStore=a.useSyncExternalStore===void 0?p:a.useSyncExternalStore,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),M=e.t(((e,t)=>{process.env.NODE_ENV===`production`?t.exports=A():t.exports=j()})),N=e.t((e=>{var t=require(`react`),n=M();function r(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:r,a=n.useSyncExternalStore,o=t.useRef,s=t.useEffect,c=t.useMemo,l=t.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,u){var d=o(null);if(d.current===null){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=c(function(){function e(e){if(!a){if(a=!0,o=e,e=r(e),u!==void 0&&f.hasValue){var t=f.value;if(u(t,e))return s=t}return s=e}if(t=s,i(o,e))return t;var n=r(e);return u!==void 0&&u(t,n)?(o=e,t):(o=e,s=n)}var a=!1,o,s,c=n===void 0?null:n;return[function(){return e(t())},c===null?void 0:function(){return e(c())}]},[t,n,r,u]);var p=a(e,d[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),l(p),p}})),P=e.t((e=>{process.env.NODE_ENV!==`production`&&(function(){function t(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var n=require(`react`),r=M(),i=typeof Object.is==`function`?Object.is:t,a=r.useSyncExternalStore,o=n.useRef,s=n.useEffect,c=n.useMemo,l=n.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,u){var d=o(null);if(d.current===null){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=c(function(){function e(e){if(!a){if(a=!0,o=e,e=r(e),u!==void 0&&f.hasValue){var t=f.value;if(u(t,e))return s=t}return s=e}if(t=s,i(o,e))return t;var n=r(e);return u!==void 0&&u(t,n)?(o=e,t):(o=e,s=n)}var a=!1,o,s,c=n===void 0?null:n;return[function(){return e(t())},c===null?void 0:function(){return e(c())}]},[t,n,r,u]);var p=a(e,d[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),l(p),p},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),F=e.t(((e,t)=>{process.env.NODE_ENV===`production`?t.exports=N():t.exports=P()})),I=F();function L(e,t){return e===t}function R(e,t=e=>e,n){let r=n?.compare??L,i=(0,y.useCallback)(t=>{let{unsubscribe:n}=e.subscribe(t);return n},[e]),a=(0,y.useCallback)(()=>e.get(),[e]);return(0,I.useSyncExternalStoreWithSelector)(i,a,a,t,r)}function z({className:e,children:t,...n}){return(0,S.jsxs)(w.Label.Root,{"data-slot":`label`,className:(0,b.cn)(`text-text-positive`,`flex w-full items-center justify-between`,`select-none font-medium text-sm/6 leading-none`,`group-data-[disabled=true]:pointer-events-none`,`group-data-[disabled=true]:opacity-50`,`peer-disabled:cursor-not-allowed`,`peer-disabled:opacity-50`,`aria-required:*:data-[slot=required-indicator]:inline-block`,e),...n,children:[(0,S.jsx)(`span`,{className:`flex items-center gap-1`,children:t}),(0,S.jsx)(`span`,{"data-slot":`required-indicator`,className:`hidden shrink-0 rounded-lg bg-danger-strong px-1.5 py-1 font-semibold text-[11px] leading-none text-white`,children:`Bắt buộc`})]})}const ee=(0,x.cva)(`group/field flex w-full gap-2 data-[invalid=true]:text-danger *:data-[slot=field-content]:gap-0`,{variants:{orientation:{vertical:[`flex-col *:w-full [&>.sr-only]:w-auto`],horizontal:[`flex-row items-center gap-4`,`*:data-[slot=field-content]:basis-1/2`,`*:data-[slot=field-content-main]:flex-1`,`*:data-[slot=field-label]:flex-auto`,`has-[>[data-slot=field-content]]:items-start`,`has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`],responsive:[`flex-col *:w-full [&>.sr-only]:w-auto`,`@md/field-group:flex-row`,`@md/field-group:items-center`,`@md/field-group:gap-4`,`@md/field-group:*:w-auto`,`@md/field-group:*:data-[slot=field-content]:basis-1/2`,`@md/field-group:*:data-[slot=field-content-main]:basis-1/2`,`@md/field-group:*:data-[slot=field-label]:flex-auto`,`@md/field-group:has-[>[data-slot=field-content]]:items-start`,`@md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`]}},defaultVariants:{orientation:`vertical`}}),te=(0,y.memo)(({className:e,...t})=>(0,S.jsx)(`fieldset`,{"data-slot":`field-set`,className:(0,b.cn)(`flex flex-col gap-6 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3`,e),...t}));te.displayName=`FieldSet`;const B=(0,y.memo)(({className:e,variant:t=`legend`,...n})=>(0,S.jsx)(`legend`,{"data-slot":`field-legend`,"data-variant":t,className:(0,b.cn)(`mb-3 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base`,e),...n}));B.displayName=`FieldLegend`;const V=(0,y.memo)(({className:e,...t})=>(0,S.jsx)(`div`,{"data-slot":`field-group`,className:(0,b.cn)(`group/field-group @container/field-group`,`flex flex-col gap-7 pt-4`,`data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4`,e),...t}));V.displayName=`FieldGroup`;const H=(0,y.memo)(({className:e,orientation:t=`vertical`,...n})=>(0,S.jsx)(`div`,{"data-slot":`field`,"data-orientation":t,className:(0,b.cn)(ee({orientation:t}),e),...n}));H.displayName=`Field`;const U=(0,y.memo)(({className:e,...t})=>(0,S.jsx)(`div`,{"data-slot":`field-content`,className:(0,b.cn)(`group/field-content flex flex-col gap-1.5 leading-snug`,e),...t}));U.displayName=`FieldContent`;const W=(0,y.memo)(({className:e,...t})=>(0,S.jsx)(`div`,{"data-slot":`field-content-main`,className:(0,b.cn)(`relative`,e),...t}));W.displayName=`FieldContentMain`;const G=(0,y.memo)(({className:e,...t})=>(0,S.jsx)(z,{"data-slot":`field-label`,className:(0,b.cn)(`group/field-label peer/field-label min-h-6 gap-1 font-medium leading-snug`,`has-[>[data-slot=field]]:w-full`,`has-[>[data-slot=field]]:flex-col`,`has-[>[data-slot=field]]:rounded-md`,`has-[>[data-slot=field]]:border`,`has-[>[data-slot=field]]:border-border`,`has-data-[state=checked]:border-primary`,`*:data-[slot=field]:p-4 group-data-[disabled=true]/field:opacity-50`,e),...t}));G.displayName=`FieldLabel`;const K=(0,y.memo)(({className:e,...t})=>(0,S.jsx)(`div`,{"data-slot":`field-label`,className:(0,b.cn)(`flex w-fit items-center gap-2 font-medium text-sm leading-snug group-data-[disabled=true]/field:opacity-50`,e),...t}));K.displayName=`FieldTitle`;const q=(0,y.memo)(({className:e,...t})=>(0,S.jsx)(`p`,{"data-slot":`field-description`,className:(0,b.cn)(`nth-last-2:-mt-1 font-normal text-text-positive-weak text-xs leading-normal last:mt-0 [&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4 [[data-variant=legend]+&]:-mt-1.5`,e),...t}));q.displayName=`FieldDescription`;const J=(0,y.memo)(({isShow:e=!0,className:t,children:n,...r})=>e===!1?null:(0,S.jsxs)(`div`,{"data-slot":`field-note`,className:(0,b.cn)(`flex items-start gap-1.5 rounded border border-primary-muted/60 bg-primary-bg-subtle/80 px-2.5 py-2 text-text-positive-weak text-xs`,t),...r,children:[(0,S.jsx)(v.InfoIcon,{size:12,className:`mt-0.5 shrink-0 text-primary/70`}),(0,S.jsx)(`span`,{children:n})]}));J.displayName=`FieldNote`;const Y=(0,y.memo)(({tooltip:e})=>(0,S.jsxs)(n.t,{children:[(0,S.jsx)(n.i,{asChild:!0,children:(0,S.jsxs)(`button`,{type:`button`,tabIndex:-1,className:`inline-flex cursor-default items-center text-text-positive-weak/70 hover:text-text-positive focus:outline-none`,children:[(0,S.jsx)(v.HelpCircleIcon,{size:13,"aria-hidden":`true`}),(0,S.jsx)(`span`,{className:`sr-only`,children:`Thêm thông tin`})]})}),(0,S.jsx)(n.n,{side:`top`,className:`max-w-xs text-balance`,children:e})]}));Y.displayName=`FieldTooltip`;const X=(0,y.memo)(({children:e,className:t,...n})=>(0,S.jsxs)(`div`,{"data-slot":`field-separator`,"data-content":!!e,className:(0,b.cn)(`relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2`,t),...n,children:[(0,S.jsx)(r.t,{className:`absolute inset-0 top-1/2`}),e&&(0,S.jsx)(`span`,{className:`relative mx-auto block w-fit bg-background px-2 text-text-positive-weak`,"data-slot":`field-separator-content`,children:e})]}));X.displayName=`FieldSeparator`;const Z=(0,y.memo)(({className:e,children:t,errors:n,requiredMessage:r=`Trường này là bắt buộc`,...i})=>{let a=(0,y.useMemo)(()=>{let e=e=>e.code===`invalid_type`?r:e.message;return t||(n?n?.length===1&&n[0]?.message?(0,S.jsx)(`div`,{className:`flex flex-row items-center justify-start gap-x-0.5`,children:(0,S.jsx)(`p`,{children:e(n[0])})}):(0,S.jsx)(`ul`,{className:`flex list-none flex-col`,children:n.map(t=>typeof t==`string`?(0,S.jsx)(`li`,{children:t},t):t?.message?(0,S.jsx)(`li`,{children:e(t)},t.code??t.message):null)}):null)},[t,n,r]);return a?(0,S.jsx)(`div`,{role:`alert`,"data-slot":`field-error`,className:(0,b.cn)(`w-full font-medium text-danger-strong text-xs`,e),...i,children:a}):null});Z.displayName=`FieldError`;const ne=({label:e,required:t,disabled:n,variant:r=`checkbox`})=>{let i=(0,y.useId)(),{form:a,name:o,state:c,handleBlur:u,handleChange:d}=Q(),p=R(a.store,({isSubmitting:e})=>e),m=c.meta.isTouched&&!c.meta.isValid,h=c.value??!1,g=n||p,_=(0,y.useCallback)(e=>{p||d(e)},[p,d]);return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,S.jsxs)(`div`,{className:`flex items-center gap-2 h-9`,children:[r===`switch`?(0,S.jsx)(f.t,{id:i,name:o,checked:h,disabled:g,"aria-invalid":m,onBlur:u,onCheckedChange:_}):(0,S.jsx)(s.t,{id:i,name:o,checked:h,disabled:g,"aria-invalid":m,onBlur:u,onCheckedChange:_}),e&&(0,S.jsxs)(l.t,{htmlFor:i,className:`cursor-pointer`,children:[e,t&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]})]}),m&&(0,S.jsx)(Z,{errors:c.meta.errors})]})},re=({label:e,placeholder:n,required:r,disabled:i,options:a})=>{let s=(0,y.useId)(),{form:c,name:d,state:f,handleBlur:m,handleChange:h}=Q(),g=R(c.store,({isSubmitting:e})=>e),_=(0,T.useIsMobile)(),[v,x]=(0,y.useState)(!1),C=f.meta.isTouched&&!f.meta.isValid,w=i||g,E=a.find(({value:e})=>e===f.value)?.label,D=(0,S.jsxs)(o.t,{children:[(0,S.jsx)(o.a,{placeholder:n??`Tìm kiếm…`}),(0,S.jsxs)(o.s,{children:[(0,S.jsx)(o.r,{children:`Không tìm thấy kết quả.`}),(0,S.jsx)(o.i,{children:a.map(e=>(0,S.jsx)(o.o,{value:e.label,onSelect:()=>{h(e.value===f.value?null:e.value),x(!1)},children:e.label},e.value))})]})]});return _?(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:s,children:[e,r&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsx)(t.t,{id:s,type:`button`,variant:`outline`,color:`muted`,disabled:w,"aria-invalid":C,className:(0,b.cn)(`w-full justify-start font-normal outline-1 outline-border -outline-offset-1`,!f.value&&`text-text-positive-muted`,C&&`outline-danger bg-danger-bg-subtle`),onBlur:m,onClick:()=>x(!0),children:E??(0,S.jsx)(`span`,{className:`text-text-positive-muted`,children:n})}),(0,S.jsx)(p.t,{open:v,onOpenChange:x,direction:`bottom`,children:(0,S.jsxs)(p.r,{children:[(0,S.jsx)(p.o,{children:(0,S.jsx)(p.l,{children:e??n??`Tìm kiếm…`})}),(0,S.jsx)(`div`,{className:`overflow-y-auto pb-safe-bottom`,children:D})]})}),C&&(0,S.jsx)(Z,{errors:f.meta.errors})]}):(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:s,children:[e,r&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsxs)(u.t,{children:[(0,S.jsx)(u.a,{asChild:!0,children:(0,S.jsx)(t.t,{id:s,variant:`outline`,color:`muted`,size:`lg`,disabled:w,"aria-invalid":C,className:(0,b.cn)(`flex w-full items-center justify-start rounded outline-border font-normal`,`hover:bg-transparent`,`focus:outline-1 focus:outline-primary-strong focus:ring-4 focus:ring-primary-weak`,`data-[state=open]:outline-1 data-[state=open]:outline-primary-strong data-[state=open]:ring-4 data-[state=open]:ring-primary-weak`,!f.value&&`text-text-positive-muted`),children:E??(0,S.jsx)(`span`,{className:`text-text-positive-muted`,children:n})})}),(0,S.jsx)(u.i,{align:`start`,side:`bottom`,className:`w-[--radix-popover-trigger-width] p-0 rounded`,onBlur:m,children:D})]}),C&&(0,S.jsx)(Z,{errors:f.meta.errors})]})},ie=({label:e,placeholder:n,required:r,disabled:i,minDate:a,maxDate:o})=>{let s=(0,y.useId)(),{form:c,name:d,state:f,handleBlur:p,handleChange:h}=Q(),g=R(c.store,({isSubmitting:e})=>e),_=f.meta.isTouched&&!f.meta.isValid;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:s,children:[e,r&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsxs)(u.t,{children:[(0,S.jsx)(u.a,{asChild:!0,children:(0,S.jsxs)(t.t,{id:s,variant:`outline`,color:`muted`,size:`lg`,disabled:i||g,"aria-invalid":_,className:(0,b.cn)(`flex w-full items-center justify-between rounded outline-border font-normal`,`hover:bg-transparent`,`focus:outline-1 focus:outline-primary-strong focus:ring-4 focus:ring-primary-weak`,`data-[state=open]:outline-1 data-[state=open]:outline-primary-strong data-[state=open]:ring-4 data-[state=open]:ring-primary-weak`,f.value===null&&`text-text-positive-muted`),children:[(0,S.jsx)(`span`,{children:f.value?(0,C.format)(f.value,`PPP`):n??`Select date`}),(0,S.jsx)(v.CalendarDaysIcon,{strokeWidth:1})]})}),(0,S.jsx)(u.i,{align:`start`,side:`bottom`,className:`w-fit p-0 rounded`,onBlur:p,children:(0,S.jsx)(m.t,{mode:`single`,selected:f.value??void 0,hidden:{before:a??new Date(1900,0,1),after:o??new Date(2100,11,31)},onSelect:e=>{e&&h(e)}})})]}),_&&(0,S.jsx)(Z,{errors:f.meta.errors})]})},ae=({label:e,required:t,disabled:n,options:r,orientation:i=`vertical`})=>{let{form:a,name:o,state:s,handleBlur:c,handleChange:u}=Q(),d=R(a.store,({isSubmitting:e})=>e),f=s.meta.isTouched&&!s.meta.isValid,p=n||d;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{children:[e,t&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsx)(h.t,{name:o,value:s.value??``,disabled:p,"aria-invalid":f,className:i===`horizontal`?`flex flex-row flex-wrap gap-x-4 gap-y-2`:`flex flex-col gap-2`,onValueChange:u,onBlur:c,children:r.map(e=>(0,S.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,S.jsx)(h.n,{id:`${o}-${e.value}`,value:e.value}),(0,S.jsx)(l.t,{htmlFor:`${o}-${e.value}`,className:`cursor-pointer font-normal`,children:e.label})]},e.value))}),f&&(0,S.jsx)(Z,{errors:s.meta.errors})]})},oe=({label:e,placeholder:t,required:n,maxLength:r,disabled:i})=>{let a=(0,y.useId)(),{form:o,name:s,state:u,handleBlur:d,handleChange:f}=Q(),p=R(o.store,({isSubmitting:e})=>e),m=u.meta.isTouched&&!u.meta.isValid,h=(0,y.useCallback)(({target:{value:e}})=>{p||r&&e.length>r||f(e||null)},[p,r,f]);return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:a,children:[e,n&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsxs)(`div`,{className:`relative`,children:[(0,S.jsx)(c.t,{id:a,name:s,type:`email`,value:u.value??``,"aria-invalid":m,autoComplete:`email`,placeholder:t,disabled:i||p,className:(0,b.cn)(`pl-9`),onBlur:d,onChange:h}),(0,S.jsx)(`div`,{className:`pointer-events-none absolute inset-y-0 left-0 flex size-9 items-center justify-center text-muted`,children:(0,S.jsx)(v.AtSignIcon,{size:14})})]}),m&&(0,S.jsx)(Z,{errors:u.meta.errors})]})},se=e=>e?/^-?\d*\.?\d*$/:/^\d*\.?\d*$/,ce=e=>Number(e).toLocaleString(),le=(e,t,n)=>{if(n===`none`)return e;let r=10**t,i=e*r;switch(n){case`up`:return Math.ceil(i)/r;case`down`:return Math.floor(i)/r;case`nearest`:return i%1<.1?Math.floor(i)/r:i%1>=.59?Math.ceil(i)/r:(Math.floor(i)+.5)/r;default:return e}},ue=({disabled:e=!1,readOnly:t=!1,allowNegative:n=!1,numberAfterDecimalPoint:r=2,roundingRule:i=`none`,value:a=null,unitText:o,decimal:s,placeholder:l,precision:u,wrapperClassName:d,className:f,onChange:p,onValueChange:m,onFocus:h,onBlur:g,..._})=>{let v=(0,y.useRef)(null),x=(0,y.useRef)(null),[C,w]=(0,y.useState)(a?.toString()??null),T=(0,y.useMemo)(()=>s?.[1]??r,[s,r]),E=(0,y.useMemo)(()=>s&&s[0]-s[1],[s]),D=(0,y.useMemo)(()=>se(n),[n]),O=(0,y.useCallback)(e=>{if(!T||e===`-`)return!0;let[t,n=``]=e.split(`.`),r=t.startsWith(`-`)?t.length-1:t.length;return n.length<=T&&r<=(E??1/0)},[T,E]),k=(0,y.useCallback)(e=>{if(e===`0`)return`0`;if(!Number(e))return null;let[t,n=``]=le(parseFloat(e),Math.min(T-1,u||0),i).toString().split(`.`),r=ce(t);return n?`${r}.${n}`:r},[T,u,i]),A=(0,y.useCallback)(e=>{let t=e===`0`,n=e===`-`||/^-0+(\.0+)?$/.test(e)||/^-0*\.$/.test(e);if(t){m?.(0),w(e);return}if(n){w(()=>(m?.(0),e));return}},[m]),j=(0,y.useCallback)(e=>{p?.(e);let{value:t}=e.target;if(t===``||t===void 0){m?.(null),w(null);return}A(t),!(!D.test(t)||!O(t))&&(m?.(parseFloat(t)||0),w(t))},[O,p,m,A,D]),M=(0,y.useCallback)(e=>{t||(h?.(e),w(e=>typeof e==`string`?e.replace(/,/g,``):null))},[t,h]),N=(0,y.useCallback)(e=>{t||(g?.(e),w(e=>e===null?null:e===`0`||e===`-`||/^-0+(\.0+)?$/.test(e)||/^-0*\.$/.test(e)?`0`:typeof e==`string`?k(e):null))},[t,k,g]);return(0,y.useEffect)(()=>{let e=document.activeElement===x.current;if(a==null||!D.test(a.toString())||!O(a.toString())){w(null);return}w(t=>e?t:k(a.toString()))},[k,a,O,D]),(0,y.useEffect)(()=>{if(!v.current||!x.current||!o)return;let e=v.current.offsetWidth;x.current.style.setProperty(`padding-right`,`${(e+10)/16}rem`)},[o]),(0,S.jsxs)(`div`,{className:(0,b.cn)(`relative`,d),children:[(0,S.jsx)(c.t,{..._,ref:x,value:C||(t?`0`:``),placeholder:l,disabled:e,readOnly:t,className:(0,b.cn)(`text-end font-number text-sm slashed-zero lining-nums tabular-nums`,t&&`bg-muted text-muted-foreground`,f),onChange:j,onFocus:M,onBlur:N}),o&&(0,S.jsx)(`span`,{ref:v,className:`-translate-y-1/2 pointer-events-none absolute top-1/2 right-2 text-muted-foreground text-sm`,children:o})]})},de=({label:e,placeholder:t,required:n,unit:r,allowNegative:i,disabled:a})=>{let o=(0,y.useId)(),{form:s,state:c,handleBlur:u,handleChange:d}=Q(),f=R(s.store,({isSubmitting:e})=>e),p=c.meta.isTouched&&!c.meta.isValid,m=(0,y.useCallback)(e=>{f||d(e)},[f,d]);return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:o,children:[e,n&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsx)(ue,{id:o,value:c.value,placeholder:t,unitText:r,allowNegative:i,disabled:a||f,onBlur:u,onValueChange:m}),p&&(0,S.jsx)(Z,{errors:c.meta.errors})]})},fe=({label:e,placeholder:t,required:n,disabled:r})=>{let i=(0,y.useId)(),{form:a,name:o,state:s,handleBlur:u,handleChange:d}=Q(),f=R(a.store,({isSubmitting:e})=>e),[p,m]=(0,y.useState)(!1),h=s.meta.isTouched&&!s.meta.isValid,g=(0,y.useCallback)(()=>m(e=>!e),[]),_=(0,y.useCallback)(({target:{value:e}})=>{f||d(e||null)},[f,d]);return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:i,children:[e,n&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsxs)(`div`,{className:`relative`,children:[(0,S.jsx)(c.t,{id:i,name:o,type:p?`text`:`password`,value:s.value??``,"aria-invalid":h,autoComplete:`current-password`,placeholder:t,disabled:r||f,className:`pr-9`,onBlur:u,onChange:_}),(0,S.jsx)(`button`,{type:`button`,tabIndex:-1,"aria-label":p?`Ẩn mật khẩu`:`Hiện mật khẩu`,"aria-pressed":p,"aria-controls":i,className:`absolute inset-y-0 right-0 flex size-9 items-center justify-center text-muted outline-none transition-colors hover:text-text-positive focus-visible:text-text-positive disabled:pointer-events-none disabled:opacity-50`,disabled:r||f,onClick:g,children:p?(0,S.jsx)(v.EyeOffIcon,{size:16,"aria-hidden":`true`}):(0,S.jsx)(v.EyeIcon,{size:16,"aria-hidden":`true`})})]}),h&&(0,S.jsx)(Z,{errors:s.meta.errors})]})},pe=({label:e,placeholder:n,required:r,options:i})=>{let a=(0,y.useId)(),{state:o,handleBlur:s,handleChange:c}=Q(),u=(0,T.useIsMobile)(),[f,m]=(0,y.useState)(!1),h=o.meta.isTouched&&!o.meta.isValid,g=i.find(e=>e.value===o.value)?.label;return u?(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:a,children:[e,r&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsx)(t.t,{id:a,type:`button`,variant:`outline`,color:`muted`,className:(0,b.cn)(`w-full justify-start font-normal outline-1 outline-border -outline-offset-1`,!o.value&&`text-text-positive-muted`,h&&`outline-danger bg-danger-bg-subtle`),"aria-invalid":h,onBlur:s,onClick:()=>m(!0),children:g??(0,S.jsx)(`span`,{className:`text-text-positive-muted`,children:n})}),(0,S.jsx)(p.t,{open:f,onOpenChange:m,direction:`bottom`,children:(0,S.jsxs)(p.r,{children:[(0,S.jsx)(p.o,{children:(0,S.jsx)(p.l,{children:e??n??`Select an option`})}),(0,S.jsx)(`div`,{className:`flex flex-col overflow-y-auto pb-safe-bottom`,children:i.length>0?i.map(e=>(0,S.jsx)(p.n,{asChild:!0,children:(0,S.jsx)(`button`,{type:`button`,className:(0,b.cn)(`flex w-full items-center px-4 py-3 text-left text-sm transition-colors`,`hover:bg-muted-muted active:bg-muted-muted`,o.value===e.value&&`bg-primary-bg-subtle font-medium text-primary`),onClick:()=>{c(e.value),m(!1)},children:e.label})},e.value)):(0,S.jsxs)(`div`,{className:`flex items-center justify-center gap-x-2 px-4 py-8 text-center text-sm text-text-positive-weak`,children:[(0,S.jsx)(v.PackagePlusIcon,{strokeWidth:1}),`No options available`]})})]})}),h&&(0,S.jsx)(Z,{errors:o.meta.errors})]}):(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:a,children:[e,r&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsxs)(d.t,{value:o.value??``,onValueChange:c,children:[(0,S.jsx)(d.s,{id:a,"aria-invalid":h?`true`:void 0,onBlur:s,children:(0,S.jsx)(d.c,{placeholder:n})}),(0,S.jsx)(d.n,{children:i.length>0?i.map(e=>(0,S.jsx)(d.i,{value:e.value,children:e.label},e.value)):(0,S.jsxs)(`div`,{className:`flex items-center justify-center gap-x-2 rounded border border-border bg-muted-muted px-4 py-6.5 text-center text-sm text-text-positive-weak`,children:[(0,S.jsx)(v.PackagePlusIcon,{strokeWidth:1}),`No options available`]})})]}),h&&(0,S.jsx)(Z,{errors:o.meta.errors})]})},me=({label:e,placeholder:t,required:n,maxLength:r,rows:i,disabled:a})=>{let o=(0,y.useId)(),{form:s,name:c,state:u,handleBlur:d,handleChange:f}=Q(),p=R(s.store,({isSubmitting:e})=>e),m=u.meta.isTouched&&!u.meta.isValid,h=(0,y.useCallback)(({target:{value:e}})=>{p||r&&e.length>r||f(e||null)},[p,r,f]);return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:o,children:[e,n&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsx)(g.t,{id:o,name:c,value:u.value??``,"aria-invalid":m,placeholder:t,rows:i,disabled:a||p,onBlur:d,onChange:h}),m&&(0,S.jsx)(Z,{errors:u.meta.errors})]})},he=({label:e,placeholder:t,required:n,maxLength:r,disabled:i})=>{let a=(0,y.useId)(),{form:o,name:s,state:u,handleBlur:d,handleChange:f}=Q(),p=R(o.store,({isSubmitting:e})=>e),m=u.meta.isTouched&&!u.meta.isValid,h=(0,y.useCallback)(({target:{value:e}})=>{p||r&&e.length>r||f(e||null)},[p,r,f]);return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e&&(0,S.jsxs)(l.t,{htmlFor:a,children:[e,n&&(0,S.jsx)(`span`,{className:`text-danger-strong`,children:`*`})]}),(0,S.jsx)(c.t,{id:a,name:s,value:u.value??``,"aria-invalid":m,placeholder:t,autoComplete:`off`,disabled:i||p,onBlur:d,onChange:h}),m&&(0,S.jsx)(Z,{errors:u.meta.errors})]})},ge=({label:e,description:t,options:n,tooltip:r,helperText:i,orientation:a})=>{let o=Q(),c=R(o.form.store,({isSubmitting:e})=>e);return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:a,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{children:[e,r&&(0,S.jsx)(Y,{tooltip:r})]}),(0,S.jsx)(q,{children:t}),(0,S.jsx)(J,{isShow:!!i,children:i})]}),(0,S.jsx)(W,{children:(0,S.jsx)(V,{className:`flex flex-col gap-y-2`,children:n.map(e=>(0,S.jsxs)(H,{orientation:`horizontal`,children:[(0,S.jsx)(s.t,{id:`${o.name}-${e.value}`,name:o.name,checked:o.state.value?.includes(e.value)??!1,disabled:c,onCheckedChange:t=>{if(t&&o.state.value!==null)o.pushValue(e.value);else if(t&&o.state.value===null)o.setValue([e.value]);else if(!t&&o.state.value!==null){let t=o.state.value.indexOf(e.value);t>-1&&o.removeValue(t)}else o.setValue(null)}}),(0,S.jsx)(G,{htmlFor:`${o.name}-${e.value}`,className:`text-text-positive`,children:e.label})]},e.value))})})]}),(0,S.jsx)(X,{})]})},_e=(0,y.memo)(({label:e,description:n,placeholder:r,tooltip:i,helperText:s,orientation:c=`responsive`,options:l,required:d=!1,disabled:f=!1,clearable:p=!1,showErrorMessage:m=!0})=>{let h=(0,y.useId)(),g=Q(),_=(0,T.useIsMobile)(),[x,C]=(0,y.useState)(!1),[E,D]=(0,y.useState)(!1),O=R(g.form.store,({isSubmitting:e})=>e),k=f||O,A=g.state.meta.isDirty||g.state.meta.isTouched,j=A&&!g.state.meta.isValid,M=d&&g.state.value===null,N=p&&!!g.state.value&&!k,P=l.find(({value:e})=>e===g.state.value)?.label,F=()=>{g.handleChange(null),g.handleBlur()},I=e=>(0,S.jsx)(t.t,{variant:`outline`,color:`muted`,size:`lg`,disabled:k,"aria-invalid":j?!0:void 0,"aria-describedby":h,className:(0,b.cn)(`flex w-full items-center justify-start rounded outline-border`,`hover:bg-transparent`,`focus-visible:outline-1 focus-visible:outline-primary-strong focus-visible:ring-4 focus-visible:ring-primary-weak`,`data-[state=open]:text-text-positive-muted data-[state=open]:outline-1 data-[state=open]:outline-primary-strong data-[state=open]:ring-4 data-[state=open]:ring-primary-weak`,N&&`pr-8`,!g.state.value&&`text-text-positive-muted`,j&&`outline-danger bg-danger-bg-subtle ring-4 ring-danger-weak`),onClick:e,children:P?(0,S.jsx)(`p`,{className:`flex min-w-0 flex-1 items-center gap-2 truncate text-start`,children:P}):(0,S.jsx)(`p`,{className:`flex-1 text-start text-text-positive-muted`,children:r})}),L=e=>(0,S.jsxs)(o.t,{className:`border-none`,children:[(0,S.jsx)(o.a,{placeholder:r??`Tìm kiếm…`}),(0,S.jsxs)(o.s,{children:[(0,S.jsx)(o.r,{className:`flex min-h-30 items-center justify-center text-sm text-text-positive-weak`,children:`Không tìm thấy kết quả nào phù hợp.`}),(0,S.jsx)(o.i,{className:`max-h-60 overflow-y-auto`,children:l.map(({value:t,label:n})=>(0,S.jsx)(o.o,{value:n,onSelect:()=>e(t),children:n},t))})]})]});return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:c,"data-invalid":j,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{"aria-required":M,htmlFor:g.name,children:[e,i&&(0,S.jsx)(Y,{tooltip:i})]}),(0,S.jsx)(q,{children:n})]}),(0,S.jsx)(W,{className:`flex justify-end`,children:(0,S.jsxs)(`div`,{className:`flex w-full flex-col`,children:[(0,S.jsxs)(`div`,{className:`relative`,children:[_?(0,S.jsxs)(S.Fragment,{children:[I(()=>C(!0)),(0,S.jsx)(a.t,{open:x,onOpenChange:e=>{C(e),e||g.handleBlur()},children:(0,S.jsxs)(a.c,{children:[(0,S.jsx)(a.s,{}),(0,S.jsxs)(w.Dialog.Content,{onOpenAutoFocus:e=>e.preventDefault(),className:(0,b.cn)(`fixed inset-x-0 bottom-0 z-50`,`flex flex-col bg-background rounded-t-2xl outline-none`,`max-h-[80dvh] shadow-[0_-4px_24px_rgba(0,0,0,0.08)]`,`data-[state=open]:animate-in data-[state=open]:slide-in-from-bottom data-[state=open]:fade-in-0`,`data-[state=closed]:animate-out data-[state=closed]:slide-out-to-bottom data-[state=closed]:fade-out-0`,`duration-300`),children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-b border-border shrink-0`,children:[(0,S.jsx)(`span`,{className:`font-semibold text-sm text-text-positive`,children:e}),(0,S.jsx)(a.n,{asChild:!0,children:(0,S.jsx)(`button`,{type:`button`,"aria-label":`Đóng`,className:`flex size-7 items-center justify-center rounded-md text-text-positive-weak transition-colors hover:bg-muted-muted hover:text-text-positive`,children:(0,S.jsx)(v.XIcon,{size:16})})})]}),(0,S.jsxs)(`div`,{className:`flex flex-col overflow-y-auto`,children:[N&&(0,S.jsx)(a.n,{asChild:!0,children:(0,S.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-x-2 px-4 py-3 text-left text-sm text-danger-strong transition-colors hover:bg-danger-bg-subtle`,onClick:F,children:[(0,S.jsx)(v.XIcon,{size:14}),`Xóa lựa chọn`]})}),L(e=>{g.handleChange(e),C(!1),g.handleBlur()})]}),(0,S.jsx)(`div`,{className:`shrink-0 h-safe-bottom`})]})]})})]}):(0,S.jsxs)(u.t,{open:E,onOpenChange:e=>{D(e),e||g.handleBlur()},children:[(0,S.jsx)(u.a,{asChild:!0,children:I()}),(0,S.jsx)(u.i,{align:`end`,side:`bottom`,className:`flex w-fit rounded p-0`,children:L(e=>{g.handleChange(e),D(!1),g.handleBlur()})})]}),N&&(0,S.jsx)(`button`,{type:`button`,"aria-label":`Xóa lựa chọn`,className:`absolute right-2 top-1/2 -translate-y-1/2 flex size-4 cursor-pointer items-center justify-center rounded-md text-text-positive-weak outline-none transition-[color,transform] hover:text-text-positive focus-visible:text-primary-strong focus-visible:[&>svg]:scale-125 [&>svg]:size-3.5 [&>svg]:transition-transform`,onClick:F,children:(0,S.jsx)(v.XIcon,{"aria-hidden":`true`})})]}),A&&m&&(0,S.jsx)(Z,{id:h,className:`mt-1`,errors:g.state.meta.errors}),(0,S.jsx)(J,{isShow:!!s,children:s})]})})]}),(0,S.jsx)(X,{})]})});_e.displayName=`ComboboxField`;const ve=(0,y.memo)(({label:e,description:n,placeholder:r,orientation:i=`responsive`,tooltip:a,helperText:o,showErrorMessage:s=!0,required:c=!1,disabled:l=!1,minDate:d,maxDate:f})=>{let p=(0,y.useId)(),h=Q(),[g,_]=(0,y.useState)(!1),x=R(h.form.store,({isSubmitting:e})=>e),w=l||x,T=h.state.meta.isDirty||h.state.meta.isTouched,E=T&&!h.state.meta.isValid,D=c&&h.state.value===null,O=e=>{h.handleChange(e),_(!1)};return(0,S.jsxs)(V,{className:`px-4`,children:[(0,S.jsxs)(H,{orientation:i,"data-invalid":E,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{htmlFor:h.name,"aria-required":D,children:[e,a&&(0,S.jsx)(Y,{tooltip:a})]}),(0,S.jsx)(q,{children:n})]}),(0,S.jsx)(W,{className:`flex flex-col space-y-1`,children:(0,S.jsxs)(`div`,{className:`flex w-full flex-col`,children:[(0,S.jsxs)(u.t,{open:g,onOpenChange:e=>{_(e),e||h.handleBlur()},children:[(0,S.jsx)(u.a,{asChild:!0,children:(0,S.jsxs)(t.t,{variant:`outline`,color:`muted`,size:`lg`,disabled:w,"aria-invalid":E?!0:void 0,"aria-describedby":p,className:(0,b.cn)(`flex items-center justify-between rounded font-normal outline-border`,`hover:bg-transparent`,`focus:outline-1 focus:outline-primary-strong focus:ring-4 focus:ring-primary-weak`,`data-[state=open]:outline-1 data-[state=open]:outline-primary-strong data-[state=open]:ring-4 data-[state=open]:ring-primary-weak`,h.state.value===null&&`text-text-positive-muted`,E&&`outline-danger bg-danger-bg-subtle ring-4 ring-danger-weak`),children:[(0,S.jsx)(`p`,{children:h.state.value===null?r??`Select date`:(0,C.format)(h.state.value,`PPPP`)}),(0,S.jsx)(v.CalendarDaysIcon,{strokeWidth:1})]})}),(0,S.jsxs)(u.i,{align:`start`,side:`bottom`,className:`flex w-fit min-w-0 overflow-y-auto rounded p-0`,children:[(0,S.jsxs)(`div`,{className:`flex h-full flex-col space-y-2 border-r border-r-border p-2 [&>button]:justify-start [&>button]:text-sm`,children:[(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.endOfToday)()),children:`Hôm nay`}),(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.endOfTomorrow)()),children:`Ngày mai`}),(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.endOfYesterday)()),children:`Hôm qua`}),(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.subDays)((0,C.endOfToday)(),3)),children:`3 ngày qua`}),(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.subDays)((0,C.endOfToday)(),7)),children:`7 ngày qua`}),(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.subDays)((0,C.endOfToday)(),30)),children:`30 ngày qua`}),(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.startOfMonth)((0,C.endOfToday)())),children:`Tháng này`}),(0,S.jsx)(t.t,{variant:`ghost`,color:`muted`,className:`w-32`,onClick:()=>O((0,C.lastDayOfMonth)((0,C.endOfToday)())),children:`Tháng trước`})]}),(0,S.jsx)(`div`,{className:`flex flex-1 flex-col`,children:(0,S.jsx)(`div`,{className:`min-w-73 border-b border-b-border p-2`,children:(0,S.jsx)(m.t,{mode:`single`,selected:h.state.value??void 0,hidden:{before:d??new Date(1900,0,1),after:f??new Date(2100,11,31)},onSelect:e=>{e&&O(e)}})})})]})]}),T&&s&&(0,S.jsx)(Z,{id:p,className:`mt-1`,errors:h.state.meta.errors}),(0,S.jsx)(J,{isShow:!!o,children:o})]})})]}),(0,S.jsx)(X,{})]})});ve.displayName=`DateField`;const ye=({label:e,description:t,placeholder:n,tooltip:r,helperText:i,orientation:a=`responsive`,showErrorMessage:o=!0,required:s=!1,maxLength:l})=>{let{form:u,name:d,state:f,handleBlur:p,handleChange:m}=Q(),h=R(u.store,({isSubmitting:e})=>e),g=f.meta.isDirty&&f.meta.isTouched&&!f.meta.isValid,_=s&&f.value===null,x=!h&&!!f.value,C=(0,y.useCallback)(({target:{value:e}})=>{h||l&&e.length>l||m(e||null)},[h,l,m]),w=(0,y.useCallback)(()=>{h||m(null)},[h,m]);return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{"data-invalid":g,orientation:a,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{htmlFor:d,"aria-required":_,children:[e,r&&(0,S.jsx)(Y,{tooltip:r})]}),(0,S.jsx)(q,{children:t})]}),(0,S.jsxs)(W,{children:[(0,S.jsx)(c.t,{id:d,name:d,value:f.value===null?``:f.value,"aria-invalid":g,autoComplete:`email`,placeholder:n,className:(0,b.cn)(`pl-9`,x&&`pr-9`,h&&`pointer-events-none bg-muted-muted opacity-60`),onBlur:p,onChange:C}),(0,S.jsx)(`div`,{className:`absolute top-0 left-0 flex size-9 items-center justify-center text-muted`,children:(0,S.jsx)(v.AtSignIcon,{size:14})}),x&&(0,S.jsx)(`button`,{type:`button`,"aria-label":`Xóa`,className:`absolute inset-e-0 inset-y-0 top-3 flex h-fit w-8 cursor-pointer items-center justify-center rounded-e-md text-text-positive-weak outline-none transition-[color,box-shadow] hover:text-text-positive focus:text-text-positive-strong`,onClick:w,children:(0,S.jsx)(v.XIcon,{size:14,"aria-hidden":`true`})}),(0,S.jsx)(`div`,{className:`mt-1 flex w-full items-start justify-start`,children:o&&f.meta.isDirty&&(0,S.jsx)(Z,{errors:f.meta.errors})}),(0,S.jsx)(J,{isShow:!!i,children:i})]})]}),(0,S.jsx)(X,{})]})},be=(0,y.memo)(({label:e,description:t,placeholder:n,tooltip:r,helperText:i,orientation:a=`responsive`,showErrorMessage:o=!0,rounding:s,decimalPlaces:c,precision:l,unit:u,required:d=!1,disabled:f=!1,allowNegative:p})=>{let m=(0,y.useId)(),h=(0,y.useId)(),g=Q(),_=R(g.form.store,({isSubmitting:e})=>e),x=f||_,C=g.state.meta.isDirty||g.state.meta.isTouched,w=C&&!g.state.meta.isValid,T=d&&g.state.value===null,E=!!g.state.meta.errors.length,D=(0,y.useCallback)(e=>{x||g.handleChange(e)},[x,g.handleChange]);return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:a,"data-invalid":w,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{htmlFor:m,"aria-required":T,children:[e,r&&(0,S.jsx)(Y,{tooltip:r})]}),(0,S.jsx)(q,{children:t})]}),(0,S.jsxs)(W,{children:[(0,S.jsxs)(`div`,{className:`relative w-full`,children:[(0,S.jsx)(ue,{id:m,value:g.state.value,"aria-invalid":w,"aria-describedby":h,placeholder:n,disabled:x,roundingRule:s,numberAfterDecimalPoint:c,precision:l,unitText:u,allowNegative:p,className:(0,b.cn)(x&&`pointer-events-none opacity-60`),onBlur:g.handleBlur,onValueChange:D}),_&&(0,S.jsx)(`div`,{className:`pointer-events-none absolute inset-s-2 inset-y-0 top-2.5 [&>svg]:size-3.5`,children:(0,S.jsx)(v.Loader2Icon,{className:`animate-spin text-primary-strong`})}),!_&&C&&o&&E&&(0,S.jsx)(`div`,{className:`pointer-events-none absolute inset-s-2 inset-y-0 top-2.75 text-danger-strong [&>svg]:size-3.5`,children:(0,S.jsx)(v.BanIcon,{})}),(0,S.jsx)(`div`,{className:`mt-1 flex w-full items-start justify-between gap-x-2`,children:C&&o?(0,S.jsx)(Z,{id:h,className:`flex-1`,errors:g.state.meta.errors}):(0,S.jsx)(`div`,{})})]}),(0,S.jsx)(J,{isShow:!!i,children:i})]})]}),(0,S.jsx)(X,{})]})});be.displayName=`NumberField`;const xe=({label:e,description:t,placeholder:n,orientation:r=`responsive`,tooltip:i,helperText:a,showErrorMessage:o=!0})=>{let s=(0,y.useId)(),{form:l,name:u,state:d,handleBlur:f,handleChange:p}=Q(),m=R(l.store,({isSubmitting:e})=>e),[h,g]=(0,y.useState)(!1),_=d.meta.isDirty&&d.meta.isTouched&&!d.meta.isValid,b=(0,y.useCallback)(()=>g(e=>!e),[]),x=(0,y.useCallback)(({target:{value:e}})=>{m||p(e||null)},[m,p]);return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{"data-invalid":_,orientation:r,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{htmlFor:s,children:[e,i&&(0,S.jsx)(Y,{tooltip:i})]}),(0,S.jsx)(q,{children:t})]}),(0,S.jsxs)(W,{children:[(0,S.jsx)(c.t,{id:s,name:u,type:h?`text`:`password`,placeholder:n,value:d.value??``,"aria-invalid":_,autoComplete:`new-password`,onBlur:f,onChange:x}),(0,S.jsx)(`button`,{className:`absolute inset-e-0 inset-y-0 flex size-9 items-center justify-center rounded-e-md text-muted outline-none transition-[color,box-shadow] focus:z-10 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,type:`button`,onClick:b,"aria-label":h?`Ẩn mật khẩu`:`Hiện mật khẩu`,"aria-pressed":h,"aria-controls":s,children:h?(0,S.jsx)(v.EyeOffIcon,{size:16,"aria-hidden":`true`}):(0,S.jsx)(v.EyeIcon,{size:16,"aria-hidden":`true`})}),(0,S.jsx)(`div`,{className:`mt-1 flex w-full items-start justify-start`,children:o&&d.meta.isDirty&&(0,S.jsx)(Z,{errors:d.meta.errors})}),(0,S.jsx)(J,{isShow:!!a,children:a})]})]}),(0,S.jsx)(X,{})]})},Se=({label:e,description:t,orientation:n,options:r,tooltip:i,helperText:a})=>{let o=Q(),s=R(o.form.store,({isSubmitting:e})=>e);return(0,S.jsxs)(V,{className:`px-4`,children:[(0,S.jsxs)(H,{orientation:n,className:`flex-col gap-2`,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{children:[e,i&&(0,S.jsx)(Y,{tooltip:i})]}),(0,S.jsx)(q,{children:t}),(0,S.jsx)(J,{isShow:!!a,children:a})]}),(0,S.jsx)(W,{children:(0,S.jsx)(h.t,{value:o.state.value??``,className:`w-full`,onValueChange:o.handleChange,children:r.map(e=>(0,S.jsx)(G,{className:(0,b.cn)(`h-fit`,o.state.value===e.value&&`border-primary-weak! bg-primary-bg-subtle`,s&&`pointer-events-none bg-muted-muted opacity-60`,o.state.value===e.value&&s&&`border-border-strong!`),children:(0,S.jsxs)(H,{orientation:`horizontal`,className:`items-start gap-3 rounded p-2!`,children:[(0,S.jsx)(h.n,{value:e.value,className:`mt-0.5 shrink-0`}),(0,S.jsxs)(U,{className:`gap-0.5!`,children:[(0,S.jsx)(K,{children:e.label}),(0,S.jsx)(q,{className:`text-xs`,children:e.description})]})]})},e.value))})})]}),(0,S.jsx)(X,{})]})},Ce=(0,y.memo)(({label:e,description:t,placeholder:n,orientation:r=`responsive`,tooltip:i,options:o,helperText:s,clearable:c=!1,required:l=!1,disabled:u=!1,showErrorMessage:f=!0})=>{let p=(0,y.useId)(),m=Q(),h=(0,T.useIsMobile)(),[g,_]=(0,y.useState)(!1),x=R(m.form.store,({isSubmitting:e})=>e),C=u||x,E=m.state.meta.isDirty||m.state.meta.isTouched,D=E&&!m.state.meta.isValid,O=l&&m.state.value===null,k=c&&!!m.state.value&&!C,A=o.find(e=>e.value===m.state.value)?.label,j=()=>{m.handleChange(null),m.handleBlur()};return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:r,"data-invalid":D,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{htmlFor:m.name,"aria-required":O,children:[e,i&&(0,S.jsx)(Y,{tooltip:i})]}),(0,S.jsx)(q,{children:t})]}),(0,S.jsxs)(W,{className:`flex flex-col`,children:[h?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(`button`,{id:m.name,type:`button`,disabled:C,"aria-invalid":D?`true`:void 0,"aria-describedby":p,onBlur:m.handleBlur,onClick:()=>_(!0),className:(0,b.cn)(`flex w-full items-center justify-between`,`outline-1 outline-border -outline-offset-1`,`gap-2 rounded bg-transparent px-3 py-2`,`shadow-input transition-all cursor-pointer whitespace-nowrap text-sm`,`focus-visible:outline-primary-strong focus-visible:ring-4 focus-visible:ring-primary-weak`,`disabled:cursor-not-allowed disabled:opacity-50`,D&&`outline-danger bg-danger-bg-subtle ring-danger-weak`,!m.state.value&&`text-text-positive-muted`),children:[(0,S.jsx)(`span`,{className:`line-clamp-1`,children:A??n}),(0,S.jsx)(v.ChevronDownIcon,{size:16,className:`shrink-0 opacity-50`})]}),(0,S.jsx)(a.t,{open:g,onOpenChange:e=>{_(e),e||m.handleBlur()},children:(0,S.jsxs)(a.c,{children:[(0,S.jsx)(a.s,{}),(0,S.jsxs)(w.Dialog.Content,{onOpenAutoFocus:e=>e.preventDefault(),className:(0,b.cn)(`fixed inset-x-0 bottom-0 z-50`,`flex flex-col bg-background rounded-t-2xl outline-none`,`max-h-[80dvh] shadow-[0_-4px_24px_rgba(0,0,0,0.08)]`,`data-[state=open]:animate-in data-[state=open]:slide-in-from-bottom data-[state=open]:fade-in-0`,`data-[state=closed]:animate-out data-[state=closed]:slide-out-to-bottom data-[state=closed]:fade-out-0`,`duration-300`),children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-b border-border shrink-0`,children:[(0,S.jsx)(`span`,{className:`font-semibold text-sm text-text-positive`,children:e??n??`Chọn một tùy chọn`}),(0,S.jsx)(a.n,{asChild:!0,children:(0,S.jsx)(`button`,{type:`button`,"aria-label":`Đóng`,className:`flex size-7 items-center justify-center rounded-md text-text-positive-weak transition-colors hover:bg-muted-muted hover:text-text-positive`,children:(0,S.jsx)(v.XIcon,{size:16})})})]}),(0,S.jsxs)(`div`,{className:`flex flex-col overflow-y-auto`,children:[k&&(0,S.jsx)(a.n,{asChild:!0,children:(0,S.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-x-2 px-4 py-3 text-left text-sm text-danger-strong transition-colors hover:bg-danger-bg-subtle`,onClick:j,children:[(0,S.jsx)(v.XIcon,{size:14}),`Xóa lựa chọn`]})}),o.length>0?o.map(e=>(0,S.jsx)(a.n,{asChild:!0,children:(0,S.jsx)(`button`,{type:`button`,className:(0,b.cn)(`flex w-full items-center px-4 py-3 text-left text-sm transition-colors`,`hover:bg-muted-muted active:bg-muted-muted`,m.state.value===e.value&&`bg-primary-bg-subtle font-medium text-primary`),onClick:()=>{m.handleChange(e.value),m.handleBlur()},children:e.label})},e.value)):(0,S.jsxs)(`div`,{className:`flex items-center justify-center gap-x-2 px-4 py-8 text-center text-sm text-text-positive-weak`,children:[(0,S.jsx)(v.PackagePlusIcon,{strokeWidth:1}),`Không có tùy chọn`]})]}),(0,S.jsx)(`div`,{className:`shrink-0 h-safe-bottom`})]})]})})]}):(0,S.jsxs)(`div`,{className:`relative`,children:[(0,S.jsxs)(d.t,{value:m.state.value??``,disabled:C,onValueChange:m.handleChange,children:[(0,S.jsx)(d.s,{"aria-invalid":D?`true`:void 0,"aria-describedby":p,onBlur:m.handleBlur,children:(0,S.jsx)(d.c,{placeholder:n})}),(0,S.jsx)(d.n,{children:o.length>0?o.map(e=>(0,S.jsx)(d.i,{value:e.value,children:e.label},e.value)):(0,S.jsxs)(`div`,{className:`flex items-center justify-center gap-x-2 rounded border border-border bg-muted-muted px-4 py-6.5 text-center text-sm text-text-positive-weak`,children:[(0,S.jsx)(v.PackagePlusIcon,{strokeWidth:1}),`No options available`]})})]}),k&&(0,S.jsx)(`button`,{type:`button`,"aria-label":`Xóa lựa chọn`,className:`absolute right-7 top-1/2 -translate-y-1/2 flex size-4 cursor-pointer items-center justify-center rounded-md text-text-positive-weak outline-none transition-[color,transform] hover:text-text-positive focus-visible:text-primary-strong focus-visible:[&>svg]:scale-125 [&>svg]:size-3.5 [&>svg]:transition-transform`,onClick:j,children:(0,S.jsx)(v.XIcon,{"aria-hidden":`true`})})]}),E&&f&&(0,S.jsx)(Z,{id:p,className:`mt-1`,errors:m.state.meta.errors}),(0,S.jsx)(J,{isShow:!!s,children:s})]})]}),(0,S.jsx)(X,{})]})});Ce.displayName=`SelectField`;function we({className:e,...t}){return(0,S.jsx)(w.Switch.Root,{"data-slot":`switch`,className:(0,b.cn)(`peer`,`w-8 shrink-0 cursor-pointer items-center rounded-full shadow-xs transition-all`,`inline-flex h-5`,`focus-visible:border-primary-strong`,`focus-visible:ring-primary-weak`,`focus-visible:ring-4`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,`-outline-offset-1 inset-shadow-2xs outline-1`,`data-[state=checked]:bg-primary`,`data-[state=checked]:outline-primary-strong`,`data-[state=unchecked]:bg-muted-weak`,`data-[state=unchecked]:outline-border`,`data-[state=unchecked]:[&_span]:size-4`,`data-[state=unchecked]:[&_span]:translate-x-0.5`,`data-[state=unchecked]:[&_span]:rtl:-translate-x-0.5`,e),...t,children:(0,S.jsx)(w.Switch.Thumb,{"data-slot":`switch-thumb`,className:(0,b.cn)(`block size-4 bg-card shadow-xs`,`pointer-events-none rounded-full ring-0 transition-transform`,`data-[state=checked]:translate-x-[calc(100%-3px)]`,`data-[state=unchecked]:translate-x-0`)})})}const Te=({label:e,description:t,helperText:n})=>{let r=Q();return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:`vertical`,className:`relative justify-between gap-y-1`,children:[(0,S.jsxs)(U,{children:[(0,S.jsx)(K,{className:`cursor-pointer`,children:(0,S.jsx)(`label`,{htmlFor:r.name,children:e})}),(0,S.jsx)(q,{children:t}),(0,S.jsx)(we,{id:r.name,checked:r.state.value??!1,className:`absolute top-1 right-1`,onBlur:r.handleBlur,onCheckedChange:r.handleChange})]}),(0,S.jsx)(J,{isShow:!!n,children:n})]}),(0,S.jsx)(X,{})]})},Ee=.8,De=14,Oe=e=>{e.key===`Enter`&&e.preventDefault()},ke=(0,y.memo)(({label:e,description:t,placeholder:n,tooltip:r,helperText:i,counter:a=!1,orientation:o=`responsive`,showClearButton:s=!1,showErrorMessage:l=!0,required:u=!1,disabled:d=!1,maxLength:f})=>{let p=(0,y.useId)(),m=(0,y.useId)(),h=(0,y.useRef)(null),{form:g,name:_,state:x,handleBlur:C,handleChange:w}=Q(),T=R(g.store,({isSubmitting:e})=>e),E=d||T,D=x.meta.isDirty||x.meta.isTouched,O=D&&!x.meta.isValid,k=u&&x.value===null,A=x.meta.errors.length>0,j=s&&!E&&!!x.value,M=a?x.value?.length??0:0,N=a&&!!f&&M>=f*.8,P=a&&!!f&&M>=f,F=a?f?`${M} / ${f} ký tự`:`${M} ký tự`:null,I=a||D&&l,L=(0,y.useCallback)(({target:{value:e}})=>{a&&f&&e.length>f||w(e||null)},[a,f,w]),z=(0,y.useCallback)(()=>{w(null),h.current?.focus()},[w]);return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:o,"data-invalid":O,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{"aria-required":k,htmlFor:p,children:[e,r&&(0,S.jsx)(Y,{tooltip:r})]}),t&&(0,S.jsx)(q,{children:t})]}),(0,S.jsxs)(W,{children:[(0,S.jsx)(c.t,{ref:h,id:p,name:_,value:x.value??``,"aria-invalid":O,"aria-describedby":m,autoComplete:`off`,placeholder:n,autoCapitalize:`none`,autoCorrect:`off`,disabled:E,className:(0,b.cn)(`pr-6`,E&&`pointer-events-none bg-muted-muted opacity-60`),onBlur:C,onChange:L,onKeyDown:Oe}),j&&(0,S.jsx)(`button`,{type:`button`,"aria-label":`Xóa`,className:`absolute inset-e-1 top-2.5 flex size-4 cursor-pointer items-center justify-center rounded-md text-text-positive-weak outline-none transition-[color,transform] hover:text-text-positive focus-visible:text-primary-strong focus-visible:[&>svg]:scale-125 [&>svg]:size-3.5 [&>svg]:transition-transform`,onClick:z,children:(0,S.jsx)(v.XIcon,{"aria-hidden":`true`})}),T&&(0,S.jsx)(`div`,{className:`absolute inset-e-2 inset-y-0 top-2.5 text-muted-weak`,children:(0,S.jsx)(v.Loader2Icon,{size:14,className:`animate-spin text-primary-strong`})}),!j&&D&&l&&A&&(0,S.jsx)(`div`,{className:`absolute inset-e-2 inset-y-0 top-2.5 text-danger-strong`,children:(0,S.jsx)(v.BanIcon,{"aria-hidden":`true`,size:14})}),I&&(0,S.jsxs)(`div`,{className:`my-1 flex w-full items-start justify-between gap-x-2`,children:[D&&l?(0,S.jsx)(Z,{id:m,className:`flex-1`,errors:x.meta.errors}):(0,S.jsx)(`div`,{}),a&&(0,S.jsx)(`p`,{className:(0,b.cn)(`h-4 flex-0 text-nowrap text-end text-xs tabular-nums transition-colors`,P?`font-medium text-danger-strong`:N?`text-warning-strong`:`text-text-positive-weak`),children:F})]}),(0,S.jsx)(J,{isShow:!!i,children:i})]})]}),(0,S.jsx)(X,{})]})});ke.displayName=`TextField`;const Ae=(0,y.memo)(({label:e,description:t,placeholder:n,tooltip:r,helperText:i,counter:a=!1,orientation:o=`responsive`,showErrorMessage:s=!0,required:c=!1,disabled:l=!1,maxLength:u})=>{let d=(0,y.useId)(),f=(0,y.useId)(),[p,m]=(0,y.useState)(!1),h=(0,y.useRef)(null),{form:_,state:x,name:C,handleBlur:w,handleChange:T}=Q(),E=R(_.store,({isSubmitting:e})=>e),D=l||E,O=x.value?.length??0,k=(0,y.useMemo)(()=>a?u?`${O} / ${u} ký tự`:`${O} ký tự`:``,[O,a,u]),A=!!u&&O>=u*.8,j=!!u&&O>=u,M=x.meta.isDirty||x.meta.isTouched,N=M&&!x.meta.isValid,P=c&&x.value===null,F=!!x.meta.errors.length,I=!!x.value&&!D,L=(0,y.useMemo)(()=>(0,b.cn)(`h-4 flex-0 text-nowrap text-end text-xs tabular-nums transition-colors`,j?`font-medium text-danger-strong`:A?`text-warning-strong`:`text-text-positive-weak`),[j,A]),z=(0,y.useCallback)(({target:{value:e}})=>{D||a&&u&&e.length>u||T(e||null)},[D,a,u,T]),ee=(0,y.useCallback)(async()=>{x.value&&(await navigator.clipboard.writeText(x.value),h.current!==null&&clearTimeout(h.current),m(!0),h.current=setTimeout(()=>m(!1),1500))},[x.value]);return(0,y.useEffect)(()=>()=>{h.current!==null&&clearTimeout(h.current)},[]),(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:o,"data-invalid":N,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{"aria-required":P,htmlFor:d,children:[e,r&&(0,S.jsx)(Y,{tooltip:r})]}),(0,S.jsx)(q,{children:t})]}),(0,S.jsxs)(W,{children:[(0,S.jsx)(g.t,{id:d,name:C,value:x.value??``,"aria-invalid":N,"aria-describedby":f,autoCapitalize:`none`,autoComplete:`off`,autoCorrect:`off`,placeholder:n,disabled:D,className:(0,b.cn)(D&&`pointer-events-none bg-muted-muted opacity-60`),onChange:z,onBlur:w}),I&&(0,S.jsx)(`button`,{type:`button`,"aria-label":`Sao chép`,className:`absolute inset-e-1 top-2 flex size-4 cursor-pointer items-center justify-center rounded-md outline-none transition-[color,transform] focus-visible:[&>svg]:scale-125 [&>svg]:size-3.5 [&>svg]:transition-transform`,onClick:ee,children:p?(0,S.jsx)(v.CheckIcon,{"aria-hidden":`true`,className:`text-success-strong`}):(0,S.jsx)(v.CopyIcon,{"aria-hidden":`true`,className:`text-text-positive-weak transition-colors hover:text-text-positive focus-visible:text-primary-strong`})}),E&&(0,S.jsx)(`div`,{className:`absolute inset-e-2 inset-y-0 top-2.5 text-muted-weak`,children:(0,S.jsx)(v.Loader2Icon,{size:14,className:`animate-spin text-primary-strong`})}),!I&&M&&s&&F&&(0,S.jsx)(`div`,{className:`absolute inset-e-2 inset-y-0 top-2.5 text-danger-strong`,children:(0,S.jsx)(v.BanIcon,{size:14})}),(0,S.jsxs)(`div`,{className:`my-1 flex w-full items-start justify-between gap-x-2`,children:[M&&s?(0,S.jsx)(Z,{id:f,className:`flex-1`,errors:x.meta.errors}):(0,S.jsx)(`div`,{}),!!a&&(0,S.jsx)(`p`,{className:L,children:k})]}),(0,S.jsx)(J,{isShow:!!i,children:i})]})]}),(0,S.jsx)(X,{})]})});Ae.displayName=`TextareaField`;const je=(0,y.memo)(({label:e,description:t,placeholder:n,tooltip:r,helperText:i,showErrorMessage:a=!0,required:o=!1})=>{let{form:s,state:c,handleChange:l}=Q(),u=R(s.store,({isSubmitting:e})=>e),d=c.meta.isDirty&&c.meta.isTouched&&!c.meta.isValid,f=o&&c.value===null,p=(0,y.useCallback)(e=>{u||l(e||null)},[u,l]);return(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:`vertical`,"data-invalid":d,children:[(0,S.jsxs)(U,{children:[(0,S.jsxs)(G,{"aria-required":f,children:[e,r&&(0,S.jsx)(Y,{tooltip:r})]}),(0,S.jsx)(q,{children:t})]}),(0,S.jsx)(_.t,{value:c.value??``,placeholder:n,readOnly:u,onChange:p}),c.meta.isDirty&&a&&!!c.meta.errors.length&&(0,S.jsx)(Z,{errors:c.meta.errors}),(0,S.jsx)(J,{isShow:!!i,children:i})]}),(0,S.jsx)(X,{})]})});je.displayName=`TextEditorField`;const Me=({label:e,className:n})=>{let r=$(),i=(0,y.useCallback)(async()=>{await r.handleSubmit({submitAction:`submit`}),r.state.isSubmitSuccessful&&r.reset()},[r]);return(0,S.jsx)(r.Subscribe,{selector:e=>({disabled:e.isPristine||!e.isValid||e.isValidating||e.isSubmitting||!e.canSubmit||e.isDefaultValue,isSubmitting:e.isSubmitting}),children:({disabled:r,isSubmitting:a})=>(0,S.jsx)(t.t,{type:`button`,size:`md`,disabled:r,isLoading:a,className:(0,b.cn)(`min-h-8 min-w-32`,n),onClick:i,children:e??`Xác nhận`})})},Ne=({type:e=`create`})=>{let n=$();return(0,S.jsxs)(`div`,{className:`flex h-8 items-center justify-between`,children:[(0,S.jsx)(n.Subscribe,{selector:e=>({disabled:e.isPristine||e.isSubmitting}),children:({disabled:e})=>(0,S.jsx)(t.t,{color:`muted`,variant:`outline`,type:`button`,size:`md`,disabled:e,className:`h-full min-w-32`,onClick:()=>n.reset(),children:`Hủy bỏ`})}),e===`create`&&(0,S.jsx)(n.Subscribe,{selector:e=>({disabled:e.isPristine||!e.isValid||e.isValidating||e.isSubmitting||!e.canSubmit||e.isDefaultValue,isSubmitting:e.isSubmitting}),children:({disabled:e,isSubmitting:r})=>(0,S.jsxs)(t.t,{type:`submit`,size:`md`,disabled:e,isLoading:r,className:`h-full min-w-32`,onClick:async()=>{await n.handleSubmit({submitAction:`create`}),n.state.isSubmitSuccessful&&n.reset()},children:[(0,S.jsx)(v.PlusIcon,{}),`Thêm mới`]})}),e===`update`&&(0,S.jsx)(n.Subscribe,{selector:e=>({disabled:e.isPristine||!e.isValid||e.isValidating||e.isSubmitting||!e.canSubmit||e.isDefaultValue,isSubmitting:e.isSubmitting}),children:({disabled:e,isSubmitting:r})=>(0,S.jsxs)(t.t,{type:`submit`,size:`md`,disabled:e,isLoading:r,className:`h-full min-w-32`,onClick:async()=>{await n.handleSubmit({submitAction:`update`}),n.state.isSubmitSuccessful&&n.reset()},children:[(0,S.jsx)(v.ArrowDownToLine,{}),`Cập nhật`]})})]})};function Pe({className:e,orientation:t=`horizontal`,decorative:n=!0,...r}){return(0,S.jsx)(w.Separator.Root,{"data-slot":`separator`,decorative:n,orientation:t,className:(0,b.cn)(`shrink-0 bg-border-weak`,`data-[orientation=horizontal]:h-px`,`data-[orientation=horizontal]:w-full`,`data-[orientation=vertical]:h-full`,`data-[orientation=vertical]:w-px`,e),...r})}const Fe=({title:e,description:n,onDelete:r,children:i})=>(0,S.jsxs)(`section`,{"data-slot":`card-form`,className:`relative flex flex-col rounded-md bg-card pb-4 shadow-card ring-1 ring-border`,children:[(0,S.jsxs)(`div`,{"data-slot":`card-form-header`,className:`flex flex-col space-y-0.5 px-4 py-3`,children:[(0,S.jsx)(`p`,{className:`font-semibold text-base tracking-tight`,children:e}),!!n&&(0,S.jsx)(`p`,{className:`text-text-positive-weak text-sm`,children:n})]}),(0,S.jsx)(Pe,{}),(0,S.jsx)(`div`,{"data-slot":`card-form-main`,className:`flex flex-col py-4`,children:i}),!!r&&(0,S.jsxs)(t.t,{color:`danger`,variant:`ghost`,size:`sm`,className:`absolute top-2.5 right-3`,onClick:e=>{r?.(),e.preventDefault(),e.stopPropagation()},children:[(0,S.jsx)(v.Trash2Icon,{}),`Remove`]})]}),Ie=({children:e})=>(0,S.jsx)(`div`,{"data-slot":`section-form`,className:`flex flex-col space-y-4`,children:e}),Le=({disabled:e,className:n,onClick:r,children:i})=>(0,S.jsx)(t.t,{type:`button`,variant:`outline`,color:`muted`,disabled:e,className:(0,b.cn)(`min-w-40`,n),onClick:r,children:i??`Huỷ`}),Re=({isSubmitting:e,submitText:n=`Xác nhận`,disabled:r,className:i,onClick:a})=>(0,S.jsx)(t.t,{type:`button`,isLoading:e,disabled:r||e,className:(0,b.cn)(`min-w-40`,i),onClick:a,children:n}),ze=({title:e,submitText:t,width:n,maxWidth:i,className:o,open:s,onOpenChange:c,children:l})=>{let u=$(),d=(0,y.useCallback)(e=>{e||u.reset(),c?.(e)},[u.reset,c]);return(0,S.jsx)(a.t,{open:s,onOpenChange:d,children:(0,S.jsxs)(a.c,{"data-slot":`dialog-portal`,children:[(0,S.jsx)(a.s,{}),(0,S.jsxs)(a.r,{style:{"--width":n,"--max-width":i},className:(0,b.cn)(`flex size-full max-h-dvh max-w-dvw flex-col gap-0 overflow-y-auto rounded-none p-0 shadow-dialog sm:h-auto sm:max-h-[85dvh] sm:max-w-5xl sm:rounded-md`,n&&`sm:w-(--width)`,i&&`sm:max-w-(--max-width)`,o),onOpenAutoFocus:e=>{e.preventDefault()},children:[(0,S.jsx)(`div`,{"data-slot":`dialog-header`,className:`flex items-center justify-center gap-2 px-6 py-5 text-center sm:text-left`,children:(0,S.jsx)(a.l,{"data-slot":`dialog-title`,className:`font-semibold text-lg tracking-tight`,children:e})}),(0,S.jsx)(r.t,{}),(0,S.jsx)(`div`,{"data-slot":`dialog-content`,className:`relative flex flex-col overflow-y-auto p-0 pt-4 max-sm:flex-1 sm:p-4`,children:l}),(0,S.jsx)(r.t,{}),(0,S.jsxs)(`div`,{"data-slot":`dialog-footer`,className:`flex flex-col-reverse items-center justify-end gap-2 px-6 py-4 sm:flex-row max-sm:[&>button]:w-full`,children:[(0,S.jsx)(u.Subscribe,{selector:e=>({disabled:e.isSubmitting}),children:({disabled:e})=>(0,S.jsx)(Le,{disabled:e,onClick:()=>{u.reset(),d(!1)}})}),(0,S.jsx)(u.Subscribe,{selector:e=>({isSubmitting:e.isSubmitting,disabled:e.isPristine||!e.isValid||e.isValidating||e.isSubmitting||!e.canSubmit}),children:({isSubmitting:e,disabled:n})=>(0,S.jsx)(Re,{isSubmitting:e,disabled:n,submitText:t,onClick:()=>u.handleSubmit()})})]})]})]})})},Be=({label:e,description:t,helperText:n,orientation:r=`responsive`,children:i})=>(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{orientation:r,children:[(0,S.jsxs)(U,{children:[(0,S.jsx)(G,{children:e}),(0,S.jsx)(q,{children:t})]}),(0,S.jsxs)(W,{children:[i,(0,S.jsx)(J,{isShow:!!n,children:n})]})]}),(0,S.jsx)(X,{})]}),Ve=({title:e,open:t,contentClassName:n,onOpenChange:r,children:a})=>{let o=$();return(0,S.jsx)(w.Dialog.Root,{"data-slot":`dialog`,open:t,onOpenChange:r,children:(0,S.jsxs)(w.Dialog.Portal,{"data-slot":`dialog-portal`,children:[(0,S.jsx)(w.Dialog.Overlay,{"data-slot":`dialog-overlay`,className:(0,b.cn)(`fixed inset-0 z-40 bg-black/40 backdrop-blur-sm`,`data-[state=open]:animate-in data-[state=open]:fade-in`,`data-[state=closed]:animate-out data-[state=closed]:fade-out`)}),(0,S.jsx)(w.Dialog.Content,{"data-slot":`dialog-content`,className:(0,b.cn)(`fixed top-4 right-4 z-50 h-[calc(100dvh-2rem)] min-w-sm max-w-xl rounded-md bg-background shadow-lg ring-1 ring-border`,`duration-300`,`data-[state=open]:animate-in data-[state=open]:slide-in-from-right data-[state=open]:fade-in`,`data-[state=closed]:animate-out data-[state=closed]:slide-out-to-right data-[state=closed]:fade-out`),children:(0,S.jsxs)(`section`,{className:`relative flex size-full flex-col`,children:[(0,S.jsx)(`header`,{className:`flex h-14 shrink-0 items-center border-b border-border px-5`,children:(0,S.jsx)(`h2`,{className:`font-semibold text-base tracking-tight text-text-positive`,children:e})}),(0,S.jsx)(`div`,{className:(0,b.cn)(`flex flex-1 flex-col overflow-y-auto py-4`,n),children:a}),(0,S.jsxs)(`div`,{className:`flex shrink-0 flex-col gap-2 border-t border-border px-4 py-3`,children:[(0,S.jsx)(o.Subscribe,{selector:e=>({isSubmitting:e.isSubmitting,disabled:e.isPristine||!e.isValid||e.isValidating||e.isSubmitting||!e.canSubmit}),children:({isSubmitting:e,disabled:t})=>(0,S.jsx)(Re,{isSubmitting:e,disabled:t,className:`w-full`,onClick:()=>o.handleSubmit()})}),(0,S.jsx)(o.Subscribe,{selector:e=>({disabled:e.isPristine||e.isSubmitting}),children:({disabled:e})=>(0,S.jsx)(Le,{disabled:e,className:`w-full`,onClick:()=>{o.reset(),r?.(!1)}})})]}),(0,S.jsx)(w.Dialog.Close,{asChild:!0,children:(0,S.jsx)(i.t,{className:`absolute top-2.5 right-3`})})]})})]})})},He=({children:e})=>(0,S.jsx)(`header`,{"data-slot":`section-header`,className:`flex items-center px-4 py-3 font-semibold text-base text-text-positive tracking-tight`,children:e}),Ue=({children:e})=>(0,S.jsx)(`main`,{"data-slot":`section-main`,className:`relative flex flex-col py-4`,children:e}),We=({title:e,children:t})=>(0,S.jsxs)(`section`,{"data-slot":`section-form`,className:`flex flex-col rounded-md bg-background shadow-card ring-1 ring-border`,children:[(0,S.jsx)(He,{children:e}),(0,S.jsx)(Pe,{}),(0,S.jsx)(Ue,{children:t})]}),Ge=({title:e,description:t,helperText:n})=>(0,S.jsxs)(V,{className:`gap-y-4 px-4`,children:[(0,S.jsxs)(H,{className:`gap-0`,children:[(0,S.jsxs)(U,{children:[(0,S.jsx)(B,{className:`mb-1`,children:e}),(0,S.jsx)(q,{children:t})]}),(0,S.jsx)(J,{isShow:!!n,children:n})]}),(0,S.jsx)(X,{})]}),{fieldContext:Ke,formContext:qe,useFieldContext:Q,useFormContext:$}=(0,E.createFormHookContexts)(),{useAppForm:Je,withForm:Ye,withFieldGroup:Xe}=(0,E.createFormHook)({fieldContext:Ke,formContext:qe,fieldComponents:{TextField:ke,TextareaField:Ae,TextEditorField:je,NumberField:be,EmailField:ye,PasswordField:xe,SelectField:Ce,ComboboxField:_e,DateField:ve,SwitchField:Te,RadioGroupField:Se,CheckboxField:ge,SimpleTextField:he,SimpleEmailField:oe,SimplePasswordField:fe,SimpleTextareaField:me,SimpleNumberField:de,SimpleSelectField:pe,SimpleArrayField:k,SimpleBooleanField:ne,SimpleComboboxField:re,SimpleDateField:ie,SimpleRadioGroupField:ae,FieldGroup:V,Field:H,FieldContent:U,FieldLabel:G,FieldContentMain:W,FieldSeparator:X,FieldError:Z},formComponents:{TanStackDialogForm:ze,TanStackPopoverForm:Ve,TanStackContainerForm:Ie,TanStackSectionForm:We,TanStackCardForm:Fe,TanStackFieldGroup:Be,TanStackTitleField:Ge,TanStackActionsForm:Ne,TanStackActionSubmit:Me,ArrayCol:D,ArrayHeaderRow:O}});Object.defineProperty(exports,`$`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`A`,{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,`B`,{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return xe}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return _e}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,`F`,{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,`G`,{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,`H`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,`I`,{enumerable:!0,get:function(){return ie}}),Object.defineProperty(exports,`J`,{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,`K`,{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,`L`,{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,`M`,{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,`N`,{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,`P`,{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,`Q`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`R`,{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return Se}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,`U`,{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,`V`,{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,`W`,{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,`X`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,`Y`,{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,`Z`,{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return je}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return Ye}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return Ve}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return Re}}),Object.defineProperty(exports,`et`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return Me}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return Ne}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return Xe}}),Object.defineProperty(exports,`j`,{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return he}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return Fe}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return Je}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return Ge}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,`q`,{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return We}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return ze}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return be}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return Ce}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return ke}}),Object.defineProperty(exports,`z`,{enumerable:!0,get:function(){return H}});
12
- //# sourceMappingURL=tanstack-form-DatI41wz.cjs.map