@egose/shadcn-theme 0.0.56 → 0.0.58
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-LE44LDOD.js → chunk-23MJMEQC.js} +4 -4
- package/chunk-23MJMEQC.js.map +1 -0
- package/{chunk-JHUXWZVG.js → chunk-2DJW7DN4.js} +10 -10
- package/chunk-2DJW7DN4.js.map +1 -0
- package/{chunk-DSGXBKNS.js → chunk-3AWU47KT.js} +8 -8
- package/chunk-3AWU47KT.js.map +1 -0
- package/{chunk-DTJ43DCW.mjs → chunk-3DG54EVO.mjs} +6 -6
- package/chunk-3DG54EVO.mjs.map +1 -0
- package/{chunk-ZVBMRCE7.mjs → chunk-43V6CNEG.mjs} +2 -2
- package/chunk-43V6CNEG.mjs.map +1 -0
- package/{chunk-TMC4JKD5.mjs → chunk-47TKC7DB.mjs} +2 -2
- package/chunk-47TKC7DB.mjs.map +1 -0
- package/{chunk-RMDDLEPA.js → chunk-4O25L26A.js} +3 -3
- package/{chunk-JW7N7IR5.mjs.map → chunk-4O25L26A.js.map} +1 -1
- package/{chunk-4YSHGGKX.js → chunk-4SYFVOM2.js} +2 -2
- package/{chunk-4YSHGGKX.js.map → chunk-4SYFVOM2.js.map} +1 -1
- package/{chunk-MYO4WRNB.js → chunk-5AC6SSUU.js} +41 -41
- package/chunk-5AC6SSUU.js.map +1 -0
- package/{chunk-PCR4GC74.js → chunk-5WZCVX6I.js} +11 -8
- package/chunk-5WZCVX6I.js.map +1 -0
- package/{chunk-IC3ASFKZ.js → chunk-6POWZMND.js} +3 -3
- package/{chunk-IC3ASFKZ.js.map → chunk-6POWZMND.js.map} +1 -1
- package/{chunk-3T2PPKR3.js → chunk-73TDZTWF.js} +3 -3
- package/chunk-73TDZTWF.js.map +1 -0
- package/{chunk-NI2SIUXO.js → chunk-754FOR4K.js} +11 -11
- package/{chunk-IAJ2ZBSJ.mjs.map → chunk-754FOR4K.js.map} +1 -1
- package/{chunk-4UZN52P7.mjs → chunk-7MDWTJEP.mjs} +2 -2
- package/chunk-7MDWTJEP.mjs.map +1 -0
- package/{chunk-SCM23WSM.js → chunk-7QMZ5MU4.js} +5 -5
- package/chunk-7QMZ5MU4.js.map +1 -0
- package/{chunk-REZO5TYB.mjs → chunk-ABZ4SF2K.mjs} +2 -2
- package/chunk-ABZ4SF2K.mjs.map +1 -0
- package/{chunk-OAAHNESN.mjs → chunk-AJFINSLK.mjs} +2 -2
- package/chunk-AJFINSLK.mjs.map +1 -0
- package/{chunk-W2N2NIVE.js → chunk-APMXMQPZ.js} +3 -3
- package/chunk-APMXMQPZ.js.map +1 -0
- package/{chunk-A34GFF2E.js → chunk-AREM2MQQ.js} +3 -3
- package/chunk-AREM2MQQ.js.map +1 -0
- package/{chunk-ACE5WNTU.mjs → chunk-BE4D3M5Q.mjs} +6 -6
- package/chunk-BE4D3M5Q.mjs.map +1 -0
- package/{chunk-E4SSD5P4.js → chunk-BH4FHKAR.js} +8 -8
- package/chunk-BH4FHKAR.js.map +1 -0
- package/{chunk-GI222XFX.js → chunk-BWKIS24H.js} +8 -8
- package/chunk-BWKIS24H.js.map +1 -0
- package/{chunk-O7E6RNCD.mjs → chunk-C736G6RV.mjs} +7 -7
- package/chunk-C736G6RV.mjs.map +1 -0
- package/{chunk-RY3M2GTK.js → chunk-CSDFVUNP.js} +14 -14
- package/{chunk-RY3M2GTK.js.map → chunk-CSDFVUNP.js.map} +1 -1
- package/{chunk-YAPKDLRQ.mjs → chunk-D6WUNCBI.mjs} +2 -2
- package/chunk-D6WUNCBI.mjs.map +1 -0
- package/{chunk-2R34M7KI.mjs → chunk-DOM2D2R7.mjs} +2 -2
- package/chunk-DOM2D2R7.mjs.map +1 -0
- package/{chunk-R4SF7CSA.mjs → chunk-DPGUIXSL.mjs} +4 -4
- package/chunk-DPGUIXSL.mjs.map +1 -0
- package/{chunk-DMATER3M.mjs → chunk-F57PDM2P.mjs} +4 -4
- package/{chunk-NRHWGE26.mjs → chunk-FJGZ3SDA.mjs} +2 -2
- package/chunk-FJGZ3SDA.mjs.map +1 -0
- package/{chunk-37EH7QCX.mjs → chunk-GVZX7FQQ.mjs} +2 -2
- package/chunk-GVZX7FQQ.mjs.map +1 -0
- package/{chunk-LSKO74NV.js → chunk-GZPKVSCR.js} +3 -3
- package/chunk-GZPKVSCR.js.map +1 -0
- package/{chunk-JW7N7IR5.mjs → chunk-HBKXMTBF.mjs} +2 -2
- package/chunk-HBKXMTBF.mjs.map +1 -0
- package/{chunk-V7M2UXTR.js → chunk-HMEHDD5N.js} +3 -3
- package/{chunk-V7M2UXTR.js.map → chunk-HMEHDD5N.js.map} +1 -1
- package/{chunk-LUIXCCN2.js → chunk-HN73FRPZ.js} +3 -3
- package/{chunk-LUIXCCN2.js.map → chunk-HN73FRPZ.js.map} +1 -1
- package/{chunk-FHSYSVS6.mjs → chunk-HR7QORF3.mjs} +2 -2
- package/chunk-HR7QORF3.mjs.map +1 -0
- package/{chunk-AT6DBL5I.mjs → chunk-IHNDGZWX.mjs} +2 -2
- package/chunk-IHNDGZWX.mjs.map +1 -0
- package/{chunk-LQETWWSU.js → chunk-IYVLRZJ4.js} +2 -2
- package/chunk-IYVLRZJ4.js.map +1 -0
- package/{chunk-LXILG667.mjs → chunk-IYZWOHGP.mjs} +4 -4
- package/chunk-IYZWOHGP.mjs.map +1 -0
- package/{chunk-ARQYTBBZ.mjs → chunk-J4FPBR7A.mjs} +4 -4
- package/chunk-J4FPBR7A.mjs.map +1 -0
- package/{chunk-NVBZVKIT.js → chunk-J4KEZVR5.js} +7 -7
- package/{chunk-NVBZVKIT.js.map → chunk-J4KEZVR5.js.map} +1 -1
- package/{chunk-ZJAFK7BR.mjs → chunk-JVMY3LCD.mjs} +2 -2
- package/chunk-JVMY3LCD.mjs.map +1 -0
- package/{chunk-FMYITAWN.mjs → chunk-K6S2HW6A.mjs} +3 -3
- package/chunk-K6S2HW6A.mjs.map +1 -0
- package/{chunk-F5XCCSBC.mjs → chunk-KGUUDFJE.mjs} +2 -2
- package/chunk-KGUUDFJE.mjs.map +1 -0
- package/{chunk-TUFO3JJE.js → chunk-KNNX4FAH.js} +3 -3
- package/{chunk-TUFO3JJE.js.map → chunk-KNNX4FAH.js.map} +1 -1
- package/{chunk-NK4XTZ5W.js → chunk-LYMKN3NY.js} +3 -3
- package/chunk-LYMKN3NY.js.map +1 -0
- package/{chunk-QDVJN4S3.mjs → chunk-M55DCHAX.mjs} +2 -2
- package/chunk-M55DCHAX.mjs.map +1 -0
- package/{chunk-YWILOKX4.mjs → chunk-MA3OJUIL.mjs} +3 -3
- package/chunk-MA3OJUIL.mjs.map +1 -0
- package/{chunk-PS7WGOZH.mjs → chunk-MKOOSP3M.mjs} +3 -3
- package/chunk-MKOOSP3M.mjs.map +1 -0
- package/{chunk-O2ZEUVTY.js → chunk-MUWMASP4.js} +3 -3
- package/chunk-MUWMASP4.js.map +1 -0
- package/{chunk-JWENANTO.mjs → chunk-NL4534LH.mjs} +2 -2
- package/chunk-NL4534LH.mjs.map +1 -0
- package/{chunk-DGYAXPSD.js → chunk-NUCMI4CP.js} +7 -7
- package/{chunk-DGYAXPSD.js.map → chunk-NUCMI4CP.js.map} +1 -1
- package/{chunk-2QMNPBOE.mjs → chunk-NWVKFMW3.mjs} +2 -2
- package/chunk-NWVKFMW3.mjs.map +1 -0
- package/{chunk-EZZ2YCUU.js → chunk-OFRRRK4N.js} +5 -5
- package/chunk-OFRRRK4N.js.map +1 -0
- package/{chunk-54PLQ33F.mjs → chunk-OI7CIW4X.mjs} +8 -8
- package/chunk-OI7CIW4X.mjs.map +1 -0
- package/{chunk-4XC6EXHZ.mjs → chunk-OJEDITOA.mjs} +3 -3
- package/chunk-OJEDITOA.mjs.map +1 -0
- package/{chunk-QGXFFTPH.js → chunk-OMQVDSR6.js} +4 -4
- package/chunk-OMQVDSR6.js.map +1 -0
- package/{chunk-OXTCSLHP.mjs → chunk-OVHPXYDN.mjs} +2 -2
- package/chunk-OVHPXYDN.mjs.map +1 -0
- package/{chunk-ZOF6UW3D.js → chunk-P6ZPREB6.js} +9 -9
- package/{chunk-ZOF6UW3D.js.map → chunk-P6ZPREB6.js.map} +1 -1
- package/{chunk-U3KAN7IM.js → chunk-PHE5ID6D.js} +8 -8
- package/chunk-PHE5ID6D.js.map +1 -0
- package/{chunk-6N4WCMTE.js → chunk-PSPAJNNB.js} +2 -2
- package/chunk-PSPAJNNB.js.map +1 -0
- package/{chunk-5HD5BGK7.js → chunk-Q5QVXAFP.js} +14 -14
- package/{chunk-5HD5BGK7.js.map → chunk-Q5QVXAFP.js.map} +1 -1
- package/{chunk-CPGH6LBC.mjs → chunk-QBO4YAYA.mjs} +4 -4
- package/chunk-QBO4YAYA.mjs.map +1 -0
- package/{chunk-IAJ2ZBSJ.mjs → chunk-QJKRCNUX.mjs} +2 -2
- package/chunk-QJKRCNUX.mjs.map +1 -0
- package/{chunk-EJQJ3BCF.mjs → chunk-QJLNEVAE.mjs} +6 -3
- package/chunk-QJLNEVAE.mjs.map +1 -0
- package/{chunk-FQQGM55E.js → chunk-QW2TXVH4.js} +5 -5
- package/{chunk-FQQGM55E.js.map → chunk-QW2TXVH4.js.map} +1 -1
- package/{chunk-R7L4TN3C.mjs → chunk-SCU2RG4I.mjs} +2 -2
- package/chunk-SCU2RG4I.mjs.map +1 -0
- package/{chunk-4NMFJSJN.mjs → chunk-SQK67X4D.mjs} +3 -3
- package/chunk-SQK67X4D.mjs.map +1 -0
- package/{chunk-V4BQYO2M.mjs → chunk-SSL4EXAQ.mjs} +2 -2
- package/chunk-SSL4EXAQ.mjs.map +1 -0
- package/{chunk-Z3VXGHCE.mjs → chunk-SX4LQFOF.mjs} +2 -2
- package/chunk-SX4LQFOF.mjs.map +1 -0
- package/{chunk-M6C2FCM4.mjs → chunk-TXGL3AHG.mjs} +2 -2
- package/chunk-TXGL3AHG.mjs.map +1 -0
- package/{chunk-XJ7GBFHV.js → chunk-UF2IGF36.js} +6 -6
- package/{chunk-XJ7GBFHV.js.map → chunk-UF2IGF36.js.map} +1 -1
- package/{chunk-CTYAFVU5.mjs → chunk-VOED37ZV.mjs} +3 -3
- package/{chunk-CTYAFVU5.mjs.map → chunk-VOED37ZV.mjs.map} +1 -1
- package/{chunk-6KUUJF3I.js → chunk-WGNLM36B.js} +7 -7
- package/{chunk-6KUUJF3I.js.map → chunk-WGNLM36B.js.map} +1 -1
- package/{chunk-NTYWTGYX.mjs → chunk-WXRT742N.mjs} +4 -4
- package/chunk-WXRT742N.mjs.map +1 -0
- package/{chunk-4FD63HEQ.js → chunk-X2Z3YEDV.js} +9 -9
- package/chunk-X2Z3YEDV.js.map +1 -0
- package/{chunk-CE4PBEIL.js → chunk-XCFEBPRG.js} +10 -10
- package/chunk-XCFEBPRG.js.map +1 -0
- package/{chunk-73VYAPJR.js → chunk-XDCB6C5S.js} +9 -9
- package/{chunk-PS7WGOZH.mjs.map → chunk-XDCB6C5S.js.map} +1 -1
- package/{chunk-RSQ25E6Y.js → chunk-XIHKXTB2.js} +8 -8
- package/{chunk-RSQ25E6Y.js.map → chunk-XIHKXTB2.js.map} +1 -1
- package/{chunk-DYUS5722.js → chunk-XP4SPI7B.js} +13 -13
- package/{chunk-DYUS5722.js.map → chunk-XP4SPI7B.js.map} +1 -1
- package/{chunk-I64GW5SA.js → chunk-XWFQVYPB.js} +11 -11
- package/chunk-XWFQVYPB.js.map +1 -0
- package/{chunk-YWWFTM23.js → chunk-YYEQYAZF.js} +5 -5
- package/chunk-YYEQYAZF.js.map +1 -0
- package/{chunk-3BCL4OKX.mjs → chunk-ZEZK2FJ4.mjs} +2 -2
- package/{chunk-3BCL4OKX.mjs.map → chunk-ZEZK2FJ4.mjs.map} +1 -1
- package/components/form/checkbox.js +5 -5
- package/components/form/checkbox.mjs +4 -4
- package/components/form/date-picker.js +9 -9
- 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 +3 -3
- package/components/form/error.mjs +2 -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-searchable-select.js +12 -12
- package/components/form/hook-searchable-select.js.map +1 -1
- package/components/form/hook-searchable-select.mjs +9 -9
- package/components/form/hook-searchable-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/native-select.js +4 -4
- package/components/form/native-select.mjs +3 -3
- package/components/form/searchable-select.js +9 -9
- package/components/form/searchable-select.mjs +8 -8
- package/components/form/select.js +5 -5
- package/components/form/select.mjs +4 -4
- package/components/form/text-input.js +5 -5
- package/components/form/text-input.mjs +4 -4
- package/components/form/textarea.js +5 -5
- package/components/form/textarea.mjs +4 -4
- package/components/form/time-input.js +7 -7
- package/components/form/time-input.mjs +6 -6
- package/components/ui/accordion.js +4 -4
- package/components/ui/accordion.js.map +1 -1
- package/components/ui/accordion.mjs +1 -1
- package/components/ui/accordion.mjs.map +1 -1
- package/components/ui/alert-dialog.js +11 -11
- package/components/ui/alert-dialog.js.map +1 -1
- package/components/ui/alert-dialog.mjs +3 -3
- package/components/ui/alert-dialog.mjs.map +1 -1
- package/components/ui/alert.d.mts +2 -6
- package/components/ui/alert.d.ts +2 -6
- package/components/ui/alert.js +3 -3
- package/components/ui/alert.mjs +2 -2
- package/components/ui/avatar.js +3 -3
- package/components/ui/avatar.mjs +2 -2
- package/components/ui/badge.d.mts +2 -7
- package/components/ui/badge.d.ts +2 -7
- package/components/ui/badge.js +3 -3
- package/components/ui/badge.mjs +2 -2
- package/components/ui/basic-alert.d.mts +0 -1
- package/components/ui/basic-alert.d.ts +0 -1
- package/components/ui/basic-alert.js +3 -3
- package/components/ui/basic-alert.mjs +2 -2
- package/components/ui/breadcrumb.js +3 -3
- package/components/ui/breadcrumb.mjs +2 -2
- package/components/ui/button.d.mts +2 -8
- package/components/ui/button.d.ts +2 -8
- package/components/ui/button.js +4 -4
- package/components/ui/button.mjs +3 -3
- package/components/ui/calendar.js +5 -5
- package/components/ui/calendar.mjs +4 -4
- package/components/ui/card.js +7 -7
- package/components/ui/card.js.map +1 -1
- package/components/ui/card.mjs +1 -1
- package/components/ui/card.mjs.map +1 -1
- package/components/ui/carousel.d.mts +2 -3
- package/components/ui/carousel.d.ts +2 -3
- package/components/ui/carousel.js +10 -10
- package/components/ui/carousel.js.map +1 -1
- package/components/ui/carousel.mjs +3 -3
- package/components/ui/carousel.mjs.map +1 -1
- package/components/ui/checkbox.js +3 -3
- package/components/ui/checkbox.mjs +2 -2
- package/components/ui/command.js +4 -4
- package/components/ui/command.mjs +3 -3
- package/components/ui/context-menu.js +10 -10
- package/components/ui/context-menu.js.map +1 -1
- package/components/ui/context-menu.mjs +1 -1
- package/components/ui/context-menu.mjs.map +1 -1
- package/components/ui/copy-button.js +6 -6
- package/components/ui/copy-button.js.map +1 -1
- package/components/ui/copy-button.mjs +2 -2
- package/components/ui/copy-button.mjs.map +1 -1
- package/components/ui/dialog.js +3 -3
- 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 +3 -3
- package/components/ui/dropdown-menu.mjs +2 -2
- package/components/ui/extension/file-input.js +5 -5
- package/components/ui/extension/file-input.mjs +4 -4
- package/components/ui/extension/multi-select.js +15 -15
- package/components/ui/extension/multi-select.js.map +1 -1
- package/components/ui/extension/multi-select.mjs +4 -4
- package/components/ui/extension/multi-select.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 +5 -5
- package/components/ui/input-otp.js.map +1 -1
- package/components/ui/input-otp.mjs +1 -1
- package/components/ui/input-otp.mjs.map +1 -1
- package/components/ui/input.js +3 -3
- package/components/ui/input.mjs +2 -2
- package/components/ui/label.d.mts +2 -3
- package/components/ui/label.d.ts +2 -3
- package/components/ui/label.js +3 -3
- package/components/ui/label.mjs +2 -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.d.mts +1 -2
- package/components/ui/navigation-menu.d.ts +1 -2
- package/components/ui/navigation-menu.js +8 -8
- package/components/ui/navigation-menu.js.map +1 -1
- package/components/ui/navigation-menu.mjs +1 -1
- package/components/ui/navigation-menu.mjs.map +1 -1
- package/components/ui/pagination.d.mts +0 -1
- package/components/ui/pagination.d.ts +0 -1
- package/components/ui/pagination.js +11 -11
- package/components/ui/pagination.js.map +1 -1
- package/components/ui/pagination.mjs +3 -3
- package/components/ui/pagination.mjs.map +1 -1
- package/components/ui/popover.js +3 -3
- package/components/ui/popover.mjs +2 -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 +3 -3
- package/components/ui/radio-group.js.map +1 -1
- package/components/ui/radio-group.mjs +1 -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 +3 -3
- package/components/ui/scroll-area.js.map +1 -1
- package/components/ui/scroll-area.mjs +1 -1
- package/components/ui/scroll-area.mjs.map +1 -1
- package/components/ui/select.js +3 -3
- package/components/ui/select.mjs +2 -2
- package/components/ui/separator.js +3 -3
- package/components/ui/separator.mjs +2 -2
- package/components/ui/sheet.d.mts +2 -5
- package/components/ui/sheet.d.ts +2 -5
- package/components/ui/sheet.js +3 -3
- package/components/ui/sheet.mjs +2 -2
- package/components/ui/sidebar.d.mts +2 -6
- package/components/ui/sidebar.d.ts +2 -6
- package/components/ui/sidebar.js +10 -10
- package/components/ui/sidebar.mjs +9 -9
- package/components/ui/skeleton.js +3 -3
- package/components/ui/skeleton.mjs +2 -2
- package/components/ui/slider.js +2 -2
- package/components/ui/slider.js.map +1 -1
- package/components/ui/slider.mjs +1 -1
- package/components/ui/slider.mjs.map +1 -1
- package/components/ui/spinner.d.mts +2 -7
- package/components/ui/spinner.d.ts +2 -7
- package/components/ui/spinner.js +3 -3
- package/components/ui/spinner.mjs +2 -2
- package/components/ui/switch.js +3 -3
- package/components/ui/switch.js.map +1 -1
- package/components/ui/switch.mjs +1 -1
- package/components/ui/switch.mjs.map +1 -1
- package/components/ui/table.js +9 -9
- package/components/ui/table.js.map +1 -1
- package/components/ui/table.mjs +1 -1
- package/components/ui/table.mjs.map +1 -1
- package/components/ui/tabs.js +4 -4
- package/components/ui/tabs.js.map +1 -1
- package/components/ui/tabs.mjs +1 -1
- package/components/ui/tabs.mjs.map +1 -1
- package/components/ui/textarea.js +3 -3
- package/components/ui/textarea.mjs +2 -2
- package/components/ui/toast.d.mts +1 -4
- package/components/ui/toast.d.ts +1 -4
- package/components/ui/toast.js +3 -3
- package/components/ui/toast.mjs +2 -2
- package/components/ui/toaster.js +5 -5
- package/components/ui/toaster.mjs +2 -2
- package/components/ui/toggle-group.d.mts +3 -10
- package/components/ui/toggle-group.d.ts +3 -10
- 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.d.mts +2 -9
- package/components/ui/toggle.d.ts +2 -9
- package/components/ui/toggle.js +3 -3
- package/components/ui/toggle.mjs +2 -2
- package/components/ui/tooltip.js +3 -3
- package/components/ui/tooltip.mjs +2 -2
- package/components/widgets/dialog-manager/index.js +1 -1
- package/components/widgets/dialog-manager/index.js.map +1 -1
- package/components/widgets/dialog-manager/index.mjs +1 -1
- package/hooks/use-toast.d.mts +0 -1
- package/hooks/use-toast.d.ts +0 -1
- package/layouts/sidebar1/app-sidebar.d.mts +0 -1
- package/layouts/sidebar1/app-sidebar.d.ts +0 -1
- package/layouts/sidebar1/app-sidebar.js +16 -16
- package/layouts/sidebar1/app-sidebar.mjs +15 -15
- package/layouts/sidebar1/context-switcher.js +12 -12
- package/layouts/sidebar1/context-switcher.mjs +11 -11
- package/layouts/sidebar1/index.d.mts +0 -1
- package/layouts/sidebar1/index.d.ts +0 -1
- package/layouts/sidebar1/index.js +18 -18
- package/layouts/sidebar1/index.mjs +16 -16
- package/layouts/sidebar1/nav-menus.d.mts +2 -0
- package/layouts/sidebar1/nav-menus.d.ts +2 -0
- package/layouts/sidebar1/nav-menus.js +11 -11
- package/layouts/sidebar1/nav-menus.mjs +10 -10
- package/layouts/sidebar1/nav-user.js +13 -13
- package/layouts/sidebar1/nav-user.mjs +12 -12
- package/layouts/simple/index.js +17 -17
- package/layouts/simple/index.js.map +1 -1
- package/layouts/simple/index.mjs +4 -4
- package/layouts/simple/index.mjs.map +1 -1
- package/layouts/simple/mobile-menu.js +3 -3
- package/layouts/simple/mobile-menu.mjs +2 -2
- package/layouts/simple/user-menu.js +4 -4
- package/layouts/simple/user-menu.mjs +3 -3
- package/package.json +5 -5
- package/utils/date.js +12 -0
- package/utils/date.js.map +1 -0
- package/{lib → utils}/date.mjs +1 -1
- package/utils/time.js +14 -0
- package/{lib/number.js.map → utils/time.js.map} +1 -1
- package/{lib/number.mjs → utils/time.mjs} +2 -2
- package/{lib/utils.js → utils/ui.js} +3 -3
- package/utils/ui.js.map +1 -0
- package/{lib/utils.mjs → utils/ui.mjs} +2 -2
- package/chunk-2QMNPBOE.mjs.map +0 -1
- package/chunk-2R34M7KI.mjs.map +0 -1
- package/chunk-37EH7QCX.mjs.map +0 -1
- package/chunk-3T2PPKR3.js.map +0 -1
- package/chunk-4FD63HEQ.js.map +0 -1
- package/chunk-4NMFJSJN.mjs.map +0 -1
- package/chunk-4UZN52P7.mjs.map +0 -1
- package/chunk-4XC6EXHZ.mjs.map +0 -1
- package/chunk-54PLQ33F.mjs.map +0 -1
- package/chunk-6N4WCMTE.js.map +0 -1
- package/chunk-73VYAPJR.js.map +0 -1
- package/chunk-A34GFF2E.js.map +0 -1
- package/chunk-ACE5WNTU.mjs.map +0 -1
- package/chunk-ARQYTBBZ.mjs.map +0 -1
- package/chunk-AT6DBL5I.mjs.map +0 -1
- package/chunk-CE4PBEIL.js.map +0 -1
- package/chunk-CPGH6LBC.mjs.map +0 -1
- package/chunk-DSGXBKNS.js.map +0 -1
- package/chunk-DTJ43DCW.mjs.map +0 -1
- package/chunk-E4SSD5P4.js.map +0 -1
- package/chunk-EJQJ3BCF.mjs.map +0 -1
- package/chunk-EZZ2YCUU.js.map +0 -1
- package/chunk-F5XCCSBC.mjs.map +0 -1
- package/chunk-FHSYSVS6.mjs.map +0 -1
- package/chunk-FMYITAWN.mjs.map +0 -1
- package/chunk-GI222XFX.js.map +0 -1
- package/chunk-I64GW5SA.js.map +0 -1
- package/chunk-JHUXWZVG.js.map +0 -1
- package/chunk-JWENANTO.mjs.map +0 -1
- package/chunk-LE44LDOD.js.map +0 -1
- package/chunk-LQETWWSU.js.map +0 -1
- package/chunk-LSKO74NV.js.map +0 -1
- package/chunk-LXILG667.mjs.map +0 -1
- package/chunk-M6C2FCM4.mjs.map +0 -1
- package/chunk-MYO4WRNB.js.map +0 -1
- package/chunk-NI2SIUXO.js.map +0 -1
- package/chunk-NK4XTZ5W.js.map +0 -1
- package/chunk-NRHWGE26.mjs.map +0 -1
- package/chunk-NTYWTGYX.mjs.map +0 -1
- package/chunk-O2ZEUVTY.js.map +0 -1
- package/chunk-O7E6RNCD.mjs.map +0 -1
- package/chunk-OAAHNESN.mjs.map +0 -1
- package/chunk-OXTCSLHP.mjs.map +0 -1
- package/chunk-PCR4GC74.js.map +0 -1
- package/chunk-QDVJN4S3.mjs.map +0 -1
- package/chunk-QGXFFTPH.js.map +0 -1
- package/chunk-R4SF7CSA.mjs.map +0 -1
- package/chunk-R7L4TN3C.mjs.map +0 -1
- package/chunk-REZO5TYB.mjs.map +0 -1
- package/chunk-RMDDLEPA.js.map +0 -1
- package/chunk-SCM23WSM.js.map +0 -1
- package/chunk-TMC4JKD5.mjs.map +0 -1
- package/chunk-U3KAN7IM.js.map +0 -1
- package/chunk-V4BQYO2M.mjs.map +0 -1
- package/chunk-W2N2NIVE.js.map +0 -1
- package/chunk-YAPKDLRQ.mjs.map +0 -1
- package/chunk-YWILOKX4.mjs.map +0 -1
- package/chunk-YWWFTM23.js.map +0 -1
- package/chunk-Z3VXGHCE.mjs.map +0 -1
- package/chunk-ZJAFK7BR.mjs.map +0 -1
- package/chunk-ZVBMRCE7.mjs.map +0 -1
- package/lib/date.js +0 -12
- package/lib/date.js.map +0 -1
- package/lib/number.js +0 -14
- package/lib/utils.js.map +0 -1
- /package/{chunk-DMATER3M.mjs.map → chunk-F57PDM2P.mjs.map} +0 -0
- /package/{lib → utils}/date.d.mts +0 -0
- /package/{lib → utils}/date.d.ts +0 -0
- /package/{lib → utils}/date.mjs.map +0 -0
- /package/{lib/number.d.mts → utils/time.d.mts} +0 -0
- /package/{lib/number.d.ts → utils/time.d.ts} +0 -0
- /package/{lib/number.mjs.map → utils/time.mjs.map} +0 -0
- /package/{lib/utils.d.mts → utils/ui.d.mts} +0 -0
- /package/{lib/utils.d.ts → utils/ui.d.ts} +0 -0
- /package/{lib/utils.mjs.map → utils/ui.mjs.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/extension/multi-select.js","../../../../components/ui/extension/multi-select.tsx"],"names":["_a","_b"],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/extension/multi-select.js","sourcesContent":[null,"\"use client\";\nimport { Badge } from '../badge';\nimport { Command, CommandItem, CommandEmpty, CommandList } from '../command';\nimport { IconX, IconCheck } from '@tabler/icons-react';\nimport { Command as CommandPrimitive } from 'cmdk';\nimport React, { type KeyboardEvent, createContext, forwardRef, useCallback, useContext, useState } from 'react';\n\nimport { cn } from '../../../lib/utils';\n\nexport type MultiSelectValue = {\n value: string;\n label: string;\n};\n\ninterface MultiSelectorProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive> {\n values: MultiSelectValue[];\n onValuesChange: (value: MultiSelectValue[]) => void;\n loop?: boolean;\n className?: string;\n children?: React.ReactNode;\n dir?: 'ltr' | 'rtl';\n}\n\ninterface MultiSelectContextProps {\n value: MultiSelectValue[];\n onValueChange: (value: any) => void;\n open: boolean;\n setOpen: (value: boolean) => void;\n inputValue: string;\n setInputValue: React.Dispatch<React.SetStateAction<string>>;\n activeIndex: number;\n setActiveIndex: React.Dispatch<React.SetStateAction<number>>;\n ref: React.RefObject<HTMLInputElement | null>;\n}\n\nconst MultiSelectContext = createContext<MultiSelectContextProps | null>(null);\n\nconst useMultiSelect = () => {\n const context = useContext(MultiSelectContext);\n if (!context) {\n throw new Error('useMultiSelect must be used within MultiSelectProvider');\n }\n return context;\n};\n\n/**\n * MultiSelect Docs: {@link: https://shadcn-extension.vercel.app/docs/multi-select}\n */\n\n// TODO : expose the visibility of the popup\n\nfunction searchForValue(source: MultiSelectValue[], value: MultiSelectValue) {\n for (let i = 0; i < source.length; i++) {\n if (source[i].value === value.value) {\n return i;\n }\n }\n return -1;\n}\n\nconst MultiSelector = ({\n values: value,\n onValuesChange: onValueChange,\n loop = false,\n className,\n children,\n dir,\n ...props\n}: MultiSelectorProps) => {\n const [inputValue, setInputValue] = useState('');\n const [open, setOpen] = useState<boolean>(false);\n const [activeIndex, setActiveIndex] = useState<number>(-1);\n const inputRef = React.useRef<HTMLInputElement>(null);\n\n const onValueChangeHandler = useCallback(\n (val: MultiSelectValue) => {\n const element = searchForValue(value, val);\n if (element !== -1) {\n onValueChange(value.filter((_, index) => index !== element));\n } else {\n onValueChange([...value, val]);\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [value],\n );\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n e.stopPropagation();\n const target = inputRef.current;\n\n if (!target) return;\n\n const selectionStart = target.selectionStart ?? 0;\n const selectionEnd = target.selectionEnd ?? 0;\n\n // If there's a selection, do nothing and let the default behavior take over\n if (selectionStart !== selectionEnd) {\n return;\n }\n\n const moveNext = () => {\n const nextIndex = activeIndex + 1;\n setActiveIndex(nextIndex > value.length - 1 ? (loop ? 0 : -1) : nextIndex);\n };\n\n const movePrev = () => {\n const prevIndex = activeIndex - 1;\n setActiveIndex(prevIndex < 0 ? value.length - 1 : prevIndex);\n };\n\n const moveCurrent = () => {\n const newIndex = activeIndex - 1 <= 0 ? (value.length - 1 === 0 ? -1 : 0) : activeIndex - 1;\n setActiveIndex(newIndex);\n };\n\n switch (e.key) {\n case 'ArrowLeft':\n if (dir === 'rtl') {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n } else {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n }\n break;\n\n case 'ArrowRight':\n if (dir === 'rtl') {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n } else {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n }\n break;\n\n case 'Backspace':\n case 'Delete':\n if (value.length > 0) {\n if (activeIndex !== -1 && activeIndex < value.length) {\n onValueChangeHandler(value[activeIndex]);\n moveCurrent();\n } else {\n if (target.selectionStart === 0) {\n onValueChangeHandler(value[value.length - 1]);\n }\n }\n }\n break;\n\n case 'Enter':\n setOpen(true);\n break;\n\n case 'Escape':\n if (activeIndex !== -1) {\n setActiveIndex(-1);\n } else if (open) {\n setInputValue('');\n setOpen(false);\n }\n break;\n }\n },\n [value, activeIndex, loop],\n );\n\n return (\n <MultiSelectContext.Provider\n value={{\n value,\n onValueChange: onValueChangeHandler,\n open,\n setOpen,\n inputValue,\n setInputValue,\n activeIndex,\n setActiveIndex,\n ref: inputRef,\n }}\n >\n <Command\n onKeyDown={handleKeyDown}\n className={cn('overflow-visible bg-transparent flex flex-col space-y-2', className)}\n dir={dir}\n {...props}\n >\n {children}\n </Command>\n </MultiSelectContext.Provider>\n );\n};\n\nconst MultiSelectorTrigger = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, children, ...props }, ref) => {\n const { value, onValueChange, activeIndex } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n return (\n <div\n ref={ref}\n className={cn(\n 'flex flex-wrap gap-1 px-2 py-2 ring-1 ring-muted rounded-lg bg-background border rounded-sm',\n {\n 'ring-1 focus-within:ring-ring': activeIndex === -1,\n },\n className,\n )}\n {...props}\n >\n {value.map((item, index) => (\n <Badge\n key={item.value}\n className={cn(\n 'px-1.5 rounded-md flex items-center gap-1',\n activeIndex === index && 'ring-2 ring-muted-foreground ',\n )}\n variant=\"secondary\"\n >\n <span className=\"text-xs\">{item.label}</span>\n\n <button\n aria-label={`Remove ${item} option`}\n aria-roledescription=\"button to remove option\"\n type=\"button\"\n onMouseDown={mousePreventDefault}\n onClick={() => onValueChange(item)}\n >\n <span className=\"sr-only\">Remove {item.label} option</span>\n\n <IconX className=\"h-4 w-4 hover:stroke-destructive\" />\n </button>\n </Badge>\n ))}\n {children}\n </div>\n );\n },\n);\n\nMultiSelectorTrigger.displayName = 'MultiSelectorTrigger';\n\nconst MultiSelectorInput = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => {\n const { setOpen, inputValue, setInputValue, activeIndex, setActiveIndex, ref: inputRef } = useMultiSelect();\n\n return (\n <CommandPrimitive.Input\n {...props}\n tabIndex={0}\n ref={inputRef}\n value={inputValue}\n onValueChange={activeIndex === -1 ? setInputValue : undefined}\n onBlur={() => {\n setInputValue('');\n setOpen(false);\n }}\n onFocus={() => setOpen(true)}\n onClick={() => setActiveIndex(-1)}\n className={cn(\n 'p-0 bg-transparent border-none outline-none focus:outline-none focus:ring-0 placeholder:text-muted-foreground flex-1 text-sm',\n className,\n activeIndex !== -1 && 'caret-transparent',\n )}\n />\n );\n});\n\nMultiSelectorInput.displayName = 'MultiSelectorInput';\n\nconst MultiSelectorContent = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(({ children }, ref) => {\n const { open } = useMultiSelect();\n return (\n <div ref={ref} className=\"relative\">\n {open ? children : null}\n </div>\n );\n});\n\nMultiSelectorContent.displayName = 'MultiSelectorContent';\n\nconst MultiSelectorList = forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, children }, ref) => {\n return (\n <CommandList\n ref={ref}\n className={cn(\n 'p-2 flex flex-col gap-2 rounded-md scrollbar-thin scrollbar-track-transparent transition-colors scrollbar-thumb-muted-foreground dark:scrollbar-thumb-muted scrollbar-thumb-rounded-lg w-full absolute bg-background shadow-md z-100 border border-muted top-0',\n className,\n )}\n >\n {children}\n\n <CommandEmpty>\n <span className=\"text-muted-foreground\">No results found</span>\n </CommandEmpty>\n </CommandList>\n );\n});\n\nMultiSelectorList.displayName = 'MultiSelectorList';\n\nconst MultiSelectorItem = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n { value: string; label: string } & React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, value, label, children, ...props }, ref) => {\n const { value: Options, onValueChange, setInputValue } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n const isIncluded =\n searchForValue(Options, {\n value: value,\n label: label,\n }) !== -1;\n\n return (\n <CommandItem\n ref={ref}\n {...props}\n onSelect={() => {\n onValueChange({\n value: value,\n label: label,\n });\n setInputValue('');\n }}\n className={cn(\n 'rounded-md cursor-pointer px-2 py-1 transition-colors flex justify-between',\n className,\n isIncluded && 'opacity-50 cursor-default',\n props.disabled && 'opacity-50 cursor-not-allowed',\n )}\n onMouseDown={mousePreventDefault}\n >\n {children}\n {isIncluded && <IconCheck className=\"h-4 w-4\" />}\n </CommandItem>\n );\n});\n\nMultiSelectorItem.displayName = 'MultiSelectorItem';\n\nexport {\n MultiSelector,\n MultiSelectorTrigger,\n MultiSelectorInput,\n MultiSelectorContent,\n MultiSelectorList,\n MultiSelectorItem,\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/extension/multi-select.js","../../../../components/ui/extension/multi-select.tsx"],"names":["_a","_b"],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/extension/multi-select.js","sourcesContent":[null,"\"use client\";\nimport { Badge } from '../badge';\nimport { Command, CommandItem, CommandEmpty, CommandList } from '../command';\nimport { IconX, IconCheck } from '@tabler/icons-react';\nimport { Command as CommandPrimitive } from 'cmdk';\nimport React, { type KeyboardEvent, createContext, forwardRef, useCallback, useContext, useState } from 'react';\n\nimport { cn } from '../../../utils/ui';\n\nexport type MultiSelectValue = {\n value: string;\n label: string;\n};\n\ninterface MultiSelectorProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive> {\n values: MultiSelectValue[];\n onValuesChange: (value: MultiSelectValue[]) => void;\n loop?: boolean;\n className?: string;\n children?: React.ReactNode;\n dir?: 'ltr' | 'rtl';\n}\n\ninterface MultiSelectContextProps {\n value: MultiSelectValue[];\n onValueChange: (value: any) => void;\n open: boolean;\n setOpen: (value: boolean) => void;\n inputValue: string;\n setInputValue: React.Dispatch<React.SetStateAction<string>>;\n activeIndex: number;\n setActiveIndex: React.Dispatch<React.SetStateAction<number>>;\n ref: React.RefObject<HTMLInputElement | null>;\n}\n\nconst MultiSelectContext = createContext<MultiSelectContextProps | null>(null);\n\nconst useMultiSelect = () => {\n const context = useContext(MultiSelectContext);\n if (!context) {\n throw new Error('useMultiSelect must be used within MultiSelectProvider');\n }\n return context;\n};\n\n/**\n * MultiSelect Docs: {@link: https://shadcn-extension.vercel.app/docs/multi-select}\n */\n\n// TODO : expose the visibility of the popup\n\nfunction searchForValue(source: MultiSelectValue[], value: MultiSelectValue) {\n for (let i = 0; i < source.length; i++) {\n if (source[i].value === value.value) {\n return i;\n }\n }\n return -1;\n}\n\nconst MultiSelector = ({\n values: value,\n onValuesChange: onValueChange,\n loop = false,\n className,\n children,\n dir,\n ...props\n}: MultiSelectorProps) => {\n const [inputValue, setInputValue] = useState('');\n const [open, setOpen] = useState<boolean>(false);\n const [activeIndex, setActiveIndex] = useState<number>(-1);\n const inputRef = React.useRef<HTMLInputElement>(null);\n\n const onValueChangeHandler = useCallback(\n (val: MultiSelectValue) => {\n const element = searchForValue(value, val);\n if (element !== -1) {\n onValueChange(value.filter((_, index) => index !== element));\n } else {\n onValueChange([...value, val]);\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [value],\n );\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n e.stopPropagation();\n const target = inputRef.current;\n\n if (!target) return;\n\n const selectionStart = target.selectionStart ?? 0;\n const selectionEnd = target.selectionEnd ?? 0;\n\n // If there's a selection, do nothing and let the default behavior take over\n if (selectionStart !== selectionEnd) {\n return;\n }\n\n const moveNext = () => {\n const nextIndex = activeIndex + 1;\n setActiveIndex(nextIndex > value.length - 1 ? (loop ? 0 : -1) : nextIndex);\n };\n\n const movePrev = () => {\n const prevIndex = activeIndex - 1;\n setActiveIndex(prevIndex < 0 ? value.length - 1 : prevIndex);\n };\n\n const moveCurrent = () => {\n const newIndex = activeIndex - 1 <= 0 ? (value.length - 1 === 0 ? -1 : 0) : activeIndex - 1;\n setActiveIndex(newIndex);\n };\n\n switch (e.key) {\n case 'ArrowLeft':\n if (dir === 'rtl') {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n } else {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n }\n break;\n\n case 'ArrowRight':\n if (dir === 'rtl') {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n } else {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n }\n break;\n\n case 'Backspace':\n case 'Delete':\n if (value.length > 0) {\n if (activeIndex !== -1 && activeIndex < value.length) {\n onValueChangeHandler(value[activeIndex]);\n moveCurrent();\n } else {\n if (target.selectionStart === 0) {\n onValueChangeHandler(value[value.length - 1]);\n }\n }\n }\n break;\n\n case 'Enter':\n setOpen(true);\n break;\n\n case 'Escape':\n if (activeIndex !== -1) {\n setActiveIndex(-1);\n } else if (open) {\n setInputValue('');\n setOpen(false);\n }\n break;\n }\n },\n [value, activeIndex, loop],\n );\n\n return (\n <MultiSelectContext.Provider\n value={{\n value,\n onValueChange: onValueChangeHandler,\n open,\n setOpen,\n inputValue,\n setInputValue,\n activeIndex,\n setActiveIndex,\n ref: inputRef,\n }}\n >\n <Command\n onKeyDown={handleKeyDown}\n className={cn('overflow-visible bg-transparent flex flex-col space-y-2', className)}\n dir={dir}\n {...props}\n >\n {children}\n </Command>\n </MultiSelectContext.Provider>\n );\n};\n\nconst MultiSelectorTrigger = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, children, ...props }, ref) => {\n const { value, onValueChange, activeIndex } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n return (\n <div\n ref={ref}\n className={cn(\n 'flex flex-wrap gap-1 px-2 py-2 ring-1 ring-muted rounded-lg bg-background border rounded-sm',\n {\n 'ring-1 focus-within:ring-ring': activeIndex === -1,\n },\n className,\n )}\n {...props}\n >\n {value.map((item, index) => (\n <Badge\n key={item.value}\n className={cn(\n 'px-1.5 rounded-md flex items-center gap-1',\n activeIndex === index && 'ring-2 ring-muted-foreground ',\n )}\n variant=\"secondary\"\n >\n <span className=\"text-xs\">{item.label}</span>\n\n <button\n aria-label={`Remove ${item} option`}\n aria-roledescription=\"button to remove option\"\n type=\"button\"\n onMouseDown={mousePreventDefault}\n onClick={() => onValueChange(item)}\n >\n <span className=\"sr-only\">Remove {item.label} option</span>\n\n <IconX className=\"h-4 w-4 hover:stroke-destructive\" />\n </button>\n </Badge>\n ))}\n {children}\n </div>\n );\n },\n);\n\nMultiSelectorTrigger.displayName = 'MultiSelectorTrigger';\n\nconst MultiSelectorInput = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => {\n const { setOpen, inputValue, setInputValue, activeIndex, setActiveIndex, ref: inputRef } = useMultiSelect();\n\n return (\n <CommandPrimitive.Input\n {...props}\n tabIndex={0}\n ref={inputRef}\n value={inputValue}\n onValueChange={activeIndex === -1 ? setInputValue : undefined}\n onBlur={() => {\n setInputValue('');\n setOpen(false);\n }}\n onFocus={() => setOpen(true)}\n onClick={() => setActiveIndex(-1)}\n className={cn(\n 'p-0 bg-transparent border-none outline-none focus:outline-none focus:ring-0 placeholder:text-muted-foreground flex-1 text-sm',\n className,\n activeIndex !== -1 && 'caret-transparent',\n )}\n />\n );\n});\n\nMultiSelectorInput.displayName = 'MultiSelectorInput';\n\nconst MultiSelectorContent = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(({ children }, ref) => {\n const { open } = useMultiSelect();\n return (\n <div ref={ref} className=\"relative\">\n {open ? children : null}\n </div>\n );\n});\n\nMultiSelectorContent.displayName = 'MultiSelectorContent';\n\nconst MultiSelectorList = forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, children }, ref) => {\n return (\n <CommandList\n ref={ref}\n className={cn(\n 'p-2 flex flex-col gap-2 rounded-md scrollbar-thin scrollbar-track-transparent transition-colors scrollbar-thumb-muted-foreground dark:scrollbar-thumb-muted scrollbar-thumb-rounded-lg w-full absolute bg-background shadow-md z-100 border border-muted top-0',\n className,\n )}\n >\n {children}\n\n <CommandEmpty>\n <span className=\"text-muted-foreground\">No results found</span>\n </CommandEmpty>\n </CommandList>\n );\n});\n\nMultiSelectorList.displayName = 'MultiSelectorList';\n\nconst MultiSelectorItem = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n { value: string; label: string } & React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, value, label, children, ...props }, ref) => {\n const { value: Options, onValueChange, setInputValue } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n const isIncluded =\n searchForValue(Options, {\n value: value,\n label: label,\n }) !== -1;\n\n return (\n <CommandItem\n ref={ref}\n {...props}\n onSelect={() => {\n onValueChange({\n value: value,\n label: label,\n });\n setInputValue('');\n }}\n className={cn(\n 'rounded-md cursor-pointer px-2 py-1 transition-colors flex justify-between',\n className,\n isIncluded && 'opacity-50 cursor-default',\n props.disabled && 'opacity-50 cursor-not-allowed',\n )}\n onMouseDown={mousePreventDefault}\n >\n {children}\n {isIncluded && <IconCheck className=\"h-4 w-4\" />}\n </CommandItem>\n );\n});\n\nMultiSelectorItem.displayName = 'MultiSelectorItem';\n\nexport {\n MultiSelector,\n MultiSelectorTrigger,\n MultiSelectorInput,\n MultiSelectorContent,\n MultiSelectorList,\n MultiSelectorItem,\n};\n"]}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
Badge
|
|
4
|
-
} from "../../../chunk-
|
|
4
|
+
} from "../../../chunk-HBKXMTBF.mjs";
|
|
5
5
|
import {
|
|
6
6
|
Command,
|
|
7
7
|
CommandEmpty,
|
|
8
8
|
CommandItem,
|
|
9
9
|
CommandList
|
|
10
|
-
} from "../../../chunk-
|
|
11
|
-
import "../../../chunk-
|
|
10
|
+
} from "../../../chunk-OJEDITOA.mjs";
|
|
11
|
+
import "../../../chunk-D6WUNCBI.mjs";
|
|
12
12
|
import {
|
|
13
13
|
cn
|
|
14
|
-
} from "../../../chunk-
|
|
14
|
+
} from "../../../chunk-KGUUDFJE.mjs";
|
|
15
15
|
import {
|
|
16
16
|
__objRest,
|
|
17
17
|
__spreadProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../components/ui/extension/multi-select.tsx"],"sourcesContent":["\"use client\";\nimport { Badge } from '../badge';\nimport { Command, CommandItem, CommandEmpty, CommandList } from '../command';\nimport { IconX, IconCheck } from '@tabler/icons-react';\nimport { Command as CommandPrimitive } from 'cmdk';\nimport React, { type KeyboardEvent, createContext, forwardRef, useCallback, useContext, useState } from 'react';\n\nimport { cn } from '../../../lib/utils';\n\nexport type MultiSelectValue = {\n value: string;\n label: string;\n};\n\ninterface MultiSelectorProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive> {\n values: MultiSelectValue[];\n onValuesChange: (value: MultiSelectValue[]) => void;\n loop?: boolean;\n className?: string;\n children?: React.ReactNode;\n dir?: 'ltr' | 'rtl';\n}\n\ninterface MultiSelectContextProps {\n value: MultiSelectValue[];\n onValueChange: (value: any) => void;\n open: boolean;\n setOpen: (value: boolean) => void;\n inputValue: string;\n setInputValue: React.Dispatch<React.SetStateAction<string>>;\n activeIndex: number;\n setActiveIndex: React.Dispatch<React.SetStateAction<number>>;\n ref: React.RefObject<HTMLInputElement | null>;\n}\n\nconst MultiSelectContext = createContext<MultiSelectContextProps | null>(null);\n\nconst useMultiSelect = () => {\n const context = useContext(MultiSelectContext);\n if (!context) {\n throw new Error('useMultiSelect must be used within MultiSelectProvider');\n }\n return context;\n};\n\n/**\n * MultiSelect Docs: {@link: https://shadcn-extension.vercel.app/docs/multi-select}\n */\n\n// TODO : expose the visibility of the popup\n\nfunction searchForValue(source: MultiSelectValue[], value: MultiSelectValue) {\n for (let i = 0; i < source.length; i++) {\n if (source[i].value === value.value) {\n return i;\n }\n }\n return -1;\n}\n\nconst MultiSelector = ({\n values: value,\n onValuesChange: onValueChange,\n loop = false,\n className,\n children,\n dir,\n ...props\n}: MultiSelectorProps) => {\n const [inputValue, setInputValue] = useState('');\n const [open, setOpen] = useState<boolean>(false);\n const [activeIndex, setActiveIndex] = useState<number>(-1);\n const inputRef = React.useRef<HTMLInputElement>(null);\n\n const onValueChangeHandler = useCallback(\n (val: MultiSelectValue) => {\n const element = searchForValue(value, val);\n if (element !== -1) {\n onValueChange(value.filter((_, index) => index !== element));\n } else {\n onValueChange([...value, val]);\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [value],\n );\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n e.stopPropagation();\n const target = inputRef.current;\n\n if (!target) return;\n\n const selectionStart = target.selectionStart ?? 0;\n const selectionEnd = target.selectionEnd ?? 0;\n\n // If there's a selection, do nothing and let the default behavior take over\n if (selectionStart !== selectionEnd) {\n return;\n }\n\n const moveNext = () => {\n const nextIndex = activeIndex + 1;\n setActiveIndex(nextIndex > value.length - 1 ? (loop ? 0 : -1) : nextIndex);\n };\n\n const movePrev = () => {\n const prevIndex = activeIndex - 1;\n setActiveIndex(prevIndex < 0 ? value.length - 1 : prevIndex);\n };\n\n const moveCurrent = () => {\n const newIndex = activeIndex - 1 <= 0 ? (value.length - 1 === 0 ? -1 : 0) : activeIndex - 1;\n setActiveIndex(newIndex);\n };\n\n switch (e.key) {\n case 'ArrowLeft':\n if (dir === 'rtl') {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n } else {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n }\n break;\n\n case 'ArrowRight':\n if (dir === 'rtl') {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n } else {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n }\n break;\n\n case 'Backspace':\n case 'Delete':\n if (value.length > 0) {\n if (activeIndex !== -1 && activeIndex < value.length) {\n onValueChangeHandler(value[activeIndex]);\n moveCurrent();\n } else {\n if (target.selectionStart === 0) {\n onValueChangeHandler(value[value.length - 1]);\n }\n }\n }\n break;\n\n case 'Enter':\n setOpen(true);\n break;\n\n case 'Escape':\n if (activeIndex !== -1) {\n setActiveIndex(-1);\n } else if (open) {\n setInputValue('');\n setOpen(false);\n }\n break;\n }\n },\n [value, activeIndex, loop],\n );\n\n return (\n <MultiSelectContext.Provider\n value={{\n value,\n onValueChange: onValueChangeHandler,\n open,\n setOpen,\n inputValue,\n setInputValue,\n activeIndex,\n setActiveIndex,\n ref: inputRef,\n }}\n >\n <Command\n onKeyDown={handleKeyDown}\n className={cn('overflow-visible bg-transparent flex flex-col space-y-2', className)}\n dir={dir}\n {...props}\n >\n {children}\n </Command>\n </MultiSelectContext.Provider>\n );\n};\n\nconst MultiSelectorTrigger = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, children, ...props }, ref) => {\n const { value, onValueChange, activeIndex } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n return (\n <div\n ref={ref}\n className={cn(\n 'flex flex-wrap gap-1 px-2 py-2 ring-1 ring-muted rounded-lg bg-background border rounded-sm',\n {\n 'ring-1 focus-within:ring-ring': activeIndex === -1,\n },\n className,\n )}\n {...props}\n >\n {value.map((item, index) => (\n <Badge\n key={item.value}\n className={cn(\n 'px-1.5 rounded-md flex items-center gap-1',\n activeIndex === index && 'ring-2 ring-muted-foreground ',\n )}\n variant=\"secondary\"\n >\n <span className=\"text-xs\">{item.label}</span>\n\n <button\n aria-label={`Remove ${item} option`}\n aria-roledescription=\"button to remove option\"\n type=\"button\"\n onMouseDown={mousePreventDefault}\n onClick={() => onValueChange(item)}\n >\n <span className=\"sr-only\">Remove {item.label} option</span>\n\n <IconX className=\"h-4 w-4 hover:stroke-destructive\" />\n </button>\n </Badge>\n ))}\n {children}\n </div>\n );\n },\n);\n\nMultiSelectorTrigger.displayName = 'MultiSelectorTrigger';\n\nconst MultiSelectorInput = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => {\n const { setOpen, inputValue, setInputValue, activeIndex, setActiveIndex, ref: inputRef } = useMultiSelect();\n\n return (\n <CommandPrimitive.Input\n {...props}\n tabIndex={0}\n ref={inputRef}\n value={inputValue}\n onValueChange={activeIndex === -1 ? setInputValue : undefined}\n onBlur={() => {\n setInputValue('');\n setOpen(false);\n }}\n onFocus={() => setOpen(true)}\n onClick={() => setActiveIndex(-1)}\n className={cn(\n 'p-0 bg-transparent border-none outline-none focus:outline-none focus:ring-0 placeholder:text-muted-foreground flex-1 text-sm',\n className,\n activeIndex !== -1 && 'caret-transparent',\n )}\n />\n );\n});\n\nMultiSelectorInput.displayName = 'MultiSelectorInput';\n\nconst MultiSelectorContent = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(({ children }, ref) => {\n const { open } = useMultiSelect();\n return (\n <div ref={ref} className=\"relative\">\n {open ? children : null}\n </div>\n );\n});\n\nMultiSelectorContent.displayName = 'MultiSelectorContent';\n\nconst MultiSelectorList = forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, children }, ref) => {\n return (\n <CommandList\n ref={ref}\n className={cn(\n 'p-2 flex flex-col gap-2 rounded-md scrollbar-thin scrollbar-track-transparent transition-colors scrollbar-thumb-muted-foreground dark:scrollbar-thumb-muted scrollbar-thumb-rounded-lg w-full absolute bg-background shadow-md z-100 border border-muted top-0',\n className,\n )}\n >\n {children}\n\n <CommandEmpty>\n <span className=\"text-muted-foreground\">No results found</span>\n </CommandEmpty>\n </CommandList>\n );\n});\n\nMultiSelectorList.displayName = 'MultiSelectorList';\n\nconst MultiSelectorItem = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n { value: string; label: string } & React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, value, label, children, ...props }, ref) => {\n const { value: Options, onValueChange, setInputValue } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n const isIncluded =\n searchForValue(Options, {\n value: value,\n label: label,\n }) !== -1;\n\n return (\n <CommandItem\n ref={ref}\n {...props}\n onSelect={() => {\n onValueChange({\n value: value,\n label: label,\n });\n setInputValue('');\n }}\n className={cn(\n 'rounded-md cursor-pointer px-2 py-1 transition-colors flex justify-between',\n className,\n isIncluded && 'opacity-50 cursor-default',\n props.disabled && 'opacity-50 cursor-not-allowed',\n )}\n onMouseDown={mousePreventDefault}\n >\n {children}\n {isIncluded && <IconCheck className=\"h-4 w-4\" />}\n </CommandItem>\n );\n});\n\nMultiSelectorItem.displayName = 'MultiSelectorItem';\n\nexport {\n MultiSelector,\n MultiSelectorTrigger,\n MultiSelectorInput,\n MultiSelectorContent,\n MultiSelectorList,\n MultiSelectorItem,\n};\n"],"mappings":"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","names":["_a","_b"]}
|
|
1
|
+
{"version":3,"sources":["../../../../components/ui/extension/multi-select.tsx"],"sourcesContent":["\"use client\";\nimport { Badge } from '../badge';\nimport { Command, CommandItem, CommandEmpty, CommandList } from '../command';\nimport { IconX, IconCheck } from '@tabler/icons-react';\nimport { Command as CommandPrimitive } from 'cmdk';\nimport React, { type KeyboardEvent, createContext, forwardRef, useCallback, useContext, useState } from 'react';\n\nimport { cn } from '../../../utils/ui';\n\nexport type MultiSelectValue = {\n value: string;\n label: string;\n};\n\ninterface MultiSelectorProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive> {\n values: MultiSelectValue[];\n onValuesChange: (value: MultiSelectValue[]) => void;\n loop?: boolean;\n className?: string;\n children?: React.ReactNode;\n dir?: 'ltr' | 'rtl';\n}\n\ninterface MultiSelectContextProps {\n value: MultiSelectValue[];\n onValueChange: (value: any) => void;\n open: boolean;\n setOpen: (value: boolean) => void;\n inputValue: string;\n setInputValue: React.Dispatch<React.SetStateAction<string>>;\n activeIndex: number;\n setActiveIndex: React.Dispatch<React.SetStateAction<number>>;\n ref: React.RefObject<HTMLInputElement | null>;\n}\n\nconst MultiSelectContext = createContext<MultiSelectContextProps | null>(null);\n\nconst useMultiSelect = () => {\n const context = useContext(MultiSelectContext);\n if (!context) {\n throw new Error('useMultiSelect must be used within MultiSelectProvider');\n }\n return context;\n};\n\n/**\n * MultiSelect Docs: {@link: https://shadcn-extension.vercel.app/docs/multi-select}\n */\n\n// TODO : expose the visibility of the popup\n\nfunction searchForValue(source: MultiSelectValue[], value: MultiSelectValue) {\n for (let i = 0; i < source.length; i++) {\n if (source[i].value === value.value) {\n return i;\n }\n }\n return -1;\n}\n\nconst MultiSelector = ({\n values: value,\n onValuesChange: onValueChange,\n loop = false,\n className,\n children,\n dir,\n ...props\n}: MultiSelectorProps) => {\n const [inputValue, setInputValue] = useState('');\n const [open, setOpen] = useState<boolean>(false);\n const [activeIndex, setActiveIndex] = useState<number>(-1);\n const inputRef = React.useRef<HTMLInputElement>(null);\n\n const onValueChangeHandler = useCallback(\n (val: MultiSelectValue) => {\n const element = searchForValue(value, val);\n if (element !== -1) {\n onValueChange(value.filter((_, index) => index !== element));\n } else {\n onValueChange([...value, val]);\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [value],\n );\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n e.stopPropagation();\n const target = inputRef.current;\n\n if (!target) return;\n\n const selectionStart = target.selectionStart ?? 0;\n const selectionEnd = target.selectionEnd ?? 0;\n\n // If there's a selection, do nothing and let the default behavior take over\n if (selectionStart !== selectionEnd) {\n return;\n }\n\n const moveNext = () => {\n const nextIndex = activeIndex + 1;\n setActiveIndex(nextIndex > value.length - 1 ? (loop ? 0 : -1) : nextIndex);\n };\n\n const movePrev = () => {\n const prevIndex = activeIndex - 1;\n setActiveIndex(prevIndex < 0 ? value.length - 1 : prevIndex);\n };\n\n const moveCurrent = () => {\n const newIndex = activeIndex - 1 <= 0 ? (value.length - 1 === 0 ? -1 : 0) : activeIndex - 1;\n setActiveIndex(newIndex);\n };\n\n switch (e.key) {\n case 'ArrowLeft':\n if (dir === 'rtl') {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n } else {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n }\n break;\n\n case 'ArrowRight':\n if (dir === 'rtl') {\n if (value.length > 0 && target.selectionStart === 0) {\n movePrev();\n }\n } else {\n if (value.length > 0 && (activeIndex !== -1 || loop)) {\n moveNext();\n }\n }\n break;\n\n case 'Backspace':\n case 'Delete':\n if (value.length > 0) {\n if (activeIndex !== -1 && activeIndex < value.length) {\n onValueChangeHandler(value[activeIndex]);\n moveCurrent();\n } else {\n if (target.selectionStart === 0) {\n onValueChangeHandler(value[value.length - 1]);\n }\n }\n }\n break;\n\n case 'Enter':\n setOpen(true);\n break;\n\n case 'Escape':\n if (activeIndex !== -1) {\n setActiveIndex(-1);\n } else if (open) {\n setInputValue('');\n setOpen(false);\n }\n break;\n }\n },\n [value, activeIndex, loop],\n );\n\n return (\n <MultiSelectContext.Provider\n value={{\n value,\n onValueChange: onValueChangeHandler,\n open,\n setOpen,\n inputValue,\n setInputValue,\n activeIndex,\n setActiveIndex,\n ref: inputRef,\n }}\n >\n <Command\n onKeyDown={handleKeyDown}\n className={cn('overflow-visible bg-transparent flex flex-col space-y-2', className)}\n dir={dir}\n {...props}\n >\n {children}\n </Command>\n </MultiSelectContext.Provider>\n );\n};\n\nconst MultiSelectorTrigger = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, children, ...props }, ref) => {\n const { value, onValueChange, activeIndex } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n return (\n <div\n ref={ref}\n className={cn(\n 'flex flex-wrap gap-1 px-2 py-2 ring-1 ring-muted rounded-lg bg-background border rounded-sm',\n {\n 'ring-1 focus-within:ring-ring': activeIndex === -1,\n },\n className,\n )}\n {...props}\n >\n {value.map((item, index) => (\n <Badge\n key={item.value}\n className={cn(\n 'px-1.5 rounded-md flex items-center gap-1',\n activeIndex === index && 'ring-2 ring-muted-foreground ',\n )}\n variant=\"secondary\"\n >\n <span className=\"text-xs\">{item.label}</span>\n\n <button\n aria-label={`Remove ${item} option`}\n aria-roledescription=\"button to remove option\"\n type=\"button\"\n onMouseDown={mousePreventDefault}\n onClick={() => onValueChange(item)}\n >\n <span className=\"sr-only\">Remove {item.label} option</span>\n\n <IconX className=\"h-4 w-4 hover:stroke-destructive\" />\n </button>\n </Badge>\n ))}\n {children}\n </div>\n );\n },\n);\n\nMultiSelectorTrigger.displayName = 'MultiSelectorTrigger';\n\nconst MultiSelectorInput = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => {\n const { setOpen, inputValue, setInputValue, activeIndex, setActiveIndex, ref: inputRef } = useMultiSelect();\n\n return (\n <CommandPrimitive.Input\n {...props}\n tabIndex={0}\n ref={inputRef}\n value={inputValue}\n onValueChange={activeIndex === -1 ? setInputValue : undefined}\n onBlur={() => {\n setInputValue('');\n setOpen(false);\n }}\n onFocus={() => setOpen(true)}\n onClick={() => setActiveIndex(-1)}\n className={cn(\n 'p-0 bg-transparent border-none outline-none focus:outline-none focus:ring-0 placeholder:text-muted-foreground flex-1 text-sm',\n className,\n activeIndex !== -1 && 'caret-transparent',\n )}\n />\n );\n});\n\nMultiSelectorInput.displayName = 'MultiSelectorInput';\n\nconst MultiSelectorContent = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(({ children }, ref) => {\n const { open } = useMultiSelect();\n return (\n <div ref={ref} className=\"relative\">\n {open ? children : null}\n </div>\n );\n});\n\nMultiSelectorContent.displayName = 'MultiSelectorContent';\n\nconst MultiSelectorList = forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, children }, ref) => {\n return (\n <CommandList\n ref={ref}\n className={cn(\n 'p-2 flex flex-col gap-2 rounded-md scrollbar-thin scrollbar-track-transparent transition-colors scrollbar-thumb-muted-foreground dark:scrollbar-thumb-muted scrollbar-thumb-rounded-lg w-full absolute bg-background shadow-md z-100 border border-muted top-0',\n className,\n )}\n >\n {children}\n\n <CommandEmpty>\n <span className=\"text-muted-foreground\">No results found</span>\n </CommandEmpty>\n </CommandList>\n );\n});\n\nMultiSelectorList.displayName = 'MultiSelectorList';\n\nconst MultiSelectorItem = forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n { value: string; label: string } & React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, value, label, children, ...props }, ref) => {\n const { value: Options, onValueChange, setInputValue } = useMultiSelect();\n\n const mousePreventDefault = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n }, []);\n\n const isIncluded =\n searchForValue(Options, {\n value: value,\n label: label,\n }) !== -1;\n\n return (\n <CommandItem\n ref={ref}\n {...props}\n onSelect={() => {\n onValueChange({\n value: value,\n label: label,\n });\n setInputValue('');\n }}\n className={cn(\n 'rounded-md cursor-pointer px-2 py-1 transition-colors flex justify-between',\n className,\n isIncluded && 'opacity-50 cursor-default',\n props.disabled && 'opacity-50 cursor-not-allowed',\n )}\n onMouseDown={mousePreventDefault}\n >\n {children}\n {isIncluded && <IconCheck className=\"h-4 w-4\" />}\n </CommandItem>\n );\n});\n\nMultiSelectorItem.displayName = 'MultiSelectorItem';\n\nexport {\n MultiSelector,\n MultiSelectorTrigger,\n MultiSelectorInput,\n MultiSelectorContent,\n MultiSelectorList,\n MultiSelectorItem,\n};\n"],"mappings":"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","names":["_a","_b"]}
|
package/components/ui/form.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
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 _chunkKNNX4FAHjs = require('../../chunk-KNNX4FAH.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkPSPAJNNBjs = require('../../chunk-PSPAJNNB.js');
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
@@ -43,14 +43,14 @@ var FormItem = React.forwardRef(
|
|
|
43
43
|
(_a, ref) => {
|
|
44
44
|
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
45
45
|
const id = React.useId();
|
|
46
|
-
return /* @__PURE__ */ React.createElement(FormItemContext.Provider, { value: { id } }, /* @__PURE__ */ React.createElement("div", _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className:
|
|
46
|
+
return /* @__PURE__ */ React.createElement(FormItemContext.Provider, { value: { id } }, /* @__PURE__ */ React.createElement("div", _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunkPSPAJNNBjs.cn.call(void 0, "space-y-2", className) }, props)));
|
|
47
47
|
}
|
|
48
48
|
);
|
|
49
49
|
FormItem.displayName = "FormItem";
|
|
50
50
|
var FormLabel = React.forwardRef((_a, ref) => {
|
|
51
51
|
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
52
52
|
const { error, formItemId } = useFormField();
|
|
53
|
-
return /* @__PURE__ */ React.createElement(
|
|
53
|
+
return /* @__PURE__ */ React.createElement(_chunkKNNX4FAHjs.Label, _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunkPSPAJNNBjs.cn.call(void 0, error && "text-destructive", className), htmlFor: formItemId }, props));
|
|
54
54
|
});
|
|
55
55
|
FormLabel.displayName = "FormLabel";
|
|
56
56
|
var FormControl = React.forwardRef(
|
|
@@ -73,7 +73,7 @@ var FormDescription = React.forwardRef(
|
|
|
73
73
|
(_a, ref) => {
|
|
74
74
|
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
75
75
|
const { formDescriptionId } = useFormField();
|
|
76
|
-
return /* @__PURE__ */ React.createElement("p", _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, id: formDescriptionId, className:
|
|
76
|
+
return /* @__PURE__ */ React.createElement("p", _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, id: formDescriptionId, className: _chunkPSPAJNNBjs.cn.call(void 0, "text-[0.8rem] text-muted-foreground", className) }, props));
|
|
77
77
|
}
|
|
78
78
|
);
|
|
79
79
|
FormDescription.displayName = "FormDescription";
|
|
@@ -90,7 +90,7 @@ var FormMessage = React.forwardRef(
|
|
|
90
90
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
91
91
|
ref,
|
|
92
92
|
id: formMessageId,
|
|
93
|
-
className:
|
|
93
|
+
className: _chunkPSPAJNNBjs.cn.call(void 0, "text-[0.8rem] font-medium text-destructive", className)
|
|
94
94
|
}, props),
|
|
95
95
|
body
|
|
96
96
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/form.js","../../../components/ui/form.tsx"],"names":[],"mappings":"AAAA,uWAAY;AACZ;AACE;AACF,0DAAgC;AAChC;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACXA,2EAAuB;AAEvB,iDAAqB;AACrB,gDAAkG;AAKlG,IAAM,KAAA,EAAO,2BAAA;AASb,IAAM,iBAAA,EAAyB,KAAA,CAAA,aAAA,CAAqC,CAAC,CAA0B,CAAA;AAE/F,IAAM,UAAA,EAAY,CAGhB,EAAA,EAAA,GAE0C;AAF1C,EAAA,IACG,MAAA,EAAA,wCAAA,EADH,EACG,CAAA,CAAA,CAAA;AAEH,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,gBAAA,CAAiB,QAAA,EAAjB,EAA0B,KAAA,EAAO,EAAE,IAAA,EAAM,KAAA,CAAM,KAAK,EAAA,CAAA,kBACnD,KAAA,CAAA,aAAA,CAAC,yBAAA,EAAA,6CAAA,CAAA,CAAA,EAAe,KAAA,CAAO,CACzB,CAAA;AAEJ,CAAA;AAEA,IAAM,aAAA,EAAe,CAAA,EAAA,GAAM;AACzB,EAAA,MAAM,aAAA,EAAqB,KAAA,CAAA,UAAA,CAAW,gBAAgB,CAAA;AACtD,EAAA,MAAM,YAAA,EAAoB,KAAA,CAAA,UAAA,CAAW,eAAe,CAAA;AACpD,EAAA,MAAM,EAAE,aAAA,EAAe,UAAU,EAAA,EAAI,2CAAA,CAAe;AAEpD,EAAA,MAAM,WAAA,EAAa,aAAA,CAAc,YAAA,CAAa,IAAA,EAAM,SAAS,CAAA;AAE7D,EAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AACjB,IAAA,MAAM,IAAI,KAAA,CAAM,gDAAgD,CAAA;AAAA,EAClE;AAEA,EAAA,MAAM,EAAE,GAAG,EAAA,EAAI,WAAA;AAEf,EAAA,OAAO,6CAAA;AAAA,IACL,EAAA;AAAA,IACA,IAAA,EAAM,YAAA,CAAa,IAAA;AAAA,IACnB,UAAA,EAAY,CAAA,EAAA;AACZ,IAAA;AACA,IAAA;AACG,EAAA;AAEP;AAMM;AAEiB;AACa,EAAA;AAA/B,IAAA;AACgB,IAAA;AAGf,IAAA;AAIJ,EAAA;AACF;AACS;AAEe;AAGnB,EAAA;AACY,EAAA;AAER,EAAA;AACR;AACS;AAEJ;AACmB,EAAA;AAAjB,IAAA;AACI,IAAA;AAGN,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACI,QAAA;AACJ,QAAA;AACA,QAAA;AACI,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AACY;AAEN;AAC8B,EAAA;AAA/B,IAAA;AACO,IAAA;AAGN,IAAA;AAEJ,EAAA;AACF;AACgB;AAEV;AACwC,EAAA;AAAzC,IAAA;AACO,IAAA;AACK,IAAA;AAEF,IAAA;AACF,MAAA;AACT,IAAA;AAGE,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACI,QAAA;AACJ,QAAA;AACI,MAAA;AAEH,MAAA;AACH,IAAA;AAEJ,EAAA;AACF;AACY;ADpCK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/form.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport * as LabelPrimitive from '@radix-ui/react-label';\nimport { Slot } from '@radix-ui/react-slot';\nimport { Controller, ControllerProps, FieldPath, FieldValues, FormProvider, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../
|
|
1
|
+
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/form.js","../../../components/ui/form.tsx"],"names":[],"mappings":"AAAA,uWAAY;AACZ;AACE;AACF,0DAAgC;AAChC;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACXA,2EAAuB;AAEvB,iDAAqB;AACrB,gDAAkG;AAKlG,IAAM,KAAA,EAAO,2BAAA;AASb,IAAM,iBAAA,EAAyB,KAAA,CAAA,aAAA,CAAqC,CAAC,CAA0B,CAAA;AAE/F,IAAM,UAAA,EAAY,CAGhB,EAAA,EAAA,GAE0C;AAF1C,EAAA,IACG,MAAA,EAAA,wCAAA,EADH,EACG,CAAA,CAAA,CAAA;AAEH,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,gBAAA,CAAiB,QAAA,EAAjB,EAA0B,KAAA,EAAO,EAAE,IAAA,EAAM,KAAA,CAAM,KAAK,EAAA,CAAA,kBACnD,KAAA,CAAA,aAAA,CAAC,yBAAA,EAAA,6CAAA,CAAA,CAAA,EAAe,KAAA,CAAO,CACzB,CAAA;AAEJ,CAAA;AAEA,IAAM,aAAA,EAAe,CAAA,EAAA,GAAM;AACzB,EAAA,MAAM,aAAA,EAAqB,KAAA,CAAA,UAAA,CAAW,gBAAgB,CAAA;AACtD,EAAA,MAAM,YAAA,EAAoB,KAAA,CAAA,UAAA,CAAW,eAAe,CAAA;AACpD,EAAA,MAAM,EAAE,aAAA,EAAe,UAAU,EAAA,EAAI,2CAAA,CAAe;AAEpD,EAAA,MAAM,WAAA,EAAa,aAAA,CAAc,YAAA,CAAa,IAAA,EAAM,SAAS,CAAA;AAE7D,EAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AACjB,IAAA,MAAM,IAAI,KAAA,CAAM,gDAAgD,CAAA;AAAA,EAClE;AAEA,EAAA,MAAM,EAAE,GAAG,EAAA,EAAI,WAAA;AAEf,EAAA,OAAO,6CAAA;AAAA,IACL,EAAA;AAAA,IACA,IAAA,EAAM,YAAA,CAAa,IAAA;AAAA,IACnB,UAAA,EAAY,CAAA,EAAA;AACZ,IAAA;AACA,IAAA;AACG,EAAA;AAEP;AAMM;AAEiB;AACa,EAAA;AAA/B,IAAA;AACgB,IAAA;AAGf,IAAA;AAIJ,EAAA;AACF;AACS;AAEe;AAGnB,EAAA;AACY,EAAA;AAER,EAAA;AACR;AACS;AAEJ;AACmB,EAAA;AAAjB,IAAA;AACI,IAAA;AAGN,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACI,QAAA;AACJ,QAAA;AACA,QAAA;AACI,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AACY;AAEN;AAC8B,EAAA;AAA/B,IAAA;AACO,IAAA;AAGN,IAAA;AAEJ,EAAA;AACF;AACgB;AAEV;AACwC,EAAA;AAAzC,IAAA;AACO,IAAA;AACK,IAAA;AAEF,IAAA;AACF,MAAA;AACT,IAAA;AAGE,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACI,QAAA;AACJ,QAAA;AACI,MAAA;AAEH,MAAA;AACH,IAAA;AAEJ,EAAA;AACF;AACY;ADpCK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/form.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport * as LabelPrimitive from '@radix-ui/react-label';\nimport { Slot } from '@radix-ui/react-slot';\nimport { Controller, ControllerProps, FieldPath, FieldValues, FormProvider, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from './label';\n\nconst Form = FormProvider;\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n name: TName;\n};\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>({} as FormFieldContextValue);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState, formState } = useFormContext();\n\n const fieldState = getFieldState(fieldContext.name, formState);\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>');\n }\n\n const { id } = itemContext;\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ntype FormItemContextValue = {\n id: string;\n};\n\nconst FormItemContext = React.createContext<FormItemContextValue>({} as FormItemContextValue);\n\nconst FormItem = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div ref={ref} className={cn('space-y-2', className)} {...props} />\n </FormItemContext.Provider>\n );\n },\n);\nFormItem.displayName = 'FormItem';\n\nconst FormLabel = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>\n>(({ className, ...props }, ref) => {\n const { error, formItemId } = useFormField();\n\n return <Label ref={ref} className={cn(error && 'text-destructive', className)} htmlFor={formItemId} {...props} />;\n});\nFormLabel.displayName = 'FormLabel';\n\nconst FormControl = React.forwardRef<React.ElementRef<typeof Slot>, React.ComponentPropsWithoutRef<typeof Slot>>(\n ({ ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField();\n\n return (\n <Slot\n ref={ref}\n id={formItemId}\n aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}\n aria-invalid={!!error}\n {...props}\n />\n );\n },\n);\nFormControl.displayName = 'FormControl';\n\nconst FormDescription = React.forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(\n ({ className, ...props }, ref) => {\n const { formDescriptionId } = useFormField();\n\n return (\n <p ref={ref} id={formDescriptionId} className={cn('text-[0.8rem] text-muted-foreground', className)} {...props} />\n );\n },\n);\nFormDescription.displayName = 'FormDescription';\n\nconst FormMessage = React.forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(\n ({ className, children, ...props }, ref) => {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error?.message) : children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n id={formMessageId}\n className={cn('text-[0.8rem] font-medium text-destructive', className)}\n {...props}\n >\n {body}\n </p>\n );\n },\n);\nFormMessage.displayName = 'FormMessage';\n\nexport { useFormField, Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField };\n"]}
|
package/components/ui/form.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../components/ui/form.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport * as LabelPrimitive from '@radix-ui/react-label';\nimport { Slot } from '@radix-ui/react-slot';\nimport { Controller, ControllerProps, FieldPath, FieldValues, FormProvider, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../
|
|
1
|
+
{"version":3,"sources":["../../../components/ui/form.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport * as LabelPrimitive from '@radix-ui/react-label';\nimport { Slot } from '@radix-ui/react-slot';\nimport { Controller, ControllerProps, FieldPath, FieldValues, FormProvider, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from './label';\n\nconst Form = FormProvider;\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n name: TName;\n};\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>({} as FormFieldContextValue);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState, formState } = useFormContext();\n\n const fieldState = getFieldState(fieldContext.name, formState);\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>');\n }\n\n const { id } = itemContext;\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ntype FormItemContextValue = {\n id: string;\n};\n\nconst FormItemContext = React.createContext<FormItemContextValue>({} as FormItemContextValue);\n\nconst FormItem = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div ref={ref} className={cn('space-y-2', className)} {...props} />\n </FormItemContext.Provider>\n );\n },\n);\nFormItem.displayName = 'FormItem';\n\nconst FormLabel = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>\n>(({ className, ...props }, ref) => {\n const { error, formItemId } = useFormField();\n\n return <Label ref={ref} className={cn(error && 'text-destructive', className)} htmlFor={formItemId} {...props} />;\n});\nFormLabel.displayName = 'FormLabel';\n\nconst FormControl = React.forwardRef<React.ElementRef<typeof Slot>, React.ComponentPropsWithoutRef<typeof Slot>>(\n ({ ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField();\n\n return (\n <Slot\n ref={ref}\n id={formItemId}\n aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}\n aria-invalid={!!error}\n {...props}\n />\n );\n },\n);\nFormControl.displayName = 'FormControl';\n\nconst FormDescription = React.forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(\n ({ className, ...props }, ref) => {\n const { formDescriptionId } = useFormField();\n\n return (\n <p ref={ref} id={formDescriptionId} className={cn('text-[0.8rem] text-muted-foreground', className)} {...props} />\n );\n },\n);\nFormDescription.displayName = 'FormDescription';\n\nconst FormMessage = React.forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(\n ({ className, children, ...props }, ref) => {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error?.message) : children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n id={formMessageId}\n className={cn('text-[0.8rem] font-medium text-destructive', className)}\n {...props}\n >\n {body}\n </p>\n );\n },\n);\nFormMessage.displayName = 'FormMessage';\n\nexport { useFormField, Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField };\n"],"mappings":"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","names":[]}
|
|
@@ -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 _chunkPSPAJNNBjs = require('../../chunk-PSPAJNNB.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -21,7 +21,7 @@ var HoverCardContent = React.forwardRef((_a, ref) => {
|
|
|
21
21
|
ref,
|
|
22
22
|
align,
|
|
23
23
|
sideOffset,
|
|
24
|
-
className:
|
|
24
|
+
className: _chunkPSPAJNNBjs.cn.call(void 0,
|
|
25
25
|
"z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
26
26
|
className
|
|
27
27
|
)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/hover-card.js","../../../components/ui/hover-card.tsx"],"names":[],"mappings":"AAAA,uWAAY;AACZ;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACRA,2EAAuB;AACvB,+HAAoC;AAIpC,IAAM,UAAA,EAA+B,kBAAA,CAAA,IAAA;AAErC,IAAM,iBAAA,EAAsC,kBAAA,CAAA,OAAA;AAE5C,IAAM,iBAAA,EAAyB,KAAA,CAAA,UAAA,CAG7B,CAAC,EAAA,EAA2D,GAAA,EAAA,GAAK;AAAhE,EAAA,IAAA,GAAA,EAAA,EAAA,EAAE,EAAA,SAAA,EAAW,MAAA,EAAQ,QAAA,EAAU,WAAA,EAAa,EAb/C,EAAA,EAaG,EAAA,EAAkD,MAAA,EAAA,wCAAA,EAAlD,EAAkD,CAAhD,WAAA,EAAW,OAAA,EAAkB,YAAA,CAAA,CAAA;AAChC,EAAA,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAoB,kBAAA,CAAA,OAAA;AAAA,IAAnB,6CAAA;AAAA,MACC,GAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA,EAAW,iCAAA;AAAA,QACT,4aAAA;AAAA,QACA;AAAA,MACF;AAAA,IAAA,CAAA,EACI,KAAA;AAAA,EACN,CAAA;AAAA,CACD,CAAA;AACD,gBAAA,CAAiB,YAAA,EAAiC,kBAAA,CAAA,OAAA,CAAQ,WAAA;ADK1D;AACE;AACA;AACA;AACF,wHAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/hover-card.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport * as HoverCardPrimitive from '@radix-ui/react-hover-card';\n\nimport { cn } from '../../
|
|
1
|
+
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/hover-card.js","../../../components/ui/hover-card.tsx"],"names":[],"mappings":"AAAA,uWAAY;AACZ;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACRA,2EAAuB;AACvB,+HAAoC;AAIpC,IAAM,UAAA,EAA+B,kBAAA,CAAA,IAAA;AAErC,IAAM,iBAAA,EAAsC,kBAAA,CAAA,OAAA;AAE5C,IAAM,iBAAA,EAAyB,KAAA,CAAA,UAAA,CAG7B,CAAC,EAAA,EAA2D,GAAA,EAAA,GAAK;AAAhE,EAAA,IAAA,GAAA,EAAA,EAAA,EAAE,EAAA,SAAA,EAAW,MAAA,EAAQ,QAAA,EAAU,WAAA,EAAa,EAb/C,EAAA,EAaG,EAAA,EAAkD,MAAA,EAAA,wCAAA,EAAlD,EAAkD,CAAhD,WAAA,EAAW,OAAA,EAAkB,YAAA,CAAA,CAAA;AAChC,EAAA,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAoB,kBAAA,CAAA,OAAA;AAAA,IAAnB,6CAAA;AAAA,MACC,GAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA,EAAW,iCAAA;AAAA,QACT,4aAAA;AAAA,QACA;AAAA,MACF;AAAA,IAAA,CAAA,EACI,KAAA;AAAA,EACN,CAAA;AAAA,CACD,CAAA;AACD,gBAAA,CAAiB,YAAA,EAAiC,kBAAA,CAAA,OAAA,CAAQ,WAAA;ADK1D;AACE;AACA;AACA;AACF,wHAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/hover-card.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport * as HoverCardPrimitive from '@radix-ui/react-hover-card';\n\nimport { cn } from '../../utils/ui';\n\nconst HoverCard = HoverCardPrimitive.Root;\n\nconst HoverCardTrigger = HoverCardPrimitive.Trigger;\n\nconst HoverCardContent = React.forwardRef<\n React.ElementRef<typeof HoverCardPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof HoverCardPrimitive.Content>\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\n <HoverCardPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n));\nHoverCardContent.displayName = HoverCardPrimitive.Content.displayName;\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../components/ui/hover-card.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport * as HoverCardPrimitive from '@radix-ui/react-hover-card';\n\nimport { cn } from '../../
|
|
1
|
+
{"version":3,"sources":["../../../components/ui/hover-card.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport * as HoverCardPrimitive from '@radix-ui/react-hover-card';\n\nimport { cn } from '../../utils/ui';\n\nconst HoverCard = HoverCardPrimitive.Root;\n\nconst HoverCardTrigger = HoverCardPrimitive.Trigger;\n\nconst HoverCardContent = React.forwardRef<\n React.ElementRef<typeof HoverCardPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof HoverCardPrimitive.Content>\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\n <HoverCardPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n));\nHoverCardContent.displayName = HoverCardPrimitive.Content.displayName;\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"mappings":";;;;;;;;;;AACA,YAAY,WAAW;AACvB,YAAY,wBAAwB;AAIpC,IAAM,YAA+B;AAErC,IAAM,mBAAsC;AAE5C,IAAM,mBAAyB,iBAG7B,CAAC,IAA2D,QAAK;AAAhE,eAAE,aAAW,QAAQ,UAAU,aAAa,EAb/C,IAaG,IAAkD,kBAAlD,IAAkD,CAAhD,aAAW,SAAkB;AAChC;AAAA,IAAoB;AAAA,IAAnB;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,OACI;AAAA,EACN;AAAA,CACD;AACD,iBAAiB,cAAiC,2BAAQ;","names":[]}
|
|
@@ -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 _chunkPSPAJNNBjs = require('../../chunk-PSPAJNNB.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -19,8 +19,8 @@ var InputOTP = React.forwardRef(
|
|
|
19
19
|
_inputotp.OTPInput,
|
|
20
20
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
21
21
|
ref,
|
|
22
|
-
containerClassName:
|
|
23
|
-
className:
|
|
22
|
+
containerClassName: _chunkPSPAJNNBjs.cn.call(void 0, "flex items-center gap-2 has-[:disabled]:opacity-50", containerClassName),
|
|
23
|
+
className: _chunkPSPAJNNBjs.cn.call(void 0, "disabled:cursor-not-allowed", className)
|
|
24
24
|
}, props)
|
|
25
25
|
);
|
|
26
26
|
}
|
|
@@ -29,7 +29,7 @@ InputOTP.displayName = "InputOTP";
|
|
|
29
29
|
var InputOTPGroup = React.forwardRef(
|
|
30
30
|
(_a, ref) => {
|
|
31
31
|
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
32
|
-
return /* @__PURE__ */ React.createElement("div", _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className:
|
|
32
|
+
return /* @__PURE__ */ React.createElement("div", _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunkPSPAJNNBjs.cn.call(void 0, "flex items-center", className) }, props));
|
|
33
33
|
}
|
|
34
34
|
);
|
|
35
35
|
InputOTPGroup.displayName = "InputOTPGroup";
|
|
@@ -41,7 +41,7 @@ var InputOTPSlot = React.forwardRef((_a, ref) => {
|
|
|
41
41
|
"div",
|
|
42
42
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
43
43
|
ref,
|
|
44
|
-
className:
|
|
44
|
+
className: _chunkPSPAJNNBjs.cn.call(void 0,
|
|
45
45
|
"relative flex h-9 w-9 items-center justify-center border-y border-r border-input text-sm shadow-sm transition-all first:rounded-l-md first:border-l last:rounded-r-md",
|
|
46
46
|
isActive && "z-10 ring-1 ring-ring",
|
|
47
47
|
className
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/input-otp.js","../../../components/ui/input-otp.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/input-otp.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { OTPInput, OTPInputContext } from 'input-otp';\nimport { Minus } from 'lucide-react';\n\nimport { cn } from '../../
|
|
1
|
+
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/input-otp.js","../../../components/ui/input-otp.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/input-otp.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { OTPInput, OTPInputContext } from 'input-otp';\nimport { Minus } from 'lucide-react';\n\nimport { cn } from '../../utils/ui';\n\nconst InputOTP = React.forwardRef<React.ElementRef<typeof OTPInput>, React.ComponentPropsWithoutRef<typeof OTPInput>>(\n ({ className, containerClassName, ...props }, ref) => (\n <OTPInput\n ref={ref}\n containerClassName={cn('flex items-center gap-2 has-[:disabled]:opacity-50', containerClassName)}\n className={cn('disabled:cursor-not-allowed', className)}\n {...props}\n />\n ),\n);\nInputOTP.displayName = 'InputOTP';\n\nconst InputOTPGroup = React.forwardRef<React.ElementRef<'div'>, React.ComponentPropsWithoutRef<'div'>>(\n ({ className, ...props }, ref) => <div ref={ref} className={cn('flex items-center', className)} {...props} />,\n);\nInputOTPGroup.displayName = 'InputOTPGroup';\n\nconst InputOTPSlot = React.forwardRef<\n React.ElementRef<'div'>,\n React.ComponentPropsWithoutRef<'div'> & { index: number }\n>(({ index, className, ...props }, ref) => {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];\n\n return (\n <div\n ref={ref}\n className={cn(\n 'relative flex h-9 w-9 items-center justify-center border-y border-r border-input text-sm shadow-sm transition-all first:rounded-l-md first:border-l last:rounded-r-md',\n isActive && 'z-10 ring-1 ring-ring',\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\n </div>\n )}\n </div>\n );\n});\nInputOTPSlot.displayName = 'InputOTPSlot';\n\nconst InputOTPSeparator = React.forwardRef<React.ElementRef<'div'>, React.ComponentPropsWithoutRef<'div'>>(\n ({ ...props }, ref) => (\n <div ref={ref} role=\"separator\" {...props}>\n <Minus />\n </div>\n ),\n);\nInputOTPSeparator.displayName = 'InputOTPSeparator';\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../components/ui/input-otp.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport { OTPInput, OTPInputContext } from 'input-otp';\nimport { Minus } from 'lucide-react';\n\nimport { cn } from '../../
|
|
1
|
+
{"version":3,"sources":["../../../components/ui/input-otp.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport { OTPInput, OTPInputContext } from 'input-otp';\nimport { Minus } from 'lucide-react';\n\nimport { cn } from '../../utils/ui';\n\nconst InputOTP = React.forwardRef<React.ElementRef<typeof OTPInput>, React.ComponentPropsWithoutRef<typeof OTPInput>>(\n ({ className, containerClassName, ...props }, ref) => (\n <OTPInput\n ref={ref}\n containerClassName={cn('flex items-center gap-2 has-[:disabled]:opacity-50', containerClassName)}\n className={cn('disabled:cursor-not-allowed', className)}\n {...props}\n />\n ),\n);\nInputOTP.displayName = 'InputOTP';\n\nconst InputOTPGroup = React.forwardRef<React.ElementRef<'div'>, React.ComponentPropsWithoutRef<'div'>>(\n ({ className, ...props }, ref) => <div ref={ref} className={cn('flex items-center', className)} {...props} />,\n);\nInputOTPGroup.displayName = 'InputOTPGroup';\n\nconst InputOTPSlot = React.forwardRef<\n React.ElementRef<'div'>,\n React.ComponentPropsWithoutRef<'div'> & { index: number }\n>(({ index, className, ...props }, ref) => {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];\n\n return (\n <div\n ref={ref}\n className={cn(\n 'relative flex h-9 w-9 items-center justify-center border-y border-r border-input text-sm shadow-sm transition-all first:rounded-l-md first:border-l last:rounded-r-md',\n isActive && 'z-10 ring-1 ring-ring',\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\n </div>\n )}\n </div>\n );\n});\nInputOTPSlot.displayName = 'InputOTPSlot';\n\nconst InputOTPSeparator = React.forwardRef<React.ElementRef<'div'>, React.ComponentPropsWithoutRef<'div'>>(\n ({ ...props }, ref) => (\n <div ref={ref} role=\"separator\" {...props}>\n <Minus />\n </div>\n ),\n);\nInputOTPSeparator.displayName = 'InputOTPSeparator';\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"],"mappings":";;;;;;;;;;AACA,YAAY,WAAW;AACvB,SAAS,UAAU,uBAAuB;AAC1C,SAAS,aAAa;AAItB,IAAM,WAAiB;AAAA,EACrB,CAAC,IAA6C,QAAK;AAAlD,iBAAE,aAAW,mBARhB,IAQG,IAAoC,kBAApC,IAAoC,CAAlC,aAAW;AACZ;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,oBAAoB,GAAG,sDAAsD,kBAAkB;AAAA,QAC/F,WAAW,GAAG,+BAA+B,SAAS;AAAA,SAClD;AAAA,IACN;AAAA;AAEJ;AACA,SAAS,cAAc;AAEvB,IAAM,gBAAsB;AAAA,EAC1B,CAAC,IAAyB,QAAK;AAA9B,iBAAE,YApBL,IAoBG,IAAgB,kBAAhB,IAAgB,CAAd;AAA+B,+CAAC,wBAAI,KAAU,WAAW,GAAG,qBAAqB,SAAS,KAAO,MAAO;AAAA;AAC7G;AACA,cAAc,cAAc;AAE5B,IAAM,eAAqB,iBAGzB,CAAC,IAAgC,QAAQ;AAAxC,eAAE,SAAO,UA3BZ,IA2BG,IAAuB,kBAAvB,IAAuB,CAArB,SAAO;AACV,QAAM,kBAAwB,iBAAW,eAAe;AACxD,QAAM,EAAE,MAAM,cAAc,SAAS,IAAI,gBAAgB,MAAM,KAAK;AAEpE,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA,YAAY;AAAA,QACZ;AAAA,MACF;AAAA,OACI;AAAA,IAEH;AAAA,IACA,gBACC,oCAAC,SAAI,WAAU,2EACb,oCAAC,SAAI,WAAU,4DAA2D,CAC5E;AAAA,EAEJ;AAEJ,CAAC;AACD,aAAa,cAAc;AAE3B,IAAM,oBAA0B;AAAA,EAC9B,CAAC,IAAc,QAAK;AAAnB,QAAK,kBAAL,IAAK;AACJ,+CAAC,wBAAI,KAAU,MAAK,eAAgB,QAClC,oCAAC,WAAM,CACT;AAAA;AAEJ;AACA,kBAAkB,cAAc;","names":[]}
|
package/components/ui/input.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
require('../../chunk-
|
|
5
|
+
var _chunkAPMXMQPZjs = require('../../chunk-APMXMQPZ.js');
|
|
6
|
+
require('../../chunk-PSPAJNNB.js');
|
|
7
7
|
require('../../chunk-2NMEKWO5.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
exports.Input =
|
|
10
|
+
exports.Input = _chunkAPMXMQPZjs.Input;
|
|
11
11
|
//# sourceMappingURL=input.js.map
|
package/components/ui/input.mjs
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
2
1
|
import * as React from 'react';
|
|
3
2
|
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
4
3
|
import { VariantProps } from 'class-variance-authority';
|
|
5
4
|
|
|
6
|
-
declare const Label: React.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<
|
|
5
|
+
declare const Label: React.ForwardRefExoticComponent<Omit<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<Component> & {
|
|
7
6
|
required?: boolean;
|
|
8
|
-
} & React.RefAttributes<HTMLLabelElement>>;
|
|
7
|
+
}, "ref"> & React.RefAttributes<HTMLLabelElement>>;
|
|
9
8
|
|
|
10
9
|
export { Label };
|
package/components/ui/label.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
2
1
|
import * as React from 'react';
|
|
3
2
|
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
4
3
|
import { VariantProps } from 'class-variance-authority';
|
|
5
4
|
|
|
6
|
-
declare const Label: React.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<
|
|
5
|
+
declare const Label: React.ForwardRefExoticComponent<Omit<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<Component> & {
|
|
7
6
|
required?: boolean;
|
|
8
|
-
} & React.RefAttributes<HTMLLabelElement>>;
|
|
7
|
+
}, "ref"> & React.RefAttributes<HTMLLabelElement>>;
|
|
9
8
|
|
|
10
9
|
export { Label };
|
package/components/ui/label.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
require('../../chunk-
|
|
5
|
+
var _chunkKNNX4FAHjs = require('../../chunk-KNNX4FAH.js');
|
|
6
|
+
require('../../chunk-PSPAJNNB.js');
|
|
7
7
|
require('../../chunk-2NMEKWO5.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
exports.Label =
|
|
10
|
+
exports.Label = _chunkKNNX4FAHjs.Label;
|
|
11
11
|
//# sourceMappingURL=label.js.map
|
package/components/ui/label.mjs
CHANGED