@egose/shadcn-theme 0.0.34 → 0.0.36
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/{chunk-DOQ4R2JY.js → chunk-273TIMKM.js} +3 -3
- package/chunk-273TIMKM.js.map +1 -0
- package/chunk-2NMEKWO5.js.map +1 -1
- package/{chunk-I47DMNG6.mjs → chunk-2QMNPBOE.mjs} +2 -2
- package/chunk-2QMNPBOE.mjs.map +1 -0
- package/{chunk-PEKKKPKP.mjs → chunk-2R34M7KI.mjs} +2 -2
- package/chunk-2R34M7KI.mjs.map +1 -0
- package/{chunk-HSTVMOEF.mjs → chunk-2WDZS5E5.mjs} +3 -3
- package/chunk-2WDZS5E5.mjs.map +1 -0
- package/{chunk-JOYUTUGI.mjs → chunk-3BCL4OKX.mjs} +1 -1
- package/chunk-3BCL4OKX.mjs.map +1 -0
- package/{chunk-KSHMXYIU.mjs → chunk-3N4RBIZ5.mjs} +1 -1
- package/chunk-3N4RBIZ5.mjs.map +1 -0
- package/{chunk-IQP24H6D.js → chunk-3T2PPKR3.js} +3 -3
- package/chunk-3T2PPKR3.js.map +1 -0
- package/{chunk-RCRQSAMN.mjs → chunk-3XUAG27Q.mjs} +3 -3
- package/chunk-3XUAG27Q.mjs.map +1 -0
- package/{chunk-MWMCWZEX.js → chunk-3YDM2NYL.js} +7 -7
- package/chunk-3YDM2NYL.js.map +1 -0
- package/chunk-4AT4TZ5X.mjs +57 -0
- package/chunk-4AT4TZ5X.mjs.map +1 -0
- package/{chunk-JV7VIZQG.mjs → chunk-4QOQOMZB.mjs} +4 -4
- package/chunk-4QOQOMZB.mjs.map +1 -0
- package/{chunk-WGV3SHLF.mjs → chunk-4UZN52P7.mjs} +2 -2
- package/chunk-4UZN52P7.mjs.map +1 -0
- package/{chunk-TV4NNZTS.js → chunk-4YSHGGKX.js} +1 -1
- package/chunk-4YSHGGKX.js.map +1 -0
- package/{chunk-PU6NIJDG.mjs → chunk-5RW6O56P.mjs} +2 -2
- package/chunk-5RW6O56P.mjs.map +1 -0
- package/chunk-5SLUBHNN.js.map +1 -1
- package/{chunk-XHXX3QPX.mjs → chunk-5UUXFHU3.mjs} +1 -1
- package/chunk-5UUXFHU3.mjs.map +1 -0
- package/{chunk-BNL6W2VN.js → chunk-6DLWEP62.js} +1 -1
- package/chunk-6DLWEP62.js.map +1 -0
- package/{chunk-B2G2EZ4P.js → chunk-6N4WCMTE.js} +1 -1
- package/chunk-6N4WCMTE.js.map +1 -0
- package/{chunk-VDCTULTM.mjs → chunk-77MASFCZ.mjs} +1 -1
- package/chunk-77MASFCZ.mjs.map +1 -0
- package/{chunk-7IWZI67R.js → chunk-A4FV6TTM.js} +1 -1
- package/chunk-A4FV6TTM.js.map +1 -0
- package/{chunk-XHWWN56S.mjs → chunk-AEILNM5Z.mjs} +2 -2
- package/chunk-AEILNM5Z.mjs.map +1 -0
- package/{chunk-EHZJ525C.js → chunk-AHMBODFJ.js} +8 -8
- package/chunk-AHMBODFJ.js.map +1 -0
- package/{chunk-LWEOYGUO.js → chunk-ALDDTRY5.js} +1 -1
- package/chunk-ALDDTRY5.js.map +1 -0
- package/{chunk-PQ46DNNZ.mjs → chunk-ATPBGNXC.mjs} +4 -4
- package/chunk-ATPBGNXC.mjs.map +1 -0
- package/{chunk-GO4LT2IU.js → chunk-BJFWZFVB.js} +8 -8
- package/chunk-BJFWZFVB.js.map +1 -0
- package/chunk-C7I5QYIS.mjs +12 -0
- package/chunk-C7I5QYIS.mjs.map +1 -0
- package/{chunk-P2MQ6OUG.mjs → chunk-D4IKUOX7.mjs} +2 -2
- package/chunk-D4IKUOX7.mjs.map +1 -0
- package/{chunk-MIFD5265.js → chunk-D6YRUYNR.js} +6 -6
- package/chunk-D6YRUYNR.js.map +1 -0
- package/chunk-DEXWDH66.mjs +45 -0
- package/chunk-DEXWDH66.mjs.map +1 -0
- package/{chunk-MKSF24CS.js → chunk-ETAJO7GC.js} +3 -3
- package/chunk-ETAJO7GC.js.map +1 -0
- package/{chunk-LUOWYBFH.js → chunk-EZKZVF5B.js} +8 -8
- package/chunk-EZKZVF5B.js.map +1 -0
- package/{chunk-3ONILUYO.mjs → chunk-F5XCCSBC.mjs} +1 -1
- package/chunk-F5XCCSBC.mjs.map +1 -0
- package/{chunk-NFHY5TW2.mjs → chunk-FACB3AR5.mjs} +2 -2
- package/chunk-FACB3AR5.mjs.map +1 -0
- package/chunk-FFPUEART.js +75 -0
- package/chunk-FFPUEART.js.map +1 -0
- package/{chunk-GLZZPRFW.js → chunk-GBT36KPP.js} +9 -9
- package/chunk-GBT36KPP.js.map +1 -0
- package/{chunk-CEJOC6JT.mjs → chunk-GPCZDAB6.mjs} +2 -2
- package/chunk-GPCZDAB6.mjs.map +1 -0
- package/chunk-IAJ2ZBSJ.mjs +153 -0
- package/chunk-IAJ2ZBSJ.mjs.map +1 -0
- package/{chunk-P2BPVQXH.js → chunk-IC3ASFKZ.js} +3 -3
- package/chunk-IC3ASFKZ.js.map +1 -0
- package/chunk-ISXL2Q6C.js +55 -0
- package/chunk-ISXL2Q6C.js.map +1 -0
- package/{chunk-7W42BHVK.mjs → chunk-JWENANTO.mjs} +2 -2
- package/chunk-JWENANTO.mjs.map +1 -0
- package/chunk-KKPUOZ6X.mjs +74 -0
- package/chunk-KKPUOZ6X.mjs.map +1 -0
- package/chunk-KKRJRQYZ.js +46 -0
- package/chunk-KKRJRQYZ.js.map +1 -0
- package/chunk-KRYKKQ2X.mjs +54 -0
- package/chunk-KRYKKQ2X.mjs.map +1 -0
- package/{chunk-7SHQOSBJ.js → chunk-L2YIU3M3.js} +10 -10
- package/chunk-L2YIU3M3.js.map +1 -0
- package/{chunk-575K47ZF.js → chunk-L34PA4VZ.js} +6 -6
- package/chunk-L34PA4VZ.js.map +1 -0
- package/{chunk-RPYFLVXV.js → chunk-LE44LDOD.js} +4 -4
- package/chunk-LE44LDOD.js.map +1 -0
- package/{chunk-AIRT3G2F.js → chunk-LQETWWSU.js} +1 -1
- package/chunk-LQETWWSU.js.map +1 -0
- package/{chunk-WMF5I4XG.mjs → chunk-LVFEXEXE.mjs} +3 -3
- package/chunk-LVFEXEXE.mjs.map +1 -0
- package/{chunk-CBPD4MCN.mjs → chunk-M42ABX7U.mjs} +2 -2
- package/chunk-M42ABX7U.mjs.map +1 -0
- package/{chunk-GIWS4EGG.mjs → chunk-M6C2FCM4.mjs} +2 -2
- package/chunk-M6C2FCM4.mjs.map +1 -0
- package/chunk-N2AJY4KM.js +13 -0
- package/chunk-N2AJY4KM.js.map +1 -0
- package/{chunk-RKE5XMOJ.js → chunk-N4QVNSAY.js} +7 -7
- package/chunk-N4QVNSAY.js.map +1 -0
- package/{chunk-FB6MG6BO.js → chunk-N7JSYNXM.js} +1 -1
- package/chunk-N7JSYNXM.js.map +1 -0
- package/chunk-NI2SIUXO.js +154 -0
- package/chunk-NI2SIUXO.js.map +1 -0
- package/{chunk-YRETRIL3.mjs → chunk-NJDC3RMA.mjs} +4 -4
- package/chunk-NJDC3RMA.mjs.map +1 -0
- package/{chunk-Z33UILCV.js → chunk-NK4XTZ5W.js} +3 -3
- package/chunk-NK4XTZ5W.js.map +1 -0
- package/chunk-NQEDHUHQ.js +567 -0
- package/chunk-NQEDHUHQ.js.map +1 -0
- package/{chunk-IMRGSJCL.js → chunk-O2ZEUVTY.js} +3 -3
- package/chunk-O2ZEUVTY.js.map +1 -0
- package/{chunk-GIIZC2IP.mjs → chunk-ODXQODWD.mjs} +2 -2
- package/chunk-ODXQODWD.mjs.map +1 -0
- package/chunk-OI275IX2.js +58 -0
- package/chunk-OI275IX2.js.map +1 -0
- package/{chunk-HKFAZF5F.mjs → chunk-PDB2VCWX.mjs} +1 -1
- package/chunk-PDB2VCWX.mjs.map +1 -0
- package/{chunk-HOQQHS3Q.js → chunk-PSQGNWKT.js} +8 -8
- package/chunk-PSQGNWKT.js.map +1 -0
- package/chunk-RBLBY6OU.mjs +33 -0
- package/chunk-RBLBY6OU.mjs.map +1 -0
- package/{chunk-KBUB4CRW.mjs → chunk-REZO5TYB.mjs} +2 -2
- package/chunk-REZO5TYB.mjs.map +1 -0
- package/chunk-RSQ25E6Y.js +93 -0
- package/chunk-RSQ25E6Y.js.map +1 -0
- package/chunk-TELCD46Q.js +34 -0
- package/chunk-TELCD46Q.js.map +1 -0
- package/{chunk-M2OVLURH.mjs → chunk-TMC4JKD5.mjs} +2 -2
- package/chunk-TMC4JKD5.mjs.map +1 -0
- package/{chunk-AXZDZXCY.js → chunk-TUFO3JJE.js} +3 -3
- package/chunk-TUFO3JJE.js.map +1 -0
- package/{chunk-TYSI4CV6.mjs → chunk-UI6WCDJT.mjs} +3 -3
- package/chunk-UI6WCDJT.mjs.map +1 -0
- package/{chunk-6GL6VFQI.mjs → chunk-UQTHHSJN.mjs} +4 -4
- package/chunk-UQTHHSJN.mjs.map +1 -0
- package/{chunk-623DYAHT.mjs → chunk-V4BQYO2M.mjs} +2 -2
- package/chunk-V4BQYO2M.mjs.map +1 -0
- package/{chunk-XVEDXQIR.js → chunk-V7M2UXTR.js} +3 -3
- package/chunk-V7M2UXTR.js.map +1 -0
- package/{chunk-J2S6AWOC.js → chunk-VW25XHM6.js} +3 -3
- package/chunk-VW25XHM6.js.map +1 -0
- package/{chunk-GJJM336N.js → chunk-W2N2NIVE.js} +3 -3
- package/chunk-W2N2NIVE.js.map +1 -0
- package/{chunk-HL46L6LC.js → chunk-WA2Z3OWJ.js} +7 -7
- package/chunk-WA2Z3OWJ.js.map +1 -0
- package/{chunk-XFNDJEF4.mjs → chunk-X3V6YE47.mjs} +1 -1
- package/chunk-X3V6YE47.mjs.map +1 -0
- package/{chunk-KMCO3DAB.js → chunk-XCHWNZWB.js} +5 -5
- package/chunk-XCHWNZWB.js.map +1 -0
- package/{chunk-GZJKDKEB.js → chunk-YIUJOM2Z.js} +14 -14
- package/chunk-YIUJOM2Z.js.map +1 -0
- package/{chunk-QY46KGSX.mjs → chunk-YKU7G73H.mjs} +7 -7
- package/chunk-YKU7G73H.mjs.map +1 -0
- package/{chunk-OVRCMNQQ.js → chunk-YSPBYWUG.js} +3 -3
- package/chunk-YSPBYWUG.js.map +1 -0
- package/{chunk-SXP4Q3XZ.mjs → chunk-Z3VXGHCE.mjs} +1 -1
- package/chunk-Z3VXGHCE.mjs.map +1 -0
- package/{chunk-USWK42A7.js → chunk-ZFSZ6K4K.js} +1 -1
- package/chunk-ZFSZ6K4K.js.map +1 -0
- package/{chunk-UR7W2AWZ.mjs → chunk-ZQAOSBAF.mjs} +2 -2
- package/chunk-ZQAOSBAF.mjs.map +1 -0
- package/chunk-ZVBMRCE7.mjs +92 -0
- package/chunk-ZVBMRCE7.mjs.map +1 -0
- package/chunk-ZZSEDLQG.mjs +566 -0
- package/chunk-ZZSEDLQG.mjs.map +1 -0
- package/components/form/checkbox.js +5 -5
- package/components/form/checkbox.js.map +1 -1
- package/components/form/checkbox.mjs +4 -4
- package/components/form/date-picker.js +9 -9
- package/components/form/date-picker.js.map +1 -1
- package/components/form/date-picker.mjs +8 -8
- package/components/form/date-range-picker.js +13 -13
- package/components/form/date-range-picker.js.map +1 -1
- package/components/form/date-range-picker.mjs +7 -7
- package/components/form/date-range-picker.mjs.map +1 -1
- package/components/form/error.js +4 -3
- package/components/form/error.js.map +1 -1
- package/components/form/error.mjs +3 -2
- package/components/form/hook-checkbox.js +9 -9
- package/components/form/hook-checkbox.js.map +1 -1
- package/components/form/hook-checkbox.mjs +5 -5
- package/components/form/hook-checkbox.mjs.map +1 -1
- package/components/form/hook-date-picker.js +12 -12
- package/components/form/hook-date-picker.js.map +1 -1
- package/components/form/hook-date-picker.mjs +9 -9
- package/components/form/hook-date-picker.mjs.map +1 -1
- package/components/form/hook-native-select.js +8 -8
- package/components/form/hook-native-select.js.map +1 -1
- package/components/form/hook-native-select.mjs +4 -4
- package/components/form/hook-native-select.mjs.map +1 -1
- package/components/form/hook-select.js +8 -8
- package/components/form/hook-select.js.map +1 -1
- package/components/form/hook-select.mjs +5 -5
- package/components/form/hook-select.mjs.map +1 -1
- package/components/form/hook-text-input.js +9 -9
- package/components/form/hook-text-input.js.map +1 -1
- package/components/form/hook-text-input.mjs +5 -5
- package/components/form/hook-text-input.mjs.map +1 -1
- package/components/form/hook-textarea.js +9 -9
- package/components/form/hook-textarea.js.map +1 -1
- package/components/form/hook-textarea.mjs +5 -5
- package/components/form/hook-textarea.mjs.map +1 -1
- package/components/form/hook-time-input.js +11 -11
- package/components/form/hook-time-input.js.map +1 -1
- package/components/form/hook-time-input.mjs +7 -7
- package/components/form/hook-time-input.mjs.map +1 -1
- package/components/form/multi-select.js +2 -1
- package/components/form/multi-select.js.map +1 -1
- package/components/form/multi-select.mjs +1 -0
- package/components/form/native-select.js +4 -4
- package/components/form/native-select.js.map +1 -1
- package/components/form/native-select.mjs +3 -3
- package/components/form/select.js +5 -5
- package/components/form/select.js.map +1 -1
- package/components/form/select.mjs +4 -4
- package/components/form/text-input.js +5 -5
- package/components/form/text-input.js.map +1 -1
- package/components/form/text-input.mjs +4 -4
- package/components/form/textarea.js +5 -5
- package/components/form/textarea.js.map +1 -1
- package/components/form/textarea.mjs +4 -4
- package/components/form/time-input.js +7 -7
- package/components/form/time-input.js.map +1 -1
- package/components/form/time-input.mjs +6 -6
- package/components/form/types.js +2 -1
- package/components/form/types.js.map +1 -1
- package/components/form/types.mjs +1 -0
- package/components/ui/accordion.js +5 -4
- package/components/ui/accordion.js.map +1 -1
- package/components/ui/accordion.mjs +2 -1
- package/components/ui/accordion.mjs.map +1 -1
- package/components/ui/alert-dialog.js +12 -11
- package/components/ui/alert-dialog.js.map +1 -1
- package/components/ui/alert-dialog.mjs +4 -3
- package/components/ui/alert-dialog.mjs.map +1 -1
- package/components/ui/alert.js +5 -4
- package/components/ui/alert.js.map +1 -1
- package/components/ui/alert.mjs +2 -1
- package/components/ui/alert.mjs.map +1 -1
- package/components/ui/aspect-ratio.js +2 -1
- package/components/ui/aspect-ratio.js.map +1 -1
- package/components/ui/aspect-ratio.mjs +1 -0
- package/components/ui/aspect-ratio.mjs.map +1 -1
- package/components/ui/avatar.js +13 -44
- package/components/ui/avatar.js.map +1 -1
- package/components/ui/avatar.mjs +6 -37
- package/components/ui/avatar.mjs.map +1 -1
- package/components/ui/badge.js +3 -2
- package/components/ui/badge.js.map +1 -1
- package/components/ui/badge.mjs +2 -1
- package/components/ui/badge.mjs.map +1 -1
- package/components/ui/breadcrumb.js +21 -90
- package/components/ui/breadcrumb.js.map +1 -1
- package/components/ui/breadcrumb.mjs +11 -80
- package/components/ui/breadcrumb.mjs.map +1 -1
- package/components/ui/button.js +5 -4
- package/components/ui/button.js.map +1 -1
- package/components/ui/button.mjs +4 -3
- package/components/ui/calendar.js +5 -5
- package/components/ui/calendar.js.map +1 -1
- package/components/ui/calendar.mjs +4 -4
- package/components/ui/card.js +8 -7
- package/components/ui/card.js.map +1 -1
- package/components/ui/card.mjs +2 -1
- package/components/ui/card.mjs.map +1 -1
- package/components/ui/carousel.js +11 -10
- package/components/ui/carousel.js.map +1 -1
- package/components/ui/carousel.mjs +4 -3
- package/components/ui/carousel.mjs.map +1 -1
- package/components/ui/chart.js +10 -10
- package/components/ui/chart.js.map +1 -1
- package/components/ui/chart.mjs +1 -1
- package/components/ui/chart.mjs.map +1 -1
- package/components/ui/checkbox.js +4 -3
- package/components/ui/checkbox.js.map +1 -1
- package/components/ui/checkbox.mjs +3 -2
- package/components/ui/collapsible.js +7 -8
- package/components/ui/collapsible.js.map +1 -1
- package/components/ui/collapsible.mjs +7 -8
- package/components/ui/collapsible.mjs.map +1 -1
- package/components/ui/command.d.mts +1 -1
- package/components/ui/command.d.ts +1 -1
- package/components/ui/command.js +11 -10
- package/components/ui/command.js.map +1 -1
- package/components/ui/command.mjs +3 -2
- package/components/ui/command.mjs.map +1 -1
- package/components/ui/context-menu.js +11 -10
- package/components/ui/context-menu.js.map +1 -1
- package/components/ui/context-menu.mjs +2 -1
- package/components/ui/context-menu.mjs.map +1 -1
- package/components/ui/copy-button.js +11 -10
- package/components/ui/copy-button.js.map +1 -1
- package/components/ui/copy-button.mjs +5 -4
- package/components/ui/copy-button.mjs.map +1 -1
- package/components/ui/dialog.js +3 -3
- package/components/ui/dialog.js.map +1 -1
- package/components/ui/dialog.mjs +2 -2
- package/components/ui/drawer.js +7 -7
- package/components/ui/drawer.js.map +1 -1
- package/components/ui/drawer.mjs +1 -1
- package/components/ui/drawer.mjs.map +1 -1
- package/components/ui/dropdown-menu.js +37 -151
- package/components/ui/dropdown-menu.js.map +1 -1
- package/components/ui/dropdown-menu.mjs +19 -133
- package/components/ui/dropdown-menu.mjs.map +1 -1
- package/components/ui/form.js +6 -6
- package/components/ui/form.js.map +1 -1
- package/components/ui/form.mjs +2 -2
- package/components/ui/form.mjs.map +1 -1
- package/components/ui/hover-card.js +2 -2
- package/components/ui/hover-card.js.map +1 -1
- package/components/ui/hover-card.mjs +1 -1
- package/components/ui/hover-card.mjs.map +1 -1
- package/components/ui/input-otp.js +6 -5
- package/components/ui/input-otp.js.map +1 -1
- package/components/ui/input-otp.mjs +2 -1
- package/components/ui/input-otp.mjs.map +1 -1
- package/components/ui/input.js +4 -3
- package/components/ui/input.js.map +1 -1
- package/components/ui/input.mjs +3 -2
- package/components/ui/label.js +4 -3
- package/components/ui/label.js.map +1 -1
- package/components/ui/label.mjs +3 -2
- package/components/ui/menubar.js +12 -12
- package/components/ui/menubar.js.map +1 -1
- package/components/ui/menubar.mjs +1 -1
- package/components/ui/menubar.mjs.map +1 -1
- package/components/ui/navigation-menu.js +9 -8
- package/components/ui/navigation-menu.js.map +1 -1
- package/components/ui/navigation-menu.mjs +2 -1
- package/components/ui/navigation-menu.mjs.map +1 -1
- package/components/ui/pagination.js +12 -11
- package/components/ui/pagination.js.map +1 -1
- package/components/ui/pagination.mjs +4 -3
- package/components/ui/pagination.mjs.map +1 -1
- package/components/ui/popover.js +4 -3
- package/components/ui/popover.js.map +1 -1
- package/components/ui/popover.mjs +3 -2
- package/components/ui/progress.js +2 -2
- package/components/ui/progress.js.map +1 -1
- package/components/ui/progress.mjs +1 -1
- package/components/ui/progress.mjs.map +1 -1
- package/components/ui/radio-group.js +4 -3
- package/components/ui/radio-group.js.map +1 -1
- package/components/ui/radio-group.mjs +2 -1
- package/components/ui/radio-group.mjs.map +1 -1
- package/components/ui/resizable.d.mts +1 -1
- package/components/ui/resizable.d.ts +1 -1
- package/components/ui/resizable.js +3 -3
- package/components/ui/resizable.js.map +1 -1
- package/components/ui/resizable.mjs +1 -1
- package/components/ui/resizable.mjs.map +1 -1
- package/components/ui/scroll-area.js +4 -3
- package/components/ui/scroll-area.js.map +1 -1
- package/components/ui/scroll-area.mjs +2 -1
- package/components/ui/scroll-area.mjs.map +1 -1
- package/components/ui/select.js +3 -3
- package/components/ui/select.js.map +1 -1
- package/components/ui/select.mjs +2 -2
- package/components/ui/separator.js +4 -3
- package/components/ui/separator.js.map +1 -1
- package/components/ui/separator.mjs +3 -2
- package/components/ui/sheet.js +3 -3
- package/components/ui/sheet.js.map +1 -1
- package/components/ui/sheet.mjs +2 -2
- package/components/ui/sidebar.js +61 -563
- package/components/ui/sidebar.js.map +1 -1
- package/components/ui/sidebar.mjs +36 -538
- package/components/ui/sidebar.mjs.map +1 -1
- package/components/ui/skeleton.js +4 -3
- package/components/ui/skeleton.js.map +1 -1
- package/components/ui/skeleton.mjs +3 -2
- package/components/ui/slider.js +3 -2
- package/components/ui/slider.js.map +1 -1
- package/components/ui/slider.mjs +2 -1
- package/components/ui/slider.mjs.map +1 -1
- package/components/ui/sonner.js.map +1 -1
- package/components/ui/sonner.mjs.map +1 -1
- package/components/ui/spinner.js +4 -3
- package/components/ui/spinner.js.map +1 -1
- package/components/ui/spinner.mjs +3 -2
- package/components/ui/switch.js +4 -3
- package/components/ui/switch.js.map +1 -1
- package/components/ui/switch.mjs +2 -1
- package/components/ui/switch.mjs.map +1 -1
- package/components/ui/table.js +10 -9
- package/components/ui/table.js.map +1 -1
- package/components/ui/table.mjs +2 -1
- package/components/ui/table.mjs.map +1 -1
- package/components/ui/tabs.js +5 -4
- package/components/ui/tabs.js.map +1 -1
- package/components/ui/tabs.mjs +2 -1
- package/components/ui/tabs.mjs.map +1 -1
- package/components/ui/textarea.js +4 -3
- package/components/ui/textarea.js.map +1 -1
- package/components/ui/textarea.mjs +3 -2
- package/components/ui/toast.js +3 -3
- package/components/ui/toast.js.map +1 -1
- package/components/ui/toast.mjs +2 -2
- package/components/ui/toaster.js +7 -7
- package/components/ui/toaster.js.map +1 -1
- package/components/ui/toaster.mjs +3 -3
- package/components/ui/toaster.mjs.map +1 -1
- package/components/ui/toggle-group.js +5 -5
- package/components/ui/toggle-group.js.map +1 -1
- package/components/ui/toggle-group.mjs +2 -2
- package/components/ui/toggle-group.mjs.map +1 -1
- package/components/ui/toggle.js +4 -3
- package/components/ui/toggle.js.map +1 -1
- package/components/ui/toggle.mjs +3 -2
- package/components/ui/tooltip.js +3 -3
- package/components/ui/tooltip.js.map +1 -1
- package/components/ui/tooltip.mjs +2 -2
- package/components/ui/unstyled-button.js +3 -2
- package/components/ui/unstyled-button.js.map +1 -1
- package/components/ui/unstyled-button.mjs +2 -1
- package/components/widgets/dialog-manager/context.js +3 -2
- package/components/widgets/dialog-manager/context.js.map +1 -1
- package/components/widgets/dialog-manager/context.mjs +2 -1
- package/components/widgets/dialog-manager/index.js +4 -3
- package/components/widgets/dialog-manager/index.js.map +1 -1
- package/components/widgets/dialog-manager/index.mjs +3 -2
- package/components/widgets/dialog-manager/provider.js +3 -3
- package/components/widgets/dialog-manager/provider.js.map +1 -1
- package/components/widgets/dialog-manager/provider.mjs +2 -2
- package/components/widgets/dialog-manager/types.js +2 -1
- package/components/widgets/dialog-manager/types.js.map +1 -1
- package/components/widgets/dialog-manager/types.mjs +1 -0
- package/hooks/use-clipboard.js +3 -2
- package/hooks/use-clipboard.js.map +1 -1
- package/hooks/use-clipboard.mjs +2 -1
- package/hooks/use-mobile.js +3 -2
- package/hooks/use-mobile.js.map +1 -1
- package/hooks/use-mobile.mjs +2 -1
- package/hooks/use-toast.js +2 -2
- package/hooks/use-toast.js.map +1 -1
- package/hooks/use-toast.mjs +1 -1
- package/layouts/sidebar1/LinkWrapper.d.mts +11 -0
- package/layouts/sidebar1/LinkWrapper.d.ts +11 -0
- package/layouts/sidebar1/LinkWrapper.js +23 -0
- package/layouts/sidebar1/LinkWrapper.js.map +1 -0
- package/layouts/sidebar1/LinkWrapper.mjs +22 -0
- package/layouts/sidebar1/LinkWrapper.mjs.map +1 -0
- package/layouts/sidebar1/app-sidebar.d.mts +26 -0
- package/layouts/sidebar1/app-sidebar.d.ts +26 -0
- package/layouts/sidebar1/app-sidebar.js +26 -0
- package/layouts/sidebar1/app-sidebar.js.map +1 -0
- package/layouts/sidebar1/app-sidebar.mjs +25 -0
- package/layouts/sidebar1/app-sidebar.mjs.map +1 -0
- package/layouts/sidebar1/context-switcher.d.mts +14 -0
- package/layouts/sidebar1/context-switcher.d.ts +14 -0
- package/layouts/sidebar1/context-switcher.js +21 -0
- package/layouts/sidebar1/context-switcher.js.map +1 -0
- package/layouts/sidebar1/context-switcher.mjs +20 -0
- package/layouts/sidebar1/context-switcher.mjs.map +1 -0
- package/layouts/sidebar1/index.d.mts +22 -0
- package/layouts/sidebar1/index.d.ts +22 -0
- package/layouts/sidebar1/index.js +66 -0
- package/layouts/sidebar1/index.js.map +1 -0
- package/layouts/sidebar1/index.mjs +65 -0
- package/layouts/sidebar1/index.mjs.map +1 -0
- package/layouts/sidebar1/nav-menus.d.mts +23 -0
- package/layouts/sidebar1/nav-menus.d.ts +23 -0
- package/layouts/sidebar1/nav-menus.js +21 -0
- package/layouts/sidebar1/nav-menus.js.map +1 -0
- package/layouts/sidebar1/nav-menus.mjs +20 -0
- package/layouts/sidebar1/nav-menus.mjs.map +1 -0
- package/layouts/sidebar1/nav-user.d.mts +22 -0
- package/layouts/sidebar1/nav-user.d.ts +22 -0
- package/layouts/sidebar1/nav-user.js +22 -0
- package/layouts/sidebar1/nav-user.js.map +1 -0
- package/layouts/sidebar1/nav-user.mjs +21 -0
- package/layouts/sidebar1/nav-user.mjs.map +1 -0
- package/lib/date.js +3 -2
- package/lib/date.js.map +1 -1
- package/lib/date.mjs +2 -1
- package/lib/number.js +3 -2
- package/lib/number.js.map +1 -1
- package/lib/number.mjs +2 -1
- package/lib/utils.js +3 -2
- package/lib/utils.js.map +1 -1
- package/lib/utils.mjs +2 -1
- package/package.json +2 -2
- package/chunk-3ONILUYO.mjs.map +0 -1
- package/chunk-575K47ZF.js.map +0 -1
- package/chunk-623DYAHT.mjs.map +0 -1
- package/chunk-6GL6VFQI.mjs.map +0 -1
- package/chunk-7IWZI67R.js.map +0 -1
- package/chunk-7SHQOSBJ.js.map +0 -1
- package/chunk-7W42BHVK.mjs.map +0 -1
- package/chunk-AIRT3G2F.js.map +0 -1
- package/chunk-AXZDZXCY.js.map +0 -1
- package/chunk-B2G2EZ4P.js.map +0 -1
- package/chunk-BNL6W2VN.js.map +0 -1
- package/chunk-CBPD4MCN.mjs.map +0 -1
- package/chunk-CEJOC6JT.mjs.map +0 -1
- package/chunk-DOQ4R2JY.js.map +0 -1
- package/chunk-EHZJ525C.js.map +0 -1
- package/chunk-FB6MG6BO.js.map +0 -1
- package/chunk-GIIZC2IP.mjs.map +0 -1
- package/chunk-GIWS4EGG.mjs.map +0 -1
- package/chunk-GJJM336N.js.map +0 -1
- package/chunk-GLZZPRFW.js.map +0 -1
- package/chunk-GO4LT2IU.js.map +0 -1
- package/chunk-GZJKDKEB.js.map +0 -1
- package/chunk-HKFAZF5F.mjs.map +0 -1
- package/chunk-HL46L6LC.js.map +0 -1
- package/chunk-HOQQHS3Q.js.map +0 -1
- package/chunk-HSTVMOEF.mjs.map +0 -1
- package/chunk-I47DMNG6.mjs.map +0 -1
- package/chunk-IMRGSJCL.js.map +0 -1
- package/chunk-IQP24H6D.js.map +0 -1
- package/chunk-J2S6AWOC.js.map +0 -1
- package/chunk-JOYUTUGI.mjs.map +0 -1
- package/chunk-JV7VIZQG.mjs.map +0 -1
- package/chunk-KBUB4CRW.mjs.map +0 -1
- package/chunk-KMCO3DAB.js.map +0 -1
- package/chunk-KSHMXYIU.mjs.map +0 -1
- package/chunk-LUOWYBFH.js.map +0 -1
- package/chunk-LWEOYGUO.js.map +0 -1
- package/chunk-M2OVLURH.mjs.map +0 -1
- package/chunk-MIFD5265.js.map +0 -1
- package/chunk-MKSF24CS.js.map +0 -1
- package/chunk-MWMCWZEX.js.map +0 -1
- package/chunk-NFHY5TW2.mjs.map +0 -1
- package/chunk-OVRCMNQQ.js.map +0 -1
- package/chunk-P2BPVQXH.js.map +0 -1
- package/chunk-P2MQ6OUG.mjs.map +0 -1
- package/chunk-PEKKKPKP.mjs.map +0 -1
- package/chunk-PQ46DNNZ.mjs.map +0 -1
- package/chunk-PU6NIJDG.mjs.map +0 -1
- package/chunk-QY46KGSX.mjs.map +0 -1
- package/chunk-RCRQSAMN.mjs.map +0 -1
- package/chunk-RKE5XMOJ.js.map +0 -1
- package/chunk-RPYFLVXV.js.map +0 -1
- package/chunk-SXP4Q3XZ.mjs.map +0 -1
- package/chunk-TV4NNZTS.js.map +0 -1
- package/chunk-TYSI4CV6.mjs.map +0 -1
- package/chunk-UR7W2AWZ.mjs.map +0 -1
- package/chunk-USWK42A7.js.map +0 -1
- package/chunk-VDCTULTM.mjs.map +0 -1
- package/chunk-WGV3SHLF.mjs.map +0 -1
- package/chunk-WMF5I4XG.mjs.map +0 -1
- package/chunk-XFNDJEF4.mjs.map +0 -1
- package/chunk-XHWWN56S.mjs.map +0 -1
- package/chunk-XHXX3QPX.mjs.map +0 -1
- package/chunk-XVEDXQIR.js.map +0 -1
- package/chunk-YRETRIL3.mjs.map +0 -1
- package/chunk-Z33UILCV.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/carousel.js","../../../components/ui/carousel.tsx"],"names":["api"],"mappings":"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","file":"/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/carousel.js","sourcesContent":[null,"import * as React from 'react';\nimport useEmblaCarousel, { type UseEmblaCarouselType } from 'embla-carousel-react';\nimport { ArrowLeft, ArrowRight } from 'lucide-react';\n\nimport { cn } from '../../lib/utils';\nimport { Button } from './button';\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ntype CarouselProps = {\n opts?: CarouselOptions;\n plugins?: CarouselPlugin;\n orientation?: 'horizontal' | 'vertical';\n setApi?: (api: CarouselApi) => void;\n};\n\ntype CarouselContextProps = {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0];\n api: ReturnType<typeof useEmblaCarousel>[1];\n scrollPrev: () => void;\n scrollNext: () => void;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n} & CarouselProps;\n\nconst CarouselContext = React.createContext<CarouselContextProps | null>(null);\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext);\n\n if (!context) {\n throw new Error('useCarousel must be used within a <Carousel />');\n }\n\n return context;\n}\n\nconst Carousel = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement> & CarouselProps>(\n ({ orientation = 'horizontal', opts, setApi, plugins, className, children, ...props }, ref) => {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n },\n plugins,\n );\n const [canScrollPrev, setCanScrollPrev] = React.useState(false);\n const [canScrollNext, setCanScrollNext] = React.useState(false);\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return;\n }\n\n setCanScrollPrev(api.canScrollPrev());\n setCanScrollNext(api.canScrollNext());\n }, []);\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev();\n }, [api]);\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext();\n }, [api]);\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n scrollPrev();\n } else if (event.key === 'ArrowRight') {\n event.preventDefault();\n scrollNext();\n }\n },\n [scrollPrev, scrollNext],\n );\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return;\n }\n\n setApi(api);\n }, [api, setApi]);\n\n React.useEffect(() => {\n if (!api) {\n return;\n }\n\n onSelect(api);\n api.on('reInit', onSelect);\n api.on('select', onSelect);\n\n return () => {\n api?.off('select', onSelect);\n };\n }, [api, onSelect]);\n\n return (\n <CarouselContext.Provider\n value={{\n carouselRef,\n api: api,\n opts,\n orientation: orientation || (opts?.axis === 'y' ? 'vertical' : 'horizontal'),\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n }}\n >\n <div\n ref={ref}\n onKeyDownCapture={handleKeyDown}\n className={cn('relative', className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n },\n);\nCarousel.displayName = 'Carousel';\n\nconst CarouselContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const { carouselRef, orientation } = useCarousel();\n\n return (\n <div ref={carouselRef} className=\"overflow-hidden\">\n <div\n ref={ref}\n className={cn('flex', orientation === 'horizontal' ? '-ml-4' : '-mt-4 flex-col', className)}\n {...props}\n />\n </div>\n );\n },\n);\nCarouselContent.displayName = 'CarouselContent';\n\nconst CarouselItem = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const { orientation } = useCarousel();\n\n return (\n <div\n ref={ref}\n role=\"group\"\n aria-roledescription=\"slide\"\n className={cn('min-w-0 shrink-0 grow-0 basis-full', orientation === 'horizontal' ? 'pl-4' : 'pt-4', className)}\n {...props}\n />\n );\n },\n);\nCarouselItem.displayName = 'CarouselItem';\n\nconst CarouselPrevious = React.forwardRef<HTMLButtonElement, React.ComponentProps<typeof Button>>(\n ({ className, variant = 'light', size = 'icon', ...props }, ref) => {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel();\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n 'absolute h-8 w-8 rounded-full',\n orientation === 'horizontal'\n ? '-left-12 top-1/2 -translate-y-1/2'\n : '-top-12 left-1/2 -translate-x-1/2 rotate-90',\n className,\n )}\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n {...props}\n >\n <ArrowLeft className=\"h-4 w-4\" />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n );\n },\n);\nCarouselPrevious.displayName = 'CarouselPrevious';\n\nconst CarouselNext = React.forwardRef<HTMLButtonElement, React.ComponentProps<typeof Button>>(\n ({ className, variant = 'light', size = 'icon', ...props }, ref) => {\n const { orientation, scrollNext, canScrollNext } = useCarousel();\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n 'absolute h-8 w-8 rounded-full',\n orientation === 'horizontal'\n ? '-right-12 top-1/2 -translate-y-1/2'\n : '-bottom-12 left-1/2 -translate-x-1/2 rotate-90',\n className,\n )}\n disabled={!canScrollNext}\n onClick={scrollNext}\n {...props}\n >\n <ArrowRight className=\"h-4 w-4\" />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n );\n },\n);\nCarouselNext.displayName = 'CarouselNext';\n\nexport { type CarouselApi, Carousel, CarouselContent, CarouselItem, CarouselPrevious, CarouselNext };\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/carousel.js","../../../components/ui/carousel.tsx"],"names":["api"],"mappings":"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","file":"/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/carousel.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport useEmblaCarousel, { type UseEmblaCarouselType } from 'embla-carousel-react';\nimport { ArrowLeft, ArrowRight } from 'lucide-react';\n\nimport { cn } from '../../lib/utils';\nimport { Button } from './button';\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ntype CarouselProps = {\n opts?: CarouselOptions;\n plugins?: CarouselPlugin;\n orientation?: 'horizontal' | 'vertical';\n setApi?: (api: CarouselApi) => void;\n};\n\ntype CarouselContextProps = {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0];\n api: ReturnType<typeof useEmblaCarousel>[1];\n scrollPrev: () => void;\n scrollNext: () => void;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n} & CarouselProps;\n\nconst CarouselContext = React.createContext<CarouselContextProps | null>(null);\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext);\n\n if (!context) {\n throw new Error('useCarousel must be used within a <Carousel />');\n }\n\n return context;\n}\n\nconst Carousel = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement> & CarouselProps>(\n ({ orientation = 'horizontal', opts, setApi, plugins, className, children, ...props }, ref) => {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n },\n plugins,\n );\n const [canScrollPrev, setCanScrollPrev] = React.useState(false);\n const [canScrollNext, setCanScrollNext] = React.useState(false);\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return;\n }\n\n setCanScrollPrev(api.canScrollPrev());\n setCanScrollNext(api.canScrollNext());\n }, []);\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev();\n }, [api]);\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext();\n }, [api]);\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n scrollPrev();\n } else if (event.key === 'ArrowRight') {\n event.preventDefault();\n scrollNext();\n }\n },\n [scrollPrev, scrollNext],\n );\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return;\n }\n\n setApi(api);\n }, [api, setApi]);\n\n React.useEffect(() => {\n if (!api) {\n return;\n }\n\n onSelect(api);\n api.on('reInit', onSelect);\n api.on('select', onSelect);\n\n return () => {\n api?.off('select', onSelect);\n };\n }, [api, onSelect]);\n\n return (\n <CarouselContext.Provider\n value={{\n carouselRef,\n api: api,\n opts,\n orientation: orientation || (opts?.axis === 'y' ? 'vertical' : 'horizontal'),\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n }}\n >\n <div\n ref={ref}\n onKeyDownCapture={handleKeyDown}\n className={cn('relative', className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n },\n);\nCarousel.displayName = 'Carousel';\n\nconst CarouselContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const { carouselRef, orientation } = useCarousel();\n\n return (\n <div ref={carouselRef} className=\"overflow-hidden\">\n <div\n ref={ref}\n className={cn('flex', orientation === 'horizontal' ? '-ml-4' : '-mt-4 flex-col', className)}\n {...props}\n />\n </div>\n );\n },\n);\nCarouselContent.displayName = 'CarouselContent';\n\nconst CarouselItem = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const { orientation } = useCarousel();\n\n return (\n <div\n ref={ref}\n role=\"group\"\n aria-roledescription=\"slide\"\n className={cn('min-w-0 shrink-0 grow-0 basis-full', orientation === 'horizontal' ? 'pl-4' : 'pt-4', className)}\n {...props}\n />\n );\n },\n);\nCarouselItem.displayName = 'CarouselItem';\n\nconst CarouselPrevious = React.forwardRef<HTMLButtonElement, React.ComponentProps<typeof Button>>(\n ({ className, variant = 'light', size = 'icon', ...props }, ref) => {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel();\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n 'absolute h-8 w-8 rounded-full',\n orientation === 'horizontal'\n ? '-left-12 top-1/2 -translate-y-1/2'\n : '-top-12 left-1/2 -translate-x-1/2 rotate-90',\n className,\n )}\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n {...props}\n >\n <ArrowLeft className=\"h-4 w-4\" />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n );\n },\n);\nCarouselPrevious.displayName = 'CarouselPrevious';\n\nconst CarouselNext = React.forwardRef<HTMLButtonElement, React.ComponentProps<typeof Button>>(\n ({ className, variant = 'light', size = 'icon', ...props }, ref) => {\n const { orientation, scrollNext, canScrollNext } = useCarousel();\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n 'absolute h-8 w-8 rounded-full',\n orientation === 'horizontal'\n ? '-right-12 top-1/2 -translate-y-1/2'\n : '-bottom-12 left-1/2 -translate-x-1/2 rotate-90',\n className,\n )}\n disabled={!canScrollNext}\n onClick={scrollNext}\n {...props}\n >\n <ArrowRight className=\"h-4 w-4\" />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n );\n },\n);\nCarouselNext.displayName = 'CarouselNext';\n\nexport { type CarouselApi, Carousel, CarouselContent, CarouselItem, CarouselPrevious, CarouselNext };\n"]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import {
|
|
2
3
|
Button
|
|
3
|
-
} from "../../chunk-
|
|
4
|
-
import "../../chunk-
|
|
4
|
+
} from "../../chunk-UI6WCDJT.mjs";
|
|
5
|
+
import "../../chunk-D4IKUOX7.mjs";
|
|
5
6
|
import {
|
|
6
7
|
cn
|
|
7
|
-
} from "../../chunk-
|
|
8
|
+
} from "../../chunk-F5XCCSBC.mjs";
|
|
8
9
|
import {
|
|
9
10
|
__objRest,
|
|
10
11
|
__spreadProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../components/ui/carousel.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../components/ui/carousel.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport useEmblaCarousel, { type UseEmblaCarouselType } from 'embla-carousel-react';\nimport { ArrowLeft, ArrowRight } from 'lucide-react';\n\nimport { cn } from '../../lib/utils';\nimport { Button } from './button';\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ntype CarouselProps = {\n opts?: CarouselOptions;\n plugins?: CarouselPlugin;\n orientation?: 'horizontal' | 'vertical';\n setApi?: (api: CarouselApi) => void;\n};\n\ntype CarouselContextProps = {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0];\n api: ReturnType<typeof useEmblaCarousel>[1];\n scrollPrev: () => void;\n scrollNext: () => void;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n} & CarouselProps;\n\nconst CarouselContext = React.createContext<CarouselContextProps | null>(null);\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext);\n\n if (!context) {\n throw new Error('useCarousel must be used within a <Carousel />');\n }\n\n return context;\n}\n\nconst Carousel = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement> & CarouselProps>(\n ({ orientation = 'horizontal', opts, setApi, plugins, className, children, ...props }, ref) => {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n },\n plugins,\n );\n const [canScrollPrev, setCanScrollPrev] = React.useState(false);\n const [canScrollNext, setCanScrollNext] = React.useState(false);\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return;\n }\n\n setCanScrollPrev(api.canScrollPrev());\n setCanScrollNext(api.canScrollNext());\n }, []);\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev();\n }, [api]);\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext();\n }, [api]);\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n scrollPrev();\n } else if (event.key === 'ArrowRight') {\n event.preventDefault();\n scrollNext();\n }\n },\n [scrollPrev, scrollNext],\n );\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return;\n }\n\n setApi(api);\n }, [api, setApi]);\n\n React.useEffect(() => {\n if (!api) {\n return;\n }\n\n onSelect(api);\n api.on('reInit', onSelect);\n api.on('select', onSelect);\n\n return () => {\n api?.off('select', onSelect);\n };\n }, [api, onSelect]);\n\n return (\n <CarouselContext.Provider\n value={{\n carouselRef,\n api: api,\n opts,\n orientation: orientation || (opts?.axis === 'y' ? 'vertical' : 'horizontal'),\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n }}\n >\n <div\n ref={ref}\n onKeyDownCapture={handleKeyDown}\n className={cn('relative', className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n },\n);\nCarousel.displayName = 'Carousel';\n\nconst CarouselContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const { carouselRef, orientation } = useCarousel();\n\n return (\n <div ref={carouselRef} className=\"overflow-hidden\">\n <div\n ref={ref}\n className={cn('flex', orientation === 'horizontal' ? '-ml-4' : '-mt-4 flex-col', className)}\n {...props}\n />\n </div>\n );\n },\n);\nCarouselContent.displayName = 'CarouselContent';\n\nconst CarouselItem = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const { orientation } = useCarousel();\n\n return (\n <div\n ref={ref}\n role=\"group\"\n aria-roledescription=\"slide\"\n className={cn('min-w-0 shrink-0 grow-0 basis-full', orientation === 'horizontal' ? 'pl-4' : 'pt-4', className)}\n {...props}\n />\n );\n },\n);\nCarouselItem.displayName = 'CarouselItem';\n\nconst CarouselPrevious = React.forwardRef<HTMLButtonElement, React.ComponentProps<typeof Button>>(\n ({ className, variant = 'light', size = 'icon', ...props }, ref) => {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel();\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n 'absolute h-8 w-8 rounded-full',\n orientation === 'horizontal'\n ? '-left-12 top-1/2 -translate-y-1/2'\n : '-top-12 left-1/2 -translate-x-1/2 rotate-90',\n className,\n )}\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n {...props}\n >\n <ArrowLeft className=\"h-4 w-4\" />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n );\n },\n);\nCarouselPrevious.displayName = 'CarouselPrevious';\n\nconst CarouselNext = React.forwardRef<HTMLButtonElement, React.ComponentProps<typeof Button>>(\n ({ className, variant = 'light', size = 'icon', ...props }, ref) => {\n const { orientation, scrollNext, canScrollNext } = useCarousel();\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n 'absolute h-8 w-8 rounded-full',\n orientation === 'horizontal'\n ? '-right-12 top-1/2 -translate-y-1/2'\n : '-bottom-12 left-1/2 -translate-x-1/2 rotate-90',\n className,\n )}\n disabled={!canScrollNext}\n onClick={scrollNext}\n {...props}\n >\n <ArrowRight className=\"h-4 w-4\" />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n );\n },\n);\nCarouselNext.displayName = 'CarouselNext';\n\nexport { type CarouselApi, Carousel, CarouselContent, CarouselItem, CarouselPrevious, CarouselNext };\n"],"mappings":"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","names":["api"]}
|
package/components/ui/chart.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _chunk6N4WCMTEjs = require('../../chunk-6N4WCMTE.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -29,7 +29,7 @@ var ChartContainer = React.forwardRef((_a, ref) => {
|
|
|
29
29
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
30
30
|
"data-chart": chartId,
|
|
31
31
|
ref,
|
|
32
|
-
className:
|
|
32
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
33
33
|
"flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none",
|
|
34
34
|
className
|
|
35
35
|
)
|
|
@@ -91,12 +91,12 @@ var ChartTooltipContent = React.forwardRef(
|
|
|
91
91
|
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
92
92
|
const value = !labelKey && typeof label === "string" ? ((_a = config[label]) == null ? void 0 : _a.label) || label : itemConfig == null ? void 0 : itemConfig.label;
|
|
93
93
|
if (labelFormatter) {
|
|
94
|
-
return /* @__PURE__ */ React.createElement("div", { className:
|
|
94
|
+
return /* @__PURE__ */ React.createElement("div", { className: _chunk6N4WCMTEjs.cn.call(void 0, "font-medium", labelClassName) }, labelFormatter(value, payload));
|
|
95
95
|
}
|
|
96
96
|
if (!value) {
|
|
97
97
|
return null;
|
|
98
98
|
}
|
|
99
|
-
return /* @__PURE__ */ React.createElement("div", { className:
|
|
99
|
+
return /* @__PURE__ */ React.createElement("div", { className: _chunk6N4WCMTEjs.cn.call(void 0, "font-medium", labelClassName) }, value);
|
|
100
100
|
}, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);
|
|
101
101
|
if (!active || !(payload == null ? void 0 : payload.length)) {
|
|
102
102
|
return null;
|
|
@@ -106,7 +106,7 @@ var ChartTooltipContent = React.forwardRef(
|
|
|
106
106
|
"div",
|
|
107
107
|
{
|
|
108
108
|
ref,
|
|
109
|
-
className:
|
|
109
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
110
110
|
"grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl",
|
|
111
111
|
className
|
|
112
112
|
)
|
|
@@ -120,7 +120,7 @@ var ChartTooltipContent = React.forwardRef(
|
|
|
120
120
|
"div",
|
|
121
121
|
{
|
|
122
122
|
key: item.dataKey,
|
|
123
|
-
className:
|
|
123
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
124
124
|
"flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground",
|
|
125
125
|
indicator === "dot" && "items-center"
|
|
126
126
|
)
|
|
@@ -128,7 +128,7 @@ var ChartTooltipContent = React.forwardRef(
|
|
|
128
128
|
formatter && (item == null ? void 0 : item.value) !== void 0 && item.name ? formatter(item.value, item.name, item, index, item.payload) : /* @__PURE__ */ React.createElement(React.Fragment, null, (itemConfig == null ? void 0 : itemConfig.icon) ? /* @__PURE__ */ React.createElement(itemConfig.icon, null) : !hideIndicator && /* @__PURE__ */ React.createElement(
|
|
129
129
|
"div",
|
|
130
130
|
{
|
|
131
|
-
className:
|
|
131
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0, "shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]", {
|
|
132
132
|
"h-2.5 w-2.5": indicator === "dot",
|
|
133
133
|
"w-1": indicator === "line",
|
|
134
134
|
"w-0 border-[1.5px] border-dashed bg-transparent": indicator === "dashed",
|
|
@@ -142,7 +142,7 @@ var ChartTooltipContent = React.forwardRef(
|
|
|
142
142
|
), /* @__PURE__ */ React.createElement(
|
|
143
143
|
"div",
|
|
144
144
|
{
|
|
145
|
-
className:
|
|
145
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
146
146
|
"flex flex-1 justify-between leading-none",
|
|
147
147
|
nestLabel ? "items-end" : "items-center"
|
|
148
148
|
)
|
|
@@ -166,7 +166,7 @@ var ChartLegendContent = React.forwardRef(({ className, hideIcon = false, payloa
|
|
|
166
166
|
"div",
|
|
167
167
|
{
|
|
168
168
|
ref,
|
|
169
|
-
className:
|
|
169
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0, "flex items-center justify-center gap-4", verticalAlign === "top" ? "pb-3" : "pt-3", className)
|
|
170
170
|
},
|
|
171
171
|
payload.map((item) => {
|
|
172
172
|
const key = `${nameKey || item.dataKey || "value"}`;
|
|
@@ -175,7 +175,7 @@ var ChartLegendContent = React.forwardRef(({ className, hideIcon = false, payloa
|
|
|
175
175
|
"div",
|
|
176
176
|
{
|
|
177
177
|
key: item.value,
|
|
178
|
-
className:
|
|
178
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0, "flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground")
|
|
179
179
|
},
|
|
180
180
|
(itemConfig == null ? void 0 : itemConfig.icon) && !hideIcon ? /* @__PURE__ */ React.createElement(itemConfig.icon, null) : /* @__PURE__ */ React.createElement(
|
|
181
181
|
"div",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/chart.js","../../../components/ui/chart.tsx"],"names":["config"],"mappings":"AAAA,uWAAY;AACZ;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACPA,2EAAuB;AACvB,gGAAmC;AAKnC,IAAM,OAAA,EAAS,EAAE,KAAA,EAAO,EAAA,EAAI,IAAA,EAAM,QAAQ,CAAA;AAa1C,IAAM,aAAA,EAAqB,KAAA,CAAA,aAAA,CAAwC,IAAI,CAAA;AAEvE,SAAS,QAAA,CAAA,EAAW;AAClB,EAAA,MAAM,QAAA,EAAgB,KAAA,CAAA,UAAA,CAAW,YAAY,CAAA;AAE7C,EAAA,GAAA,CAAI,CAAC,OAAA,EAAS;AACZ,IAAA,MAAM,IAAI,KAAA,CAAM,mDAAmD,CAAA;AAAA,EACrE;AAEA,EAAA,OAAO,OAAA;AACT;AAEA,IAAM,eAAA,EAAuB,KAAA,CAAA,UAAA,CAM3B,CAAC,EAAA,EAA+C,GAAA,EAAA,GAAQ;AAAvD,EAAA,IAAA,GAAA,EAAA,EAAA,EAAE,EAAA,EAAA,EAAI,SAAA,EAAW,QAAA,EAAU,OAvC9B,EAAA,EAuCG,EAAA,EAAsC,MAAA,EAAA,wCAAA,EAAtC,EAAsC,CAApC,IAAA,EAAI,WAAA,EAAW,UAAA,EAAU,QAAA,CAAA,CAAA;AAC5B,EAAA,MAAM,SAAA,EAAiB,KAAA,CAAA,KAAA,CAAM,CAAA;AAC7B,EAAA,MAAM,QAAA,EAAU,CAAA,MAAA,EAAS,GAAA,GAAM,QAAA,CAAS,OAAA,CAAQ,IAAA,EAAM,EAAE,CAAC,CAAA,CAAA;AAGzC,EAAA;AACX,IAAA;AAAA,IAAA;AACa,MAAA;AACZ,MAAA;AACW,MAAA;AACT,QAAA;AACA,QAAA;AACF,MAAA;AACI,IAAA;AAEY,oBAAA;AACG,oBAAA;AAEvB,EAAA;AAEH;AAC4B;AAE+C;AACpBA,EAAAA;AAE7B,EAAA;AAChB,IAAA;AACT,EAAA;AAGE,EAAA;AAAC,IAAA;AAAA,IAAA;AAC0B,MAAA;AAEpB,QAAA;AACsB,UAAA;AACP;AAEI;AA7E9B,YAAA;AA8EkB,YAAA;AACiC,YAAA;AAEtC,UAAA;AAAA;AAAA;AAIO,QAAA;AACd,MAAA;AAAA,IAAA;AACF,EAAA;AAEJ;AAEuC;AAEL;AAY9B,EAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACY,IAAA;AACA,IAAA;AACI,IAAA;AAChB,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AAGC,EAAA;AACyB,IAAA;AAEa,IAAA;AA5H7C,MAAA;AA6HiC,MAAA;AAClB,QAAA;AACT,MAAA;AAEe,MAAA;AACiC,MAAA;AACD,MAAA;AAEf,MAAA;AAIZ,MAAA;AACN,QAAA;AACd,MAAA;AAEY,MAAA;AACH,QAAA;AACT,MAAA;AAEY,MAAA;AACiC,IAAA;AAEtB,IAAA;AAChB,MAAA;AACT,IAAA;AAEwD,IAAA;AAGtD,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACW,QAAA;AACT,UAAA;AACA,UAAA;AACF,QAAA;AAAA,MAAA;AAE6B,MAAA;AACxB,sBAAA;AAE2C,QAAA;AACG,QAAA;AACF,QAAA;AAG3C,QAAA;AAAC,UAAA;AAAA,UAAA;AACW,YAAA;AACC,YAAA;AACT,cAAA;AACuB,cAAA;AACzB,YAAA;AAAA,UAAA;AAEoB,UAAA;AAQX,YAAA;AAAA,YAAA;AACe,cAAA;AACiB,gBAAA;AACR,gBAAA;AACrB,gBAAA;AACqC,gBAAA;AACtC,cAAA;AAEC,cAAA;AACgB,gBAAA;AACI,gBAAA;AACpB,cAAA;AAAA,YAAA;AAKR,UAAA;AAAC,YAAA;AAAA,YAAA;AACY,cAAA;AACT,gBAAA;AAC0B,gBAAA;AAC5B,cAAA;AAAA,YAAA;AAEK,4BAAA;AAKH,YAAA;AAKN,UAAA;AAEJ,QAAA;AAGN,MAAA;AACF,IAAA;AAEJ,EAAA;AACF;AACkC;AAEI;AAStB;AACc,EAAA;AAEN,EAAA;AACb,IAAA;AACT,EAAA;AAGE,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACc,MAAA;AAA8F,IAAA;AAErF,IAAA;AAC4B,MAAA;AACF,MAAA;AAG7C,MAAA;AAAC,QAAA;AAAA,QAAA;AACW,UAAA;AACI,UAAA;AAAiF,QAAA;AAEzE,QAAA;AAGnB,UAAA;AAAA,UAAA;AACW,YAAA;AACH,YAAA;AACiB,cAAA;AACxB,YAAA;AAAA,UAAA;AACF,QAAA;AAEW,QAAA;AACf,MAAA;AAEH,IAAA;AACH,EAAA;AAEH;AACgC;AAGwD;AAClC,EAAA;AAC5C,IAAA;AACT,EAAA;AAGiC,EAAA;AAIJ,EAAA;AAEmD,EAAA;AAC1B,IAAA;AAIpD,EAAA;AAEkE,IAAA;AACpE,EAAA;AAEuD,EAAA;AACzD;ADhG4D;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/chart.js","sourcesContent":[null,"'use client';\n\nimport * as React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { cn } from '../../lib/utils';\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: '', dark: '.dark' } as const;\n\nexport type ChartConfig = {\n [k in string]: {\n label?: React.ReactNode;\n icon?: React.ComponentType;\n } & ({ color?: string; theme?: never } | { color?: never; theme: Record<keyof typeof THEMES, string> });\n};\n\ntype ChartContextProps = {\n config: ChartConfig;\n};\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null);\n\nfunction useChart() {\n const context = React.useContext(ChartContext);\n\n if (!context) {\n throw new Error('useChart must be used within a <ChartContainer />');\n }\n\n return context;\n}\n\nconst ChartContainer = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n config: ChartConfig;\n children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>['children'];\n }\n>(({ id, className, children, config, ...props }, ref) => {\n const uniqueId = React.useId();\n const chartId = `chart-${id || uniqueId.replace(/:/g, '')}`;\n\n return (\n <ChartContext.Provider value={{ config }}>\n <div\n data-chart={chartId}\n ref={ref}\n className={cn(\n \"flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none\",\n className,\n )}\n {...props}\n >\n <ChartStyle id={chartId} config={config} />\n <RechartsPrimitive.ResponsiveContainer>{children}</RechartsPrimitive.ResponsiveContainer>\n </div>\n </ChartContext.Provider>\n );\n});\nChartContainer.displayName = 'Chart';\n\nconst ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {\n const colorConfig = Object.entries(config).filter(([, config]) => config.theme || config.color);\n\n if (!colorConfig.length) {\n return null;\n }\n\n return (\n <style\n dangerouslySetInnerHTML={{\n __html: Object.entries(THEMES)\n .map(\n ([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n .map(([key, itemConfig]) => {\n const color = itemConfig.theme?.[theme as keyof typeof itemConfig.theme] || itemConfig.color;\n return color ? ` --color-${key}: ${color};` : null;\n })\n .join('\\n')}\n}\n`,\n )\n .join('\\n'),\n }}\n />\n );\n};\n\nconst ChartTooltip = RechartsPrimitive.Tooltip;\n\nconst ChartTooltipContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof RechartsPrimitive.Tooltip> &\n React.ComponentProps<'div'> & {\n hideLabel?: boolean;\n hideIndicator?: boolean;\n indicator?: 'line' | 'dot' | 'dashed';\n nameKey?: string;\n labelKey?: string;\n }\n>(\n (\n {\n active,\n payload,\n className,\n indicator = 'dot',\n hideLabel = false,\n hideIndicator = false,\n label,\n labelFormatter,\n labelClassName,\n formatter,\n color,\n nameKey,\n labelKey,\n },\n ref,\n ) => {\n const { config } = useChart();\n\n const tooltipLabel = React.useMemo(() => {\n if (hideLabel || !payload?.length) {\n return null;\n }\n\n const [item] = payload;\n const key = `${labelKey || item.dataKey || item.name || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const value =\n !labelKey && typeof label === 'string'\n ? config[label as keyof typeof config]?.label || label\n : itemConfig?.label;\n\n if (labelFormatter) {\n return <div className={cn('font-medium', labelClassName)}>{labelFormatter(value, payload)}</div>;\n }\n\n if (!value) {\n return null;\n }\n\n return <div className={cn('font-medium', labelClassName)}>{value}</div>;\n }, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);\n\n if (!active || !payload?.length) {\n return null;\n }\n\n const nestLabel = payload.length === 1 && indicator !== 'dot';\n\n return (\n <div\n ref={ref}\n className={cn(\n 'grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl',\n className,\n )}\n >\n {!nestLabel ? tooltipLabel : null}\n <div className=\"grid gap-1.5\">\n {payload.map((item, index) => {\n const key = `${nameKey || item.name || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const indicatorColor = color || item.payload.fill || item.color;\n\n return (\n <div\n key={item.dataKey}\n className={cn(\n 'flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground',\n indicator === 'dot' && 'items-center',\n )}\n >\n {formatter && item?.value !== undefined && item.name ? (\n formatter(item.value, item.name, item, index, item.payload)\n ) : (\n <>\n {itemConfig?.icon ? (\n <itemConfig.icon />\n ) : (\n !hideIndicator && (\n <div\n className={cn('shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]', {\n 'h-2.5 w-2.5': indicator === 'dot',\n 'w-1': indicator === 'line',\n 'w-0 border-[1.5px] border-dashed bg-transparent': indicator === 'dashed',\n 'my-0.5': nestLabel && indicator === 'dashed',\n })}\n style={\n {\n '--color-bg': indicatorColor,\n '--color-border': indicatorColor,\n } as React.CSSProperties\n }\n />\n )\n )}\n <div\n className={cn(\n 'flex flex-1 justify-between leading-none',\n nestLabel ? 'items-end' : 'items-center',\n )}\n >\n <div className=\"grid gap-1.5\">\n {nestLabel ? tooltipLabel : null}\n <span className=\"text-muted-foreground\">{itemConfig?.label || item.name}</span>\n </div>\n {item.value && (\n <span className=\"font-mono font-medium tabular-nums text-foreground\">\n {item.value.toLocaleString()}\n </span>\n )}\n </div>\n </>\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n },\n);\nChartTooltipContent.displayName = 'ChartTooltip';\n\nconst ChartLegend = RechartsPrimitive.Legend;\n\nconst ChartLegendContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> &\n Pick<RechartsPrimitive.LegendProps, 'payload' | 'verticalAlign'> & {\n hideIcon?: boolean;\n nameKey?: string;\n }\n>(({ className, hideIcon = false, payload, verticalAlign = 'bottom', nameKey }, ref) => {\n const { config } = useChart();\n\n if (!payload?.length) {\n return null;\n }\n\n return (\n <div\n ref={ref}\n className={cn('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className)}\n >\n {payload.map((item) => {\n const key = `${nameKey || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n\n return (\n <div\n key={item.value}\n className={cn('flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground')}\n >\n {itemConfig?.icon && !hideIcon ? (\n <itemConfig.icon />\n ) : (\n <div\n className=\"h-2 w-2 shrink-0 rounded-[2px]\"\n style={{\n backgroundColor: item.color,\n }}\n />\n )}\n {itemConfig?.label}\n </div>\n );\n })}\n </div>\n );\n});\nChartLegendContent.displayName = 'ChartLegend';\n\n// Helper to extract item config from a payload.\nfunction getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {\n if (typeof payload !== 'object' || payload === null) {\n return undefined;\n }\n\n const payloadPayload =\n 'payload' in payload && typeof payload.payload === 'object' && payload.payload !== null\n ? payload.payload\n : undefined;\n\n let configLabelKey: string = key;\n\n if (key in payload && typeof payload[key as keyof typeof payload] === 'string') {\n configLabelKey = payload[key as keyof typeof payload] as string;\n } else if (\n payloadPayload &&\n key in payloadPayload &&\n typeof payloadPayload[key as keyof typeof payloadPayload] === 'string'\n ) {\n configLabelKey = payloadPayload[key as keyof typeof payloadPayload] as string;\n }\n\n return configLabelKey in config ? config[configLabelKey] : config[key as keyof typeof config];\n}\n\nexport { ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, ChartLegendContent, ChartStyle };\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/chart.js","../../../components/ui/chart.tsx"],"names":["config"],"mappings":"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","file":"/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/chart.js","sourcesContent":[null,"\"use client\";\n'use client';\n\nimport * as React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { cn } from '../../lib/utils';\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: '', dark: '.dark' } as const;\n\nexport type ChartConfig = {\n [k in string]: {\n label?: React.ReactNode;\n icon?: React.ComponentType;\n } & ({ color?: string; theme?: never } | { color?: never; theme: Record<keyof typeof THEMES, string> });\n};\n\ntype ChartContextProps = {\n config: ChartConfig;\n};\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null);\n\nfunction useChart() {\n const context = React.useContext(ChartContext);\n\n if (!context) {\n throw new Error('useChart must be used within a <ChartContainer />');\n }\n\n return context;\n}\n\nconst ChartContainer = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n config: ChartConfig;\n children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>['children'];\n }\n>(({ id, className, children, config, ...props }, ref) => {\n const uniqueId = React.useId();\n const chartId = `chart-${id || uniqueId.replace(/:/g, '')}`;\n\n return (\n <ChartContext.Provider value={{ config }}>\n <div\n data-chart={chartId}\n ref={ref}\n className={cn(\n \"flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none\",\n className,\n )}\n {...props}\n >\n <ChartStyle id={chartId} config={config} />\n <RechartsPrimitive.ResponsiveContainer>{children}</RechartsPrimitive.ResponsiveContainer>\n </div>\n </ChartContext.Provider>\n );\n});\nChartContainer.displayName = 'Chart';\n\nconst ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {\n const colorConfig = Object.entries(config).filter(([, config]) => config.theme || config.color);\n\n if (!colorConfig.length) {\n return null;\n }\n\n return (\n <style\n dangerouslySetInnerHTML={{\n __html: Object.entries(THEMES)\n .map(\n ([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n .map(([key, itemConfig]) => {\n const color = itemConfig.theme?.[theme as keyof typeof itemConfig.theme] || itemConfig.color;\n return color ? ` --color-${key}: ${color};` : null;\n })\n .join('\\n')}\n}\n`,\n )\n .join('\\n'),\n }}\n />\n );\n};\n\nconst ChartTooltip = RechartsPrimitive.Tooltip;\n\nconst ChartTooltipContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof RechartsPrimitive.Tooltip> &\n React.ComponentProps<'div'> & {\n hideLabel?: boolean;\n hideIndicator?: boolean;\n indicator?: 'line' | 'dot' | 'dashed';\n nameKey?: string;\n labelKey?: string;\n }\n>(\n (\n {\n active,\n payload,\n className,\n indicator = 'dot',\n hideLabel = false,\n hideIndicator = false,\n label,\n labelFormatter,\n labelClassName,\n formatter,\n color,\n nameKey,\n labelKey,\n },\n ref,\n ) => {\n const { config } = useChart();\n\n const tooltipLabel = React.useMemo(() => {\n if (hideLabel || !payload?.length) {\n return null;\n }\n\n const [item] = payload;\n const key = `${labelKey || item.dataKey || item.name || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const value =\n !labelKey && typeof label === 'string'\n ? config[label as keyof typeof config]?.label || label\n : itemConfig?.label;\n\n if (labelFormatter) {\n return <div className={cn('font-medium', labelClassName)}>{labelFormatter(value, payload)}</div>;\n }\n\n if (!value) {\n return null;\n }\n\n return <div className={cn('font-medium', labelClassName)}>{value}</div>;\n }, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);\n\n if (!active || !payload?.length) {\n return null;\n }\n\n const nestLabel = payload.length === 1 && indicator !== 'dot';\n\n return (\n <div\n ref={ref}\n className={cn(\n 'grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl',\n className,\n )}\n >\n {!nestLabel ? tooltipLabel : null}\n <div className=\"grid gap-1.5\">\n {payload.map((item, index) => {\n const key = `${nameKey || item.name || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const indicatorColor = color || item.payload.fill || item.color;\n\n return (\n <div\n key={item.dataKey}\n className={cn(\n 'flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground',\n indicator === 'dot' && 'items-center',\n )}\n >\n {formatter && item?.value !== undefined && item.name ? (\n formatter(item.value, item.name, item, index, item.payload)\n ) : (\n <>\n {itemConfig?.icon ? (\n <itemConfig.icon />\n ) : (\n !hideIndicator && (\n <div\n className={cn('shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]', {\n 'h-2.5 w-2.5': indicator === 'dot',\n 'w-1': indicator === 'line',\n 'w-0 border-[1.5px] border-dashed bg-transparent': indicator === 'dashed',\n 'my-0.5': nestLabel && indicator === 'dashed',\n })}\n style={\n {\n '--color-bg': indicatorColor,\n '--color-border': indicatorColor,\n } as React.CSSProperties\n }\n />\n )\n )}\n <div\n className={cn(\n 'flex flex-1 justify-between leading-none',\n nestLabel ? 'items-end' : 'items-center',\n )}\n >\n <div className=\"grid gap-1.5\">\n {nestLabel ? tooltipLabel : null}\n <span className=\"text-muted-foreground\">{itemConfig?.label || item.name}</span>\n </div>\n {item.value && (\n <span className=\"font-mono font-medium tabular-nums text-foreground\">\n {item.value.toLocaleString()}\n </span>\n )}\n </div>\n </>\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n },\n);\nChartTooltipContent.displayName = 'ChartTooltip';\n\nconst ChartLegend = RechartsPrimitive.Legend;\n\nconst ChartLegendContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> &\n Pick<RechartsPrimitive.LegendProps, 'payload' | 'verticalAlign'> & {\n hideIcon?: boolean;\n nameKey?: string;\n }\n>(({ className, hideIcon = false, payload, verticalAlign = 'bottom', nameKey }, ref) => {\n const { config } = useChart();\n\n if (!payload?.length) {\n return null;\n }\n\n return (\n <div\n ref={ref}\n className={cn('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className)}\n >\n {payload.map((item) => {\n const key = `${nameKey || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n\n return (\n <div\n key={item.value}\n className={cn('flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground')}\n >\n {itemConfig?.icon && !hideIcon ? (\n <itemConfig.icon />\n ) : (\n <div\n className=\"h-2 w-2 shrink-0 rounded-[2px]\"\n style={{\n backgroundColor: item.color,\n }}\n />\n )}\n {itemConfig?.label}\n </div>\n );\n })}\n </div>\n );\n});\nChartLegendContent.displayName = 'ChartLegend';\n\n// Helper to extract item config from a payload.\nfunction getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {\n if (typeof payload !== 'object' || payload === null) {\n return undefined;\n }\n\n const payloadPayload =\n 'payload' in payload && typeof payload.payload === 'object' && payload.payload !== null\n ? payload.payload\n : undefined;\n\n let configLabelKey: string = key;\n\n if (key in payload && typeof payload[key as keyof typeof payload] === 'string') {\n configLabelKey = payload[key as keyof typeof payload] as string;\n } else if (\n payloadPayload &&\n key in payloadPayload &&\n typeof payloadPayload[key as keyof typeof payloadPayload] === 'string'\n ) {\n configLabelKey = payloadPayload[key as keyof typeof payloadPayload] as string;\n }\n\n return configLabelKey in config ? config[configLabelKey] : config[key as keyof typeof config];\n}\n\nexport { ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, ChartLegendContent, ChartStyle };\n"]}
|
package/components/ui/chart.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../components/ui/chart.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { cn } from '../../lib/utils';\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: '', dark: '.dark' } as const;\n\nexport type ChartConfig = {\n [k in string]: {\n label?: React.ReactNode;\n icon?: React.ComponentType;\n } & ({ color?: string; theme?: never } | { color?: never; theme: Record<keyof typeof THEMES, string> });\n};\n\ntype ChartContextProps = {\n config: ChartConfig;\n};\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null);\n\nfunction useChart() {\n const context = React.useContext(ChartContext);\n\n if (!context) {\n throw new Error('useChart must be used within a <ChartContainer />');\n }\n\n return context;\n}\n\nconst ChartContainer = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n config: ChartConfig;\n children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>['children'];\n }\n>(({ id, className, children, config, ...props }, ref) => {\n const uniqueId = React.useId();\n const chartId = `chart-${id || uniqueId.replace(/:/g, '')}`;\n\n return (\n <ChartContext.Provider value={{ config }}>\n <div\n data-chart={chartId}\n ref={ref}\n className={cn(\n \"flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none\",\n className,\n )}\n {...props}\n >\n <ChartStyle id={chartId} config={config} />\n <RechartsPrimitive.ResponsiveContainer>{children}</RechartsPrimitive.ResponsiveContainer>\n </div>\n </ChartContext.Provider>\n );\n});\nChartContainer.displayName = 'Chart';\n\nconst ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {\n const colorConfig = Object.entries(config).filter(([, config]) => config.theme || config.color);\n\n if (!colorConfig.length) {\n return null;\n }\n\n return (\n <style\n dangerouslySetInnerHTML={{\n __html: Object.entries(THEMES)\n .map(\n ([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n .map(([key, itemConfig]) => {\n const color = itemConfig.theme?.[theme as keyof typeof itemConfig.theme] || itemConfig.color;\n return color ? ` --color-${key}: ${color};` : null;\n })\n .join('\\n')}\n}\n`,\n )\n .join('\\n'),\n }}\n />\n );\n};\n\nconst ChartTooltip = RechartsPrimitive.Tooltip;\n\nconst ChartTooltipContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof RechartsPrimitive.Tooltip> &\n React.ComponentProps<'div'> & {\n hideLabel?: boolean;\n hideIndicator?: boolean;\n indicator?: 'line' | 'dot' | 'dashed';\n nameKey?: string;\n labelKey?: string;\n }\n>(\n (\n {\n active,\n payload,\n className,\n indicator = 'dot',\n hideLabel = false,\n hideIndicator = false,\n label,\n labelFormatter,\n labelClassName,\n formatter,\n color,\n nameKey,\n labelKey,\n },\n ref,\n ) => {\n const { config } = useChart();\n\n const tooltipLabel = React.useMemo(() => {\n if (hideLabel || !payload?.length) {\n return null;\n }\n\n const [item] = payload;\n const key = `${labelKey || item.dataKey || item.name || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const value =\n !labelKey && typeof label === 'string'\n ? config[label as keyof typeof config]?.label || label\n : itemConfig?.label;\n\n if (labelFormatter) {\n return <div className={cn('font-medium', labelClassName)}>{labelFormatter(value, payload)}</div>;\n }\n\n if (!value) {\n return null;\n }\n\n return <div className={cn('font-medium', labelClassName)}>{value}</div>;\n }, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);\n\n if (!active || !payload?.length) {\n return null;\n }\n\n const nestLabel = payload.length === 1 && indicator !== 'dot';\n\n return (\n <div\n ref={ref}\n className={cn(\n 'grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl',\n className,\n )}\n >\n {!nestLabel ? tooltipLabel : null}\n <div className=\"grid gap-1.5\">\n {payload.map((item, index) => {\n const key = `${nameKey || item.name || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const indicatorColor = color || item.payload.fill || item.color;\n\n return (\n <div\n key={item.dataKey}\n className={cn(\n 'flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground',\n indicator === 'dot' && 'items-center',\n )}\n >\n {formatter && item?.value !== undefined && item.name ? (\n formatter(item.value, item.name, item, index, item.payload)\n ) : (\n <>\n {itemConfig?.icon ? (\n <itemConfig.icon />\n ) : (\n !hideIndicator && (\n <div\n className={cn('shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]', {\n 'h-2.5 w-2.5': indicator === 'dot',\n 'w-1': indicator === 'line',\n 'w-0 border-[1.5px] border-dashed bg-transparent': indicator === 'dashed',\n 'my-0.5': nestLabel && indicator === 'dashed',\n })}\n style={\n {\n '--color-bg': indicatorColor,\n '--color-border': indicatorColor,\n } as React.CSSProperties\n }\n />\n )\n )}\n <div\n className={cn(\n 'flex flex-1 justify-between leading-none',\n nestLabel ? 'items-end' : 'items-center',\n )}\n >\n <div className=\"grid gap-1.5\">\n {nestLabel ? tooltipLabel : null}\n <span className=\"text-muted-foreground\">{itemConfig?.label || item.name}</span>\n </div>\n {item.value && (\n <span className=\"font-mono font-medium tabular-nums text-foreground\">\n {item.value.toLocaleString()}\n </span>\n )}\n </div>\n </>\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n },\n);\nChartTooltipContent.displayName = 'ChartTooltip';\n\nconst ChartLegend = RechartsPrimitive.Legend;\n\nconst ChartLegendContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> &\n Pick<RechartsPrimitive.LegendProps, 'payload' | 'verticalAlign'> & {\n hideIcon?: boolean;\n nameKey?: string;\n }\n>(({ className, hideIcon = false, payload, verticalAlign = 'bottom', nameKey }, ref) => {\n const { config } = useChart();\n\n if (!payload?.length) {\n return null;\n }\n\n return (\n <div\n ref={ref}\n className={cn('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className)}\n >\n {payload.map((item) => {\n const key = `${nameKey || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n\n return (\n <div\n key={item.value}\n className={cn('flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground')}\n >\n {itemConfig?.icon && !hideIcon ? (\n <itemConfig.icon />\n ) : (\n <div\n className=\"h-2 w-2 shrink-0 rounded-[2px]\"\n style={{\n backgroundColor: item.color,\n }}\n />\n )}\n {itemConfig?.label}\n </div>\n );\n })}\n </div>\n );\n});\nChartLegendContent.displayName = 'ChartLegend';\n\n// Helper to extract item config from a payload.\nfunction getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {\n if (typeof payload !== 'object' || payload === null) {\n return undefined;\n }\n\n const payloadPayload =\n 'payload' in payload && typeof payload.payload === 'object' && payload.payload !== null\n ? payload.payload\n : undefined;\n\n let configLabelKey: string = key;\n\n if (key in payload && typeof payload[key as keyof typeof payload] === 'string') {\n configLabelKey = payload[key as keyof typeof payload] as string;\n } else if (\n payloadPayload &&\n key in payloadPayload &&\n typeof payloadPayload[key as keyof typeof payloadPayload] === 'string'\n ) {\n configLabelKey = payloadPayload[key as keyof typeof payloadPayload] as string;\n }\n\n return configLabelKey in config ? config[configLabelKey] : config[key as keyof typeof config];\n}\n\nexport { ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, ChartLegendContent, ChartStyle };\n"],"mappings":"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","names":["config"]}
|
|
1
|
+
{"version":3,"sources":["../../../components/ui/chart.tsx"],"sourcesContent":["\"use client\";\n'use client';\n\nimport * as React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { cn } from '../../lib/utils';\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: '', dark: '.dark' } as const;\n\nexport type ChartConfig = {\n [k in string]: {\n label?: React.ReactNode;\n icon?: React.ComponentType;\n } & ({ color?: string; theme?: never } | { color?: never; theme: Record<keyof typeof THEMES, string> });\n};\n\ntype ChartContextProps = {\n config: ChartConfig;\n};\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null);\n\nfunction useChart() {\n const context = React.useContext(ChartContext);\n\n if (!context) {\n throw new Error('useChart must be used within a <ChartContainer />');\n }\n\n return context;\n}\n\nconst ChartContainer = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n config: ChartConfig;\n children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>['children'];\n }\n>(({ id, className, children, config, ...props }, ref) => {\n const uniqueId = React.useId();\n const chartId = `chart-${id || uniqueId.replace(/:/g, '')}`;\n\n return (\n <ChartContext.Provider value={{ config }}>\n <div\n data-chart={chartId}\n ref={ref}\n className={cn(\n \"flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none\",\n className,\n )}\n {...props}\n >\n <ChartStyle id={chartId} config={config} />\n <RechartsPrimitive.ResponsiveContainer>{children}</RechartsPrimitive.ResponsiveContainer>\n </div>\n </ChartContext.Provider>\n );\n});\nChartContainer.displayName = 'Chart';\n\nconst ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {\n const colorConfig = Object.entries(config).filter(([, config]) => config.theme || config.color);\n\n if (!colorConfig.length) {\n return null;\n }\n\n return (\n <style\n dangerouslySetInnerHTML={{\n __html: Object.entries(THEMES)\n .map(\n ([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n .map(([key, itemConfig]) => {\n const color = itemConfig.theme?.[theme as keyof typeof itemConfig.theme] || itemConfig.color;\n return color ? ` --color-${key}: ${color};` : null;\n })\n .join('\\n')}\n}\n`,\n )\n .join('\\n'),\n }}\n />\n );\n};\n\nconst ChartTooltip = RechartsPrimitive.Tooltip;\n\nconst ChartTooltipContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof RechartsPrimitive.Tooltip> &\n React.ComponentProps<'div'> & {\n hideLabel?: boolean;\n hideIndicator?: boolean;\n indicator?: 'line' | 'dot' | 'dashed';\n nameKey?: string;\n labelKey?: string;\n }\n>(\n (\n {\n active,\n payload,\n className,\n indicator = 'dot',\n hideLabel = false,\n hideIndicator = false,\n label,\n labelFormatter,\n labelClassName,\n formatter,\n color,\n nameKey,\n labelKey,\n },\n ref,\n ) => {\n const { config } = useChart();\n\n const tooltipLabel = React.useMemo(() => {\n if (hideLabel || !payload?.length) {\n return null;\n }\n\n const [item] = payload;\n const key = `${labelKey || item.dataKey || item.name || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const value =\n !labelKey && typeof label === 'string'\n ? config[label as keyof typeof config]?.label || label\n : itemConfig?.label;\n\n if (labelFormatter) {\n return <div className={cn('font-medium', labelClassName)}>{labelFormatter(value, payload)}</div>;\n }\n\n if (!value) {\n return null;\n }\n\n return <div className={cn('font-medium', labelClassName)}>{value}</div>;\n }, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);\n\n if (!active || !payload?.length) {\n return null;\n }\n\n const nestLabel = payload.length === 1 && indicator !== 'dot';\n\n return (\n <div\n ref={ref}\n className={cn(\n 'grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl',\n className,\n )}\n >\n {!nestLabel ? tooltipLabel : null}\n <div className=\"grid gap-1.5\">\n {payload.map((item, index) => {\n const key = `${nameKey || item.name || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const indicatorColor = color || item.payload.fill || item.color;\n\n return (\n <div\n key={item.dataKey}\n className={cn(\n 'flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground',\n indicator === 'dot' && 'items-center',\n )}\n >\n {formatter && item?.value !== undefined && item.name ? (\n formatter(item.value, item.name, item, index, item.payload)\n ) : (\n <>\n {itemConfig?.icon ? (\n <itemConfig.icon />\n ) : (\n !hideIndicator && (\n <div\n className={cn('shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]', {\n 'h-2.5 w-2.5': indicator === 'dot',\n 'w-1': indicator === 'line',\n 'w-0 border-[1.5px] border-dashed bg-transparent': indicator === 'dashed',\n 'my-0.5': nestLabel && indicator === 'dashed',\n })}\n style={\n {\n '--color-bg': indicatorColor,\n '--color-border': indicatorColor,\n } as React.CSSProperties\n }\n />\n )\n )}\n <div\n className={cn(\n 'flex flex-1 justify-between leading-none',\n nestLabel ? 'items-end' : 'items-center',\n )}\n >\n <div className=\"grid gap-1.5\">\n {nestLabel ? tooltipLabel : null}\n <span className=\"text-muted-foreground\">{itemConfig?.label || item.name}</span>\n </div>\n {item.value && (\n <span className=\"font-mono font-medium tabular-nums text-foreground\">\n {item.value.toLocaleString()}\n </span>\n )}\n </div>\n </>\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n },\n);\nChartTooltipContent.displayName = 'ChartTooltip';\n\nconst ChartLegend = RechartsPrimitive.Legend;\n\nconst ChartLegendContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> &\n Pick<RechartsPrimitive.LegendProps, 'payload' | 'verticalAlign'> & {\n hideIcon?: boolean;\n nameKey?: string;\n }\n>(({ className, hideIcon = false, payload, verticalAlign = 'bottom', nameKey }, ref) => {\n const { config } = useChart();\n\n if (!payload?.length) {\n return null;\n }\n\n return (\n <div\n ref={ref}\n className={cn('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className)}\n >\n {payload.map((item) => {\n const key = `${nameKey || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n\n return (\n <div\n key={item.value}\n className={cn('flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground')}\n >\n {itemConfig?.icon && !hideIcon ? (\n <itemConfig.icon />\n ) : (\n <div\n className=\"h-2 w-2 shrink-0 rounded-[2px]\"\n style={{\n backgroundColor: item.color,\n }}\n />\n )}\n {itemConfig?.label}\n </div>\n );\n })}\n </div>\n );\n});\nChartLegendContent.displayName = 'ChartLegend';\n\n// Helper to extract item config from a payload.\nfunction getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {\n if (typeof payload !== 'object' || payload === null) {\n return undefined;\n }\n\n const payloadPayload =\n 'payload' in payload && typeof payload.payload === 'object' && payload.payload !== null\n ? payload.payload\n : undefined;\n\n let configLabelKey: string = key;\n\n if (key in payload && typeof payload[key as keyof typeof payload] === 'string') {\n configLabelKey = payload[key as keyof typeof payload] as string;\n } else if (\n payloadPayload &&\n key in payloadPayload &&\n typeof payloadPayload[key as keyof typeof payloadPayload] === 'string'\n ) {\n configLabelKey = payloadPayload[key as keyof typeof payloadPayload] as string;\n }\n\n return configLabelKey in config ? config[configLabelKey] : config[key as keyof typeof config];\n}\n\nexport { ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, ChartLegendContent, ChartStyle };\n"],"mappings":"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","names":["config"]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
require('../../chunk-
|
|
4
|
+
|
|
5
|
+
var _chunkLE44LDODjs = require('../../chunk-LE44LDOD.js');
|
|
6
|
+
require('../../chunk-6N4WCMTE.js');
|
|
6
7
|
require('../../chunk-2NMEKWO5.js');
|
|
7
8
|
|
|
8
9
|
|
|
9
|
-
exports.Checkbox =
|
|
10
|
+
exports.Checkbox = _chunkLE44LDODjs.Checkbox;
|
|
10
11
|
//# sourceMappingURL=checkbox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/checkbox.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ;AACE;AACF,0DAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC;AACE;AACF,6CAAC","file":"/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/checkbox.js"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
3
|
-
|
|
2
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
3
|
+
|
|
4
|
+
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
var CollapsibleTrigger2 = CollapsiblePrimitive.CollapsibleTrigger;
|
|
9
|
-
var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
|
|
6
|
+
|
|
7
|
+
var _chunkN2AJY4KMjs = require('../../chunk-N2AJY4KM.js');
|
|
8
|
+
require('../../chunk-2NMEKWO5.js');
|
|
10
9
|
|
|
11
10
|
|
|
12
11
|
|
|
13
12
|
|
|
14
|
-
exports.Collapsible = Collapsible; exports.CollapsibleContent =
|
|
13
|
+
exports.Collapsible = _chunkN2AJY4KMjs.Collapsible; exports.CollapsibleContent = _chunkN2AJY4KMjs.CollapsibleContent; exports.CollapsibleTrigger = _chunkN2AJY4KMjs.CollapsibleTrigger;
|
|
15
14
|
//# sourceMappingURL=collapsible.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/collapsible.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ;AACE;AACA;AACA;AACF,0DAAgC;AAChC,mCAAgC;AAChC;AACE;AACA;AACA;AACF,uLAAC","file":"/home/ahnjun/projects/egose-shadcn/packages/react/dist/components/ui/collapsible.js"}
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
import {
|
|
3
|
+
Collapsible,
|
|
4
|
+
CollapsibleContent,
|
|
5
|
+
CollapsibleTrigger
|
|
6
|
+
} from "../../chunk-C7I5QYIS.mjs";
|
|
2
7
|
import "../../chunk-YOSPWY5K.mjs";
|
|
3
|
-
|
|
4
|
-
// components/ui/collapsible.tsx
|
|
5
|
-
import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
|
|
6
|
-
var Collapsible = CollapsiblePrimitive.Root;
|
|
7
|
-
var CollapsibleTrigger2 = CollapsiblePrimitive.CollapsibleTrigger;
|
|
8
|
-
var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
|
|
9
8
|
export {
|
|
10
9
|
Collapsible,
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
CollapsibleContent,
|
|
11
|
+
CollapsibleTrigger
|
|
13
12
|
};
|
|
14
13
|
//# sourceMappingURL=collapsible.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -23,7 +23,7 @@ declare const CommandInput: React.ForwardRefExoticComponent<Omit<Omit<Pick<Pick<
|
|
|
23
23
|
ref?: React.Ref<HTMLInputElement>;
|
|
24
24
|
} & {
|
|
25
25
|
asChild?: boolean;
|
|
26
|
-
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "
|
|
26
|
+
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "type" | "value"> & {
|
|
27
27
|
value?: string;
|
|
28
28
|
onValueChange?: (search: string) => void;
|
|
29
29
|
} & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -23,7 +23,7 @@ declare const CommandInput: React.ForwardRefExoticComponent<Omit<Omit<Pick<Pick<
|
|
|
23
23
|
ref?: React.Ref<HTMLInputElement>;
|
|
24
24
|
} & {
|
|
25
25
|
asChild?: boolean;
|
|
26
|
-
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "
|
|
26
|
+
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "type" | "value"> & {
|
|
27
27
|
value?: string;
|
|
28
28
|
onValueChange?: (search: string) => void;
|
|
29
29
|
} & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
package/components/ui/command.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var _chunkGO4LT2IUjs = require('../../chunk-GO4LT2IU.js');
|
|
6
5
|
|
|
6
|
+
var _chunkBJFWZFVBjs = require('../../chunk-BJFWZFVB.js');
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
var _chunk6N4WCMTEjs = require('../../chunk-6N4WCMTE.js');
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
|
|
@@ -21,7 +22,7 @@ var Command = React.forwardRef((_a, ref) => {
|
|
|
21
22
|
_cmdk.Command,
|
|
22
23
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
23
24
|
ref,
|
|
24
|
-
className:
|
|
25
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
25
26
|
"flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",
|
|
26
27
|
className
|
|
27
28
|
)
|
|
@@ -31,7 +32,7 @@ var Command = React.forwardRef((_a, ref) => {
|
|
|
31
32
|
Command.displayName = _cmdk.Command.displayName;
|
|
32
33
|
var CommandDialog = (_a) => {
|
|
33
34
|
var _b = _a, { children } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["children"]);
|
|
34
|
-
return /* @__PURE__ */ React.createElement(
|
|
35
|
+
return /* @__PURE__ */ React.createElement(_chunkBJFWZFVBjs.Dialog, _chunk2NMEKWO5js.__spreadValues.call(void 0, {}, props), /* @__PURE__ */ React.createElement(_chunkBJFWZFVBjs.DialogContent, { className: "overflow-hidden p-0" }, /* @__PURE__ */ React.createElement(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5" }, children)));
|
|
35
36
|
};
|
|
36
37
|
var CommandInput = React.forwardRef((_a, ref) => {
|
|
37
38
|
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
@@ -39,7 +40,7 @@ var CommandInput = React.forwardRef((_a, ref) => {
|
|
|
39
40
|
_cmdk.Command.Input,
|
|
40
41
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
41
42
|
ref,
|
|
42
|
-
className:
|
|
43
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
43
44
|
"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
44
45
|
className
|
|
45
46
|
)
|
|
@@ -53,7 +54,7 @@ var CommandList = React.forwardRef((_a, ref) => {
|
|
|
53
54
|
_cmdk.Command.List,
|
|
54
55
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
55
56
|
ref,
|
|
56
|
-
className:
|
|
57
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0, "max-h-[300px] overflow-y-auto overflow-x-hidden", className)
|
|
57
58
|
}, props)
|
|
58
59
|
);
|
|
59
60
|
});
|
|
@@ -66,7 +67,7 @@ var CommandGroup = React.forwardRef((_a, ref) => {
|
|
|
66
67
|
_cmdk.Command.Group,
|
|
67
68
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
68
69
|
ref,
|
|
69
|
-
className:
|
|
70
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
70
71
|
"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",
|
|
71
72
|
className
|
|
72
73
|
)
|
|
@@ -76,7 +77,7 @@ var CommandGroup = React.forwardRef((_a, ref) => {
|
|
|
76
77
|
CommandGroup.displayName = _cmdk.Command.Group.displayName;
|
|
77
78
|
var CommandSeparator = React.forwardRef((_a, ref) => {
|
|
78
79
|
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
79
|
-
return /* @__PURE__ */ React.createElement(_cmdk.Command.Separator, _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className:
|
|
80
|
+
return /* @__PURE__ */ React.createElement(_cmdk.Command.Separator, _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunk6N4WCMTEjs.cn.call(void 0, "-mx-1 h-px bg-border", className) }, props));
|
|
80
81
|
});
|
|
81
82
|
CommandSeparator.displayName = _cmdk.Command.Separator.displayName;
|
|
82
83
|
var CommandItem = React.forwardRef((_a, ref) => {
|
|
@@ -85,7 +86,7 @@ var CommandItem = React.forwardRef((_a, ref) => {
|
|
|
85
86
|
_cmdk.Command.Item,
|
|
86
87
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
87
88
|
ref,
|
|
88
|
-
className:
|
|
89
|
+
className: _chunk6N4WCMTEjs.cn.call(void 0,
|
|
89
90
|
"relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
|
|
90
91
|
className
|
|
91
92
|
)
|
|
@@ -95,7 +96,7 @@ var CommandItem = React.forwardRef((_a, ref) => {
|
|
|
95
96
|
CommandItem.displayName = _cmdk.Command.Item.displayName;
|
|
96
97
|
var CommandShortcut = (_a) => {
|
|
97
98
|
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
98
|
-
return /* @__PURE__ */ React.createElement("span", _chunk2NMEKWO5js.__spreadValues.call(void 0, { className:
|
|
99
|
+
return /* @__PURE__ */ React.createElement("span", _chunk2NMEKWO5js.__spreadValues.call(void 0, { className: _chunk6N4WCMTEjs.cn.call(void 0, "ml-auto text-xs tracking-widest text-muted-foreground", className) }, props));
|
|
99
100
|
};
|
|
100
101
|
CommandShortcut.displayName = "CommandShortcut";
|
|
101
102
|
|