@customafk/lunas-ui 0.1.16 → 0.1.18

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 (257) hide show
  1. package/dist/{avatar-Cp9PebV0.mjs → avatar-BNU7KL48.mjs} +1 -1
  2. package/dist/{avatar-Cp9PebV0.mjs.map → avatar-BNU7KL48.mjs.map} +1 -1
  3. package/dist/{button-Cj-sKPPK.d.cts → button-C8HSrN_3.d.cts} +4 -4
  4. package/dist/{button-CqxqZbcQ.mjs → button-JJaTl28Z.mjs} +2 -2
  5. package/dist/{button-CqxqZbcQ.mjs.map → button-JJaTl28Z.mjs.map} +1 -1
  6. package/dist/{button-DavYkks2.d.mts → button-vNDXA78a.d.mts} +4 -4
  7. package/dist/{button.variants-CXNnQvXs.mjs → button.variants-CgCCe7qb.mjs} +1 -1
  8. package/dist/{button.variants-CXNnQvXs.mjs.map → button.variants-CgCCe7qb.mjs.map} +1 -1
  9. package/dist/{card-BTswGEgi.mjs → card-C8fcblBB.mjs} +1 -1
  10. package/dist/{card-BTswGEgi.mjs.map → card-C8fcblBB.mjs.map} +1 -1
  11. package/dist/cards/grid-product-card.mjs +1 -1
  12. package/dist/cards/product-card.mjs +1 -1
  13. package/dist/cards/simple-card.mjs +1 -1
  14. package/dist/{close-Bb5Pi28f.mjs → close-B_PnUzNN.mjs} +1 -1
  15. package/dist/{close-Bb5Pi28f.mjs.map → close-B_PnUzNN.mjs.map} +1 -1
  16. package/dist/{command-D_f6JoHE.mjs → command-CtWxCsMm.mjs} +2 -2
  17. package/dist/{command-D_f6JoHE.mjs.map → command-CtWxCsMm.mjs.map} +1 -1
  18. package/dist/data-display/country.d.cts +1 -1
  19. package/dist/data-display/country.d.mts +1 -1
  20. package/dist/data-display/country.mjs +1 -1
  21. package/dist/data-display/date-tooltip.mjs +1 -1
  22. package/dist/data-display/date.mjs +1 -1
  23. package/dist/data-display/name.mjs +1 -1
  24. package/dist/data-display/phone-number.mjs +1 -1
  25. package/dist/data-display/role-badge.d.cts +1 -1
  26. package/dist/data-display/role-badge.d.mts +1 -1
  27. package/dist/data-display/role-badge.mjs +1 -1
  28. package/dist/data-display/statistic.d.cts +2 -2
  29. package/dist/data-display/user.mjs +1 -1
  30. package/dist/{date-DtgYKyyk.mjs → date-SmlhDFZs.mjs} +1 -1
  31. package/dist/{date-DtgYKyyk.mjs.map → date-SmlhDFZs.mjs.map} +1 -1
  32. package/dist/{dialog-D5bBgIs8.mjs → dialog-4ZJcWPar.mjs} +2 -2
  33. package/dist/{dialog-D5bBgIs8.mjs.map → dialog-4ZJcWPar.mjs.map} +1 -1
  34. package/dist/{dialog--Kkg9CSj.d.mts → dialog-CoSwDi4O.d.cts} +12 -12
  35. package/dist/{dialog-BYgFitry.d.cts → dialog-DU7tobKF.d.mts} +12 -12
  36. package/dist/dialogs/confirm-dialog.mjs +1 -1
  37. package/dist/dialogs/detail-dialog/component/sidebar.d.cts +30 -30
  38. package/dist/dialogs/detail-dialog/component/sidebar.d.mts +28 -28
  39. package/dist/dialogs/detail-dialog/component/sidebar.mjs +1 -1
  40. package/dist/dialogs/detail-dialog/index.mjs +1 -1
  41. package/dist/dialogs/error-dialog.mjs +1 -1
  42. package/dist/dialogs/loading-dialog.mjs +1 -1
  43. package/dist/{dist-1xnmIjvR.mjs → dist-D2ydYRc4.mjs} +1 -1
  44. package/dist/{dist-1xnmIjvR.mjs.map → dist-D2ydYRc4.mjs.map} +1 -1
  45. package/dist/{drawer-D8hxCiVo.mjs → drawer-B2QxYWMi.mjs} +1 -1
  46. package/dist/{drawer-D8hxCiVo.mjs.map → drawer-B2QxYWMi.mjs.map} +1 -1
  47. package/dist/{dropdown-menu-Bt3WFMXE.mjs → dropdown-menu-BwcDzb4B.mjs} +1 -1
  48. package/dist/{dropdown-menu-Bt3WFMXE.mjs.map → dropdown-menu-BwcDzb4B.mjs.map} +1 -1
  49. package/dist/features/search-modal/index.d.cts +2 -2
  50. package/dist/features/search-modal/index.d.mts +2 -2
  51. package/dist/features/search-modal/index.mjs +1 -1
  52. package/dist/features/tanstack-form/index.d.cts +42 -42
  53. package/dist/features/tanstack-form/index.d.mts +42 -42
  54. package/dist/features/tanstack-form/index.mjs +1 -1
  55. package/dist/{image-iVki2lFP.mjs → image-xsA4ZQ-u.mjs} +2 -2
  56. package/dist/{image-iVki2lFP.mjs.map → image-xsA4ZQ-u.mjs.map} +1 -1
  57. package/dist/{input-CeWpMUrb.d.cts → input-CEwMjaj3.d.cts} +4 -4
  58. package/dist/{input-D-Wrz2-9.mjs → input-CYFvmWQU.mjs} +1 -1
  59. package/dist/{input-D-Wrz2-9.mjs.map → input-CYFvmWQU.mjs.map} +1 -1
  60. package/dist/{input-na3VwQ-h.d.mts → input-ttkmXaOF.d.mts} +4 -4
  61. package/dist/{label-D7-mzz0l.mjs → label-11tIftbr.mjs} +1 -1
  62. package/dist/{label-D7-mzz0l.mjs.map → label-11tIftbr.mjs.map} +1 -1
  63. package/dist/layouts/app-layout/index.cjs +1 -1
  64. package/dist/layouts/app-layout/index.cjs.map +1 -1
  65. package/dist/layouts/app-layout/index.d.cts +3 -3
  66. package/dist/layouts/app-layout/index.d.mts +3 -3
  67. package/dist/layouts/app-layout/index.mjs +1 -1
  68. package/dist/layouts/app-layout/index.mjs.map +1 -1
  69. package/dist/layouts/cms-layout/index.cjs +2 -0
  70. package/dist/layouts/cms-layout/index.cjs.map +1 -0
  71. package/dist/layouts/cms-layout/index.d.cts +20 -0
  72. package/dist/layouts/cms-layout/index.d.mts +20 -0
  73. package/dist/layouts/cms-layout/index.mjs +2 -0
  74. package/dist/layouts/cms-layout/index.mjs.map +1 -0
  75. package/dist/layouts/flex.d.cts +6 -6
  76. package/dist/layouts/flex.d.mts +4 -4
  77. package/dist/layouts/service-layout/index.cjs +1 -1
  78. package/dist/layouts/service-layout/index.cjs.map +1 -1
  79. package/dist/layouts/service-layout/index.d.cts +1 -1
  80. package/dist/layouts/service-layout/index.d.mts +3 -3
  81. package/dist/layouts/service-layout/index.mjs +1 -1
  82. package/dist/layouts/service-layout/index.mjs.map +1 -1
  83. package/dist/pages/FeatureDeveloping.d.cts +2 -2
  84. package/dist/pages/FeatureDeveloping.d.mts +2 -2
  85. package/dist/pages/FeatureDeveloping.mjs +1 -1
  86. package/dist/pages/FeatureFixing.d.cts +2 -2
  87. package/dist/pages/FeatureFixing.d.mts +2 -2
  88. package/dist/pages/FeatureFixing.mjs +1 -1
  89. package/dist/pages/NotAuthorized.d.cts +2 -2
  90. package/dist/pages/NotAuthorized.d.mts +2 -2
  91. package/dist/pages/NotAuthorized.mjs +1 -1
  92. package/dist/pages/NotFound.d.cts +2 -2
  93. package/dist/pages/NotFound.d.mts +2 -2
  94. package/dist/pages/NotFound.mjs +1 -1
  95. package/dist/{scroll-area-CROqtJiH.mjs → scroll-area-4UBa5t9-.mjs} +1 -1
  96. package/dist/{scroll-area-CROqtJiH.mjs.map → scroll-area-4UBa5t9-.mjs.map} +1 -1
  97. package/dist/{separator-Br_PIsHQ.d.mts → separator-Be9cbVN8.d.mts} +3 -3
  98. package/dist/{separator-CZM2q-Ac.mjs → separator-Bf0gymN4.mjs} +1 -1
  99. package/dist/{separator-CZM2q-Ac.mjs.map → separator-Bf0gymN4.mjs.map} +1 -1
  100. package/dist/{separator-tN-HSwBQ.d.cts → separator-DiP2uw3M.d.cts} +3 -3
  101. package/dist/{sheet-CUMpo5F_.mjs → sheet-oadGRiie.mjs} +1 -1
  102. package/dist/{sheet-CUMpo5F_.mjs.map → sheet-oadGRiie.mjs.map} +1 -1
  103. package/dist/{skeleton-C02GuVQz.mjs → skeleton-6MpPv0K3.mjs} +1 -1
  104. package/dist/{skeleton-C02GuVQz.mjs.map → skeleton-6MpPv0K3.mjs.map} +1 -1
  105. package/dist/{tabs-BFHJXVlX.mjs → tabs-BIo6ZB9g.mjs} +1 -1
  106. package/dist/{tabs-BFHJXVlX.mjs.map → tabs-BIo6ZB9g.mjs.map} +1 -1
  107. package/dist/{title-B6SztKEv.mjs → title-DcNd812E.mjs} +1 -1
  108. package/dist/{title-B6SztKEv.mjs.map → title-DcNd812E.mjs.map} +1 -1
  109. package/dist/{tooltip-4m4ywMUz.d.mts → tooltip-CwJnif3V.d.mts} +6 -6
  110. package/dist/{tooltip-B7cSlbI6.mjs → tooltip-DGiat0Dt.mjs} +1 -1
  111. package/dist/{tooltip-B7cSlbI6.mjs.map → tooltip-DGiat0Dt.mjs.map} +1 -1
  112. package/dist/{tooltip-Cm0AJ_eR.d.cts → tooltip-xl-O4did.d.cts} +6 -6
  113. package/dist/{types-CIlhkWg6.d.mts → types-BB_E2uE0.d.mts} +1 -1
  114. package/dist/{types-BpxD38pa.mjs → types-BQMTFD_z.mjs} +1 -1
  115. package/dist/{types-BpxD38pa.mjs.map → types-BQMTFD_z.mjs.map} +1 -1
  116. package/dist/{types-DfDk2h0N.d.cts → types-CwAGHByL.d.cts} +1 -1
  117. package/dist/typography/paragraph.d.cts +2 -2
  118. package/dist/typography/paragraph.d.mts +2 -2
  119. package/dist/typography/title.d.cts +2 -2
  120. package/dist/typography/title.d.mts +2 -2
  121. package/dist/typography/title.mjs +1 -1
  122. package/dist/ui/alert-dialog.d.cts +12 -12
  123. package/dist/ui/alert-dialog.d.mts +12 -12
  124. package/dist/ui/alert-dialog.mjs +1 -1
  125. package/dist/ui/alert.d.mts +4 -4
  126. package/dist/ui/aspect-ratio.d.cts +2 -2
  127. package/dist/ui/aspect-ratio.d.mts +2 -2
  128. package/dist/ui/avatar.d.cts +4 -4
  129. package/dist/ui/avatar.d.mts +4 -4
  130. package/dist/ui/avatar.mjs +1 -1
  131. package/dist/ui/badge.d.cts +4 -4
  132. package/dist/ui/badge.d.mts +4 -4
  133. package/dist/ui/breadcrumb.d.cts +8 -8
  134. package/dist/ui/breadcrumb.d.mts +8 -8
  135. package/dist/ui/breadcrumb.mjs +1 -1
  136. package/dist/ui/button-group.d.cts +5 -5
  137. package/dist/ui/button-group.d.mts +7 -7
  138. package/dist/ui/button-group.mjs +1 -1
  139. package/dist/ui/button.d.cts +1 -1
  140. package/dist/ui/button.d.mts +1 -1
  141. package/dist/ui/button.mjs +1 -1
  142. package/dist/ui/buttons/add-new.mjs +1 -1
  143. package/dist/ui/buttons/edit.mjs +1 -1
  144. package/dist/ui/buttons/refresh.mjs +1 -1
  145. package/dist/ui/buttons/trash.mjs +1 -1
  146. package/dist/ui/buttons/upload-image.mjs +1 -1
  147. package/dist/ui/calendar.d.cts +4 -4
  148. package/dist/ui/calendar.d.mts +4 -4
  149. package/dist/ui/calendar.mjs +1 -1
  150. package/dist/ui/card.d.cts +8 -8
  151. package/dist/ui/card.d.mts +8 -8
  152. package/dist/ui/card.mjs +1 -1
  153. package/dist/ui/carousel.d.cts +7 -7
  154. package/dist/ui/carousel.d.mts +7 -7
  155. package/dist/ui/carousel.mjs +1 -1
  156. package/dist/ui/collapsible.d.cts +4 -4
  157. package/dist/ui/collapsible.d.mts +4 -4
  158. package/dist/ui/command.d.cts +11 -11
  159. package/dist/ui/command.d.mts +11 -11
  160. package/dist/ui/command.mjs +1 -1
  161. package/dist/ui/context-menu.d.cts +16 -16
  162. package/dist/ui/context-menu.d.mts +16 -16
  163. package/dist/ui/dialog.d.cts +1 -1
  164. package/dist/ui/dialog.d.mts +1 -1
  165. package/dist/ui/dialog.mjs +1 -1
  166. package/dist/ui/drawer.d.cts +11 -11
  167. package/dist/ui/drawer.d.mts +11 -11
  168. package/dist/ui/drawer.mjs +1 -1
  169. package/dist/ui/dropdown-menu.d.cts +16 -16
  170. package/dist/ui/dropdown-menu.d.mts +16 -16
  171. package/dist/ui/dropdown-menu.mjs +1 -1
  172. package/dist/ui/empty.d.cts +9 -9
  173. package/dist/ui/empty.d.mts +9 -9
  174. package/dist/ui/field.d.cts +24 -24
  175. package/dist/ui/field.d.mts +24 -24
  176. package/dist/ui/field.mjs +1 -1
  177. package/dist/ui/file-uploader.d.cts +2 -2
  178. package/dist/ui/file-uploader.d.mts +2 -2
  179. package/dist/ui/file-uploader.mjs +1 -1
  180. package/dist/ui/form.d.cts +11 -11
  181. package/dist/ui/form.d.mts +11 -11
  182. package/dist/ui/form.mjs +1 -1
  183. package/dist/ui/hover-card.d.cts +4 -4
  184. package/dist/ui/hover-card.d.mts +4 -4
  185. package/dist/ui/image.mjs +1 -1
  186. package/dist/ui/input-otp.d.cts +5 -5
  187. package/dist/ui/input-otp.d.mts +5 -5
  188. package/dist/ui/input.d.cts +1 -1
  189. package/dist/ui/input.d.mts +1 -1
  190. package/dist/ui/input.mjs +1 -1
  191. package/dist/ui/inputs/search-input.d.cts +3 -3
  192. package/dist/ui/inputs/search-input.d.mts +3 -3
  193. package/dist/ui/inputs/search-input.mjs +1 -1
  194. package/dist/ui/item.d.cts +15 -15
  195. package/dist/ui/item.d.mts +12 -12
  196. package/dist/ui/item.mjs +1 -1
  197. package/dist/ui/label.d.cts +2 -2
  198. package/dist/ui/label.d.mts +2 -2
  199. package/dist/ui/label.mjs +1 -1
  200. package/dist/ui/menubar.d.cts +17 -17
  201. package/dist/ui/menubar.d.mts +17 -17
  202. package/dist/ui/multi-select.d.cts +2 -2
  203. package/dist/ui/multi-select.d.mts +1 -1
  204. package/dist/ui/multi-select.mjs +1 -1
  205. package/dist/ui/navigation-menu.d.cts +9 -9
  206. package/dist/ui/navigation-menu.d.mts +9 -9
  207. package/dist/ui/pagination.d.cts +9 -9
  208. package/dist/ui/pagination.d.mts +9 -9
  209. package/dist/ui/pagination.mjs +1 -1
  210. package/dist/ui/popover.d.cts +5 -5
  211. package/dist/ui/popover.d.mts +5 -5
  212. package/dist/ui/progress.d.cts +2 -2
  213. package/dist/ui/progress.d.mts +2 -2
  214. package/dist/ui/radio-group.d.cts +3 -3
  215. package/dist/ui/radio-group.d.mts +3 -3
  216. package/dist/ui/resizable.d.cts +4 -4
  217. package/dist/ui/resizable.d.mts +4 -4
  218. package/dist/ui/scroll-area.d.cts +6 -6
  219. package/dist/ui/scroll-area.d.mts +3 -3
  220. package/dist/ui/scroll-area.mjs +1 -1
  221. package/dist/ui/select.d.cts +11 -11
  222. package/dist/ui/select.d.mts +11 -11
  223. package/dist/ui/separator.d.cts +1 -1
  224. package/dist/ui/separator.d.mts +1 -1
  225. package/dist/ui/separator.mjs +1 -1
  226. package/dist/ui/sheet.d.cts +9 -9
  227. package/dist/ui/sheet.d.mts +9 -9
  228. package/dist/ui/sheet.mjs +1 -1
  229. package/dist/ui/sidebar.d.cts +28 -28
  230. package/dist/ui/sidebar.d.mts +28 -28
  231. package/dist/ui/sidebar.mjs +1 -1
  232. package/dist/ui/skeleton.d.cts +2 -2
  233. package/dist/ui/skeleton.d.mts +2 -2
  234. package/dist/ui/skeleton.mjs +1 -1
  235. package/dist/ui/slider.d.cts +2 -2
  236. package/dist/ui/slider.d.mts +2 -2
  237. package/dist/ui/sonner.d.cts +2 -2
  238. package/dist/ui/sonner.d.mts +2 -2
  239. package/dist/ui/spinner.d.cts +2 -2
  240. package/dist/ui/spinner.d.mts +2 -2
  241. package/dist/ui/switch.d.cts +2 -2
  242. package/dist/ui/switch.d.mts +2 -2
  243. package/dist/ui/table.d.cts +18 -18
  244. package/dist/ui/table.d.mts +9 -9
  245. package/dist/ui/tabs.d.cts +5 -5
  246. package/dist/ui/tabs.d.mts +5 -5
  247. package/dist/ui/tabs.mjs +1 -1
  248. package/dist/ui/textarea.d.cts +2 -2
  249. package/dist/ui/textarea.d.mts +2 -2
  250. package/dist/ui/toggle-group.d.cts +3 -3
  251. package/dist/ui/toggle-group.d.mts +3 -3
  252. package/dist/ui/toggle.d.cts +4 -4
  253. package/dist/ui/toggle.d.mts +2 -2
  254. package/dist/ui/tooltip.d.cts +1 -1
  255. package/dist/ui/tooltip.d.mts +1 -1
  256. package/dist/ui/tooltip.mjs +1 -1
  257. package/package.json +5 -1
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{Avatar as n}from"radix-ui";function r({className:r,...i}){return t(n.Root,{"data-slot":`avatar`,className:e(`relative flex size-8 shrink-0 overflow-hidden rounded-full`,r),...i})}function i({className:r,...i}){return t(n.Image,{"data-slot":`avatar-image`,className:e(`aspect-square size-full`,r),...i})}function a({className:r,...i}){return t(n.Fallback,{"data-slot":`avatar-fallback`,className:e(`bg-muted flex size-full items-center justify-center rounded-full`,r),...i})}export{a as n,i as r,r as t};
2
- //# sourceMappingURL=avatar-Cp9PebV0.mjs.map
2
+ //# sourceMappingURL=avatar-BNU7KL48.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar-Cp9PebV0.mjs","names":["Avatar","AvatarPrimitive"],"sources":["../packages/components/ui/avatar.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Avatar as AvatarPrimitive } from 'radix-ui';\n\nfunction Avatar({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root>) {\n return <AvatarPrimitive.Root data-slot=\"avatar\" className={cn('relative flex size-8 shrink-0 overflow-hidden rounded-full', className)} {...props} />;\n}\n\nfunction AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>) {\n return <AvatarPrimitive.Image data-slot=\"avatar-image\" className={cn('aspect-square size-full', className)} {...props} />;\n}\n\nfunction AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn('bg-muted flex size-full items-center justify-center rounded-full', className)}\n {...props}\n />\n );\n}\n\nexport { Avatar, AvatarFallback, AvatarImage };\n"],"mappings":"8HAKA,SAASA,EAAO,CAAE,YAAW,GAAG,GAA4D,CAC1F,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,UAAW,EAAG,6DAA8D,EAAU,CAAE,GAAI,GAAS,CAGvJ,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,UAAW,EAAG,0BAA2B,EAAU,CAAE,GAAI,GAAS,CAG3H,SAAS,EAAe,CAAE,YAAW,GAAG,GAAgE,CACtG,OACE,EAACA,EAAgB,SAAA,CACf,YAAU,kBACV,UAAW,EAAG,mEAAoE,EAAU,CAC5F,GAAI,GACJ"}
1
+ {"version":3,"file":"avatar-BNU7KL48.mjs","names":["Avatar","AvatarPrimitive"],"sources":["../packages/components/ui/avatar.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Avatar as AvatarPrimitive } from 'radix-ui';\n\nfunction Avatar({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root>) {\n return <AvatarPrimitive.Root data-slot=\"avatar\" className={cn('relative flex size-8 shrink-0 overflow-hidden rounded-full', className)} {...props} />;\n}\n\nfunction AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>) {\n return <AvatarPrimitive.Image data-slot=\"avatar-image\" className={cn('aspect-square size-full', className)} {...props} />;\n}\n\nfunction AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn('bg-muted flex size-full items-center justify-center rounded-full', className)}\n {...props}\n />\n );\n}\n\nexport { Avatar, AvatarFallback, AvatarImage };\n"],"mappings":"8HAKA,SAASA,EAAO,CAAE,YAAW,GAAG,GAA4D,CAC1F,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,UAAW,EAAG,6DAA8D,EAAU,CAAE,GAAI,GAAS,CAGvJ,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,UAAW,EAAG,0BAA2B,EAAU,CAAE,GAAI,GAAS,CAG3H,SAAS,EAAe,CAAE,YAAW,GAAG,GAAgE,CACtG,OACE,EAACA,EAAgB,SAAA,CACf,YAAU,kBACV,UAAW,EAAG,mEAAoE,EAAU,CAC5F,GAAI,GACJ"}
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime204 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime11 from "react/jsx-runtime";
2
2
  import * as class_variance_authority_types12 from "class-variance-authority/types";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
 
