@customafk/lunas-ui 0.0.68 → 0.0.70

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 (565) hide show
  1. package/dist/{add-new-D3b8hc2C.cjs → add-new-BaA0yy6U.cjs} +2 -2
  2. package/dist/{add-new-D3b8hc2C.cjs.map → add-new-BaA0yy6U.cjs.map} +1 -1
  3. package/dist/{add-new-BFDOXej7.js → add-new-_5opEbrI.js} +2 -2
  4. package/dist/{add-new-BFDOXej7.js.map → add-new-_5opEbrI.js.map} +1 -1
  5. package/dist/alert-dialog-DcQKEgVC.js +2 -0
  6. package/dist/alert-dialog-DcQKEgVC.js.map +1 -0
  7. package/dist/alert-dialog-brXudt77.cjs +2 -0
  8. package/dist/alert-dialog-brXudt77.cjs.map +1 -0
  9. package/dist/{avatar-Ch6Lx2oc.cjs → avatar-B4pklWJt.cjs} +2 -2
  10. package/dist/{avatar-Ch6Lx2oc.cjs.map → avatar-B4pklWJt.cjs.map} +1 -1
  11. package/dist/avatar-iX5Jhj8E.js +2 -0
  12. package/dist/{avatar-ClIgQDJO.js.map → avatar-iX5Jhj8E.js.map} +1 -1
  13. package/dist/{badge-BMXpbMfX.cjs → badge-CsA-JCDX.cjs} +2 -2
  14. package/dist/{badge-BMXpbMfX.cjs.map → badge-CsA-JCDX.cjs.map} +1 -1
  15. package/dist/{badge-6RQPy3Eo.js → badge-tjlLdDGl.js} +2 -2
  16. package/dist/{badge-6RQPy3Eo.js.map → badge-tjlLdDGl.js.map} +1 -1
  17. package/dist/button-CuV2l4ge.cjs +2 -0
  18. package/dist/button-CuV2l4ge.cjs.map +1 -0
  19. package/dist/button-D4wpGvjJ.d.cts +56 -0
  20. package/dist/button-DhQJ9Ey8.js +2 -0
  21. package/dist/button-DhQJ9Ey8.js.map +1 -0
  22. package/dist/button-HlUz4N7O.d.ts +56 -0
  23. package/dist/button-variants-CCiseNSC.cjs +2 -0
  24. package/dist/button-variants-CCiseNSC.cjs.map +1 -0
  25. package/dist/button-variants-Y1GTBayz.js +2 -0
  26. package/dist/button-variants-Y1GTBayz.js.map +1 -0
  27. package/dist/calendar-DGqBIV7n.cjs +2 -0
  28. package/dist/calendar-DGqBIV7n.cjs.map +1 -0
  29. package/dist/calendar-DdIUj5Dk.js +2 -0
  30. package/dist/calendar-DdIUj5Dk.js.map +1 -0
  31. package/dist/{card-BFYPY2aR.js → card-DOv2mZU8.js} +1 -1
  32. package/dist/{card-BFYPY2aR.js.map → card-DOv2mZU8.js.map} +1 -1
  33. package/dist/{card-RJvu27Ck.cjs → card-Pnxpehsp.cjs} +1 -1
  34. package/dist/{card-RJvu27Ck.cjs.map → card-Pnxpehsp.cjs.map} +1 -1
  35. package/dist/cards/grid-product-card.cjs +1 -1
  36. package/dist/cards/grid-product-card.cjs.map +1 -1
  37. package/dist/cards/grid-product-card.js +1 -1
  38. package/dist/cards/grid-product-card.js.map +1 -1
  39. package/dist/cards/product-card.cjs +1 -1
  40. package/dist/cards/product-card.cjs.map +1 -1
  41. package/dist/cards/product-card.js +1 -1
  42. package/dist/cards/product-card.js.map +1 -1
  43. package/dist/cards/simple-card.cjs +1 -1
  44. package/dist/cards/simple-card.js +1 -1
  45. package/dist/{command-BL20khiI.d.ts → command-BMRkHZyz.d.ts} +12 -12
  46. package/dist/{command-BNYekOzL.cjs → command-BaW_SRkQ.cjs} +2 -2
  47. package/dist/{command-BNYekOzL.cjs.map → command-BaW_SRkQ.cjs.map} +1 -1
  48. package/dist/{command-CyWyRcle.js → command-CRNFM6Sb.js} +2 -2
  49. package/dist/{command-CyWyRcle.js.map → command-CRNFM6Sb.js.map} +1 -1
  50. package/dist/{command-CgW_wSCe.d.cts → command-Ud5n88hj.d.cts} +12 -12
  51. package/dist/data-display/country.cjs +1 -1
  52. package/dist/data-display/country.d.ts +1 -1
  53. package/dist/data-display/country.js +1 -1
  54. package/dist/data-display/data-list.cjs +1 -1
  55. package/dist/data-display/data-list.js +1 -1
  56. package/dist/data-display/date-tooltip.cjs +1 -1
  57. package/dist/data-display/date-tooltip.js +1 -1
  58. package/dist/data-display/date.cjs +1 -1
  59. package/dist/data-display/date.js +1 -1
  60. package/dist/data-display/empty.cjs +1 -1
  61. package/dist/data-display/empty.d.cts +2 -2
  62. package/dist/data-display/empty.d.ts +2 -2
  63. package/dist/data-display/empty.js +1 -1
  64. package/dist/data-display/name.cjs +1 -1
  65. package/dist/data-display/name.js +1 -1
  66. package/dist/data-display/phone-number.cjs +1 -1
  67. package/dist/data-display/phone-number.js +1 -1
  68. package/dist/data-display/role-badge.cjs +1 -1
  69. package/dist/data-display/role-badge.d.ts +1 -1
  70. package/dist/data-display/role-badge.js +1 -1
  71. package/dist/data-display/statistic.cjs +1 -1
  72. package/dist/data-display/statistic.d.cts +2 -2
  73. package/dist/data-display/statistic.d.ts +2 -2
  74. package/dist/data-display/statistic.js +1 -1
  75. package/dist/data-display/user.cjs +1 -1
  76. package/dist/data-display/user.js +1 -1
  77. package/dist/{date-wo9LyN6l.cjs → date-2wue8L-1.cjs} +2 -2
  78. package/dist/{date-wo9LyN6l.cjs.map → date-2wue8L-1.cjs.map} +1 -1
  79. package/dist/{date-DWxL795U.js → date-BuPl--Fc.js} +2 -2
  80. package/dist/{date-DWxL795U.js.map → date-BuPl--Fc.js.map} +1 -1
  81. package/dist/{dialog-CTwMjrks.d.cts → dialog-DA0--feR.d.cts} +12 -12
  82. package/dist/{dialog-wX27mb8E.cjs → dialog-DGbWt3A4.cjs} +2 -2
  83. package/dist/{dialog-wX27mb8E.cjs.map → dialog-DGbWt3A4.cjs.map} +1 -1
  84. package/dist/{dialog-pMHkBJ-w.js → dialog-SbX5GvMK.js} +2 -2
  85. package/dist/{dialog-pMHkBJ-w.js.map → dialog-SbX5GvMK.js.map} +1 -1
  86. package/dist/{dialog-BfrTUQrJ.d.ts → dialog-tmRDUkkV.d.ts} +12 -12
  87. package/dist/dialogs/confirm-dialog.cjs +1 -1
  88. package/dist/dialogs/confirm-dialog.cjs.map +1 -1
  89. package/dist/dialogs/confirm-dialog.js +1 -1
  90. package/dist/dialogs/confirm-dialog.js.map +1 -1
  91. package/dist/dialogs/detail-dialog/component/sidebar.cjs +1 -1
  92. package/dist/dialogs/detail-dialog/component/sidebar.d.cts +30 -30
  93. package/dist/dialogs/detail-dialog/component/sidebar.d.ts +30 -30
  94. package/dist/dialogs/detail-dialog/component/sidebar.js +1 -1
  95. package/dist/dialogs/detail-dialog/index.cjs +1 -1
  96. package/dist/dialogs/detail-dialog/index.cjs.map +1 -1
  97. package/dist/dialogs/detail-dialog/index.js +1 -1
  98. package/dist/dialogs/detail-dialog/index.js.map +1 -1
  99. package/dist/dialogs/error-dialog.cjs +1 -1
  100. package/dist/dialogs/error-dialog.js +1 -1
  101. package/dist/dialogs/form-dialog.cjs +1 -1
  102. package/dist/dialogs/form-dialog.cjs.map +1 -1
  103. package/dist/dialogs/form-dialog.d.cts +2 -2
  104. package/dist/dialogs/form-dialog.d.ts +2 -2
  105. package/dist/dialogs/form-dialog.js +1 -1
  106. package/dist/dialogs/form-dialog.js.map +1 -1
  107. package/dist/dialogs/loading-dialog.cjs +1 -1
  108. package/dist/dialogs/loading-dialog.js +1 -1
  109. package/dist/dist-CkzytVha.js +2 -0
  110. package/dist/dist-CkzytVha.js.map +1 -0
  111. package/dist/dist-D0uO1qIz.cjs +2 -0
  112. package/dist/dist-D0uO1qIz.cjs.map +1 -0
  113. package/dist/{drawer-sRfKhXA3.cjs → drawer-CaX-sUvZ.cjs} +1 -1
  114. package/dist/{drawer-sRfKhXA3.cjs.map → drawer-CaX-sUvZ.cjs.map} +1 -1
  115. package/dist/{drawer-DnhgwetT.js → drawer-hi51Beoq.js} +1 -1
  116. package/dist/{drawer-DnhgwetT.js.map → drawer-hi51Beoq.js.map} +1 -1
  117. package/dist/{dropdown-menu-Bj39Rmxd.js → dropdown-menu-DS1A05D0.js} +2 -2
  118. package/dist/{dropdown-menu-Bj39Rmxd.js.map → dropdown-menu-DS1A05D0.js.map} +1 -1
  119. package/dist/{dropdown-menu-SNcBwTOA.cjs → dropdown-menu-Djtt8w9D.cjs} +2 -2
  120. package/dist/{dropdown-menu-SNcBwTOA.cjs.map → dropdown-menu-Djtt8w9D.cjs.map} +1 -1
  121. package/dist/error-dialog-BeYJOtSH.js +2 -0
  122. package/dist/{error-dialog-CphiTB4y.js.map → error-dialog-BeYJOtSH.js.map} +1 -1
  123. package/dist/error-dialog-DMbJhWyk.cjs +2 -0
  124. package/dist/{error-dialog-DGg0x5xF.cjs.map → error-dialog-DMbJhWyk.cjs.map} +1 -1
  125. package/dist/{flex-BZHWRUkz.js → flex-D6XrXRQW.js} +2 -2
  126. package/dist/{flex-BZHWRUkz.js.map → flex-D6XrXRQW.js.map} +1 -1
  127. package/dist/{flex-DMgD86BT.cjs → flex-DS4mxjtf.cjs} +2 -2
  128. package/dist/{flex-DMgD86BT.cjs.map → flex-DS4mxjtf.cjs.map} +1 -1
  129. package/dist/form-BT1TbgK6.js +2 -0
  130. package/dist/{form-B-KLKj5u.js.map → form-BT1TbgK6.js.map} +1 -1
  131. package/dist/{form-CtpHZKmh.cjs → form-DyH5iWq7.cjs} +2 -2
  132. package/dist/{form-CtpHZKmh.cjs.map → form-DyH5iWq7.cjs.map} +1 -1
  133. package/dist/form-wrapper-CFcpJdfv.js +2 -0
  134. package/dist/{form-wrapper-Deo8gKv5.js.map → form-wrapper-CFcpJdfv.js.map} +1 -1
  135. package/dist/form-wrapper-bC0IEtWT.cjs +2 -0
  136. package/dist/{form-wrapper-C3pU1F5r.cjs.map → form-wrapper-bC0IEtWT.cjs.map} +1 -1
  137. package/dist/forms/combobox-field.cjs +1 -1
  138. package/dist/forms/combobox-field.cjs.map +1 -1
  139. package/dist/forms/combobox-field.d.cts +2 -2
  140. package/dist/forms/combobox-field.d.ts +2 -2
  141. package/dist/forms/combobox-field.js +1 -1
  142. package/dist/forms/combobox-field.js.map +1 -1
  143. package/dist/forms/date-field.cjs +1 -1
  144. package/dist/forms/date-field.cjs.map +1 -1
  145. package/dist/forms/date-field.d.cts +2 -2
  146. package/dist/forms/date-field.d.ts +2 -2
  147. package/dist/forms/date-field.js +1 -1
  148. package/dist/forms/date-field.js.map +1 -1
  149. package/dist/forms/form-wrapper.cjs +1 -1
  150. package/dist/forms/form-wrapper.d.cts +2 -2
  151. package/dist/forms/form-wrapper.d.ts +2 -2
  152. package/dist/forms/form-wrapper.js +1 -1
  153. package/dist/forms/multi-select-field.cjs +1 -1
  154. package/dist/forms/multi-select-field.cjs.map +1 -1
  155. package/dist/forms/multi-select-field.d.cts +2 -2
  156. package/dist/forms/multi-select-field.d.ts +2 -2
  157. package/dist/forms/multi-select-field.js +1 -1
  158. package/dist/forms/multi-select-field.js.map +1 -1
  159. package/dist/forms/number-field.cjs +1 -1
  160. package/dist/forms/number-field.d.cts +2 -2
  161. package/dist/forms/number-field.d.ts +2 -2
  162. package/dist/forms/number-field.js +1 -1
  163. package/dist/forms/password-field.cjs +1 -1
  164. package/dist/forms/password-field.d.cts +2 -2
  165. package/dist/forms/password-field.d.ts +2 -2
  166. package/dist/forms/password-field.js +1 -1
  167. package/dist/forms/select-field.cjs +1 -1
  168. package/dist/forms/select-field.d.cts +2 -2
  169. package/dist/forms/select-field.d.ts +2 -2
  170. package/dist/forms/select-field.js +1 -1
  171. package/dist/forms/switch-field.cjs +1 -1
  172. package/dist/forms/switch-field.d.cts +2 -2
  173. package/dist/forms/switch-field.d.ts +2 -2
  174. package/dist/forms/switch-field.js +1 -1
  175. package/dist/forms/text-field.cjs +1 -1
  176. package/dist/forms/text-field.d.cts +2 -2
  177. package/dist/forms/text-field.d.ts +2 -2
  178. package/dist/forms/text-field.js +1 -1
  179. package/dist/forms/textarea-field.cjs +1 -1
  180. package/dist/forms/textarea-field.d.cts +2 -2
  181. package/dist/forms/textarea-field.d.ts +2 -2
  182. package/dist/forms/textarea-field.js +1 -1
  183. package/dist/image-CiQhTTyt.js +2 -0
  184. package/dist/{image-Dm3jT9QX.js.map → image-CiQhTTyt.js.map} +1 -1
  185. package/dist/image-j62jo7bK.cjs +2 -0
  186. package/dist/{image-D3D8dE6s.cjs.map → image-j62jo7bK.cjs.map} +1 -1
  187. package/dist/{input-Dx2DxNMy.d.cts → input-BdeU00LU.d.ts} +3 -3
  188. package/dist/{input-CWzkJbaD.d.ts → input-CkDKHe9G.d.cts} +3 -3
  189. package/dist/input-GHXBt6hz.cjs +2 -0
  190. package/dist/input-GHXBt6hz.cjs.map +1 -0
  191. package/dist/input-ZyZ1HKHN.js +2 -0
  192. package/dist/input-ZyZ1HKHN.js.map +1 -0
  193. package/dist/{label-BZqk7MPJ.cjs → label-CHNSlaoz.cjs} +2 -2
  194. package/dist/{label-BZqk7MPJ.cjs.map → label-CHNSlaoz.cjs.map} +1 -1
  195. package/dist/{label-HVpeECNr.js → label-CdrxlBJ8.js} +2 -2
  196. package/dist/{label-HVpeECNr.js.map → label-CdrxlBJ8.js.map} +1 -1
  197. package/dist/layouts/app-layout/index.cjs +1 -1
  198. package/dist/layouts/app-layout/index.cjs.map +1 -1
  199. package/dist/layouts/app-layout/index.d.cts +3 -3
  200. package/dist/layouts/app-layout/index.d.ts +28 -28
  201. package/dist/layouts/app-layout/index.js +1 -1
  202. package/dist/layouts/app-layout/index.js.map +1 -1
  203. package/dist/layouts/flex.cjs +1 -1
  204. package/dist/layouts/flex.d.cts +4 -4
  205. package/dist/layouts/flex.d.ts +2 -2
  206. package/dist/layouts/flex.js +1 -1
  207. package/dist/layouts/service-layout/index.cjs +1 -1
  208. package/dist/layouts/service-layout/index.cjs.map +1 -1
  209. package/dist/layouts/service-layout/index.d.cts +3 -3
  210. package/dist/layouts/service-layout/index.d.ts +16 -16
  211. package/dist/layouts/service-layout/index.js +1 -1
  212. package/dist/layouts/service-layout/index.js.map +1 -1
  213. package/dist/{multi-select-DRKqFg1M.cjs → multi-select-DIZCHmU4.cjs} +2 -2
  214. package/dist/{multi-select-DRKqFg1M.cjs.map → multi-select-DIZCHmU4.cjs.map} +1 -1
  215. package/dist/{multi-select-DyhAPckx.js → multi-select-DzKtuSER.js} +2 -2
  216. package/dist/{multi-select-DyhAPckx.js.map → multi-select-DzKtuSER.js.map} +1 -1
  217. package/dist/paragraph-B9fp9JaI.js +2 -0
  218. package/dist/{paragraph-BwSskqDY.js.map → paragraph-B9fp9JaI.js.map} +1 -1
  219. package/dist/{paragraph-CI28eVP0.cjs → paragraph-BLvW7xdo.cjs} +2 -2
  220. package/dist/{paragraph-CI28eVP0.cjs.map → paragraph-BLvW7xdo.cjs.map} +1 -1
  221. package/dist/{popover-Bi7GLJT5.cjs → popover-DLbTz02b.cjs} +2 -2
  222. package/dist/{popover-Bi7GLJT5.cjs.map → popover-DLbTz02b.cjs.map} +1 -1
  223. package/dist/{popover-CxOK3oy2.js → popover-DvXi2pyH.js} +2 -2
  224. package/dist/{popover-CxOK3oy2.js.map → popover-DvXi2pyH.js.map} +1 -1
  225. package/dist/progress-DzBPViJg.js +2 -0
  226. package/dist/{progress-DdINdNdF.js.map → progress-DzBPViJg.js.map} +1 -1
  227. package/dist/{progress-Cet_LGmM.cjs → progress-RnZp4jUA.cjs} +2 -2
  228. package/dist/{progress-Cet_LGmM.cjs.map → progress-RnZp4jUA.cjs.map} +1 -1
  229. package/dist/{refresh-CTcKzu_a.js → refresh-BHjc0ETv.js} +2 -2
  230. package/dist/{refresh-CTcKzu_a.js.map → refresh-BHjc0ETv.js.map} +1 -1
  231. package/dist/{refresh-CQyFVZx9.cjs → refresh-Bt9GEyuC.cjs} +2 -2
  232. package/dist/{refresh-CQyFVZx9.cjs.map → refresh-Bt9GEyuC.cjs.map} +1 -1
  233. package/dist/scroll-area-BYi1ePct.js +2 -0
  234. package/dist/scroll-area-BYi1ePct.js.map +1 -0
  235. package/dist/scroll-area-TdkUSNSy.cjs +2 -0
  236. package/dist/scroll-area-TdkUSNSy.cjs.map +1 -0
  237. package/dist/{search-input-BkhVqB3R.cjs → search-input-DFgHJyOp.cjs} +2 -2
  238. package/dist/{search-input-BkhVqB3R.cjs.map → search-input-DFgHJyOp.cjs.map} +1 -1
  239. package/dist/{search-input-DnYrPBeT.js → search-input-DM9ePMxA.js} +2 -2
  240. package/dist/{search-input-DnYrPBeT.js.map → search-input-DM9ePMxA.js.map} +1 -1
  241. package/dist/{select-Cmq5a3Wg.js → select---jN6Yy0.js} +2 -2
  242. package/dist/{select-Cmq5a3Wg.js.map → select---jN6Yy0.js.map} +1 -1
  243. package/dist/{select-DAE3Xg7g.cjs → select-CvPIAeWb.cjs} +2 -2
  244. package/dist/{select-DAE3Xg7g.cjs.map → select-CvPIAeWb.cjs.map} +1 -1
  245. package/dist/{separator-ZGvcRkrl.d.cts → separator-BxaNFFmP.d.cts} +3 -3
  246. package/dist/{separator-DW2PaiUK.js → separator-C7HQ2ThL.js} +2 -2
  247. package/dist/{separator-DW2PaiUK.js.map → separator-C7HQ2ThL.js.map} +1 -1
  248. package/dist/{separator-9s0ppov1.d.ts → separator-CWIfZAle.d.ts} +3 -3
  249. package/dist/{separator-JGL-8B0V.cjs → separator-WF5zTNGS.cjs} +2 -2
  250. package/dist/{separator-JGL-8B0V.cjs.map → separator-WF5zTNGS.cjs.map} +1 -1
  251. package/dist/{sheet-BumlzKcW.js → sheet-E0gvN9Gp.js} +2 -2
  252. package/dist/{sheet-BumlzKcW.js.map → sheet-E0gvN9Gp.js.map} +1 -1
  253. package/dist/{sheet-slcLNlWv.cjs → sheet-cjXJAfUE.cjs} +2 -2
  254. package/dist/{sheet-slcLNlWv.cjs.map → sheet-cjXJAfUE.cjs.map} +1 -1
  255. package/dist/{sidebar-CROF88rz.cjs → sidebar-BF_5REY5.cjs} +2 -2
  256. package/dist/{sidebar-CROF88rz.cjs.map → sidebar-BF_5REY5.cjs.map} +1 -1
  257. package/dist/{sidebar-CrStgrmq.js → sidebar-BgOz0zZh.js} +2 -2
  258. package/dist/{sidebar-CrStgrmq.js.map → sidebar-BgOz0zZh.js.map} +1 -1
  259. package/dist/{skeleton-CmGSyYRm.cjs → skeleton-BA-3d3bn.cjs} +1 -1
  260. package/dist/{skeleton-CmGSyYRm.cjs.map → skeleton-BA-3d3bn.cjs.map} +1 -1
  261. package/dist/{skeleton-DFF0w4en.js → skeleton-ByN-MrQO.js} +1 -1
  262. package/dist/{skeleton-DFF0w4en.js.map → skeleton-ByN-MrQO.js.map} +1 -1
  263. package/dist/{switch-BnHSwQ5T.cjs → switch-BLfDkOOl.cjs} +2 -2
  264. package/dist/{switch-BnHSwQ5T.cjs.map → switch-BLfDkOOl.cjs.map} +1 -1
  265. package/dist/{switch-iwm2-R_e.js → switch-C8OMYLfj.js} +2 -2
  266. package/dist/{switch-iwm2-R_e.js.map → switch-C8OMYLfj.js.map} +1 -1
  267. package/dist/systems/google.cjs +1 -1
  268. package/dist/systems/google.js +1 -1
  269. package/dist/table/index.cjs +1 -1
  270. package/dist/table/index.cjs.map +1 -1
  271. package/dist/table/index.d.cts +4 -8
  272. package/dist/table/index.d.ts +4 -8
  273. package/dist/table/index.js +1 -1
  274. package/dist/table/index.js.map +1 -1
  275. package/dist/table-BUu5ju9Z.js +2 -0
  276. package/dist/table-BUu5ju9Z.js.map +1 -0
  277. package/dist/table-CJM3QVkD.cjs +2 -0
  278. package/dist/table-CJM3QVkD.cjs.map +1 -0
  279. package/dist/{tabs-D4Q78tF2.js → tabs-D4uObFGW.js} +2 -2
  280. package/dist/{tabs-D4Q78tF2.js.map → tabs-D4uObFGW.js.map} +1 -1
  281. package/dist/{tabs-BYS9bv-R.cjs → tabs-MolLf09Q.cjs} +2 -2
  282. package/dist/{tabs-BYS9bv-R.cjs.map → tabs-MolLf09Q.cjs.map} +1 -1
  283. package/dist/textarea-Br_DX1wm.js +2 -0
  284. package/dist/textarea-Br_DX1wm.js.map +1 -0
  285. package/dist/textarea-jrCmozqt.cjs +2 -0
  286. package/dist/textarea-jrCmozqt.cjs.map +1 -0
  287. package/dist/title-C5OV9Ei4.js +2 -0
  288. package/dist/{title-Cb4SosQb.js.map → title-C5OV9Ei4.js.map} +1 -1
  289. package/dist/{title-B51-Oj-Y.cjs → title-CfI-y7Xt.cjs} +2 -2
  290. package/dist/{title-B51-Oj-Y.cjs.map → title-CfI-y7Xt.cjs.map} +1 -1
  291. package/dist/{toggle-DpUG0EqP.d.cts → toggle-D-YjNMF8.d.cts} +5 -5
  292. package/dist/{toggle-D_5Xh3Rl.cjs → toggle-D0B4Ba4H.cjs} +2 -2
  293. package/dist/{toggle-D_5Xh3Rl.cjs.map → toggle-D0B4Ba4H.cjs.map} +1 -1
  294. package/dist/{toggle-D8VezYdr.js → toggle-DuNq0es1.js} +2 -2
  295. package/dist/{toggle-D8VezYdr.js.map → toggle-DuNq0es1.js.map} +1 -1
  296. package/dist/{toggle-DIRRdVOx.d.ts → toggle-Sx_iHryx.d.ts} +5 -5
  297. package/dist/{tooltip-CTUSyCdh.js → tooltip-BTrjCwd8.js} +2 -2
  298. package/dist/{tooltip-CTUSyCdh.js.map → tooltip-BTrjCwd8.js.map} +1 -1
  299. package/dist/{tooltip-ChyvXWdm.d.ts → tooltip-DItQeu57.d.ts} +6 -6
  300. package/dist/{tooltip-CQ8hkJ42.cjs → tooltip-DXvcPsvM.cjs} +2 -2
  301. package/dist/{tooltip-CQ8hkJ42.cjs.map → tooltip-DXvcPsvM.cjs.map} +1 -1
  302. package/dist/{tooltip-BZDwRKZ6.d.cts → tooltip-sRRA22ab.d.cts} +6 -6
  303. package/dist/{types-BpvTO4OF.d.ts → types-BHVCAwAo.d.ts} +1 -1
  304. package/dist/{types-Cgr_eoPF.js → types-BiiGENwa.js} +1 -1
  305. package/dist/{types-Cgr_eoPF.js.map → types-BiiGENwa.js.map} +1 -1
  306. package/dist/{types-DMNCf28U.cjs → types-D32qXHff.cjs} +1 -1
  307. package/dist/{types-DMNCf28U.cjs.map → types-D32qXHff.cjs.map} +1 -1
  308. package/dist/typography/paragraph.cjs +1 -1
  309. package/dist/typography/paragraph.d.cts +2 -2
  310. package/dist/typography/paragraph.d.ts +2 -2
  311. package/dist/typography/paragraph.js +1 -1
  312. package/dist/typography/title.cjs +1 -1
  313. package/dist/typography/title.d.cts +2 -2
  314. package/dist/typography/title.d.ts +2 -2
  315. package/dist/typography/title.js +1 -1
  316. package/dist/ui/alert-dialog.cjs +1 -1
  317. package/dist/ui/alert-dialog.d.cts +12 -12
  318. package/dist/ui/alert-dialog.d.ts +12 -12
  319. package/dist/ui/alert-dialog.js +1 -1
  320. package/dist/ui/alert.cjs +1 -1
  321. package/dist/ui/alert.cjs.map +1 -1
  322. package/dist/ui/alert.d.cts +54 -9
  323. package/dist/ui/alert.d.ts +54 -9
  324. package/dist/ui/alert.js +1 -1
  325. package/dist/ui/alert.js.map +1 -1
  326. package/dist/ui/aspect-ratio.cjs +1 -1
  327. package/dist/ui/aspect-ratio.d.cts +2 -2
  328. package/dist/ui/aspect-ratio.d.ts +2 -2
  329. package/dist/ui/aspect-ratio.js +1 -1
  330. package/dist/ui/avatar.cjs +1 -1
  331. package/dist/ui/avatar.d.cts +4 -4
  332. package/dist/ui/avatar.d.ts +4 -4
  333. package/dist/ui/avatar.js +1 -1
  334. package/dist/ui/badge.cjs +1 -1
  335. package/dist/ui/badge.d.cts +4 -4
  336. package/dist/ui/badge.d.ts +4 -4
  337. package/dist/ui/badge.js +1 -1
  338. package/dist/ui/breadcrumb.cjs +1 -1
  339. package/dist/ui/breadcrumb.cjs.map +1 -1
  340. package/dist/ui/breadcrumb.d.cts +30 -8
  341. package/dist/ui/breadcrumb.d.ts +30 -8
  342. package/dist/ui/breadcrumb.js +1 -1
  343. package/dist/ui/breadcrumb.js.map +1 -1
  344. package/dist/ui/button.cjs +1 -1
  345. package/dist/ui/button.d.cts +2 -2
  346. package/dist/ui/button.d.ts +2 -2
  347. package/dist/ui/button.js +1 -1
  348. package/dist/ui/buttons/add-new.cjs +1 -1
  349. package/dist/ui/buttons/add-new.js +1 -1
  350. package/dist/ui/buttons/edit.cjs +1 -1
  351. package/dist/ui/buttons/edit.cjs.map +1 -1
  352. package/dist/ui/buttons/edit.js +1 -1
  353. package/dist/ui/buttons/edit.js.map +1 -1
  354. package/dist/ui/buttons/refresh.cjs +1 -1
  355. package/dist/ui/buttons/refresh.js +1 -1
  356. package/dist/ui/buttons/trash.cjs +1 -1
  357. package/dist/ui/buttons/trash.cjs.map +1 -1
  358. package/dist/ui/buttons/trash.js +1 -1
  359. package/dist/ui/buttons/trash.js.map +1 -1
  360. package/dist/ui/buttons/upload-image.cjs +1 -1
  361. package/dist/ui/buttons/upload-image.cjs.map +1 -1
  362. package/dist/ui/buttons/upload-image.js +1 -1
  363. package/dist/ui/buttons/upload-image.js.map +1 -1
  364. package/dist/ui/calendar.cjs +1 -1
  365. package/dist/ui/calendar.d.cts +4 -4
  366. package/dist/ui/calendar.d.ts +4 -4
  367. package/dist/ui/calendar.js +1 -1
  368. package/dist/ui/card.cjs +1 -1
  369. package/dist/ui/card.d.cts +8 -8
  370. package/dist/ui/card.d.ts +8 -8
  371. package/dist/ui/card.js +1 -1
  372. package/dist/ui/carousel.cjs +1 -1
  373. package/dist/ui/carousel.cjs.map +1 -1
  374. package/dist/ui/carousel.d.cts +7 -7
  375. package/dist/ui/carousel.d.ts +7 -7
  376. package/dist/ui/carousel.js +1 -1
  377. package/dist/ui/carousel.js.map +1 -1
  378. package/dist/ui/collapsible.cjs +1 -1
  379. package/dist/ui/collapsible.d.cts +4 -4
  380. package/dist/ui/collapsible.d.ts +4 -4
  381. package/dist/ui/collapsible.js +1 -1
  382. package/dist/ui/command.cjs +1 -1
  383. package/dist/ui/command.d.cts +2 -2
  384. package/dist/ui/command.d.ts +2 -2
  385. package/dist/ui/command.js +1 -1
  386. package/dist/ui/context-menu.cjs +1 -1
  387. package/dist/ui/context-menu.d.cts +16 -16
  388. package/dist/ui/context-menu.d.ts +16 -16
  389. package/dist/ui/context-menu.js +1 -1
  390. package/dist/ui/dialog.cjs +1 -1
  391. package/dist/ui/dialog.d.cts +1 -1
  392. package/dist/ui/dialog.d.ts +1 -1
  393. package/dist/ui/dialog.js +1 -1
  394. package/dist/ui/dropdown-menu.cjs +1 -1
  395. package/dist/ui/dropdown-menu.d.cts +16 -16
  396. package/dist/ui/dropdown-menu.d.ts +16 -16
  397. package/dist/ui/dropdown-menu.js +1 -1
  398. package/dist/ui/file-uploader.cjs +2 -2
  399. package/dist/ui/file-uploader.cjs.map +1 -1
  400. package/dist/ui/file-uploader.d.cts +2 -2
  401. package/dist/ui/file-uploader.d.ts +2 -2
  402. package/dist/ui/file-uploader.js +2 -2
  403. package/dist/ui/file-uploader.js.map +1 -1
  404. package/dist/ui/form.cjs +1 -1
  405. package/dist/ui/form.d.cts +7 -7
  406. package/dist/ui/form.d.ts +7 -7
  407. package/dist/ui/form.js +1 -1
  408. package/dist/ui/hover-card.cjs +1 -1
  409. package/dist/ui/hover-card.d.cts +4 -4
  410. package/dist/ui/hover-card.d.ts +4 -4
  411. package/dist/ui/hover-card.js +1 -1
  412. package/dist/ui/image.cjs +1 -1
  413. package/dist/ui/image.js +1 -1
  414. package/dist/ui/input-otp.cjs +1 -1
  415. package/dist/ui/input-otp.d.cts +5 -5
  416. package/dist/ui/input-otp.d.ts +5 -5
  417. package/dist/ui/input-otp.js +1 -1
  418. package/dist/ui/input.cjs +1 -1
  419. package/dist/ui/input.d.cts +1 -1
  420. package/dist/ui/input.d.ts +1 -1
  421. package/dist/ui/input.js +1 -1
  422. package/dist/ui/inputs/search-input.cjs +1 -1
  423. package/dist/ui/inputs/search-input.d.cts +3 -3
  424. package/dist/ui/inputs/search-input.d.ts +3 -3
  425. package/dist/ui/inputs/search-input.js +1 -1
  426. package/dist/ui/label.cjs +1 -1
  427. package/dist/ui/label.d.cts +2 -2
  428. package/dist/ui/label.d.ts +2 -2
  429. package/dist/ui/label.js +1 -1
  430. package/dist/ui/menubar.cjs +1 -1
  431. package/dist/ui/menubar.d.cts +17 -17
  432. package/dist/ui/menubar.d.ts +17 -17
  433. package/dist/ui/menubar.js +1 -1
  434. package/dist/ui/multi-select.cjs +1 -1
  435. package/dist/ui/multi-select.d.cts +2 -2
  436. package/dist/ui/multi-select.d.ts +2 -2
  437. package/dist/ui/multi-select.js +1 -1
  438. package/dist/ui/navigation-menu.cjs +1 -1
  439. package/dist/ui/navigation-menu.d.cts +11 -11
  440. package/dist/ui/navigation-menu.d.ts +11 -11
  441. package/dist/ui/navigation-menu.js +1 -1
  442. package/dist/ui/pagination.cjs +1 -1
  443. package/dist/ui/pagination.cjs.map +1 -1
  444. package/dist/ui/pagination.d.cts +9 -9
  445. package/dist/ui/pagination.d.ts +9 -9
  446. package/dist/ui/pagination.js +1 -1
  447. package/dist/ui/pagination.js.map +1 -1
  448. package/dist/ui/popover.cjs +1 -1
  449. package/dist/ui/popover.d.cts +5 -5
  450. package/dist/ui/popover.d.ts +5 -5
  451. package/dist/ui/popover.js +1 -1
  452. package/dist/ui/progress.cjs +1 -1
  453. package/dist/ui/progress.d.cts +2 -2
  454. package/dist/ui/progress.d.ts +2 -2
  455. package/dist/ui/progress.js +1 -1
  456. package/dist/ui/radio-group.cjs +1 -1
  457. package/dist/ui/radio-group.d.cts +3 -3
  458. package/dist/ui/radio-group.d.ts +3 -3
  459. package/dist/ui/radio-group.js +1 -1
  460. package/dist/ui/resizable.d.cts +4 -4
  461. package/dist/ui/resizable.d.ts +4 -4
  462. package/dist/ui/scroll-area.cjs +1 -1
  463. package/dist/ui/scroll-area.d.cts +4 -3
  464. package/dist/ui/scroll-area.d.ts +4 -3
  465. package/dist/ui/scroll-area.js +1 -1
  466. package/dist/ui/select.cjs +1 -1
  467. package/dist/ui/select.d.cts +11 -11
  468. package/dist/ui/select.d.ts +11 -11
  469. package/dist/ui/select.js +1 -1
  470. package/dist/ui/separator.cjs +1 -1
  471. package/dist/ui/separator.d.cts +1 -1
  472. package/dist/ui/separator.d.ts +1 -1
  473. package/dist/ui/separator.js +1 -1
  474. package/dist/ui/sheet.cjs +1 -1
  475. package/dist/ui/sheet.d.cts +9 -9
  476. package/dist/ui/sheet.d.ts +9 -9
  477. package/dist/ui/sheet.js +1 -1
  478. package/dist/ui/sidebar.cjs +1 -1
  479. package/dist/ui/sidebar.cjs.map +1 -1
  480. package/dist/ui/sidebar.d.cts +30 -30
  481. package/dist/ui/sidebar.d.ts +30 -30
  482. package/dist/ui/sidebar.js +1 -1
  483. package/dist/ui/sidebar.js.map +1 -1
  484. package/dist/ui/skeleton.cjs +1 -1
  485. package/dist/ui/skeleton.d.cts +2 -2
  486. package/dist/ui/skeleton.d.ts +2 -2
  487. package/dist/ui/skeleton.js +1 -1
  488. package/dist/ui/slider.cjs +1 -1
  489. package/dist/ui/slider.cjs.map +1 -1
  490. package/dist/ui/slider.d.cts +2 -2
  491. package/dist/ui/slider.d.ts +2 -2
  492. package/dist/ui/slider.js +1 -1
  493. package/dist/ui/slider.js.map +1 -1
  494. package/dist/ui/sonner.d.cts +2 -2
  495. package/dist/ui/sonner.d.ts +2 -2
  496. package/dist/ui/switch.cjs +1 -1
  497. package/dist/ui/switch.d.cts +2 -2
  498. package/dist/ui/switch.d.ts +2 -2
  499. package/dist/ui/switch.js +1 -1
  500. package/dist/ui/table.cjs +1 -1
  501. package/dist/ui/table.d.cts +9 -9
  502. package/dist/ui/table.d.ts +9 -9
  503. package/dist/ui/table.js +1 -1
  504. package/dist/ui/tabs.cjs +1 -1
  505. package/dist/ui/tabs.d.cts +5 -5
  506. package/dist/ui/tabs.d.ts +5 -5
  507. package/dist/ui/tabs.js +1 -1
  508. package/dist/ui/textarea.cjs +1 -1
  509. package/dist/ui/textarea.d.cts +2 -2
  510. package/dist/ui/textarea.d.ts +2 -2
  511. package/dist/ui/textarea.js +1 -1
  512. package/dist/ui/toggle-group.cjs +1 -1
  513. package/dist/ui/toggle-group.d.cts +4 -4
  514. package/dist/ui/toggle-group.d.ts +4 -4
  515. package/dist/ui/toggle-group.js +1 -1
  516. package/dist/ui/toggle.cjs +1 -1
  517. package/dist/ui/toggle.d.cts +1 -1
  518. package/dist/ui/toggle.d.ts +1 -1
  519. package/dist/ui/toggle.js +1 -1
  520. package/dist/ui/tooltip.cjs +1 -1
  521. package/dist/ui/tooltip.d.cts +1 -1
  522. package/dist/ui/tooltip.d.ts +1 -1
  523. package/dist/ui/tooltip.js +1 -1
  524. package/package.json +2 -1
  525. package/dist/alert-dialog-B5dXkMIF.js +0 -2
  526. package/dist/alert-dialog-B5dXkMIF.js.map +0 -1
  527. package/dist/alert-dialog-D-4wxqLK.cjs +0 -2
  528. package/dist/alert-dialog-D-4wxqLK.cjs.map +0 -1
  529. package/dist/avatar-ClIgQDJO.js +0 -2
  530. package/dist/button-119IIVCy.cjs +0 -2
  531. package/dist/button-119IIVCy.cjs.map +0 -1
  532. package/dist/button-CvQQTSka.js +0 -2
  533. package/dist/button-CvQQTSka.js.map +0 -1
  534. package/dist/button-NPRxTW9Y.d.cts +0 -26
  535. package/dist/button-ld6DUDGr.d.ts +0 -26
  536. package/dist/calendar-B6F_Lppz.cjs +0 -2
  537. package/dist/calendar-B6F_Lppz.cjs.map +0 -1
  538. package/dist/calendar-CXddeN7A.js +0 -2
  539. package/dist/calendar-CXddeN7A.js.map +0 -1
  540. package/dist/error-dialog-CphiTB4y.js +0 -2
  541. package/dist/error-dialog-DGg0x5xF.cjs +0 -2
  542. package/dist/form-B-KLKj5u.js +0 -2
  543. package/dist/form-wrapper-C3pU1F5r.cjs +0 -2
  544. package/dist/form-wrapper-Deo8gKv5.js +0 -2
  545. package/dist/image-D3D8dE6s.cjs +0 -2
  546. package/dist/image-Dm3jT9QX.js +0 -2
  547. package/dist/input-BUYJ4_aj.js +0 -2
  548. package/dist/input-BUYJ4_aj.js.map +0 -1
  549. package/dist/input-DgtTVBtN.cjs +0 -2
  550. package/dist/input-DgtTVBtN.cjs.map +0 -1
  551. package/dist/paragraph-BwSskqDY.js +0 -2
  552. package/dist/progress-DdINdNdF.js +0 -2
  553. package/dist/scroll-area-CqevC_nb.js +0 -2
  554. package/dist/scroll-area-CqevC_nb.js.map +0 -1
  555. package/dist/scroll-area-Dgjr1n1T.cjs +0 -2
  556. package/dist/scroll-area-Dgjr1n1T.cjs.map +0 -1
  557. package/dist/table-CuhHhpgi.cjs +0 -2
  558. package/dist/table-CuhHhpgi.cjs.map +0 -1
  559. package/dist/table-oROsZcz4.js +0 -2
  560. package/dist/table-oROsZcz4.js.map +0 -1
  561. package/dist/textarea-DK_bNV0u.cjs +0 -2
  562. package/dist/textarea-DK_bNV0u.cjs.map +0 -1
  563. package/dist/textarea-DbNqKCAi.js +0 -2
  564. package/dist/textarea-DbNqKCAi.js.map +0 -1
  565. package/dist/title-Cb4SosQb.js +0 -2
