@customafk/lunas-ui 0.2.50 → 0.2.52
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.
- package/dist/FeatureDeveloping-Bpmk3ZyS.d.cts +43 -0
- package/dist/FeatureDeveloping-CVFrndc_.cjs +2 -0
- package/dist/FeatureDeveloping-CVFrndc_.cjs.map +1 -0
- package/dist/FeatureDeveloping-k_14m44U.mjs +2 -0
- package/dist/FeatureDeveloping-k_14m44U.mjs.map +1 -0
- package/dist/FeatureDeveloping-oS433qZK.d.mts +43 -0
- package/dist/FeatureFixing-CRTE4tkV.d.mts +43 -0
- package/dist/FeatureFixing-CqDnOmou.cjs +2 -0
- package/dist/FeatureFixing-CqDnOmou.cjs.map +1 -0
- package/dist/FeatureFixing-D7qYhigu.mjs +2 -0
- package/dist/FeatureFixing-D7qYhigu.mjs.map +1 -0
- package/dist/FeatureFixing-Vwb-odpJ.d.cts +43 -0
- package/dist/LoginPage-B7SgjP72.d.cts +55 -0
- package/dist/LoginPage-BDh57TIY.mjs +2 -0
- package/dist/LoginPage-BDh57TIY.mjs.map +1 -0
- package/dist/LoginPage-Bsh_Wo-4.d.mts +55 -0
- package/dist/LoginPage-CSewNEGN.cjs +2 -0
- package/dist/LoginPage-CSewNEGN.cjs.map +1 -0
- package/dist/NotAuthorized-B1nln3YY.d.mts +43 -0
- package/dist/NotAuthorized-BBlhgNjt.cjs +2 -0
- package/dist/NotAuthorized-BBlhgNjt.cjs.map +1 -0
- package/dist/NotAuthorized-DcXH7UbQ.d.cts +43 -0
- package/dist/NotAuthorized-xXIwCXtZ.mjs +2 -0
- package/dist/NotAuthorized-xXIwCXtZ.mjs.map +1 -0
- package/dist/NotFound-BOAR7QCc.cjs +2 -0
- package/dist/NotFound-BOAR7QCc.cjs.map +1 -0
- package/dist/NotFound-Co0y_Fpa.d.cts +43 -0
- package/dist/NotFound-H7T1wCkf.mjs +2 -0
- package/dist/NotFound-H7T1wCkf.mjs.map +1 -0
- package/dist/NotFound-Kvw-yvr_.d.mts +43 -0
- package/dist/RegisterPage-BI5efPEP.cjs +2 -0
- package/dist/RegisterPage-BI5efPEP.cjs.map +1 -0
- package/dist/RegisterPage-DKiXE8U6.d.mts +52 -0
- package/dist/RegisterPage-DluyCA1L.mjs +2 -0
- package/dist/RegisterPage-DluyCA1L.mjs.map +1 -0
- package/dist/RegisterPage-qEpX0gUP.d.cts +52 -0
- package/dist/VerifyEmailPage-D3U6V5IR.mjs +2 -0
- package/dist/VerifyEmailPage-D3U6V5IR.mjs.map +1 -0
- package/dist/VerifyEmailPage-DRQiyUqo.cjs +2 -0
- package/dist/VerifyEmailPage-DRQiyUqo.cjs.map +1 -0
- package/dist/VerifyEmailPage-Dd59Girn.d.cts +64 -0
- package/dist/VerifyEmailPage-ZaRE0r8m.d.mts +64 -0
- package/dist/add-new-B35fn_Bz.mjs +2 -0
- package/dist/add-new-B35fn_Bz.mjs.map +1 -0
- package/dist/add-new-DqRZeMNy.d.mts +17 -0
- package/dist/add-new-deaz-L5t.cjs +2 -0
- package/dist/add-new-deaz-L5t.cjs.map +1 -0
- package/dist/add-new-pqYC7xmc.d.cts +17 -0
- package/dist/alert-BEcGZfPW.mjs +2 -0
- package/dist/alert-BEcGZfPW.mjs.map +1 -0
- package/dist/alert-CB79DQwK.d.mts +88 -0
- package/dist/alert-Ca5wFNXF.d.cts +88 -0
- package/dist/alert-DDdHIRib.cjs +2 -0
- package/dist/alert-DDdHIRib.cjs.map +1 -0
- package/dist/alert-dialog-B9ThoUnv.cjs +2 -0
- package/dist/alert-dialog-B9ThoUnv.cjs.map +1 -0
- package/dist/alert-dialog-D0jOWqaA.d.mts +90 -0
- package/dist/alert-dialog-DqIS6qRz.mjs +2 -0
- package/dist/alert-dialog-DqIS6qRz.mjs.map +1 -0
- package/dist/alert-dialog-TBiCQ9Ty.d.cts +90 -0
- package/dist/aspect-ratio-BsfIALEV.d.mts +24 -0
- package/dist/aspect-ratio-Cd2mBXiE.cjs +2 -0
- package/dist/aspect-ratio-Cd2mBXiE.cjs.map +1 -0
- package/dist/aspect-ratio-DP12ssDX.mjs +2 -0
- package/dist/aspect-ratio-DP12ssDX.mjs.map +1 -0
- package/dist/aspect-ratio-Dy7SplBM.d.cts +24 -0
- package/dist/avatar-CVRRoJ05.cjs +2 -0
- package/dist/avatar-CVRRoJ05.cjs.map +1 -0
- package/dist/avatar-XFoz-EPk.d.cts +35 -0
- package/dist/avatar-tjgTFpVU.mjs +2 -0
- package/dist/avatar-tjgTFpVU.mjs.map +1 -0
- package/dist/avatar-zDJh1tw9.d.mts +35 -0
- package/dist/badge-7bcsD0vA.cjs +2 -0
- package/dist/badge-7bcsD0vA.cjs.map +1 -0
- package/dist/badge-CG6dbI29.mjs +2 -0
- package/dist/badge-CG6dbI29.mjs.map +1 -0
- package/dist/badge-CQygfYGk.d.mts +42 -0
- package/dist/badge-DYo5Diiy.d.cts +42 -0
- package/dist/breadcrumb-BhUXmEGd.d.cts +72 -0
- package/dist/breadcrumb-D5EVqGzZ.d.mts +72 -0
- package/dist/breadcrumb-DgCIacvh.cjs +2 -0
- package/dist/breadcrumb-DgCIacvh.cjs.map +1 -0
- package/dist/breadcrumb-RCZAaQ1l.mjs +2 -0
- package/dist/breadcrumb-RCZAaQ1l.mjs.map +1 -0
- package/dist/button-CCVJTHBI.mjs +2 -0
- package/dist/button-CCVJTHBI.mjs.map +1 -0
- package/dist/button-CwxEnAw3.d.mts +174 -0
- package/dist/button-D-pWsdxT.d.cts +174 -0
- package/dist/button-group-4oHvYHtz.cjs +2 -0
- package/dist/button-group-4oHvYHtz.cjs.map +1 -0
- package/dist/button-group-CDRMmMyT.d.cts +50 -0
- package/dist/button-group-CRuT_zEE.mjs +2 -0
- package/dist/button-group-CRuT_zEE.mjs.map +1 -0
- package/dist/button-group-wrn32Sqe.d.mts +50 -0
- package/dist/button.variants-DkMqWB8G.mjs +2 -0
- package/dist/button.variants-DkMqWB8G.mjs.map +1 -0
- package/dist/calendar-BUPDN6CU.d.cts +45 -0
- package/dist/calendar-Boz9U-O2.d.mts +45 -0
- package/dist/calendar-CTyL_3WY.cjs +2 -0
- package/dist/calendar-CTyL_3WY.cjs.map +1 -0
- package/dist/calendar-DyzwC2TQ.mjs +2 -0
- package/dist/calendar-DyzwC2TQ.mjs.map +1 -0
- package/dist/card-B8Pm6iEs.cjs +2 -0
- package/dist/card-B8Pm6iEs.cjs.map +1 -0
- package/dist/card-DDM5jg3U.d.mts +63 -0
- package/dist/card-DpQKFp4f.mjs +2 -0
- package/dist/card-DpQKFp4f.mjs.map +1 -0
- package/dist/card-a8tqytoT.d.cts +63 -0
- package/dist/cards/grid-product-card.cjs +1 -2
- package/dist/cards/grid-product-card.d.cts +2 -37
- package/dist/cards/grid-product-card.d.mts +2 -0
- package/dist/cards/grid-product-card.mjs +1 -0
- package/dist/cards/product-card.cjs +1 -2
- package/dist/cards/product-card.d.cts +2 -37
- package/dist/cards/product-card.d.mts +2 -0
- package/dist/cards/product-card.mjs +1 -0
- package/dist/cards/simple-card.cjs +1 -2
- package/dist/cards/simple-card.d.cts +2 -35
- package/dist/cards/simple-card.d.mts +2 -0
- package/dist/cards/simple-card.mjs +1 -0
- package/dist/carousel-BayGB372.cjs +2 -0
- package/dist/carousel-BayGB372.cjs.map +1 -0
- package/dist/carousel-Cm4szl4A.d.cts +71 -0
- package/dist/carousel-D8xUkFZ-.mjs +2 -0
- package/dist/carousel-D8xUkFZ-.mjs.map +1 -0
- package/dist/carousel-Y5TlCJ96.d.mts +71 -0
- package/dist/checkbox-Bbn3OZQd.d.mts +26 -0
- package/dist/checkbox-Bt4BgYMB.cjs +2 -0
- package/dist/checkbox-Bt4BgYMB.cjs.map +1 -0
- package/dist/checkbox-CBhlnGGv.mjs +2 -0
- package/dist/checkbox-CBhlnGGv.mjs.map +1 -0
- package/dist/checkbox-CccXRTYH.d.cts +26 -0
- package/dist/close-Co-WLsSG.mjs +2 -0
- package/dist/close-Co-WLsSG.mjs.map +1 -0
- package/dist/close-DYBVx-8O.cjs +2 -0
- package/dist/close-DYBVx-8O.cjs.map +1 -0
- package/dist/cms-layout-B7lc5hIX.mjs +2 -0
- package/dist/cms-layout-B7lc5hIX.mjs.map +1 -0
- package/dist/cms-layout-DeTdDLXr.cjs +2 -0
- package/dist/cms-layout-DeTdDLXr.cjs.map +1 -0
- package/dist/collapsible-CLr3JLeA.mjs +2 -0
- package/dist/collapsible-CLr3JLeA.mjs.map +1 -0
- package/dist/collapsible-LInIoQlU.d.cts +34 -0
- package/dist/collapsible-RWAWE2lS.d.mts +34 -0
- package/dist/collapsible-rx0m3LuF.cjs +2 -0
- package/dist/collapsible-rx0m3LuF.cjs.map +1 -0
- package/dist/command-BQFbzzTr.cjs +2 -0
- package/dist/command-BQFbzzTr.cjs.map +1 -0
- package/dist/command-BlvmwwTr.d.mts +89 -0
- package/dist/command-CQMdYoAm.mjs +2 -0
- package/dist/command-CQMdYoAm.mjs.map +1 -0
- package/dist/command-DAudAVpm.d.cts +89 -0
- package/dist/confirm-dialog-C5ULtwJE.cjs +2 -0
- package/dist/confirm-dialog-C5ULtwJE.cjs.map +1 -0
- package/dist/confirm-dialog-CNWJKBc9.d.mts +142 -0
- package/dist/confirm-dialog-DG_3RvTI.d.cts +142 -0
- package/dist/confirm-dialog-u2GP8uPi.mjs +2 -0
- package/dist/confirm-dialog-u2GP8uPi.mjs.map +1 -0
- package/dist/context-menu-C9nXY3Bq.d.cts +125 -0
- package/dist/context-menu-CplWspvB.cjs +2 -0
- package/dist/context-menu-CplWspvB.cjs.map +1 -0
- package/dist/context-menu-DrF_sQB1.d.mts +125 -0
- package/dist/context-menu-a50s2_E_.mjs +2 -0
- package/dist/context-menu-a50s2_E_.mjs.map +1 -0
- package/dist/country-BHMqKldc.d.mts +22 -0
- package/dist/country-CnXNnGmY.cjs +2 -0
- package/dist/country-CnXNnGmY.cjs.map +1 -0
- package/dist/country-DUD_q-yS.d.cts +22 -0
- package/dist/country-lc1l_viY.mjs +2 -0
- package/dist/country-lc1l_viY.mjs.map +1 -0
- package/dist/data-display/country.cjs +1 -2
- package/dist/data-display/country.d.cts +2 -22
- package/dist/data-display/country.d.mts +2 -0
- package/dist/data-display/country.mjs +1 -0
- package/dist/data-display/data-list.cjs +1 -2
- package/dist/data-display/data-list.d.cts +2 -43
- package/dist/data-display/data-list.d.mts +2 -0
- package/dist/data-display/data-list.mjs +1 -0
- package/dist/data-display/date-tooltip.cjs +1 -2
- package/dist/data-display/date-tooltip.d.cts +2 -19
- package/dist/data-display/date-tooltip.d.mts +2 -0
- package/dist/data-display/date-tooltip.mjs +1 -0
- package/dist/data-display/date.cjs +1 -1
- package/dist/data-display/date.d.cts +2 -39
- package/dist/data-display/date.d.mts +2 -0
- package/dist/data-display/date.mjs +1 -0
- package/dist/data-display/empty.cjs +1 -2
- package/dist/data-display/empty.d.cts +2 -21
- package/dist/data-display/empty.d.mts +2 -0
- package/dist/data-display/empty.mjs +1 -0
- package/dist/data-display/name.cjs +1 -2
- package/dist/data-display/name.d.cts +2 -19
- package/dist/data-display/name.d.mts +2 -0
- package/dist/data-display/name.mjs +1 -0
- package/dist/data-display/phone-number.cjs +1 -2
- package/dist/data-display/phone-number.d.cts +2 -19
- package/dist/data-display/phone-number.d.mts +2 -0
- package/dist/data-display/phone-number.mjs +1 -0
- package/dist/data-display/role-badge.cjs +1 -2
- package/dist/data-display/role-badge.d.cts +2 -22
- package/dist/data-display/role-badge.d.mts +2 -0
- package/dist/data-display/role-badge.mjs +1 -0
- package/dist/data-display/statistic.cjs +1 -1
- package/dist/data-display/statistic.d.cts +2 -57
- package/dist/data-display/statistic.d.mts +2 -0
- package/dist/data-display/statistic.mjs +1 -0
- package/dist/data-display/user.cjs +1 -1
- package/dist/data-display/user.d.cts +2 -23
- package/dist/data-display/user.d.mts +2 -0
- package/dist/data-display/user.mjs +1 -0
- package/dist/data-list-BGmCL71V.cjs +2 -0
- package/dist/data-list-BGmCL71V.cjs.map +1 -0
- package/dist/data-list-CXWcUFU1.mjs +2 -0
- package/dist/data-list-CXWcUFU1.mjs.map +1 -0
- package/dist/data-list-Chl3KU5n.d.mts +43 -0
- package/dist/data-list-DwyNusTs.d.cts +43 -0
- package/dist/date-88lk-VJF.mjs +2 -0
- package/dist/date-88lk-VJF.mjs.map +1 -0
- package/dist/date-BBBx-rIM.cjs +2 -0
- package/dist/date-BBBx-rIM.cjs.map +1 -0
- package/dist/date-tooltip-BdVWCJlg.cjs +2 -0
- package/dist/date-tooltip-BdVWCJlg.cjs.map +1 -0
- package/dist/date-tooltip-CoPcr3Ju.d.mts +19 -0
- package/dist/date-tooltip-DZ3NlfdZ.d.cts +19 -0
- package/dist/date-tooltip-OPAmlgBg.mjs +2 -0
- package/dist/date-tooltip-OPAmlgBg.mjs.map +1 -0
- package/dist/date-viiYGAtR.d.mts +39 -0
- package/dist/date-xQIXRJ71.d.cts +39 -0
- package/dist/descriptions-CgkBHjKD.mjs +2 -0
- package/dist/descriptions-CgkBHjKD.mjs.map +1 -0
- package/dist/descriptions-RNxfgfpM.cjs +2 -0
- package/dist/descriptions-RNxfgfpM.cjs.map +1 -0
- package/dist/detail-dialog-BLApH3eD.cjs +2 -0
- package/dist/detail-dialog-BLApH3eD.cjs.map +1 -0
- package/dist/detail-dialog-CXKrznrp.mjs +2 -0
- package/dist/detail-dialog-CXKrznrp.mjs.map +1 -0
- package/dist/dialog--BvCecaD.mjs +2 -0
- package/dist/dialog--BvCecaD.mjs.map +1 -0
- package/dist/dialog-DNEUhYSv.cjs +2 -0
- package/dist/dialog-DNEUhYSv.cjs.map +1 -0
- package/dist/dialog-DokGVUbC.d.mts +90 -0
- package/dist/dialog-xPhSkLmg.d.cts +90 -0
- package/dist/dialogs/confirm-dialog.cjs +1 -2
- package/dist/dialogs/confirm-dialog.d.cts +2 -142
- package/dist/dialogs/confirm-dialog.d.mts +2 -0
- package/dist/dialogs/confirm-dialog.mjs +1 -0
- package/dist/dialogs/detail-dialog/components/sidebar.cjs +1 -1
- package/dist/dialogs/detail-dialog/components/sidebar.d.cts +29 -29
- package/dist/dialogs/detail-dialog/components/sidebar.d.mts +209 -0
- package/dist/dialogs/detail-dialog/components/sidebar.mjs +1 -0
- package/dist/dialogs/detail-dialog/index.cjs +1 -2
- package/dist/dialogs/detail-dialog/index.d.cts +2 -45
- package/dist/dialogs/detail-dialog/index.d.mts +2 -0
- package/dist/dialogs/detail-dialog/index.mjs +1 -0
- package/dist/dialogs/error-dialog.cjs +1 -2
- package/dist/dialogs/error-dialog.d.cts +2 -25
- package/dist/dialogs/error-dialog.d.mts +2 -0
- package/dist/dialogs/error-dialog.mjs +1 -0
- package/dist/dialogs/loading-dialog.cjs +1 -2
- package/dist/dialogs/loading-dialog.d.cts +2 -21
- package/dist/dialogs/loading-dialog.d.mts +2 -0
- package/dist/dialogs/loading-dialog.mjs +1 -0
- package/dist/dist-DVrfqn8H.mjs +2 -0
- package/dist/dist-DVrfqn8H.mjs.map +1 -0
- package/dist/drawer-BYYCsheu.mjs +2 -0
- package/dist/drawer-BYYCsheu.mjs.map +1 -0
- package/dist/drawer-CjnhVMTw.d.mts +72 -0
- package/dist/drawer-DqAutQLS.d.cts +72 -0
- package/dist/drawer-H8uD0q-C.cjs +2 -0
- package/dist/drawer-H8uD0q-C.cjs.map +1 -0
- package/dist/dropdown-menu-CpA9s4II.d.cts +127 -0
- package/dist/dropdown-menu-CtJ_OM19.cjs +2 -0
- package/dist/dropdown-menu-CtJ_OM19.cjs.map +1 -0
- package/dist/dropdown-menu-DhKquziD.mjs +2 -0
- package/dist/dropdown-menu-DhKquziD.mjs.map +1 -0
- package/dist/dropdown-menu-aDVEkr4L.d.mts +127 -0
- package/dist/edit-B6hhKU53.d.cts +17 -0
- package/dist/edit-CJH1v_md.d.mts +17 -0
- package/dist/edit-DwHuMQMh.cjs +2 -0
- package/dist/edit-DwHuMQMh.cjs.map +1 -0
- package/dist/edit-FIiUWxZq.mjs +2 -0
- package/dist/edit-FIiUWxZq.mjs.map +1 -0
- package/dist/empty-BhV9ASYf.d.mts +68 -0
- package/dist/empty-CmIJYhmV.cjs +2 -0
- package/dist/empty-CmIJYhmV.cjs.map +1 -0
- package/dist/empty-CoKfJtGD.mjs +2 -0
- package/dist/empty-CoKfJtGD.mjs.map +1 -0
- package/dist/empty-D6t3C3WX.mjs +2 -0
- package/dist/empty-D6t3C3WX.mjs.map +1 -0
- package/dist/empty-DaK_4UmN.d.cts +68 -0
- package/dist/empty-OVsSwbVn.d.mts +21 -0
- package/dist/empty-dUZoxaBx.cjs +2 -0
- package/dist/empty-dUZoxaBx.cjs.map +1 -0
- package/dist/empty-z1Ft5uT1.d.cts +21 -0
- package/dist/error-dialog-B8CXPcst.cjs +2 -0
- package/dist/error-dialog-B8CXPcst.cjs.map +1 -0
- package/dist/error-dialog-D0jvqNoY.d.mts +25 -0
- package/dist/error-dialog-DlwWpKEY.d.cts +25 -0
- package/dist/error-dialog-DnntjOS9.mjs +2 -0
- package/dist/error-dialog-DnntjOS9.mjs.map +1 -0
- package/dist/features/descriptions/index.cjs +1 -2
- package/dist/features/descriptions/index.d.cts +2 -246
- package/dist/features/descriptions/index.d.mts +3 -0
- package/dist/features/descriptions/index.mjs +1 -0
- package/dist/features/search-modal/index.cjs +1 -1
- package/dist/features/search-modal/index.d.cts +2 -17
- package/dist/features/search-modal/index.d.mts +2 -0
- package/dist/features/search-modal/index.mjs +1 -0
- package/dist/features/tables/index.cjs +1 -1
- package/dist/features/tables/index.d.cts +1 -1
- package/dist/features/tables/index.d.mts +3 -0
- package/dist/features/tables/index.mjs +1 -0
- package/dist/features/tanstack-form/index.cjs +1 -1
- package/dist/features/tanstack-form/index.d.cts +1 -1
- package/dist/features/tanstack-form/index.d.mts +2 -0
- package/dist/features/tanstack-form/index.mjs +1 -0
- package/dist/features/text-editor/index.cjs +1 -1
- package/dist/features/text-editor/index.d.cts +1 -1
- package/dist/features/text-editor/index.d.mts +2 -0
- package/dist/features/text-editor/index.mjs +1 -0
- package/dist/field-BxYoF5AX.mjs +2 -0
- package/dist/field-BxYoF5AX.mjs.map +1 -0
- package/dist/field-fIef7NR0.cjs +2 -0
- package/dist/field-fIef7NR0.cjs.map +1 -0
- package/dist/file-uploader-BM0x9VBh.cjs +3 -0
- package/dist/file-uploader-BM0x9VBh.cjs.map +1 -0
- package/dist/file-uploader-BTWXTBeQ.mjs +3 -0
- package/dist/file-uploader-BTWXTBeQ.mjs.map +1 -0
- package/dist/file-uploader-Bcq3zzxa.d.cts +103 -0
- package/dist/file-uploader-nUOkG_fv.d.mts +103 -0
- package/dist/flex-BSTiMh2t.d.mts +117 -0
- package/dist/flex-Bx9Nmr53.mjs +2 -0
- package/dist/flex-Bx9Nmr53.mjs.map +1 -0
- package/dist/flex-ClUVVSda.d.cts +117 -0
- package/dist/flex-ld7BqXoM.cjs +2 -0
- package/dist/flex-ld7BqXoM.cjs.map +1 -0
- package/dist/form-BZAtjwSL.d.mts +112 -0
- package/dist/form-Cek0ebE_.d.cts +112 -0
- package/dist/form-DvtaketZ.mjs +2 -0
- package/dist/form-DvtaketZ.mjs.map +1 -0
- package/dist/form-RLIQQ3uV.cjs +2 -0
- package/dist/form-RLIQQ3uV.cjs.map +1 -0
- package/dist/google-BWOrgvy8.d.mts +53 -0
- package/dist/google-C4F5wQ9e.mjs +2 -0
- package/dist/google-C4F5wQ9e.mjs.map +1 -0
- package/dist/google-Cy0_rdmN.cjs +2 -0
- package/dist/google-Cy0_rdmN.cjs.map +1 -0
- package/dist/google-Dyb44d8Y.d.cts +53 -0
- package/dist/grid-BOqzD6m6.d.cts +19 -0
- package/dist/grid-BXJ2x1oD.cjs +2 -0
- package/dist/grid-BXJ2x1oD.cjs.map +1 -0
- package/dist/grid-C4ogfMWr.mjs +2 -0
- package/dist/grid-C4ogfMWr.mjs.map +1 -0
- package/dist/grid-Dw7tBNxf.d.mts +19 -0
- package/dist/grid-product-card-BD8EVmk6.d.cts +37 -0
- package/dist/grid-product-card-BpciVETd.cjs +2 -0
- package/dist/grid-product-card-BpciVETd.cjs.map +1 -0
- package/dist/grid-product-card-BtZwWaMo.mjs +2 -0
- package/dist/grid-product-card-BtZwWaMo.mjs.map +1 -0
- package/dist/grid-product-card-CoFzQiFm.d.mts +37 -0
- package/dist/heading-De4Pn3mZ.mjs +2 -0
- package/dist/heading-De4Pn3mZ.mjs.map +1 -0
- package/dist/hover-card-D2gz257Y.d.cts +37 -0
- package/dist/hover-card-DMVePTD9.mjs +2 -0
- package/dist/hover-card-DMVePTD9.mjs.map +1 -0
- package/dist/hover-card-Dsf0S6eo.d.mts +37 -0
- package/dist/hover-card-Pde4G6Fc.cjs +2 -0
- package/dist/hover-card-Pde4G6Fc.cjs.map +1 -0
- package/dist/image-BBPrcvIr.d.cts +36 -0
- package/dist/image-CbZwvmmL.mjs +2 -0
- package/dist/image-CbZwvmmL.mjs.map +1 -0
- package/dist/image-CwnOaUW7.d.mts +36 -0
- package/dist/image-eYMg5TSJ.cjs +2 -0
- package/dist/image-eYMg5TSJ.cjs.map +1 -0
- package/dist/index-1T84UTtI.d.mts +1707 -0
- package/dist/index-B03QzDx1.d.mts +17 -0
- package/dist/index-BOLiQQmh.d.mts +1093 -0
- package/dist/index-BQZ2-xGQ.d.cts +246 -0
- package/dist/index-BUpm7Ukw.d.mts +90 -0
- package/dist/index-BWLHjQ6S.d.cts +74 -0
- package/dist/index-C33ZNe5s.d.cts +85 -0
- package/dist/index-D4T3Qd4m.d.cts +45 -0
- package/dist/index-DC7NHLfc.d.cts +17 -0
- package/dist/index-DYnzFF0T.d.mts +74 -0
- package/dist/index-DYp6lUbn.d.mts +45 -0
- package/dist/index-DtlnICYj.d.mts +85 -0
- package/dist/index-DvC_tPbo.d.cts +1093 -0
- package/dist/index-DyYcTYcv.d.mts +246 -0
- package/dist/index-e8PriyFP.d.cts +90 -0
- package/dist/index-x5md75cy.d.cts +1707 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +92 -92
- package/dist/index.d.mts +93 -0
- package/dist/index.mjs +1 -0
- package/dist/input-BDCw9qBl.d.cts +44 -0
- package/dist/input-BVTLQHpd.d.mts +44 -0
- package/dist/input-BatF2xqI.cjs +2 -0
- package/dist/input-BatF2xqI.cjs.map +1 -0
- package/dist/input-CFsouxvo.mjs +2 -0
- package/dist/input-CFsouxvo.mjs.map +1 -0
- package/dist/input-otp-C9SpN7qa.mjs +2 -0
- package/dist/input-otp-C9SpN7qa.mjs.map +1 -0
- package/dist/input-otp-CMEY_7IK.d.cts +59 -0
- package/dist/input-otp-DXt9rivn.d.mts +59 -0
- package/dist/input-otp-phGylVzo.cjs +2 -0
- package/dist/input-otp-phGylVzo.cjs.map +1 -0
- package/dist/item-DSaO7I07.d.cts +102 -0
- package/dist/item-Dq3WIh5a.d.mts +102 -0
- package/dist/item-uB0ZFXtc.cjs +2 -0
- package/dist/item-uB0ZFXtc.cjs.map +1 -0
- package/dist/item-ysEJO_2s.mjs +2 -0
- package/dist/item-ysEJO_2s.mjs.map +1 -0
- package/dist/label--hinNDHW.cjs +2 -0
- package/dist/label--hinNDHW.cjs.map +1 -0
- package/dist/label-BMVyfKu9.mjs +2 -0
- package/dist/label-BMVyfKu9.mjs.map +1 -0
- package/dist/label-CCE-kS4j.d.mts +24 -0
- package/dist/label-DGJL4U_f.d.cts +24 -0
- package/dist/layouts/cms-layout/index.cjs +1 -1
- package/dist/layouts/cms-layout/index.d.cts +1 -1
- package/dist/layouts/cms-layout/index.d.mts +2 -0
- package/dist/layouts/cms-layout/index.mjs +1 -0
- package/dist/layouts/flex.cjs +1 -1
- package/dist/layouts/flex.d.cts +2 -117
- package/dist/layouts/flex.d.mts +2 -0
- package/dist/layouts/flex.mjs +1 -0
- package/dist/layouts/grid.cjs +1 -2
- package/dist/layouts/grid.d.cts +2 -19
- package/dist/layouts/grid.d.mts +2 -0
- package/dist/layouts/grid.mjs +1 -0
- package/dist/layouts/payment-layout/index.cjs +1 -1
- package/dist/layouts/payment-layout/index.d.cts +2 -74
- package/dist/layouts/payment-layout/index.d.mts +2 -0
- package/dist/layouts/payment-layout/index.mjs +1 -0
- package/dist/loading-dialog-CEkua3Lh.mjs +2 -0
- package/dist/loading-dialog-CEkua3Lh.mjs.map +1 -0
- package/dist/loading-dialog-D8kCsJID.d.cts +21 -0
- package/dist/loading-dialog-DLvA8-yT.d.mts +21 -0
- package/dist/loading-dialog-DYZmHC1A.cjs +2 -0
- package/dist/loading-dialog-DYZmHC1A.cjs.map +1 -0
- package/dist/menubar-BBFgdkch.d.cts +135 -0
- package/dist/menubar-Bh9Ua6gx.mjs +2 -0
- package/dist/menubar-Bh9Ua6gx.mjs.map +1 -0
- package/dist/menubar-Sr0X6In7.cjs +2 -0
- package/dist/menubar-Sr0X6In7.cjs.map +1 -0
- package/dist/menubar-b3iR0kew.d.mts +135 -0
- package/dist/multi-select-BHqEpbWV.d.mts +117 -0
- package/dist/multi-select-CBZxsmZW.mjs +2 -0
- package/dist/multi-select-CBZxsmZW.mjs.map +1 -0
- package/dist/multi-select-DdXU9QtL.d.cts +117 -0
- package/dist/multi-select-uHi4rmly.cjs +2 -0
- package/dist/multi-select-uHi4rmly.cjs.map +1 -0
- package/dist/name-2FXVOGc1.d.mts +19 -0
- package/dist/name-D7oldyH4.cjs +2 -0
- package/dist/name-D7oldyH4.cjs.map +1 -0
- package/dist/name-EKzKeq0g.mjs +2 -0
- package/dist/name-EKzKeq0g.mjs.map +1 -0
- package/dist/name-r1ATxwPZ.d.cts +19 -0
- package/dist/navigation-menu-BNEtQ0JM.cjs +2 -0
- package/dist/navigation-menu-BNEtQ0JM.cjs.map +1 -0
- package/dist/navigation-menu-DT9LfEFB.d.mts +77 -0
- package/dist/navigation-menu-Dl0kgmce.d.cts +77 -0
- package/dist/navigation-menu-zlpQ6hqY.mjs +2 -0
- package/dist/navigation-menu-zlpQ6hqY.mjs.map +1 -0
- package/dist/pages/FeatureDeveloping.cjs +1 -2
- package/dist/pages/FeatureDeveloping.d.cts +2 -43
- package/dist/pages/FeatureDeveloping.d.mts +2 -0
- package/dist/pages/FeatureDeveloping.mjs +1 -0
- package/dist/pages/FeatureFixing.cjs +1 -2
- package/dist/pages/FeatureFixing.d.cts +2 -43
- package/dist/pages/FeatureFixing.d.mts +2 -0
- package/dist/pages/FeatureFixing.mjs +1 -0
- package/dist/pages/LoginPage.cjs +1 -2
- package/dist/pages/LoginPage.d.cts +2 -55
- package/dist/pages/LoginPage.d.mts +2 -0
- package/dist/pages/LoginPage.mjs +1 -0
- package/dist/pages/NotAuthorized.cjs +1 -2
- package/dist/pages/NotAuthorized.d.cts +2 -43
- package/dist/pages/NotAuthorized.d.mts +2 -0
- package/dist/pages/NotAuthorized.mjs +1 -0
- package/dist/pages/NotFound.cjs +1 -2
- package/dist/pages/NotFound.d.cts +2 -43
- package/dist/pages/NotFound.d.mts +2 -0
- package/dist/pages/NotFound.mjs +1 -0
- package/dist/pages/RegisterPage.cjs +1 -2
- package/dist/pages/RegisterPage.d.cts +2 -52
- package/dist/pages/RegisterPage.d.mts +2 -0
- package/dist/pages/RegisterPage.mjs +1 -0
- package/dist/pages/VerifyEmailPage.cjs +1 -2
- package/dist/pages/VerifyEmailPage.d.cts +2 -64
- package/dist/pages/VerifyEmailPage.d.mts +2 -0
- package/dist/pages/VerifyEmailPage.mjs +1 -0
- package/dist/pagination-D6lKOCca.cjs +2 -0
- package/dist/pagination-D6lKOCca.cjs.map +1 -0
- package/dist/pagination-DXpyiDJW.mjs +2 -0
- package/dist/pagination-DXpyiDJW.mjs.map +1 -0
- package/dist/pagination-DYHZgmcc.d.cts +67 -0
- package/dist/pagination-DYMPNWwJ.d.mts +67 -0
- package/dist/paragraph-CLhsGG8e.d.cts +48 -0
- package/dist/paragraph-DYLaQtTV.mjs +2 -0
- package/dist/paragraph-DYLaQtTV.mjs.map +1 -0
- package/dist/paragraph-o9QFeg6c.d.mts +48 -0
- package/dist/payment-layout-BTYaI9Mr.mjs +2 -0
- package/dist/payment-layout-BTYaI9Mr.mjs.map +1 -0
- package/dist/payment-layout-neLk_obm.cjs +2 -0
- package/dist/payment-layout-neLk_obm.cjs.map +1 -0
- package/dist/phone-number-BAqPxJ5z.d.cts +19 -0
- package/dist/phone-number-CUjSdoHG.d.mts +19 -0
- package/dist/phone-number-CdfMUTj2.cjs +2 -0
- package/dist/phone-number-CdfMUTj2.cjs.map +1 -0
- package/dist/phone-number-CkxEaxxg.mjs +2 -0
- package/dist/phone-number-CkxEaxxg.mjs.map +1 -0
- package/dist/popover-BGd0Tvmy.mjs +2 -0
- package/dist/popover-BGd0Tvmy.mjs.map +1 -0
- package/dist/popover-CaU_EoBJ.d.mts +52 -0
- package/dist/popover-eSwUy8WP.cjs +2 -0
- package/dist/popover-eSwUy8WP.cjs.map +1 -0
- package/dist/popover-m32DoRiq.d.cts +52 -0
- package/dist/product-card-10gaH8bg.cjs +2 -0
- package/dist/product-card-10gaH8bg.cjs.map +1 -0
- package/dist/product-card-C0l0q2Ve.d.cts +37 -0
- package/dist/product-card-CWrVGqZV.d.mts +37 -0
- package/dist/product-card-Rwd-o9hK.mjs +2 -0
- package/dist/product-card-Rwd-o9hK.mjs.map +1 -0
- package/dist/progress-BwbACJal.d.cts +23 -0
- package/dist/progress-Dlgbu5Ff.cjs +2 -0
- package/dist/progress-Dlgbu5Ff.cjs.map +1 -0
- package/dist/progress-RvyBMsxb.mjs +2 -0
- package/dist/progress-RvyBMsxb.mjs.map +1 -0
- package/dist/progress-sn0IL4k4.d.mts +23 -0
- package/dist/radio-group-C4sIDN68.cjs +2 -0
- package/dist/radio-group-C4sIDN68.cjs.map +1 -0
- package/dist/radio-group-CD-4vNQR.mjs +2 -0
- package/dist/radio-group-CD-4vNQR.mjs.map +1 -0
- package/dist/radio-group-Ck0NoDHp.d.cts +37 -0
- package/dist/radio-group-DeKN6NpB.d.mts +37 -0
- package/dist/refresh-BFJvyuJH.cjs +2 -0
- package/dist/refresh-BFJvyuJH.cjs.map +1 -0
- package/dist/refresh-BjdAiL4f.d.mts +17 -0
- package/dist/refresh-Bxm2I0Oe.mjs +2 -0
- package/dist/refresh-Bxm2I0Oe.mjs.map +1 -0
- package/dist/refresh-vK99pTVu.d.cts +17 -0
- package/dist/resizable-BilIxAxi.d.mts +63 -0
- package/dist/resizable-DYxHVdyf.d.cts +63 -0
- package/dist/resizable-p6zxjcHs.mjs +2 -0
- package/dist/resizable-p6zxjcHs.mjs.map +1 -0
- package/dist/resizable-yKKhHTqx.cjs +2 -0
- package/dist/resizable-yKKhHTqx.cjs.map +1 -0
- package/dist/role-badge-BIgdiY5P.mjs +2 -0
- package/dist/role-badge-BIgdiY5P.mjs.map +1 -0
- package/dist/role-badge-BwOEEepo.cjs +2 -0
- package/dist/role-badge-BwOEEepo.cjs.map +1 -0
- package/dist/role-badge-CBZdPHUc.d.cts +22 -0
- package/dist/role-badge-DeofJ2ep.d.mts +22 -0
- package/dist/scroll-area-C7s40z6d.d.mts +37 -0
- package/dist/scroll-area-CKWenzXh.d.cts +37 -0
- package/dist/scroll-area-Dn3a9ZCQ.cjs +2 -0
- package/dist/scroll-area-Dn3a9ZCQ.cjs.map +1 -0
- package/dist/scroll-area-DrZOWroA.mjs +2 -0
- package/dist/scroll-area-DrZOWroA.mjs.map +1 -0
- package/dist/search-input-7m30vApQ.d.mts +29 -0
- package/dist/search-input-BCYwlwtk.cjs +2 -0
- package/dist/search-input-BCYwlwtk.cjs.map +1 -0
- package/dist/search-input-DVtHPbme.d.cts +29 -0
- package/dist/search-input-D_nJ8McN.mjs +2 -0
- package/dist/search-input-D_nJ8McN.mjs.map +1 -0
- package/dist/search-modal-BJhXWOiv.cjs +2 -0
- package/dist/search-modal-BJhXWOiv.cjs.map +1 -0
- package/dist/search-modal-BpHuii66.mjs +2 -0
- package/dist/search-modal-BpHuii66.mjs.map +1 -0
- package/dist/select-B5q6krCq.cjs +2 -0
- package/dist/select-B5q6krCq.cjs.map +1 -0
- package/dist/select-CreOhvnP.mjs +2 -0
- package/dist/select-CreOhvnP.mjs.map +1 -0
- package/dist/select-D0mVxToc.d.mts +77 -0
- package/dist/select-D47FVDEv.d.cts +77 -0
- package/dist/separator-BRoS5sU8.cjs +2 -0
- package/dist/separator-BRoS5sU8.cjs.map +1 -0
- package/dist/separator-BT4tDBSP.d.mts +34 -0
- package/dist/separator-BjRgoiEx.mjs +2 -0
- package/dist/separator-BjRgoiEx.mjs.map +1 -0
- package/dist/separator-DOHFNx8Z.d.cts +34 -0
- package/dist/sheet-38e14yOJ.d.cts +69 -0
- package/dist/sheet-Bk6mK6TN.mjs +2 -0
- package/dist/sheet-Bk6mK6TN.mjs.map +1 -0
- package/dist/sheet-E5cMUzxr.cjs +2 -0
- package/dist/sheet-E5cMUzxr.cjs.map +1 -0
- package/dist/sheet-nSIzbJ1S.d.mts +69 -0
- package/dist/sidebar-DeiQjPc8.mjs +2 -0
- package/dist/sidebar-DeiQjPc8.mjs.map +1 -0
- package/dist/sidebar-DzqiY6IR.cjs +2 -0
- package/dist/sidebar-DzqiY6IR.cjs.map +1 -0
- package/dist/simple-card-C5Rr81Sm.cjs +2 -0
- package/dist/simple-card-C5Rr81Sm.cjs.map +1 -0
- package/dist/simple-card-CIB1_AO0.d.mts +35 -0
- package/dist/simple-card-CjJvBXKr.d.cts +35 -0
- package/dist/simple-card-HEzKjzGT.mjs +2 -0
- package/dist/simple-card-HEzKjzGT.mjs.map +1 -0
- package/dist/skeleton-BuscPZgb.cjs +2 -0
- package/dist/skeleton-BuscPZgb.cjs.map +1 -0
- package/dist/skeleton-Bw3-1Ifw.d.cts +27 -0
- package/dist/skeleton-teVJKfpX.mjs +2 -0
- package/dist/skeleton-teVJKfpX.mjs.map +1 -0
- package/dist/skeleton-wv8x-bmn.d.mts +27 -0
- package/dist/slider-CPRW5ByY.cjs +2 -0
- package/dist/slider-CPRW5ByY.cjs.map +1 -0
- package/dist/slider-CsNzhp4K.d.cts +26 -0
- package/dist/slider-RyNGQZH2.mjs +2 -0
- package/dist/slider-RyNGQZH2.mjs.map +1 -0
- package/dist/slider-axR5n-iU.d.mts +26 -0
- package/dist/sonner-BcwAttxz.d.cts +24 -0
- package/dist/sonner-DiKkRgL0.mjs +2 -0
- package/dist/sonner-DiKkRgL0.mjs.map +1 -0
- package/dist/sonner-hiZbh7Ma.d.mts +24 -0
- package/dist/sonner-tfvnW7f9.cjs +2 -0
- package/dist/sonner-tfvnW7f9.cjs.map +1 -0
- package/dist/spinner-8BhR5INj.d.cts +25 -0
- package/dist/spinner-BhIV1n_5.mjs +2 -0
- package/dist/spinner-BhIV1n_5.mjs.map +1 -0
- package/dist/spinner-BlcoDe44.cjs +2 -0
- package/dist/spinner-BlcoDe44.cjs.map +1 -0
- package/dist/spinner-YEHQDAMj.d.mts +25 -0
- package/dist/statistic-BGynCEWL.cjs +2 -0
- package/dist/statistic-BGynCEWL.cjs.map +1 -0
- package/dist/statistic-C7jb2YxN.d.cts +57 -0
- package/dist/statistic-DbQG1ymc.d.mts +57 -0
- package/dist/statistic-fawLJa99.mjs +2 -0
- package/dist/statistic-fawLJa99.mjs.map +1 -0
- package/dist/switch-BTU8yOgs.mjs +2 -0
- package/dist/switch-BTU8yOgs.mjs.map +1 -0
- package/dist/switch-BaLJWcs6.d.cts +26 -0
- package/dist/switch-DMEBc5Me.cjs +2 -0
- package/dist/switch-DMEBc5Me.cjs.map +1 -0
- package/dist/switch-gWDJ4yuM.d.mts +26 -0
- package/dist/systems/google.cjs +1 -2
- package/dist/systems/google.d.cts +2 -53
- package/dist/systems/google.d.mts +2 -0
- package/dist/systems/google.mjs +1 -0
- package/dist/table-B2rDsRr1.d.cts +73 -0
- package/dist/table-BmEJ-Ktq.d.mts +73 -0
- package/dist/table-DUDAeitX.mjs +2 -0
- package/dist/table-DUDAeitX.mjs.map +1 -0
- package/dist/table-DkGeuCS6.cjs +2 -0
- package/dist/table-DkGeuCS6.cjs.map +1 -0
- package/dist/tables-BhRUyHnO.cjs +4 -0
- package/dist/tables-BhRUyHnO.cjs.map +1 -0
- package/dist/tables-Dnu1akl3.mjs +4 -0
- package/dist/tables-Dnu1akl3.mjs.map +1 -0
- package/dist/tabs-564E0ez3.d.mts +44 -0
- package/dist/tabs-DFGhwbGp.mjs +2 -0
- package/dist/tabs-DFGhwbGp.mjs.map +1 -0
- package/dist/tabs-JR7-JzIe.cjs +2 -0
- package/dist/tabs-JR7-JzIe.cjs.map +1 -0
- package/dist/tabs-vAz8fioT.d.cts +44 -0
- package/dist/tanstack-form-4b7YcChW.cjs +12 -0
- package/dist/tanstack-form-4b7YcChW.cjs.map +1 -0
- package/dist/tanstack-form-Bo1AZA4L.mjs +12 -0
- package/dist/tanstack-form-Bo1AZA4L.mjs.map +1 -0
- package/dist/text-editor-D1vX6xed.mjs +2 -0
- package/dist/text-editor-D1vX6xed.mjs.map +1 -0
- package/dist/text-editor-Dr8BD9Bh.cjs +2 -0
- package/dist/text-editor-Dr8BD9Bh.cjs.map +1 -0
- package/dist/textarea-BNYJfmS1.cjs +2 -0
- package/dist/textarea-BNYJfmS1.cjs.map +1 -0
- package/dist/textarea-Be2gUM3T.d.mts +30 -0
- package/dist/textarea-Bh8TcWO-.mjs +2 -0
- package/dist/textarea-Bh8TcWO-.mjs.map +1 -0
- package/dist/textarea-DbmOLyAp.d.cts +30 -0
- package/dist/title-BlFwN8RM.d.mts +43 -0
- package/dist/title-CMLgxj8_.mjs +2 -0
- package/dist/title-CMLgxj8_.mjs.map +1 -0
- package/dist/title-DJuGuD0Q.d.cts +43 -0
- package/dist/title-DR8e6bHV.cjs +2 -0
- package/dist/title-DR8e6bHV.cjs.map +1 -0
- package/dist/toggle-B3j94Xvr.cjs +2 -0
- package/dist/toggle-B3j94Xvr.cjs.map +1 -0
- package/dist/toggle-BBOteSWq.d.mts +32 -0
- package/dist/toggle-D6bmp328.d.cts +32 -0
- package/dist/toggle-group-5CEKhPgb.d.mts +39 -0
- package/dist/toggle-group-BOubLcnF.d.cts +39 -0
- package/dist/toggle-group-CAIFsPEQ.cjs +2 -0
- package/dist/toggle-group-CAIFsPEQ.cjs.map +1 -0
- package/dist/toggle-group-DfzLXhuE.mjs +2 -0
- package/dist/toggle-group-DfzLXhuE.mjs.map +1 -0
- package/dist/toggle-jTYfZSWB.mjs +2 -0
- package/dist/toggle-jTYfZSWB.mjs.map +1 -0
- package/dist/tooltip-BBEcyuAE.mjs +2 -0
- package/dist/tooltip-BBEcyuAE.mjs.map +1 -0
- package/dist/tooltip-BFQy2Oca.d.mts +55 -0
- package/dist/tooltip-DBjqfkRe.d.cts +55 -0
- package/dist/tooltip-KEOJcYl8.cjs +2 -0
- package/dist/tooltip-KEOJcYl8.cjs.map +1 -0
- package/dist/trash-BxlUz9AR.cjs +2 -0
- package/dist/trash-BxlUz9AR.cjs.map +1 -0
- package/dist/trash-CV_nXOkW.d.mts +17 -0
- package/dist/trash-CZHL7ZuK.d.cts +17 -0
- package/dist/trash-UPoDDna-.mjs +2 -0
- package/dist/trash-UPoDDna-.mjs.map +1 -0
- package/dist/types-B-SuhI6Z.d.cts +24 -0
- package/dist/types-BAAJEExQ.cjs +2 -0
- package/dist/types-BAAJEExQ.cjs.map +1 -0
- package/dist/types-DodCf0NQ.mjs +2 -0
- package/dist/types-DodCf0NQ.mjs.map +1 -0
- package/dist/types-UB3NE0JY.d.mts +24 -0
- package/dist/typography/paragraph.d.cts +2 -48
- package/dist/typography/paragraph.d.mts +2 -0
- package/dist/typography/paragraph.mjs +1 -0
- package/dist/typography/title.cjs +1 -2
- package/dist/typography/title.d.cts +2 -43
- package/dist/typography/title.d.mts +2 -0
- package/dist/typography/title.mjs +1 -0
- package/dist/ui/alert-dialog.cjs +1 -2
- package/dist/ui/alert-dialog.d.cts +2 -90
- package/dist/ui/alert-dialog.d.mts +2 -0
- package/dist/ui/alert-dialog.mjs +1 -0
- package/dist/ui/alert.cjs +1 -1
- package/dist/ui/alert.d.cts +1 -1
- package/dist/ui/alert.d.mts +2 -0
- package/dist/ui/alert.mjs +1 -0
- package/dist/ui/aspect-ratio.cjs +1 -2
- package/dist/ui/aspect-ratio.d.cts +2 -24
- package/dist/ui/aspect-ratio.d.mts +2 -0
- package/dist/ui/aspect-ratio.mjs +1 -0
- package/dist/ui/avatar.cjs +1 -1
- package/dist/ui/avatar.d.cts +2 -35
- package/dist/ui/avatar.d.mts +2 -0
- package/dist/ui/avatar.mjs +1 -0
- package/dist/ui/badge.cjs +1 -1
- package/dist/ui/badge.d.cts +1 -1
- package/dist/ui/badge.d.mts +2 -0
- package/dist/ui/badge.mjs +1 -0
- package/dist/ui/breadcrumb.cjs +1 -2
- package/dist/ui/breadcrumb.d.cts +2 -72
- package/dist/ui/breadcrumb.d.mts +2 -0
- package/dist/ui/breadcrumb.mjs +1 -0
- package/dist/ui/button-group.cjs +1 -2
- package/dist/ui/button-group.d.cts +2 -50
- package/dist/ui/button-group.d.mts +3 -0
- package/dist/ui/button-group.mjs +1 -0
- package/dist/ui/button.d.cts +1 -1
- package/dist/ui/button.d.mts +2 -0
- package/dist/ui/button.mjs +1 -0
- package/dist/ui/buttons/add-new.cjs +1 -2
- package/dist/ui/buttons/add-new.d.cts +2 -17
- package/dist/ui/buttons/add-new.d.mts +2 -0
- package/dist/ui/buttons/add-new.mjs +1 -0
- package/dist/ui/buttons/edit.cjs +1 -2
- package/dist/ui/buttons/edit.d.cts +2 -17
- package/dist/ui/buttons/edit.d.mts +2 -0
- package/dist/ui/buttons/edit.mjs +1 -0
- package/dist/ui/buttons/refresh.cjs +1 -2
- package/dist/ui/buttons/refresh.d.cts +2 -17
- package/dist/ui/buttons/refresh.d.mts +2 -0
- package/dist/ui/buttons/refresh.mjs +1 -0
- package/dist/ui/buttons/trash.cjs +1 -2
- package/dist/ui/buttons/trash.d.cts +2 -17
- package/dist/ui/buttons/trash.d.mts +2 -0
- package/dist/ui/buttons/trash.mjs +1 -0
- package/dist/ui/buttons/upload-image.cjs +1 -2
- package/dist/ui/buttons/upload-image.d.cts +2 -24
- package/dist/ui/buttons/upload-image.d.mts +2 -0
- package/dist/ui/buttons/upload-image.mjs +1 -0
- package/dist/ui/calendar.cjs +1 -1
- package/dist/ui/calendar.d.cts +2 -45
- package/dist/ui/calendar.d.mts +3 -0
- package/dist/ui/calendar.mjs +1 -0
- package/dist/ui/card.cjs +1 -2
- package/dist/ui/card.d.cts +2 -63
- package/dist/ui/card.d.mts +2 -0
- package/dist/ui/card.mjs +1 -0
- package/dist/ui/carousel.cjs +1 -2
- package/dist/ui/carousel.d.cts +2 -71
- package/dist/ui/carousel.d.mts +3 -0
- package/dist/ui/carousel.mjs +1 -0
- package/dist/ui/checkbox.cjs +1 -1
- package/dist/ui/checkbox.d.cts +2 -26
- package/dist/ui/checkbox.d.mts +2 -0
- package/dist/ui/checkbox.mjs +1 -0
- package/dist/ui/collapsible.cjs +1 -2
- package/dist/ui/collapsible.d.cts +2 -34
- package/dist/ui/collapsible.d.mts +2 -0
- package/dist/ui/collapsible.mjs +1 -0
- package/dist/ui/command.cjs +1 -1
- package/dist/ui/command.d.cts +2 -89
- package/dist/ui/command.d.mts +3 -0
- package/dist/ui/command.mjs +1 -0
- package/dist/ui/context-menu.cjs +1 -2
- package/dist/ui/context-menu.d.cts +2 -125
- package/dist/ui/context-menu.d.mts +2 -0
- package/dist/ui/context-menu.mjs +1 -0
- package/dist/ui/dialog.cjs +1 -1
- package/dist/ui/dialog.d.cts +1 -1
- package/dist/ui/dialog.d.mts +2 -0
- package/dist/ui/dialog.mjs +1 -0
- package/dist/ui/drawer.cjs +1 -1
- package/dist/ui/drawer.d.cts +2 -72
- package/dist/ui/drawer.d.mts +2 -0
- package/dist/ui/drawer.mjs +1 -0
- package/dist/ui/dropdown-menu.cjs +1 -1
- package/dist/ui/dropdown-menu.d.cts +2 -127
- package/dist/ui/dropdown-menu.d.mts +2 -0
- package/dist/ui/dropdown-menu.mjs +1 -0
- package/dist/ui/empty.cjs +1 -2
- package/dist/ui/empty.d.cts +2 -68
- package/dist/ui/empty.d.mts +2 -0
- package/dist/ui/empty.mjs +1 -0
- package/dist/ui/field.cjs +1 -1
- package/dist/ui/field.d.cts +24 -24
- package/dist/ui/field.d.mts +65 -0
- package/dist/ui/field.mjs +1 -0
- package/dist/ui/file-uploader.cjs +1 -3
- package/dist/ui/file-uploader.d.cts +2 -103
- package/dist/ui/file-uploader.d.mts +2 -0
- package/dist/ui/file-uploader.mjs +1 -0
- package/dist/ui/form.cjs +1 -2
- package/dist/ui/form.d.cts +2 -112
- package/dist/ui/form.d.mts +2 -0
- package/dist/ui/form.mjs +1 -0
- package/dist/ui/hover-card.cjs +1 -2
- package/dist/ui/hover-card.d.cts +2 -37
- package/dist/ui/hover-card.d.mts +2 -0
- package/dist/ui/hover-card.mjs +1 -0
- package/dist/ui/image.cjs +1 -1
- package/dist/ui/image.d.cts +2 -36
- package/dist/ui/image.d.mts +2 -0
- package/dist/ui/image.mjs +1 -0
- package/dist/ui/input-otp.cjs +1 -2
- package/dist/ui/input-otp.d.cts +2 -59
- package/dist/ui/input-otp.d.mts +2 -0
- package/dist/ui/input-otp.mjs +1 -0
- package/dist/ui/input.cjs +1 -1
- package/dist/ui/input.d.cts +1 -1
- package/dist/ui/input.d.mts +2 -0
- package/dist/ui/input.mjs +1 -0
- package/dist/ui/inputs/search-input.cjs +1 -2
- package/dist/ui/inputs/search-input.d.cts +2 -29
- package/dist/ui/inputs/search-input.d.mts +3 -0
- package/dist/ui/inputs/search-input.mjs +1 -0
- package/dist/ui/item.cjs +1 -2
- package/dist/ui/item.d.cts +2 -102
- package/dist/ui/item.d.mts +3 -0
- package/dist/ui/item.mjs +1 -0
- package/dist/ui/label.cjs +1 -1
- package/dist/ui/label.d.cts +2 -24
- package/dist/ui/label.d.mts +2 -0
- package/dist/ui/label.mjs +1 -0
- package/dist/ui/menubar.cjs +1 -2
- package/dist/ui/menubar.d.cts +2 -135
- package/dist/ui/menubar.d.mts +2 -0
- package/dist/ui/menubar.mjs +1 -0
- package/dist/ui/multi-select.cjs +1 -2
- package/dist/ui/multi-select.d.cts +2 -117
- package/dist/ui/multi-select.d.mts +4 -0
- package/dist/ui/multi-select.mjs +1 -0
- package/dist/ui/navigation-menu.cjs +1 -2
- package/dist/ui/navigation-menu.d.cts +2 -77
- package/dist/ui/navigation-menu.d.mts +2 -0
- package/dist/ui/navigation-menu.mjs +1 -0
- package/dist/ui/pagination.cjs +1 -2
- package/dist/ui/pagination.d.cts +2 -67
- package/dist/ui/pagination.d.mts +3 -0
- package/dist/ui/pagination.mjs +1 -0
- package/dist/ui/popover.cjs +1 -1
- package/dist/ui/popover.d.cts +2 -52
- package/dist/ui/popover.d.mts +2 -0
- package/dist/ui/popover.mjs +1 -0
- package/dist/ui/progress.cjs +1 -1
- package/dist/ui/progress.d.cts +2 -23
- package/dist/ui/progress.d.mts +2 -0
- package/dist/ui/progress.mjs +1 -0
- package/dist/ui/radio-group.cjs +1 -1
- package/dist/ui/radio-group.d.cts +2 -37
- package/dist/ui/radio-group.d.mts +2 -0
- package/dist/ui/radio-group.mjs +1 -0
- package/dist/ui/resizable.cjs +1 -1
- package/dist/ui/resizable.d.cts +2 -63
- package/dist/ui/resizable.d.mts +2 -0
- package/dist/ui/resizable.mjs +1 -0
- package/dist/ui/scroll-area.cjs +1 -2
- package/dist/ui/scroll-area.d.cts +2 -37
- package/dist/ui/scroll-area.d.mts +2 -0
- package/dist/ui/scroll-area.mjs +1 -0
- package/dist/ui/select.cjs +1 -1
- package/dist/ui/select.d.cts +2 -77
- package/dist/ui/select.d.mts +2 -0
- package/dist/ui/select.mjs +1 -0
- package/dist/ui/separator.cjs +1 -1
- package/dist/ui/separator.d.cts +2 -34
- package/dist/ui/separator.d.mts +2 -0
- package/dist/ui/separator.mjs +1 -0
- package/dist/ui/sheet.cjs +1 -1
- package/dist/ui/sheet.d.cts +2 -69
- package/dist/ui/sheet.d.mts +2 -0
- package/dist/ui/sheet.mjs +1 -0
- package/dist/ui/skeleton.cjs +1 -1
- package/dist/ui/skeleton.d.cts +2 -27
- package/dist/ui/skeleton.d.mts +2 -0
- package/dist/ui/skeleton.mjs +1 -0
- package/dist/ui/slider.cjs +1 -2
- package/dist/ui/slider.d.cts +2 -26
- package/dist/ui/slider.d.mts +2 -0
- package/dist/ui/slider.mjs +1 -0
- package/dist/ui/sonner.cjs +1 -2
- package/dist/ui/sonner.d.cts +2 -24
- package/dist/ui/sonner.d.mts +2 -0
- package/dist/ui/sonner.mjs +1 -0
- package/dist/ui/spinner.cjs +1 -1
- package/dist/ui/spinner.d.cts +2 -25
- package/dist/ui/spinner.d.mts +2 -0
- package/dist/ui/spinner.mjs +1 -0
- package/dist/ui/switch.cjs +1 -1
- package/dist/ui/switch.d.cts +2 -26
- package/dist/ui/switch.d.mts +2 -0
- package/dist/ui/switch.mjs +1 -0
- package/dist/ui/table.cjs +1 -2
- package/dist/ui/table.d.cts +2 -73
- package/dist/ui/table.d.mts +2 -0
- package/dist/ui/table.mjs +1 -0
- package/dist/ui/tabs.cjs +1 -2
- package/dist/ui/tabs.d.cts +2 -44
- package/dist/ui/tabs.d.mts +2 -0
- package/dist/ui/tabs.mjs +1 -0
- package/dist/ui/textarea.cjs +1 -1
- package/dist/ui/textarea.d.cts +2 -30
- package/dist/ui/textarea.d.mts +2 -0
- package/dist/ui/textarea.mjs +1 -0
- package/dist/ui/toggle-group.cjs +1 -2
- package/dist/ui/toggle-group.d.cts +2 -39
- package/dist/ui/toggle-group.d.mts +3 -0
- package/dist/ui/toggle-group.mjs +1 -0
- package/dist/ui/toggle.cjs +1 -2
- package/dist/ui/toggle.d.cts +2 -32
- package/dist/ui/toggle.d.mts +2 -0
- package/dist/ui/toggle.mjs +1 -0
- package/dist/ui/tooltip.cjs +1 -1
- package/dist/ui/tooltip.d.cts +2 -55
- package/dist/ui/tooltip.d.mts +2 -0
- package/dist/ui/tooltip.mjs +1 -0
- package/dist/upload-image-BsCkSEXu.d.mts +24 -0
- package/dist/upload-image-CBVufZda.mjs +2 -0
- package/dist/upload-image-CBVufZda.mjs.map +1 -0
- package/dist/upload-image-CPWA9XOk.cjs +2 -0
- package/dist/upload-image-CPWA9XOk.cjs.map +1 -0
- package/dist/upload-image-CV3Xlq2w.d.cts +24 -0
- package/dist/user-B2Pml0ly.cjs +2 -0
- package/dist/user-B2Pml0ly.cjs.map +1 -0
- package/dist/user-B5efjaOf.d.cts +23 -0
- package/dist/user-Cl4BdxFy.d.mts +23 -0
- package/dist/user-DpBhqdvd.mjs +2 -0
- package/dist/user-DpBhqdvd.mjs.map +1 -0
- package/package.json +103 -98
- package/dist/alert-B2PaDJp6.cjs +0 -2
- package/dist/alert-B2PaDJp6.cjs.map +0 -1
- package/dist/alert-BzBDfGk2.js +0 -2
- package/dist/alert-BzBDfGk2.js.map +0 -1
- package/dist/alert-CWKKoukR.d.cts +0 -88
- package/dist/alert-DVzOoLJx.d.ts +0 -88
- package/dist/avatar-Hpj8lmux.js +0 -2
- package/dist/avatar-Hpj8lmux.js.map +0 -1
- package/dist/avatar-TyOphzGo.cjs +0 -2
- package/dist/avatar-TyOphzGo.cjs.map +0 -1
- package/dist/badge-C1qkt2tF.d.cts +0 -42
- package/dist/badge-C4uNX5js.d.ts +0 -42
- package/dist/badge-CRpRXSuO.js +0 -2
- package/dist/badge-CRpRXSuO.js.map +0 -1
- package/dist/badge-KW7xu5Ca.cjs +0 -2
- package/dist/badge-KW7xu5Ca.cjs.map +0 -1
- package/dist/button-C-YKF6eM.d.ts +0 -174
- package/dist/button-LMMbL-uH.js +0 -2
- package/dist/button-LMMbL-uH.js.map +0 -1
- package/dist/button-x1Fxuink.d.cts +0 -174
- package/dist/button.variants-CoSpd71B.js +0 -2
- package/dist/button.variants-CoSpd71B.js.map +0 -1
- package/dist/calendar-4weBDnXz.cjs +0 -2
- package/dist/calendar-4weBDnXz.cjs.map +0 -1
- package/dist/calendar-DzPt7b6k.js +0 -2
- package/dist/calendar-DzPt7b6k.js.map +0 -1
- package/dist/cards/grid-product-card.cjs.map +0 -1
- package/dist/cards/grid-product-card.d.ts +0 -37
- package/dist/cards/grid-product-card.js +0 -2
- package/dist/cards/grid-product-card.js.map +0 -1
- package/dist/cards/product-card.cjs.map +0 -1
- package/dist/cards/product-card.d.ts +0 -37
- package/dist/cards/product-card.js +0 -2
- package/dist/cards/product-card.js.map +0 -1
- package/dist/cards/simple-card.cjs.map +0 -1
- package/dist/cards/simple-card.d.ts +0 -35
- package/dist/cards/simple-card.js +0 -2
- package/dist/cards/simple-card.js.map +0 -1
- package/dist/checkbox-DLGDoU-1.js +0 -2
- package/dist/checkbox-DLGDoU-1.js.map +0 -1
- package/dist/checkbox-Dsq-MSbH.cjs +0 -2
- package/dist/checkbox-Dsq-MSbH.cjs.map +0 -1
- package/dist/close-C0PdZGxr.js +0 -2
- package/dist/close-C0PdZGxr.js.map +0 -1
- package/dist/close-Dlo1bI8x.cjs +0 -2
- package/dist/close-Dlo1bI8x.cjs.map +0 -1
- package/dist/cms-layout-BCH4NroR.cjs +0 -2
- package/dist/cms-layout-BCH4NroR.cjs.map +0 -1
- package/dist/cms-layout-tPwrgJZc.js +0 -2
- package/dist/cms-layout-tPwrgJZc.js.map +0 -1
- package/dist/command-2gUejA6g.js +0 -2
- package/dist/command-2gUejA6g.js.map +0 -1
- package/dist/command-CsP8a1Un.cjs +0 -2
- package/dist/command-CsP8a1Un.cjs.map +0 -1
- package/dist/data-display/country.cjs.map +0 -1
- package/dist/data-display/country.d.ts +0 -22
- package/dist/data-display/country.js +0 -2
- package/dist/data-display/country.js.map +0 -1
- package/dist/data-display/data-list.cjs.map +0 -1
- package/dist/data-display/data-list.d.ts +0 -43
- package/dist/data-display/data-list.js +0 -2
- package/dist/data-display/data-list.js.map +0 -1
- package/dist/data-display/date-tooltip.cjs.map +0 -1
- package/dist/data-display/date-tooltip.d.ts +0 -19
- package/dist/data-display/date-tooltip.js +0 -2
- package/dist/data-display/date-tooltip.js.map +0 -1
- package/dist/data-display/date.d.ts +0 -39
- package/dist/data-display/date.js +0 -1
- package/dist/data-display/empty.cjs.map +0 -1
- package/dist/data-display/empty.d.ts +0 -21
- package/dist/data-display/empty.js +0 -2
- package/dist/data-display/empty.js.map +0 -1
- package/dist/data-display/name.cjs.map +0 -1
- package/dist/data-display/name.d.ts +0 -19
- package/dist/data-display/name.js +0 -2
- package/dist/data-display/name.js.map +0 -1
- package/dist/data-display/phone-number.cjs.map +0 -1
- package/dist/data-display/phone-number.d.ts +0 -19
- package/dist/data-display/phone-number.js +0 -2
- package/dist/data-display/phone-number.js.map +0 -1
- package/dist/data-display/role-badge.cjs.map +0 -1
- package/dist/data-display/role-badge.d.ts +0 -22
- package/dist/data-display/role-badge.js +0 -2
- package/dist/data-display/role-badge.js.map +0 -1
- package/dist/data-display/statistic.d.ts +0 -57
- package/dist/data-display/statistic.js +0 -1
- package/dist/data-display/user.d.ts +0 -23
- package/dist/data-display/user.js +0 -1
- package/dist/date-BIqCFM1Z.js +0 -2
- package/dist/date-BIqCFM1Z.js.map +0 -1
- package/dist/date-D4NVl6C9.cjs +0 -2
- package/dist/date-D4NVl6C9.cjs.map +0 -1
- package/dist/dialog-BIJXF62m.d.ts +0 -90
- package/dist/dialog-BigPrWIj.cjs +0 -2
- package/dist/dialog-BigPrWIj.cjs.map +0 -1
- package/dist/dialog-CmutQ3rp.js +0 -2
- package/dist/dialog-CmutQ3rp.js.map +0 -1
- package/dist/dialog-D0zfwr8i.d.cts +0 -90
- package/dist/dialogs/confirm-dialog.cjs.map +0 -1
- package/dist/dialogs/confirm-dialog.d.ts +0 -142
- package/dist/dialogs/confirm-dialog.js +0 -2
- package/dist/dialogs/confirm-dialog.js.map +0 -1
- package/dist/dialogs/detail-dialog/components/sidebar.d.ts +0 -209
- package/dist/dialogs/detail-dialog/components/sidebar.js +0 -1
- package/dist/dialogs/detail-dialog/index.cjs.map +0 -1
- package/dist/dialogs/detail-dialog/index.d.ts +0 -45
- package/dist/dialogs/detail-dialog/index.js +0 -2
- package/dist/dialogs/detail-dialog/index.js.map +0 -1
- package/dist/dialogs/error-dialog.cjs.map +0 -1
- package/dist/dialogs/error-dialog.d.ts +0 -25
- package/dist/dialogs/error-dialog.js +0 -2
- package/dist/dialogs/error-dialog.js.map +0 -1
- package/dist/dialogs/loading-dialog.cjs.map +0 -1
- package/dist/dialogs/loading-dialog.d.ts +0 -21
- package/dist/dialogs/loading-dialog.js +0 -2
- package/dist/dialogs/loading-dialog.js.map +0 -1
- package/dist/dist-EPxjIRJp.js +0 -2
- package/dist/dist-EPxjIRJp.js.map +0 -1
- package/dist/drawer-B3qXaN5p.js +0 -2
- package/dist/drawer-B3qXaN5p.js.map +0 -1
- package/dist/drawer-BB8BZzDG.cjs +0 -2
- package/dist/drawer-BB8BZzDG.cjs.map +0 -1
- package/dist/dropdown-menu-CVh520yG.cjs +0 -2
- package/dist/dropdown-menu-CVh520yG.cjs.map +0 -1
- package/dist/dropdown-menu-DeHCVyby.js +0 -2
- package/dist/dropdown-menu-DeHCVyby.js.map +0 -1
- package/dist/features/descriptions/index.cjs.map +0 -1
- package/dist/features/descriptions/index.d.ts +0 -246
- package/dist/features/descriptions/index.js +0 -2
- package/dist/features/descriptions/index.js.map +0 -1
- package/dist/features/search-modal/index.d.ts +0 -17
- package/dist/features/search-modal/index.js +0 -1
- package/dist/features/tables/index.d.ts +0 -3
- package/dist/features/tables/index.js +0 -1
- package/dist/features/tanstack-form/index.d.ts +0 -2
- package/dist/features/tanstack-form/index.js +0 -1
- package/dist/features/text-editor/index.d.ts +0 -2
- package/dist/features/text-editor/index.js +0 -1
- package/dist/field-BrlETeXX.cjs +0 -2
- package/dist/field-BrlETeXX.cjs.map +0 -1
- package/dist/field-DpoKF1nY.js +0 -2
- package/dist/field-DpoKF1nY.js.map +0 -1
- package/dist/flex-CinRrgEy.js +0 -2
- package/dist/flex-CinRrgEy.js.map +0 -1
- package/dist/flex-DmWmOBn5.cjs +0 -2
- package/dist/flex-DmWmOBn5.cjs.map +0 -1
- package/dist/heading-Bz-hSatD.js +0 -2
- package/dist/heading-Bz-hSatD.js.map +0 -1
- package/dist/image-BpTuF_1w.js +0 -2
- package/dist/image-BpTuF_1w.js.map +0 -1
- package/dist/image-W_Yb0xTB.cjs +0 -2
- package/dist/image-W_Yb0xTB.cjs.map +0 -1
- package/dist/index-B1nDSKqT.d.ts +0 -85
- package/dist/index-BlQGXGqt.d.ts +0 -90
- package/dist/index-C3pqMcqX.d.ts +0 -1093
- package/dist/index-DiMGMuVl.d.cts +0 -1707
- package/dist/index-Dz0WJS8B.d.cts +0 -1093
- package/dist/index-Ilj04YNO.d.ts +0 -1707
- package/dist/index-KO98y6L0.d.cts +0 -90
- package/dist/index-c1Vzwwln.d.cts +0 -85
- package/dist/index.d.ts +0 -93
- package/dist/index.js +0 -1
- package/dist/input-BQpX4Zkc.d.ts +0 -44
- package/dist/input-BrlqspMT.d.cts +0 -44
- package/dist/input-DAfP6LZ7.js +0 -2
- package/dist/input-DAfP6LZ7.js.map +0 -1
- package/dist/input-WJ0DLHTR.cjs +0 -2
- package/dist/input-WJ0DLHTR.cjs.map +0 -1
- package/dist/label-B8cAG2kc.js +0 -2
- package/dist/label-B8cAG2kc.js.map +0 -1
- package/dist/label-CC6fXVbC.cjs +0 -2
- package/dist/label-CC6fXVbC.cjs.map +0 -1
- package/dist/layouts/cms-layout/index.d.ts +0 -2
- package/dist/layouts/cms-layout/index.js +0 -1
- package/dist/layouts/flex.d.ts +0 -117
- package/dist/layouts/flex.js +0 -1
- package/dist/layouts/grid.cjs.map +0 -1
- package/dist/layouts/grid.d.ts +0 -19
- package/dist/layouts/grid.js +0 -2
- package/dist/layouts/grid.js.map +0 -1
- package/dist/layouts/payment-layout/index.d.ts +0 -74
- package/dist/layouts/payment-layout/index.js +0 -1
- package/dist/pages/FeatureDeveloping.cjs.map +0 -1
- package/dist/pages/FeatureDeveloping.d.ts +0 -43
- package/dist/pages/FeatureDeveloping.js +0 -2
- package/dist/pages/FeatureDeveloping.js.map +0 -1
- package/dist/pages/FeatureFixing.cjs.map +0 -1
- package/dist/pages/FeatureFixing.d.ts +0 -43
- package/dist/pages/FeatureFixing.js +0 -2
- package/dist/pages/FeatureFixing.js.map +0 -1
- package/dist/pages/LoginPage.cjs.map +0 -1
- package/dist/pages/LoginPage.d.ts +0 -55
- package/dist/pages/LoginPage.js +0 -2
- package/dist/pages/LoginPage.js.map +0 -1
- package/dist/pages/NotAuthorized.cjs.map +0 -1
- package/dist/pages/NotAuthorized.d.ts +0 -43
- package/dist/pages/NotAuthorized.js +0 -2
- package/dist/pages/NotAuthorized.js.map +0 -1
- package/dist/pages/NotFound.cjs.map +0 -1
- package/dist/pages/NotFound.d.ts +0 -43
- package/dist/pages/NotFound.js +0 -2
- package/dist/pages/NotFound.js.map +0 -1
- package/dist/pages/RegisterPage.cjs.map +0 -1
- package/dist/pages/RegisterPage.d.ts +0 -52
- package/dist/pages/RegisterPage.js +0 -2
- package/dist/pages/RegisterPage.js.map +0 -1
- package/dist/pages/VerifyEmailPage.cjs.map +0 -1
- package/dist/pages/VerifyEmailPage.d.ts +0 -64
- package/dist/pages/VerifyEmailPage.js +0 -2
- package/dist/pages/VerifyEmailPage.js.map +0 -1
- package/dist/paragraph-Cc13ZI4d.js +0 -2
- package/dist/paragraph-Cc13ZI4d.js.map +0 -1
- package/dist/payment-layout-DyILfyVG.cjs +0 -2
- package/dist/payment-layout-DyILfyVG.cjs.map +0 -1
- package/dist/payment-layout-giaGvs8T.js +0 -2
- package/dist/payment-layout-giaGvs8T.js.map +0 -1
- package/dist/popover-6233wU1s.js +0 -2
- package/dist/popover-6233wU1s.js.map +0 -1
- package/dist/popover-DBsC8Ltp.cjs +0 -2
- package/dist/popover-DBsC8Ltp.cjs.map +0 -1
- package/dist/progress-AYknlEgK.js +0 -2
- package/dist/progress-AYknlEgK.js.map +0 -1
- package/dist/progress-gvBqNiHp.cjs +0 -2
- package/dist/progress-gvBqNiHp.cjs.map +0 -1
- package/dist/radio-group-ImoBjpqZ.js +0 -2
- package/dist/radio-group-ImoBjpqZ.js.map +0 -1
- package/dist/radio-group-_TdMkv8w.cjs +0 -2
- package/dist/radio-group-_TdMkv8w.cjs.map +0 -1
- package/dist/resizable-C-M-mu6b.js +0 -2
- package/dist/resizable-C-M-mu6b.js.map +0 -1
- package/dist/resizable-sgpaHAb8.cjs +0 -2
- package/dist/resizable-sgpaHAb8.cjs.map +0 -1
- package/dist/search-modal-B-pzGcfP.cjs +0 -2
- package/dist/search-modal-B-pzGcfP.cjs.map +0 -1
- package/dist/search-modal-b2AE5WEW.js +0 -2
- package/dist/search-modal-b2AE5WEW.js.map +0 -1
- package/dist/select-CWLQHh8x.cjs +0 -2
- package/dist/select-CWLQHh8x.cjs.map +0 -1
- package/dist/select-CryLzZA0.js +0 -2
- package/dist/select-CryLzZA0.js.map +0 -1
- package/dist/separator-BM8hA4DP.js +0 -2
- package/dist/separator-BM8hA4DP.js.map +0 -1
- package/dist/separator-KuymG9g0.cjs +0 -2
- package/dist/separator-KuymG9g0.cjs.map +0 -1
- package/dist/sheet-CvKSi0UC.cjs +0 -2
- package/dist/sheet-CvKSi0UC.cjs.map +0 -1
- package/dist/sheet-DGXXYgWB.js +0 -2
- package/dist/sheet-DGXXYgWB.js.map +0 -1
- package/dist/sidebar-BDrsbzo5.js +0 -2
- package/dist/sidebar-BDrsbzo5.js.map +0 -1
- package/dist/sidebar-D5J2gcTw.cjs +0 -2
- package/dist/sidebar-D5J2gcTw.cjs.map +0 -1
- package/dist/skeleton-CX1USu1w.cjs +0 -2
- package/dist/skeleton-CX1USu1w.cjs.map +0 -1
- package/dist/skeleton-DlRDNM97.js +0 -2
- package/dist/skeleton-DlRDNM97.js.map +0 -1
- package/dist/spinner-C1eamx3w.js +0 -2
- package/dist/spinner-C1eamx3w.js.map +0 -1
- package/dist/spinner-CFxorYEt.cjs +0 -2
- package/dist/spinner-CFxorYEt.cjs.map +0 -1
- package/dist/statistic-CYMqAYNc.js +0 -2
- package/dist/statistic-CYMqAYNc.js.map +0 -1
- package/dist/statistic-DDXilD7q.cjs +0 -2
- package/dist/statistic-DDXilD7q.cjs.map +0 -1
- package/dist/switch-BLHmdRq2.js +0 -2
- package/dist/switch-BLHmdRq2.js.map +0 -1
- package/dist/switch-DVfOV7wP.cjs +0 -2
- package/dist/switch-DVfOV7wP.cjs.map +0 -1
- package/dist/systems/google.cjs.map +0 -1
- package/dist/systems/google.d.ts +0 -53
- package/dist/systems/google.js +0 -2
- package/dist/systems/google.js.map +0 -1
- package/dist/tables-CPKHe3k-.cjs +0 -4
- package/dist/tables-CPKHe3k-.cjs.map +0 -1
- package/dist/tables-DWQytYNm.js +0 -4
- package/dist/tables-DWQytYNm.js.map +0 -1
- package/dist/tanstack-form-DqBFHFeg.js +0 -12
- package/dist/tanstack-form-DqBFHFeg.js.map +0 -1
- package/dist/tanstack-form-_NZZW9aT.cjs +0 -12
- package/dist/tanstack-form-_NZZW9aT.cjs.map +0 -1
- package/dist/text-editor-CvJN3nSL.cjs +0 -2
- package/dist/text-editor-CvJN3nSL.cjs.map +0 -1
- package/dist/text-editor-WbS7pJJs.js +0 -2
- package/dist/text-editor-WbS7pJJs.js.map +0 -1
- package/dist/textarea-Bp6VvhiA.js +0 -2
- package/dist/textarea-Bp6VvhiA.js.map +0 -1
- package/dist/textarea-Cc9CF8wD.cjs +0 -2
- package/dist/textarea-Cc9CF8wD.cjs.map +0 -1
- package/dist/tooltip-CBdoIzoM.cjs +0 -2
- package/dist/tooltip-CBdoIzoM.cjs.map +0 -1
- package/dist/tooltip-CVIl6Hln.js +0 -2
- package/dist/tooltip-CVIl6Hln.js.map +0 -1
- package/dist/types-BD1t0Bj8.cjs +0 -2
- package/dist/types-BD1t0Bj8.cjs.map +0 -1
- package/dist/types-BVSfF-1o.d.ts +0 -24
- package/dist/types-BZqffRVJ.js +0 -2
- package/dist/types-BZqffRVJ.js.map +0 -1
- package/dist/types-Cc_mLRAn.d.cts +0 -24
- package/dist/typography/paragraph.d.ts +0 -48
- package/dist/typography/paragraph.js +0 -1
- package/dist/typography/title.cjs.map +0 -1
- package/dist/typography/title.d.ts +0 -43
- package/dist/typography/title.js +0 -2
- package/dist/typography/title.js.map +0 -1
- package/dist/ui/alert-dialog.cjs.map +0 -1
- package/dist/ui/alert-dialog.d.ts +0 -90
- package/dist/ui/alert-dialog.js +0 -2
- package/dist/ui/alert-dialog.js.map +0 -1
- package/dist/ui/alert.d.ts +0 -2
- package/dist/ui/alert.js +0 -1
- package/dist/ui/aspect-ratio.cjs.map +0 -1
- package/dist/ui/aspect-ratio.d.ts +0 -24
- package/dist/ui/aspect-ratio.js +0 -2
- package/dist/ui/aspect-ratio.js.map +0 -1
- package/dist/ui/avatar.d.ts +0 -35
- package/dist/ui/avatar.js +0 -1
- package/dist/ui/badge.d.ts +0 -2
- package/dist/ui/badge.js +0 -1
- package/dist/ui/breadcrumb.cjs.map +0 -1
- package/dist/ui/breadcrumb.d.ts +0 -72
- package/dist/ui/breadcrumb.js +0 -2
- package/dist/ui/breadcrumb.js.map +0 -1
- package/dist/ui/button-group.cjs.map +0 -1
- package/dist/ui/button-group.d.ts +0 -50
- package/dist/ui/button-group.js +0 -2
- package/dist/ui/button-group.js.map +0 -1
- package/dist/ui/button.d.ts +0 -2
- package/dist/ui/button.js +0 -1
- package/dist/ui/buttons/add-new.cjs.map +0 -1
- package/dist/ui/buttons/add-new.d.ts +0 -17
- package/dist/ui/buttons/add-new.js +0 -2
- package/dist/ui/buttons/add-new.js.map +0 -1
- package/dist/ui/buttons/edit.cjs.map +0 -1
- package/dist/ui/buttons/edit.d.ts +0 -17
- package/dist/ui/buttons/edit.js +0 -2
- package/dist/ui/buttons/edit.js.map +0 -1
- package/dist/ui/buttons/refresh.cjs.map +0 -1
- package/dist/ui/buttons/refresh.d.ts +0 -17
- package/dist/ui/buttons/refresh.js +0 -2
- package/dist/ui/buttons/refresh.js.map +0 -1
- package/dist/ui/buttons/trash.cjs.map +0 -1
- package/dist/ui/buttons/trash.d.ts +0 -17
- package/dist/ui/buttons/trash.js +0 -2
- package/dist/ui/buttons/trash.js.map +0 -1
- package/dist/ui/buttons/upload-image.cjs.map +0 -1
- package/dist/ui/buttons/upload-image.d.ts +0 -24
- package/dist/ui/buttons/upload-image.js +0 -2
- package/dist/ui/buttons/upload-image.js.map +0 -1
- package/dist/ui/calendar.d.ts +0 -45
- package/dist/ui/calendar.js +0 -1
- package/dist/ui/card.cjs.map +0 -1
- package/dist/ui/card.d.ts +0 -63
- package/dist/ui/card.js +0 -2
- package/dist/ui/card.js.map +0 -1
- package/dist/ui/carousel.cjs.map +0 -1
- package/dist/ui/carousel.d.ts +0 -71
- package/dist/ui/carousel.js +0 -2
- package/dist/ui/carousel.js.map +0 -1
- package/dist/ui/checkbox.d.ts +0 -26
- package/dist/ui/checkbox.js +0 -1
- package/dist/ui/collapsible.cjs.map +0 -1
- package/dist/ui/collapsible.d.ts +0 -34
- package/dist/ui/collapsible.js +0 -2
- package/dist/ui/collapsible.js.map +0 -1
- package/dist/ui/command.d.ts +0 -89
- package/dist/ui/command.js +0 -1
- package/dist/ui/context-menu.cjs.map +0 -1
- package/dist/ui/context-menu.d.ts +0 -125
- package/dist/ui/context-menu.js +0 -2
- package/dist/ui/context-menu.js.map +0 -1
- package/dist/ui/dialog.d.ts +0 -2
- package/dist/ui/dialog.js +0 -1
- package/dist/ui/drawer.d.ts +0 -72
- package/dist/ui/drawer.js +0 -1
- package/dist/ui/dropdown-menu.d.ts +0 -127
- package/dist/ui/dropdown-menu.js +0 -1
- package/dist/ui/empty.cjs.map +0 -1
- package/dist/ui/empty.d.ts +0 -68
- package/dist/ui/empty.js +0 -2
- package/dist/ui/empty.js.map +0 -1
- package/dist/ui/field.d.ts +0 -65
- package/dist/ui/field.js +0 -1
- package/dist/ui/file-uploader.cjs.map +0 -1
- package/dist/ui/file-uploader.d.ts +0 -103
- package/dist/ui/file-uploader.js +0 -3
- package/dist/ui/file-uploader.js.map +0 -1
- package/dist/ui/form.cjs.map +0 -1
- package/dist/ui/form.d.ts +0 -112
- package/dist/ui/form.js +0 -2
- package/dist/ui/form.js.map +0 -1
- package/dist/ui/hover-card.cjs.map +0 -1
- package/dist/ui/hover-card.d.ts +0 -37
- package/dist/ui/hover-card.js +0 -2
- package/dist/ui/hover-card.js.map +0 -1
- package/dist/ui/image.d.ts +0 -36
- package/dist/ui/image.js +0 -1
- package/dist/ui/input-otp.cjs.map +0 -1
- package/dist/ui/input-otp.d.ts +0 -59
- package/dist/ui/input-otp.js +0 -2
- package/dist/ui/input-otp.js.map +0 -1
- package/dist/ui/input.d.ts +0 -2
- package/dist/ui/input.js +0 -1
- package/dist/ui/inputs/search-input.cjs.map +0 -1
- package/dist/ui/inputs/search-input.d.ts +0 -29
- package/dist/ui/inputs/search-input.js +0 -2
- package/dist/ui/inputs/search-input.js.map +0 -1
- package/dist/ui/item.cjs.map +0 -1
- package/dist/ui/item.d.ts +0 -102
- package/dist/ui/item.js +0 -2
- package/dist/ui/item.js.map +0 -1
- package/dist/ui/label.d.ts +0 -24
- package/dist/ui/label.js +0 -1
- package/dist/ui/menubar.cjs.map +0 -1
- package/dist/ui/menubar.d.ts +0 -135
- package/dist/ui/menubar.js +0 -2
- package/dist/ui/menubar.js.map +0 -1
- package/dist/ui/multi-select.cjs.map +0 -1
- package/dist/ui/multi-select.d.ts +0 -118
- package/dist/ui/multi-select.js +0 -2
- package/dist/ui/multi-select.js.map +0 -1
- package/dist/ui/navigation-menu.cjs.map +0 -1
- package/dist/ui/navigation-menu.d.ts +0 -77
- package/dist/ui/navigation-menu.js +0 -2
- package/dist/ui/navigation-menu.js.map +0 -1
- package/dist/ui/pagination.cjs.map +0 -1
- package/dist/ui/pagination.d.ts +0 -67
- package/dist/ui/pagination.js +0 -2
- package/dist/ui/pagination.js.map +0 -1
- package/dist/ui/popover.d.ts +0 -52
- package/dist/ui/popover.js +0 -1
- package/dist/ui/progress.d.ts +0 -23
- package/dist/ui/progress.js +0 -1
- package/dist/ui/radio-group.d.ts +0 -37
- package/dist/ui/radio-group.js +0 -1
- package/dist/ui/resizable.d.ts +0 -63
- package/dist/ui/resizable.js +0 -1
- package/dist/ui/scroll-area.cjs.map +0 -1
- package/dist/ui/scroll-area.d.ts +0 -37
- package/dist/ui/scroll-area.js +0 -2
- package/dist/ui/scroll-area.js.map +0 -1
- package/dist/ui/select.d.ts +0 -77
- package/dist/ui/select.js +0 -1
- package/dist/ui/separator.d.ts +0 -34
- package/dist/ui/separator.js +0 -1
- package/dist/ui/sheet.d.ts +0 -69
- package/dist/ui/sheet.js +0 -1
- package/dist/ui/skeleton.d.ts +0 -27
- package/dist/ui/skeleton.js +0 -1
- package/dist/ui/slider.cjs.map +0 -1
- package/dist/ui/slider.d.ts +0 -26
- package/dist/ui/slider.js +0 -2
- package/dist/ui/slider.js.map +0 -1
- package/dist/ui/sonner.cjs.map +0 -1
- package/dist/ui/sonner.d.ts +0 -24
- package/dist/ui/sonner.js +0 -2
- package/dist/ui/sonner.js.map +0 -1
- package/dist/ui/spinner.d.ts +0 -25
- package/dist/ui/spinner.js +0 -1
- package/dist/ui/switch.d.ts +0 -26
- package/dist/ui/switch.js +0 -1
- package/dist/ui/table.cjs.map +0 -1
- package/dist/ui/table.d.ts +0 -73
- package/dist/ui/table.js +0 -2
- package/dist/ui/table.js.map +0 -1
- package/dist/ui/tabs.cjs.map +0 -1
- package/dist/ui/tabs.d.ts +0 -44
- package/dist/ui/tabs.js +0 -2
- package/dist/ui/tabs.js.map +0 -1
- package/dist/ui/textarea.d.ts +0 -30
- package/dist/ui/textarea.js +0 -1
- package/dist/ui/toggle-group.cjs.map +0 -1
- package/dist/ui/toggle-group.d.ts +0 -39
- package/dist/ui/toggle-group.js +0 -2
- package/dist/ui/toggle-group.js.map +0 -1
- package/dist/ui/toggle.cjs.map +0 -1
- package/dist/ui/toggle.d.ts +0 -32
- package/dist/ui/toggle.js +0 -2
- package/dist/ui/toggle.js.map +0 -1
- package/dist/ui/tooltip.d.ts +0 -55
- package/dist/ui/tooltip.js +0 -1
- package/dist/user-BSpgswEC.js +0 -2
- package/dist/user-BSpgswEC.js.map +0 -1
- package/dist/user-ii4FBhO1.cjs +0 -2
- package/dist/user-ii4FBhO1.cjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-fIef7NR0.cjs","names":["Label","Separator","BanIcon"],"sources":["../packages/components/ui/field.tsx"],"sourcesContent":["'use client';\n\nimport { memo, useMemo } from 'react';\n\nimport { BanIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { Label } from '@/components/ui/label';\nimport { Separator } from '@/components/ui/separator';\n\nconst FieldSet = memo(({ className, ...props }: React.ComponentProps<'fieldset'>) => {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn('flex flex-col gap-6', 'has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3', className)}\n {...props}\n />\n );\n});\nFieldSet.displayName = 'FieldSet';\n\nconst FieldLegend = memo(({ className, variant = 'legend', ...props }: React.ComponentProps<'legend'> & { variant?: 'legend' | 'label' }) => {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn('mb-3 font-medium', 'data-[variant=legend]:text-base', 'data-[variant=label]:text-sm', className)}\n {...props}\n />\n );\n});\nFieldLegend.displayName = 'FieldLegend';\n\nconst FieldGroup = memo(({ className, ...props }: React.ComponentProps<'div'>) => {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n 'group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4',\n className\n )}\n {...props}\n />\n );\n});\nFieldGroup.displayName = 'FieldGroup';\n\nconst fieldVariants = cva('group/field flex w-full gap-3 data-[invalid=true]:text-destructive', {\n variants: {\n orientation: {\n vertical: ['flex-col *:w-full [&>.sr-only]:w-auto'],\n horizontal: [\n 'flex-row items-center',\n '*:data-[slot=field-label]:flex-auto',\n 'has-[>[data-slot=field-content]]:items-start',\n 'has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n ],\n responsive: [\n 'flex-col *:w-full [&>.sr-only]:w-auto',\n '@md/field-group:flex-row',\n '@md/field-group:items-center',\n '@md/field-group:*:w-auto',\n '@md/field-group:*:data-[slot=field-label]:flex-auto',\n '@md/field-group:has-[>[data-slot=field-content]]:items-start',\n '@md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',\n ],\n },\n },\n defaultVariants: {\n orientation: 'vertical',\n },\n});\n\nconst Field = memo(({ className, orientation = 'vertical', ...props }: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>) => {\n return <div data-slot=\"field\" data-orientation={orientation} className={cn(fieldVariants({ orientation }), className)} {...props} />;\n});\nField.displayName = 'Field';\n\nconst FieldContent = memo(({ className, ...props }: React.ComponentProps<'div'>) => {\n return <div data-slot=\"field-content\" className={cn('group/field-content flex basis-2/5 flex-col gap-1.5 leading-snug', className)} {...props} />;\n});\nFieldContent.displayName = 'FieldContent';\n\nconst FieldLabel = memo(({ className, ...props }: React.ComponentProps<typeof Label>) => {\n return (\n <Label\n data-slot=\"field-label\"\n className={cn(\n 'group/field-label peer/field-label flex w-fit gap-2 leading-snug',\n 'group-data-[disabled=true]/field:opacity-50',\n 'has-[>[data-slot=field]]:w-full',\n 'has-[>[data-slot=field]]:flex-col',\n 'has-[>[data-slot=field]]:rounded-md',\n 'has-[>[data-slot=field]]:border',\n '*:data-[slot=field]:p-4',\n 'has-data-[state=checked]:bg-primary/5',\n 'has-data-[state=checked]:border-primary',\n className\n )}\n {...props}\n />\n );\n});\nFieldLabel.displayName = 'FieldLabel';\n\nconst FieldTitle = memo(({ className, ...props }: React.ComponentProps<'div'>) => {\n return (\n <div\n data-slot=\"field-label\"\n className={cn('flex w-fit items-center gap-2 font-medium text-sm leading-snug group-data-[disabled=true]/field:opacity-50', className)}\n {...props}\n />\n );\n});\nFieldTitle.displayName = 'FieldTitle';\n\nconst FieldDescription = memo(({ className, ...props }: React.ComponentProps<'p'>) => {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\n 'text-text-positive-weak text-sm leading-normal font-normal group-has-data-[orientation=horizontal]/field:text-balance',\n 'last:mt-0 nth-last-2:-mt-1 [[data-variant=legend]+&]:-mt-1.5',\n '[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4',\n className\n )}\n {...props}\n />\n );\n});\nFieldDescription.displayName = 'FieldDescription';\n\nconst FieldSeparator = memo(\n ({\n children,\n className,\n ...props\n }: React.ComponentProps<'div'> & {\n children?: React.ReactNode;\n }) => {\n return (\n <div\n data-slot=\"field-separator\"\n data-content={!!children}\n className={cn('relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2', className)}\n {...props}\n >\n <Separator className=\"absolute inset-0 top-1/2\" />\n {children && (\n <span className=\"relative mx-auto block w-fit bg-background px-2 text-text-positive-weak\" data-slot=\"field-separator-content\">\n {children}\n </span>\n )}\n </div>\n );\n }\n);\nFieldSeparator.displayName = 'FieldSeparator';\n\nconst FieldError = memo(\n ({\n className,\n children,\n errors,\n ...props\n }: React.ComponentProps<'div'> & {\n errors?: Array<{ message?: string } | undefined>;\n }) => {\n const content = useMemo(() => {\n if (children) {\n return children;\n }\n\n if (!errors) {\n return null;\n }\n\n if (errors?.length === 1 && errors[0]?.message) {\n return (\n <div className=\"flex flex-row items-center justify-start gap-x-0.5\">\n <BanIcon size={14} />\n <p>{errors[0].message}</p>\n </div>\n );\n }\n\n return (\n <ul className=\"ml-4 flex list-disc flex-col gap-1\">\n {errors.map(error => {\n if (typeof error === 'string') return <li key={error}>{error}</li>;\n if (!error?.message) return null;\n return <li key={error.message}>{error.message}</li>;\n })}\n </ul>\n );\n }, [children, errors]);\n\n if (!content) {\n return null;\n }\n\n return (\n <div role=\"alert\" data-slot=\"field-error\" className={cn('w-full font-normal text-danger text-xs', className)} {...props}>\n {content}\n </div>\n );\n }\n);\nFieldError.displayName = 'FieldError';\n\nexport { Field, FieldLabel, FieldDescription, FieldError, FieldGroup, FieldLegend, FieldSeparator, FieldSet, FieldContent, FieldTitle };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const e=require(`./chunk-350yNsax.cjs`),t=require(`./button-C--DAN1D.cjs`),n=require(`./progress-Dlgbu5Ff.cjs`);let r=require(`lucide-react`),i=require(`react`),a=require(`@customafk/react-toolkit/utils`),o=require(`react/jsx-runtime`),s=require(`react-dropzone`);s=e.n(s);let c=require(`@customafk/react-toolkit/hooks/useControllableState`),l=require(`sonner`);function u(e){let{value:t,onValueChange:n,onUpload:u,progresses:p,accept:m={"image/*":[]},maxSize:h=1024*1024*2,maxFileCount:g=1,multiple:_=!1,disabled:v=!1,showText:y=!0,iconSize:b,className:x,...S}=e,[C,w]=(0,c.useControllableState)({prop:t,onChange:n}),T=(0,i.useCallback)((e,t)=>{if(!_&&g===1&&e.length>1){l.toast.error(`Cannot upload more than 1 file at a time`);return}if((C?.length??0)+e.length>g){l.toast.error(`Cannot upload more than ${g} files`);return}let n=e.map(e=>Object.assign(e,{preview:URL.createObjectURL(e)})),r=C?[...C,...n]:n;if(w(r),t.length>0&&t.forEach(({file:e})=>{l.toast.error(`File ${e.name} was rejected`)}),u&&r.length>0&&r.length<=g){let e=r.length>0?`${r.length} files`:`file`;u(r).then(()=>{w([]),(0,l.toast)(`${e} uploaded`)})}},[C,g,_,u,w]);function E(e){if(!C)return;f(C[e])&&URL.revokeObjectURL(C[e].preview);let t=C.filter((t,n)=>n!==e);w(t),n?.(t)}(0,i.useEffect)(()=>()=>{C&&C.forEach(e=>{f(e)&&URL.revokeObjectURL(e.preview)})},[]);let D=v||(C?.length??0)>=g;return(0,o.jsxs)(`div`,{className:`relative flex w-full flex-col gap-6`,children:[(0,o.jsx)(s.default,{onDrop:T,accept:m,maxSize:h,maxFiles:g,multiple:g>1||_,disabled:D,children:({getRootProps:e,getInputProps:t,isDragActive:n})=>(0,o.jsxs)(`div`,{...e(),className:(0,a.cn)(`group`,`border-border-weak`,`hover:bg-border-weak/20`,`relative grid h-52 w-full cursor-pointer place-items-center rounded-lg border-2 border-dashed px-5 py-2.5 text-center transition`,`ring-offset-background`,`focus-visible:ring-primary-weak`,`focus-visible:ring-2`,`focus-visible:ring-offset-2`,`focus-visible:outline-hidden`,n&&`border-border-primary-strong bg-border-weak/40`,D&&`pointer-events-none opacity-60`,x),...S,children:[(0,o.jsx)(`input`,{...t()}),n?(0,o.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-4 sm:px-5`,children:[(0,o.jsx)(`div`,{className:`rounded-full border border-dashed p-3`,children:(0,o.jsx)(r.Upload,{className:`text-text-positive-muted size-7`,"aria-hidden":`true`})}),(0,o.jsx)(`p`,{className:`text-text-positive-muted font-medium`,children:`Drop the files here`})]}):(0,o.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-4 sm:px-5`,children:[(0,o.jsx)(`div`,{className:`rounded-full border border-dashed p-3`,children:(0,o.jsx)(r.Upload,{size:b||24,className:`text-muted-foreground`,"aria-hidden":`true`})}),y&&(0,o.jsxs)(`div`,{className:`flex flex-col gap-px`,children:[(0,o.jsxs)(`p`,{className:`text-text-positive-weak text-xs font-medium`,children:[`Drag `,`'n'`,` drop files here, or click to select files`]}),(0,o.jsxs)(`p`,{className:`text-text-positive-muted text-xs`,children:[`You can upload`,g>1?` ${g===1/0?`multiple`:g}
|
|
2
|
+
files (up to ${(0,a.formatBytes)(h)} each)`:` a file with ${(0,a.formatBytes)(h)}`]})]})]})]})}),C?.length?(0,o.jsxs)(`div`,{className:`h-fit w-full overflow-y-auto`,children:[(0,o.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2.5`,children:[(0,o.jsxs)(`div`,{className:`text-text-positive-weak flex items-center gap-1`,children:[(0,o.jsx)(r.Image,{size:16,"aria-hidden":`true`}),(0,o.jsxs)(`p`,{className:`text-sm`,children:[`Ảnh đã tải lên (`,C.length,`)`]})]}),(0,o.jsxs)(`button`,{className:`hover:text-text-positive text-text-positive-muted flex cursor-pointer items-center gap-1 transition-colors duration-200`,onClick:()=>{C&&(C.forEach(e=>{f(e)&&URL.revokeObjectURL(e.preview)}),w([]),n?.([]))},children:[(0,o.jsx)(r.Trash2,{size:16,"aria-hidden":`true`}),(0,o.jsx)(`p`,{className:`text-sm`,children:`Xóa tất cả`})]})]}),(0,o.jsx)(`div`,{className:`flex flex-col gap-2.5`,children:C?.map((e,t)=>(0,o.jsx)(d,{file:e,onRemove:()=>E(t),progress:p?.[e.name]},t))})]}):null]})}function d({file:e,progress:i,onRemove:s}){return(0,o.jsxs)(`div`,{className:`border-border-weak hover:border-border relative flex items-center gap-4 rounded-md border py-2 pr-3 pl-2 shadow-xs transition-colors`,children:[(0,o.jsxs)(`div`,{className:`flex flex-1 gap-2.5`,children:[f(e)?(0,o.jsx)(p,{file:e}):null,(0,o.jsxs)(`div`,{className:`flex w-full flex-col gap-2`,children:[(0,o.jsxs)(`div`,{className:`flex flex-col gap-y-0.5`,children:[(0,o.jsx)(`p`,{className:`text-text-positive line-clamp-1 text-sm`,children:e.name}),(0,o.jsx)(`p`,{className:`text-text-positive-muted text-xs`,children:(0,a.formatBytes)(e.size)})]}),i?(0,o.jsx)(n.t,{value:i}):null]})]}),(0,o.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,o.jsxs)(t.t,{type:`button`,variant:`ghost`,color:`secondary`,size:`icon`,className:`size-7`,onClick:s,children:[(0,o.jsx)(r.Trash2,{size:16,className:`text-text-positive-muted`,"aria-hidden":`true`}),(0,o.jsx)(`span`,{className:`sr-only`,children:`Remove file`})]})})]})}function f(e){return`preview`in e&&typeof e.preview==`string`}function p({file:e}){return e.type.startsWith(`image/`)?(0,o.jsx)(`img`,{src:e.preview,className:`border-border aspect-square size-10 shrink-0 rounded border object-cover object-top shadow-sm`}):(0,o.jsx)(r.FileText,{className:`text-text-positive-muted size-10 border`,"aria-hidden":`true`})}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return u}});
|
|
3
|
+
//# sourceMappingURL=file-uploader-BM0x9VBh.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-uploader-BM0x9VBh.cjs","names":["Dropzone","Upload","Image","Trash2","Progress","Button","FileText"],"sources":["../packages/components/ui/file-uploader.tsx"],"sourcesContent":["'use client';\nimport { useCallback, useEffect } from 'react';\nimport Dropzone, { type DropzoneProps, type FileRejection } from 'react-dropzone';\nimport { useControllableState } from '@customafk/react-toolkit/hooks/useControllableState';\nimport { cn, formatBytes } from '@customafk/react-toolkit/utils';\n\nimport { FileText, Image, Trash2, Upload } from 'lucide-react';\nimport { toast } from 'sonner';\n\nimport { Button } from '@/components/ui/button';\nimport { Progress } from '@/components/ui/progress';\n\n/**\n * Props for the FileUploader component.\n *\n * @example\n * ```tsx\n * import { FileUploader } from '@customafk/lunas-ui/ui/file-uploader';\n *\n * <FileUploader\n * accept={{ 'image/*': [] }}\n * maxSize={1024 * 1024 * 5}\n * maxFileCount={3}\n * multiple\n * onUpload={async (files) => { await uploadFiles(files); }}\n * />\n * ```\n */\ninterface FileUploaderProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Value of the uploader.\n * @type File[]\n * @default undefined\n * @example value={files}\n */\n value?: File[];\n\n /**\n * Function to be called when the value changes.\n * @type (files: File[]) => void\n * @default undefined\n * @example onValueChange={(files) => setFiles(files)}\n */\n onValueChange?: (files: File[]) => void;\n\n /**\n * Function to be called when files are uploaded.\n * @type (files: File[]) => Promise<void>\n * @default undefined\n * @example onUpload={(files) => uploadFiles(files)}\n */\n onUpload?: (files: File[]) => Promise<void>;\n\n /**\n * Progress of the uploaded files.\n * @type Record<string, number> | undefined\n * @default undefined\n * @example progresses={{ \"file1.png\": 50 }}\n */\n progresses?: Record<string, number>;\n\n /**\n * Accepted file types for the uploader.\n * @type { [key: string]: string[]}\n * @default\n * ```ts\n * { \"image/*\": [] }\n * ```\n * @example accept={[\"image/png\", \"image/jpeg\"]}\n */\n accept?: DropzoneProps['accept'];\n\n /**\n * Maximum file size for the uploader.\n * @type number | undefined\n * @default 1024 * 1024 * 2 // 2MB\n * @example maxSize={1024 * 1024 * 2} // 2MB\n */\n maxSize?: DropzoneProps['maxSize'];\n\n /**\n * Maximum number of files for the uploader.\n * @type number | undefined\n * @default 1\n * @example maxFileCount={4}\n */\n maxFileCount?: DropzoneProps['maxFiles'];\n\n /**\n * Whether the uploader should accept multiple files.\n * @type boolean\n * @default false\n * @example multiple\n */\n multiple?: boolean;\n\n /**\n * Whether the uploader is disabled.\n * @type boolean\n * @default false\n * @example disabled\n */\n disabled?: boolean;\n\n /**\n * Whether to show the instructional drag-and-drop text inside the drop zone.\n * @default true\n */\n showText?: boolean;\n /** Size in pixels for the upload icon. */\n iconSize?: number;\n}\n\n/**\n * A drag-and-drop file upload zone that manages file selection, validation, preview generation, and optional async upload with progress tracking.\n */\nexport function FileUploader(props: FileUploaderProps) {\n const {\n value: valueProp,\n onValueChange,\n onUpload,\n progresses,\n accept = {\n 'image/*': [],\n },\n maxSize = 1024 * 1024 * 2,\n maxFileCount = 1,\n multiple = false,\n disabled = false,\n showText = true,\n iconSize,\n className,\n ...dropzoneProps\n } = props;\n\n const [files, setFiles] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n });\n\n const onDrop = useCallback(\n (acceptedFiles: File[], rejectedFiles: FileRejection[]) => {\n if (!multiple && maxFileCount === 1 && acceptedFiles.length > 1) {\n toast.error('Cannot upload more than 1 file at a time');\n\n return;\n }\n\n if ((files?.length ?? 0) + acceptedFiles.length > maxFileCount) {\n toast.error(`Cannot upload more than ${maxFileCount} files`);\n return;\n }\n\n const newFiles = acceptedFiles.map(file =>\n Object.assign(file, {\n preview: URL.createObjectURL(file),\n })\n );\n\n const updatedFiles = files ? [...files, ...newFiles] : newFiles;\n\n setFiles(updatedFiles);\n\n if (rejectedFiles.length > 0) {\n rejectedFiles.forEach(({ file }) => {\n toast.error(`File ${file.name} was rejected`);\n });\n }\n\n if (onUpload && updatedFiles.length > 0 && updatedFiles.length <= maxFileCount) {\n const target = updatedFiles.length > 0 ? `${updatedFiles.length} files` : `file`;\n\n onUpload(updatedFiles).then(() => {\n setFiles([]);\n toast(`${target} uploaded`);\n });\n }\n },\n\n [files, maxFileCount, multiple, onUpload, setFiles]\n );\n\n function onRemove(index: number) {\n if (!files) return;\n\n if (isFileWithPreview(files[index])) {\n URL.revokeObjectURL(files[index].preview);\n }\n\n const newFiles = files.filter((_, i) => i !== index);\n setFiles(newFiles);\n onValueChange?.(newFiles);\n }\n\n // Revoke preview url when component unmounts\n useEffect(() => {\n return () => {\n if (!files) return;\n files.forEach(file => {\n if (isFileWithPreview(file)) {\n URL.revokeObjectURL(file.preview);\n }\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const isDisabled = disabled || (files?.length ?? 0) >= maxFileCount;\n\n return (\n <div className=\"relative flex w-full flex-col gap-6\">\n <Dropzone onDrop={onDrop} accept={accept} maxSize={maxSize} maxFiles={maxFileCount} multiple={maxFileCount > 1 || multiple} disabled={isDisabled}>\n {({ getRootProps, getInputProps, isDragActive }) => (\n <div\n {...getRootProps()}\n className={cn(\n 'group',\n 'border-border-weak',\n 'hover:bg-border-weak/20',\n 'relative grid h-52 w-full cursor-pointer place-items-center rounded-lg border-2 border-dashed px-5 py-2.5 text-center transition',\n 'ring-offset-background',\n 'focus-visible:ring-primary-weak',\n 'focus-visible:ring-2',\n 'focus-visible:ring-offset-2',\n 'focus-visible:outline-hidden',\n isDragActive && 'border-border-primary-strong bg-border-weak/40',\n isDisabled && 'pointer-events-none opacity-60',\n className\n )}\n {...dropzoneProps}\n >\n <input {...getInputProps()} />\n {isDragActive ? (\n <div className=\"flex flex-col items-center justify-center gap-4 sm:px-5\">\n <div className=\"rounded-full border border-dashed p-3\">\n <Upload className=\"text-text-positive-muted size-7\" aria-hidden=\"true\" />\n </div>\n <p className=\"text-text-positive-muted font-medium\">Drop the files here</p>\n </div>\n ) : (\n <div className=\"flex flex-col items-center justify-center gap-4 sm:px-5\">\n <div className=\"rounded-full border border-dashed p-3\">\n <Upload size={iconSize || 24} className=\"text-muted-foreground\" aria-hidden=\"true\" />\n </div>\n {showText && (\n <div className=\"flex flex-col gap-px\">\n <p className=\"text-text-positive-weak text-xs font-medium\">Drag {`'n'`} drop files here, or click to select files</p>\n <p className=\"text-text-positive-muted text-xs\">\n You can upload\n {maxFileCount > 1\n ? ` ${maxFileCount === Infinity ? 'multiple' : maxFileCount}\n files (up to ${formatBytes(maxSize)} each)`\n : ` a file with ${formatBytes(maxSize)}`}\n </p>\n </div>\n )}\n </div>\n )}\n </div>\n )}\n </Dropzone>\n {files?.length ? (\n <div className=\"h-fit w-full overflow-y-auto\">\n <div className=\"flex items-center justify-between px-3 py-2.5\">\n <div className=\"text-text-positive-weak flex items-center gap-1\">\n <Image size={16} aria-hidden=\"true\" />\n <p className=\"text-sm\">Ảnh đã tải lên ({files.length})</p>\n </div>\n <button\n className=\"hover:text-text-positive text-text-positive-muted flex cursor-pointer items-center gap-1 transition-colors duration-200\"\n onClick={() => {\n if (!files) return;\n files.forEach(file => {\n if (!isFileWithPreview(file)) return;\n URL.revokeObjectURL(file.preview);\n });\n setFiles([]);\n onValueChange?.([]);\n }}\n >\n <Trash2 size={16} aria-hidden=\"true\" />\n <p className=\"text-sm\">Xóa tất cả</p>\n </button>\n </div>\n <div className=\"flex flex-col gap-2.5\">\n {files?.map((file, index) => (\n <FileCard key={index} file={file} onRemove={() => onRemove(index)} progress={progresses?.[file.name]} />\n ))}\n </div>\n </div>\n ) : null}\n </div>\n );\n}\n\ninterface FileCardProps {\n file: File;\n onRemove: () => void;\n progress?: number;\n}\n\nfunction FileCard({ file, progress, onRemove }: FileCardProps) {\n return (\n <div className=\"border-border-weak hover:border-border relative flex items-center gap-4 rounded-md border py-2 pr-3 pl-2 shadow-xs transition-colors\">\n <div className=\"flex flex-1 gap-2.5\">\n {isFileWithPreview(file) ? <FilePreview file={file} /> : null}\n <div className=\"flex w-full flex-col gap-2\">\n <div className=\"flex flex-col gap-y-0.5\">\n <p className=\"text-text-positive line-clamp-1 text-sm\">{file.name}</p>\n <p className=\"text-text-positive-muted text-xs\">{formatBytes(file.size)}</p>\n </div>\n {progress ? <Progress value={progress} /> : null}\n </div>\n </div>\n <div className=\"flex items-center gap-2\">\n <Button type=\"button\" variant=\"ghost\" color=\"secondary\" size=\"icon\" className=\"size-7\" onClick={onRemove}>\n <Trash2 size={16} className=\"text-text-positive-muted\" aria-hidden=\"true\" />\n <span className=\"sr-only\">Remove file</span>\n </Button>\n </div>\n </div>\n );\n}\n\nfunction isFileWithPreview(file: File): file is File & { preview: string } {\n return 'preview' in file && typeof file.preview === 'string';\n}\n\ninterface FilePreviewProps {\n file: File & { preview: string };\n}\n\nfunction FilePreview({ file }: FilePreviewProps) {\n if (file.type.startsWith('image/')) {\n return <img src={file.preview} className=\"border-border aspect-square size-10 shrink-0 rounded border object-cover object-top shadow-sm\" />;\n }\n\n return <FileText className=\"text-text-positive-muted size-10 border\" aria-hidden=\"true\" />;\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{t as e}from"./button-CCVJTHBI.mjs";import{t}from"./progress-RvyBMsxb.mjs";import{FileText as n,Image as r,Trash2 as i,Upload as a}from"lucide-react";import{useCallback as o,useEffect as s}from"react";import{cn as c,formatBytes as l}from"@customafk/react-toolkit/utils";import{jsx as u,jsxs as d}from"react/jsx-runtime";import f from"react-dropzone";import{useControllableState as p}from"@customafk/react-toolkit/hooks/useControllableState";import{toast as m}from"sonner";function h(e){let{value:t,onValueChange:n,onUpload:h,progresses:v,accept:y={"image/*":[]},maxSize:b=1024*1024*2,maxFileCount:x=1,multiple:S=!1,disabled:C=!1,showText:w=!0,iconSize:T,className:E,...D}=e,[O,k]=p({prop:t,onChange:n}),A=o((e,t)=>{if(!S&&x===1&&e.length>1){m.error(`Cannot upload more than 1 file at a time`);return}if((O?.length??0)+e.length>x){m.error(`Cannot upload more than ${x} files`);return}let n=e.map(e=>Object.assign(e,{preview:URL.createObjectURL(e)})),r=O?[...O,...n]:n;if(k(r),t.length>0&&t.forEach(({file:e})=>{m.error(`File ${e.name} was rejected`)}),h&&r.length>0&&r.length<=x){let e=r.length>0?`${r.length} files`:`file`;h(r).then(()=>{k([]),m(`${e} uploaded`)})}},[O,x,S,h,k]);function j(e){if(!O)return;_(O[e])&&URL.revokeObjectURL(O[e].preview);let t=O.filter((t,n)=>n!==e);k(t),n?.(t)}s(()=>()=>{O&&O.forEach(e=>{_(e)&&URL.revokeObjectURL(e.preview)})},[]);let M=C||(O?.length??0)>=x;return d(`div`,{className:`relative flex w-full flex-col gap-6`,children:[u(f,{onDrop:A,accept:y,maxSize:b,maxFiles:x,multiple:x>1||S,disabled:M,children:({getRootProps:e,getInputProps:t,isDragActive:n})=>d(`div`,{...e(),className:c(`group`,`border-border-weak`,`hover:bg-border-weak/20`,`relative grid h-52 w-full cursor-pointer place-items-center rounded-lg border-2 border-dashed px-5 py-2.5 text-center transition`,`ring-offset-background`,`focus-visible:ring-primary-weak`,`focus-visible:ring-2`,`focus-visible:ring-offset-2`,`focus-visible:outline-hidden`,n&&`border-border-primary-strong bg-border-weak/40`,M&&`pointer-events-none opacity-60`,E),...D,children:[u(`input`,{...t()}),n?d(`div`,{className:`flex flex-col items-center justify-center gap-4 sm:px-5`,children:[u(`div`,{className:`rounded-full border border-dashed p-3`,children:u(a,{className:`text-text-positive-muted size-7`,"aria-hidden":`true`})}),u(`p`,{className:`text-text-positive-muted font-medium`,children:`Drop the files here`})]}):d(`div`,{className:`flex flex-col items-center justify-center gap-4 sm:px-5`,children:[u(`div`,{className:`rounded-full border border-dashed p-3`,children:u(a,{size:T||24,className:`text-muted-foreground`,"aria-hidden":`true`})}),w&&d(`div`,{className:`flex flex-col gap-px`,children:[d(`p`,{className:`text-text-positive-weak text-xs font-medium`,children:[`Drag `,`'n'`,` drop files here, or click to select files`]}),d(`p`,{className:`text-text-positive-muted text-xs`,children:[`You can upload`,x>1?` ${x===1/0?`multiple`:x}
|
|
2
|
+
files (up to ${l(b)} each)`:` a file with ${l(b)}`]})]})]})]})}),O?.length?d(`div`,{className:`h-fit w-full overflow-y-auto`,children:[d(`div`,{className:`flex items-center justify-between px-3 py-2.5`,children:[d(`div`,{className:`text-text-positive-weak flex items-center gap-1`,children:[u(r,{size:16,"aria-hidden":`true`}),d(`p`,{className:`text-sm`,children:[`Ảnh đã tải lên (`,O.length,`)`]})]}),d(`button`,{className:`hover:text-text-positive text-text-positive-muted flex cursor-pointer items-center gap-1 transition-colors duration-200`,onClick:()=>{O&&(O.forEach(e=>{_(e)&&URL.revokeObjectURL(e.preview)}),k([]),n?.([]))},children:[u(i,{size:16,"aria-hidden":`true`}),u(`p`,{className:`text-sm`,children:`Xóa tất cả`})]})]}),u(`div`,{className:`flex flex-col gap-2.5`,children:O?.map((e,t)=>u(g,{file:e,onRemove:()=>j(t),progress:v?.[e.name]},t))})]}):null]})}function g({file:n,progress:r,onRemove:a}){return d(`div`,{className:`border-border-weak hover:border-border relative flex items-center gap-4 rounded-md border py-2 pr-3 pl-2 shadow-xs transition-colors`,children:[d(`div`,{className:`flex flex-1 gap-2.5`,children:[_(n)?u(v,{file:n}):null,d(`div`,{className:`flex w-full flex-col gap-2`,children:[d(`div`,{className:`flex flex-col gap-y-0.5`,children:[u(`p`,{className:`text-text-positive line-clamp-1 text-sm`,children:n.name}),u(`p`,{className:`text-text-positive-muted text-xs`,children:l(n.size)})]}),r?u(t,{value:r}):null]})]}),u(`div`,{className:`flex items-center gap-2`,children:d(e,{type:`button`,variant:`ghost`,color:`secondary`,size:`icon`,className:`size-7`,onClick:a,children:[u(i,{size:16,className:`text-text-positive-muted`,"aria-hidden":`true`}),u(`span`,{className:`sr-only`,children:`Remove file`})]})})]})}function _(e){return`preview`in e&&typeof e.preview==`string`}function v({file:e}){return e.type.startsWith(`image/`)?u(`img`,{src:e.preview,className:`border-border aspect-square size-10 shrink-0 rounded border object-cover object-top shadow-sm`}):u(n,{className:`text-text-positive-muted size-10 border`,"aria-hidden":`true`})}export{h as t};
|
|
3
|
+
//# sourceMappingURL=file-uploader-BTWXTBeQ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-uploader-BTWXTBeQ.mjs","names":[],"sources":["../packages/components/ui/file-uploader.tsx"],"sourcesContent":["'use client';\nimport { useCallback, useEffect } from 'react';\nimport Dropzone, { type DropzoneProps, type FileRejection } from 'react-dropzone';\nimport { useControllableState } from '@customafk/react-toolkit/hooks/useControllableState';\nimport { cn, formatBytes } from '@customafk/react-toolkit/utils';\n\nimport { FileText, Image, Trash2, Upload } from 'lucide-react';\nimport { toast } from 'sonner';\n\nimport { Button } from '@/components/ui/button';\nimport { Progress } from '@/components/ui/progress';\n\n/**\n * Props for the FileUploader component.\n *\n * @example\n * ```tsx\n * import { FileUploader } from '@customafk/lunas-ui/ui/file-uploader';\n *\n * <FileUploader\n * accept={{ 'image/*': [] }}\n * maxSize={1024 * 1024 * 5}\n * maxFileCount={3}\n * multiple\n * onUpload={async (files) => { await uploadFiles(files); }}\n * />\n * ```\n */\ninterface FileUploaderProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Value of the uploader.\n * @type File[]\n * @default undefined\n * @example value={files}\n */\n value?: File[];\n\n /**\n * Function to be called when the value changes.\n * @type (files: File[]) => void\n * @default undefined\n * @example onValueChange={(files) => setFiles(files)}\n */\n onValueChange?: (files: File[]) => void;\n\n /**\n * Function to be called when files are uploaded.\n * @type (files: File[]) => Promise<void>\n * @default undefined\n * @example onUpload={(files) => uploadFiles(files)}\n */\n onUpload?: (files: File[]) => Promise<void>;\n\n /**\n * Progress of the uploaded files.\n * @type Record<string, number> | undefined\n * @default undefined\n * @example progresses={{ \"file1.png\": 50 }}\n */\n progresses?: Record<string, number>;\n\n /**\n * Accepted file types for the uploader.\n * @type { [key: string]: string[]}\n * @default\n * ```ts\n * { \"image/*\": [] }\n * ```\n * @example accept={[\"image/png\", \"image/jpeg\"]}\n */\n accept?: DropzoneProps['accept'];\n\n /**\n * Maximum file size for the uploader.\n * @type number | undefined\n * @default 1024 * 1024 * 2 // 2MB\n * @example maxSize={1024 * 1024 * 2} // 2MB\n */\n maxSize?: DropzoneProps['maxSize'];\n\n /**\n * Maximum number of files for the uploader.\n * @type number | undefined\n * @default 1\n * @example maxFileCount={4}\n */\n maxFileCount?: DropzoneProps['maxFiles'];\n\n /**\n * Whether the uploader should accept multiple files.\n * @type boolean\n * @default false\n * @example multiple\n */\n multiple?: boolean;\n\n /**\n * Whether the uploader is disabled.\n * @type boolean\n * @default false\n * @example disabled\n */\n disabled?: boolean;\n\n /**\n * Whether to show the instructional drag-and-drop text inside the drop zone.\n * @default true\n */\n showText?: boolean;\n /** Size in pixels for the upload icon. */\n iconSize?: number;\n}\n\n/**\n * A drag-and-drop file upload zone that manages file selection, validation, preview generation, and optional async upload with progress tracking.\n */\nexport function FileUploader(props: FileUploaderProps) {\n const {\n value: valueProp,\n onValueChange,\n onUpload,\n progresses,\n accept = {\n 'image/*': [],\n },\n maxSize = 1024 * 1024 * 2,\n maxFileCount = 1,\n multiple = false,\n disabled = false,\n showText = true,\n iconSize,\n className,\n ...dropzoneProps\n } = props;\n\n const [files, setFiles] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n });\n\n const onDrop = useCallback(\n (acceptedFiles: File[], rejectedFiles: FileRejection[]) => {\n if (!multiple && maxFileCount === 1 && acceptedFiles.length > 1) {\n toast.error('Cannot upload more than 1 file at a time');\n\n return;\n }\n\n if ((files?.length ?? 0) + acceptedFiles.length > maxFileCount) {\n toast.error(`Cannot upload more than ${maxFileCount} files`);\n return;\n }\n\n const newFiles = acceptedFiles.map(file =>\n Object.assign(file, {\n preview: URL.createObjectURL(file),\n })\n );\n\n const updatedFiles = files ? [...files, ...newFiles] : newFiles;\n\n setFiles(updatedFiles);\n\n if (rejectedFiles.length > 0) {\n rejectedFiles.forEach(({ file }) => {\n toast.error(`File ${file.name} was rejected`);\n });\n }\n\n if (onUpload && updatedFiles.length > 0 && updatedFiles.length <= maxFileCount) {\n const target = updatedFiles.length > 0 ? `${updatedFiles.length} files` : `file`;\n\n onUpload(updatedFiles).then(() => {\n setFiles([]);\n toast(`${target} uploaded`);\n });\n }\n },\n\n [files, maxFileCount, multiple, onUpload, setFiles]\n );\n\n function onRemove(index: number) {\n if (!files) return;\n\n if (isFileWithPreview(files[index])) {\n URL.revokeObjectURL(files[index].preview);\n }\n\n const newFiles = files.filter((_, i) => i !== index);\n setFiles(newFiles);\n onValueChange?.(newFiles);\n }\n\n // Revoke preview url when component unmounts\n useEffect(() => {\n return () => {\n if (!files) return;\n files.forEach(file => {\n if (isFileWithPreview(file)) {\n URL.revokeObjectURL(file.preview);\n }\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const isDisabled = disabled || (files?.length ?? 0) >= maxFileCount;\n\n return (\n <div className=\"relative flex w-full flex-col gap-6\">\n <Dropzone onDrop={onDrop} accept={accept} maxSize={maxSize} maxFiles={maxFileCount} multiple={maxFileCount > 1 || multiple} disabled={isDisabled}>\n {({ getRootProps, getInputProps, isDragActive }) => (\n <div\n {...getRootProps()}\n className={cn(\n 'group',\n 'border-border-weak',\n 'hover:bg-border-weak/20',\n 'relative grid h-52 w-full cursor-pointer place-items-center rounded-lg border-2 border-dashed px-5 py-2.5 text-center transition',\n 'ring-offset-background',\n 'focus-visible:ring-primary-weak',\n 'focus-visible:ring-2',\n 'focus-visible:ring-offset-2',\n 'focus-visible:outline-hidden',\n isDragActive && 'border-border-primary-strong bg-border-weak/40',\n isDisabled && 'pointer-events-none opacity-60',\n className\n )}\n {...dropzoneProps}\n >\n <input {...getInputProps()} />\n {isDragActive ? (\n <div className=\"flex flex-col items-center justify-center gap-4 sm:px-5\">\n <div className=\"rounded-full border border-dashed p-3\">\n <Upload className=\"text-text-positive-muted size-7\" aria-hidden=\"true\" />\n </div>\n <p className=\"text-text-positive-muted font-medium\">Drop the files here</p>\n </div>\n ) : (\n <div className=\"flex flex-col items-center justify-center gap-4 sm:px-5\">\n <div className=\"rounded-full border border-dashed p-3\">\n <Upload size={iconSize || 24} className=\"text-muted-foreground\" aria-hidden=\"true\" />\n </div>\n {showText && (\n <div className=\"flex flex-col gap-px\">\n <p className=\"text-text-positive-weak text-xs font-medium\">Drag {`'n'`} drop files here, or click to select files</p>\n <p className=\"text-text-positive-muted text-xs\">\n You can upload\n {maxFileCount > 1\n ? ` ${maxFileCount === Infinity ? 'multiple' : maxFileCount}\n files (up to ${formatBytes(maxSize)} each)`\n : ` a file with ${formatBytes(maxSize)}`}\n </p>\n </div>\n )}\n </div>\n )}\n </div>\n )}\n </Dropzone>\n {files?.length ? (\n <div className=\"h-fit w-full overflow-y-auto\">\n <div className=\"flex items-center justify-between px-3 py-2.5\">\n <div className=\"text-text-positive-weak flex items-center gap-1\">\n <Image size={16} aria-hidden=\"true\" />\n <p className=\"text-sm\">Ảnh đã tải lên ({files.length})</p>\n </div>\n <button\n className=\"hover:text-text-positive text-text-positive-muted flex cursor-pointer items-center gap-1 transition-colors duration-200\"\n onClick={() => {\n if (!files) return;\n files.forEach(file => {\n if (!isFileWithPreview(file)) return;\n URL.revokeObjectURL(file.preview);\n });\n setFiles([]);\n onValueChange?.([]);\n }}\n >\n <Trash2 size={16} aria-hidden=\"true\" />\n <p className=\"text-sm\">Xóa tất cả</p>\n </button>\n </div>\n <div className=\"flex flex-col gap-2.5\">\n {files?.map((file, index) => (\n <FileCard key={index} file={file} onRemove={() => onRemove(index)} progress={progresses?.[file.name]} />\n ))}\n </div>\n </div>\n ) : null}\n </div>\n );\n}\n\ninterface FileCardProps {\n file: File;\n onRemove: () => void;\n progress?: number;\n}\n\nfunction FileCard({ file, progress, onRemove }: FileCardProps) {\n return (\n <div className=\"border-border-weak hover:border-border relative flex items-center gap-4 rounded-md border py-2 pr-3 pl-2 shadow-xs transition-colors\">\n <div className=\"flex flex-1 gap-2.5\">\n {isFileWithPreview(file) ? <FilePreview file={file} /> : null}\n <div className=\"flex w-full flex-col gap-2\">\n <div className=\"flex flex-col gap-y-0.5\">\n <p className=\"text-text-positive line-clamp-1 text-sm\">{file.name}</p>\n <p className=\"text-text-positive-muted text-xs\">{formatBytes(file.size)}</p>\n </div>\n {progress ? <Progress value={progress} /> : null}\n </div>\n </div>\n <div className=\"flex items-center gap-2\">\n <Button type=\"button\" variant=\"ghost\" color=\"secondary\" size=\"icon\" className=\"size-7\" onClick={onRemove}>\n <Trash2 size={16} className=\"text-text-positive-muted\" aria-hidden=\"true\" />\n <span className=\"sr-only\">Remove file</span>\n </Button>\n </div>\n </div>\n );\n}\n\nfunction isFileWithPreview(file: File): file is File & { preview: string } {\n return 'preview' in file && typeof file.preview === 'string';\n}\n\ninterface FilePreviewProps {\n file: File & { preview: string };\n}\n\nfunction FilePreview({ file }: FilePreviewProps) {\n if (file.type.startsWith('image/')) {\n return <img src={file.preview} className=\"border-border aspect-square size-10 shrink-0 rounded border object-cover object-top shadow-sm\" />;\n }\n\n return <FileText className=\"text-text-positive-muted size-10 border\" aria-hidden=\"true\" />;\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import * as react253 from "react";
|
|
2
|
+
import { DropzoneProps } from "react-dropzone";
|
|
3
|
+
|
|
4
|
+
//#region packages/components/ui/file-uploader.d.ts
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Props for the FileUploader component.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* import { FileUploader } from '@customafk/lunas-ui/ui/file-uploader';
|
|
12
|
+
*
|
|
13
|
+
* <FileUploader
|
|
14
|
+
* accept={{ 'image/*': [] }}
|
|
15
|
+
* maxSize={1024 * 1024 * 5}
|
|
16
|
+
* maxFileCount={3}
|
|
17
|
+
* multiple
|
|
18
|
+
* onUpload={async (files) => { await uploadFiles(files); }}
|
|
19
|
+
* />
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
interface FileUploaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
23
|
+
/**
|
|
24
|
+
* Value of the uploader.
|
|
25
|
+
* @type File[]
|
|
26
|
+
* @default undefined
|
|
27
|
+
* @example value={files}
|
|
28
|
+
*/
|
|
29
|
+
value?: File[];
|
|
30
|
+
/**
|
|
31
|
+
* Function to be called when the value changes.
|
|
32
|
+
* @type (files: File[]) => void
|
|
33
|
+
* @default undefined
|
|
34
|
+
* @example onValueChange={(files) => setFiles(files)}
|
|
35
|
+
*/
|
|
36
|
+
onValueChange?: (files: File[]) => void;
|
|
37
|
+
/**
|
|
38
|
+
* Function to be called when files are uploaded.
|
|
39
|
+
* @type (files: File[]) => Promise<void>
|
|
40
|
+
* @default undefined
|
|
41
|
+
* @example onUpload={(files) => uploadFiles(files)}
|
|
42
|
+
*/
|
|
43
|
+
onUpload?: (files: File[]) => Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Progress of the uploaded files.
|
|
46
|
+
* @type Record<string, number> | undefined
|
|
47
|
+
* @default undefined
|
|
48
|
+
* @example progresses={{ "file1.png": 50 }}
|
|
49
|
+
*/
|
|
50
|
+
progresses?: Record<string, number>;
|
|
51
|
+
/**
|
|
52
|
+
* Accepted file types for the uploader.
|
|
53
|
+
* @type { [key: string]: string[]}
|
|
54
|
+
* @default
|
|
55
|
+
* ```ts
|
|
56
|
+
* { "image/*": [] }
|
|
57
|
+
* ```
|
|
58
|
+
* @example accept={["image/png", "image/jpeg"]}
|
|
59
|
+
*/
|
|
60
|
+
accept?: DropzoneProps['accept'];
|
|
61
|
+
/**
|
|
62
|
+
* Maximum file size for the uploader.
|
|
63
|
+
* @type number | undefined
|
|
64
|
+
* @default 1024 * 1024 * 2 // 2MB
|
|
65
|
+
* @example maxSize={1024 * 1024 * 2} // 2MB
|
|
66
|
+
*/
|
|
67
|
+
maxSize?: DropzoneProps['maxSize'];
|
|
68
|
+
/**
|
|
69
|
+
* Maximum number of files for the uploader.
|
|
70
|
+
* @type number | undefined
|
|
71
|
+
* @default 1
|
|
72
|
+
* @example maxFileCount={4}
|
|
73
|
+
*/
|
|
74
|
+
maxFileCount?: DropzoneProps['maxFiles'];
|
|
75
|
+
/**
|
|
76
|
+
* Whether the uploader should accept multiple files.
|
|
77
|
+
* @type boolean
|
|
78
|
+
* @default false
|
|
79
|
+
* @example multiple
|
|
80
|
+
*/
|
|
81
|
+
multiple?: boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Whether the uploader is disabled.
|
|
84
|
+
* @type boolean
|
|
85
|
+
* @default false
|
|
86
|
+
* @example disabled
|
|
87
|
+
*/
|
|
88
|
+
disabled?: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Whether to show the instructional drag-and-drop text inside the drop zone.
|
|
91
|
+
* @default true
|
|
92
|
+
*/
|
|
93
|
+
showText?: boolean;
|
|
94
|
+
/** Size in pixels for the upload icon. */
|
|
95
|
+
iconSize?: number;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* A drag-and-drop file upload zone that manages file selection, validation, preview generation, and optional async upload with progress tracking.
|
|
99
|
+
*/
|
|
100
|
+
declare function FileUploader(props: FileUploaderProps): react253.JSX.Element;
|
|
101
|
+
//#endregion
|
|
102
|
+
export { FileUploader as t };
|
|
103
|
+
//# sourceMappingURL=file-uploader-Bcq3zzxa.d.cts.map
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import * as react132 from "react";
|
|
2
|
+
import { DropzoneProps } from "react-dropzone";
|
|
3
|
+
|
|
4
|
+
//#region packages/components/ui/file-uploader.d.ts
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Props for the FileUploader component.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* import { FileUploader } from '@customafk/lunas-ui/ui/file-uploader';
|
|
12
|
+
*
|
|
13
|
+
* <FileUploader
|
|
14
|
+
* accept={{ 'image/*': [] }}
|
|
15
|
+
* maxSize={1024 * 1024 * 5}
|
|
16
|
+
* maxFileCount={3}
|
|
17
|
+
* multiple
|
|
18
|
+
* onUpload={async (files) => { await uploadFiles(files); }}
|
|
19
|
+
* />
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
interface FileUploaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
23
|
+
/**
|
|
24
|
+
* Value of the uploader.
|
|
25
|
+
* @type File[]
|
|
26
|
+
* @default undefined
|
|
27
|
+
* @example value={files}
|
|
28
|
+
*/
|
|
29
|
+
value?: File[];
|
|
30
|
+
/**
|
|
31
|
+
* Function to be called when the value changes.
|
|
32
|
+
* @type (files: File[]) => void
|
|
33
|
+
* @default undefined
|
|
34
|
+
* @example onValueChange={(files) => setFiles(files)}
|
|
35
|
+
*/
|
|
36
|
+
onValueChange?: (files: File[]) => void;
|
|
37
|
+
/**
|
|
38
|
+
* Function to be called when files are uploaded.
|
|
39
|
+
* @type (files: File[]) => Promise<void>
|
|
40
|
+
* @default undefined
|
|
41
|
+
* @example onUpload={(files) => uploadFiles(files)}
|
|
42
|
+
*/
|
|
43
|
+
onUpload?: (files: File[]) => Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Progress of the uploaded files.
|
|
46
|
+
* @type Record<string, number> | undefined
|
|
47
|
+
* @default undefined
|
|
48
|
+
* @example progresses={{ "file1.png": 50 }}
|
|
49
|
+
*/
|
|
50
|
+
progresses?: Record<string, number>;
|
|
51
|
+
/**
|
|
52
|
+
* Accepted file types for the uploader.
|
|
53
|
+
* @type { [key: string]: string[]}
|
|
54
|
+
* @default
|
|
55
|
+
* ```ts
|
|
56
|
+
* { "image/*": [] }
|
|
57
|
+
* ```
|
|
58
|
+
* @example accept={["image/png", "image/jpeg"]}
|
|
59
|
+
*/
|
|
60
|
+
accept?: DropzoneProps['accept'];
|
|
61
|
+
/**
|
|
62
|
+
* Maximum file size for the uploader.
|
|
63
|
+
* @type number | undefined
|
|
64
|
+
* @default 1024 * 1024 * 2 // 2MB
|
|
65
|
+
* @example maxSize={1024 * 1024 * 2} // 2MB
|
|
66
|
+
*/
|
|
67
|
+
maxSize?: DropzoneProps['maxSize'];
|
|
68
|
+
/**
|
|
69
|
+
* Maximum number of files for the uploader.
|
|
70
|
+
* @type number | undefined
|
|
71
|
+
* @default 1
|
|
72
|
+
* @example maxFileCount={4}
|
|
73
|
+
*/
|
|
74
|
+
maxFileCount?: DropzoneProps['maxFiles'];
|
|
75
|
+
/**
|
|
76
|
+
* Whether the uploader should accept multiple files.
|
|
77
|
+
* @type boolean
|
|
78
|
+
* @default false
|
|
79
|
+
* @example multiple
|
|
80
|
+
*/
|
|
81
|
+
multiple?: boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Whether the uploader is disabled.
|
|
84
|
+
* @type boolean
|
|
85
|
+
* @default false
|
|
86
|
+
* @example disabled
|
|
87
|
+
*/
|
|
88
|
+
disabled?: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Whether to show the instructional drag-and-drop text inside the drop zone.
|
|
91
|
+
* @default true
|
|
92
|
+
*/
|
|
93
|
+
showText?: boolean;
|
|
94
|
+
/** Size in pixels for the upload icon. */
|
|
95
|
+
iconSize?: number;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* A drag-and-drop file upload zone that manages file selection, validation, preview generation, and optional async upload with progress tracking.
|
|
99
|
+
*/
|
|
100
|
+
declare function FileUploader(props: FileUploaderProps): react132.JSX.Element;
|
|
101
|
+
//#endregion
|
|
102
|
+
export { FileUploader as t };
|
|
103
|
+
//# sourceMappingURL=file-uploader-nUOkG_fv.d.mts.map
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import * as react187 from "react";
|
|
2
|
+
import { VariantProps } from "class-variance-authority";
|
|
3
|
+
import * as class_variance_authority_types10 from "class-variance-authority/types";
|
|
4
|
+
|
|
5
|
+
//#region packages/components/layouts/flex.d.ts
|
|
6
|
+
declare const flexVariants: (props?: ({
|
|
7
|
+
vertical?: boolean | null | undefined;
|
|
8
|
+
width?: "max" | "min" | "full" | "auto" | "fit" | "screen" | "null" | null | undefined;
|
|
9
|
+
wrap?: boolean | null | undefined;
|
|
10
|
+
margin?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
|
|
11
|
+
padding?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
|
|
12
|
+
gap?: "xs" | "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
|
|
13
|
+
justify?: "center" | "start" | "end" | "between" | "around" | "evenly" | "stretch" | null | undefined;
|
|
14
|
+
align?: "center" | "start" | "end" | "stretch" | "baseline" | null | undefined;
|
|
15
|
+
} & class_variance_authority_types10.ClassProp) | undefined) => string;
|
|
16
|
+
type Props = {
|
|
17
|
+
/** Additional Tailwind classes merged on top of the variant-generated classes. */
|
|
18
|
+
className?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Stacks children vertically (`flex-col`) when `true`, horizontally (`flex-row`) when `false`.
|
|
21
|
+
* @default false
|
|
22
|
+
*/
|
|
23
|
+
vertical?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Controls the width of the flex container.
|
|
26
|
+
* - `'full'` — `w-full`
|
|
27
|
+
* - `'auto'` — `w-auto`
|
|
28
|
+
* - `'fit'` — `w-fit` (default)
|
|
29
|
+
* - `'screen'` — `w-screen`
|
|
30
|
+
* - `'min'` — `w-min`
|
|
31
|
+
* - `'max'` — `w-max`
|
|
32
|
+
* - `'null'` — no width utility applied
|
|
33
|
+
* @default 'fit'
|
|
34
|
+
*/
|
|
35
|
+
width?: 'full' | 'auto' | 'fit' | 'screen' | 'min' | 'max' | 'null';
|
|
36
|
+
/**
|
|
37
|
+
* Allows children to wrap onto multiple lines when `true`.
|
|
38
|
+
* @default true
|
|
39
|
+
*/
|
|
40
|
+
wrap?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Uniform margin applied to the container.
|
|
43
|
+
* - `'none'` — `m-0` (default)
|
|
44
|
+
* - `'sm'` — `m-2`
|
|
45
|
+
* - `'md'` — `m-4`
|
|
46
|
+
* - `'lg'` — `m-6`
|
|
47
|
+
* - `'xl'` — `m-8`
|
|
48
|
+
* @default 'none'
|
|
49
|
+
*/
|
|
50
|
+
margin?: 'sm' | 'md' | 'lg' | 'xl' | 'none';
|
|
51
|
+
/**
|
|
52
|
+
* Uniform padding applied to the container.
|
|
53
|
+
* - `'none'` — `p-0`
|
|
54
|
+
* - `'sm'` — `p-2` (default)
|
|
55
|
+
* - `'md'` — `p-4`
|
|
56
|
+
* - `'lg'` — `p-6`
|
|
57
|
+
* - `'xl'` — `p-8`
|
|
58
|
+
* @default 'sm'
|
|
59
|
+
*/
|
|
60
|
+
padding?: 'sm' | 'md' | 'lg' | 'xl' | 'none';
|
|
61
|
+
/**
|
|
62
|
+
* Gap between child elements.
|
|
63
|
+
* - `'none'` — `gap-0`
|
|
64
|
+
* - `'xs'` — `gap-1` (default)
|
|
65
|
+
* - `'sm'` — `gap-2`
|
|
66
|
+
* - `'md'` — `gap-4`
|
|
67
|
+
* - `'lg'` — `gap-6`
|
|
68
|
+
* - `'xl'` — `gap-8`
|
|
69
|
+
* @default 'xs'
|
|
70
|
+
*/
|
|
71
|
+
gap?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'none';
|
|
72
|
+
/**
|
|
73
|
+
* Justification of children along the main axis (`justify-content`).
|
|
74
|
+
* @default 'start'
|
|
75
|
+
*/
|
|
76
|
+
justify?: 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly' | 'stretch';
|
|
77
|
+
/**
|
|
78
|
+
* Alignment of children along the cross axis (`align-items`).
|
|
79
|
+
* @default 'center'
|
|
80
|
+
*/
|
|
81
|
+
align?: 'start' | 'center' | 'end' | 'baseline' | 'stretch';
|
|
82
|
+
} & VariantProps<typeof flexVariants>;
|
|
83
|
+
/**
|
|
84
|
+
* A flexible, variant-driven flex container built on CVA and TailwindCSS.
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* ```tsx
|
|
88
|
+
* import { Flex } from '@customafk/lunas-ui/layouts/flex';
|
|
89
|
+
*
|
|
90
|
+
* // Horizontal row with centered children and a medium gap
|
|
91
|
+
* <Flex gap="md" justify="between" align="center">
|
|
92
|
+
* <span>Left</span>
|
|
93
|
+
* <span>Right</span>
|
|
94
|
+
* </Flex>
|
|
95
|
+
*
|
|
96
|
+
* // Vertical stack that fills parent width
|
|
97
|
+
* <Flex vertical width="full" gap="sm" padding="md">
|
|
98
|
+
* <p>First item</p>
|
|
99
|
+
* <p>Second item</p>
|
|
100
|
+
* </Flex>
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
declare const Flex: react187.MemoExoticComponent<({
|
|
104
|
+
vertical,
|
|
105
|
+
wrap,
|
|
106
|
+
width,
|
|
107
|
+
margin,
|
|
108
|
+
padding,
|
|
109
|
+
gap,
|
|
110
|
+
justify,
|
|
111
|
+
align,
|
|
112
|
+
className,
|
|
113
|
+
children
|
|
114
|
+
}: React.PropsWithChildren<Props>) => react187.JSX.Element>;
|
|
115
|
+
//#endregion
|
|
116
|
+
export { Flex as t };
|
|
117
|
+
//# sourceMappingURL=flex-BSTiMh2t.d.mts.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{memo as e}from"react";import{cn as t}from"@customafk/react-toolkit/utils";import{cva as n}from"class-variance-authority";import{jsx as r}from"react/jsx-runtime";const i=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`}}),a=e(({vertical:e,wrap:n,width:a,margin:o,padding:s,gap:c,justify:l,align:u,className:d,children:f})=>r(`div`,{className:t(i({vertical:e,width:a,wrap:n,margin:o,padding:s,gap:c,justify:l,align:u,className:d})),children:f}));a.displayName=`Flex`;export{a as t};
|
|
2
|
+
//# sourceMappingURL=flex-Bx9Nmr53.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flex-Bx9Nmr53.mjs","names":[],"sources":["../packages/components/layouts/flex.tsx"],"sourcesContent":["'use client';\nimport { memo } from 'react';\n\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 /** Additional Tailwind classes merged on top of the variant-generated classes. */\n className?: string;\n /**\n * Stacks children vertically (`flex-col`) when `true`, horizontally (`flex-row`) when `false`.\n * @default false\n */\n vertical?: boolean;\n /**\n * Controls the width of the flex container.\n * - `'full'` — `w-full`\n * - `'auto'` — `w-auto`\n * - `'fit'` — `w-fit` (default)\n * - `'screen'` — `w-screen`\n * - `'min'` — `w-min`\n * - `'max'` — `w-max`\n * - `'null'` — no width utility applied\n * @default 'fit'\n */\n width?: 'full' | 'auto' | 'fit' | 'screen' | 'min' | 'max' | 'null';\n /**\n * Allows children to wrap onto multiple lines when `true`.\n * @default true\n */\n wrap?: boolean;\n /**\n * Uniform margin applied to the container.\n * - `'none'` — `m-0` (default)\n * - `'sm'` — `m-2`\n * - `'md'` — `m-4`\n * - `'lg'` — `m-6`\n * - `'xl'` — `m-8`\n * @default 'none'\n */\n margin?: 'sm' | 'md' | 'lg' | 'xl' | 'none';\n /**\n * Uniform padding applied to the container.\n * - `'none'` — `p-0`\n * - `'sm'` — `p-2` (default)\n * - `'md'` — `p-4`\n * - `'lg'` — `p-6`\n * - `'xl'` — `p-8`\n * @default 'sm'\n */\n padding?: 'sm' | 'md' | 'lg' | 'xl' | 'none';\n /**\n * Gap between child elements.\n * - `'none'` — `gap-0`\n * - `'xs'` — `gap-1` (default)\n * - `'sm'` — `gap-2`\n * - `'md'` — `gap-4`\n * - `'lg'` — `gap-6`\n * - `'xl'` — `gap-8`\n * @default 'xs'\n */\n gap?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'none';\n /**\n * Justification of children along the main axis (`justify-content`).\n * @default 'start'\n */\n justify?: 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly' | 'stretch';\n /**\n * Alignment of children along the cross axis (`align-items`).\n * @default 'center'\n */\n align?: 'start' | 'center' | 'end' | 'baseline' | 'stretch';\n} & VariantProps<typeof flexVariants>;\n\n/**\n * A flexible, variant-driven flex container built on CVA and TailwindCSS.\n *\n * @example\n * ```tsx\n * import { Flex } from '@customafk/lunas-ui/layouts/flex';\n *\n * // Horizontal row with centered children and a medium gap\n * <Flex gap=\"md\" justify=\"between\" align=\"center\">\n * <span>Left</span>\n * <span>Right</span>\n * </Flex>\n *\n * // Vertical stack that fills parent width\n * <Flex vertical width=\"full\" gap=\"sm\" padding=\"md\">\n * <p>First item</p>\n * <p>Second item</p>\n * </Flex>\n * ```\n */\nexport const Flex = memo(({ 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});\nFlex.displayName = 'Flex';\n"],"mappings":"wKAOA,MAAM,EAAe,EAAI,CAAC,gBAAiB,UAAU,CAAE,CACrD,SAAU,CACR,SAAU,CACR,KAAM,WACN,MAAO,WACR,CACD,MAAO,CACL,KAAM,SACN,KAAM,SACN,IAAK,QACL,OAAQ,WACR,IAAK,QACL,IAAK,QACL,KAAM,GACP,CACD,KAAM,CACJ,KAAM,YACN,MAAO,cACR,CACD,OAAQ,CACN,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,MACP,CACD,QAAS,CACP,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,MACP,CACD,IAAK,CACH,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,KAAM,QACP,CACD,QAAS,CACP,MAAO,gBACP,OAAQ,iBACR,IAAK,cACL,QAAS,kBACT,OAAQ,iBACR,OAAQ,iBACR,QAAS,kBACV,CACD,MAAO,CACL,MAAO,cACP,OAAQ,eACR,IAAK,YACL,SAAU,iBACV,QAAS,gBACV,CACF,CACD,gBAAiB,CACf,SAAU,GACV,KAAM,GACN,MAAO,MACP,OAAQ,OACR,QAAS,KACT,IAAK,KACL,QAAS,QACT,MAAO,SACR,CACF,CAAC,CA0FW,EAAO,GAAM,CAAE,WAAU,OAAM,QAAO,SAAQ,UAAS,MAAK,UAAS,QAAO,YAAW,cAEhG,EAAC,MAAA,CACC,UAAW,EACT,EAAa,CACX,WACA,QACA,OACA,SACA,UACA,MACA,UACA,QACA,YACD,CAAC,CACH,CAEA,YACG,CAER,CACF,EAAK,YAAc"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import * as react6 from "react";
|
|
2
|
+
import * as class_variance_authority_types0 from "class-variance-authority/types";
|
|
3
|
+
import { VariantProps } from "class-variance-authority";
|
|
4
|
+
|
|
5
|
+
//#region packages/components/layouts/flex.d.ts
|
|
6
|
+
declare const flexVariants: (props?: ({
|
|
7
|
+
vertical?: boolean | null | undefined;
|
|
8
|
+
width?: "max" | "min" | "full" | "auto" | "fit" | "screen" | "null" | null | undefined;
|
|
9
|
+
wrap?: boolean | null | undefined;
|
|
10
|
+
margin?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
|
|
11
|
+
padding?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
|
|
12
|
+
gap?: "xs" | "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
|
|
13
|
+
justify?: "center" | "start" | "end" | "between" | "around" | "evenly" | "stretch" | null | undefined;
|
|
14
|
+
align?: "center" | "start" | "end" | "stretch" | "baseline" | null | undefined;
|
|
15
|
+
} & class_variance_authority_types0.ClassProp) | undefined) => string;
|
|
16
|
+
type Props = {
|
|
17
|
+
/** Additional Tailwind classes merged on top of the variant-generated classes. */
|
|
18
|
+
className?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Stacks children vertically (`flex-col`) when `true`, horizontally (`flex-row`) when `false`.
|
|
21
|
+
* @default false
|
|
22
|
+
*/
|
|
23
|
+
vertical?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Controls the width of the flex container.
|
|
26
|
+
* - `'full'` — `w-full`
|
|
27
|
+
* - `'auto'` — `w-auto`
|
|
28
|
+
* - `'fit'` — `w-fit` (default)
|
|
29
|
+
* - `'screen'` — `w-screen`
|
|
30
|
+
* - `'min'` — `w-min`
|
|
31
|
+
* - `'max'` — `w-max`
|
|
32
|
+
* - `'null'` — no width utility applied
|
|
33
|
+
* @default 'fit'
|
|
34
|
+
*/
|
|
35
|
+
width?: 'full' | 'auto' | 'fit' | 'screen' | 'min' | 'max' | 'null';
|
|
36
|
+
/**
|
|
37
|
+
* Allows children to wrap onto multiple lines when `true`.
|
|
38
|
+
* @default true
|
|
39
|
+
*/
|
|
40
|
+
wrap?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Uniform margin applied to the container.
|
|
43
|
+
* - `'none'` — `m-0` (default)
|
|
44
|
+
* - `'sm'` — `m-2`
|
|
45
|
+
* - `'md'` — `m-4`
|
|
46
|
+
* - `'lg'` — `m-6`
|
|
47
|
+
* - `'xl'` — `m-8`
|
|
48
|
+
* @default 'none'
|
|
49
|
+
*/
|
|
50
|
+
margin?: 'sm' | 'md' | 'lg' | 'xl' | 'none';
|
|
51
|
+
/**
|
|
52
|
+
* Uniform padding applied to the container.
|
|
53
|
+
* - `'none'` — `p-0`
|
|
54
|
+
* - `'sm'` — `p-2` (default)
|
|
55
|
+
* - `'md'` — `p-4`
|
|
56
|
+
* - `'lg'` — `p-6`
|
|
57
|
+
* - `'xl'` — `p-8`
|
|
58
|
+
* @default 'sm'
|
|
59
|
+
*/
|
|
60
|
+
padding?: 'sm' | 'md' | 'lg' | 'xl' | 'none';
|
|
61
|
+
/**
|
|
62
|
+
* Gap between child elements.
|
|
63
|
+
* - `'none'` — `gap-0`
|
|
64
|
+
* - `'xs'` — `gap-1` (default)
|
|
65
|
+
* - `'sm'` — `gap-2`
|
|
66
|
+
* - `'md'` — `gap-4`
|
|
67
|
+
* - `'lg'` — `gap-6`
|
|
68
|
+
* - `'xl'` — `gap-8`
|
|
69
|
+
* @default 'xs'
|
|
70
|
+
*/
|
|
71
|
+
gap?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'none';
|
|
72
|
+
/**
|
|
73
|
+
* Justification of children along the main axis (`justify-content`).
|
|
74
|
+
* @default 'start'
|
|
75
|
+
*/
|
|
76
|
+
justify?: 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly' | 'stretch';
|
|
77
|
+
/**
|
|
78
|
+
* Alignment of children along the cross axis (`align-items`).
|
|
79
|
+
* @default 'center'
|
|
80
|
+
*/
|
|
81
|
+
align?: 'start' | 'center' | 'end' | 'baseline' | 'stretch';
|
|
82
|
+
} & VariantProps<typeof flexVariants>;
|
|
83
|
+
/**
|
|
84
|
+
* A flexible, variant-driven flex container built on CVA and TailwindCSS.
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* ```tsx
|
|
88
|
+
* import { Flex } from '@customafk/lunas-ui/layouts/flex';
|
|
89
|
+
*
|
|
90
|
+
* // Horizontal row with centered children and a medium gap
|
|
91
|
+
* <Flex gap="md" justify="between" align="center">
|
|
92
|
+
* <span>Left</span>
|
|
93
|
+
* <span>Right</span>
|
|
94
|
+
* </Flex>
|
|
95
|
+
*
|
|
96
|
+
* // Vertical stack that fills parent width
|
|
97
|
+
* <Flex vertical width="full" gap="sm" padding="md">
|
|
98
|
+
* <p>First item</p>
|
|
99
|
+
* <p>Second item</p>
|
|
100
|
+
* </Flex>
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
declare const Flex: react6.MemoExoticComponent<({
|
|
104
|
+
vertical,
|
|
105
|
+
wrap,
|
|
106
|
+
width,
|
|
107
|
+
margin,
|
|
108
|
+
padding,
|
|
109
|
+
gap,
|
|
110
|
+
justify,
|
|
111
|
+
align,
|
|
112
|
+
className,
|
|
113
|
+
children
|
|
114
|
+
}: React.PropsWithChildren<Props>) => react6.JSX.Element>;
|
|
115
|
+
//#endregion
|
|
116
|
+
export { Flex as t };
|
|
117
|
+
//# sourceMappingURL=flex-ClUVVSda.d.cts.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require(`./chunk-350yNsax.cjs`);let t=require(`react`),n=require(`@customafk/react-toolkit/utils`),r=require(`class-variance-authority`),i=require(`react/jsx-runtime`);const a=(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`}}),o=(0,t.memo)(({vertical:e,wrap:t,width:r,margin:o,padding:s,gap:c,justify:l,align:u,className:d,children:f})=>(0,i.jsx)(`div`,{className:(0,n.cn)(a({vertical:e,width:r,wrap:t,margin:o,padding:s,gap:c,justify:l,align:u,className:d})),children:f}));o.displayName=`Flex`,Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return o}});
|
|
2
|
+
//# sourceMappingURL=flex-ld7BqXoM.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flex-ld7BqXoM.cjs","names":[],"sources":["../packages/components/layouts/flex.tsx"],"sourcesContent":["'use client';\nimport { memo } from 'react';\n\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 /** Additional Tailwind classes merged on top of the variant-generated classes. */\n className?: string;\n /**\n * Stacks children vertically (`flex-col`) when `true`, horizontally (`flex-row`) when `false`.\n * @default false\n */\n vertical?: boolean;\n /**\n * Controls the width of the flex container.\n * - `'full'` — `w-full`\n * - `'auto'` — `w-auto`\n * - `'fit'` — `w-fit` (default)\n * - `'screen'` — `w-screen`\n * - `'min'` — `w-min`\n * - `'max'` — `w-max`\n * - `'null'` — no width utility applied\n * @default 'fit'\n */\n width?: 'full' | 'auto' | 'fit' | 'screen' | 'min' | 'max' | 'null';\n /**\n * Allows children to wrap onto multiple lines when `true`.\n * @default true\n */\n wrap?: boolean;\n /**\n * Uniform margin applied to the container.\n * - `'none'` — `m-0` (default)\n * - `'sm'` — `m-2`\n * - `'md'` — `m-4`\n * - `'lg'` — `m-6`\n * - `'xl'` — `m-8`\n * @default 'none'\n */\n margin?: 'sm' | 'md' | 'lg' | 'xl' | 'none';\n /**\n * Uniform padding applied to the container.\n * - `'none'` — `p-0`\n * - `'sm'` — `p-2` (default)\n * - `'md'` — `p-4`\n * - `'lg'` — `p-6`\n * - `'xl'` — `p-8`\n * @default 'sm'\n */\n padding?: 'sm' | 'md' | 'lg' | 'xl' | 'none';\n /**\n * Gap between child elements.\n * - `'none'` — `gap-0`\n * - `'xs'` — `gap-1` (default)\n * - `'sm'` — `gap-2`\n * - `'md'` — `gap-4`\n * - `'lg'` — `gap-6`\n * - `'xl'` — `gap-8`\n * @default 'xs'\n */\n gap?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'none';\n /**\n * Justification of children along the main axis (`justify-content`).\n * @default 'start'\n */\n justify?: 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly' | 'stretch';\n /**\n * Alignment of children along the cross axis (`align-items`).\n * @default 'center'\n */\n align?: 'start' | 'center' | 'end' | 'baseline' | 'stretch';\n} & VariantProps<typeof flexVariants>;\n\n/**\n * A flexible, variant-driven flex container built on CVA and TailwindCSS.\n *\n * @example\n * ```tsx\n * import { Flex } from '@customafk/lunas-ui/layouts/flex';\n *\n * // Horizontal row with centered children and a medium gap\n * <Flex gap=\"md\" justify=\"between\" align=\"center\">\n * <span>Left</span>\n * <span>Right</span>\n * </Flex>\n *\n * // Vertical stack that fills parent width\n * <Flex vertical width=\"full\" gap=\"sm\" padding=\"md\">\n * <p>First item</p>\n * <p>Second item</p>\n * </Flex>\n * ```\n */\nexport const Flex = memo(({ 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});\nFlex.displayName = 'Flex';\n"],"mappings":"gLAOA,MAAM,GAAA,EAAA,EAAA,KAAmB,CAAC,gBAAiB,UAAU,CAAE,CACrD,SAAU,CACR,SAAU,CACR,KAAM,WACN,MAAO,WACR,CACD,MAAO,CACL,KAAM,SACN,KAAM,SACN,IAAK,QACL,OAAQ,WACR,IAAK,QACL,IAAK,QACL,KAAM,GACP,CACD,KAAM,CACJ,KAAM,YACN,MAAO,cACR,CACD,OAAQ,CACN,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,MACP,CACD,QAAS,CACP,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,KAAM,MACP,CACD,IAAK,CACH,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,KAAM,QACP,CACD,QAAS,CACP,MAAO,gBACP,OAAQ,iBACR,IAAK,cACL,QAAS,kBACT,OAAQ,iBACR,OAAQ,iBACR,QAAS,kBACV,CACD,MAAO,CACL,MAAO,cACP,OAAQ,eACR,IAAK,YACL,SAAU,iBACV,QAAS,gBACV,CACF,CACD,gBAAiB,CACf,SAAU,GACV,KAAM,GACN,MAAO,MACP,OAAQ,OACR,QAAS,KACT,IAAK,KACL,QAAS,QACT,MAAO,SACR,CACF,CAAC,CA0FW,GAAA,EAAA,EAAA,OAAa,CAAE,WAAU,OAAM,QAAO,SAAQ,UAAS,MAAK,UAAS,QAAO,YAAW,eAEhG,EAAA,EAAA,KAAC,MAAA,CACC,WAAA,EAAA,EAAA,IACE,EAAa,CACX,WACA,QACA,OACA,SACA,UACA,MACA,UACA,QACA,YACD,CAAC,CACH,CAEA,YACG,CAER,CACF,EAAK,YAAc"}
|