@@ -9,7 +9,7 @@ import { VariantProps } from "class-variance-authority";
9
9
  */
10
10
  declare const buttonVariants: (props?: ({
11
11
  variant?: "link" | "default" | "outline" | "soft" | "subtle" | "ghost" | null | undefined;
12
- color?: "muted" | "primary" | "secondary" | "success" | "important" | "info" | "warning" | "danger" | null | undefined;
12
+ color?: "muted" | "success" | "primary" | "secondary" | "important" | "info" | "warning" | "danger" | null | undefined;
13
13
  size?: "xs" | "sm" | "md" | "lg" | "xl" | "default" | "icon" | null | undefined;
14
14
  } & class_variance_authority_types12.ClassProp) | undefined) => string;
15
15
  type ButtonVariantProps = VariantProps<typeof buttonVariants>;
@@ -51,7 +51,7 @@ declare function Button({
51
51
  disabled,
52
52
  type,
53
53
  ...props
54
- }: ButtonProps): react_jsx_runtime204.JSX.Element;
54
+ }: ButtonProps): react_jsx_runtime11.JSX.Element;
55
55
  //#endregion
56
56
  export { ButtonProps as n, Button as t };
57
- //# sourceMappingURL=button-Cj-sKPPK.d.cts.map
57
+ //# sourceMappingURL=button-C8HSrN_3.d.cts.map
@@ -1,2 +1,2 @@
1
- import{t as e}from"./dist-1xnmIjvR.mjs";import{n as t,t as n}from"./button.variants-CXNnQvXs.mjs";import{cn as r}from"@customafk/react-toolkit/utils";import{jsx as i,jsxs as a}from"react/jsx-runtime";import{Loader2Icon as o}from"lucide-react";import{Activity as s}from"react";function c({className:c,variant:l,size:u=`default`,color:d,asChild:f=!1,isLoading:p=!1,children:m,disabled:h,type:g=`button`,..._}){return a(f?e:`button`,{type:g,"data-slot":`button`,"data-state":p?`loading`:void 0,disabled:h,"aria-disabled":h?!0:void 0,className:r(t({variant:l,size:u,color:d,className:c})),..._,children:[i(s,{mode:p?`hidden`:`visible`,children:m}),i(s,{mode:p?`visible`:`hidden`,children:i(`div`,{className:n({variant:l,color:d}),children:i(o,{size:16,className:`animate-spin`})})})]})}export{c as t};
2
- //# sourceMappingURL=button-CqxqZbcQ.mjs.map
1
+ import{t as e}from"./dist-D2ydYRc4.mjs";import{n as t,t as n}from"./button.variants-CgCCe7qb.mjs";import{cn as r}from"@customafk/react-toolkit/utils";import{jsx as i,jsxs as a}from"react/jsx-runtime";import{Loader2Icon as o}from"lucide-react";import{Activity as s}from"react";function c({className:c,variant:l,size:u=`default`,color:d,asChild:f=!1,isLoading:p=!1,children:m,disabled:h,type:g=`button`,..._}){return a(f?e:`button`,{type:g,"data-slot":`button`,"data-state":p?`loading`:void 0,disabled:h,"aria-disabled":h?!0:void 0,className:r(t({variant:l,size:u,color:d,className:c})),..._,children:[i(s,{mode:p?`hidden`:`visible`,children:m}),i(s,{mode:p?`visible`:`hidden`,children:i(`div`,{className:n({variant:l,color:d}),children:i(o,{size:16,className:`animate-spin`})})})]})}export{c as t};
2
+ //# sourceMappingURL=button-JJaTl28Z.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-CqxqZbcQ.mjs","names":[],"sources":["../packages/components/ui/button.tsx"],"sourcesContent":["'use client';\n\nimport { Activity } from 'react';\n\nimport { Loader2Icon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport { type ButtonVariantProps, buttonLoadingVariant, buttonVariants } from './button.variants';\n\nexport interface ButtonProps extends Omit<React.ComponentProps<'button'>, 'color'> {\n /**\n * When true, the button will render its children without wrapping them\n */\n asChild?: boolean;\n /**\n * Shows a loading spinner when true\n */\n isLoading?: boolean;\n /**\n * Visual style variant\n */\n variant?: ButtonVariantProps['variant'];\n /**\n * Color theme of the button\n */\n color?: ButtonVariantProps['color'];\n /**\n * Size of the button\n */\n size?: ButtonVariantProps['size'];\n}\n\n/**\n * Button component with variants, loading state and composition support\n */\nfunction Button({\n className,\n variant,\n size = 'default',\n color,\n asChild = false,\n isLoading = false,\n children,\n disabled,\n type = 'button',\n ...props\n}: ButtonProps) {\n const Comp = asChild ? Slot : 'button';\n\n return (\n <Comp\n type={type}\n data-slot=\"button\"\n data-state={isLoading ? 'loading' : undefined}\n disabled={disabled}\n aria-disabled={disabled ? true : undefined}\n className={cn(\n buttonVariants({\n variant,\n size,\n color: color as ButtonVariantProps['color'],\n className,\n })\n )}\n {...props}\n >\n <Activity mode={isLoading ? 'hidden' : 'visible'}>{children}</Activity>\n <Activity mode={isLoading ? 'visible' : 'hidden'}>\n <div className={buttonLoadingVariant({ variant, color })}>\n <Loader2Icon size={16} className=\"animate-spin\" />\n </div>\n </Activity>\n </Comp>\n );\n}\n\nexport { Button };\n"],"mappings":"oRAqCA,SAAS,EAAO,CACd,YACA,UACA,OAAO,UACP,QACA,UAAU,GACV,YAAY,GACZ,WACA,WACA,OAAO,SACP,GAAG,GACW,CAGd,OACE,EAHW,EAAU,EAAO,SAAA,CAIpB,OACN,YAAU,SACV,aAAY,EAAY,UAAY,IAAA,GAC1B,WACV,gBAAe,EAAW,GAAO,IAAA,GACjC,UAAW,EACT,EAAe,CACb,UACA,OACO,QACP,YACD,CAAC,CACH,CACD,GAAI,YAEJ,EAAC,EAAA,CAAS,KAAM,EAAY,SAAW,UAAY,YAAoB,CACvE,EAAC,EAAA,CAAS,KAAM,EAAY,UAAY,kBACtC,EAAC,MAAA,CAAI,UAAW,EAAqB,CAAE,UAAS,QAAO,CAAC,UACtD,EAAC,EAAA,CAAY,KAAM,GAAI,UAAU,gBAAiB,EAC9C,EACG,CAAA,EACN"}
1
+ {"version":3,"file":"button-JJaTl28Z.mjs","names":[],"sources":["../packages/components/ui/button.tsx"],"sourcesContent":["'use client';\n\nimport { Activity } from 'react';\n\nimport { Loader2Icon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport { type ButtonVariantProps, buttonLoadingVariant, buttonVariants } from './button.variants';\n\nexport interface ButtonProps extends Omit<React.ComponentProps<'button'>, 'color'> {\n /**\n * When true, the button will render its children without wrapping them\n */\n asChild?: boolean;\n /**\n * Shows a loading spinner when true\n */\n isLoading?: boolean;\n /**\n * Visual style variant\n */\n variant?: ButtonVariantProps['variant'];\n /**\n * Color theme of the button\n */\n color?: ButtonVariantProps['color'];\n /**\n * Size of the button\n */\n size?: ButtonVariantProps['size'];\n}\n\n/**\n * Button component with variants, loading state and composition support\n */\nfunction Button({\n className,\n variant,\n size = 'default',\n color,\n asChild = false,\n isLoading = false,\n children,\n disabled,\n type = 'button',\n ...props\n}: ButtonProps) {\n const Comp = asChild ? Slot : 'button';\n\n return (\n <Comp\n type={type}\n data-slot=\"button\"\n data-state={isLoading ? 'loading' : undefined}\n disabled={disabled}\n aria-disabled={disabled ? true : undefined}\n className={cn(\n buttonVariants({\n variant,\n size,\n color: color as ButtonVariantProps['color'],\n className,\n })\n )}\n {...props}\n >\n <Activity mode={isLoading ? 'hidden' : 'visible'}>{children}</Activity>\n <Activity mode={isLoading ? 'visible' : 'hidden'}>\n <div className={buttonLoadingVariant({ variant, color })}>\n <Loader2Icon size={16} className=\"animate-spin\" />\n </div>\n </Activity>\n </Comp>\n );\n}\n\nexport { Button };\n"],"mappings":"oRAqCA,SAAS,EAAO,CACd,YACA,UACA,OAAO,UACP,QACA,UAAU,GACV,YAAY,GACZ,WACA,WACA,OAAO,SACP,GAAG,GACW,CAGd,OACE,EAHW,EAAU,EAAO,SAAA,CAIpB,OACN,YAAU,SACV,aAAY,EAAY,UAAY,IAAA,GAC1B,WACV,gBAAe,EAAW,GAAO,IAAA,GACjC,UAAW,EACT,EAAe,CACb,UACA,OACO,QACP,YACD,CAAC,CACH,CACD,GAAI,YAEJ,EAAC,EAAA,CAAS,KAAM,EAAY,SAAW,UAAY,YAAoB,CACvE,EAAC,EAAA,CAAS,KAAM,EAAY,UAAY,kBACtC,EAAC,MAAA,CAAI,UAAW,EAAqB,CAAE,UAAS,QAAO,CAAC,UACtD,EAAC,EAAA,CAAY,KAAM,GAAI,UAAU,gBAAiB,EAC9C,EACG,CAAA,EACN"}
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime53 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime40 from "react/jsx-runtime";
2
2
  import { VariantProps } from "class-variance-authority";
3
3
  import * as class_variance_authority_types10 from "class-variance-authority/types";
4
4
 
@@ -9,7 +9,7 @@ import * as class_variance_authority_types10 from "class-variance-authority/type
9
9
  */
10
10
  declare const buttonVariants: (props?: ({
11
11
  variant?: "link" | "default" | "outline" | "soft" | "subtle" | "ghost" | null | undefined;
12
- color?: "muted" | "primary" | "secondary" | "success" | "important" | "info" | "warning" | "danger" | null | undefined;
12
+ color?: "muted" | "success" | "primary" | "secondary" | "important" | "info" | "warning" | "danger" | null | undefined;
13
13
  size?: "xs" | "sm" | "md" | "lg" | "xl" | "default" | "icon" | null | undefined;
14
14
  } & class_variance_authority_types10.ClassProp) | undefined) => string;
15
15
  type ButtonVariantProps = VariantProps<typeof buttonVariants>;
@@ -51,7 +51,7 @@ declare function Button({
51
51
  disabled,
52
52
  type,
53
53
  ...props
54
- }: ButtonProps): react_jsx_runtime53.JSX.Element;
54
+ }: ButtonProps): react_jsx_runtime40.JSX.Element;
55
55
  //#endregion
56
56
  export { ButtonProps as n, Button as t };
57
- //# sourceMappingURL=button-DavYkks2.d.mts.map
57
+ //# sourceMappingURL=button-vNDXA78a.d.mts.map
@@ -1,2 +1,2 @@
1
1
  import{cva as e}from"class-variance-authority";const t=e([`pointer-events-none absolute inset-0 top-0 left-0 z-10 flex cursor-default items-center justify-center rounded-sm`],{variants:{variant:{default:``,outline:``,soft:``,subtle:``,ghost:``,link:``},color:{primary:``,secondary:``,muted:``,success:``,important:``,info:``,warning:``,danger:``}},compoundVariants:[{variant:`default`,color:`primary`,className:`bg-primary-weak`},{variant:`default`,color:`secondary`,className:`bg-secondary-weak`},{variant:`default`,color:`muted`,className:`bg-muted-weak`},{variant:`default`,color:`success`,className:`bg-success-weak`},{variant:`default`,color:`info`,className:`bg-info-weak`},{variant:`default`,color:`warning`,className:`bg-warning-weak`},{variant:`default`,color:`danger`,className:`bg-danger-weak`},{variant:`outline`,color:`primary`,className:`bg-card outline-1 outline-primary-weak`},{variant:`outline`,color:`secondary`,className:`bg-card outline-1 outline-secondary-weak`},{variant:`outline`,color:`muted`,className:`bg-card outline-1 outline-muted-weak`},{variant:`outline`,color:`success`,className:`bg-card outline-1 outline-success-weak`},{variant:`outline`,color:`info`,className:`bg-card outline-1 outline-info-weak`},{variant:`outline`,color:`warning`,className:`bg-card outline-1 outline-warning-weak`},{variant:`outline`,color:`danger`,className:`bg-card outline-1 outline-danger-weak`},{variant:`soft`,color:`primary`,className:`bg-primary-bg-subtle`},{variant:`soft`,color:`secondary`,className:`bg-secondary-bg-subtle`},{variant:`soft`,color:`muted`,className:`bg-muted-bg-subtle`},{variant:`soft`,color:`success`,className:`bg-success-bg-subtle`},{variant:`soft`,color:`info`,className:`bg-info-bg-subtle`},{variant:`soft`,color:`warning`,className:`bg-warning-bg-subtle`},{variant:`soft`,color:`danger`,className:`bg-danger-bg-subtle`},{variant:`subtle`,color:`primary`,className:`bg-primary-bg-subtle outline-1 outline-primary-weak`},{variant:`subtle`,color:`secondary`,className:`bg-secondary-bg-subtle outline-1 outline-secondary-weak`},{variant:`subtle`,color:`muted`,className:`bg-muted-bg-subtle outline-1 outline-border-weak`},{variant:`subtle`,color:`success`,className:`bg-success-bg-subtle outline-1 outline-success-weak`},{variant:`subtle`,color:`info`,className:`bg-info-bg-subtle outline-1 outline-info-weak`},{variant:`subtle`,color:`warning`,className:`bg-warning-bg-subtle outline-1 outline-warning-weak`},{variant:`subtle`,color:`danger`,className:`bg-danger-bg-subtle outline-1 outline-danger-weak`},{variant:`ghost`,color:`primary`,className:`bg-primary-bg-subtle`},{variant:`ghost`,color:`secondary`,className:`bg-secondary-bg-subtle`},{variant:`ghost`,color:`muted`,className:`bg-muted-bg-subtle`},{variant:`ghost`,color:`success`,className:`bg-success-bg-subtle`},{variant:`ghost`,color:`info`,className:`bg-info-bg-subtle`},{variant:`ghost`,color:`warning`,className:`bg-warning-bg-subtle`},{variant:`ghost`,color:`danger`,className:`bg-danger-bg-subtle`}]}),n=e([`relative cursor-pointer rounded-sm transition-all`,`whitespace-normal`,`inline-flex items-center justify-center`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,`disabled:pointer-events-none disabled:cursor-default disabled:opacity-60`,`data-[state=loading]:pointer-events-none data-[state=loading]:cursor-default`],{variants:{variant:{default:`text-text-negative outline-0 outline-offset-0`,outline:`-outline-offset-1 bg-card outline-1`,soft:`outline-none outline-0`,subtle:`-outline-offset-1 outline-1`,ghost:`outline-0`,link:``},color:{primary:``,secondary:``,muted:``,success:``,important:``,info:``,warning:``,danger:``},size:{default:`gap-1.5 px-2.5 py-1.5 font-medium text-sm leading-5`,xs:`gap-1 px-2 py-1 font-medium text-xs leading-4`,sm:`gap-1.5 px-2.5 py-1.5 font-medium text-xs leading-4`,md:`gap-1.5 px-2.5 py-1.5 font-medium text-sm leading-5`,lg:`gap-1.5 px-3 py-2 font-medium text-sm leading-5`,xl:`gap-2 px-3 py-2 font-medium text-base leading-6`,icon:`size-8`}},defaultVariants:{variant:`default`,color:`primary`,size:`default`},compoundVariants:[{variant:`default`,color:`primary`,className:`bg-primary hover:opacity-80 focus:outline-2 focus:outline-primary focus:outline-offset-2`},{variant:`default`,color:`secondary`,className:`bg-secondary hover:opacity-80 focus:outline-2 focus:outline-secondary focus:outline-offset-2`},{variant:`default`,color:`muted`,className:`bg-muted hover:opacity-80 focus:outline-2 focus:outline-muted focus:outline-offset-2`},{variant:`default`,color:`success`,className:`bg-success hover:opacity-80 focus:outline-2 focus:outline-success focus:outline-offset-2`},{variant:`default`,color:`important`,className:`bg-important hover:opacity-80 focus:outline-2 focus:outline-important focus:outline-offset-2`},{variant:`default`,color:`info`,className:`bg-info hover:opacity-80 focus:outline-2 focus:outline-info focus:outline-offset-2`},{variant:`default`,color:`warning`,className:`bg-warning hover:opacity-80 focus:outline-2 focus:outline-warning focus:outline-offset-2`},{variant:`default`,color:`danger`,className:`bg-danger hover:opacity-80 focus:outline-2 focus:outline-danger focus:outline-offset-2`},{variant:`outline`,color:`primary`,className:`text-primary outline-primary hover:bg-primary-bg-subtle focus:outline-2 focus:outline-primary-strong`},{variant:`outline`,color:`secondary`,className:`text-secondary outline-secondary hover:bg-secondary-muted focus:outline-2 focus:outline-secondary`},{variant:`outline`,color:`muted`,className:`text-muted outline-muted-weak hover:bg-muted-muted focus:outline-2 focus:outline-muted-weak`},{variant:`outline`,color:`success`,className:`text-success outline-success hover:bg-success-muted focus:outline-2 focus:outline-success-strong`},{variant:`outline`,color:`info`,className:`text-info outline-info hover:bg-info-muted focus:outline-2 focus:outline-info-strong`},{variant:`outline`,color:`warning`,className:`text-warning outline-warning hover:bg-warning-muted focus:outline-2 focus:outline-warning-strong`},{variant:`outline`,color:`danger`,className:`text-danger outline-danger hover:bg-danger-muted focus:outline-2 focus:outline-danger-strong`},{variant:`soft`,color:`primary`,className:`bg-primary-bg-subtle text-primary hover:bg-primary-muted hover:text-primary-strong focus:bg-primary-weak`},{variant:`soft`,color:`secondary`,className:`bg-secondary-bg-subtle text-secondary hover:bg-secondary-muted hover:text-secondary-strong focus:bg-secondary-weak`},{variant:`soft`,color:`muted`,className:`bg-muted-bg-subtle text-muted hover:bg-muted-muted hover:text-muted-strong focus:bg-muted-weak`},{variant:`soft`,color:`success`,className:`bg-success-bg-subtle text-success hover:bg-success-muted hover:text-success-strong focus:bg-success-weak`},{variant:`soft`,color:`info`,className:`bg-info-bg-subtle text-info hover:bg-info-muted hover:text-info-strong focus:bg-info-weak`},{variant:`soft`,color:`warning`,className:`bg-warning-bg-subtle text-warning hover:bg-warning-muted hover:text-warning-strong focus:bg-warning-weak`},{variant:`soft`,color:`danger`,className:`bg-danger-bg-subtle text-danger hover:bg-danger-muted hover:text-danger-strong focus:bg-danger-weak`},{variant:`subtle`,color:`primary`,className:`bg-primary-bg-subtle text-primary outline-primary hover:bg-primary-bg-subtle focus:outline-2 focus:outline-primary`},{variant:`subtle`,color:`secondary`,className:`bg-secondary-bg-subtle text-secondary outline-secondary hover:bg-secondary-bg-subtle focus:outline-2 focus:outline-secondary`},{variant:`subtle`,color:`muted`,className:`bg-muted-bg-subtle text-muted outline-border hover:bg-muted-bg-subtle focus:outline-2 focus:outline-border`},{variant:`subtle`,color:`success`,className:`bg-success-bg-subtle text-success outline-success hover:bg-success-bg-subtle focus:outline-2 focus:outline-success`},{variant:`subtle`,color:`info`,className:`bg-info-bg-subtle text-info outline-info hover:bg-info-bg-subtle focus:outline-2 focus:outline-info`},{variant:`subtle`,color:`warning`,className:`bg-warning-bg-subtle text-warning outline-warning hover:bg-warning-bg-subtle focus:outline-2 focus:outline-warning`},{variant:`subtle`,color:`danger`,className:`bg-danger-bg-subtle text-danger outline-danger hover:bg-danger-bg-subtle focus:outline-2 focus:outline-danger`},{variant:`ghost`,color:`primary`,className:`text-primary hover:bg-primary-bg-subtle focus:bg-primary-muted`},{variant:`ghost`,color:`secondary`,className:`text-text-positive-weak hover:bg-secondary-bg-subtle focus:bg-secondary-muted`},{variant:`ghost`,color:`muted`,className:`text-text-positive-weak hover:bg-muted-bg-subtle focus:bg-muted-muted`},{variant:`ghost`,color:`success`,className:`text-success hover:bg-success-bg-subtle focus:bg-success-muted`},{variant:`ghost`,color:`info`,className:`text-info hover:bg-info-bg-subtle focus:bg-info-muted`},{variant:`ghost`,color:`warning`,className:`text-warning hover:bg-warning-bg-subtle focus:bg-warning-muted`},{variant:`ghost`,color:`danger`,className:`text-danger hover:bg-danger-bg-subtle focus:bg-danger-muted`},{variant:`link`,color:`primary`,className:`-outline-offset-2 focus:-outline-offset-2 text-primary focus:outline-2 focus:outline-primary`},{variant:`link`,color:`secondary`,className:`-outline-offset-2 focus:-outline-offset-2 text-secondary focus:outline-2 focus:outline-secondary`},{variant:`link`,color:`muted`,className:`-outline-offset-2 focus:-outline-offset-2 text-muted focus:outline-2 focus:outline-muted`},{variant:`link`,color:`success`,className:`-outline-offset-2 focus:-outline-offset-2 text-success focus:outline-2 focus:outline-success`},{variant:`link`,color:`important`,className:`-outline-offset-2 focus:-outline-offset-2 text-important focus:outline-2 focus:outline-important`},{variant:`link`,color:`info`,className:`-outline-offset-2 focus:-outline-offset-2 text-info focus:outline-2 focus:outline-info`},{variant:`link`,color:`warning`,className:`-outline-offset-2 focus:-outline-offset-2 text-warning focus:outline-2 focus:outline-warning`},{variant:`link`,color:`danger`,className:`-outline-offset-2 focus:-outline-offset-2 text-danger focus:outline-2 focus:outline-danger`}]});export{n,t};