@@ -1,2 +1,2 @@
1
1
  import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t,jsxs as n}from"react/jsx-runtime";import{Drawer as r}from"vaul";function i({...e}){return t(r.Root,{"data-slot":`drawer`,...e})}function a({...e}){return t(r.Portal,{"data-slot":`drawer-portal`,...e})}function o({className:n,...i}){return t(r.Overlay,{"data-slot":`drawer-overlay`,className:e(`fixed inset-0 z-50 bg-black/50`,`data-[state=open]:animate-in`,`data-[state=closed]:animate-out`,`data-[state=open]:fade-in-0`,`data-[state=closed]:fade-out-0`,n),...i})}function s({className:i,children:s,...c}){return n(a,{"data-slot":`drawer-portal`,children:[t(o,{}),n(r.Content,{"data-slot":`drawer-content`,className:e(`group/drawer-content bg-background shadow-card fixed z-50 flex h-auto flex-col`,`data-[vaul-drawer-direction=top]:inset-x-0`,`data-[vaul-drawer-direction=top]:top-0`,`data-[vaul-drawer-direction=top]:mb-24`,`data-[vaul-drawer-direction=top]:max-h-[80vh]`,`data-[vaul-drawer-direction=top]:rounded-b-lg`,`data-[vaul-drawer-direction=bottom]:inset-x-0`,`data-[vaul-drawer-direction=bottom]:bottom-0`,`data-[vaul-drawer-direction=bottom]:mt-24`,`data-[vaul-drawer-direction=bottom]:max-h-[80vh]`,`data-[vaul-drawer-direction=bottom]:rounded-t-lg`,`data-[vaul-drawer-direction=right]:inset-y-0`,`data-[vaul-drawer-direction=right]:right-0`,`data-[vaul-drawer-direction=right]:w-3/4`,`data-[vaul-drawer-direction=right]:sm:max-w-sm`,`data-[vaul-drawer-direction=left]:inset-y-0`,`data-[vaul-drawer-direction=left]:left-0`,`data-[vaul-drawer-direction=left]:w-3/4`,`data-[vaul-drawer-direction=left]:sm:max-w-sm`,i),...c,children:[t(`div`,{className:`bg-border-weak mx-auto mt-4 hidden h-2 w-25 shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block`}),s]})]})}function c({className:n,...r}){return t(`div`,{"data-slot":`drawer-header`,className:e(`flex flex-col gap-0.5 p-4`,`md:gap-1.5 md:text-left`,`group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center`,`group-data-[vaul-drawer-direction=top]/drawer-content:text-center`,n),...r})}function l({className:n,...r}){return t(`div`,{"data-slot":`drawer-footer`,className:e(`mt-auto flex flex-col gap-2 p-4`,n),...r})}function u({className:n,...i}){return t(r.Title,{"data-slot":`drawer-title`,className:e(`text-text-positive font-semibold`,n),...i})}function d({className:n,...i}){return t(r.Description,{"data-slot":`drawer-description`,className:e(`text-text-positive-weak text-sm`,n),...i})}export{i as Drawer,s as DrawerContent,d as DrawerDescription,l as DrawerFooter,c as DrawerHeader,u as DrawerTitle};