2
- //# sourceMappingURL=button.variants-CXNnQvXs.mjs.map
2
+ //# sourceMappingURL=button.variants-CgCCe7qb.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.variants-CXNnQvXs.mjs","names":[],"sources":["../packages/components/ui/button.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\n\nexport const buttonLoadingVariant = cva(['pointer-events-none absolute inset-0 top-0 left-0 z-10 flex cursor-default items-center justify-center rounded-sm'], {\n variants: {\n variant: {\n default: '',\n outline: '',\n soft: '',\n subtle: '',\n ghost: '',\n link: '',\n },\n color: {\n primary: '',\n secondary: '',\n muted: '',\n success: '',\n important: '',\n info: '',\n warning: '',\n danger: '',\n },\n },\n compoundVariants: [\n {\n variant: 'default',\n color: 'primary',\n className: 'bg-primary-weak',\n },\n {\n variant: 'default',\n color: 'secondary',\n className: 'bg-secondary-weak',\n },\n { variant: 'default', color: 'muted', className: 'bg-muted-weak' },\n {\n variant: 'default',\n color: 'success',\n className: 'bg-success-weak',\n },\n {\n variant: 'default',\n color: 'info',\n className: 'bg-info-weak',\n },\n {\n variant: 'default',\n color: 'warning',\n className: 'bg-warning-weak',\n },\n {\n variant: 'default',\n color: 'danger',\n className: 'bg-danger-weak',\n },\n {\n variant: 'outline',\n color: 'primary',\n className: 'bg-card outline-1 outline-primary-weak',\n },\n {\n variant: 'outline',\n color: 'secondary',\n className: 'bg-card outline-1 outline-secondary-weak',\n },\n {\n variant: 'outline',\n color: 'muted',\n className: 'bg-card outline-1 outline-muted-weak',\n },\n {\n variant: 'outline',\n color: 'success',\n className: 'bg-card outline-1 outline-success-weak',\n },\n {\n variant: 'outline',\n color: 'info',\n className: 'bg-card outline-1 outline-info-weak',\n },\n {\n variant: 'outline',\n color: 'warning',\n className: 'bg-card outline-1 outline-warning-weak',\n },\n {\n variant: 'outline',\n color: 'danger',\n className: 'bg-card outline-1 outline-danger-weak',\n },\n {\n variant: 'soft',\n color: 'primary',\n className: 'bg-primary-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'muted',\n className: 'bg-muted-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'success',\n className: 'bg-success-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'info',\n className: 'bg-info-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'warning',\n className: 'bg-warning-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'danger',\n className: 'bg-danger-bg-subtle',\n },\n {\n variant: 'subtle',\n color: 'primary',\n className: 'bg-primary-bg-subtle outline-1 outline-primary-weak',\n },\n {\n variant: 'subtle',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle outline-1 outline-secondary-weak',\n },\n {\n variant: 'subtle',\n color: 'muted',\n className: 'bg-muted-bg-subtle outline-1 outline-border-weak',\n },\n {\n variant: 'subtle',\n color: 'success',\n className: 'bg-success-bg-subtle outline-1 outline-success-weak',\n },\n {\n variant: 'subtle',\n color: 'info',\n className: 'bg-info-bg-subtle outline-1 outline-info-weak',\n },\n {\n variant: 'subtle',\n color: 'warning',\n className: 'bg-warning-bg-subtle outline-1 outline-warning-weak',\n },\n {\n variant: 'subtle',\n color: 'danger',\n className: 'bg-danger-bg-subtle outline-1 outline-danger-weak',\n },\n {\n variant: 'ghost',\n color: 'primary',\n className: 'bg-primary-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'muted',\n className: 'bg-muted-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'success',\n className: 'bg-success-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'info',\n className: 'bg-info-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'warning',\n className: 'bg-warning-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'danger',\n className: 'bg-danger-bg-subtle',\n },\n ],\n});\n\n/**\n * Button variants definition for styling using class-variance-authority\n */\nexport const buttonVariants = cva(\n [\n 'relative cursor-pointer rounded-sm transition-all',\n 'whitespace-normal',\n 'inline-flex items-center justify-center',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n 'disabled:pointer-events-none disabled:cursor-default disabled:opacity-60',\n 'data-[state=loading]:pointer-events-none data-[state=loading]:cursor-default',\n ],\n {\n variants: {\n variant: {\n default: 'text-text-negative outline-0 outline-offset-0',\n outline: '-outline-offset-1 bg-card outline-1',\n soft: 'outline-none outline-0',\n subtle: '-outline-offset-1 outline-1',\n ghost: 'outline-0',\n link: '',\n },\n color: {\n primary: '',\n secondary: '',\n muted: '',\n success: '',\n important: '',\n info: '',\n warning: '',\n danger: '',\n },\n size: {\n default: 'gap-1.5 px-2.5 py-1.5 font-medium text-sm leading-5',\n xs: 'gap-1 px-2 py-1 font-medium text-xs leading-4',\n sm: 'gap-1.5 px-2.5 py-1.5 font-medium text-xs leading-4',\n md: 'gap-1.5 px-2.5 py-1.5 font-medium text-sm leading-5',\n lg: 'gap-1.5 px-3 py-2 font-medium text-sm leading-5',\n xl: 'gap-2 px-3 py-2 font-medium text-base leading-6',\n icon: 'size-8',\n },\n },\n defaultVariants: {\n variant: 'default',\n color: 'primary',\n size: 'default',\n },\n compoundVariants: [\n {\n variant: 'default',\n color: 'primary',\n className: 'bg-primary hover:opacity-80 focus:outline-2 focus:outline-primary focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'secondary',\n className: 'bg-secondary hover:opacity-80 focus:outline-2 focus:outline-secondary focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'muted',\n className: 'bg-muted hover:opacity-80 focus:outline-2 focus:outline-muted focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'success',\n className: 'bg-success hover:opacity-80 focus:outline-2 focus:outline-success focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'important',\n className: 'bg-important hover:opacity-80 focus:outline-2 focus:outline-important focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'info',\n className: 'bg-info hover:opacity-80 focus:outline-2 focus:outline-info focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'warning',\n className: 'bg-warning hover:opacity-80 focus:outline-2 focus:outline-warning focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'danger',\n className: 'bg-danger hover:opacity-80 focus:outline-2 focus:outline-danger focus:outline-offset-2',\n },\n {\n variant: 'outline',\n color: 'primary',\n className: 'text-primary outline-primary hover:bg-primary-bg-subtle focus:outline-2 focus:outline-primary-strong',\n },\n {\n variant: 'outline',\n color: 'secondary',\n className: 'text-secondary outline-secondary hover:bg-secondary-muted focus:outline-2 focus:outline-secondary',\n },\n {\n variant: 'outline',\n color: 'muted',\n className: 'text-muted outline-muted-weak hover:bg-muted-muted focus:outline-2 focus:outline-muted-weak',\n },\n {\n variant: 'outline',\n color: 'success',\n className: 'text-success outline-success hover:bg-success-muted focus:outline-2 focus:outline-success-strong',\n },\n {\n variant: 'outline',\n color: 'info',\n className: 'text-info outline-info hover:bg-info-muted focus:outline-2 focus:outline-info-strong',\n },\n {\n variant: 'outline',\n color: 'warning',\n className: 'text-warning outline-warning hover:bg-warning-muted focus:outline-2 focus:outline-warning-strong',\n },\n {\n variant: 'outline',\n color: 'danger',\n className: 'text-danger outline-danger hover:bg-danger-muted focus:outline-2 focus:outline-danger-strong',\n },\n {\n variant: 'soft',\n color: 'primary',\n className: 'bg-primary-bg-subtle text-primary hover:bg-primary-muted hover:text-primary-strong focus:bg-primary-weak',\n },\n {\n variant: 'soft',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle text-secondary hover:bg-secondary-muted hover:text-secondary-strong focus:bg-secondary-weak',\n },\n {\n variant: 'soft',\n color: 'muted',\n className: 'bg-muted-bg-subtle text-muted hover:bg-muted-muted hover:text-muted-strong focus:bg-muted-weak',\n },\n {\n variant: 'soft',\n color: 'success',\n className: 'bg-success-bg-subtle text-success hover:bg-success-muted hover:text-success-strong focus:bg-success-weak',\n },\n {\n variant: 'soft',\n color: 'info',\n className: 'bg-info-bg-subtle text-info hover:bg-info-muted hover:text-info-strong focus:bg-info-weak',\n },\n {\n variant: 'soft',\n color: 'warning',\n className: 'bg-warning-bg-subtle text-warning hover:bg-warning-muted hover:text-warning-strong focus:bg-warning-weak',\n },\n {\n variant: 'soft',\n color: 'danger',\n className: 'bg-danger-bg-subtle text-danger hover:bg-danger-muted hover:text-danger-strong focus:bg-danger-weak',\n },\n {\n variant: 'subtle',\n color: 'primary',\n className: 'bg-primary-bg-subtle text-primary outline-primary hover:bg-primary-bg-subtle focus:outline-2 focus:outline-primary',\n },\n {\n variant: 'subtle',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle text-secondary outline-secondary hover:bg-secondary-bg-subtle focus:outline-2 focus:outline-secondary',\n },\n {\n variant: 'subtle',\n color: 'muted',\n className: 'bg-muted-bg-subtle text-muted outline-border hover:bg-muted-bg-subtle focus:outline-2 focus:outline-border',\n },\n {\n variant: 'subtle',\n color: 'success',\n className: 'bg-success-bg-subtle text-success outline-success hover:bg-success-bg-subtle focus:outline-2 focus:outline-success',\n },\n {\n variant: 'subtle',\n color: 'info',\n className: 'bg-info-bg-subtle text-info outline-info hover:bg-info-bg-subtle focus:outline-2 focus:outline-info',\n },\n {\n variant: 'subtle',\n color: 'warning',\n className: 'bg-warning-bg-subtle text-warning outline-warning hover:bg-warning-bg-subtle focus:outline-2 focus:outline-warning',\n },\n {\n variant: 'subtle',\n color: 'danger',\n className: 'bg-danger-bg-subtle text-danger outline-danger hover:bg-danger-bg-subtle focus:outline-2 focus:outline-danger',\n },\n {\n variant: 'ghost',\n color: 'primary',\n className: 'text-primary hover:bg-primary-bg-subtle focus:bg-primary-muted',\n },\n {\n variant: 'ghost',\n color: 'secondary',\n className: 'text-text-positive-weak hover:bg-secondary-bg-subtle focus:bg-secondary-muted',\n },\n {\n variant: 'ghost',\n color: 'muted',\n className: 'text-text-positive-weak hover:bg-muted-bg-subtle focus:bg-muted-muted',\n },\n {\n variant: 'ghost',\n color: 'success',\n className: 'text-success hover:bg-success-bg-subtle focus:bg-success-muted',\n },\n {\n variant: 'ghost',\n color: 'info',\n className: 'text-info hover:bg-info-bg-subtle focus:bg-info-muted',\n },\n {\n variant: 'ghost',\n color: 'warning',\n className: 'text-warning hover:bg-warning-bg-subtle focus:bg-warning-muted',\n },\n {\n variant: 'ghost',\n color: 'danger',\n className: 'text-danger hover:bg-danger-bg-subtle focus:bg-danger-muted',\n },\n {\n variant: 'link',\n color: 'primary',\n className: '-outline-offset-2 focus:-outline-offset-2 text-primary focus:outline-2 focus:outline-primary',\n },\n {\n variant: 'link',\n color: 'secondary',\n className: '-outline-offset-2 focus:-outline-offset-2 text-secondary focus:outline-2 focus:outline-secondary',\n },\n {\n variant: 'link',\n color: 'muted',\n className: '-outline-offset-2 focus:-outline-offset-2 text-muted focus:outline-2 focus:outline-muted',\n },\n {\n variant: 'link',\n color: 'success',\n className: '-outline-offset-2 focus:-outline-offset-2 text-success focus:outline-2 focus:outline-success',\n },\n {\n variant: 'link',\n color: 'important',\n className: '-outline-offset-2 focus:-outline-offset-2 text-important focus:outline-2 focus:outline-important',\n },\n {\n variant: 'link',\n color: 'info',\n className: '-outline-offset-2 focus:-outline-offset-2 text-info focus:outline-2 focus:outline-info',\n },\n {\n variant: 'link',\n color: 'warning',\n className: '-outline-offset-2 focus:-outline-offset-2 text-warning focus:outline-2 focus:outline-warning',\n },\n {\n variant: 'link',\n color: 'danger',\n className: '-outline-offset-2 focus:-outline-offset-2 text-danger focus:outline-2 focus:outline-danger',\n },\n ],\n }\n);\n\nexport type ButtonVariantProps = VariantProps<typeof buttonVariants>;\n"],"mappings":"+CAEA,MAAa,EAAuB,EAAI,CAAC,oHAAoH,CAAE,CAC7J,SAAU,CACR,QAAS,CACP,QAAS,GACT,QAAS,GACT,KAAM,GACN,OAAQ,GACR,MAAO,GACP,KAAM,GACP,CACD,MAAO,CACL,QAAS,GACT,UAAW,GACX,MAAO,GACP,QAAS,GACT,UAAW,GACX,KAAM,GACN,QAAS,GACT,OAAQ,GACT,CACF,CACD,iBAAkB,CAChB,CACE,QAAS,UACT,MAAO,UACP,UAAW,kBACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,oBACZ,CACD,CAAE,QAAS,UAAW,MAAO,QAAS,UAAW,gBAAiB,CAClE,CACE,QAAS,UACT,MAAO,UACP,UAAW,kBACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,eACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,kBACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,iBACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,yCACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,2CACZ,CACD,CACE,QAAS,UACT,MAAO,QACP,UAAW,uCACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,yCACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,sCACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,yCACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,wCACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,yBACZ,CACD,CACE,QAAS,OACT,MAAO,QACP,UAAW,qBACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,OACT,MAAO,OACP,UAAW,oBACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,OACT,MAAO,SACP,UAAW,sBACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,sDACZ,CACD,CACE,QAAS,SACT,MAAO,YACP,UAAW,0DACZ,CACD,CACE,QAAS,SACT,MAAO,QACP,UAAW,mDACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,sDACZ,CACD,CACE,QAAS,SACT,MAAO,OACP,UAAW,gDACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,sDACZ,CACD,CACE,QAAS,SACT,MAAO,SACP,UAAW,oDACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,QACT,MAAO,YACP,UAAW,yBACZ,CACD,CACE,QAAS,QACT,MAAO,QACP,UAAW,qBACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,QACT,MAAO,OACP,UAAW,oBACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,QACT,MAAO,SACP,UAAW,sBACZ,CACF,CACF,CAAC,CAKW,EAAiB,EAC5B,CACE,oDACA,oBACA,0CACA,8BACA,mBACA,uCACA,2EACA,+EACD,CACD,CACE,SAAU,CACR,QAAS,CACP,QAAS,gDACT,QAAS,sCACT,KAAM,yBACN,OAAQ,8BACR,MAAO,YACP,KAAM,GACP,CACD,MAAO,CACL,QAAS,GACT,UAAW,GACX,MAAO,GACP,QAAS,GACT,UAAW,GACX,KAAM,GACN,QAAS,GACT,OAAQ,GACT,CACD,KAAM,CACJ,QAAS,sDACT,GAAI,gDACJ,GAAI,sDACJ,GAAI,sDACJ,GAAI,kDACJ,GAAI,kDACJ,KAAM,SACP,CACF,CACD,gBAAiB,CACf,QAAS,UACT,MAAO,UACP,KAAM,UACP,CACD,iBAAkB,CAChB,CACE,QAAS,UACT,MAAO,UACP,UAAW,2FACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,+FACZ,CACD,CACE,QAAS,UACT,MAAO,QACP,UAAW,uFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,2FACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,+FACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,qFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,2FACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,yFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,uGACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,oGACZ,CACD,CACE,QAAS,UACT,MAAO,QACP,UAAW,8FACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,mGACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,uFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,mGACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,2GACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,qHACZ,CACD,CACE,QAAS,OACT,MAAO,QACP,UAAW,iGACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,2GACZ,CACD,CACE,QAAS,OACT,MAAO,OACP,UAAW,4FACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,2GACZ,CACD,CACE,QAAS,OACT,MAAO,SACP,UAAW,sGACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,qHACZ,CACD,CACE,QAAS,SACT,MAAO,YACP,UAAW,+HACZ,CACD,CACE,QAAS,SACT,MAAO,QACP,UAAW,6GACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,qHACZ,CACD,CACE,QAAS,SACT,MAAO,OACP,UAAW,sGACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,qHACZ,CACD,CACE,QAAS,SACT,MAAO,SACP,UAAW,gHACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,iEACZ,CACD,CACE,QAAS,QACT,MAAO,YACP,UAAW,gFACZ,CACD,CACE,QAAS,QACT,MAAO,QACP,UAAW,wEACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,iEACZ,CACD,CACE,QAAS,QACT,MAAO,OACP,UAAW,wDACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,iEACZ,CACD,CACE,QAAS,QACT,MAAO,SACP,UAAW,8DACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,mGACZ,CACD,CACE,QAAS,OACT,MAAO,QACP,UAAW,2FACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,mGACZ,CACD,CACE,QAAS,OACT,MAAO,OACP,UAAW,yFACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,SACP,UAAW,6FACZ,CACF,CACF,CACF"}
1
+ {"version":3,"file":"button.variants-CgCCe7qb.mjs","names":[],"sources":["../packages/components/ui/button.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\n\nexport const buttonLoadingVariant = cva(['pointer-events-none absolute inset-0 top-0 left-0 z-10 flex cursor-default items-center justify-center rounded-sm'], {\n variants: {\n variant: {\n default: '',\n outline: '',\n soft: '',\n subtle: '',\n ghost: '',\n link: '',\n },\n color: {\n primary: '',\n secondary: '',\n muted: '',\n success: '',\n important: '',\n info: '',\n warning: '',\n danger: '',\n },\n },\n compoundVariants: [\n {\n variant: 'default',\n color: 'primary',\n className: 'bg-primary-weak',\n },\n {\n variant: 'default',\n color: 'secondary',\n className: 'bg-secondary-weak',\n },\n { variant: 'default', color: 'muted', className: 'bg-muted-weak' },\n {\n variant: 'default',\n color: 'success',\n className: 'bg-success-weak',\n },\n {\n variant: 'default',\n color: 'info',\n className: 'bg-info-weak',\n },\n {\n variant: 'default',\n color: 'warning',\n className: 'bg-warning-weak',\n },\n {\n variant: 'default',\n color: 'danger',\n className: 'bg-danger-weak',\n },\n {\n variant: 'outline',\n color: 'primary',\n className: 'bg-card outline-1 outline-primary-weak',\n },\n {\n variant: 'outline',\n color: 'secondary',\n className: 'bg-card outline-1 outline-secondary-weak',\n },\n {\n variant: 'outline',\n color: 'muted',\n className: 'bg-card outline-1 outline-muted-weak',\n },\n {\n variant: 'outline',\n color: 'success',\n className: 'bg-card outline-1 outline-success-weak',\n },\n {\n variant: 'outline',\n color: 'info',\n className: 'bg-card outline-1 outline-info-weak',\n },\n {\n variant: 'outline',\n color: 'warning',\n className: 'bg-card outline-1 outline-warning-weak',\n },\n {\n variant: 'outline',\n color: 'danger',\n className: 'bg-card outline-1 outline-danger-weak',\n },\n {\n variant: 'soft',\n color: 'primary',\n className: 'bg-primary-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'muted',\n className: 'bg-muted-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'success',\n className: 'bg-success-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'info',\n className: 'bg-info-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'warning',\n className: 'bg-warning-bg-subtle',\n },\n {\n variant: 'soft',\n color: 'danger',\n className: 'bg-danger-bg-subtle',\n },\n {\n variant: 'subtle',\n color: 'primary',\n className: 'bg-primary-bg-subtle outline-1 outline-primary-weak',\n },\n {\n variant: 'subtle',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle outline-1 outline-secondary-weak',\n },\n {\n variant: 'subtle',\n color: 'muted',\n className: 'bg-muted-bg-subtle outline-1 outline-border-weak',\n },\n {\n variant: 'subtle',\n color: 'success',\n className: 'bg-success-bg-subtle outline-1 outline-success-weak',\n },\n {\n variant: 'subtle',\n color: 'info',\n className: 'bg-info-bg-subtle outline-1 outline-info-weak',\n },\n {\n variant: 'subtle',\n color: 'warning',\n className: 'bg-warning-bg-subtle outline-1 outline-warning-weak',\n },\n {\n variant: 'subtle',\n color: 'danger',\n className: 'bg-danger-bg-subtle outline-1 outline-danger-weak',\n },\n {\n variant: 'ghost',\n color: 'primary',\n className: 'bg-primary-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'muted',\n className: 'bg-muted-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'success',\n className: 'bg-success-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'info',\n className: 'bg-info-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'warning',\n className: 'bg-warning-bg-subtle',\n },\n {\n variant: 'ghost',\n color: 'danger',\n className: 'bg-danger-bg-subtle',\n },\n ],\n});\n\n/**\n * Button variants definition for styling using class-variance-authority\n */\nexport const buttonVariants = cva(\n [\n 'relative cursor-pointer rounded-sm transition-all',\n 'whitespace-normal',\n 'inline-flex items-center justify-center',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n 'disabled:pointer-events-none disabled:cursor-default disabled:opacity-60',\n 'data-[state=loading]:pointer-events-none data-[state=loading]:cursor-default',\n ],\n {\n variants: {\n variant: {\n default: 'text-text-negative outline-0 outline-offset-0',\n outline: '-outline-offset-1 bg-card outline-1',\n soft: 'outline-none outline-0',\n subtle: '-outline-offset-1 outline-1',\n ghost: 'outline-0',\n link: '',\n },\n color: {\n primary: '',\n secondary: '',\n muted: '',\n success: '',\n important: '',\n info: '',\n warning: '',\n danger: '',\n },\n size: {\n default: 'gap-1.5 px-2.5 py-1.5 font-medium text-sm leading-5',\n xs: 'gap-1 px-2 py-1 font-medium text-xs leading-4',\n sm: 'gap-1.5 px-2.5 py-1.5 font-medium text-xs leading-4',\n md: 'gap-1.5 px-2.5 py-1.5 font-medium text-sm leading-5',\n lg: 'gap-1.5 px-3 py-2 font-medium text-sm leading-5',\n xl: 'gap-2 px-3 py-2 font-medium text-base leading-6',\n icon: 'size-8',\n },\n },\n defaultVariants: {\n variant: 'default',\n color: 'primary',\n size: 'default',\n },\n compoundVariants: [\n {\n variant: 'default',\n color: 'primary',\n className: 'bg-primary hover:opacity-80 focus:outline-2 focus:outline-primary focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'secondary',\n className: 'bg-secondary hover:opacity-80 focus:outline-2 focus:outline-secondary focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'muted',\n className: 'bg-muted hover:opacity-80 focus:outline-2 focus:outline-muted focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'success',\n className: 'bg-success hover:opacity-80 focus:outline-2 focus:outline-success focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'important',\n className: 'bg-important hover:opacity-80 focus:outline-2 focus:outline-important focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'info',\n className: 'bg-info hover:opacity-80 focus:outline-2 focus:outline-info focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'warning',\n className: 'bg-warning hover:opacity-80 focus:outline-2 focus:outline-warning focus:outline-offset-2',\n },\n {\n variant: 'default',\n color: 'danger',\n className: 'bg-danger hover:opacity-80 focus:outline-2 focus:outline-danger focus:outline-offset-2',\n },\n {\n variant: 'outline',\n color: 'primary',\n className: 'text-primary outline-primary hover:bg-primary-bg-subtle focus:outline-2 focus:outline-primary-strong',\n },\n {\n variant: 'outline',\n color: 'secondary',\n className: 'text-secondary outline-secondary hover:bg-secondary-muted focus:outline-2 focus:outline-secondary',\n },\n {\n variant: 'outline',\n color: 'muted',\n className: 'text-muted outline-muted-weak hover:bg-muted-muted focus:outline-2 focus:outline-muted-weak',\n },\n {\n variant: 'outline',\n color: 'success',\n className: 'text-success outline-success hover:bg-success-muted focus:outline-2 focus:outline-success-strong',\n },\n {\n variant: 'outline',\n color: 'info',\n className: 'text-info outline-info hover:bg-info-muted focus:outline-2 focus:outline-info-strong',\n },\n {\n variant: 'outline',\n color: 'warning',\n className: 'text-warning outline-warning hover:bg-warning-muted focus:outline-2 focus:outline-warning-strong',\n },\n {\n variant: 'outline',\n color: 'danger',\n className: 'text-danger outline-danger hover:bg-danger-muted focus:outline-2 focus:outline-danger-strong',\n },\n {\n variant: 'soft',\n color: 'primary',\n className: 'bg-primary-bg-subtle text-primary hover:bg-primary-muted hover:text-primary-strong focus:bg-primary-weak',\n },\n {\n variant: 'soft',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle text-secondary hover:bg-secondary-muted hover:text-secondary-strong focus:bg-secondary-weak',\n },\n {\n variant: 'soft',\n color: 'muted',\n className: 'bg-muted-bg-subtle text-muted hover:bg-muted-muted hover:text-muted-strong focus:bg-muted-weak',\n },\n {\n variant: 'soft',\n color: 'success',\n className: 'bg-success-bg-subtle text-success hover:bg-success-muted hover:text-success-strong focus:bg-success-weak',\n },\n {\n variant: 'soft',\n color: 'info',\n className: 'bg-info-bg-subtle text-info hover:bg-info-muted hover:text-info-strong focus:bg-info-weak',\n },\n {\n variant: 'soft',\n color: 'warning',\n className: 'bg-warning-bg-subtle text-warning hover:bg-warning-muted hover:text-warning-strong focus:bg-warning-weak',\n },\n {\n variant: 'soft',\n color: 'danger',\n className: 'bg-danger-bg-subtle text-danger hover:bg-danger-muted hover:text-danger-strong focus:bg-danger-weak',\n },\n {\n variant: 'subtle',\n color: 'primary',\n className: 'bg-primary-bg-subtle text-primary outline-primary hover:bg-primary-bg-subtle focus:outline-2 focus:outline-primary',\n },\n {\n variant: 'subtle',\n color: 'secondary',\n className: 'bg-secondary-bg-subtle text-secondary outline-secondary hover:bg-secondary-bg-subtle focus:outline-2 focus:outline-secondary',\n },\n {\n variant: 'subtle',\n color: 'muted',\n className: 'bg-muted-bg-subtle text-muted outline-border hover:bg-muted-bg-subtle focus:outline-2 focus:outline-border',\n },\n {\n variant: 'subtle',\n color: 'success',\n className: 'bg-success-bg-subtle text-success outline-success hover:bg-success-bg-subtle focus:outline-2 focus:outline-success',\n },\n {\n variant: 'subtle',\n color: 'info',\n className: 'bg-info-bg-subtle text-info outline-info hover:bg-info-bg-subtle focus:outline-2 focus:outline-info',\n },\n {\n variant: 'subtle',\n color: 'warning',\n className: 'bg-warning-bg-subtle text-warning outline-warning hover:bg-warning-bg-subtle focus:outline-2 focus:outline-warning',\n },\n {\n variant: 'subtle',\n color: 'danger',\n className: 'bg-danger-bg-subtle text-danger outline-danger hover:bg-danger-bg-subtle focus:outline-2 focus:outline-danger',\n },\n {\n variant: 'ghost',\n color: 'primary',\n className: 'text-primary hover:bg-primary-bg-subtle focus:bg-primary-muted',\n },\n {\n variant: 'ghost',\n color: 'secondary',\n className: 'text-text-positive-weak hover:bg-secondary-bg-subtle focus:bg-secondary-muted',\n },\n {\n variant: 'ghost',\n color: 'muted',\n className: 'text-text-positive-weak hover:bg-muted-bg-subtle focus:bg-muted-muted',\n },\n {\n variant: 'ghost',\n color: 'success',\n className: 'text-success hover:bg-success-bg-subtle focus:bg-success-muted',\n },\n {\n variant: 'ghost',\n color: 'info',\n className: 'text-info hover:bg-info-bg-subtle focus:bg-info-muted',\n },\n {\n variant: 'ghost',\n color: 'warning',\n className: 'text-warning hover:bg-warning-bg-subtle focus:bg-warning-muted',\n },\n {\n variant: 'ghost',\n color: 'danger',\n className: 'text-danger hover:bg-danger-bg-subtle focus:bg-danger-muted',\n },\n {\n variant: 'link',\n color: 'primary',\n className: '-outline-offset-2 focus:-outline-offset-2 text-primary focus:outline-2 focus:outline-primary',\n },\n {\n variant: 'link',\n color: 'secondary',\n className: '-outline-offset-2 focus:-outline-offset-2 text-secondary focus:outline-2 focus:outline-secondary',\n },\n {\n variant: 'link',\n color: 'muted',\n className: '-outline-offset-2 focus:-outline-offset-2 text-muted focus:outline-2 focus:outline-muted',\n },\n {\n variant: 'link',\n color: 'success',\n className: '-outline-offset-2 focus:-outline-offset-2 text-success focus:outline-2 focus:outline-success',\n },\n {\n variant: 'link',\n color: 'important',\n className: '-outline-offset-2 focus:-outline-offset-2 text-important focus:outline-2 focus:outline-important',\n },\n {\n variant: 'link',\n color: 'info',\n className: '-outline-offset-2 focus:-outline-offset-2 text-info focus:outline-2 focus:outline-info',\n },\n {\n variant: 'link',\n color: 'warning',\n className: '-outline-offset-2 focus:-outline-offset-2 text-warning focus:outline-2 focus:outline-warning',\n },\n {\n variant: 'link',\n color: 'danger',\n className: '-outline-offset-2 focus:-outline-offset-2 text-danger focus:outline-2 focus:outline-danger',\n },\n ],\n }\n);\n\nexport type ButtonVariantProps = VariantProps<typeof buttonVariants>;\n"],"mappings":"+CAEA,MAAa,EAAuB,EAAI,CAAC,oHAAoH,CAAE,CAC7J,SAAU,CACR,QAAS,CACP,QAAS,GACT,QAAS,GACT,KAAM,GACN,OAAQ,GACR,MAAO,GACP,KAAM,GACP,CACD,MAAO,CACL,QAAS,GACT,UAAW,GACX,MAAO,GACP,QAAS,GACT,UAAW,GACX,KAAM,GACN,QAAS,GACT,OAAQ,GACT,CACF,CACD,iBAAkB,CAChB,CACE,QAAS,UACT,MAAO,UACP,UAAW,kBACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,oBACZ,CACD,CAAE,QAAS,UAAW,MAAO,QAAS,UAAW,gBAAiB,CAClE,CACE,QAAS,UACT,MAAO,UACP,UAAW,kBACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,eACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,kBACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,iBACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,yCACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,2CACZ,CACD,CACE,QAAS,UACT,MAAO,QACP,UAAW,uCACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,yCACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,sCACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,yCACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,wCACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,yBACZ,CACD,CACE,QAAS,OACT,MAAO,QACP,UAAW,qBACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,OACT,MAAO,OACP,UAAW,oBACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,OACT,MAAO,SACP,UAAW,sBACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,sDACZ,CACD,CACE,QAAS,SACT,MAAO,YACP,UAAW,0DACZ,CACD,CACE,QAAS,SACT,MAAO,QACP,UAAW,mDACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,sDACZ,CACD,CACE,QAAS,SACT,MAAO,OACP,UAAW,gDACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,sDACZ,CACD,CACE,QAAS,SACT,MAAO,SACP,UAAW,oDACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,QACT,MAAO,YACP,UAAW,yBACZ,CACD,CACE,QAAS,QACT,MAAO,QACP,UAAW,qBACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,QACT,MAAO,OACP,UAAW,oBACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,uBACZ,CACD,CACE,QAAS,QACT,MAAO,SACP,UAAW,sBACZ,CACF,CACF,CAAC,CAKW,EAAiB,EAC5B,CACE,oDACA,oBACA,0CACA,8BACA,mBACA,uCACA,2EACA,+EACD,CACD,CACE,SAAU,CACR,QAAS,CACP,QAAS,gDACT,QAAS,sCACT,KAAM,yBACN,OAAQ,8BACR,MAAO,YACP,KAAM,GACP,CACD,MAAO,CACL,QAAS,GACT,UAAW,GACX,MAAO,GACP,QAAS,GACT,UAAW,GACX,KAAM,GACN,QAAS,GACT,OAAQ,GACT,CACD,KAAM,CACJ,QAAS,sDACT,GAAI,gDACJ,GAAI,sDACJ,GAAI,sDACJ,GAAI,kDACJ,GAAI,kDACJ,KAAM,SACP,CACF,CACD,gBAAiB,CACf,QAAS,UACT,MAAO,UACP,KAAM,UACP,CACD,iBAAkB,CAChB,CACE,QAAS,UACT,MAAO,UACP,UAAW,2FACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,+FACZ,CACD,CACE,QAAS,UACT,MAAO,QACP,UAAW,uFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,2FACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,+FACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,qFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,2FACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,yFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,uGACZ,CACD,CACE,QAAS,UACT,MAAO,YACP,UAAW,oGACZ,CACD,CACE,QAAS,UACT,MAAO,QACP,UAAW,8FACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,mGACZ,CACD,CACE,QAAS,UACT,MAAO,OACP,UAAW,uFACZ,CACD,CACE,QAAS,UACT,MAAO,UACP,UAAW,mGACZ,CACD,CACE,QAAS,UACT,MAAO,SACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,2GACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,qHACZ,CACD,CACE,QAAS,OACT,MAAO,QACP,UAAW,iGACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,2GACZ,CACD,CACE,QAAS,OACT,MAAO,OACP,UAAW,4FACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,2GACZ,CACD,CACE,QAAS,OACT,MAAO,SACP,UAAW,sGACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,qHACZ,CACD,CACE,QAAS,SACT,MAAO,YACP,UAAW,+HACZ,CACD,CACE,QAAS,SACT,MAAO,QACP,UAAW,6GACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,qHACZ,CACD,CACE,QAAS,SACT,MAAO,OACP,UAAW,sGACZ,CACD,CACE,QAAS,SACT,MAAO,UACP,UAAW,qHACZ,CACD,CACE,QAAS,SACT,MAAO,SACP,UAAW,gHACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,iEACZ,CACD,CACE,QAAS,QACT,MAAO,YACP,UAAW,gFACZ,CACD,CACE,QAAS,QACT,MAAO,QACP,UAAW,wEACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,iEACZ,CACD,CACE,QAAS,QACT,MAAO,OACP,UAAW,wDACZ,CACD,CACE,QAAS,QACT,MAAO,UACP,UAAW,iEACZ,CACD,CACE,QAAS,QACT,MAAO,SACP,UAAW,8DACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,mGACZ,CACD,CACE,QAAS,OACT,MAAO,QACP,UAAW,2FACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,YACP,UAAW,mGACZ,CACD,CACE,QAAS,OACT,MAAO,OACP,UAAW,yFACZ,CACD,CACE,QAAS,OACT,MAAO,UACP,UAAW,+FACZ,CACD,CACE,QAAS,OACT,MAAO,SACP,UAAW,6FACZ,CACF,CACF,CACF"}
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";function n({className:n,...r}){return t(`div`,{"data-slot":`card`,className:e(`flex flex-col gap-6 rounded-2xl bg-card py-6 text-text-positive shadow-card`,n),...r})}function r({className:n,...r}){return t(`div`,{"data-slot":`card-header`,className:e(`@container/card-header`,`grid auto-rows-min grid-rows-[auto_auto]`,`items-start gap-1.5 px-6 text-text-positive-strong`,`has-data-[slot=card-action]:grid-cols-[1fr_auto]`,`[.border-b]:pb-6`,n),...r})}function i({className:n,...r}){return t(`div`,{"data-slot":`card-title`,className:e(`font-semibold leading-none`,n),...r})}function a({className:n,...r}){return t(`div`,{"data-slot":`card-description`,className:e(`text-sm text-text-positive-weak`,n),...r})}function o({className:n,...r}){return t(`div`,{"data-slot":`card-action`,className:e(`col-start-2 row-span-2 row-start-1 self-start justify-self-end`,n),...r})}function s({className:n,...r}){return t(`div`,{"data-slot":`card-content`,className:e(`px-6 text-sm`,n),...r})}function c({className:n,...r}){return t(`div`,{"data-slot":`card-footer`,className:e(`flex items-center px-6 text-sm [.border-t]:pt-6`,n),...r})}export{c as a,a as i,o as n,r as o,s as r,i as s,n as t};
2
- //# sourceMappingURL=card-BTswGEgi.mjs.map
2
+ //# sourceMappingURL=card-C8fcblBB.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"card-BTswGEgi.mjs","names":[],"sources":["../packages/components/ui/card.tsx"],"sourcesContent":["import { cn } from '@customafk/react-toolkit/utils';\n\nfunction Card({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card\" className={cn('flex flex-col gap-6 rounded-2xl bg-card py-6 text-text-positive shadow-card', className)} {...props} />;\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n '@container/card-header',\n 'grid auto-rows-min grid-rows-[auto_auto]',\n 'items-start gap-1.5 px-6 text-text-positive-strong',\n 'has-data-[slot=card-action]:grid-cols-[1fr_auto]',\n '[.border-b]:pb-6',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-title\" className={cn('font-semibold leading-none', className)} {...props} />;\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-description\" className={cn('text-sm text-text-positive-weak', className)} {...props} />;\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-action\" className={cn('col-start-2 row-span-2 row-start-1 self-start justify-self-end', className)} {...props} />;\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-content\" className={cn('px-6 text-sm', className)} {...props} />;\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-footer\" className={cn('flex items-center px-6 text-sm [.border-t]:pt-6', className)} {...props} />;\n}\n\nexport { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };\n"],"mappings":"4FAEA,SAAS,EAAK,CAAE,YAAW,GAAG,GAAsC,CAClE,OAAO,EAAC,MAAA,CAAI,YAAU,OAAO,UAAW,EAAG,8EAA+E,EAAU,CAAE,GAAI,GAAS,CAGrJ,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OACE,EAAC,MAAA,CACC,YAAU,cACV,UAAW,EACT,yBACA,2CACA,qDACA,mDACA,mBACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAsC,CACvE,OAAO,EAAC,MAAA,CAAI,YAAU,aAAa,UAAW,EAAG,6BAA8B,EAAU,CAAE,GAAI,GAAS,CAG1G,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAsC,CAC7E,OAAO,EAAC,MAAA,CAAI,YAAU,mBAAmB,UAAW,EAAG,kCAAmC,EAAU,CAAE,GAAI,GAAS,CAGrH,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAC,MAAA,CAAI,YAAU,cAAc,UAAW,EAAG,iEAAkE,EAAU,CAAE,GAAI,GAAS,CAG/I,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAC,MAAA,CAAI,YAAU,eAAe,UAAW,EAAG,eAAgB,EAAU,CAAE,GAAI,GAAS,CAG9F,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAC,MAAA,CAAI,YAAU,cAAc,UAAW,EAAG,kDAAmD,EAAU,CAAE,GAAI,GAAS"}
1
+ {"version":3,"file":"card-C8fcblBB.mjs","names":[],"sources":["../packages/components/ui/card.tsx"],"sourcesContent":["import { cn } from '@customafk/react-toolkit/utils';\n\nfunction Card({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card\" className={cn('flex flex-col gap-6 rounded-2xl bg-card py-6 text-text-positive shadow-card', className)} {...props} />;\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n '@container/card-header',\n 'grid auto-rows-min grid-rows-[auto_auto]',\n 'items-start gap-1.5 px-6 text-text-positive-strong',\n 'has-data-[slot=card-action]:grid-cols-[1fr_auto]',\n '[.border-b]:pb-6',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-title\" className={cn('font-semibold leading-none', className)} {...props} />;\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-description\" className={cn('text-sm text-text-positive-weak', className)} {...props} />;\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-action\" className={cn('col-start-2 row-span-2 row-start-1 self-start justify-self-end', className)} {...props} />;\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-content\" className={cn('px-6 text-sm', className)} {...props} />;\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-footer\" className={cn('flex items-center px-6 text-sm [.border-t]:pt-6', className)} {...props} />;\n}\n\nexport { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };\n"],"mappings":"4FAEA,SAAS,EAAK,CAAE,YAAW,GAAG,GAAsC,CAClE,OAAO,EAAC,MAAA,CAAI,YAAU,OAAO,UAAW,EAAG,8EAA+E,EAAU,CAAE,GAAI,GAAS,CAGrJ,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OACE,EAAC,MAAA,CACC,YAAU,cACV,UAAW,EACT,yBACA,2CACA,qDACA,mDACA,mBACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAU,CAAE,YAAW,GAAG,GAAsC,CACvE,OAAO,EAAC,MAAA,CAAI,YAAU,aAAa,UAAW,EAAG,6BAA8B,EAAU,CAAE,GAAI,GAAS,CAG1G,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAsC,CAC7E,OAAO,EAAC,MAAA,CAAI,YAAU,mBAAmB,UAAW,EAAG,kCAAmC,EAAU,CAAE,GAAI,GAAS,CAGrH,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAC,MAAA,CAAI,YAAU,cAAc,UAAW,EAAG,iEAAkE,EAAU,CAAE,GAAI,GAAS,CAG/I,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAC,MAAA,CAAI,YAAU,eAAe,UAAW,EAAG,eAAgB,EAAU,CAAE,GAAI,GAAS,CAG9F,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAC,MAAA,CAAI,YAAU,cAAc,UAAW,EAAG,kDAAmD,EAAU,CAAE,GAAI,GAAS"}
@@ -1,2 +1,2 @@
1
- import{t as e}from"../card-BTswGEgi.mjs";import"../button.variants-CXNnQvXs.mjs";import{t}from"../button-CqxqZbcQ.mjs";import"../skeleton-C02GuVQz.mjs";import{t as n}from"../image-iVki2lFP.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{HeartIcon as a,ShoppingCartIcon as o}from"lucide-react";const s=({name:s,thumbnail:c,price:l})=>i(e,{className:`h-36 w-full flex-row gap-4 p-2 pr-4`,children:[r(n,{className:`aspect-square h-full flex-0`,src:c}),i(`div`,{className:`flex flex-1 flex-col gap-y-1`,children:[r(`p`,{className:`line-clamp-2 h-10 font-semibold text-sm text-text-positive`,children:s}),i(`p`,{className:`font-bold text-base text-success`,children:[l.toLocaleString(`vi-VN`),r(`small`,{className:`ml-0.5`,children:`VND`})]}),i(`div`,{className:`mb-3 flex flex-1 items-end justify-end gap-x-1`,children:[r(t,{size:`icon`,variant:`outline`,color:`muted`,className:`size-9`,children:r(a,{})}),i(t,{className:`max-w-52 max-sm:size-9 sm:flex-1`,children:[r(o,{}),r(`p`,{className:`sr-only sm:not-sr-only`,children:`Thêm vào giỏ`})]})]})]})]});export{s as GridProductCard};
1
+ import{t as e}from"../card-C8fcblBB.mjs";import"../button.variants-CgCCe7qb.mjs";import{t}from"../button-JJaTl28Z.mjs";import"../skeleton-6MpPv0K3.mjs";import{t as n}from"../image-xsA4ZQ-u.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{HeartIcon as a,ShoppingCartIcon as o}from"lucide-react";const s=({name:s,thumbnail:c,price:l})=>i(e,{className:`h-36 w-full flex-row gap-4 p-2 pr-4`,children:[r(n,{className:`aspect-square h-full flex-0`,src:c}),i(`div`,{className:`flex flex-1 flex-col gap-y-1`,children:[r(`p`,{className:`line-clamp-2 h-10 font-semibold text-sm text-text-positive`,children:s}),i(`p`,{className:`font-bold text-base text-success`,children:[l.toLocaleString(`vi-VN`),r(`small`,{className:`ml-0.5`,children:`VND`})]}),i(`div`,{className:`mb-3 flex flex-1 items-end justify-end gap-x-1`,children:[r(t,{size:`icon`,variant:`outline`,color:`muted`,className:`size-9`,children:r(a,{})}),i(t,{className:`max-w-52 max-sm:size-9 sm:flex-1`,children:[r(o,{}),r(`p`,{className:`sr-only sm:not-sr-only`,children:`Thêm vào giỏ`})]})]})]})]});export{s as GridProductCard};
2
2
  //# sourceMappingURL=grid-product-card.mjs.map
@@ -1,2 +1,2 @@
1
- import{t as e}from"../card-BTswGEgi.mjs";import"../button.variants-CXNnQvXs.mjs";import{t}from"../button-CqxqZbcQ.mjs";import"../skeleton-C02GuVQz.mjs";import{t as n}from"../image-iVki2lFP.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{HeartIcon as a,ShoppingCartIcon as o}from"lucide-react";const s=({name:s,thumbnail:c,price:l})=>i(e,{className:`size-full gap-y-2 p-2 pb-4`,children:[r(n,{src:c,className:`aspect-square`}),i(`div`,{className:`flex flex-col gap-y-1`,children:[r(`p`,{className:`line-clamp-2 h-10 text-sm font-semibold`,children:s}),i(`p`,{className:`text-success text-base font-bold`,children:[l.toLocaleString(`vi-VN`),r(`small`,{className:`ml-0.5`,children:`VND`})]}),i(`div`,{className:`mt-1 flex gap-x-1`,children:[i(t,{className:`flex-1`,children:[r(o,{}),`Thêm vào giỏ`]}),r(t,{size:`icon`,variant:`outline`,color:`muted`,className:`size-9`,children:r(a,{})})]})]})]});export{s as ProductCard};
1
+ import{t as e}from"../card-C8fcblBB.mjs";import"../button.variants-CgCCe7qb.mjs";import{t}from"../button-JJaTl28Z.mjs";import"../skeleton-6MpPv0K3.mjs";import{t as n}from"../image-xsA4ZQ-u.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{HeartIcon as a,ShoppingCartIcon as o}from"lucide-react";const s=({name:s,thumbnail:c,price:l})=>i(e,{className:`size-full gap-y-2 p-2 pb-4`,children:[r(n,{src:c,className:`aspect-square`}),i(`div`,{className:`flex flex-col gap-y-1`,children:[r(`p`,{className:`line-clamp-2 h-10 text-sm font-semibold`,children:s}),i(`p`,{className:`text-success text-base font-bold`,children:[l.toLocaleString(`vi-VN`),r(`small`,{className:`ml-0.5`,children:`VND`})]}),i(`div`,{className:`mt-1 flex gap-x-1`,children:[i(t,{className:`flex-1`,children:[r(o,{}),`Thêm vào giỏ`]}),r(t,{size:`icon`,variant:`outline`,color:`muted`,className:`size-9`,children:r(a,{})})]})]})]});export{s as ProductCard};
2
2
  //# sourceMappingURL=product-card.mjs.map