2
- //# sourceMappingURL=drawer-DnhgwetT.js.map
2
+ //# sourceMappingURL=drawer-hi51Beoq.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawer-DnhgwetT.js","names":["Drawer","DrawerPrimitive"],"sources":["../packages/components/ui/drawer.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { Drawer as DrawerPrimitive } from 'vaul'\n\nfunction Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />\n}\n\nfunction DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />\n}\n\nfunction DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />\n}\n\nfunction DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />\n}\n\nfunction DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {\n return (\n <DrawerPrimitive.Overlay\n data-slot=\"drawer-overlay\"\n className={cn(\n 'fixed inset-0 z-50 bg-black/50',\n 'data-[state=open]:animate-in',\n 'data-[state=closed]:animate-out',\n 'data-[state=open]:fade-in-0',\n 'data-[state=closed]:fade-out-0',\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DrawerContent({ className, children, ...props }: React.ComponentProps<typeof DrawerPrimitive.Content>) {\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n data-slot=\"drawer-content\"\n className={cn(\n 'group/drawer-content bg-background shadow-card fixed z-50 flex h-auto flex-col',\n\n 'data-[vaul-drawer-direction=top]:inset-x-0',\n 'data-[vaul-drawer-direction=top]:top-0',\n 'data-[vaul-drawer-direction=top]:mb-24',\n 'data-[vaul-drawer-direction=top]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=top]:rounded-b-lg',\n\n 'data-[vaul-drawer-direction=bottom]:inset-x-0',\n 'data-[vaul-drawer-direction=bottom]:bottom-0',\n 'data-[vaul-drawer-direction=bottom]:mt-24',\n 'data-[vaul-drawer-direction=bottom]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=bottom]:rounded-t-lg',\n\n 'data-[vaul-drawer-direction=right]:inset-y-0',\n 'data-[vaul-drawer-direction=right]:right-0',\n 'data-[vaul-drawer-direction=right]:w-3/4',\n 'data-[vaul-drawer-direction=right]:sm:max-w-sm',\n\n 'data-[vaul-drawer-direction=left]:inset-y-0',\n 'data-[vaul-drawer-direction=left]:left-0',\n 'data-[vaul-drawer-direction=left]:w-3/4',\n 'data-[vaul-drawer-direction=left]:sm:max-w-sm',\n className,\n )}\n {...props}\n >\n <div className=\"bg-border-weak mx-auto mt-4 hidden h-2 w-25 shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n )\n}\n\nfunction DrawerHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n 'flex flex-col gap-0.5 p-4',\n 'md:gap-1.5 md:text-left',\n 'group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center',\n 'group-data-[vaul-drawer-direction=top]/drawer-content:text-center',\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"drawer-footer\" className={cn('mt-auto flex flex-col gap-2 p-4', className)} {...props} />\n}\n\nfunction DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return <DrawerPrimitive.Title data-slot=\"drawer-title\" className={cn('text-text-positive font-semibold', className)} {...props} />\n}\n\nfunction DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return <DrawerPrimitive.Description data-slot=\"drawer-description\" className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nexport { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger }\n"],"mappings":"oIAKA,SAASA,EAAO,CAAE,GAAG,GAA4D,CAC/E,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,GAAI,IAOtD,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAACA,EAAgB,OAAA,CAAO,YAAU,gBAAgB,GAAI,IAO/D,SAAS,EAAc,CAAE,YAAW,GAAG,GAA+D,CACpG,OACE,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,iCACA,+BACA,kCACA,8BACA,iCACA,GAEF,GAAI,IAKV,SAAS,EAAc,CAAE,YAAW,WAAU,GAAG,GAA+D,CAC9G,OACE,EAAC,EAAA,CAAa,YAAU,0BACtB,EAAC,EAAA,IACD,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,iFAEA,6CACA,yCACA,yCACA,gDACA,gDAEA,gDACA,+CACA,4CACA,mDACA,mDAEA,+CACA,6CACA,2CACA,iDAEA,8CACA,2CACA,0CACA,gDACA,GAEF,GAAI,YAEJ,EAAC,MAAA,CAAI,UAAU,qIACd,QAMT,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OACE,EAAC,MAAA,CACC,YAAU,gBACV,UAAW,EACT,4BACA,0BACA,uEACA,oEACA,GAEF,GAAI,IAKV,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAC,MAAA,CAAI,YAAU,gBAAgB,UAAW,EAAG,kCAAmC,GAAY,GAAI,IAGzG,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,UAAW,EAAG,mCAAoC,GAAY,GAAI,IAG3H,SAAS,EAAkB,CAAE,YAAW,GAAG,GAAmE,CAC5G,OAAO,EAACA,EAAgB,YAAA,CAAY,YAAU,qBAAqB,UAAW,EAAG,kCAAmC,GAAY,GAAI"}
1
+ {"version":3,"file":"drawer-hi51Beoq.js","names":["Drawer","DrawerPrimitive"],"sources":["../packages/components/ui/drawer.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { Drawer as DrawerPrimitive } from 'vaul'\n\nfunction Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />\n}\n\nfunction DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />\n}\n\nfunction DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />\n}\n\nfunction DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />\n}\n\nfunction DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {\n return (\n <DrawerPrimitive.Overlay\n data-slot=\"drawer-overlay\"\n className={cn(\n 'fixed inset-0 z-50 bg-black/50',\n 'data-[state=open]:animate-in',\n 'data-[state=closed]:animate-out',\n 'data-[state=open]:fade-in-0',\n 'data-[state=closed]:fade-out-0',\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DrawerContent({ className, children, ...props }: React.ComponentProps<typeof DrawerPrimitive.Content>) {\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n data-slot=\"drawer-content\"\n className={cn(\n 'group/drawer-content bg-background shadow-card fixed z-50 flex h-auto flex-col',\n\n 'data-[vaul-drawer-direction=top]:inset-x-0',\n 'data-[vaul-drawer-direction=top]:top-0',\n 'data-[vaul-drawer-direction=top]:mb-24',\n 'data-[vaul-drawer-direction=top]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=top]:rounded-b-lg',\n\n 'data-[vaul-drawer-direction=bottom]:inset-x-0',\n 'data-[vaul-drawer-direction=bottom]:bottom-0',\n 'data-[vaul-drawer-direction=bottom]:mt-24',\n 'data-[vaul-drawer-direction=bottom]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=bottom]:rounded-t-lg',\n\n 'data-[vaul-drawer-direction=right]:inset-y-0',\n 'data-[vaul-drawer-direction=right]:right-0',\n 'data-[vaul-drawer-direction=right]:w-3/4',\n 'data-[vaul-drawer-direction=right]:sm:max-w-sm',\n\n 'data-[vaul-drawer-direction=left]:inset-y-0',\n 'data-[vaul-drawer-direction=left]:left-0',\n 'data-[vaul-drawer-direction=left]:w-3/4',\n 'data-[vaul-drawer-direction=left]:sm:max-w-sm',\n className,\n )}\n {...props}\n >\n <div className=\"bg-border-weak mx-auto mt-4 hidden h-2 w-25 shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n )\n}\n\nfunction DrawerHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n 'flex flex-col gap-0.5 p-4',\n 'md:gap-1.5 md:text-left',\n 'group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center',\n 'group-data-[vaul-drawer-direction=top]/drawer-content:text-center',\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"drawer-footer\" className={cn('mt-auto flex flex-col gap-2 p-4', className)} {...props} />\n}\n\nfunction DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return <DrawerPrimitive.Title data-slot=\"drawer-title\" className={cn('text-text-positive font-semibold', className)} {...props} />\n}\n\nfunction DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return <DrawerPrimitive.Description data-slot=\"drawer-description\" className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nexport { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger }\n"],"mappings":"oIAKA,SAASA,EAAO,CAAE,GAAG,GAA4D,CAC/E,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,GAAI,IAOtD,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAACA,EAAgB,OAAA,CAAO,YAAU,gBAAgB,GAAI,IAO/D,SAAS,EAAc,CAAE,YAAW,GAAG,GAA+D,CACpG,OACE,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,iCACA,+BACA,kCACA,8BACA,iCACA,GAEF,GAAI,IAKV,SAAS,EAAc,CAAE,YAAW,WAAU,GAAG,GAA+D,CAC9G,OACE,EAAC,EAAA,CAAa,YAAU,0BACtB,EAAC,EAAA,IACD,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,iFAEA,6CACA,yCACA,yCACA,gDACA,gDAEA,gDACA,+CACA,4CACA,mDACA,mDAEA,+CACA,6CACA,2CACA,iDAEA,8CACA,2CACA,0CACA,gDACA,GAEF,GAAI,YAEJ,EAAC,MAAA,CAAI,UAAU,qIACd,QAMT,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OACE,EAAC,MAAA,CACC,YAAU,gBACV,UAAW,EACT,4BACA,0BACA,uEACA,oEACA,GAEF,GAAI,IAKV,SAAS,EAAa,CAAE,YAAW,GAAG,GAAsC,CAC1E,OAAO,EAAC,MAAA,CAAI,YAAU,gBAAgB,UAAW,EAAG,kCAAmC,GAAY,GAAI,IAGzG,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,UAAW,EAAG,mCAAoC,GAAY,GAAI,IAG3H,SAAS,EAAkB,CAAE,YAAW,GAAG,GAAmE,CAC5G,OAAO,EAACA,EAAgB,YAAA,CAAY,YAAU,qBAAqB,UAAW,EAAG,kCAAmC,GAAY,GAAI"}
@@ -1,2 +1,2 @@
1
- import{CheckIcon as e,ChevronRightIcon as t,CircleIcon as n}from"lucide-react";import{cn as r}from"@customafk/react-toolkit/utils";import{DropdownMenu as i}from"radix-ui";import{jsx as a,jsxs as o}from"react/jsx-runtime";function s({...e}){return a(i.Root,{"data-slot":`dropdown-menu`,...e})}function c({...e}){return a(i.Portal,{"data-slot":`dropdown-menu-portal`,...e})}function l({...e}){return a(i.Trigger,{"data-slot":`dropdown-menu-trigger`,...e})}function u({className:e,sideOffset:t=4,align:n=`start`,...o}){return a(i.Portal,{children:a(i.Content,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:r(`bg-popover text-text-positive`,`z-50`,`min-w-32`,`overflow-x-hidden overflow-y-auto`,`shadow-dropdown rounded-md p-1.5`,`max-h-(--radix-dropdown-menu-content-available-height)`,`origin-(--radix-dropdown-menu-content-transform-origin)`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=closed]:zoom-out-95`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...o,align:n})})}function d({...e}){return a(i.Group,{"data-slot":`dropdown-menu-group`,...e})}function f({className:e,inset:t,variant:n=`default`,...o}){return a(i.Item,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:r(`relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[inset]:pl-8`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`data-[variant=destructive]:text-danger`,`data-[variant=destructive]:focus:bg-danger-muted`,`data-[variant=destructive]:focus:text-danger-strong`,`data-[variant=destructive]:*:[svg]:!text-danger`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-weak`,e),...o})}function p({className:t,children:n,checked:s,...c}){return o(i.CheckboxItem,{"data-slot":`dropdown-menu-checkbox-item`,className:r(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[disabled]:opacity-50`,`data-[disabled]:pointer-events-none`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,t),checked:s,...c,children:[a(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:a(i.ItemIndicator,{children:a(e,{size:16})})}),n]})}function m({...e}){return a(i.RadioGroup,{"data-slot":`dropdown-menu-radio-group`,...e})}function h({className:e,children:t,...s}){return o(i.RadioItem,{"data-slot":`dropdown-menu-radio-item`,className:r(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,e),...s,children:[a(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:a(i.ItemIndicator,{children:a(n,{className:`size-2 fill-current`})})}),t]})}function g({className:e,inset:t,...n}){return a(i.Label,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:r(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...n})}function _({className:e,...t}){return a(i.Separator,{"data-slot":`dropdown-menu-separator`,className:r(`bg-border-weak -mx-1 my-1 h-px`,e),...t})}function v({className:e,...t}){return a(`span`,{"data-slot":`dropdown-menu-shortcut`,className:r(`text-text-positive-muted ml-auto text-xs tracking-widest`,e),...t})}function y({...e}){return a(i.Sub,{"data-slot":`dropdown-menu-sub`,...e})}function b({className:e,inset:n,children:s,...c}){return o(i.SubTrigger,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":n,className:r(`flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[state=open]:bg-muted-muted`,`data-[state=open]:text-text-positive-strong`,`data-[inset]:pl-8`,e),...c,children:[s,a(t,{className:`ml-auto size-4`})]})}function x({className:e,...t}){return a(i.SubContent,{"data-slot":`dropdown-menu-sub-content`,className:r(`bg-popover text-text-positive`,`shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:zoom-out-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...t})}export{s as DropdownMenu,p as DropdownMenuCheckboxItem,u as DropdownMenuContent,d as DropdownMenuGroup,f as DropdownMenuItem,g as DropdownMenuLabel,c as DropdownMenuPortal,m as DropdownMenuRadioGroup,h as DropdownMenuRadioItem,_ as DropdownMenuSeparator,v as DropdownMenuShortcut,y as DropdownMenuSub,x as DropdownMenuSubContent,b as DropdownMenuSubTrigger,l as DropdownMenuTrigger};
2
- //# sourceMappingURL=dropdown-menu-Bj39Rmxd.js.map
1
+ import{CheckIcon as e,ChevronRightIcon as t,CircleIcon as n}from"lucide-react";import{cn as r}from"@customafk/react-toolkit/utils";import{jsx as i,jsxs as a}from"react/jsx-runtime";import{DropdownMenu as o}from"radix-ui";function s({...e}){return i(o.Root,{"data-slot":`dropdown-menu`,...e})}function c({...e}){return i(o.Portal,{"data-slot":`dropdown-menu-portal`,...e})}function l({...e}){return i(o.Trigger,{"data-slot":`dropdown-menu-trigger`,...e})}function u({className:e,sideOffset:t=4,align:n=`start`,...a}){return i(o.Portal,{children:i(o.Content,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:r(`bg-popover text-text-positive`,`z-50`,`min-w-32`,`overflow-x-hidden overflow-y-auto`,`shadow-dropdown rounded-md p-1.5`,`max-h-(--radix-dropdown-menu-content-available-height)`,`origin-(--radix-dropdown-menu-content-transform-origin)`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=closed]:zoom-out-95`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...a,align:n})})}function d({...e}){return i(o.Group,{"data-slot":`dropdown-menu-group`,...e})}function f({className:e,inset:t,variant:n=`default`,...a}){return i(o.Item,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:r(`relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[inset]:pl-8`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`data-[variant=destructive]:text-danger`,`data-[variant=destructive]:focus:bg-danger-muted`,`data-[variant=destructive]:focus:text-danger-strong`,`data-[variant=destructive]:*:[svg]:!text-danger`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-weak`,e),...a})}function p({className:t,children:n,checked:s,...c}){return a(o.CheckboxItem,{"data-slot":`dropdown-menu-checkbox-item`,className:r(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[disabled]:opacity-50`,`data-[disabled]:pointer-events-none`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,t),checked:s,...c,children:[i(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:i(o.ItemIndicator,{children:i(e,{size:16})})}),n]})}function m({...e}){return i(o.RadioGroup,{"data-slot":`dropdown-menu-radio-group`,...e})}function h({className:e,children:t,...s}){return a(o.RadioItem,{"data-slot":`dropdown-menu-radio-item`,className:r(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,e),...s,children:[i(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:i(o.ItemIndicator,{children:i(n,{className:`size-2 fill-current`})})}),t]})}function g({className:e,inset:t,...n}){return i(o.Label,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:r(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...n})}function _({className:e,...t}){return i(o.Separator,{"data-slot":`dropdown-menu-separator`,className:r(`bg-border-weak -mx-1 my-1 h-px`,e),...t})}function v({className:e,...t}){return i(`span`,{"data-slot":`dropdown-menu-shortcut`,className:r(`text-text-positive-muted ml-auto text-xs tracking-widest`,e),...t})}function y({...e}){return i(o.Sub,{"data-slot":`dropdown-menu-sub`,...e})}function b({className:e,inset:n,children:s,...c}){return a(o.SubTrigger,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":n,className:r(`flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[state=open]:bg-muted-muted`,`data-[state=open]:text-text-positive-strong`,`data-[inset]:pl-8`,e),...c,children:[s,i(t,{className:`ml-auto size-4`})]})}function x({className:e,...t}){return i(o.SubContent,{"data-slot":`dropdown-menu-sub-content`,className:r(`bg-popover text-text-positive`,`shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:zoom-out-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...t})}export{s as DropdownMenu,p as DropdownMenuCheckboxItem,u as DropdownMenuContent,d as DropdownMenuGroup,f as DropdownMenuItem,g as DropdownMenuLabel,c as DropdownMenuPortal,m as DropdownMenuRadioGroup,h as DropdownMenuRadioItem,_ as DropdownMenuSeparator,v as DropdownMenuShortcut,y as DropdownMenuSub,x as DropdownMenuSubContent,b as DropdownMenuSubTrigger,l as DropdownMenuTrigger};
2
+ //# sourceMappingURL=dropdown-menu-DS1A05D0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu-Bj39Rmxd.js","names":["DropdownMenu","DropdownMenuPrimitive"],"sources":["../packages/components/ui/dropdown-menu.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react'\n\nimport { DropdownMenu as DropdownMenuPrimitive } from 'radix-ui'\n\nfunction DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n\nfunction DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n}\n\nfunction DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return <DropdownMenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />\n}\n\nfunction DropdownMenuContent({ className, sideOffset = 4, align = 'start', ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-text-positive',\n 'z-50',\n 'min-w-32',\n 'overflow-x-hidden overflow-y-auto',\n 'shadow-dropdown rounded-md p-1.5',\n 'max-h-(--radix-dropdown-menu-content-available-height)',\n 'origin-(--radix-dropdown-menu-content-transform-origin)',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n align={align}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\nfunction DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n variant?: 'default' | 'destructive'\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[inset]:pl-8',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n 'data-[variant=destructive]:text-danger',\n 'data-[variant=destructive]:focus:bg-danger-muted',\n 'data-[variant=destructive]:focus:text-danger-strong',\n 'data-[variant=destructive]:*:[svg]:!text-danger',\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-weak\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:opacity-50',\n 'data-[disabled]:pointer-events-none',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon size={16} />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n )\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return <DropdownMenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />\n}\n\nfunction DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n )\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-2 py-1.5 text-sm font-medium data-[inset]:pl-8', className)}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return <DropdownMenuPrimitive.Separator data-slot=\"dropdown-menu-separator\" className={cn('bg-border-weak -mx-1 my-1 h-px', className)} {...props} />\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return <span data-slot=\"dropdown-menu-shortcut\" className={cn('text-text-positive-muted ml-auto text-xs tracking-widest', className)} {...props} />\n}\n\nfunction DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n 'flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[state=open]:bg-muted-muted',\n 'data-[state=open]:text-text-positive-strong',\n 'data-[inset]:pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n )\n}\n\nfunction DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'bg-popover text-text-positive',\n 'shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown-menu-DS1A05D0.js","names":["DropdownMenu","DropdownMenuPrimitive"],"sources":["../packages/components/ui/dropdown-menu.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react'\n\nimport { DropdownMenu as DropdownMenuPrimitive } from 'radix-ui'\n\nfunction DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n\nfunction DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n}\n\nfunction DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return <DropdownMenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />\n}\n\nfunction DropdownMenuContent({ className, sideOffset = 4, align = 'start', ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-text-positive',\n 'z-50',\n 'min-w-32',\n 'overflow-x-hidden overflow-y-auto',\n 'shadow-dropdown rounded-md p-1.5',\n 'max-h-(--radix-dropdown-menu-content-available-height)',\n 'origin-(--radix-dropdown-menu-content-transform-origin)',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n align={align}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\nfunction DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n variant?: 'default' | 'destructive'\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[inset]:pl-8',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n 'data-[variant=destructive]:text-danger',\n 'data-[variant=destructive]:focus:bg-danger-muted',\n 'data-[variant=destructive]:focus:text-danger-strong',\n 'data-[variant=destructive]:*:[svg]:!text-danger',\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-weak\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:opacity-50',\n 'data-[disabled]:pointer-events-none',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon size={16} />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n )\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return <DropdownMenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />\n}\n\nfunction DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n )\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-2 py-1.5 text-sm font-medium data-[inset]:pl-8', className)}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return <DropdownMenuPrimitive.Separator data-slot=\"dropdown-menu-separator\" className={cn('bg-border-weak -mx-1 my-1 h-px', className)} {...props} />\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return <span data-slot=\"dropdown-menu-shortcut\" className={cn('text-text-positive-muted ml-auto text-xs tracking-widest', className)} {...props} />\n}\n\nfunction DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n 'flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[state=open]:bg-muted-muted',\n 'data-[state=open]:text-text-positive-strong',\n 'data-[inset]:pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n )\n}\n\nfunction DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'bg-popover text-text-positive',\n 'shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- const e=require(`./chunk-CUT6urMc.cjs`),t=e.__toESM(require(`lucide-react`)),n=e.__toESM(require(`@customafk/react-toolkit/utils`)),r=e.__toESM(require(`radix-ui`)),i=e.__toESM(require(`react/jsx-runtime`));function a({...e}){return(0,i.jsx)(r.DropdownMenu.Root,{"data-slot":`dropdown-menu`,...e})}function o({...e}){return(0,i.jsx)(r.DropdownMenu.Portal,{"data-slot":`dropdown-menu-portal`,...e})}function s({...e}){return(0,i.jsx)(r.DropdownMenu.Trigger,{"data-slot":`dropdown-menu-trigger`,...e})}function c({className:e,sideOffset:t=4,align:a=`start`,...o}){return(0,i.jsx)(r.DropdownMenu.Portal,{children:(0,i.jsx)(r.DropdownMenu.Content,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:(0,n.cn)(`bg-popover text-text-positive`,`z-50`,`min-w-32`,`overflow-x-hidden overflow-y-auto`,`shadow-dropdown rounded-md p-1.5`,`max-h-(--radix-dropdown-menu-content-available-height)`,`origin-(--radix-dropdown-menu-content-transform-origin)`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=closed]:zoom-out-95`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...o,align:a})})}function l({...e}){return(0,i.jsx)(r.DropdownMenu.Group,{"data-slot":`dropdown-menu-group`,...e})}function u({className:e,inset:t,variant:a=`default`,...o}){return(0,i.jsx)(r.DropdownMenu.Item,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":a,className:(0,n.cn)(`relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[inset]:pl-8`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`data-[variant=destructive]:text-danger`,`data-[variant=destructive]:focus:bg-danger-muted`,`data-[variant=destructive]:focus:text-danger-strong`,`data-[variant=destructive]:*:[svg]:!text-danger`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-weak`,e),...o})}function d({className:e,children:a,checked:o,...s}){return(0,i.jsxs)(r.DropdownMenu.CheckboxItem,{"data-slot":`dropdown-menu-checkbox-item`,className:(0,n.cn)(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[disabled]:opacity-50`,`data-[disabled]:pointer-events-none`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,e),checked:o,...s,children:[(0,i.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,i.jsx)(r.DropdownMenu.ItemIndicator,{children:(0,i.jsx)(t.CheckIcon,{size:16})})}),a]})}function f({...e}){return(0,i.jsx)(r.DropdownMenu.RadioGroup,{"data-slot":`dropdown-menu-radio-group`,...e})}function p({className:e,children:a,...o}){return(0,i.jsxs)(r.DropdownMenu.RadioItem,{"data-slot":`dropdown-menu-radio-item`,className:(0,n.cn)(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,e),...o,children:[(0,i.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,i.jsx)(r.DropdownMenu.ItemIndicator,{children:(0,i.jsx)(t.CircleIcon,{className:`size-2 fill-current`})})}),a]})}function m({className:e,inset:t,...a}){return(0,i.jsx)(r.DropdownMenu.Label,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:(0,n.cn)(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...a})}function h({className:e,...t}){return(0,i.jsx)(r.DropdownMenu.Separator,{"data-slot":`dropdown-menu-separator`,className:(0,n.cn)(`bg-border-weak -mx-1 my-1 h-px`,e),...t})}function g({className:e,...t}){return(0,i.jsx)(`span`,{"data-slot":`dropdown-menu-shortcut`,className:(0,n.cn)(`text-text-positive-muted ml-auto text-xs tracking-widest`,e),...t})}function _({...e}){return(0,i.jsx)(r.DropdownMenu.Sub,{"data-slot":`dropdown-menu-sub`,...e})}function v({className:e,inset:a,children:o,...s}){return(0,i.jsxs)(r.DropdownMenu.SubTrigger,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":a,className:(0,n.cn)(`flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[state=open]:bg-muted-muted`,`data-[state=open]:text-text-positive-strong`,`data-[inset]:pl-8`,e),...s,children:[o,(0,i.jsx)(t.ChevronRightIcon,{className:`ml-auto size-4`})]})}function y({className:e,...t}){return(0,i.jsx)(r.DropdownMenu.SubContent,{"data-slot":`dropdown-menu-sub-content`,className:(0,n.cn)(`bg-popover text-text-positive`,`shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:zoom-out-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...t})}Object.defineProperty(exports,`DropdownMenu`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`DropdownMenuCheckboxItem`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`DropdownMenuContent`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`DropdownMenuGroup`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`DropdownMenuItem`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`DropdownMenuLabel`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`DropdownMenuPortal`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`DropdownMenuRadioGroup`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`DropdownMenuRadioItem`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`DropdownMenuSeparator`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`DropdownMenuShortcut`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`DropdownMenuSub`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`DropdownMenuSubContent`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`DropdownMenuSubTrigger`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`DropdownMenuTrigger`,{enumerable:!0,get:function(){return s}});
2
- //# sourceMappingURL=dropdown-menu-SNcBwTOA.cjs.map
1
+ const e=require(`./chunk-CUT6urMc.cjs`),t=e.__toESM(require(`lucide-react`)),n=e.__toESM(require(`@customafk/react-toolkit/utils`)),r=e.__toESM(require(`react/jsx-runtime`)),i=e.__toESM(require(`radix-ui`));function a({...e}){return(0,r.jsx)(i.DropdownMenu.Root,{"data-slot":`dropdown-menu`,...e})}function o({...e}){return(0,r.jsx)(i.DropdownMenu.Portal,{"data-slot":`dropdown-menu-portal`,...e})}function s({...e}){return(0,r.jsx)(i.DropdownMenu.Trigger,{"data-slot":`dropdown-menu-trigger`,...e})}function c({className:e,sideOffset:t=4,align:a=`start`,...o}){return(0,r.jsx)(i.DropdownMenu.Portal,{children:(0,r.jsx)(i.DropdownMenu.Content,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:(0,n.cn)(`bg-popover text-text-positive`,`z-50`,`min-w-32`,`overflow-x-hidden overflow-y-auto`,`shadow-dropdown rounded-md p-1.5`,`max-h-(--radix-dropdown-menu-content-available-height)`,`origin-(--radix-dropdown-menu-content-transform-origin)`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=closed]:zoom-out-95`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...o,align:a})})}function l({...e}){return(0,r.jsx)(i.DropdownMenu.Group,{"data-slot":`dropdown-menu-group`,...e})}function u({className:e,inset:t,variant:a=`default`,...o}){return(0,r.jsx)(i.DropdownMenu.Item,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":a,className:(0,n.cn)(`relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[inset]:pl-8`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`data-[variant=destructive]:text-danger`,`data-[variant=destructive]:focus:bg-danger-muted`,`data-[variant=destructive]:focus:text-danger-strong`,`data-[variant=destructive]:*:[svg]:!text-danger`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-weak`,e),...o})}function d({className:e,children:a,checked:o,...s}){return(0,r.jsxs)(i.DropdownMenu.CheckboxItem,{"data-slot":`dropdown-menu-checkbox-item`,className:(0,n.cn)(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-muted-muted`,`focus:text-text-positive-strong`,`data-[disabled]:opacity-50`,`data-[disabled]:pointer-events-none`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,e),checked:o,...s,children:[(0,r.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,r.jsx)(i.DropdownMenu.ItemIndicator,{children:(0,r.jsx)(t.CheckIcon,{size:16})})}),a]})}function f({...e}){return(0,r.jsx)(i.DropdownMenu.RadioGroup,{"data-slot":`dropdown-menu-radio-group`,...e})}function p({className:e,children:a,...o}){return(0,r.jsxs)(i.DropdownMenu.RadioItem,{"data-slot":`dropdown-menu-radio-item`,className:(0,n.cn)(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[disabled]:pointer-events-none`,`data-[disabled]:opacity-50`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,e),...o,children:[(0,r.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,r.jsx)(i.DropdownMenu.ItemIndicator,{children:(0,r.jsx)(t.CircleIcon,{className:`size-2 fill-current`})})}),a]})}function m({className:e,inset:t,...a}){return(0,r.jsx)(i.DropdownMenu.Label,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:(0,n.cn)(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...a})}function h({className:e,...t}){return(0,r.jsx)(i.DropdownMenu.Separator,{"data-slot":`dropdown-menu-separator`,className:(0,n.cn)(`bg-border-weak -mx-1 my-1 h-px`,e),...t})}function g({className:e,...t}){return(0,r.jsx)(`span`,{"data-slot":`dropdown-menu-shortcut`,className:(0,n.cn)(`text-text-positive-muted ml-auto text-xs tracking-widest`,e),...t})}function _({...e}){return(0,r.jsx)(i.DropdownMenu.Sub,{"data-slot":`dropdown-menu-sub`,...e})}function v({className:e,inset:a,children:o,...s}){return(0,r.jsxs)(i.DropdownMenu.SubTrigger,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":a,className:(0,n.cn)(`flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none`,`focus:bg-accent-muted`,`focus:text-text-positive-strong`,`data-[state=open]:bg-muted-muted`,`data-[state=open]:text-text-positive-strong`,`data-[inset]:pl-8`,e),...s,children:[o,(0,r.jsx)(t.ChevronRightIcon,{className:`ml-auto size-4`})]})}function y({className:e,...t}){return(0,r.jsx)(i.DropdownMenu.SubContent,{"data-slot":`dropdown-menu-sub-content`,className:(0,n.cn)(`bg-popover text-text-positive`,`shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]:zoom-in-95`,`data-[state=closed]:zoom-out-95`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[side=bottom]:slide-in-from-top-2`,`data-[side=left]:slide-in-from-right-2`,`data-[side=right]:slide-in-from-left-2`,`data-[side=top]:slide-in-from-bottom-2`,e),...t})}Object.defineProperty(exports,`DropdownMenu`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`DropdownMenuCheckboxItem`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`DropdownMenuContent`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`DropdownMenuGroup`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`DropdownMenuItem`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`DropdownMenuLabel`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`DropdownMenuPortal`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`DropdownMenuRadioGroup`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`DropdownMenuRadioItem`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`DropdownMenuSeparator`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`DropdownMenuShortcut`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`DropdownMenuSub`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`DropdownMenuSubContent`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`DropdownMenuSubTrigger`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`DropdownMenuTrigger`,{enumerable:!0,get:function(){return s}});
2
+ //# sourceMappingURL=dropdown-menu-Djtt8w9D.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu-SNcBwTOA.cjs","names":["DropdownMenuPrimitive","CheckIcon","CircleIcon","ChevronRightIcon"],"sources":["../packages/components/ui/dropdown-menu.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react'\n\nimport { DropdownMenu as DropdownMenuPrimitive } from 'radix-ui'\n\nfunction DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n\nfunction DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n}\n\nfunction DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return <DropdownMenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />\n}\n\nfunction DropdownMenuContent({ className, sideOffset = 4, align = 'start', ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-text-positive',\n 'z-50',\n 'min-w-32',\n 'overflow-x-hidden overflow-y-auto',\n 'shadow-dropdown rounded-md p-1.5',\n 'max-h-(--radix-dropdown-menu-content-available-height)',\n 'origin-(--radix-dropdown-menu-content-transform-origin)',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n align={align}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\nfunction DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n variant?: 'default' | 'destructive'\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[inset]:pl-8',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n 'data-[variant=destructive]:text-danger',\n 'data-[variant=destructive]:focus:bg-danger-muted',\n 'data-[variant=destructive]:focus:text-danger-strong',\n 'data-[variant=destructive]:*:[svg]:!text-danger',\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-weak\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:opacity-50',\n 'data-[disabled]:pointer-events-none',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon size={16} />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n )\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return <DropdownMenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />\n}\n\nfunction DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n )\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-2 py-1.5 text-sm font-medium data-[inset]:pl-8', className)}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return <DropdownMenuPrimitive.Separator data-slot=\"dropdown-menu-separator\" className={cn('bg-border-weak -mx-1 my-1 h-px', className)} {...props} />\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return <span data-slot=\"dropdown-menu-shortcut\" className={cn('text-text-positive-muted ml-auto text-xs tracking-widest', className)} {...props} />\n}\n\nfunction DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n 'flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[state=open]:bg-muted-muted',\n 'data-[state=open]:text-text-positive-strong',\n 'data-[inset]:pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n )\n}\n\nfunction DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'bg-popover text-text-positive',\n 'shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown-menu-Djtt8w9D.cjs","names":["DropdownMenuPrimitive","CheckIcon","CircleIcon","ChevronRightIcon"],"sources":["../packages/components/ui/dropdown-menu.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react'\n\nimport { DropdownMenu as DropdownMenuPrimitive } from 'radix-ui'\n\nfunction DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n\nfunction DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n}\n\nfunction DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return <DropdownMenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />\n}\n\nfunction DropdownMenuContent({ className, sideOffset = 4, align = 'start', ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-text-positive',\n 'z-50',\n 'min-w-32',\n 'overflow-x-hidden overflow-y-auto',\n 'shadow-dropdown rounded-md p-1.5',\n 'max-h-(--radix-dropdown-menu-content-available-height)',\n 'origin-(--radix-dropdown-menu-content-transform-origin)',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n align={align}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\nfunction DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n variant?: 'default' | 'destructive'\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[inset]:pl-8',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n 'data-[variant=destructive]:text-danger',\n 'data-[variant=destructive]:focus:bg-danger-muted',\n 'data-[variant=destructive]:focus:text-danger-strong',\n 'data-[variant=destructive]:*:[svg]:!text-danger',\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-weak\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-muted-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:opacity-50',\n 'data-[disabled]:pointer-events-none',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon size={16} />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n )\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return <DropdownMenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />\n}\n\nfunction DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[disabled]:pointer-events-none',\n 'data-[disabled]:opacity-50',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n )\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn('px-2 py-1.5 text-sm font-medium data-[inset]:pl-8', className)}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return <DropdownMenuPrimitive.Separator data-slot=\"dropdown-menu-separator\" className={cn('bg-border-weak -mx-1 my-1 h-px', className)} {...props} />\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {\n return <span data-slot=\"dropdown-menu-shortcut\" className={cn('text-text-positive-muted ml-auto text-xs tracking-widest', className)} {...props} />\n}\n\nfunction DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n 'flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none',\n 'focus:bg-accent-muted',\n 'focus:text-text-positive-strong',\n 'data-[state=open]:bg-muted-muted',\n 'data-[state=open]:text-text-positive-strong',\n 'data-[inset]:pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n )\n}\n\nfunction DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'bg-popover text-text-positive',\n 'shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md p-1',\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n 'data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{AlertDialog as e,AlertDialogAction as t,AlertDialogContent as n,AlertDialogFooter as r,AlertDialogHeader as i,AlertDialogTitle as a}from"./alert-dialog-DcQKEgVC.js";import{AlertTriangleIcon as o}from"lucide-react";import{useCallback as s}from"react";import{jsx as c,jsxs as l}from"react/jsx-runtime";const u=({open:u,title:d,children:f,onOpenChange:p})=>{let m=s(()=>{p?.(!1)},[p]);return c(e,{open:u,onOpenChange:p,children:l(n,{className:`gap-8 p-4 sm:max-w-md`,children:[c(i,{children:l(`div`,{className:`text-destructive flex flex-col items-center`,children:[c(o,{size:42}),c(a,{className:`text-xl font-medium`,children:d||`An error occurred`})]})}),f,c(r,{children:c(t,{className:`w-full sm:w-28`,onClick:m,children:`Close`})})]})})};export{u as ErrorDialog};
2
+ //# sourceMappingURL=error-dialog-BeYJOtSH.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-dialog-CphiTB4y.js","names":["ErrorDialog: React.FC<React.PropsWithChildren<Props>>"],"sources":["../packages/components/dialogs/error-dialog.tsx"],"sourcesContent":["import { useCallback } from 'react'\n\nimport { AlertTriangleIcon } from 'lucide-react'\n\nimport { AlertDialog, AlertDialogAction, AlertDialogContent, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle } from '../ui/alert-dialog'\n\ntype Props = {\n open?: boolean\n title?: string\n description?: string\n onOpenChange?: (open: boolean) => void\n}\nexport const ErrorDialog: React.FC<React.PropsWithChildren<Props>> = ({ open, title, children, onOpenChange }) => {\n const handleClose = useCallback(() => {\n onOpenChange?.(false)\n }, [onOpenChange])\n return (\n <AlertDialog open={open} onOpenChange={onOpenChange}>\n <AlertDialogContent className=\"gap-8 p-4 sm:max-w-md\">\n <AlertDialogHeader>\n <div className=\"text-destructive flex flex-col items-center\">\n <AlertTriangleIcon size={42} />\n <AlertDialogTitle className=\"text-xl font-medium\">{title || 'An error occurred'}</AlertDialogTitle>\n </div>\n </AlertDialogHeader>\n {children}\n <AlertDialogFooter>\n <AlertDialogAction className=\"w-full sm:w-28\" onClick={handleClose}>\n Close\n </AlertDialogAction>\n </AlertDialogFooter>\n </AlertDialogContent>\n </AlertDialog>\n )\n}\n"],"mappings":"mTAYA,MAAaA,GAAyD,CAAE,OAAM,QAAO,WAAU,kBAAmB,CAChH,IAAM,EAAc,MAAkB,CACpC,IAAe,KACd,CAAC,IACJ,OACE,EAAC,EAAA,CAAkB,OAAoB,wBACrC,EAAC,EAAA,CAAmB,UAAU,kCAC5B,EAAC,EAAA,CAAA,SACC,EAAC,MAAA,CAAI,UAAU,wDACb,EAAC,EAAA,CAAkB,KAAM,KACzB,EAAC,EAAA,CAAiB,UAAU,+BAAuB,GAAS,2BAG/D,EACD,EAAC,EAAA,CAAA,SACC,EAAC,EAAA,CAAkB,UAAU,iBAAiB,QAAS,WAAa"}
1
+ {"version":3,"file":"error-dialog-BeYJOtSH.js","names":["ErrorDialog: React.FC<React.PropsWithChildren<Props>>"],"sources":["../packages/components/dialogs/error-dialog.tsx"],"sourcesContent":["import { useCallback } from 'react'\n\nimport { AlertTriangleIcon } from 'lucide-react'\n\nimport { AlertDialog, AlertDialogAction, AlertDialogContent, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle } from '../ui/alert-dialog'\n\ntype Props = {\n open?: boolean\n title?: string\n description?: string\n onOpenChange?: (open: boolean) => void\n}\nexport const ErrorDialog: React.FC<React.PropsWithChildren<Props>> = ({ open, title, children, onOpenChange }) => {\n const handleClose = useCallback(() => {\n onOpenChange?.(false)\n }, [onOpenChange])\n return (\n <AlertDialog open={open} onOpenChange={onOpenChange}>\n <AlertDialogContent className=\"gap-8 p-4 sm:max-w-md\">\n <AlertDialogHeader>\n <div className=\"text-destructive flex flex-col items-center\">\n <AlertTriangleIcon size={42} />\n <AlertDialogTitle className=\"text-xl font-medium\">{title || 'An error occurred'}</AlertDialogTitle>\n </div>\n </AlertDialogHeader>\n {children}\n <AlertDialogFooter>\n <AlertDialogAction className=\"w-full sm:w-28\" onClick={handleClose}>\n Close\n </AlertDialogAction>\n </AlertDialogFooter>\n </AlertDialogContent>\n </AlertDialog>\n )\n}\n"],"mappings":"mTAYA,MAAaA,GAAyD,CAAE,OAAM,QAAO,WAAU,kBAAmB,CAChH,IAAM,EAAc,MAAkB,CACpC,IAAe,KACd,CAAC,IACJ,OACE,EAAC,EAAA,CAAkB,OAAoB,wBACrC,EAAC,EAAA,CAAmB,UAAU,kCAC5B,EAAC,EAAA,CAAA,SACC,EAAC,MAAA,CAAI,UAAU,wDACb,EAAC,EAAA,CAAkB,KAAM,KACzB,EAAC,EAAA,CAAiB,UAAU,+BAAuB,GAAS,2BAG/D,EACD,EAAC,EAAA,CAAA,SACC,EAAC,EAAA,CAAkB,UAAU,iBAAiB,QAAS,WAAa"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./alert-dialog-brXudt77.cjs`),n=e.__toESM(require(`lucide-react`)),r=e.__toESM(require(`react`)),i=e.__toESM(require(`react/jsx-runtime`)),a=({open:e,title:a,children:o,onOpenChange:s})=>{let c=(0,r.useCallback)(()=>{s?.(!1)},[s]);return(0,i.jsx)(t.AlertDialog,{open:e,onOpenChange:s,children:(0,i.jsxs)(t.AlertDialogContent,{className:`gap-8 p-4 sm:max-w-md`,children:[(0,i.jsx)(t.AlertDialogHeader,{children:(0,i.jsxs)(`div`,{className:`text-destructive flex flex-col items-center`,children:[(0,i.jsx)(n.AlertTriangleIcon,{size:42}),(0,i.jsx)(t.AlertDialogTitle,{className:`text-xl font-medium`,children:a||`An error occurred`})]})}),o,(0,i.jsx)(t.AlertDialogFooter,{children:(0,i.jsx)(t.AlertDialogAction,{className:`w-full sm:w-28`,onClick:c,children:`Close`})})]})})};Object.defineProperty(exports,`ErrorDialog`,{enumerable:!0,get:function(){return a}});
2
+ //# sourceMappingURL=error-dialog-DMbJhWyk.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-dialog-DGg0x5xF.cjs","names":["ErrorDialog: React.FC<React.PropsWithChildren<Props>>","AlertDialog","AlertDialogContent","AlertDialogHeader","AlertTriangleIcon","AlertDialogTitle","AlertDialogFooter","AlertDialogAction"],"sources":["../packages/components/dialogs/error-dialog.tsx"],"sourcesContent":["import { useCallback } from 'react'\n\nimport { AlertTriangleIcon } from 'lucide-react'\n\nimport { AlertDialog, AlertDialogAction, AlertDialogContent, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle } from '../ui/alert-dialog'\n\ntype Props = {\n open?: boolean\n title?: string\n description?: string\n onOpenChange?: (open: boolean) => void\n}\nexport const ErrorDialog: React.FC<React.PropsWithChildren<Props>> = ({ open, title, children, onOpenChange }) => {\n const handleClose = useCallback(() => {\n onOpenChange?.(false)\n }, [onOpenChange])\n return (\n <AlertDialog open={open} onOpenChange={onOpenChange}>\n <AlertDialogContent className=\"gap-8 p-4 sm:max-w-md\">\n <AlertDialogHeader>\n <div className=\"text-destructive flex flex-col items-center\">\n <AlertTriangleIcon size={42} />\n <AlertDialogTitle className=\"text-xl font-medium\">{title || 'An error occurred'}</AlertDialogTitle>\n </div>\n </AlertDialogHeader>\n {children}\n <AlertDialogFooter>\n <AlertDialogAction className=\"w-full sm:w-28\" onClick={handleClose}>\n Close\n </AlertDialogAction>\n </AlertDialogFooter>\n </AlertDialogContent>\n </AlertDialog>\n )\n}\n"],"mappings":"8LAYaA,GAAyD,CAAE,OAAM,QAAO,WAAU,kBAAmB,CAChH,IAAM,GAAA,EAAA,EAAA,iBAAgC,CACpC,IAAe,KACd,CAAC,IACJ,OACE,EAAA,EAAA,KAACC,EAAAA,YAAAA,CAAkB,OAAoB,yBACrC,EAAA,EAAA,MAACC,EAAAA,mBAAAA,CAAmB,UAAU,mCAC5B,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAAA,UACC,EAAA,EAAA,MAAC,MAAA,CAAI,UAAU,yDACb,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAkB,KAAM,MACzB,EAAA,EAAA,KAACC,EAAAA,iBAAAA,CAAiB,UAAU,+BAAuB,GAAS,2BAG/D,GACD,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAAA,UACC,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAkB,UAAU,iBAAiB,QAAS,WAAa"}
1
+ {"version":3,"file":"error-dialog-DMbJhWyk.cjs","names":["ErrorDialog: React.FC<React.PropsWithChildren<Props>>","AlertDialog","AlertDialogContent","AlertDialogHeader","AlertTriangleIcon","AlertDialogTitle","AlertDialogFooter","AlertDialogAction"],"sources":["../packages/components/dialogs/error-dialog.tsx"],"sourcesContent":["import { useCallback } from 'react'\n\nimport { AlertTriangleIcon } from 'lucide-react'\n\nimport { AlertDialog, AlertDialogAction, AlertDialogContent, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle } from '../ui/alert-dialog'\n\ntype Props = {\n open?: boolean\n title?: string\n description?: string\n onOpenChange?: (open: boolean) => void\n}\nexport const ErrorDialog: React.FC<React.PropsWithChildren<Props>> = ({ open, title, children, onOpenChange }) => {\n const handleClose = useCallback(() => {\n onOpenChange?.(false)\n }, [onOpenChange])\n return (\n <AlertDialog open={open} onOpenChange={onOpenChange}>\n <AlertDialogContent className=\"gap-8 p-4 sm:max-w-md\">\n <AlertDialogHeader>\n <div className=\"text-destructive flex flex-col items-center\">\n <AlertTriangleIcon size={42} />\n <AlertDialogTitle className=\"text-xl font-medium\">{title || 'An error occurred'}</AlertDialogTitle>\n </div>\n </AlertDialogHeader>\n {children}\n <AlertDialogFooter>\n <AlertDialogAction className=\"w-full sm:w-28\" onClick={handleClose}>\n Close\n </AlertDialogAction>\n </AlertDialogFooter>\n </AlertDialogContent>\n </AlertDialog>\n )\n}\n"],"mappings":"8LAYaA,GAAyD,CAAE,OAAM,QAAO,WAAU,kBAAmB,CAChH,IAAM,GAAA,EAAA,EAAA,iBAAgC,CACpC,IAAe,KACd,CAAC,IACJ,OACE,EAAA,EAAA,KAACC,EAAAA,YAAAA,CAAkB,OAAoB,yBACrC,EAAA,EAAA,MAACC,EAAAA,mBAAAA,CAAmB,UAAU,mCAC5B,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAAA,UACC,EAAA,EAAA,MAAC,MAAA,CAAI,UAAU,yDACb,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAkB,KAAM,MACzB,EAAA,EAAA,KAACC,EAAAA,iBAAAA,CAAiB,UAAU,+BAAuB,GAAS,2BAG/D,GACD,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAAA,UACC,EAAA,EAAA,KAACC,EAAAA,kBAAAA,CAAkB,UAAU,iBAAiB,QAAS,WAAa"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"@customafk/react-toolkit/utils";import{cva as t}from"class-variance-authority";import{jsx as n}from"react/jsx-runtime";const r=t([`relative flex`,`text-sm`],{variants:{vertical:{true:`flex-col`,false:`flex-row`},width:{full:`w-full`,auto:`w-auto`,fit:`w-fit`,screen:`w-screen`,min:`w-min`,max:`w-max`,null:``},wrap:{true:`flex-wrap`,false:`flex-nowrap`},margin:{sm:`m-2`,md:`m-4`,lg:`m-6`,xl:`m-8`,none:`m-0`},padding:{sm:`p-2`,md:`p-4`,lg:`p-6`,xl:`p-8`,none:`p-0`},gap:{xs:`gap-1`,sm:`gap-2`,md:`gap-4`,lg:`gap-6`,xl:`gap-8`,none:`gap-0`},justify:{start:`justify-start`,center:`justify-center`,end:`justify-end`,between:`justify-between`,around:`justify-around`,evenly:`justify-evenly`,stretch:`justify-stretch`},align:{start:`items-start`,center:`items-center`,end:`items-end`,baseline:`items-baseline`,stretch:`items-stretch`}},defaultVariants:{vertical:!1,wrap:!0,width:`fit`,margin:`none`,padding:`sm`,gap:`xs`,justify:`start`,align:`center`}}),i=({vertical:t,wrap:i,width:a,margin:o,padding:s,gap:c,justify:l,align:u,className:d,children:f})=>n(`div`,{className:e(r({vertical:t,width:a,wrap:i,margin:o,padding:s,gap:c,justify:l,align:u,className:d})),children:f});export{i as Flex};
2
- //# sourceMappingURL=flex-BZHWRUkz.js.map
1
+ import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{cva as n}from"class-variance-authority";const r=n([`relative flex`,`text-sm`],{variants:{vertical:{true:`flex-col`,false:`flex-row`},width:{full:`w-full`,auto:`w-auto`,fit:`w-fit`,screen:`w-screen`,min:`w-min`,max:`w-max`,null:``},wrap:{true:`flex-wrap`,false:`flex-nowrap`},margin:{sm:`m-2`,md:`m-4`,lg:`m-6`,xl:`m-8`,none:`m-0`},padding:{sm:`p-2`,md:`p-4`,lg:`p-6`,xl:`p-8`,none:`p-0`},gap:{xs:`gap-1`,sm:`gap-2`,md:`gap-4`,lg:`gap-6`,xl:`gap-8`,none:`gap-0`},justify:{start:`justify-start`,center:`justify-center`,end:`justify-end`,between:`justify-between`,around:`justify-around`,evenly:`justify-evenly`,stretch:`justify-stretch`},align:{start:`items-start`,center:`items-center`,end:`items-end`,baseline:`items-baseline`,stretch:`items-stretch`}},defaultVariants:{vertical:!1,wrap:!0,width:`fit`,margin:`none`,padding:`sm`,gap:`xs`,justify:`start`,align:`center`}}),i=({vertical:n,wrap:i,width:a,margin:o,padding:s,gap:c,justify:l,align:u,className:d,children:f})=>t(`div`,{className:e(r({vertical:n,width:a,wrap:i,margin:o,padding:s,gap:c,justify:l,align:u,className:d})),children:f});export{i as Flex};
2
+ //# sourceMappingURL=flex-D6XrXRQW.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flex-BZHWRUkz.js","names":[],"sources":["../packages/components/layouts/flex.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\n\nconst flexVariants = cva(['relative flex', 'text-sm'], {\n variants: {\n vertical: {\n true: 'flex-col',\n false: 'flex-row',\n },\n width: {\n full: 'w-full',\n auto: 'w-auto',\n fit: 'w-fit',\n screen: 'w-screen',\n min: 'w-min',\n max: 'w-max',\n null: '',\n },\n wrap: {\n true: 'flex-wrap',\n false: 'flex-nowrap',\n },\n margin: {\n sm: 'm-2',\n md: 'm-4',\n lg: 'm-6',\n xl: 'm-8',\n none: 'm-0',\n },\n padding: {\n sm: 'p-2',\n md: 'p-4',\n lg: 'p-6',\n xl: 'p-8',\n none: 'p-0',\n },\n gap: {\n xs: 'gap-1',\n sm: 'gap-2',\n md: 'gap-4',\n lg: 'gap-6',\n xl: 'gap-8',\n none: 'gap-0',\n },\n justify: {\n start: 'justify-start',\n center: 'justify-center',\n end: 'justify-end',\n between: 'justify-between',\n around: 'justify-around',\n evenly: 'justify-evenly',\n stretch: 'justify-stretch',\n },\n align: {\n start: 'items-start',\n center: 'items-center',\n end: 'items-end',\n baseline: 'items-baseline',\n stretch: 'items-stretch',\n },\n },\n defaultVariants: {\n vertical: false,\n wrap: true,\n width: 'fit',\n margin: 'none',\n padding: 'sm',\n gap: 'xs',\n justify: 'start',\n align: 'center',\n },\n})\n\ntype Props = {\n className?: string\n} & VariantProps<typeof flexVariants>\nexport const Flex = ({ vertical, wrap, width, margin, padding, gap, justify, align, className, children }: React.PropsWithChildren<Props>) => {\n return (\n <div\n className={cn(\n flexVariants({\n vertical,\n width,\n wrap,\n margin,\n padding,\n gap,\n justify,\n align,\n className,\n }),\n )}\n >\n {children}\n </div>\n )\n}\n"],"mappings":"2IAKA,MAAM,EAAe,EAAI,CAAC,gBAAiB,WAAY,CACrD,SAAU,CACR,SAAU,CACR,KAAM,WACN,MAAO,YAET,MAAO,CACL,KAAM,SACN,KAAM,SACN,IAAK,QACL,OAAQ,WACR,IAAK,QACL,IAAK,QACL,KAAM,IAER,KAAM,CACJ,KAAM,YACN,MAAO,eAET,OAAQ,CACN,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,QAAS,CACP,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,IAAK,CACH,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,KAAM,SAER,QAAS,CACP,MAAO,gBACP,OAAQ,iBACR,IAAK,cACL,QAAS,kBACT,OAAQ,iBACR,OAAQ,iBACR,QAAS,mBAEX,MAAO,CACL,MAAO,cACP,OAAQ,eACR,IAAK,YACL,SAAU,iBACV,QAAS,kBAGb,gBAAiB,CACf,SAAU,GACV,KAAM,GACN,MAAO,MACP,OAAQ,OACR,QAAS,KACT,IAAK,KACL,QAAS,QACT,MAAO,YAOE,GAAQ,CAAE,WAAU,OAAM,QAAO,SAAQ,UAAS,MAAK,UAAS,QAAO,YAAW,cAE3F,EAAC,MAAA,CACC,UAAW,EACT,EAAa,CACX,WACA,QACA,OACA,SACA,UACA,MACA,UACA,QACA,eAIH"}
1
+ {"version":3,"file":"flex-D6XrXRQW.js","names":[],"sources":["../packages/components/layouts/flex.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\n\nconst flexVariants = cva(['relative flex', 'text-sm'], {\n variants: {\n vertical: {\n true: 'flex-col',\n false: 'flex-row',\n },\n width: {\n full: 'w-full',\n auto: 'w-auto',\n fit: 'w-fit',\n screen: 'w-screen',\n min: 'w-min',\n max: 'w-max',\n null: '',\n },\n wrap: {\n true: 'flex-wrap',\n false: 'flex-nowrap',\n },\n margin: {\n sm: 'm-2',\n md: 'm-4',\n lg: 'm-6',\n xl: 'm-8',\n none: 'm-0',\n },\n padding: {\n sm: 'p-2',\n md: 'p-4',\n lg: 'p-6',\n xl: 'p-8',\n none: 'p-0',\n },\n gap: {\n xs: 'gap-1',\n sm: 'gap-2',\n md: 'gap-4',\n lg: 'gap-6',\n xl: 'gap-8',\n none: 'gap-0',\n },\n justify: {\n start: 'justify-start',\n center: 'justify-center',\n end: 'justify-end',\n between: 'justify-between',\n around: 'justify-around',\n evenly: 'justify-evenly',\n stretch: 'justify-stretch',\n },\n align: {\n start: 'items-start',\n center: 'items-center',\n end: 'items-end',\n baseline: 'items-baseline',\n stretch: 'items-stretch',\n },\n },\n defaultVariants: {\n vertical: false,\n wrap: true,\n width: 'fit',\n margin: 'none',\n padding: 'sm',\n gap: 'xs',\n justify: 'start',\n align: 'center',\n },\n})\n\ntype Props = {\n className?: string\n} & VariantProps<typeof flexVariants>\nexport const Flex = ({ vertical, wrap, width, margin, padding, gap, justify, align, className, children }: React.PropsWithChildren<Props>) => {\n return (\n <div\n className={cn(\n flexVariants({\n vertical,\n width,\n wrap,\n margin,\n padding,\n gap,\n justify,\n align,\n className,\n }),\n )}\n >\n {children}\n </div>\n )\n}\n"],"mappings":"2IAKA,MAAM,EAAe,EAAI,CAAC,gBAAiB,WAAY,CACrD,SAAU,CACR,SAAU,CACR,KAAM,WACN,MAAO,YAET,MAAO,CACL,KAAM,SACN,KAAM,SACN,IAAK,QACL,OAAQ,WACR,IAAK,QACL,IAAK,QACL,KAAM,IAER,KAAM,CACJ,KAAM,YACN,MAAO,eAET,OAAQ,CACN,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,QAAS,CACP,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,IAAK,CACH,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,KAAM,SAER,QAAS,CACP,MAAO,gBACP,OAAQ,iBACR,IAAK,cACL,QAAS,kBACT,OAAQ,iBACR,OAAQ,iBACR,QAAS,mBAEX,MAAO,CACL,MAAO,cACP,OAAQ,eACR,IAAK,YACL,SAAU,iBACV,QAAS,kBAGb,gBAAiB,CACf,SAAU,GACV,KAAM,GACN,MAAO,MACP,OAAQ,OACR,QAAS,KACT,IAAK,KACL,QAAS,QACT,MAAO,YAOE,GAAQ,CAAE,WAAU,OAAM,QAAO,SAAQ,UAAS,MAAK,UAAS,QAAO,YAAW,cAE3F,EAAC,MAAA,CACC,UAAW,EACT,EAAa,CACX,WACA,QACA,OACA,SACA,UACA,MACA,UACA,QACA,eAIH"}
@@ -1,2 +1,2 @@
1
- const e=require(`./chunk-CUT6urMc.cjs`),t=e.__toESM(require(`@customafk/react-toolkit/utils`)),n=e.__toESM(require(`class-variance-authority`)),r=e.__toESM(require(`react/jsx-runtime`)),i=(0,n.cva)([`relative flex`,`text-sm`],{variants:{vertical:{true:`flex-col`,false:`flex-row`},width:{full:`w-full`,auto:`w-auto`,fit:`w-fit`,screen:`w-screen`,min:`w-min`,max:`w-max`,null:``},wrap:{true:`flex-wrap`,false:`flex-nowrap`},margin:{sm:`m-2`,md:`m-4`,lg:`m-6`,xl:`m-8`,none:`m-0`},padding:{sm:`p-2`,md:`p-4`,lg:`p-6`,xl:`p-8`,none:`p-0`},gap:{xs:`gap-1`,sm:`gap-2`,md:`gap-4`,lg:`gap-6`,xl:`gap-8`,none:`gap-0`},justify:{start:`justify-start`,center:`justify-center`,end:`justify-end`,between:`justify-between`,around:`justify-around`,evenly:`justify-evenly`,stretch:`justify-stretch`},align:{start:`items-start`,center:`items-center`,end:`items-end`,baseline:`items-baseline`,stretch:`items-stretch`}},defaultVariants:{vertical:!1,wrap:!0,width:`fit`,margin:`none`,padding:`sm`,gap:`xs`,justify:`start`,align:`center`}}),a=({vertical:e,wrap:n,width:a,margin:o,padding:s,gap:c,justify:l,align:u,className:d,children:f})=>(0,r.jsx)(`div`,{className:(0,t.cn)(i({vertical:e,width:a,wrap:n,margin:o,padding:s,gap:c,justify:l,align:u,className:d})),children:f});Object.defineProperty(exports,`Flex`,{enumerable:!0,get:function(){return a}});
2
- //# sourceMappingURL=flex-DMgD86BT.cjs.map
1
+ const e=require(`./chunk-CUT6urMc.cjs`),t=e.__toESM(require(`@customafk/react-toolkit/utils`)),n=e.__toESM(require(`react/jsx-runtime`)),r=e.__toESM(require(`class-variance-authority`)),i=(0,r.cva)([`relative flex`,`text-sm`],{variants:{vertical:{true:`flex-col`,false:`flex-row`},width:{full:`w-full`,auto:`w-auto`,fit:`w-fit`,screen:`w-screen`,min:`w-min`,max:`w-max`,null:``},wrap:{true:`flex-wrap`,false:`flex-nowrap`},margin:{sm:`m-2`,md:`m-4`,lg:`m-6`,xl:`m-8`,none:`m-0`},padding:{sm:`p-2`,md:`p-4`,lg:`p-6`,xl:`p-8`,none:`p-0`},gap:{xs:`gap-1`,sm:`gap-2`,md:`gap-4`,lg:`gap-6`,xl:`gap-8`,none:`gap-0`},justify:{start:`justify-start`,center:`justify-center`,end:`justify-end`,between:`justify-between`,around:`justify-around`,evenly:`justify-evenly`,stretch:`justify-stretch`},align:{start:`items-start`,center:`items-center`,end:`items-end`,baseline:`items-baseline`,stretch:`items-stretch`}},defaultVariants:{vertical:!1,wrap:!0,width:`fit`,margin:`none`,padding:`sm`,gap:`xs`,justify:`start`,align:`center`}}),a=({vertical:e,wrap:r,width:a,margin:o,padding:s,gap:c,justify:l,align:u,className:d,children:f})=>(0,n.jsx)(`div`,{className:(0,t.cn)(i({vertical:e,width:a,wrap:r,margin:o,padding:s,gap:c,justify:l,align:u,className:d})),children:f});Object.defineProperty(exports,`Flex`,{enumerable:!0,get:function(){return a}});
2
+ //# sourceMappingURL=flex-DS4mxjtf.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"flex-DMgD86BT.cjs","names":[],"sources":["../packages/components/layouts/flex.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\n\nconst flexVariants = cva(['relative flex', 'text-sm'], {\n variants: {\n vertical: {\n true: 'flex-col',\n false: 'flex-row',\n },\n width: {\n full: 'w-full',\n auto: 'w-auto',\n fit: 'w-fit',\n screen: 'w-screen',\n min: 'w-min',\n max: 'w-max',\n null: '',\n },\n wrap: {\n true: 'flex-wrap',\n false: 'flex-nowrap',\n },\n margin: {\n sm: 'm-2',\n md: 'm-4',\n lg: 'm-6',\n xl: 'm-8',\n none: 'm-0',\n },\n padding: {\n sm: 'p-2',\n md: 'p-4',\n lg: 'p-6',\n xl: 'p-8',\n none: 'p-0',\n },\n gap: {\n xs: 'gap-1',\n sm: 'gap-2',\n md: 'gap-4',\n lg: 'gap-6',\n xl: 'gap-8',\n none: 'gap-0',\n },\n justify: {\n start: 'justify-start',\n center: 'justify-center',\n end: 'justify-end',\n between: 'justify-between',\n around: 'justify-around',\n evenly: 'justify-evenly',\n stretch: 'justify-stretch',\n },\n align: {\n start: 'items-start',\n center: 'items-center',\n end: 'items-end',\n baseline: 'items-baseline',\n stretch: 'items-stretch',\n },\n },\n defaultVariants: {\n vertical: false,\n wrap: true,\n width: 'fit',\n margin: 'none',\n padding: 'sm',\n gap: 'xs',\n justify: 'start',\n align: 'center',\n },\n})\n\ntype Props = {\n className?: string\n} & VariantProps<typeof flexVariants>\nexport const Flex = ({ vertical, wrap, width, margin, padding, gap, justify, align, className, children }: React.PropsWithChildren<Props>) => {\n return (\n <div\n className={cn(\n flexVariants({\n vertical,\n width,\n wrap,\n margin,\n padding,\n gap,\n justify,\n align,\n className,\n }),\n )}\n >\n {children}\n </div>\n )\n}\n"],"mappings":"0LAKM,GAAA,EAAA,EAAA,KAAmB,CAAC,gBAAiB,WAAY,CACrD,SAAU,CACR,SAAU,CACR,KAAM,WACN,MAAO,YAET,MAAO,CACL,KAAM,SACN,KAAM,SACN,IAAK,QACL,OAAQ,WACR,IAAK,QACL,IAAK,QACL,KAAM,IAER,KAAM,CACJ,KAAM,YACN,MAAO,eAET,OAAQ,CACN,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,QAAS,CACP,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,IAAK,CACH,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,KAAM,SAER,QAAS,CACP,MAAO,gBACP,OAAQ,iBACR,IAAK,cACL,QAAS,kBACT,OAAQ,iBACR,OAAQ,iBACR,QAAS,mBAEX,MAAO,CACL,MAAO,cACP,OAAQ,eACR,IAAK,YACL,SAAU,iBACV,QAAS,kBAGb,gBAAiB,CACf,SAAU,GACV,KAAM,GACN,MAAO,MACP,OAAQ,OACR,QAAS,KACT,IAAK,KACL,QAAS,QACT,MAAO,YAOE,GAAQ,CAAE,WAAU,OAAM,QAAO,SAAQ,UAAS,MAAK,UAAS,QAAO,YAAW,eAE3F,EAAA,EAAA,KAAC,MAAA,CACC,WAAA,EAAA,EAAA,IACE,EAAa,CACX,WACA,QACA,OACA,SACA,UACA,MACA,UACA,QACA,eAIH"}
1
+ {"version":3,"file":"flex-DS4mxjtf.cjs","names":[],"sources":["../packages/components/layouts/flex.tsx"],"sourcesContent":["'use client'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\n\nconst flexVariants = cva(['relative flex', 'text-sm'], {\n variants: {\n vertical: {\n true: 'flex-col',\n false: 'flex-row',\n },\n width: {\n full: 'w-full',\n auto: 'w-auto',\n fit: 'w-fit',\n screen: 'w-screen',\n min: 'w-min',\n max: 'w-max',\n null: '',\n },\n wrap: {\n true: 'flex-wrap',\n false: 'flex-nowrap',\n },\n margin: {\n sm: 'm-2',\n md: 'm-4',\n lg: 'm-6',\n xl: 'm-8',\n none: 'm-0',\n },\n padding: {\n sm: 'p-2',\n md: 'p-4',\n lg: 'p-6',\n xl: 'p-8',\n none: 'p-0',\n },\n gap: {\n xs: 'gap-1',\n sm: 'gap-2',\n md: 'gap-4',\n lg: 'gap-6',\n xl: 'gap-8',\n none: 'gap-0',\n },\n justify: {\n start: 'justify-start',\n center: 'justify-center',\n end: 'justify-end',\n between: 'justify-between',\n around: 'justify-around',\n evenly: 'justify-evenly',\n stretch: 'justify-stretch',\n },\n align: {\n start: 'items-start',\n center: 'items-center',\n end: 'items-end',\n baseline: 'items-baseline',\n stretch: 'items-stretch',\n },\n },\n defaultVariants: {\n vertical: false,\n wrap: true,\n width: 'fit',\n margin: 'none',\n padding: 'sm',\n gap: 'xs',\n justify: 'start',\n align: 'center',\n },\n})\n\ntype Props = {\n className?: string\n} & VariantProps<typeof flexVariants>\nexport const Flex = ({ vertical, wrap, width, margin, padding, gap, justify, align, className, children }: React.PropsWithChildren<Props>) => {\n return (\n <div\n className={cn(\n flexVariants({\n vertical,\n width,\n wrap,\n margin,\n padding,\n gap,\n justify,\n align,\n className,\n }),\n )}\n >\n {children}\n </div>\n )\n}\n"],"mappings":"0LAKM,GAAA,EAAA,EAAA,KAAmB,CAAC,gBAAiB,WAAY,CACrD,SAAU,CACR,SAAU,CACR,KAAM,WACN,MAAO,YAET,MAAO,CACL,KAAM,SACN,KAAM,SACN,IAAK,QACL,OAAQ,WACR,IAAK,QACL,IAAK,QACL,KAAM,IAER,KAAM,CACJ,KAAM,YACN,MAAO,eAET,OAAQ,CACN,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,QAAS,CACP,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,OAER,IAAK,CACH,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,KAAM,SAER,QAAS,CACP,MAAO,gBACP,OAAQ,iBACR,IAAK,cACL,QAAS,kBACT,OAAQ,iBACR,OAAQ,iBACR,QAAS,mBAEX,MAAO,CACL,MAAO,cACP,OAAQ,eACR,IAAK,YACL,SAAU,iBACV,QAAS,kBAGb,gBAAiB,CACf,SAAU,GACV,KAAM,GACN,MAAO,MACP,OAAQ,OACR,QAAS,KACT,IAAK,KACL,QAAS,QACT,MAAO,YAOE,GAAQ,CAAE,WAAU,OAAM,QAAO,SAAQ,UAAS,MAAK,UAAS,QAAO,YAAW,eAE3F,EAAA,EAAA,KAAC,MAAA,CACC,WAAA,EAAA,EAAA,IACE,EAAa,CACX,WACA,QACA,OACA,SACA,UACA,MACA,UACA,QACA,eAIH"}
@@ -0,0 +1,2 @@
1
+ import{Label as e}from"./label-CdrxlBJ8.js";import{cn as t}from"@customafk/react-toolkit/utils";import{createContext as n,useContext as r,useId as i}from"react";import{jsx as a}from"react/jsx-runtime";import{Label as o,Slot as s}from"radix-ui";import{Controller as c,FormProvider as l,useFormContext as u,useFormState as d}from"react-hook-form";const f=l,p=n({}),m=({...e})=>a(p.Provider,{value:{name:e.name},children:a(c,{...e})}),h=()=>{let e=r(p),t=r(g),{getFieldState:n,control:i,resetField:a}=u(),o=d({name:e.name}),s=n(e.name,o);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:c}=t;return{id:c,control:i,resetField:a,name:e.name,formItemId:`${c}-form-item`,formDescriptionId:`${c}-form-item-description`,formMessageId:`${c}-form-item-message`,...s}},g=n({});function _({className:e,...n}){let r=i();return a(g.Provider,{value:{id:r},children:a(`div`,{"data-slot":`form-item`,className:t(`grid gap-1`,e),...n})})}function v({className:n,...r}){let{formItemId:i}=h();return a(e,{"data-slot":`form-label`,className:t(`text-xs`,n),htmlFor:i,...r})}function y({...e}){let{error:t,formItemId:n,formDescriptionId:r,formMessageId:i}=h();return a(s.Slot,{"data-slot":`form-control`,id:n,"aria-describedby":t?`${r} ${i}`:`${r}`,"aria-invalid":!!t,...e})}function b({className:e,...n}){let{formDescriptionId:r}=h();return a(`p`,{"data-slot":`form-description`,id:r,className:t(`text-text-positive-weak text-sm`,e),...n})}function x({className:e,children:n,...r}){let{error:i,formMessageId:o}=h();return a(`span`,{"data-slot":`form-message`,id:o,className:t(`text-danger text-xs`,e),...r,children:i?String(i?.message??``):n})}export{f as Form,y as FormControl,b as FormDescription,m as FormField,_ as FormItem,v as FormLabel,x as FormMessage,h as useFormField};
2
+ //# sourceMappingURL=form-BT1TbgK6.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-B-KLKj5u.js","names":["Label","SlotPrimitive"],"sources":["../packages/components/ui/form.tsx"],"sourcesContent":["'use client'\nimport { createContext, useContext, useId } from 'react'\nimport { Controller, type ControllerProps, type FieldPath, type FieldValues, FormProvider, useFormContext, useFormState } from 'react-hook-form'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { Label } from '@/components/ui/label'\n\nimport { Label as LabelPrimitive, Slot as SlotPrimitive } from 'radix-ui'\n\nconst Form = FormProvider\n\ntype FormFieldContextValue<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {\n name: TName\n}\n\nconst FormFieldContext = createContext<FormFieldContextValue>({} as FormFieldContextValue)\n\nconst FormField = <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = useContext(FormFieldContext)\n const itemContext = useContext(FormItemContext)\n const { getFieldState, control, resetField } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>')\n }\n\n const { id } = itemContext\n\n return {\n id,\n control,\n resetField,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\ntype FormItemContextValue = {\n id: string\n}\n\nconst FormItemContext = createContext<FormItemContextValue>({} as FormItemContextValue)\n\nfunction FormItem({ className, ...props }: React.ComponentProps<'div'>) {\n const id = useId()\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div data-slot=\"form-item\" className={cn('grid gap-1', className)} {...props} />\n </FormItemContext.Provider>\n )\n}\n\nfunction FormLabel({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { formItemId } = useFormField()\n return <Label data-slot=\"form-label\" className={cn('text-xs', className)} htmlFor={formItemId} {...props} />\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof SlotPrimitive.Slot>) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <SlotPrimitive.Slot\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}\n aria-invalid={!!error}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<'p'>) {\n const { formDescriptionId } = useFormField()\n\n return <p data-slot=\"form-description\" id={formDescriptionId} className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nfunction FormMessage({ className, children, ...props }: React.ComponentProps<'p'>) {\n const { error, formMessageId } = useFormField()\n\n return (\n <span data-slot=\"form-message\" id={formMessageId} className={cn('text-danger text-xs', className)} {...props}>\n {error ? String(error?.message ?? '') : children}\n </span>\n )\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField }\n"],"mappings":"yVASA,MAAM,EAAO,EAMP,EAAmB,EAAqC,IAExD,GAA8H,CAClI,GAAG,KAGD,EAAC,EAAiB,SAAA,CAAS,MAAO,CAAE,KAAM,EAAM,eAC9C,EAAC,EAAA,CAAW,GAAI,MAKhB,MAAqB,CACzB,IAAM,EAAe,EAAW,GAC1B,EAAc,EAAW,GACzB,CAAE,gBAAe,UAAS,cAAe,IACzC,EAAY,EAAa,CAAE,KAAM,EAAa,OAC9C,EAAa,EAAc,EAAa,KAAM,GAEpD,GAAI,CAAC,EACH,MAAU,MAAM,kDAGlB,GAAM,CAAE,MAAO,EAEf,MAAO,CACL,KACA,UACA,aACA,KAAM,EAAa,KACnB,WAAY,GAAG,EAAG,YAClB,kBAAmB,GAAG,EAAG,wBACzB,cAAe,GAAG,EAAG,oBACrB,GAAG,IAQD,EAAkB,EAAoC,IAE5D,SAAS,EAAS,CAAE,YAAW,GAAG,GAAsC,CACtE,IAAM,EAAK,IAEX,OACE,EAAC,EAAgB,SAAA,CAAS,MAAO,CAAE,eACjC,EAAC,MAAA,CAAI,YAAU,YAAY,UAAW,EAAG,aAAc,GAAY,GAAI,MAK7E,SAAS,EAAU,CAAE,YAAW,GAAG,GAA2D,CAC5F,GAAM,CAAE,cAAe,IACvB,OAAO,EAACA,EAAAA,CAAM,YAAU,aAAa,UAAW,EAAG,UAAW,GAAY,QAAS,EAAY,GAAI,IAGrG,SAAS,EAAY,CAAE,GAAG,GAA0D,CAClF,GAAM,CAAE,QAAO,aAAY,oBAAmB,iBAAkB,IAEhE,OACE,EAACC,EAAc,KAAA,CACb,YAAU,eACV,GAAI,EACJ,mBAAmB,EAAiC,GAAG,EAAkB,GAAG,IAAjD,GAAG,IAC9B,eAAc,CAAC,CAAC,EAChB,GAAI,IAKV,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAoC,CAC3E,GAAM,CAAE,qBAAsB,IAE9B,OAAO,EAAC,IAAA,CAAE,YAAU,mBAAmB,GAAI,EAAmB,UAAW,EAAG,kCAAmC,GAAY,GAAI,IAGjI,SAAS,EAAY,CAAE,YAAW,WAAU,GAAG,GAAoC,CACjF,GAAM,CAAE,QAAO,iBAAkB,IAEjC,OACE,EAAC,OAAA,CAAK,YAAU,eAAe,GAAI,EAAe,UAAW,EAAG,sBAAuB,GAAY,GAAI,WACpG,EAAQ,OAAO,GAAO,SAAW,IAAM"}
1
+ {"version":3,"file":"form-BT1TbgK6.js","names":["Label","SlotPrimitive"],"sources":["../packages/components/ui/form.tsx"],"sourcesContent":["'use client'\nimport { createContext, useContext, useId } from 'react'\nimport { Controller, type ControllerProps, type FieldPath, type FieldValues, FormProvider, useFormContext, useFormState } from 'react-hook-form'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { Label } from '@/components/ui/label'\n\nimport { Label as LabelPrimitive, Slot as SlotPrimitive } from 'radix-ui'\n\nconst Form = FormProvider\n\ntype FormFieldContextValue<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {\n name: TName\n}\n\nconst FormFieldContext = createContext<FormFieldContextValue>({} as FormFieldContextValue)\n\nconst FormField = <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = useContext(FormFieldContext)\n const itemContext = useContext(FormItemContext)\n const { getFieldState, control, resetField } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>')\n }\n\n const { id } = itemContext\n\n return {\n id,\n control,\n resetField,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\ntype FormItemContextValue = {\n id: string\n}\n\nconst FormItemContext = createContext<FormItemContextValue>({} as FormItemContextValue)\n\nfunction FormItem({ className, ...props }: React.ComponentProps<'div'>) {\n const id = useId()\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div data-slot=\"form-item\" className={cn('grid gap-1', className)} {...props} />\n </FormItemContext.Provider>\n )\n}\n\nfunction FormLabel({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { formItemId } = useFormField()\n return <Label data-slot=\"form-label\" className={cn('text-xs', className)} htmlFor={formItemId} {...props} />\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof SlotPrimitive.Slot>) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <SlotPrimitive.Slot\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}\n aria-invalid={!!error}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<'p'>) {\n const { formDescriptionId } = useFormField()\n\n return <p data-slot=\"form-description\" id={formDescriptionId} className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nfunction FormMessage({ className, children, ...props }: React.ComponentProps<'p'>) {\n const { error, formMessageId } = useFormField()\n\n return (\n <span data-slot=\"form-message\" id={formMessageId} className={cn('text-danger text-xs', className)} {...props}>\n {error ? String(error?.message ?? '') : children}\n </span>\n )\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField }\n"],"mappings":"yVASA,MAAM,EAAO,EAMP,EAAmB,EAAqC,IAExD,GAA8H,CAClI,GAAG,KAGD,EAAC,EAAiB,SAAA,CAAS,MAAO,CAAE,KAAM,EAAM,eAC9C,EAAC,EAAA,CAAW,GAAI,MAKhB,MAAqB,CACzB,IAAM,EAAe,EAAW,GAC1B,EAAc,EAAW,GACzB,CAAE,gBAAe,UAAS,cAAe,IACzC,EAAY,EAAa,CAAE,KAAM,EAAa,OAC9C,EAAa,EAAc,EAAa,KAAM,GAEpD,GAAI,CAAC,EACH,MAAU,MAAM,kDAGlB,GAAM,CAAE,MAAO,EAEf,MAAO,CACL,KACA,UACA,aACA,KAAM,EAAa,KACnB,WAAY,GAAG,EAAG,YAClB,kBAAmB,GAAG,EAAG,wBACzB,cAAe,GAAG,EAAG,oBACrB,GAAG,IAQD,EAAkB,EAAoC,IAE5D,SAAS,EAAS,CAAE,YAAW,GAAG,GAAsC,CACtE,IAAM,EAAK,IAEX,OACE,EAAC,EAAgB,SAAA,CAAS,MAAO,CAAE,eACjC,EAAC,MAAA,CAAI,YAAU,YAAY,UAAW,EAAG,aAAc,GAAY,GAAI,MAK7E,SAAS,EAAU,CAAE,YAAW,GAAG,GAA2D,CAC5F,GAAM,CAAE,cAAe,IACvB,OAAO,EAACA,EAAAA,CAAM,YAAU,aAAa,UAAW,EAAG,UAAW,GAAY,QAAS,EAAY,GAAI,IAGrG,SAAS,EAAY,CAAE,GAAG,GAA0D,CAClF,GAAM,CAAE,QAAO,aAAY,oBAAmB,iBAAkB,IAEhE,OACE,EAACC,EAAc,KAAA,CACb,YAAU,eACV,GAAI,EACJ,mBAAmB,EAAiC,GAAG,EAAkB,GAAG,IAAjD,GAAG,IAC9B,eAAc,CAAC,CAAC,EAChB,GAAI,IAKV,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAoC,CAC3E,GAAM,CAAE,qBAAsB,IAE9B,OAAO,EAAC,IAAA,CAAE,YAAU,mBAAmB,GAAI,EAAmB,UAAW,EAAG,kCAAmC,GAAY,GAAI,IAGjI,SAAS,EAAY,CAAE,YAAW,WAAU,GAAG,GAAoC,CACjF,GAAM,CAAE,QAAO,iBAAkB,IAEjC,OACE,EAAC,OAAA,CAAK,YAAU,eAAe,GAAI,EAAe,UAAW,EAAG,sBAAuB,GAAY,GAAI,WACpG,EAAQ,OAAO,GAAO,SAAW,IAAM"}
@@ -1,2 +1,2 @@
1
- const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./label-BZqk7MPJ.cjs`),n=e.__toESM(require(`@customafk/react-toolkit/utils`)),r=e.__toESM(require(`radix-ui`)),i=e.__toESM(require(`react/jsx-runtime`)),a=e.__toESM(require(`react`)),o=e.__toESM(require(`react-hook-form`)),s=o.FormProvider,c=(0,a.createContext)({}),l=({...e})=>(0,i.jsx)(c.Provider,{value:{name:e.name},children:(0,i.jsx)(o.Controller,{...e})}),u=()=>{let e=(0,a.useContext)(c),t=(0,a.useContext)(d),{getFieldState:n,control:r,resetField:i}=(0,o.useFormContext)(),s=(0,o.useFormState)({name:e.name}),l=n(e.name,s);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:u}=t;return{id:u,control:r,resetField:i,name:e.name,formItemId:`${u}-form-item`,formDescriptionId:`${u}-form-item-description`,formMessageId:`${u}-form-item-message`,...l}},d=(0,a.createContext)({});function f({className:e,...t}){let r=(0,a.useId)();return(0,i.jsx)(d.Provider,{value:{id:r},children:(0,i.jsx)(`div`,{"data-slot":`form-item`,className:(0,n.cn)(`grid gap-1`,e),...t})})}function p({className:e,...r}){let{formItemId:a}=u();return(0,i.jsx)(t.Label,{"data-slot":`form-label`,className:(0,n.cn)(`text-xs`,e),htmlFor:a,...r})}function m({...e}){let{error:t,formItemId:n,formDescriptionId:a,formMessageId:o}=u();return(0,i.jsx)(r.Slot.Slot,{"data-slot":`form-control`,id:n,"aria-describedby":t?`${a} ${o}`:`${a}`,"aria-invalid":!!t,...e})}function h({className:e,...t}){let{formDescriptionId:r}=u();return(0,i.jsx)(`p`,{"data-slot":`form-description`,id:r,className:(0,n.cn)(`text-text-positive-weak text-sm`,e),...t})}function g({className:e,children:t,...r}){let{error:a,formMessageId:o}=u();return(0,i.jsx)(`span`,{"data-slot":`form-message`,id:o,className:(0,n.cn)(`text-danger text-xs`,e),...r,children:a?String(a?.message??``):t})}Object.defineProperty(exports,`Form`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`FormControl`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`FormDescription`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`FormField`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`FormItem`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`FormLabel`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`FormMessage`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`useFormField`,{enumerable:!0,get:function(){return u}});
2
- //# sourceMappingURL=form-CtpHZKmh.cjs.map
1
+ const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./label-CHNSlaoz.cjs`),n=e.__toESM(require(`@customafk/react-toolkit/utils`)),r=e.__toESM(require(`react`)),i=e.__toESM(require(`react/jsx-runtime`)),a=e.__toESM(require(`radix-ui`)),o=e.__toESM(require(`react-hook-form`)),s=o.FormProvider,c=(0,r.createContext)({}),l=({...e})=>(0,i.jsx)(c.Provider,{value:{name:e.name},children:(0,i.jsx)(o.Controller,{...e})}),u=()=>{let e=(0,r.useContext)(c),t=(0,r.useContext)(d),{getFieldState:n,control:i,resetField:a}=(0,o.useFormContext)(),s=(0,o.useFormState)({name:e.name}),l=n(e.name,s);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:u}=t;return{id:u,control:i,resetField:a,name:e.name,formItemId:`${u}-form-item`,formDescriptionId:`${u}-form-item-description`,formMessageId:`${u}-form-item-message`,...l}},d=(0,r.createContext)({});function f({className:e,...t}){let a=(0,r.useId)();return(0,i.jsx)(d.Provider,{value:{id:a},children:(0,i.jsx)(`div`,{"data-slot":`form-item`,className:(0,n.cn)(`grid gap-1`,e),...t})})}function p({className:e,...r}){let{formItemId:a}=u();return(0,i.jsx)(t.Label,{"data-slot":`form-label`,className:(0,n.cn)(`text-xs`,e),htmlFor:a,...r})}function m({...e}){let{error:t,formItemId:n,formDescriptionId:r,formMessageId:o}=u();return(0,i.jsx)(a.Slot.Slot,{"data-slot":`form-control`,id:n,"aria-describedby":t?`${r} ${o}`:`${r}`,"aria-invalid":!!t,...e})}function h({className:e,...t}){let{formDescriptionId:r}=u();return(0,i.jsx)(`p`,{"data-slot":`form-description`,id:r,className:(0,n.cn)(`text-text-positive-weak text-sm`,e),...t})}function g({className:e,children:t,...r}){let{error:a,formMessageId:o}=u();return(0,i.jsx)(`span`,{"data-slot":`form-message`,id:o,className:(0,n.cn)(`text-danger text-xs`,e),...r,children:a?String(a?.message??``):t})}Object.defineProperty(exports,`Form`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`FormControl`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`FormDescription`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`FormField`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`FormItem`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`FormLabel`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`FormMessage`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`useFormField`,{enumerable:!0,get:function(){return u}});
2
+ //# sourceMappingURL=form-DyH5iWq7.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-CtpHZKmh.cjs","names":["FormProvider","Controller","Label","SlotPrimitive"],"sources":["../packages/components/ui/form.tsx"],"sourcesContent":["'use client'\nimport { createContext, useContext, useId } from 'react'\nimport { Controller, type ControllerProps, type FieldPath, type FieldValues, FormProvider, useFormContext, useFormState } from 'react-hook-form'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { Label } from '@/components/ui/label'\n\nimport { Label as LabelPrimitive, Slot as SlotPrimitive } from 'radix-ui'\n\nconst Form = FormProvider\n\ntype FormFieldContextValue<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {\n name: TName\n}\n\nconst FormFieldContext = createContext<FormFieldContextValue>({} as FormFieldContextValue)\n\nconst FormField = <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = useContext(FormFieldContext)\n const itemContext = useContext(FormItemContext)\n const { getFieldState, control, resetField } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>')\n }\n\n const { id } = itemContext\n\n return {\n id,\n control,\n resetField,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\ntype FormItemContextValue = {\n id: string\n}\n\nconst FormItemContext = createContext<FormItemContextValue>({} as FormItemContextValue)\n\nfunction FormItem({ className, ...props }: React.ComponentProps<'div'>) {\n const id = useId()\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div data-slot=\"form-item\" className={cn('grid gap-1', className)} {...props} />\n </FormItemContext.Provider>\n )\n}\n\nfunction FormLabel({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { formItemId } = useFormField()\n return <Label data-slot=\"form-label\" className={cn('text-xs', className)} htmlFor={formItemId} {...props} />\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof SlotPrimitive.Slot>) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <SlotPrimitive.Slot\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}\n aria-invalid={!!error}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<'p'>) {\n const { formDescriptionId } = useFormField()\n\n return <p data-slot=\"form-description\" id={formDescriptionId} className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nfunction FormMessage({ className, children, ...props }: React.ComponentProps<'p'>) {\n const { error, formMessageId } = useFormField()\n\n return (\n <span data-slot=\"form-message\" id={formMessageId} className={cn('text-danger text-xs', className)} {...props}>\n {error ? String(error?.message ?? '') : children}\n </span>\n )\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField }\n"],"mappings":"kRASM,EAAOA,EAAAA,aAMP,GAAA,EAAA,EAAA,eAAwD,IAExD,GAA8H,CAClI,GAAG,MAGD,EAAA,EAAA,KAAC,EAAiB,SAAA,CAAS,MAAO,CAAE,KAAM,EAAM,gBAC9C,EAAA,EAAA,KAACC,EAAAA,WAAAA,CAAW,GAAI,MAKhB,MAAqB,CACzB,IAAM,GAAA,EAAA,EAAA,YAA0B,GAC1B,GAAA,EAAA,EAAA,YAAyB,GACzB,CAAE,gBAAe,UAAS,eAAA,EAAA,EAAA,kBAC1B,GAAA,EAAA,EAAA,cAAyB,CAAE,KAAM,EAAa,OAC9C,EAAa,EAAc,EAAa,KAAM,GAEpD,GAAI,CAAC,EACH,MAAU,MAAM,kDAGlB,GAAM,CAAE,MAAO,EAEf,MAAO,CACL,KACA,UACA,aACA,KAAM,EAAa,KACnB,WAAY,GAAG,EAAG,YAClB,kBAAmB,GAAG,EAAG,wBACzB,cAAe,GAAG,EAAG,oBACrB,GAAG,IAQD,GAAA,EAAA,EAAA,eAAsD,IAE5D,SAAS,EAAS,CAAE,YAAW,GAAG,GAAsC,CACtE,IAAM,GAAA,EAAA,EAAA,SAEN,OACE,EAAA,EAAA,KAAC,EAAgB,SAAA,CAAS,MAAO,CAAE,gBACjC,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,YAAY,WAAA,EAAA,EAAA,IAAc,aAAc,GAAY,GAAI,MAK7E,SAAS,EAAU,CAAE,YAAW,GAAG,GAA2D,CAC5F,GAAM,CAAE,cAAe,IACvB,OAAO,EAAA,EAAA,KAACC,EAAAA,MAAAA,CAAM,YAAU,aAAa,WAAA,EAAA,EAAA,IAAc,UAAW,GAAY,QAAS,EAAY,GAAI,IAGrG,SAAS,EAAY,CAAE,GAAG,GAA0D,CAClF,GAAM,CAAE,QAAO,aAAY,oBAAmB,iBAAkB,IAEhE,OACE,EAAA,EAAA,KAACC,EAAAA,KAAc,KAAA,CACb,YAAU,eACV,GAAI,EACJ,mBAAmB,EAAiC,GAAG,EAAkB,GAAG,IAAjD,GAAG,IAC9B,eAAc,CAAC,CAAC,EAChB,GAAI,IAKV,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAoC,CAC3E,GAAM,CAAE,qBAAsB,IAE9B,OAAO,EAAA,EAAA,KAAC,IAAA,CAAE,YAAU,mBAAmB,GAAI,EAAmB,WAAA,EAAA,EAAA,IAAc,kCAAmC,GAAY,GAAI,IAGjI,SAAS,EAAY,CAAE,YAAW,WAAU,GAAG,GAAoC,CACjF,GAAM,CAAE,QAAO,iBAAkB,IAEjC,OACE,EAAA,EAAA,KAAC,OAAA,CAAK,YAAU,eAAe,GAAI,EAAe,WAAA,EAAA,EAAA,IAAc,sBAAuB,GAAY,GAAI,WACpG,EAAQ,OAAO,GAAO,SAAW,IAAM"}
1
+ {"version":3,"file":"form-DyH5iWq7.cjs","names":["FormProvider","Controller","Label","SlotPrimitive"],"sources":["../packages/components/ui/form.tsx"],"sourcesContent":["'use client'\nimport { createContext, useContext, useId } from 'react'\nimport { Controller, type ControllerProps, type FieldPath, type FieldValues, FormProvider, useFormContext, useFormState } from 'react-hook-form'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { Label } from '@/components/ui/label'\n\nimport { Label as LabelPrimitive, Slot as SlotPrimitive } from 'radix-ui'\n\nconst Form = FormProvider\n\ntype FormFieldContextValue<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {\n name: TName\n}\n\nconst FormFieldContext = createContext<FormFieldContextValue>({} as FormFieldContextValue)\n\nconst FormField = <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = useContext(FormFieldContext)\n const itemContext = useContext(FormItemContext)\n const { getFieldState, control, resetField } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>')\n }\n\n const { id } = itemContext\n\n return {\n id,\n control,\n resetField,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\ntype FormItemContextValue = {\n id: string\n}\n\nconst FormItemContext = createContext<FormItemContextValue>({} as FormItemContextValue)\n\nfunction FormItem({ className, ...props }: React.ComponentProps<'div'>) {\n const id = useId()\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div data-slot=\"form-item\" className={cn('grid gap-1', className)} {...props} />\n </FormItemContext.Provider>\n )\n}\n\nfunction FormLabel({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { formItemId } = useFormField()\n return <Label data-slot=\"form-label\" className={cn('text-xs', className)} htmlFor={formItemId} {...props} />\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof SlotPrimitive.Slot>) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <SlotPrimitive.Slot\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}\n aria-invalid={!!error}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<'p'>) {\n const { formDescriptionId } = useFormField()\n\n return <p data-slot=\"form-description\" id={formDescriptionId} className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nfunction FormMessage({ className, children, ...props }: React.ComponentProps<'p'>) {\n const { error, formMessageId } = useFormField()\n\n return (\n <span data-slot=\"form-message\" id={formMessageId} className={cn('text-danger text-xs', className)} {...props}>\n {error ? String(error?.message ?? '') : children}\n </span>\n )\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField }\n"],"mappings":"kRASM,EAAOA,EAAAA,aAMP,GAAA,EAAA,EAAA,eAAwD,IAExD,GAA8H,CAClI,GAAG,MAGD,EAAA,EAAA,KAAC,EAAiB,SAAA,CAAS,MAAO,CAAE,KAAM,EAAM,gBAC9C,EAAA,EAAA,KAACC,EAAAA,WAAAA,CAAW,GAAI,MAKhB,MAAqB,CACzB,IAAM,GAAA,EAAA,EAAA,YAA0B,GAC1B,GAAA,EAAA,EAAA,YAAyB,GACzB,CAAE,gBAAe,UAAS,eAAA,EAAA,EAAA,kBAC1B,GAAA,EAAA,EAAA,cAAyB,CAAE,KAAM,EAAa,OAC9C,EAAa,EAAc,EAAa,KAAM,GAEpD,GAAI,CAAC,EACH,MAAU,MAAM,kDAGlB,GAAM,CAAE,MAAO,EAEf,MAAO,CACL,KACA,UACA,aACA,KAAM,EAAa,KACnB,WAAY,GAAG,EAAG,YAClB,kBAAmB,GAAG,EAAG,wBACzB,cAAe,GAAG,EAAG,oBACrB,GAAG,IAQD,GAAA,EAAA,EAAA,eAAsD,IAE5D,SAAS,EAAS,CAAE,YAAW,GAAG,GAAsC,CACtE,IAAM,GAAA,EAAA,EAAA,SAEN,OACE,EAAA,EAAA,KAAC,EAAgB,SAAA,CAAS,MAAO,CAAE,gBACjC,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,YAAY,WAAA,EAAA,EAAA,IAAc,aAAc,GAAY,GAAI,MAK7E,SAAS,EAAU,CAAE,YAAW,GAAG,GAA2D,CAC5F,GAAM,CAAE,cAAe,IACvB,OAAO,EAAA,EAAA,KAACC,EAAAA,MAAAA,CAAM,YAAU,aAAa,WAAA,EAAA,EAAA,IAAc,UAAW,GAAY,QAAS,EAAY,GAAI,IAGrG,SAAS,EAAY,CAAE,GAAG,GAA0D,CAClF,GAAM,CAAE,QAAO,aAAY,oBAAmB,iBAAkB,IAEhE,OACE,EAAA,EAAA,KAACC,EAAAA,KAAc,KAAA,CACb,YAAU,eACV,GAAI,EACJ,mBAAmB,EAAiC,GAAG,EAAkB,GAAG,IAAjD,GAAG,IAC9B,eAAc,CAAC,CAAC,EAChB,GAAI,IAKV,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAoC,CAC3E,GAAM,CAAE,qBAAsB,IAE9B,OAAO,EAAA,EAAA,KAAC,IAAA,CAAE,YAAU,mBAAmB,GAAI,EAAmB,WAAA,EAAA,EAAA,IAAc,kCAAmC,GAAY,GAAI,IAGjI,SAAS,EAAY,CAAE,YAAW,WAAU,GAAG,GAAoC,CACjF,GAAM,CAAE,QAAO,iBAAkB,IAEjC,OACE,EAAA,EAAA,KAAC,OAAA,CAAK,YAAU,eAAe,GAAI,EAAe,WAAA,EAAA,EAAA,IAAc,sBAAuB,GAAY,GAAI,WACpG,EAAQ,OAAO,GAAO,SAAW,IAAM"}
@@ -0,0 +1,2 @@
1
+ import{ErrorDialog as e}from"./error-dialog-BeYJOtSH.js";import{Form as t}from"./form-BT1TbgK6.js";import{AlertCircleIcon as n}from"lucide-react";import{useCallback as r,useEffect as i,useState as a}from"react";import{Fragment as o,jsx as s,jsxs as c}from"react/jsx-runtime";import{useForm as l}from"react-hook-form";import{ErrorMessage as u}from"@hookform/error-message";const d=({form:d,isResetAfterSubmit:f=!0,className:p,onSubmit:m,onError:h,onSubcribe:g,children:_})=>{let v=l({...d,criteriaMode:`all`}),{formState:y,reset:b,handleSubmit:x,subscribe:S}=v,{dirtyFields:C}=y,[w,T]=a(!1),E=r(e=>{m(e,y,C),f&&b()},[C,y,f,m,b]),D=r(e=>{let t=Object.keys(e);t.length!==0&&(h?.(e),T(!0))},[h]);return i(()=>{if(!g)return;let e=S({formState:{values:!0},callback:({values:e})=>{g(e)}});return()=>e()},[g,S]),c(t,{...v,children:[s(`form`,{className:p,onSubmit:x(E,D),children:_}),s(e,{open:w,title:`Lỗi nhập dữ liệu`,description:`An unexpected error has occurred. Please check the errors below and try again.`,onOpenChange:T,children:w&&s(o,{children:Object.keys(y.errors).length>0?c(`div`,{className:`flex max-w-100 flex-col gap-2 px-4`,children:[s(`p`,{className:`text-muted-foreground text-sm font-semibold`,children:`Cảnh báo: Vui lòng kiểm tra các lỗi sau:`}),s(`div`,{className:`flex flex-col space-y-1`,children:Object.entries(y.errors).map(([e])=>s(u,{errors:y.errors,name:e,render:({messages:e})=>s(o,{children:e?Object.entries(e).map(([e,t])=>c(`div`,{className:`text-accent-foreground flex items-start gap-x-1 truncate text-sm font-normal`,children:[s(n,{size:16,className:`text-destructive mt-0.5 min-w-4 flex-0`}),s(`p`,{className:`line-clamp-2 flex-1 text-wrap`,children:t})]},e)):null})},e))})]}):s(`p`,{className:`text-muted-foreground text-sm`,children:`No errors found.`})})})]})};export{d as FormWrapper};
2
+ //# sourceMappingURL=form-wrapper-CFcpJdfv.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-wrapper-Deo8gKv5.js","names":[],"sources":["../packages/components/forms/form-wrapper.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\nimport { type FieldValues, type FormState, type SubmitErrorHandler, type SubmitHandler, useForm, type UseFormProps } from 'react-hook-form'\n\nimport { AlertCircleIcon } from 'lucide-react'\n\nimport type { AnyEntity } from '@/types'\nimport { ErrorMessage } from '@hookform/error-message'\n\nimport { ErrorDialog } from '../dialogs/error-dialog'\nimport { Form } from '../ui/form'\n\ntype Props<TFieldValues extends FieldValues = FieldValues> = {\n form: UseFormProps<TFieldValues>\n isResetAfterSubmit?: boolean\n className?: string\n onSubmit: (data: TFieldValues, formState: FormState<FieldValues>, dirtyFields: FormState<FieldValues>['dirtyFields']) => void | Promise<void>\n onError?: SubmitErrorHandler<TFieldValues>\n onSubcribe?: (values: TFieldValues) => void\n}\n\nexport const FormWrapper = <TFieldValues extends FieldValues = FieldValues>({\n form: FormConfig,\n isResetAfterSubmit = true,\n className,\n onSubmit,\n onError,\n onSubcribe,\n children,\n}: React.PropsWithChildren<Props<TFieldValues>>) => {\n const form = useForm({\n ...FormConfig,\n criteriaMode: 'all',\n })\n\n const { formState, reset, handleSubmit, subscribe } = form\n const { dirtyFields } = formState\n\n const [errorOpen, setErrorOpen] = useState<boolean>(false)\n\n const handleFormSubmit = useCallback<SubmitHandler<TFieldValues>>(\n (data) => {\n onSubmit(data, formState, dirtyFields)\n if (isResetAfterSubmit) {\n reset()\n }\n },\n [dirtyFields, formState, isResetAfterSubmit, onSubmit, reset],\n )\n\n const handleFormError = useCallback<SubmitErrorHandler<TFieldValues>>(\n (errors) => {\n const errorKeys = Object.keys(errors)\n if (errorKeys.length === 0) return\n onError?.(errors)\n setErrorOpen(true)\n },\n [onError],\n )\n\n useEffect(() => {\n if (!onSubcribe) return\n const callback = subscribe({\n formState: { values: true },\n callback: ({ values }) => {\n onSubcribe(values)\n },\n })\n return () => callback()\n }, [onSubcribe, subscribe])\n\n return (\n <Form {...form}>\n <form className={className} onSubmit={handleSubmit(handleFormSubmit, handleFormError)}>\n {children}\n </form>\n <ErrorDialog\n open={errorOpen}\n title=\"Lỗi nhập dữ liệu\"\n description=\"An unexpected error has occurred. Please check the errors below and try again.\"\n onOpenChange={setErrorOpen}\n >\n {errorOpen && (\n <>\n {Object.keys(formState.errors).length > 0 ? (\n <div className=\"flex max-w-100 flex-col gap-2 px-4\">\n <p className=\"text-muted-foreground text-sm font-semibold\">Cảnh báo: Vui lòng kiểm tra các lỗi sau:</p>\n <div className=\"flex flex-col space-y-1\">\n {Object.entries(formState.errors).map(([key]) => (\n <ErrorMessage\n key={key}\n errors={formState.errors}\n name={key as AnyEntity}\n render={({ messages }) => {\n return (\n <>\n {messages\n ? Object.entries(messages).map(([type, message]) => {\n return (\n <div key={type} className=\"text-accent-foreground flex items-start gap-x-1 truncate text-sm font-normal\">\n <AlertCircleIcon size={16} className=\"text-destructive mt-0.5 min-w-4 flex-0\" />\n <p className=\"line-clamp-2 flex-1 text-wrap\">{message}</p>\n </div>\n )\n })\n : null}\n </>\n )\n }}\n />\n ))}\n </div>\n </div>\n ) : (\n <p className=\"text-muted-foreground text-sm\">No errors found.</p>\n )}\n </>\n )}\n </ErrorDialog>\n </Form>\n )\n}\n"],"mappings":"oXAoBA,MAAa,GAA+D,CAC1E,KAAM,EACN,qBAAqB,GACrB,YACA,WACA,UACA,aACA,cACkD,CAClD,IAAM,EAAO,EAAQ,CACnB,GAAG,EACH,aAAc,QAGV,CAAE,YAAW,QAAO,eAAc,aAAc,EAChD,CAAE,eAAgB,EAElB,CAAC,EAAW,GAAgB,EAAkB,IAE9C,EAAmB,EACtB,GAAS,CACR,EAAS,EAAM,EAAW,GACtB,GACF,KAGJ,CAAC,EAAa,EAAW,EAAoB,EAAU,IAGnD,EAAkB,EACrB,GAAW,CACV,IAAM,EAAY,OAAO,KAAK,GAC1B,EAAU,SAAW,IACzB,IAAU,GACV,EAAa,MAEf,CAAC,IAcH,OAXA,MAAgB,CACd,GAAI,CAAC,EAAY,OACjB,IAAM,EAAW,EAAU,CACzB,UAAW,CAAE,OAAQ,IACrB,UAAW,CAAE,YAAa,CACxB,EAAW,MAGf,UAAa,KACZ,CAAC,EAAY,IAGd,EAAC,EAAA,CAAK,GAAI,YACR,EAAC,OAAA,CAAgB,YAAW,SAAU,EAAa,EAAkB,GAClE,aAEH,EAAC,EAAA,CACC,KAAM,EACN,MAAM,mBACN,YAAY,iFACZ,aAAc,WAEb,GACC,EAAA,EAAA,CAAA,SACG,OAAO,KAAK,EAAU,QAAQ,OAAS,EACtC,EAAC,MAAA,CAAI,UAAU,+CACb,EAAC,IAAA,CAAE,UAAU,uDAA8C,6CAC3D,EAAC,MAAA,CAAI,UAAU,mCACZ,OAAO,QAAQ,EAAU,QAAQ,KAAK,CAAC,KACtC,EAAC,EAAA,CAEC,OAAQ,EAAU,OAClB,KAAM,EACN,QAAS,CAAE,cAEP,EAAA,EAAA,CAAA,SACG,EACG,OAAO,QAAQ,GAAU,KAAK,CAAC,EAAM,KAEjC,EAAC,MAAA,CAAe,UAAU,yFACxB,EAAC,EAAA,CAAgB,KAAM,GAAI,UAAU,2CACrC,EAAC,IAAA,CAAE,UAAU,yCAAiC,MAFtC,IAMd,QAfL,SAwBb,EAAC,IAAA,CAAE,UAAU,yCAAgC"}
1
+ {"version":3,"file":"form-wrapper-CFcpJdfv.js","names":[],"sources":["../packages/components/forms/form-wrapper.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\nimport { type FieldValues, type FormState, type SubmitErrorHandler, type SubmitHandler, useForm, type UseFormProps } from 'react-hook-form'\n\nimport { AlertCircleIcon } from 'lucide-react'\n\nimport type { AnyEntity } from '@/types'\nimport { ErrorMessage } from '@hookform/error-message'\n\nimport { ErrorDialog } from '../dialogs/error-dialog'\nimport { Form } from '../ui/form'\n\ntype Props<TFieldValues extends FieldValues = FieldValues> = {\n form: UseFormProps<TFieldValues>\n isResetAfterSubmit?: boolean\n className?: string\n onSubmit: (data: TFieldValues, formState: FormState<FieldValues>, dirtyFields: FormState<FieldValues>['dirtyFields']) => void | Promise<void>\n onError?: SubmitErrorHandler<TFieldValues>\n onSubcribe?: (values: TFieldValues) => void\n}\n\nexport const FormWrapper = <TFieldValues extends FieldValues = FieldValues>({\n form: FormConfig,\n isResetAfterSubmit = true,\n className,\n onSubmit,\n onError,\n onSubcribe,\n children,\n}: React.PropsWithChildren<Props<TFieldValues>>) => {\n const form = useForm({\n ...FormConfig,\n criteriaMode: 'all',\n })\n\n const { formState, reset, handleSubmit, subscribe } = form\n const { dirtyFields } = formState\n\n const [errorOpen, setErrorOpen] = useState<boolean>(false)\n\n const handleFormSubmit = useCallback<SubmitHandler<TFieldValues>>(\n (data) => {\n onSubmit(data, formState, dirtyFields)\n if (isResetAfterSubmit) {\n reset()\n }\n },\n [dirtyFields, formState, isResetAfterSubmit, onSubmit, reset],\n )\n\n const handleFormError = useCallback<SubmitErrorHandler<TFieldValues>>(\n (errors) => {\n const errorKeys = Object.keys(errors)\n if (errorKeys.length === 0) return\n onError?.(errors)\n setErrorOpen(true)\n },\n [onError],\n )\n\n useEffect(() => {\n if (!onSubcribe) return\n const callback = subscribe({\n formState: { values: true },\n callback: ({ values }) => {\n onSubcribe(values)\n },\n })\n return () => callback()\n }, [onSubcribe, subscribe])\n\n return (\n <Form {...form}>\n <form className={className} onSubmit={handleSubmit(handleFormSubmit, handleFormError)}>\n {children}\n </form>\n <ErrorDialog\n open={errorOpen}\n title=\"Lỗi nhập dữ liệu\"\n description=\"An unexpected error has occurred. Please check the errors below and try again.\"\n onOpenChange={setErrorOpen}\n >\n {errorOpen && (\n <>\n {Object.keys(formState.errors).length > 0 ? (\n <div className=\"flex max-w-100 flex-col gap-2 px-4\">\n <p className=\"text-muted-foreground text-sm font-semibold\">Cảnh báo: Vui lòng kiểm tra các lỗi sau:</p>\n <div className=\"flex flex-col space-y-1\">\n {Object.entries(formState.errors).map(([key]) => (\n <ErrorMessage\n key={key}\n errors={formState.errors}\n name={key as AnyEntity}\n render={({ messages }) => {\n return (\n <>\n {messages\n ? Object.entries(messages).map(([type, message]) => {\n return (\n <div key={type} className=\"text-accent-foreground flex items-start gap-x-1 truncate text-sm font-normal\">\n <AlertCircleIcon size={16} className=\"text-destructive mt-0.5 min-w-4 flex-0\" />\n <p className=\"line-clamp-2 flex-1 text-wrap\">{message}</p>\n </div>\n )\n })\n : null}\n </>\n )\n }}\n />\n ))}\n </div>\n </div>\n ) : (\n <p className=\"text-muted-foreground text-sm\">No errors found.</p>\n )}\n </>\n )}\n </ErrorDialog>\n </Form>\n )\n}\n"],"mappings":"oXAoBA,MAAa,GAA+D,CAC1E,KAAM,EACN,qBAAqB,GACrB,YACA,WACA,UACA,aACA,cACkD,CAClD,IAAM,EAAO,EAAQ,CACnB,GAAG,EACH,aAAc,QAGV,CAAE,YAAW,QAAO,eAAc,aAAc,EAChD,CAAE,eAAgB,EAElB,CAAC,EAAW,GAAgB,EAAkB,IAE9C,EAAmB,EACtB,GAAS,CACR,EAAS,EAAM,EAAW,GACtB,GACF,KAGJ,CAAC,EAAa,EAAW,EAAoB,EAAU,IAGnD,EAAkB,EACrB,GAAW,CACV,IAAM,EAAY,OAAO,KAAK,GAC1B,EAAU,SAAW,IACzB,IAAU,GACV,EAAa,MAEf,CAAC,IAcH,OAXA,MAAgB,CACd,GAAI,CAAC,EAAY,OACjB,IAAM,EAAW,EAAU,CACzB,UAAW,CAAE,OAAQ,IACrB,UAAW,CAAE,YAAa,CACxB,EAAW,MAGf,UAAa,KACZ,CAAC,EAAY,IAGd,EAAC,EAAA,CAAK,GAAI,YACR,EAAC,OAAA,CAAgB,YAAW,SAAU,EAAa,EAAkB,GAClE,aAEH,EAAC,EAAA,CACC,KAAM,EACN,MAAM,mBACN,YAAY,iFACZ,aAAc,WAEb,GACC,EAAA,EAAA,CAAA,SACG,OAAO,KAAK,EAAU,QAAQ,OAAS,EACtC,EAAC,MAAA,CAAI,UAAU,+CACb,EAAC,IAAA,CAAE,UAAU,uDAA8C,6CAC3D,EAAC,MAAA,CAAI,UAAU,mCACZ,OAAO,QAAQ,EAAU,QAAQ,KAAK,CAAC,KACtC,EAAC,EAAA,CAEC,OAAQ,EAAU,OAClB,KAAM,EACN,QAAS,CAAE,cAEP,EAAA,EAAA,CAAA,SACG,EACG,OAAO,QAAQ,GAAU,KAAK,CAAC,EAAM,KAEjC,EAAC,MAAA,CAAe,UAAU,yFACxB,EAAC,EAAA,CAAgB,KAAM,GAAI,UAAU,2CACrC,EAAC,IAAA,CAAE,UAAU,yCAAiC,MAFtC,IAMd,QAfL,SAwBb,EAAC,IAAA,CAAE,UAAU,yCAAgC"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./error-dialog-DMbJhWyk.cjs`),n=require(`./form-DyH5iWq7.cjs`),r=e.__toESM(require(`lucide-react`)),i=e.__toESM(require(`react`)),a=e.__toESM(require(`react/jsx-runtime`)),o=e.__toESM(require(`react-hook-form`)),s=e.__toESM(require(`@hookform/error-message`)),c=({form:e,isResetAfterSubmit:c=!0,className:l,onSubmit:u,onError:d,onSubcribe:f,children:p})=>{let m=(0,o.useForm)({...e,criteriaMode:`all`}),{formState:h,reset:g,handleSubmit:_,subscribe:v}=m,{dirtyFields:y}=h,[b,x]=(0,i.useState)(!1),S=(0,i.useCallback)(e=>{u(e,h,y),c&&g()},[y,h,c,u,g]),C=(0,i.useCallback)(e=>{let t=Object.keys(e);t.length!==0&&(d?.(e),x(!0))},[d]);return(0,i.useEffect)(()=>{if(!f)return;let e=v({formState:{values:!0},callback:({values:e})=>{f(e)}});return()=>e()},[f,v]),(0,a.jsxs)(n.Form,{...m,children:[(0,a.jsx)(`form`,{className:l,onSubmit:_(S,C),children:p}),(0,a.jsx)(t.ErrorDialog,{open:b,title:`Lỗi nhập dữ liệu`,description:`An unexpected error has occurred. Please check the errors below and try again.`,onOpenChange:x,children:b&&(0,a.jsx)(a.Fragment,{children:Object.keys(h.errors).length>0?(0,a.jsxs)(`div`,{className:`flex max-w-100 flex-col gap-2 px-4`,children:[(0,a.jsx)(`p`,{className:`text-muted-foreground text-sm font-semibold`,children:`Cảnh báo: Vui lòng kiểm tra các lỗi sau:`}),(0,a.jsx)(`div`,{className:`flex flex-col space-y-1`,children:Object.entries(h.errors).map(([e])=>(0,a.jsx)(s.ErrorMessage,{errors:h.errors,name:e,render:({messages:e})=>(0,a.jsx)(a.Fragment,{children:e?Object.entries(e).map(([e,t])=>(0,a.jsxs)(`div`,{className:`text-accent-foreground flex items-start gap-x-1 truncate text-sm font-normal`,children:[(0,a.jsx)(r.AlertCircleIcon,{size:16,className:`text-destructive mt-0.5 min-w-4 flex-0`}),(0,a.jsx)(`p`,{className:`line-clamp-2 flex-1 text-wrap`,children:t})]},e)):null})},e))})]}):(0,a.jsx)(`p`,{className:`text-muted-foreground text-sm`,children:`No errors found.`})})})]})};Object.defineProperty(exports,`FormWrapper`,{enumerable:!0,get:function(){return c}});
2
+ //# sourceMappingURL=form-wrapper-bC0IEtWT.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-wrapper-C3pU1F5r.cjs","names":["Form","ErrorDialog","ErrorMessage","AlertCircleIcon"],"sources":["../packages/components/forms/form-wrapper.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\nimport { type FieldValues, type FormState, type SubmitErrorHandler, type SubmitHandler, useForm, type UseFormProps } from 'react-hook-form'\n\nimport { AlertCircleIcon } from 'lucide-react'\n\nimport type { AnyEntity } from '@/types'\nimport { ErrorMessage } from '@hookform/error-message'\n\nimport { ErrorDialog } from '../dialogs/error-dialog'\nimport { Form } from '../ui/form'\n\ntype Props<TFieldValues extends FieldValues = FieldValues> = {\n form: UseFormProps<TFieldValues>\n isResetAfterSubmit?: boolean\n className?: string\n onSubmit: (data: TFieldValues, formState: FormState<FieldValues>, dirtyFields: FormState<FieldValues>['dirtyFields']) => void | Promise<void>\n onError?: SubmitErrorHandler<TFieldValues>\n onSubcribe?: (values: TFieldValues) => void\n}\n\nexport const FormWrapper = <TFieldValues extends FieldValues = FieldValues>({\n form: FormConfig,\n isResetAfterSubmit = true,\n className,\n onSubmit,\n onError,\n onSubcribe,\n children,\n}: React.PropsWithChildren<Props<TFieldValues>>) => {\n const form = useForm({\n ...FormConfig,\n criteriaMode: 'all',\n })\n\n const { formState, reset, handleSubmit, subscribe } = form\n const { dirtyFields } = formState\n\n const [errorOpen, setErrorOpen] = useState<boolean>(false)\n\n const handleFormSubmit = useCallback<SubmitHandler<TFieldValues>>(\n (data) => {\n onSubmit(data, formState, dirtyFields)\n if (isResetAfterSubmit) {\n reset()\n }\n },\n [dirtyFields, formState, isResetAfterSubmit, onSubmit, reset],\n )\n\n const handleFormError = useCallback<SubmitErrorHandler<TFieldValues>>(\n (errors) => {\n const errorKeys = Object.keys(errors)\n if (errorKeys.length === 0) return\n onError?.(errors)\n setErrorOpen(true)\n },\n [onError],\n )\n\n useEffect(() => {\n if (!onSubcribe) return\n const callback = subscribe({\n formState: { values: true },\n callback: ({ values }) => {\n onSubcribe(values)\n },\n })\n return () => callback()\n }, [onSubcribe, subscribe])\n\n return (\n <Form {...form}>\n <form className={className} onSubmit={handleSubmit(handleFormSubmit, handleFormError)}>\n {children}\n </form>\n <ErrorDialog\n open={errorOpen}\n title=\"Lỗi nhập dữ liệu\"\n description=\"An unexpected error has occurred. Please check the errors below and try again.\"\n onOpenChange={setErrorOpen}\n >\n {errorOpen && (\n <>\n {Object.keys(formState.errors).length > 0 ? (\n <div className=\"flex max-w-100 flex-col gap-2 px-4\">\n <p className=\"text-muted-foreground text-sm font-semibold\">Cảnh báo: Vui lòng kiểm tra các lỗi sau:</p>\n <div className=\"flex flex-col space-y-1\">\n {Object.entries(formState.errors).map(([key]) => (\n <ErrorMessage\n key={key}\n errors={formState.errors}\n name={key as AnyEntity}\n render={({ messages }) => {\n return (\n <>\n {messages\n ? Object.entries(messages).map(([type, message]) => {\n return (\n <div key={type} className=\"text-accent-foreground flex items-start gap-x-1 truncate text-sm font-normal\">\n <AlertCircleIcon size={16} className=\"text-destructive mt-0.5 min-w-4 flex-0\" />\n <p className=\"line-clamp-2 flex-1 text-wrap\">{message}</p>\n </div>\n )\n })\n : null}\n </>\n )\n }}\n />\n ))}\n </div>\n </div>\n ) : (\n <p className=\"text-muted-foreground text-sm\">No errors found.</p>\n )}\n </>\n )}\n </ErrorDialog>\n </Form>\n )\n}\n"],"mappings":"uTAoBa,GAA+D,CAC1E,KAAM,EACN,qBAAqB,GACrB,YACA,WACA,UACA,aACA,cACkD,CAClD,IAAM,GAAA,EAAA,EAAA,SAAe,CACnB,GAAG,EACH,aAAc,QAGV,CAAE,YAAW,QAAO,eAAc,aAAc,EAChD,CAAE,eAAgB,EAElB,CAAC,EAAW,IAAA,EAAA,EAAA,UAAkC,IAE9C,GAAA,EAAA,EAAA,aACH,GAAS,CACR,EAAS,EAAM,EAAW,GACtB,GACF,KAGJ,CAAC,EAAa,EAAW,EAAoB,EAAU,IAGnD,GAAA,EAAA,EAAA,aACH,GAAW,CACV,IAAM,EAAY,OAAO,KAAK,GAC1B,EAAU,SAAW,IACzB,IAAU,GACV,EAAa,MAEf,CAAC,IAcH,OAXA,EAAA,EAAA,eAAgB,CACd,GAAI,CAAC,EAAY,OACjB,IAAM,EAAW,EAAU,CACzB,UAAW,CAAE,OAAQ,IACrB,UAAW,CAAE,YAAa,CACxB,EAAW,MAGf,UAAa,KACZ,CAAC,EAAY,KAGd,EAAA,EAAA,MAACA,EAAAA,KAAAA,CAAK,GAAI,aACR,EAAA,EAAA,KAAC,OAAA,CAAgB,YAAW,SAAU,EAAa,EAAkB,GAClE,cAEH,EAAA,EAAA,KAACC,EAAAA,YAAAA,CACC,KAAM,EACN,MAAM,mBACN,YAAY,iFACZ,aAAc,WAEb,IACC,EAAA,EAAA,KAAA,EAAA,SAAA,CAAA,SACG,OAAO,KAAK,EAAU,QAAQ,OAAS,GACtC,EAAA,EAAA,MAAC,MAAA,CAAI,UAAU,gDACb,EAAA,EAAA,KAAC,IAAA,CAAE,UAAU,uDAA8C,8CAC3D,EAAA,EAAA,KAAC,MAAA,CAAI,UAAU,mCACZ,OAAO,QAAQ,EAAU,QAAQ,KAAK,CAAC,MACtC,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAEC,OAAQ,EAAU,OAClB,KAAM,EACN,QAAS,CAAE,eAEP,EAAA,EAAA,KAAA,EAAA,SAAA,CAAA,SACG,EACG,OAAO,QAAQ,GAAU,KAAK,CAAC,EAAM,MAEjC,EAAA,EAAA,MAAC,MAAA,CAAe,UAAU,0FACxB,EAAA,EAAA,KAACC,EAAAA,gBAAAA,CAAgB,KAAM,GAAI,UAAU,4CACrC,EAAA,EAAA,KAAC,IAAA,CAAE,UAAU,yCAAiC,MAFtC,IAMd,QAfL,UAwBb,EAAA,EAAA,KAAC,IAAA,CAAE,UAAU,yCAAgC"}
1
+ {"version":3,"file":"form-wrapper-bC0IEtWT.cjs","names":["Form","ErrorDialog","ErrorMessage","AlertCircleIcon"],"sources":["../packages/components/forms/form-wrapper.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\nimport { type FieldValues, type FormState, type SubmitErrorHandler, type SubmitHandler, useForm, type UseFormProps } from 'react-hook-form'\n\nimport { AlertCircleIcon } from 'lucide-react'\n\nimport type { AnyEntity } from '@/types'\nimport { ErrorMessage } from '@hookform/error-message'\n\nimport { ErrorDialog } from '../dialogs/error-dialog'\nimport { Form } from '../ui/form'\n\ntype Props<TFieldValues extends FieldValues = FieldValues> = {\n form: UseFormProps<TFieldValues>\n isResetAfterSubmit?: boolean\n className?: string\n onSubmit: (data: TFieldValues, formState: FormState<FieldValues>, dirtyFields: FormState<FieldValues>['dirtyFields']) => void | Promise<void>\n onError?: SubmitErrorHandler<TFieldValues>\n onSubcribe?: (values: TFieldValues) => void\n}\n\nexport const FormWrapper = <TFieldValues extends FieldValues = FieldValues>({\n form: FormConfig,\n isResetAfterSubmit = true,\n className,\n onSubmit,\n onError,\n onSubcribe,\n children,\n}: React.PropsWithChildren<Props<TFieldValues>>) => {\n const form = useForm({\n ...FormConfig,\n criteriaMode: 'all',\n })\n\n const { formState, reset, handleSubmit, subscribe } = form\n const { dirtyFields } = formState\n\n const [errorOpen, setErrorOpen] = useState<boolean>(false)\n\n const handleFormSubmit = useCallback<SubmitHandler<TFieldValues>>(\n (data) => {\n onSubmit(data, formState, dirtyFields)\n if (isResetAfterSubmit) {\n reset()\n }\n },\n [dirtyFields, formState, isResetAfterSubmit, onSubmit, reset],\n )\n\n const handleFormError = useCallback<SubmitErrorHandler<TFieldValues>>(\n (errors) => {\n const errorKeys = Object.keys(errors)\n if (errorKeys.length === 0) return\n onError?.(errors)\n setErrorOpen(true)\n },\n [onError],\n )\n\n useEffect(() => {\n if (!onSubcribe) return\n const callback = subscribe({\n formState: { values: true },\n callback: ({ values }) => {\n onSubcribe(values)\n },\n })\n return () => callback()\n }, [onSubcribe, subscribe])\n\n return (\n <Form {...form}>\n <form className={className} onSubmit={handleSubmit(handleFormSubmit, handleFormError)}>\n {children}\n </form>\n <ErrorDialog\n open={errorOpen}\n title=\"Lỗi nhập dữ liệu\"\n description=\"An unexpected error has occurred. Please check the errors below and try again.\"\n onOpenChange={setErrorOpen}\n >\n {errorOpen && (\n <>\n {Object.keys(formState.errors).length > 0 ? (\n <div className=\"flex max-w-100 flex-col gap-2 px-4\">\n <p className=\"text-muted-foreground text-sm font-semibold\">Cảnh báo: Vui lòng kiểm tra các lỗi sau:</p>\n <div className=\"flex flex-col space-y-1\">\n {Object.entries(formState.errors).map(([key]) => (\n <ErrorMessage\n key={key}\n errors={formState.errors}\n name={key as AnyEntity}\n render={({ messages }) => {\n return (\n <>\n {messages\n ? Object.entries(messages).map(([type, message]) => {\n return (\n <div key={type} className=\"text-accent-foreground flex items-start gap-x-1 truncate text-sm font-normal\">\n <AlertCircleIcon size={16} className=\"text-destructive mt-0.5 min-w-4 flex-0\" />\n <p className=\"line-clamp-2 flex-1 text-wrap\">{message}</p>\n </div>\n )\n })\n : null}\n </>\n )\n }}\n />\n ))}\n </div>\n </div>\n ) : (\n <p className=\"text-muted-foreground text-sm\">No errors found.</p>\n )}\n </>\n )}\n </ErrorDialog>\n </Form>\n )\n}\n"],"mappings":"uTAoBa,GAA+D,CAC1E,KAAM,EACN,qBAAqB,GACrB,YACA,WACA,UACA,aACA,cACkD,CAClD,IAAM,GAAA,EAAA,EAAA,SAAe,CACnB,GAAG,EACH,aAAc,QAGV,CAAE,YAAW,QAAO,eAAc,aAAc,EAChD,CAAE,eAAgB,EAElB,CAAC,EAAW,IAAA,EAAA,EAAA,UAAkC,IAE9C,GAAA,EAAA,EAAA,aACH,GAAS,CACR,EAAS,EAAM,EAAW,GACtB,GACF,KAGJ,CAAC,EAAa,EAAW,EAAoB,EAAU,IAGnD,GAAA,EAAA,EAAA,aACH,GAAW,CACV,IAAM,EAAY,OAAO,KAAK,GAC1B,EAAU,SAAW,IACzB,IAAU,GACV,EAAa,MAEf,CAAC,IAcH,OAXA,EAAA,EAAA,eAAgB,CACd,GAAI,CAAC,EAAY,OACjB,IAAM,EAAW,EAAU,CACzB,UAAW,CAAE,OAAQ,IACrB,UAAW,CAAE,YAAa,CACxB,EAAW,MAGf,UAAa,KACZ,CAAC,EAAY,KAGd,EAAA,EAAA,MAACA,EAAAA,KAAAA,CAAK,GAAI,aACR,EAAA,EAAA,KAAC,OAAA,CAAgB,YAAW,SAAU,EAAa,EAAkB,GAClE,cAEH,EAAA,EAAA,KAACC,EAAAA,YAAAA,CACC,KAAM,EACN,MAAM,mBACN,YAAY,iFACZ,aAAc,WAEb,IACC,EAAA,EAAA,KAAA,EAAA,SAAA,CAAA,SACG,OAAO,KAAK,EAAU,QAAQ,OAAS,GACtC,EAAA,EAAA,MAAC,MAAA,CAAI,UAAU,gDACb,EAAA,EAAA,KAAC,IAAA,CAAE,UAAU,uDAA8C,8CAC3D,EAAA,EAAA,KAAC,MAAA,CAAI,UAAU,mCACZ,OAAO,QAAQ,EAAU,QAAQ,KAAK,CAAC,MACtC,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAEC,OAAQ,EAAU,OAClB,KAAM,EACN,QAAS,CAAE,eAEP,EAAA,EAAA,KAAA,EAAA,SAAA,CAAA,SACG,EACG,OAAO,QAAQ,GAAU,KAAK,CAAC,EAAM,MAEjC,EAAA,EAAA,MAAC,MAAA,CAAe,UAAU,0FACxB,EAAA,EAAA,KAACC,EAAAA,gBAAAA,CAAgB,KAAM,GAAI,UAAU,4CACrC,EAAA,EAAA,KAAC,IAAA,CAAE,UAAU,yCAAiC,MAFtC,IAMd,QAfL,UAwBb,EAAA,EAAA,KAAC,IAAA,CAAE,UAAU,yCAAgC"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../button-119IIVCy.cjs`);require(`../label-BZqk7MPJ.cjs`);const n=require(`../form-CtpHZKmh.cjs`);require(`../dialog-wX27mb8E.cjs`);const r=require(`../command-BNYekOzL.cjs`),i=require(`../popover-Bi7GLJT5.cjs`),a=e.__toESM(require(`lucide-react`)),o=e.__toESM(require(`@customafk/react-toolkit/utils`)),s=e.__toESM(require(`react/jsx-runtime`)),c=({name:e,label:c=`Combobox`,placeholder:l=`Chọn một mục`,description:u,options:d,onAddNewItem:f})=>(0,s.jsx)(n.FormField,{name:e,render:({field:e})=>(0,s.jsxs)(n.FormItem,{className:`w-full`,children:[(0,s.jsx)(n.FormLabel,{children:c}),(0,s.jsxs)(i.Popover,{modal:!0,children:[(0,s.jsx)(i.PopoverTrigger,{asChild:!0,children:(0,s.jsx)(n.FormControl,{children:(0,s.jsxs)(t.Button,{type:`button`,variant:`outline`,role:`combobox`,color:`muted`,className:(0,o.cn)(`shadow-input flex justify-between rounded-md px-3`,`outline-border-weak font-normal`,`[&_div]:w-full`,`[&_div]:justify-between`,`hover:outline-border`,`data-[state=open]:text-text-positive-muted`,`data-[state=open]:outline-1`,`data-[state=open]:outline-primary-strong`,`data-[state=open]:ring-primary-weak`,`data-[state=open]:ring-4`,`focus:border-primary-strong`,`focus:ring-4`,`focus:ring-primary-weak`,`focus:outline-1`,`focus:outline-primary-strong`),children:[e.value?(0,s.jsx)(`span`,{className:`flex min-w-0 items-center gap-2`,children:d?.find(({value:t})=>t===e.value)?.label}):(0,s.jsx)(`span`,{className:`text-text-positive-muted`,children:l}),(0,s.jsx)(a.ChevronDownIcon,{size:16,className:`text-text-positive-weak shrink-0`,"aria-hidden":`true`})]})})}),(0,s.jsx)(i.PopoverContent,{className:`w-[var(--radix-popover-trigger-width)] p-0`,children:(0,s.jsxs)(r.Command,{className:`border-none`,children:[(0,s.jsx)(r.CommandInput,{placeholder:l??`Tìm kiếm`}),(0,s.jsxs)(r.CommandList,{children:[(0,s.jsx)(r.CommandGroup,{className:`max-h-40 overflow-y-auto`,children:d?.map(({value:t,label:n})=>(0,s.jsx)(r.CommandItem,{value:n,onSelect:()=>e.onChange(t),children:n},t))}),f&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.CommandSeparator,{}),(0,s.jsx)(r.CommandGroup,{children:(0,s.jsxs)(t.Button,{type:`button`,variant:`ghost`,className:`w-full justify-start font-normal`,children:[(0,s.jsx)(a.PlusIcon,{size:14,className:`-ms-2 opacity-60`,"aria-hidden":`true`}),`Thêm mới`]})})]})]}),(0,s.jsx)(r.CommandEmpty,{children:`Không có kết quả`})]})})]}),!!u&&(0,s.jsx)(n.FormDescription,{children:u})]})});exports.ComboboxField=c;
1
+ "use client";const e=require(`../chunk-CUT6urMc.cjs`);require(`../dist-D0uO1qIz.cjs`),require(`../button-variants-CCiseNSC.cjs`);const t=require(`../button-CuV2l4ge.cjs`);require(`../label-CHNSlaoz.cjs`);const n=require(`../form-DyH5iWq7.cjs`);require(`../dialog-DGbWt3A4.cjs`);const r=require(`../command-BaW_SRkQ.cjs`),i=require(`../popover-DLbTz02b.cjs`),a=e.__toESM(require(`lucide-react`)),o=e.__toESM(require(`@customafk/react-toolkit/utils`)),s=e.__toESM(require(`react/jsx-runtime`)),c=({name:e,label:c=`Combobox`,placeholder:l=`Chọn một mục`,description:u,options:d,onAddNewItem:f})=>(0,s.jsx)(n.FormField,{name:e,render:({field:e})=>(0,s.jsxs)(n.FormItem,{className:`w-full`,children:[(0,s.jsx)(n.FormLabel,{children:c}),(0,s.jsxs)(i.Popover,{modal:!0,children:[(0,s.jsx)(i.PopoverTrigger,{asChild:!0,children:(0,s.jsx)(n.FormControl,{children:(0,s.jsxs)(t.Button,{type:`button`,variant:`outline`,role:`combobox`,color:`muted`,className:(0,o.cn)(`shadow-input flex justify-between rounded-md px-3`,`outline-border-weak font-normal`,`[&_div]:w-full`,`[&_div]:justify-between`,`hover:outline-border`,`data-[state=open]:text-text-positive-muted`,`data-[state=open]:outline-1`,`data-[state=open]:outline-primary-strong`,`data-[state=open]:ring-primary-weak`,`data-[state=open]:ring-4`,`focus:border-primary-strong`,`focus:ring-4`,`focus:ring-primary-weak`,`focus:outline-1`,`focus:outline-primary-strong`),children:[e.value?(0,s.jsx)(`span`,{className:`flex min-w-0 items-center gap-2`,children:d?.find(({value:t})=>t===e.value)?.label}):(0,s.jsx)(`span`,{className:`text-text-positive-muted`,children:l}),(0,s.jsx)(a.ChevronDownIcon,{size:16,className:`text-text-positive-weak shrink-0`,"aria-hidden":`true`})]})})}),(0,s.jsx)(i.PopoverContent,{className:`w-[var(--radix-popover-trigger-width)] p-0`,children:(0,s.jsxs)(r.Command,{className:`border-none`,children:[(0,s.jsx)(r.CommandInput,{placeholder:l??`Tìm kiếm`}),(0,s.jsxs)(r.CommandList,{children:[(0,s.jsx)(r.CommandGroup,{className:`max-h-40 overflow-y-auto`,children:d?.map(({value:t,label:n})=>(0,s.jsx)(r.CommandItem,{value:n,onSelect:()=>e.onChange(t),children:n},t))}),f&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.CommandSeparator,{}),(0,s.jsx)(r.CommandGroup,{children:(0,s.jsxs)(t.Button,{type:`button`,variant:`ghost`,className:`w-full justify-start font-normal`,children:[(0,s.jsx)(a.PlusIcon,{size:14,className:`-ms-2 opacity-60`,"aria-hidden":`true`}),`Thêm mới`]})})]})]}),(0,s.jsx)(r.CommandEmpty,{children:`Không có kết quả`})]})})]}),!!u&&(0,s.jsx)(n.FormDescription,{children:u})]})});exports.ComboboxField=c;
2
2
  //# sourceMappingURL=combobox-field.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-field.cjs","names":["FormField","FormItem","FormLabel","Popover","PopoverTrigger","FormControl","Button","ChevronDownIcon","PopoverContent","Command","CommandInput","CommandList","CommandGroup","CommandItem","label","CommandSeparator","PlusIcon","CommandEmpty","FormDescription"],"sources":["../../packages/components/forms/combobox-field.tsx"],"sourcesContent":["'use client'\nimport type { FieldPath, FieldValues } from 'react-hook-form'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { ChevronDownIcon, PlusIcon } from 'lucide-react'\n\nimport { Button } from '@/components/ui/button'\nimport { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/components/ui/command'\nimport { FormControl, FormDescription, FormField, FormItem, FormLabel } from '@/components/ui/form'\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover'\n\ntype Props<TFieldValues extends FieldValues = FieldValues> = {\n name: FieldPath<TFieldValues>\n label?: string\n placeholder?: string\n options?: { value: string | number; label: string }[]\n isShowErrorMsg?: boolean\n modal?: boolean\n description?: string\n onAddNewItem?: () => void\n}\n\nexport const ComboboxField = <TFieldValues extends FieldValues = FieldValues>({\n name,\n label = 'Combobox',\n placeholder = 'Chọn một mục',\n description,\n options,\n onAddNewItem,\n}: Props<TFieldValues>) => {\n return (\n <FormField\n name={name}\n render={({ field }) => {\n return (\n <FormItem className=\"w-full\">\n <FormLabel>{label}</FormLabel>\n <Popover modal={true}>\n <PopoverTrigger asChild>\n <FormControl>\n <Button\n type=\"button\"\n variant=\"outline\"\n role=\"combobox\"\n color=\"muted\"\n className={cn(\n 'shadow-input flex justify-between rounded-md px-3',\n 'outline-border-weak font-normal',\n '[&_div]:w-full',\n '[&_div]:justify-between',\n 'hover:outline-border',\n 'data-[state=open]:text-text-positive-muted',\n 'data-[state=open]:outline-1',\n 'data-[state=open]:outline-primary-strong',\n 'data-[state=open]:ring-primary-weak',\n 'data-[state=open]:ring-4',\n 'focus:border-primary-strong',\n 'focus:ring-4',\n 'focus:ring-primary-weak',\n 'focus:outline-1',\n 'focus:outline-primary-strong',\n )}\n >\n {field.value ? (\n <span className=\"flex min-w-0 items-center gap-2\">{options?.find(({ value }) => value === field.value)?.label}</span>\n ) : (\n <span className=\"text-text-positive-muted\">{placeholder}</span>\n )}\n <ChevronDownIcon size={16} className=\"text-text-positive-weak shrink-0\" aria-hidden=\"true\" />\n </Button>\n </FormControl>\n </PopoverTrigger>\n <PopoverContent className=\"w-[var(--radix-popover-trigger-width)] p-0\">\n <Command className=\"border-none\">\n <CommandInput placeholder={placeholder ?? 'Tìm kiếm'} />\n <CommandList>\n <CommandGroup className=\"max-h-40 overflow-y-auto\">\n {options?.map(({ value, label }) => (\n <CommandItem key={value} value={label} onSelect={() => field.onChange(value)}>\n {label}\n </CommandItem>\n ))}\n </CommandGroup>\n {onAddNewItem && (\n <>\n <CommandSeparator />\n <CommandGroup>\n <Button type=\"button\" variant=\"ghost\" className=\"w-full justify-start font-normal\">\n <PlusIcon size={14} className=\"-ms-2 opacity-60\" aria-hidden=\"true\" />\n Thêm mới\n </Button>\n </CommandGroup>\n </>\n )}\n </CommandList>\n <CommandEmpty>Không có kết quả</CommandEmpty>\n </Command>\n </PopoverContent>\n </Popover>\n {!!description && <FormDescription>{description}</FormDescription>}\n </FormItem>\n )\n }}\n />\n )\n}\n"],"mappings":"2ZAsBa,GAAiE,CAC5E,OACA,QAAQ,WACR,cAAc,eACd,cACA,UACA,mBAGE,EAAA,EAAA,KAACA,EAAAA,UAAAA,CACO,OACN,QAAS,CAAE,YAEP,EAAA,EAAA,MAACC,EAAAA,SAAAA,CAAS,UAAU,oBAClB,EAAA,EAAA,KAACC,EAAAA,UAAAA,CAAAA,SAAW,KACZ,EAAA,EAAA,MAACC,EAAAA,QAAAA,CAAQ,MAAO,cACd,EAAA,EAAA,KAACC,EAAAA,eAAAA,CAAe,QAAA,aACd,EAAA,EAAA,KAACC,EAAAA,YAAAA,CAAAA,UACC,EAAA,EAAA,MAACC,EAAAA,OAAAA,CACC,KAAK,SACL,QAAQ,UACR,KAAK,WACL,MAAM,QACN,WAAA,EAAA,EAAA,IACE,oDACA,kCACA,iBACA,0BACA,uBACA,6CACA,8BACA,2CACA,sCACA,2BACA,8BACA,eACA,0BACA,kBACA,0CAGD,EAAM,OACL,EAAA,EAAA,KAAC,OAAA,CAAK,UAAU,2CAAmC,GAAS,MAAM,CAAE,WAAY,IAAU,EAAM,QAAQ,SAExG,EAAA,EAAA,KAAC,OAAA,CAAK,UAAU,oCAA4B,KAE9C,EAAA,EAAA,KAACC,EAAAA,gBAAAA,CAAgB,KAAM,GAAI,UAAU,mCAAmC,cAAY,iBAI1F,EAAA,EAAA,KAACC,EAAAA,eAAAA,CAAe,UAAU,uDACxB,EAAA,EAAA,MAACC,EAAAA,QAAAA,CAAQ,UAAU,yBACjB,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAAa,YAAa,GAAe,cAC1C,EAAA,EAAA,MAACC,EAAAA,YAAAA,CAAAA,SAAAA,EACC,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAAa,UAAU,oCACrB,GAAS,KAAK,CAAE,QAAO,MAAA,MACtB,EAAA,EAAA,KAACC,EAAAA,YAAAA,CAAwB,MAAOC,EAAO,aAAgB,EAAM,SAAS,YACnEA,GADe,MAKrB,IACC,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,KAACC,EAAAA,iBAAAA,KACD,EAAA,EAAA,KAACH,EAAAA,aAAAA,CAAAA,UACC,EAAA,EAAA,MAACN,EAAAA,OAAAA,CAAO,KAAK,SAAS,QAAQ,QAAQ,UAAU,8CAC9C,EAAA,EAAA,KAACU,EAAAA,SAAAA,CAAS,KAAM,GAAI,UAAU,mBAAmB,cAAY,SAAS,uBAOhF,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAAAA,SAAa,6BAInB,CAAC,CAAC,IAAe,EAAA,EAAA,KAACC,EAAAA,gBAAAA,CAAAA,SAAiB"}
1
+ {"version":3,"file":"combobox-field.cjs","names":["FormField","FormItem","FormLabel","Popover","PopoverTrigger","FormControl","Button","ChevronDownIcon","PopoverContent","Command","CommandInput","CommandList","CommandGroup","CommandItem","label","CommandSeparator","PlusIcon","CommandEmpty","FormDescription"],"sources":["../../packages/components/forms/combobox-field.tsx"],"sourcesContent":["'use client'\nimport type { FieldPath, FieldValues } from 'react-hook-form'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nimport { ChevronDownIcon, PlusIcon } from 'lucide-react'\n\nimport { Button } from '@/components/ui/button'\nimport { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/components/ui/command'\nimport { FormControl, FormDescription, FormField, FormItem, FormLabel } from '@/components/ui/form'\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover'\n\ntype Props<TFieldValues extends FieldValues = FieldValues> = {\n name: FieldPath<TFieldValues>\n label?: string\n placeholder?: string\n options?: { value: string | number; label: string }[]\n isShowErrorMsg?: boolean\n modal?: boolean\n description?: string\n onAddNewItem?: () => void\n}\n\nexport const ComboboxField = <TFieldValues extends FieldValues = FieldValues>({\n name,\n label = 'Combobox',\n placeholder = 'Chọn một mục',\n description,\n options,\n onAddNewItem,\n}: Props<TFieldValues>) => {\n return (\n <FormField\n name={name}\n render={({ field }) => {\n return (\n <FormItem className=\"w-full\">\n <FormLabel>{label}</FormLabel>\n <Popover modal={true}>\n <PopoverTrigger asChild>\n <FormControl>\n <Button\n type=\"button\"\n variant=\"outline\"\n role=\"combobox\"\n color=\"muted\"\n className={cn(\n 'shadow-input flex justify-between rounded-md px-3',\n 'outline-border-weak font-normal',\n '[&_div]:w-full',\n '[&_div]:justify-between',\n 'hover:outline-border',\n 'data-[state=open]:text-text-positive-muted',\n 'data-[state=open]:outline-1',\n 'data-[state=open]:outline-primary-strong',\n 'data-[state=open]:ring-primary-weak',\n 'data-[state=open]:ring-4',\n 'focus:border-primary-strong',\n 'focus:ring-4',\n 'focus:ring-primary-weak',\n 'focus:outline-1',\n 'focus:outline-primary-strong',\n )}\n >\n {field.value ? (\n <span className=\"flex min-w-0 items-center gap-2\">{options?.find(({ value }) => value === field.value)?.label}</span>\n ) : (\n <span className=\"text-text-positive-muted\">{placeholder}</span>\n )}\n <ChevronDownIcon size={16} className=\"text-text-positive-weak shrink-0\" aria-hidden=\"true\" />\n </Button>\n </FormControl>\n </PopoverTrigger>\n <PopoverContent className=\"w-[var(--radix-popover-trigger-width)] p-0\">\n <Command className=\"border-none\">\n <CommandInput placeholder={placeholder ?? 'Tìm kiếm'} />\n <CommandList>\n <CommandGroup className=\"max-h-40 overflow-y-auto\">\n {options?.map(({ value, label }) => (\n <CommandItem key={value} value={label} onSelect={() => field.onChange(value)}>\n {label}\n </CommandItem>\n ))}\n </CommandGroup>\n {onAddNewItem && (\n <>\n <CommandSeparator />\n <CommandGroup>\n <Button type=\"button\" variant=\"ghost\" className=\"w-full justify-start font-normal\">\n <PlusIcon size={14} className=\"-ms-2 opacity-60\" aria-hidden=\"true\" />\n Thêm mới\n </Button>\n </CommandGroup>\n </>\n )}\n </CommandList>\n <CommandEmpty>Không có kết quả</CommandEmpty>\n </Command>\n </PopoverContent>\n </Popover>\n {!!description && <FormDescription>{description}</FormDescription>}\n </FormItem>\n )\n }}\n />\n )\n}\n"],"mappings":"4eAsBa,GAAiE,CAC5E,OACA,QAAQ,WACR,cAAc,eACd,cACA,UACA,mBAGE,EAAA,EAAA,KAACA,EAAAA,UAAAA,CACO,OACN,QAAS,CAAE,YAEP,EAAA,EAAA,MAACC,EAAAA,SAAAA,CAAS,UAAU,oBAClB,EAAA,EAAA,KAACC,EAAAA,UAAAA,CAAAA,SAAW,KACZ,EAAA,EAAA,MAACC,EAAAA,QAAAA,CAAQ,MAAO,cACd,EAAA,EAAA,KAACC,EAAAA,eAAAA,CAAe,QAAA,aACd,EAAA,EAAA,KAACC,EAAAA,YAAAA,CAAAA,UACC,EAAA,EAAA,MAACC,EAAAA,OAAAA,CACC,KAAK,SACL,QAAQ,UACR,KAAK,WACL,MAAM,QACN,WAAA,EAAA,EAAA,IACE,oDACA,kCACA,iBACA,0BACA,uBACA,6CACA,8BACA,2CACA,sCACA,2BACA,8BACA,eACA,0BACA,kBACA,0CAGD,EAAM,OACL,EAAA,EAAA,KAAC,OAAA,CAAK,UAAU,2CAAmC,GAAS,MAAM,CAAE,WAAY,IAAU,EAAM,QAAQ,SAExG,EAAA,EAAA,KAAC,OAAA,CAAK,UAAU,oCAA4B,KAE9C,EAAA,EAAA,KAACC,EAAAA,gBAAAA,CAAgB,KAAM,GAAI,UAAU,mCAAmC,cAAY,iBAI1F,EAAA,EAAA,KAACC,EAAAA,eAAAA,CAAe,UAAU,uDACxB,EAAA,EAAA,MAACC,EAAAA,QAAAA,CAAQ,UAAU,yBACjB,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAAa,YAAa,GAAe,cAC1C,EAAA,EAAA,MAACC,EAAAA,YAAAA,CAAAA,SAAAA,EACC,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAAa,UAAU,oCACrB,GAAS,KAAK,CAAE,QAAO,MAAA,MACtB,EAAA,EAAA,KAACC,EAAAA,YAAAA,CAAwB,MAAOC,EAAO,aAAgB,EAAM,SAAS,YACnEA,GADe,MAKrB,IACC,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,KAACC,EAAAA,iBAAAA,KACD,EAAA,EAAA,KAACH,EAAAA,aAAAA,CAAAA,UACC,EAAA,EAAA,MAACN,EAAAA,OAAAA,CAAO,KAAK,SAAS,QAAQ,QAAQ,UAAU,8CAC9C,EAAA,EAAA,KAACU,EAAAA,SAAAA,CAAS,KAAM,GAAI,UAAU,mBAAmB,cAAY,SAAS,uBAOhF,EAAA,EAAA,KAACC,EAAAA,aAAAA,CAAAA,SAAa,6BAInB,CAAC,CAAC,IAAe,EAAA,EAAA,KAACC,EAAAA,gBAAAA,CAAAA,SAAiB"}