@@ -1,2 +1,2 @@
1
- "use client";import{a as e,i as t,n,o as r,r as i,s as a,t as o}from"../card-BTswGEgi.mjs";import{jsx as s,jsxs as c}from"react/jsx-runtime";const l=({title:l,description:u,action:d,footer:f,children:p})=>c(o,{children:[c(r,{children:[s(a,{children:l}),s(t,{children:u}),d&&s(n,{children:d})]}),s(i,{children:p}),f&&s(e,{children:f})]});export{l as SimpleCard};
1
+ "use client";import{a as e,i as t,n,o as r,r as i,s as a,t as o}from"../card-C8fcblBB.mjs";import{jsx as s,jsxs as c}from"react/jsx-runtime";const l=({title:l,description:u,action:d,footer:f,children:p})=>c(o,{children:[c(r,{children:[s(a,{children:l}),s(t,{children:u}),d&&s(n,{children:d})]}),s(i,{children:p}),f&&s(e,{children:f})]});export{l as SimpleCard};
2
2
  //# sourceMappingURL=simple-card.mjs.map
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{XIcon as n}from"lucide-react";const r=({className:r,...i})=>t(`button`,{className:e(`flex cursor-pointer items-center justify-center rounded-[100px] p-2 text-text-positive-weak transition-colors hover:bg-muted-muted hover:text-text-positive active:bg-muted-weak active:text-text-positive-strong disabled:pointer-events-none disabled:opacity-60`,r),...i,children:t(n,{size:24})});export{r as t};
2
- //# sourceMappingURL=close-Bb5Pi28f.mjs.map
2
+ //# sourceMappingURL=close-B_PnUzNN.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"close-Bb5Pi28f.mjs","names":["CloseButton: React.FC<React.ComponentProps<'button'>>"],"sources":["../packages/components/ui/buttons/close.tsx"],"sourcesContent":["import { XIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nexport const CloseButton: React.FC<React.ComponentProps<'button'>> = ({ className, ...props }) => {\n return (\n <button\n className={cn(\n 'flex cursor-pointer items-center justify-center rounded-[100px] p-2 text-text-positive-weak transition-colors hover:bg-muted-muted hover:text-text-positive active:bg-muted-weak active:text-text-positive-strong disabled:pointer-events-none disabled:opacity-60',\n className\n )}\n {...props}\n >\n <XIcon size={24} />\n </button>\n );\n};\n"],"mappings":"iIAIA,MAAaA,GAAyD,CAAE,YAAW,GAAG,KAElF,EAAC,SAAA,CACC,UAAW,EACT,qQACA,EACD,CACD,GAAI,WAEJ,EAAC,EAAA,CAAM,KAAM,GAAA,CAAM,EACZ"}
1
+ {"version":3,"file":"close-B_PnUzNN.mjs","names":["CloseButton: React.FC<React.ComponentProps<'button'>>"],"sources":["../packages/components/ui/buttons/close.tsx"],"sourcesContent":["import { XIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nexport const CloseButton: React.FC<React.ComponentProps<'button'>> = ({ className, ...props }) => {\n return (\n <button\n className={cn(\n 'flex cursor-pointer items-center justify-center rounded-[100px] p-2 text-text-positive-weak transition-colors hover:bg-muted-muted hover:text-text-positive active:bg-muted-weak active:text-text-positive-strong disabled:pointer-events-none disabled:opacity-60',\n className\n )}\n {...props}\n >\n <XIcon size={24} />\n </button>\n );\n};\n"],"mappings":"iIAIA,MAAaA,GAAyD,CAAE,YAAW,GAAG,KAElF,EAAC,SAAA,CACC,UAAW,EACT,qQACA,EACD,CACD,GAAI,WAEJ,EAAC,EAAA,CAAM,KAAM,GAAA,CAAM,EACZ"}
@@ -1,2 +1,2 @@
1
- import{i as e,l as t,o as n,r,t as i}from"./dialog-D5bBgIs8.mjs";import{cn as a}from"@customafk/react-toolkit/utils";import{jsx as o,jsxs as s}from"react/jsx-runtime";import{SearchIcon as c}from"lucide-react";import{Command as l}from"cmdk";function u({className:e,...t}){return o(l,{"data-slot":`command`,className:a(`flex size-full flex-col overflow-hidden rounded-md border-border-weak bg-popover text-text-positive`,e),...t})}function d({title:c=`Command Palette`,description:l=`Search for a command to run...`,children:d,className:f,showCloseButton:p=!0,...m}){return s(i,{...m,children:[s(n,{className:`sr-only`,children:[o(t,{children:c}),o(e,{children:l})]}),o(r,{className:a(`overflow-hidden p-0`,f),showCloseButton:p,children:o(u,{className:a(`**:[[cmdk-group-heading]]:text-text-positive-muted`,`**:data-[slot=command-input-wrapper]:h-12`,`**:[[cmdk-group-heading]]:px-2`,`**:[[cmdk-group-heading]]:font-medium`,`**:[[cmdk-group]]:px-2`,`[&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0`,`[&_[cmdk-input-wrapper]_svg]:size-5`,`**:[[cmdk-input]]:h-12`,`**:[[cmdk-item]]:px-2`,`**:[[cmdk-item]]:py-3`,`[&_[cmdk-item]_svg]:size-5`),children:d})})]})}function f({className:e,...t}){return s(`div`,{"data-slot":`command-input-wrapper`,className:`flex h-9 items-center gap-2 border-border-weak border-b px-3`,children:[o(c,{className:`size-4 shrink-0 opacity-50`}),o(l.Input,{"data-slot":`command-input`,className:a(`flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden`,`placeholder:text-text-positive-muted`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,e),...t})]})}function p({className:e,...t}){return o(l.List,{"data-slot":`command-list`,className:a(`max-h-80 scroll-py-1 overflow-y-auto overflow-x-hidden`,e),...t})}function m({...e}){return o(l.Empty,{"data-slot":`command-empty`,className:`py-6 text-center text-sm`,...e})}function h({className:e,...t}){return o(l.Group,{"data-slot":`command-group`,className:a(`text-text-positive`,`overflow-hidden p-1`,`**:[[cmdk-group-heading]]:text-text-positive-weak`,`**:[[cmdk-group-heading]]:px-2`,`**:[[cmdk-group-heading]]:py-1.5`,`**:[[cmdk-group-heading]]:text-xs`,`**:[[cmdk-group-heading]]:font-medium`,e),...t})}function g({className:e,...t}){return o(l.Separator,{"data-slot":`command-separator`,className:a(`-mx-1 h-px bg-border-weak`,e),...t})}function _({className:e,...t}){return o(l.Item,{"data-slot":`command-item`,className:a(`relative flex cursor-pointer select-none items-center gap-2 rounded-md p-2.5 text-sm outline-hidden transition-all duration-300`,`active:ring-border`,`active:opacity-60`,`active:ring-4`,`data-[selected=true]:bg-muted-muted`,`data-[selected=true]:text-text-positive-strong`,`data-[disabled=true]:opacity-50`,`data-[disabled=true]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-muted`,e),...t})}function v({className:e,...t}){return o(`span`,{"data-slot":`command-shortcut`,className:a(`ml-auto text-text-positive-muted text-xs tracking-widest`,e),...t})}export{f as a,g as c,h as i,v as l,d as n,_ as o,m as r,p as s,u as t};
2
- //# sourceMappingURL=command-D_f6JoHE.mjs.map
1
+ import{i as e,l as t,o as n,r,t as i}from"./dialog-4ZJcWPar.mjs";import{cn as a}from"@customafk/react-toolkit/utils";import{jsx as o,jsxs as s}from"react/jsx-runtime";import{SearchIcon as c}from"lucide-react";import{Command as l}from"cmdk";function u({className:e,...t}){return o(l,{"data-slot":`command`,className:a(`flex size-full flex-col overflow-hidden rounded-md border-border-weak bg-popover text-text-positive`,e),...t})}function d({title:c=`Command Palette`,description:l=`Search for a command to run...`,children:d,className:f,showCloseButton:p=!0,...m}){return s(i,{...m,children:[s(n,{className:`sr-only`,children:[o(t,{children:c}),o(e,{children:l})]}),o(r,{className:a(`overflow-hidden p-0`,f),showCloseButton:p,children:o(u,{className:a(`**:[[cmdk-group-heading]]:text-text-positive-muted`,`**:data-[slot=command-input-wrapper]:h-12`,`**:[[cmdk-group-heading]]:px-2`,`**:[[cmdk-group-heading]]:font-medium`,`**:[[cmdk-group]]:px-2`,`[&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0`,`[&_[cmdk-input-wrapper]_svg]:size-5`,`**:[[cmdk-input]]:h-12`,`**:[[cmdk-item]]:px-2`,`**:[[cmdk-item]]:py-3`,`[&_[cmdk-item]_svg]:size-5`),children:d})})]})}function f({className:e,...t}){return s(`div`,{"data-slot":`command-input-wrapper`,className:`flex h-9 items-center gap-2 border-border-weak border-b px-3`,children:[o(c,{className:`size-4 shrink-0 opacity-50`}),o(l.Input,{"data-slot":`command-input`,className:a(`flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden`,`placeholder:text-text-positive-muted`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,e),...t})]})}function p({className:e,...t}){return o(l.List,{"data-slot":`command-list`,className:a(`max-h-80 scroll-py-1 overflow-y-auto overflow-x-hidden`,e),...t})}function m({...e}){return o(l.Empty,{"data-slot":`command-empty`,className:`py-6 text-center text-sm`,...e})}function h({className:e,...t}){return o(l.Group,{"data-slot":`command-group`,className:a(`text-text-positive`,`overflow-hidden p-1`,`**:[[cmdk-group-heading]]:text-text-positive-weak`,`**:[[cmdk-group-heading]]:px-2`,`**:[[cmdk-group-heading]]:py-1.5`,`**:[[cmdk-group-heading]]:text-xs`,`**:[[cmdk-group-heading]]:font-medium`,e),...t})}function g({className:e,...t}){return o(l.Separator,{"data-slot":`command-separator`,className:a(`-mx-1 h-px bg-border-weak`,e),...t})}function _({className:e,...t}){return o(l.Item,{"data-slot":`command-item`,className:a(`relative flex cursor-pointer select-none items-center gap-2 rounded-md p-2.5 text-sm outline-hidden transition-all duration-300`,`active:ring-border`,`active:opacity-60`,`active:ring-4`,`data-[selected=true]:bg-muted-muted`,`data-[selected=true]:text-text-positive-strong`,`data-[disabled=true]:opacity-50`,`data-[disabled=true]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-muted`,e),...t})}function v({className:e,...t}){return o(`span`,{"data-slot":`command-shortcut`,className:a(`ml-auto text-text-positive-muted text-xs tracking-widest`,e),...t})}export{f as a,g as c,h as i,v as l,d as n,_ as o,m as r,p as s,u as t};
2
+ //# sourceMappingURL=command-CtWxCsMm.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-D_f6JoHE.mjs","names":["Command","CommandPrimitive"],"sources":["../packages/components/ui/command.tsx"],"sourcesContent":["'use client';\n\nimport { SearchIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from '@/components/ui/dialog';\n\nimport { Command as CommandPrimitive } from 'cmdk';\n\nfunction Command({ className, ...props }: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn('flex size-full flex-col overflow-hidden rounded-md border-border-weak bg-popover text-text-positive', className)}\n {...props}\n />\n );\n}\n\nfunction CommandDialog({\n title = 'Command Palette',\n description = 'Search for a command to run...',\n children,\n className,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof Dialog> & {\n title?: string;\n description?: string;\n className?: string;\n showCloseButton?: boolean;\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent className={cn('overflow-hidden p-0', className)} showCloseButton={showCloseButton}>\n <Command\n className={cn(\n '**:[[cmdk-group-heading]]:text-text-positive-muted',\n '**:data-[slot=command-input-wrapper]:h-12',\n '**:[[cmdk-group-heading]]:px-2',\n '**:[[cmdk-group-heading]]:font-medium',\n '**:[[cmdk-group]]:px-2',\n '[&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0',\n '[&_[cmdk-input-wrapper]_svg]:size-5',\n '**:[[cmdk-input]]:h-12',\n '**:[[cmdk-item]]:px-2',\n '**:[[cmdk-item]]:py-3',\n '[&_[cmdk-item]_svg]:size-5'\n )}\n >\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n}\n\nfunction CommandInput({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div data-slot=\"command-input-wrapper\" className=\"flex h-9 items-center gap-2 border-border-weak border-b px-3\">\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n 'flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden',\n 'placeholder:text-text-positive-muted',\n 'disabled:cursor-not-allowed',\n 'disabled:opacity-50',\n className\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction CommandList({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.List>) {\n return <CommandPrimitive.List data-slot=\"command-list\" className={cn('max-h-80 scroll-py-1 overflow-y-auto overflow-x-hidden', className)} {...props} />;\n}\n\nfunction CommandEmpty({ ...props }: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return <CommandPrimitive.Empty data-slot=\"command-empty\" className=\"py-6 text-center text-sm\" {...props} />;\n}\n\nfunction CommandGroup({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n 'text-text-positive',\n 'overflow-hidden p-1',\n '**:[[cmdk-group-heading]]:text-text-positive-weak',\n '**:[[cmdk-group-heading]]:px-2',\n '**:[[cmdk-group-heading]]:py-1.5',\n '**:[[cmdk-group-heading]]:text-xs',\n '**:[[cmdk-group-heading]]:font-medium',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandSeparator({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return <CommandPrimitive.Separator data-slot=\"command-separator\" className={cn('-mx-1 h-px bg-border-weak', className)} {...props} />;\n}\n\nfunction CommandItem({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n 'relative flex cursor-pointer select-none items-center gap-2 rounded-md p-2.5 text-sm outline-hidden transition-all duration-300',\n 'active:ring-border',\n 'active:opacity-60',\n 'active:ring-4',\n 'data-[selected=true]:bg-muted-muted',\n 'data-[selected=true]:text-text-positive-strong',\n 'data-[disabled=true]:opacity-50',\n 'data-[disabled=true]:pointer-events-none',\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-muted\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return <span data-slot=\"command-shortcut\" className={cn('ml-auto text-text-positive-muted text-xs tracking-widest', className)} {...props} />;\n}\n\nexport { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };\n"],"mappings":"gPAUA,SAASA,EAAQ,CAAE,YAAW,GAAG,GAAwD,CACvF,OACE,EAACC,EAAAA,CACC,YAAU,UACV,UAAW,EAAG,sGAAuG,EAAU,CAC/H,GAAI,GACJ,CAIN,SAAS,EAAc,CACrB,QAAQ,kBACR,cAAc,iCACd,WACA,YACA,kBAAkB,GAClB,GAAG,GAMF,CACD,OACE,EAAC,EAAA,CAAO,GAAI,YACV,EAAC,EAAA,CAAa,UAAU,oBACtB,EAAC,EAAA,CAAA,SAAa,EAAA,CAAoB,CAClC,EAAC,EAAA,CAAA,SAAmB,EAAA,CAAgC,CAAA,EACvC,CACf,EAAC,EAAA,CAAc,UAAW,EAAG,sBAAuB,EAAU,CAAmB,2BAC/E,EAACD,EAAAA,CACC,UAAW,EACT,qDACA,4CACA,iCACA,wCACA,yBACA,oDACA,sCACA,yBACA,wBACA,wBACA,6BACD,CAEA,YACO,EACI,CAAA,EACT,CAIb,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAAC,MAAA,CAAI,YAAU,wBAAwB,UAAU,yEAC/C,EAAC,EAAA,CAAW,UAAU,6BAAA,CAA+B,CACrD,EAACC,EAAiB,MAAA,CAChB,YAAU,gBACV,UAAW,EACT,yEACA,uCACA,8BACA,sBACA,EACD,CACD,GAAI,GACJ,CAAA,EACE,CAIV,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAiB,KAAA,CAAK,YAAU,eAAe,UAAW,EAAG,yDAA0D,EAAU,CAAE,GAAI,GAAS,CAG1J,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAACA,EAAiB,MAAA,CAAM,YAAU,gBAAgB,UAAU,2BAA2B,GAAI,GAAS,CAG7G,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAACA,EAAiB,MAAA,CAChB,YAAU,gBACV,UAAW,EACT,qBACA,sBACA,oDACA,iCACA,mCACA,oCACA,wCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAiB,CAAE,YAAW,GAAG,GAAkE,CAC1G,OAAO,EAACA,EAAiB,UAAA,CAAU,YAAU,oBAAoB,UAAW,EAAG,4BAA6B,EAAU,CAAE,GAAI,GAAS,CAGvI,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OACE,EAACA,EAAiB,KAAA,CAChB,YAAU,eACV,UAAW,EACT,kIACA,qBACA,oBACA,gBACA,sCACA,iDACA,kCACA,2CACA,mBACA,8BACA,uCACA,yDACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAuC,CAC9E,OAAO,EAAC,OAAA,CAAK,YAAU,mBAAmB,UAAW,EAAG,2DAA4D,EAAU,CAAE,GAAI,GAAS"}
1
+ {"version":3,"file":"command-CtWxCsMm.mjs","names":["Command","CommandPrimitive"],"sources":["../packages/components/ui/command.tsx"],"sourcesContent":["'use client';\n\nimport { SearchIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from '@/components/ui/dialog';\n\nimport { Command as CommandPrimitive } from 'cmdk';\n\nfunction Command({ className, ...props }: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn('flex size-full flex-col overflow-hidden rounded-md border-border-weak bg-popover text-text-positive', className)}\n {...props}\n />\n );\n}\n\nfunction CommandDialog({\n title = 'Command Palette',\n description = 'Search for a command to run...',\n children,\n className,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof Dialog> & {\n title?: string;\n description?: string;\n className?: string;\n showCloseButton?: boolean;\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent className={cn('overflow-hidden p-0', className)} showCloseButton={showCloseButton}>\n <Command\n className={cn(\n '**:[[cmdk-group-heading]]:text-text-positive-muted',\n '**:data-[slot=command-input-wrapper]:h-12',\n '**:[[cmdk-group-heading]]:px-2',\n '**:[[cmdk-group-heading]]:font-medium',\n '**:[[cmdk-group]]:px-2',\n '[&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0',\n '[&_[cmdk-input-wrapper]_svg]:size-5',\n '**:[[cmdk-input]]:h-12',\n '**:[[cmdk-item]]:px-2',\n '**:[[cmdk-item]]:py-3',\n '[&_[cmdk-item]_svg]:size-5'\n )}\n >\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n}\n\nfunction CommandInput({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div data-slot=\"command-input-wrapper\" className=\"flex h-9 items-center gap-2 border-border-weak border-b px-3\">\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n 'flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden',\n 'placeholder:text-text-positive-muted',\n 'disabled:cursor-not-allowed',\n 'disabled:opacity-50',\n className\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction CommandList({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.List>) {\n return <CommandPrimitive.List data-slot=\"command-list\" className={cn('max-h-80 scroll-py-1 overflow-y-auto overflow-x-hidden', className)} {...props} />;\n}\n\nfunction CommandEmpty({ ...props }: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return <CommandPrimitive.Empty data-slot=\"command-empty\" className=\"py-6 text-center text-sm\" {...props} />;\n}\n\nfunction CommandGroup({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n 'text-text-positive',\n 'overflow-hidden p-1',\n '**:[[cmdk-group-heading]]:text-text-positive-weak',\n '**:[[cmdk-group-heading]]:px-2',\n '**:[[cmdk-group-heading]]:py-1.5',\n '**:[[cmdk-group-heading]]:text-xs',\n '**:[[cmdk-group-heading]]:font-medium',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandSeparator({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return <CommandPrimitive.Separator data-slot=\"command-separator\" className={cn('-mx-1 h-px bg-border-weak', className)} {...props} />;\n}\n\nfunction CommandItem({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n 'relative flex cursor-pointer select-none items-center gap-2 rounded-md p-2.5 text-sm outline-hidden transition-all duration-300',\n 'active:ring-border',\n 'active:opacity-60',\n 'active:ring-4',\n 'data-[selected=true]:bg-muted-muted',\n 'data-[selected=true]:text-text-positive-strong',\n 'data-[disabled=true]:opacity-50',\n 'data-[disabled=true]:pointer-events-none',\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-muted\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return <span data-slot=\"command-shortcut\" className={cn('ml-auto text-text-positive-muted text-xs tracking-widest', className)} {...props} />;\n}\n\nexport { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };\n"],"mappings":"gPAUA,SAASA,EAAQ,CAAE,YAAW,GAAG,GAAwD,CACvF,OACE,EAACC,EAAAA,CACC,YAAU,UACV,UAAW,EAAG,sGAAuG,EAAU,CAC/H,GAAI,GACJ,CAIN,SAAS,EAAc,CACrB,QAAQ,kBACR,cAAc,iCACd,WACA,YACA,kBAAkB,GAClB,GAAG,GAMF,CACD,OACE,EAAC,EAAA,CAAO,GAAI,YACV,EAAC,EAAA,CAAa,UAAU,oBACtB,EAAC,EAAA,CAAA,SAAa,EAAA,CAAoB,CAClC,EAAC,EAAA,CAAA,SAAmB,EAAA,CAAgC,CAAA,EACvC,CACf,EAAC,EAAA,CAAc,UAAW,EAAG,sBAAuB,EAAU,CAAmB,2BAC/E,EAACD,EAAAA,CACC,UAAW,EACT,qDACA,4CACA,iCACA,wCACA,yBACA,oDACA,sCACA,yBACA,wBACA,wBACA,6BACD,CAEA,YACO,EACI,CAAA,EACT,CAIb,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAAC,MAAA,CAAI,YAAU,wBAAwB,UAAU,yEAC/C,EAAC,EAAA,CAAW,UAAU,6BAAA,CAA+B,CACrD,EAACC,EAAiB,MAAA,CAChB,YAAU,gBACV,UAAW,EACT,yEACA,uCACA,8BACA,sBACA,EACD,CACD,GAAI,GACJ,CAAA,EACE,CAIV,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAiB,KAAA,CAAK,YAAU,eAAe,UAAW,EAAG,yDAA0D,EAAU,CAAE,GAAI,GAAS,CAG1J,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAACA,EAAiB,MAAA,CAAM,YAAU,gBAAgB,UAAU,2BAA2B,GAAI,GAAS,CAG7G,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAACA,EAAiB,MAAA,CAChB,YAAU,gBACV,UAAW,EACT,qBACA,sBACA,oDACA,iCACA,mCACA,oCACA,wCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAiB,CAAE,YAAW,GAAG,GAAkE,CAC1G,OAAO,EAACA,EAAiB,UAAA,CAAU,YAAU,oBAAoB,UAAW,EAAG,4BAA6B,EAAU,CAAE,GAAI,GAAS,CAGvI,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OACE,EAACA,EAAiB,KAAA,CAChB,YAAU,eACV,UAAW,EACT,kIACA,qBACA,oBACA,gBACA,sCACA,iDACA,kCACA,2CACA,mBACA,8BACA,uCACA,yDACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAuC,CAC9E,OAAO,EAAC,OAAA,CAAK,YAAU,mBAAmB,UAAW,EAAG,2DAA4D,EAAU,CAAE,GAAI,GAAS"}
@@ -1,4 +1,4 @@
1
- import { t as ECountry } from "../types-DfDk2h0N.cjs";
1
+ import { t as ECountry } from "../types-CwAGHByL.cjs";
2
2
 
3
3
  //#region packages/components/data-display/country.d.ts
4
4
  type Props = {
@@ -1,4 +1,4 @@
1
- import { t as ECountry } from "../types-CIlhkWg6.mjs";
1
+ import { t as ECountry } from "../types-BB_E2uE0.mjs";
2
2
 
3
3
  //#region packages/components/data-display/country.d.ts
4
4
  type Props = {
@@ -1,2 +1,2 @@
1
- import{t as e}from"../types-BpxD38pa.mjs";import{Flex as t}from"../layouts/flex.mjs";import{Paragraph as n}from"../typography/paragraph.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{useMemo as a}from"react";import o from"react-country-flag";const s=({country:s})=>{let c=a(()=>({[e.VIETNAM]:`VN`,[e.USA]:`US`,[e.JAPAN]:`JP`,[e.CHINA]:`CN`,[e.KOREA]:`KR`,[e.SINGAPORE]:`SG`,[e.MALAYSIA]:`MY`,[e.INDONESIA]:`ID`,[e.TAIWAN]:`TW`,[e.THAILAND]:`TH`}),[]);return s?i(t,{padding:`none`,className:`h-4 px-1`,children:[r(o,{svg:!0,countryCode:s?c[s]:`VN`,className:`emojiFlag border`}),i(n,{variant:`sm`,children:[s===e.VIETNAM&&`Vietnam`,s===e.USA&&`America`,s===e.JAPAN&&`Japan`,s===e.CHINA&&`China`,s===e.KOREA&&`Korea`,s===e.SINGAPORE&&`Singapore`,s===e.MALAYSIA&&`Malaysia`,s===e.INDONESIA&&`Indonesia`,s===e.TAIWAN&&`Taiwan`,s===e.THAILAND&&`Thailand`]})]}):r(t,{padding:`none`,className:`h-4 px-1`,children:r(n,{variant:`muted`,className:`line-clamp-1 text-xs`,children:`No country`})})};export{s as CountryDisplay};
1
+ import{t as e}from"../types-BQMTFD_z.mjs";import{Flex as t}from"../layouts/flex.mjs";import{Paragraph as n}from"../typography/paragraph.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{useMemo as a}from"react";import o from"react-country-flag";const s=({country:s})=>{let c=a(()=>({[e.VIETNAM]:`VN`,[e.USA]:`US`,[e.JAPAN]:`JP`,[e.CHINA]:`CN`,[e.KOREA]:`KR`,[e.SINGAPORE]:`SG`,[e.MALAYSIA]:`MY`,[e.INDONESIA]:`ID`,[e.TAIWAN]:`TW`,[e.THAILAND]:`TH`}),[]);return s?i(t,{padding:`none`,className:`h-4 px-1`,children:[r(o,{svg:!0,countryCode:s?c[s]:`VN`,className:`emojiFlag border`}),i(n,{variant:`sm`,children:[s===e.VIETNAM&&`Vietnam`,s===e.USA&&`America`,s===e.JAPAN&&`Japan`,s===e.CHINA&&`China`,s===e.KOREA&&`Korea`,s===e.SINGAPORE&&`Singapore`,s===e.MALAYSIA&&`Malaysia`,s===e.INDONESIA&&`Indonesia`,s===e.TAIWAN&&`Taiwan`,s===e.THAILAND&&`Thailand`]})]}):r(t,{padding:`none`,className:`h-4 px-1`,children:r(n,{variant:`muted`,className:`line-clamp-1 text-xs`,children:`No country`})})};export{s as CountryDisplay};
2
2
  //# sourceMappingURL=country.mjs.map
@@ -1,2 +1,2 @@
1
- import{t as e}from"../date-DtgYKyyk.mjs";import{Badge as t}from"../ui/badge.mjs";import{i as n,n as r,r as i,t as a}from"../tooltip-B7cSlbI6.mjs";import{jsx as o,jsxs as s}from"react/jsx-runtime";const c=({date:c})=>o(i,{children:s(a,{children:[o(n,{asChild:!0,children:o(t,{className:`h-fit`,children:o(e,{date:c,format:`medium`,className:`font-normal text-white`})})}),o(r,{children:o(e,{date:c,format:`full`,showTime:!0,className:`!font-[Inter] font-medium`})})]})});export{c as DateTooltip};
1
+ import{t as e}from"../date-SmlhDFZs.mjs";import{Badge as t}from"../ui/badge.mjs";import{i as n,n as r,r as i,t as a}from"../tooltip-DGiat0Dt.mjs";import{jsx as o,jsxs as s}from"react/jsx-runtime";const c=({date:c})=>o(i,{children:s(a,{children:[o(n,{asChild:!0,children:o(t,{className:`h-fit`,children:o(e,{date:c,format:`medium`,className:`font-normal text-white`})})}),o(r,{children:o(e,{date:c,format:`full`,showTime:!0,className:`!font-[Inter] font-medium`})})]})});export{c as DateTooltip};
2
2
  //# sourceMappingURL=date-tooltip.mjs.map
@@ -1 +1 @@
1
- import{t as e}from"../date-DtgYKyyk.mjs";export{e as DateDisplay};
1
+ import{t as e}from"../date-SmlhDFZs.mjs";export{e as DateDisplay};
@@ -1,2 +1,2 @@
1
- import{Paragraph as e}from"../typography/paragraph.mjs";import{i as t,n,t as r}from"../tooltip-B7cSlbI6.mjs";import{jsx as i,jsxs as a}from"react/jsx-runtime";const o=({name:o})=>a(r,{children:[i(t,{children:i(e,{variant:`sm`,className:`line-clamp-2 w-full truncate pb-px text-start text-wrap`,children:o})}),i(n,{align:`start`,className:`max-w-80 text-wrap break-keep whitespace-pre-line`,children:o})]});export{o as NameDisplay};
1
+ import{Paragraph as e}from"../typography/paragraph.mjs";import{i as t,n,t as r}from"../tooltip-DGiat0Dt.mjs";import{jsx as i,jsxs as a}from"react/jsx-runtime";const o=({name:o})=>a(r,{children:[i(t,{children:i(e,{variant:`sm`,className:`line-clamp-2 w-full truncate pb-px text-start text-wrap`,children:o})}),i(n,{align:`start`,className:`max-w-80 text-wrap break-keep whitespace-pre-line`,children:o})]});export{o as NameDisplay};
2
2
  //# sourceMappingURL=name.mjs.map
@@ -1,2 +1,2 @@
1
- import{i as e,n as t,t as n}from"../tooltip-B7cSlbI6.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";const a=({value:a})=>i(n,{children:[r(e,{asChild:!0,children:r(`p`,{className:`font-number text-secondary-foreground text-sm`,children:a.replace(/(\d{3})(\d{3})(\d{4})/,`($1) $2-$3`)})}),r(t,{align:`start`,children:r(`p`,{children:a.slice(1).replace(/(\d{2})(\d{3})(\d{4})/,`(00) (+84) ($1) $2-$3`)})})]});export{a as PhoneNumberDisplay};
1
+ import{i as e,n as t,t as n}from"../tooltip-DGiat0Dt.mjs";import{jsx as r,jsxs as i}from"react/jsx-runtime";const a=({value:a})=>i(n,{children:[r(e,{asChild:!0,children:r(`p`,{className:`font-number text-secondary-foreground text-sm`,children:a.replace(/(\d{3})(\d{3})(\d{4})/,`($1) $2-$3`)})}),r(t,{align:`start`,children:r(`p`,{children:a.slice(1).replace(/(\d{2})(\d{3})(\d{4})/,`(00) (+84) ($1) $2-$3`)})})]});export{a as PhoneNumberDisplay};
2
2
  //# sourceMappingURL=phone-number.mjs.map
@@ -1,4 +1,4 @@
1
- import { n as ERole } from "../types-DfDk2h0N.cjs";
1
+ import { n as ERole } from "../types-CwAGHByL.cjs";
2
2
 
3
3
  //#region packages/components/data-display/role-badge.d.ts
4
4
  type Props = {
@@ -1,4 +1,4 @@
1
- import { n as ERole } from "../types-CIlhkWg6.mjs";
1
+ import { n as ERole } from "../types-BB_E2uE0.mjs";
2
2
 
3
3
  //#region packages/components/data-display/role-badge.d.ts
4
4
  type Props = {
@@ -1,2 +1,2 @@
1
- import{n as e}from"../types-BpxD38pa.mjs";import{Badge as t}from"../ui/badge.mjs";import{jsxs as n}from"react/jsx-runtime";import{useMemo as r}from"react";const i=({status:i})=>n(t,{color:r(()=>({[e.ADMIN]:`red`,[e.SUPER_ADMIN]:`purple`,[e.MODERATOR]:`indigo`,[e.STAFF]:`green`,[e.USER]:`blue`}),[])[i],className:`min-w-24 justify-center`,children:[i===e.SUPER_ADMIN&&`Super Admin`,i===e.ADMIN&&`Admin`,i===e.MODERATOR&&`Moderator`,i===e.STAFF&&`Staff`,i===e.USER&&`User`]});export{i as RoleBadge};
1
+ import{n as e}from"../types-BQMTFD_z.mjs";import{Badge as t}from"../ui/badge.mjs";import{jsxs as n}from"react/jsx-runtime";import{useMemo as r}from"react";const i=({status:i})=>n(t,{color:r(()=>({[e.ADMIN]:`red`,[e.SUPER_ADMIN]:`purple`,[e.MODERATOR]:`indigo`,[e.STAFF]:`green`,[e.USER]:`blue`}),[])[i],className:`min-w-24 justify-center`,children:[i===e.SUPER_ADMIN&&`Super Admin`,i===e.ADMIN&&`Admin`,i===e.MODERATOR&&`Moderator`,i===e.STAFF&&`Staff`,i===e.USER&&`User`]});export{i as RoleBadge};
2
2
  //# sourceMappingURL=role-badge.mjs.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime20 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime10 from "react/jsx-runtime";
2
2
  import * as react0 from "react";
3
3
 
4
4
  //#region packages/components/data-display/statistic.d.ts
@@ -23,7 +23,7 @@ declare const Statistic: react0.MemoExoticComponent<({
23
23
  showTrailingZeros,
24
24
  size,
25
25
  value
26
- }: Props) => react_jsx_runtime20.JSX.Element>;
26
+ }: Props) => react_jsx_runtime10.JSX.Element>;
27
27
  //#endregion
28
28
  export { Statistic };
29
29
  //# sourceMappingURL=statistic.d.cts.map
@@ -1,2 +1,2 @@
1
- import{Flex as e}from"../layouts/flex.mjs";import{Paragraph as t}from"../typography/paragraph.mjs";import{n,t as r}from"../avatar-Cp9PebV0.mjs";import{jsx as i,jsxs as a}from"react/jsx-runtime";import{UserRoundIcon as o}from"lucide-react";import{colorHashLight as s}from"@customafk/react-toolkit/color-hash";const c=({uuid:c,username:l,email:u})=>a(e,{wrap:!1,gap:`sm`,padding:`none`,children:[i(r,{className:`shadow-card size-10`,children:i(n,{style:{backgroundColor:s.hex(c)},children:i(o,{size:28,className:`text-white`})})}),a(e,{vertical:!0,padding:`none`,gap:`none`,align:`start`,children:[i(t,{className:`text-text-positive text-sm font-medium`,children:l}),i(t,{variant:`sm`,className:`text-text-positive-weak !mt-0 text-xs`,children:u})]})]});export{c as UserDataDisplay};
1
+ import{Flex as e}from"../layouts/flex.mjs";import{Paragraph as t}from"../typography/paragraph.mjs";import{n,t as r}from"../avatar-BNU7KL48.mjs";import{jsx as i,jsxs as a}from"react/jsx-runtime";import{UserRoundIcon as o}from"lucide-react";import{colorHashLight as s}from"@customafk/react-toolkit/color-hash";const c=({uuid:c,username:l,email:u})=>a(e,{wrap:!1,gap:`sm`,padding:`none`,children:[i(r,{className:`shadow-card size-10`,children:i(n,{style:{backgroundColor:s.hex(c)},children:i(o,{size:28,className:`text-white`})})}),a(e,{vertical:!0,padding:`none`,gap:`none`,align:`start`,children:[i(t,{className:`text-text-positive text-sm font-medium`,children:l}),i(t,{variant:`sm`,className:`text-text-positive-weak !mt-0 text-xs`,children:u})]})]});export{c as UserDataDisplay};
2
2
  //# sourceMappingURL=user.mjs.map
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{useCallback as n,useMemo as r}from"react";import{format as i,isThisMonth as a,isThisWeek as o,isThisYear as s,isToday as c,isTomorrow as l,isValid as u,isYesterday as d,parseISO as f}from"@customafk/react-toolkit/date-fns";const p={weekdays:[`Chủ Nhật`,`Thứ Hai`,`Thứ Ba`,`Thứ Tư`,`Thứ Năm`,`Thứ Sáu`,`Thứ Bảy`],weekdaysShort:[`CN`,`T2`,`T3`,`T4`,`T5`,`T6`,`T7`],months:[`Tháng 1`,`Tháng 2`,`Tháng 3`,`Tháng 4`,`Tháng 5`,`Tháng 6`,`Tháng 7`,`Tháng 8`,`Tháng 9`,`Tháng 10`,`Tháng 11`,`Tháng 12`],monthsShort:[`T1`,`T2`,`T3`,`T4`,`T5`,`T6`,`T7`,`T8`,`T9`,`T10`,`T11`,`T12`]},m={"01-01":`Tết Dương lịch`,"03-08":`Quốc tế Phụ nữ`,"04-30":`Ngày Giải phóng miền Nam`,"05-01":`Quốc tế Lao động`,"09-02":`Quốc khánh`,"10-20":`Ngày Phụ nữ Việt Nam`,"11-20":`Ngày Nhà giáo Việt Nam`};Object.freeze({SECOND:1e3,MINUTE:60*1e3,HOUR:3600*1e3,DAY:1440*60*1e3,WEEK:10080*60*1e3,MONTH:720*60*60*1e3,YEAR:365*24*60*60*1e3});const h=Object.freeze({MINUTE:60,HOUR:3600,DAY:1440*60,WEEK:10080*60,MONTH:720*60*60,YEAR:365*24*60*60});Object.freeze({HOUR:60,DAY:1440,WEEK:10080,MONTH:720*60});const g=({date:g,format:_=`medium`,showHoliday:v=!1,showTime:y=!1,className:b=``,title:x})=>{let S=r(()=>{try{if(g instanceof Date)return u(g)?g:null;if(typeof g==`string`){let e=f(g);return u(e)?e:new Date(g)}if(typeof g==`number`){let e=new Date(g);return u(e)?e:null}return null}catch{return null}},[g]),C=n(e=>{let t=new Date,n=Math.floor((t.getTime()-e.getTime())/1e3);return n<60?`Vừa xong`:n<3600?`${Math.floor(n/h.MINUTE)} phút trước`:n<86400?`${Math.floor(n/h.HOUR)} giờ trước`:n<604800?`${Math.floor(n/h.DAY)} ngày trước`:n<2592e3?`${Math.floor(n/h.WEEK)} tuần trước`:n<31536e3?`${Math.floor(n/h.MONTH)} tháng trước`:`${Math.floor(n/h.YEAR)} năm trước`},[]),w=n((e,t=!1)=>{let n=e.getDay();return t?p.weekdaysShort[n]:p.weekdays[n]},[]),T=n((e,t=!1)=>{let n=e.getMonth();return t?p.monthsShort[n]:p.months[n]},[]),E=n(e=>m[i(e,`MM-dd`)]||null,[]),D=n(e=>{if(c(e))return y?`Hôm nay ${i(e,`HH:mm`)}`:`Hôm nay`;if(d(e))return y?`Hôm qua ${i(e,`HH:mm`)}`:`Hôm qua`;if(l(e))return y?`Ngày mai ${i(e,`HH:mm`)}`:`Ngày mai`;if(o(e)){let t=w(e);return y?`${t} ${i(e,`HH:mm`)}`:t}if(a(e)){let t=i(e,`d`);return y?`${t}/${i(e,`M`)} ${i(e,`HH:mm`)}`:`${t}/${i(e,`M`)}`}return s(e)?y?i(e,`d/M HH:mm`):i(e,`d/M`):y?i(e,`d/M/yyyy HH:mm`):i(e,`d/M/yyyy`)},[w,y]),O=n((e,t)=>{let n=y?i(e,`, HH:mm`):``;switch(t){case`short`:return i(e,`d/M/yy`)+n;case`medium`:return i(e,`dd/MM/yyyy`)+n;case`long`:return`${i(e,`d`)} ${T(e)} ${i(e,`yyyy`)}`+n;case`full`:return`${w(e)}, ngày ${i(e,`d`)} ${T(e)} năm ${i(e,`yyyy`)}`+n;case`relative`:return C(e);case`datetime`:return i(e,`d/M/yyyy HH:mm`);case`time`:return i(e,`HH:mm`);case`smart`:return D(e);default:return i(e,`d/M/yyyy`)+n}},[D,T,w,C,y]);if(!S)return t(`span`,{className:e(`text-muted-foreground text-sm`,b),children:`--/--/----`});let k=O(S,_),A=v?E(S):null,j=A?`${k} (${A})`:k,M=x||i(S,`EEEE, d MMMM yyyy HH:mm:ss`);return t(`time`,{dateTime:S.toISOString(),className:e(`text-accent-foreground font-number text-sm`,b),title:M,children:j})};export{g as t};
2
- //# sourceMappingURL=date-DtgYKyyk.mjs.map
2
+ //# sourceMappingURL=date-SmlhDFZs.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-DtgYKyyk.mjs","names":["DateDisplay: React.FC<Props>","date"],"sources":["../packages/constants.tsx","../packages/components/data-display/date.tsx"],"sourcesContent":["// Vietnamese locale configuration\nexport const vietnameseLocale = {\n weekdays: ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'],\n weekdaysShort: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],\n months: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6', 'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'],\n monthsShort: ['T1', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7', 'T8', 'T9', 'T10', 'T11', 'T12'],\n};\n\n// Vietnamese holidays\nexport const vietnameseHolidays = {\n '01-01': 'Tết Dương lịch',\n '03-08': 'Quốc tế Phụ nữ',\n '04-30': 'Ngày Giải phóng miền Nam',\n '05-01': 'Quốc tế Lao động',\n '09-02': 'Quốc khánh',\n '10-20': 'Ngày Phụ nữ Việt Nam',\n '11-20': 'Ngày Nhà giáo Việt Nam',\n};\n\n// Time Constants in milliseconds, seconds, and minutes\nexport const TIME_IN_MS = Object.freeze({\n SECOND: 1000,\n MINUTE: 60 * 1000,\n HOUR: 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000, // Approximation for month length = 30 days\n YEAR: 365 * 24 * 60 * 60 * 1000,\n});\n\nexport const TIME_IN_SECONDS = Object.freeze({\n MINUTE: 60,\n HOUR: 60 * 60,\n DAY: 24 * 60 * 60,\n WEEK: 7 * 24 * 60 * 60,\n MONTH: 30 * 24 * 60 * 60,\n YEAR: 365 * 24 * 60 * 60,\n});\n\nexport const TIME_IN_MINUTES = Object.freeze({\n HOUR: 60,\n DAY: 24 * 60,\n WEEK: 7 * 24 * 60,\n MONTH: 30 * 24 * 60,\n});\n","import { useCallback, useMemo } from 'react';\nimport { format, isThisMonth, isThisWeek, isThisYear, isToday, isTomorrow, isValid, isYesterday, parseISO } from '@customafk/react-toolkit/date-fns';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { TIME_IN_SECONDS, vietnameseHolidays, vietnameseLocale } from '@/constants';\n\ninterface Props {\n date: Date | string | number;\n format?:\n | 'short' // 15/03/24\n | 'medium' // 15/03/2024\n | 'long' // 15 tháng 3, 2024\n | 'full' // Thứ Sáu, ngày 15 tháng 3 năm 2024\n | 'relative' // 2 giờ trước\n | 'datetime' // 15/03/2024 14:30\n | 'time' // 14:30\n | 'smart'; // Tự động chọn format phù hợp\n showHoliday?: boolean;\n showTime?: boolean;\n className?: string;\n title?: string; // Tooltip khi hover\n}\n\nexport const DateDisplay: React.FC<Props> = ({ date, format: formatType = 'medium', showHoliday = false, showTime = false, className = '', title }) => {\n const parsedDate = useMemo(() => {\n try {\n if (date instanceof Date) {\n return isValid(date) ? date : null;\n }\n if (typeof date === 'string') {\n const parsed = parseISO(date);\n return isValid(parsed) ? parsed : new Date(date);\n }\n if (typeof date === 'number') {\n const parsed = new Date(date);\n return isValid(parsed) ? parsed : null;\n }\n return null;\n } catch {\n return null;\n }\n }, [date]);\n\n // Format relative time in Vietnamese\n const formatRelativeTime = useCallback((date: Date): string => {\n const now = new Date();\n const diffInSeconds = Math.floor((now.getTime() - date.getTime()) / 1000);\n\n if (diffInSeconds < 60) return 'Vừa xong';\n if (diffInSeconds < 3600) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MINUTE)} phút trước`;\n if (diffInSeconds < 86400) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.HOUR)} giờ trước`;\n if (diffInSeconds < 604800) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.DAY)} ngày trước`;\n if (diffInSeconds < 2592000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.WEEK)} tuần trước`;\n if (diffInSeconds < 31536000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MONTH)} tháng trước`;\n return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.YEAR)} năm trước`;\n }, []);\n\n // Vietnamese weekday\n const getVietnameseWeekday = useCallback((date: Date, short: boolean = false): string => {\n const dayIndex = date.getDay();\n return short ? vietnameseLocale.weekdaysShort[dayIndex] : vietnameseLocale.weekdays[dayIndex];\n }, []);\n\n // Vietnamese month\n const getVietnameseMonth = useCallback((date: Date, short: boolean = false): string => {\n const monthIndex = date.getMonth();\n return short ? vietnameseLocale.monthsShort[monthIndex] : vietnameseLocale.months[monthIndex];\n }, []);\n\n // Check holiday\n const getHoliday = useCallback((date: Date): string | null => {\n const monthDay = format(date, 'MM-dd') as keyof typeof vietnameseHolidays;\n return vietnameseHolidays[monthDay] || null;\n }, []);\n\n // Smart format - choose appropriate format based on date\n const getSmartFormat = useCallback(\n (date: Date): string => {\n if (isToday(date)) {\n return showTime ? `Hôm nay ${format(date, 'HH:mm')}` : 'Hôm nay';\n }\n if (isYesterday(date)) {\n return showTime ? `Hôm qua ${format(date, 'HH:mm')}` : 'Hôm qua';\n }\n if (isTomorrow(date)) {\n return showTime ? `Ngày mai ${format(date, 'HH:mm')}` : 'Ngày mai';\n }\n if (isThisWeek(date)) {\n const weekday = getVietnameseWeekday(date);\n return showTime ? `${weekday} ${format(date, 'HH:mm')}` : weekday;\n }\n if (isThisMonth(date)) {\n const day = format(date, 'd');\n return showTime ? `${day}/${format(date, 'M')} ${format(date, 'HH:mm')}` : `${day}/${format(date, 'M')}`;\n }\n if (isThisYear(date)) {\n return showTime ? format(date, 'd/M HH:mm') : format(date, 'd/M');\n }\n return showTime ? format(date, 'd/M/yyyy HH:mm') : format(date, 'd/M/yyyy');\n },\n [getVietnameseWeekday, showTime]\n );\n\n // Main formatting function\n const formatDate = useCallback(\n (date: Date, type: string): string => {\n const timeStr = showTime ? format(date, ', HH:mm') : '';\n\n switch (type) {\n case 'short':\n return format(date, 'd/M/yy') + timeStr;\n\n case 'medium':\n return format(date, 'dd/MM/yyyy') + timeStr;\n\n case 'long':\n return `${format(date, 'd')} ${getVietnameseMonth(date)} ${format(date, 'yyyy')}` + timeStr;\n\n case 'full': {\n const data = `${getVietnameseWeekday(date)}, ngày ${format(date, 'd')} ${getVietnameseMonth(date)} năm ${format(date, 'yyyy')}`;\n return data + timeStr;\n }\n\n case 'relative':\n return formatRelativeTime(date);\n\n case 'datetime':\n return format(date, 'd/M/yyyy HH:mm');\n\n case 'time':\n return format(date, 'HH:mm');\n\n case 'smart':\n return getSmartFormat(date);\n\n default:\n return format(date, 'd/M/yyyy') + timeStr;\n }\n },\n [getSmartFormat, getVietnameseMonth, getVietnameseWeekday, formatRelativeTime, showTime]\n );\n\n if (!parsedDate) {\n return <span className={cn('text-muted-foreground text-sm', className)}>--/--/----</span>;\n }\n\n const formattedDate = formatDate(parsedDate, formatType);\n const holiday = showHoliday ? getHoliday(parsedDate) : null;\n const displayText = holiday ? `${formattedDate} (${holiday})` : formattedDate;\n const tooltipTitle = title || format(parsedDate, 'EEEE, d MMMM yyyy HH:mm:ss');\n\n return (\n <time dateTime={parsedDate.toISOString()} className={cn('text-accent-foreground font-number text-sm', className)} title={tooltipTitle}>\n {displayText}\n </time>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"date-SmlhDFZs.mjs","names":["DateDisplay: React.FC<Props>","date"],"sources":["../packages/constants.tsx","../packages/components/data-display/date.tsx"],"sourcesContent":["// Vietnamese locale configuration\nexport const vietnameseLocale = {\n weekdays: ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'],\n weekdaysShort: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],\n months: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6', 'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'],\n monthsShort: ['T1', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7', 'T8', 'T9', 'T10', 'T11', 'T12'],\n};\n\n// Vietnamese holidays\nexport const vietnameseHolidays = {\n '01-01': 'Tết Dương lịch',\n '03-08': 'Quốc tế Phụ nữ',\n '04-30': 'Ngày Giải phóng miền Nam',\n '05-01': 'Quốc tế Lao động',\n '09-02': 'Quốc khánh',\n '10-20': 'Ngày Phụ nữ Việt Nam',\n '11-20': 'Ngày Nhà giáo Việt Nam',\n};\n\n// Time Constants in milliseconds, seconds, and minutes\nexport const TIME_IN_MS = Object.freeze({\n SECOND: 1000,\n MINUTE: 60 * 1000,\n HOUR: 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000, // Approximation for month length = 30 days\n YEAR: 365 * 24 * 60 * 60 * 1000,\n});\n\nexport const TIME_IN_SECONDS = Object.freeze({\n MINUTE: 60,\n HOUR: 60 * 60,\n DAY: 24 * 60 * 60,\n WEEK: 7 * 24 * 60 * 60,\n MONTH: 30 * 24 * 60 * 60,\n YEAR: 365 * 24 * 60 * 60,\n});\n\nexport const TIME_IN_MINUTES = Object.freeze({\n HOUR: 60,\n DAY: 24 * 60,\n WEEK: 7 * 24 * 60,\n MONTH: 30 * 24 * 60,\n});\n","import { useCallback, useMemo } from 'react';\nimport { format, isThisMonth, isThisWeek, isThisYear, isToday, isTomorrow, isValid, isYesterday, parseISO } from '@customafk/react-toolkit/date-fns';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { TIME_IN_SECONDS, vietnameseHolidays, vietnameseLocale } from '@/constants';\n\ninterface Props {\n date: Date | string | number;\n format?:\n | 'short' // 15/03/24\n | 'medium' // 15/03/2024\n | 'long' // 15 tháng 3, 2024\n | 'full' // Thứ Sáu, ngày 15 tháng 3 năm 2024\n | 'relative' // 2 giờ trước\n | 'datetime' // 15/03/2024 14:30\n | 'time' // 14:30\n | 'smart'; // Tự động chọn format phù hợp\n showHoliday?: boolean;\n showTime?: boolean;\n className?: string;\n title?: string; // Tooltip khi hover\n}\n\nexport const DateDisplay: React.FC<Props> = ({ date, format: formatType = 'medium', showHoliday = false, showTime = false, className = '', title }) => {\n const parsedDate = useMemo(() => {\n try {\n if (date instanceof Date) {\n return isValid(date) ? date : null;\n }\n if (typeof date === 'string') {\n const parsed = parseISO(date);\n return isValid(parsed) ? parsed : new Date(date);\n }\n if (typeof date === 'number') {\n const parsed = new Date(date);\n return isValid(parsed) ? parsed : null;\n }\n return null;\n } catch {\n return null;\n }\n }, [date]);\n\n // Format relative time in Vietnamese\n const formatRelativeTime = useCallback((date: Date): string => {\n const now = new Date();\n const diffInSeconds = Math.floor((now.getTime() - date.getTime()) / 1000);\n\n if (diffInSeconds < 60) return 'Vừa xong';\n if (diffInSeconds < 3600) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MINUTE)} phút trước`;\n if (diffInSeconds < 86400) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.HOUR)} giờ trước`;\n if (diffInSeconds < 604800) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.DAY)} ngày trước`;\n if (diffInSeconds < 2592000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.WEEK)} tuần trước`;\n if (diffInSeconds < 31536000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MONTH)} tháng trước`;\n return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.YEAR)} năm trước`;\n }, []);\n\n // Vietnamese weekday\n const getVietnameseWeekday = useCallback((date: Date, short: boolean = false): string => {\n const dayIndex = date.getDay();\n return short ? vietnameseLocale.weekdaysShort[dayIndex] : vietnameseLocale.weekdays[dayIndex];\n }, []);\n\n // Vietnamese month\n const getVietnameseMonth = useCallback((date: Date, short: boolean = false): string => {\n const monthIndex = date.getMonth();\n return short ? vietnameseLocale.monthsShort[monthIndex] : vietnameseLocale.months[monthIndex];\n }, []);\n\n // Check holiday\n const getHoliday = useCallback((date: Date): string | null => {\n const monthDay = format(date, 'MM-dd') as keyof typeof vietnameseHolidays;\n return vietnameseHolidays[monthDay] || null;\n }, []);\n\n // Smart format - choose appropriate format based on date\n const getSmartFormat = useCallback(\n (date: Date): string => {\n if (isToday(date)) {\n return showTime ? `Hôm nay ${format(date, 'HH:mm')}` : 'Hôm nay';\n }\n if (isYesterday(date)) {\n return showTime ? `Hôm qua ${format(date, 'HH:mm')}` : 'Hôm qua';\n }\n if (isTomorrow(date)) {\n return showTime ? `Ngày mai ${format(date, 'HH:mm')}` : 'Ngày mai';\n }\n if (isThisWeek(date)) {\n const weekday = getVietnameseWeekday(date);\n return showTime ? `${weekday} ${format(date, 'HH:mm')}` : weekday;\n }\n if (isThisMonth(date)) {\n const day = format(date, 'd');\n return showTime ? `${day}/${format(date, 'M')} ${format(date, 'HH:mm')}` : `${day}/${format(date, 'M')}`;\n }\n if (isThisYear(date)) {\n return showTime ? format(date, 'd/M HH:mm') : format(date, 'd/M');\n }\n return showTime ? format(date, 'd/M/yyyy HH:mm') : format(date, 'd/M/yyyy');\n },\n [getVietnameseWeekday, showTime]\n );\n\n // Main formatting function\n const formatDate = useCallback(\n (date: Date, type: string): string => {\n const timeStr = showTime ? format(date, ', HH:mm') : '';\n\n switch (type) {\n case 'short':\n return format(date, 'd/M/yy') + timeStr;\n\n case 'medium':\n return format(date, 'dd/MM/yyyy') + timeStr;\n\n case 'long':\n return `${format(date, 'd')} ${getVietnameseMonth(date)} ${format(date, 'yyyy')}` + timeStr;\n\n case 'full': {\n const data = `${getVietnameseWeekday(date)}, ngày ${format(date, 'd')} ${getVietnameseMonth(date)} năm ${format(date, 'yyyy')}`;\n return data + timeStr;\n }\n\n case 'relative':\n return formatRelativeTime(date);\n\n case 'datetime':\n return format(date, 'd/M/yyyy HH:mm');\n\n case 'time':\n return format(date, 'HH:mm');\n\n case 'smart':\n return getSmartFormat(date);\n\n default:\n return format(date, 'd/M/yyyy') + timeStr;\n }\n },\n [getSmartFormat, getVietnameseMonth, getVietnameseWeekday, formatRelativeTime, showTime]\n );\n\n if (!parsedDate) {\n return <span className={cn('text-muted-foreground text-sm', className)}>--/--/----</span>;\n }\n\n const formattedDate = formatDate(parsedDate, formatType);\n const holiday = showHoliday ? getHoliday(parsedDate) : null;\n const displayText = holiday ? `${formattedDate} (${holiday})` : formattedDate;\n const tooltipTitle = title || format(parsedDate, 'EEEE, d MMMM yyyy HH:mm:ss');\n\n return (\n <time dateTime={parsedDate.toISOString()} className={cn('text-accent-foreground font-number text-sm', className)} title={tooltipTitle}>\n {displayText}\n </time>\n );\n};\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{t as e}from"./close-Bb5Pi28f.mjs";import{cn as t}from"@customafk/react-toolkit/utils";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{Dialog as i}from"radix-ui";function a({...e}){return n(i.Root,{"data-slot":`dialog`,...e})}function o({...e}){return n(i.Trigger,{"data-slot":`dialog-trigger`,...e})}function s({...e}){return n(i.Portal,{"data-slot":`dialog-portal`,...e})}function c({...e}){return n(i.Close,{"data-slot":`dialog-close`,...e})}function l({className:e,...r}){return n(i.Overlay,{"data-slot":`dialog-overlay`,className:t(`fixed inset-0 z-50 bg-black/50`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,e),...r})}function u({className:a,children:o,showCloseButton:c=!0,...u}){return r(s,{"data-slot":`dialog-portal`,children:[n(l,{}),n(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center`,children:r(i.Content,{"data-slot":`dialog-content`,className:t(`relative z-50 grid bg-background`,`gap-4 p-6 shadow-dialog outline-none`,`max-h-[85dvh] w-full max-w-[calc(100%-2rem)] sm:max-w-lg`,`rounded-2xl duration-200`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-80`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=closed]:zoom-out-80`,a),...u,children:[o,c&&n(i.Close,{"data-slot":`dialog-close`,tabIndex:-1,asChild:!0,className:`absolute top-3 right-3`,children:n(e,{})})]})})]})}function d({className:e,...r}){return n(`div`,{"data-slot":`dialog-header`,className:t(`flex flex-col gap-2 text-center sm:text-left`,e),...r})}function f({className:e,...r}){return n(`div`,{"data-slot":`dialog-footer`,className:t(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,e),...r})}function p({className:e,...r}){return n(i.Title,{"data-slot":`dialog-title`,className:t(`font-semibold text-lg text-text-positive-strong leading-none`,e),...r})}function m({className:e,...r}){return n(i.Description,{"data-slot":`dialog-description`,className:t(`text-sm text-text-positive-weak`,e),...r})}export{f as a,s as c,m as i,p as l,c as n,d as o,u as r,l as s,a as t,o as u};
2
- //# sourceMappingURL=dialog-D5bBgIs8.mjs.map
1
+ import{t as e}from"./close-B_PnUzNN.mjs";import{cn as t}from"@customafk/react-toolkit/utils";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{Dialog as i}from"radix-ui";function a({...e}){return n(i.Root,{"data-slot":`dialog`,...e})}function o({...e}){return n(i.Trigger,{"data-slot":`dialog-trigger`,...e})}function s({...e}){return n(i.Portal,{"data-slot":`dialog-portal`,...e})}function c({...e}){return n(i.Close,{"data-slot":`dialog-close`,...e})}function l({className:e,...r}){return n(i.Overlay,{"data-slot":`dialog-overlay`,className:t(`fixed inset-0 z-50 bg-black/50`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,e),...r})}function u({className:a,children:o,showCloseButton:c=!0,...u}){return r(s,{"data-slot":`dialog-portal`,children:[n(l,{}),n(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center`,children:r(i.Content,{"data-slot":`dialog-content`,className:t(`relative z-50 grid bg-background`,`gap-4 p-6 shadow-dialog outline-none`,`max-h-[85dvh] w-full max-w-[calc(100%-2rem)] sm:max-w-lg`,`rounded-2xl duration-200`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-80`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=closed]:zoom-out-80`,a),...u,children:[o,c&&n(i.Close,{"data-slot":`dialog-close`,tabIndex:-1,asChild:!0,className:`absolute top-3 right-3`,children:n(e,{})})]})})]})}function d({className:e,...r}){return n(`div`,{"data-slot":`dialog-header`,className:t(`flex flex-col gap-2 text-center sm:text-left`,e),...r})}function f({className:e,...r}){return n(`div`,{"data-slot":`dialog-footer`,className:t(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,e),...r})}function p({className:e,...r}){return n(i.Title,{"data-slot":`dialog-title`,className:t(`font-semibold text-lg text-text-positive-strong leading-none`,e),...r})}function m({className:e,...r}){return n(i.Description,{"data-slot":`dialog-description`,className:t(`text-sm text-text-positive-weak`,e),...r})}export{f as a,s as c,m as i,p as l,c as n,d as o,u as r,l as s,a as t,o as u};
2
+ //# sourceMappingURL=dialog-4ZJcWPar.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-D5bBgIs8.mjs","names":["Dialog","DialogPrimitive"],"sources":["../packages/components/ui/dialog.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Dialog as DialogPrimitive } from 'radix-ui';\nimport { CloseButton } from './buttons/close';\n\nfunction Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n 'fixed inset-0 z-50 bg-black/50',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n <div className=\"fixed inset-0 z-50 flex items-center justify-center\">\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n 'relative z-50 grid bg-background',\n 'gap-4 p-6 shadow-dialog outline-none',\n 'max-h-[85dvh] w-full max-w-[calc(100%-2rem)] sm:max-w-lg',\n 'rounded-2xl duration-200',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-80',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-80',\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close data-slot=\"dialog-close\" tabIndex={-1} asChild className=\"absolute top-3 right-3\">\n <CloseButton />\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </div>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-header\" className={cn('flex flex-col gap-2 text-center sm:text-left', className)} {...props} />;\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-footer\" className={cn('flex flex-col-reverse gap-2 sm:flex-row sm:justify-end', className)} {...props} />;\n}\n\nfunction DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title data-slot=\"dialog-title\" className={cn('font-semibold text-lg text-text-positive-strong leading-none', className)} {...props} />\n );\n}\n\nfunction DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return <DialogPrimitive.Description data-slot=\"dialog-description\" className={cn('text-sm text-text-positive-weak', className)} {...props} />;\n}\n\nexport { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };\n"],"mappings":"iLAOA,SAASA,EAAO,CAAE,GAAG,GAA4D,CAC/E,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,GAAI,GAAS,CAG/D,SAAS,EAAc,CAAE,GAAG,GAA+D,CACzF,OAAO,EAACA,EAAgB,QAAA,CAAQ,YAAU,iBAAiB,GAAI,GAAS,CAG1E,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAACA,EAAgB,OAAA,CAAO,YAAU,gBAAgB,GAAI,GAAS,CAGxE,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,GAAI,GAAS,CAGtE,SAAS,EAAc,CAAE,YAAW,GAAG,GAA+D,CACpG,OACE,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,iCACA,+BACA,8BACA,kCACA,iCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAc,CACrB,YACA,WACA,kBAAkB,GAClB,GAAG,GAGF,CACD,OACE,EAAC,EAAA,CAAa,YAAU,0BACtB,EAAC,EAAA,EAAA,CAAgB,CACjB,EAAC,MAAA,CAAI,UAAU,+DACb,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,mCACA,uCACA,2DACA,2BACA,+BACA,8BACA,+BACA,kCACA,iCACA,kCACA,EACD,CACD,GAAI,YAEH,EACA,GACC,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,SAAU,GAAI,QAAA,GAAQ,UAAU,kCAC9E,EAAC,EAAA,EAAA,CAAc,EACO,CAAA,EAEF,EACtB,CAAA,EACO,CAInB,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAC,MAAA,CAAI,YAAU,gBAAgB,UAAW,EAAG,+CAAgD,EAAU,CAAE,GAAI,GAAS,CAG/H,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAC,MAAA,CAAI,YAAU,gBAAgB,UAAW,EAAG,yDAA0D,EAAU,CAAE,GAAI,GAAS,CAGzI,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OACE,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,UAAW,EAAG,+DAAgE,EAAU,CAAE,GAAI,GAAS,CAI3J,SAAS,EAAkB,CAAE,YAAW,GAAG,GAAmE,CAC5G,OAAO,EAACA,EAAgB,YAAA,CAAY,YAAU,qBAAqB,UAAW,EAAG,kCAAmC,EAAU,CAAE,GAAI,GAAS"}
1
+ {"version":3,"file":"dialog-4ZJcWPar.mjs","names":["Dialog","DialogPrimitive"],"sources":["../packages/components/ui/dialog.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Dialog as DialogPrimitive } from 'radix-ui';\nimport { CloseButton } from './buttons/close';\n\nfunction Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n 'fixed inset-0 z-50 bg-black/50',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n <div className=\"fixed inset-0 z-50 flex items-center justify-center\">\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n 'relative z-50 grid bg-background',\n 'gap-4 p-6 shadow-dialog outline-none',\n 'max-h-[85dvh] w-full max-w-[calc(100%-2rem)] sm:max-w-lg',\n 'rounded-2xl duration-200',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-80',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-80',\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close data-slot=\"dialog-close\" tabIndex={-1} asChild className=\"absolute top-3 right-3\">\n <CloseButton />\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </div>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-header\" className={cn('flex flex-col gap-2 text-center sm:text-left', className)} {...props} />;\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"dialog-footer\" className={cn('flex flex-col-reverse gap-2 sm:flex-row sm:justify-end', className)} {...props} />;\n}\n\nfunction DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title data-slot=\"dialog-title\" className={cn('font-semibold text-lg text-text-positive-strong leading-none', className)} {...props} />\n );\n}\n\nfunction DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return <DialogPrimitive.Description data-slot=\"dialog-description\" className={cn('text-sm text-text-positive-weak', className)} {...props} />;\n}\n\nexport { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };\n"],"mappings":"iLAOA,SAASA,EAAO,CAAE,GAAG,GAA4D,CAC/E,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,GAAI,GAAS,CAG/D,SAAS,EAAc,CAAE,GAAG,GAA+D,CACzF,OAAO,EAACA,EAAgB,QAAA,CAAQ,YAAU,iBAAiB,GAAI,GAAS,CAG1E,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAACA,EAAgB,OAAA,CAAO,YAAU,gBAAgB,GAAI,GAAS,CAGxE,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,GAAI,GAAS,CAGtE,SAAS,EAAc,CAAE,YAAW,GAAG,GAA+D,CACpG,OACE,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,iCACA,+BACA,8BACA,kCACA,iCACA,EACD,CACD,GAAI,GACJ,CAIN,SAAS,EAAc,CACrB,YACA,WACA,kBAAkB,GAClB,GAAG,GAGF,CACD,OACE,EAAC,EAAA,CAAa,YAAU,0BACtB,EAAC,EAAA,EAAA,CAAgB,CACjB,EAAC,MAAA,CAAI,UAAU,+DACb,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,mCACA,uCACA,2DACA,2BACA,+BACA,8BACA,+BACA,kCACA,iCACA,kCACA,EACD,CACD,GAAI,YAEH,EACA,GACC,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,SAAU,GAAI,QAAA,GAAQ,UAAU,kCAC9E,EAAC,EAAA,EAAA,CAAc,EACO,CAAA,EAEF,EACtB,CAAA,EACO,CAInB,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAC,MAAA,CAAI,YAAU,gBAAgB,UAAW,EAAG,+CAAgD,EAAU,CAAE,GAAI,GAAS,CAG/H,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAC,MAAA,CAAI,YAAU,gBAAgB,UAAW,EAAG,yDAA0D,EAAU,CAAE,GAAI,GAAS,CAGzI,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OACE,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,UAAW,EAAG,+DAAgE,EAAU,CAAE,GAAI,GAAS,CAI3J,SAAS,EAAkB,CAAE,YAAW,GAAG,GAAmE,CAC5G,OAAO,EAACA,EAAgB,YAAA,CAAY,YAAU,qBAAqB,UAAW,EAAG,kCAAmC,EAAU,CAAE,GAAI,GAAS"}