@etus/ui 0.4.0-beta.17 → 0.4.0-beta.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-U2CXFKRK.js → chunk-2SUZS6GZ.js} +4 -4
- package/dist/{chunk-U2CXFKRK.js.map → chunk-2SUZS6GZ.js.map} +1 -1
- package/dist/{chunk-UPYT2XM5.js → chunk-2XNMKALT.js} +3 -3
- package/dist/{chunk-UPYT2XM5.js.map → chunk-2XNMKALT.js.map} +1 -1
- package/dist/{chunk-SM4AZOEP.js → chunk-3MOBFZJM.js} +4 -4
- package/dist/{chunk-SM4AZOEP.js.map → chunk-3MOBFZJM.js.map} +1 -1
- package/dist/{chunk-ZP4HYVDG.js → chunk-3R6MY3YJ.js} +4 -4
- package/dist/{chunk-ZP4HYVDG.js.map → chunk-3R6MY3YJ.js.map} +1 -1
- package/dist/{chunk-EVUHEBWX.js → chunk-447INBQP.js} +3 -3
- package/dist/{chunk-EVUHEBWX.js.map → chunk-447INBQP.js.map} +1 -1
- package/dist/{chunk-F7XARQUW.js → chunk-4LZ53BAG.js} +3 -3
- package/dist/{chunk-F7XARQUW.js.map → chunk-4LZ53BAG.js.map} +1 -1
- package/dist/{chunk-CYIFWQ5Y.js → chunk-4OWRNWHW.js} +3 -3
- package/dist/{chunk-CYIFWQ5Y.js.map → chunk-4OWRNWHW.js.map} +1 -1
- package/dist/{chunk-OQCGQG47.js → chunk-4RNPI3LU.js} +3 -3
- package/dist/{chunk-OQCGQG47.js.map → chunk-4RNPI3LU.js.map} +1 -1
- package/dist/{chunk-N4UTBJRY.js → chunk-4SFBDK4E.js} +4 -4
- package/dist/{chunk-N4UTBJRY.js.map → chunk-4SFBDK4E.js.map} +1 -1
- package/dist/{chunk-B7ZLPQSO.js → chunk-4XXAIWQ4.js} +3 -3
- package/dist/{chunk-B7ZLPQSO.js.map → chunk-4XXAIWQ4.js.map} +1 -1
- package/dist/{chunk-D2V2HKLX.js → chunk-5ETVWWA5.js} +3 -3
- package/dist/{chunk-D2V2HKLX.js.map → chunk-5ETVWWA5.js.map} +1 -1
- package/dist/{chunk-U4H3XHSI.js → chunk-5GV4LDX7.js} +4 -4
- package/dist/{chunk-U4H3XHSI.js.map → chunk-5GV4LDX7.js.map} +1 -1
- package/dist/{chunk-BFBGESUI.js → chunk-5MJQ5XSR.js} +4 -4
- package/dist/{chunk-BFBGESUI.js.map → chunk-5MJQ5XSR.js.map} +1 -1
- package/dist/{chunk-GKMR5SVC.js → chunk-5QDKJMUA.js} +3 -3
- package/dist/{chunk-GKMR5SVC.js.map → chunk-5QDKJMUA.js.map} +1 -1
- package/dist/{chunk-3NFQXZHO.js → chunk-5T7EKOJ5.js} +3 -3
- package/dist/{chunk-3NFQXZHO.js.map → chunk-5T7EKOJ5.js.map} +1 -1
- package/dist/{chunk-WBE6VQOO.js → chunk-5W3T767A.js} +3 -3
- package/dist/{chunk-WBE6VQOO.js.map → chunk-5W3T767A.js.map} +1 -1
- package/dist/{chunk-XYYOV5GW.js → chunk-5YUUE5JJ.js} +5 -5
- package/dist/{chunk-XYYOV5GW.js.map → chunk-5YUUE5JJ.js.map} +1 -1
- package/dist/{chunk-D6TH3EGA.js → chunk-627ZZ6HO.js} +6 -6
- package/dist/{chunk-D6TH3EGA.js.map → chunk-627ZZ6HO.js.map} +1 -1
- package/dist/{chunk-OXDWUKGP.js → chunk-6G5QK3SU.js} +5 -5
- package/dist/chunk-6G5QK3SU.js.map +1 -0
- package/dist/{chunk-U74PNG4S.js → chunk-6QVXMYKH.js} +4 -4
- package/dist/{chunk-U74PNG4S.js.map → chunk-6QVXMYKH.js.map} +1 -1
- package/dist/{chunk-NWVYQYKK.js → chunk-6VEQLD2P.js} +3 -3
- package/dist/{chunk-NWVYQYKK.js.map → chunk-6VEQLD2P.js.map} +1 -1
- package/dist/{chunk-S6ORCWM2.js → chunk-73DDLKBG.js} +3 -3
- package/dist/{chunk-S6ORCWM2.js.map → chunk-73DDLKBG.js.map} +1 -1
- package/dist/{chunk-E27SQ54A.js → chunk-7AR5QRRX.js} +3 -3
- package/dist/{chunk-E27SQ54A.js.map → chunk-7AR5QRRX.js.map} +1 -1
- package/dist/{chunk-3MJNJKAF.js → chunk-7IKX4AFY.js} +4 -4
- package/dist/{chunk-3MJNJKAF.js.map → chunk-7IKX4AFY.js.map} +1 -1
- package/dist/{chunk-A7YNTSVU.js → chunk-7PX3WBR3.js} +3 -3
- package/dist/{chunk-A7YNTSVU.js.map → chunk-7PX3WBR3.js.map} +1 -1
- package/dist/{chunk-EYSTEGV5.js → chunk-7QEFKWUR.js} +10 -10
- package/dist/{chunk-EYSTEGV5.js.map → chunk-7QEFKWUR.js.map} +1 -1
- package/dist/{chunk-Z4KW5VW6.js → chunk-7TX5X4EP.js} +6 -6
- package/dist/{chunk-Z4KW5VW6.js.map → chunk-7TX5X4EP.js.map} +1 -1
- package/dist/{chunk-BQMQULAC.js → chunk-7XJQYAGY.js} +4 -4
- package/dist/{chunk-BQMQULAC.js.map → chunk-7XJQYAGY.js.map} +1 -1
- package/dist/{chunk-2ROFZG3A.js → chunk-7Y325TBV.js} +4 -4
- package/dist/{chunk-2ROFZG3A.js.map → chunk-7Y325TBV.js.map} +1 -1
- package/dist/{chunk-4RSHPKHB.js → chunk-7YZ7HNXX.js} +4 -4
- package/dist/{chunk-4RSHPKHB.js.map → chunk-7YZ7HNXX.js.map} +1 -1
- package/dist/{chunk-YACIRNVP.js → chunk-AD4RW2JV.js} +3 -3
- package/dist/{chunk-YACIRNVP.js.map → chunk-AD4RW2JV.js.map} +1 -1
- package/dist/{chunk-YMYXWHDU.js → chunk-ADX6C3V7.js} +3 -3
- package/dist/{chunk-YMYXWHDU.js.map → chunk-ADX6C3V7.js.map} +1 -1
- package/dist/{chunk-CKD4UBV6.js → chunk-AJUOTABG.js} +4 -4
- package/dist/{chunk-CKD4UBV6.js.map → chunk-AJUOTABG.js.map} +1 -1
- package/dist/{chunk-G5TWK7L3.js → chunk-AP4ZM3DV.js} +3 -3
- package/dist/{chunk-G5TWK7L3.js.map → chunk-AP4ZM3DV.js.map} +1 -1
- package/dist/{chunk-U6EOAIPK.js → chunk-ARJAIH7Q.js} +4 -4
- package/dist/chunk-ARJAIH7Q.js.map +1 -0
- package/dist/{chunk-YCZ6M6EF.js → chunk-BBKDABQK.js} +3 -3
- package/dist/{chunk-YCZ6M6EF.js.map → chunk-BBKDABQK.js.map} +1 -1
- package/dist/{chunk-GPW57XOW.js → chunk-BSTUCHL4.js} +4 -4
- package/dist/{chunk-GPW57XOW.js.map → chunk-BSTUCHL4.js.map} +1 -1
- package/dist/{chunk-WKWLKGNI.js → chunk-BUCXPZYE.js} +6 -6
- package/dist/chunk-BUCXPZYE.js.map +1 -0
- package/dist/{chunk-ESLSPRYA.js → chunk-C2MAX4YK.js} +3 -3
- package/dist/{chunk-ESLSPRYA.js.map → chunk-C2MAX4YK.js.map} +1 -1
- package/dist/{chunk-2FJJOHHH.js → chunk-C34UNXMN.js} +3 -3
- package/dist/{chunk-2FJJOHHH.js.map → chunk-C34UNXMN.js.map} +1 -1
- package/dist/{chunk-AEHYYTFW.js → chunk-CV77MF4G.js} +3 -3
- package/dist/{chunk-AEHYYTFW.js.map → chunk-CV77MF4G.js.map} +1 -1
- package/dist/{chunk-MQ2446N7.js → chunk-DGOW65KM.js} +3 -3
- package/dist/{chunk-MQ2446N7.js.map → chunk-DGOW65KM.js.map} +1 -1
- package/dist/{chunk-U2R47SPY.js → chunk-DJHDCDU6.js} +4 -4
- package/dist/{chunk-U2R47SPY.js.map → chunk-DJHDCDU6.js.map} +1 -1
- package/dist/{chunk-5GE3BQA7.js → chunk-DQGBTZRX.js} +7 -7
- package/dist/chunk-DQGBTZRX.js.map +1 -0
- package/dist/{chunk-2IFYXJ3H.js → chunk-DRIEZH7R.js} +3 -3
- package/dist/{chunk-2IFYXJ3H.js.map → chunk-DRIEZH7R.js.map} +1 -1
- package/dist/{chunk-VWW3DJKI.js → chunk-E6SAO2CY.js} +3 -3
- package/dist/{chunk-VWW3DJKI.js.map → chunk-E6SAO2CY.js.map} +1 -1
- package/dist/{chunk-NCT5WXKG.js → chunk-EDSIOUUR.js} +4 -4
- package/dist/{chunk-NCT5WXKG.js.map → chunk-EDSIOUUR.js.map} +1 -1
- package/dist/{chunk-TAZPML2P.js → chunk-ELRIFGMN.js} +4 -4
- package/dist/{chunk-TAZPML2P.js.map → chunk-ELRIFGMN.js.map} +1 -1
- package/dist/{chunk-IMUBWKZC.js → chunk-EO4NGM5W.js} +4 -4
- package/dist/{chunk-IMUBWKZC.js.map → chunk-EO4NGM5W.js.map} +1 -1
- package/dist/{chunk-AFCSDND5.js → chunk-EQ4YAADN.js} +3 -3
- package/dist/{chunk-AFCSDND5.js.map → chunk-EQ4YAADN.js.map} +1 -1
- package/dist/{chunk-VBJ26PZJ.js → chunk-EZYXD2YI.js} +4 -4
- package/dist/{chunk-VBJ26PZJ.js.map → chunk-EZYXD2YI.js.map} +1 -1
- package/dist/{chunk-HJ4E6YPW.js → chunk-F3ETIDS7.js} +4 -4
- package/dist/{chunk-HJ4E6YPW.js.map → chunk-F3ETIDS7.js.map} +1 -1
- package/dist/{chunk-LNY2EXOV.js → chunk-F3WDMYZ4.js} +3 -3
- package/dist/{chunk-LNY2EXOV.js.map → chunk-F3WDMYZ4.js.map} +1 -1
- package/dist/{chunk-FPCRGFNY.js → chunk-FRKB4Z2P.js} +3 -3
- package/dist/{chunk-FPCRGFNY.js.map → chunk-FRKB4Z2P.js.map} +1 -1
- package/dist/{chunk-VAVE4ZJF.js → chunk-FVRSXJKS.js} +4 -4
- package/dist/chunk-FVRSXJKS.js.map +1 -0
- package/dist/{chunk-X3AXEE3S.js → chunk-FXFVFSG5.js} +5 -5
- package/dist/{chunk-X3AXEE3S.js.map → chunk-FXFVFSG5.js.map} +1 -1
- package/dist/{chunk-IFHF4UES.js → chunk-GDZECJFS.js} +12 -12
- package/dist/chunk-GDZECJFS.js.map +1 -0
- package/dist/{chunk-7J5OM4ZD.js → chunk-GLHKHYJY.js} +8 -8
- package/dist/{chunk-7J5OM4ZD.js.map → chunk-GLHKHYJY.js.map} +1 -1
- package/dist/{chunk-4KOJTZVU.js → chunk-GRODCJS4.js} +29 -29
- package/dist/chunk-GRODCJS4.js.map +1 -0
- package/dist/{chunk-TNDW52VZ.js → chunk-GVNG5ME6.js} +36 -18
- package/dist/chunk-GVNG5ME6.js.map +1 -0
- package/dist/{chunk-5J5OL4IV.js → chunk-GWSM2XNV.js} +3 -3
- package/dist/{chunk-5J5OL4IV.js.map → chunk-GWSM2XNV.js.map} +1 -1
- package/dist/{chunk-2NY6DDLO.js → chunk-H32A6UPL.js} +3 -3
- package/dist/{chunk-2NY6DDLO.js.map → chunk-H32A6UPL.js.map} +1 -1
- package/dist/{chunk-W7S7GPU5.js → chunk-HHWUROMA.js} +6 -6
- package/dist/{chunk-W7S7GPU5.js.map → chunk-HHWUROMA.js.map} +1 -1
- package/dist/{chunk-CNRV2IGH.js → chunk-HM6TEHA6.js} +3 -3
- package/dist/{chunk-CNRV2IGH.js.map → chunk-HM6TEHA6.js.map} +1 -1
- package/dist/{chunk-4GVOOXYD.js → chunk-HNQX6ZG7.js} +7 -7
- package/dist/chunk-HNQX6ZG7.js.map +1 -0
- package/dist/{chunk-HAEZLC7V.js → chunk-I5RDX6O3.js} +3 -3
- package/dist/{chunk-HAEZLC7V.js.map → chunk-I5RDX6O3.js.map} +1 -1
- package/dist/{chunk-P27ERD6W.js → chunk-IKLFWGFS.js} +70 -52
- package/dist/chunk-IKLFWGFS.js.map +1 -0
- package/dist/{chunk-DL7D5F7B.js → chunk-IPCT4YZT.js} +3 -3
- package/dist/{chunk-DL7D5F7B.js.map → chunk-IPCT4YZT.js.map} +1 -1
- package/dist/{chunk-BIUVOZQG.js → chunk-IPDAFW4F.js} +3 -3
- package/dist/{chunk-BIUVOZQG.js.map → chunk-IPDAFW4F.js.map} +1 -1
- package/dist/{chunk-G2MAGZHQ.js → chunk-IXZBH33I.js} +3 -3
- package/dist/{chunk-G2MAGZHQ.js.map → chunk-IXZBH33I.js.map} +1 -1
- package/dist/{chunk-XOGMDABS.js → chunk-JDETM3FL.js} +9 -9
- package/dist/chunk-JDETM3FL.js.map +1 -0
- package/dist/{chunk-R3HUGCGR.js → chunk-JE46MFMN.js} +6 -6
- package/dist/{chunk-R3HUGCGR.js.map → chunk-JE46MFMN.js.map} +1 -1
- package/dist/{chunk-3JCV72FO.js → chunk-JFV7CNBP.js} +4 -4
- package/dist/{chunk-3JCV72FO.js.map → chunk-JFV7CNBP.js.map} +1 -1
- package/dist/{chunk-7RTHGI6E.js → chunk-JPRHMMY6.js} +3 -3
- package/dist/{chunk-7RTHGI6E.js.map → chunk-JPRHMMY6.js.map} +1 -1
- package/dist/{chunk-G2V7D7VC.js → chunk-JUSPLVWO.js} +5 -5
- package/dist/{chunk-G2V7D7VC.js.map → chunk-JUSPLVWO.js.map} +1 -1
- package/dist/{chunk-FRDYXDAE.js → chunk-JUZ4JQWH.js} +3 -3
- package/dist/{chunk-FRDYXDAE.js.map → chunk-JUZ4JQWH.js.map} +1 -1
- package/dist/{chunk-6SHOL6WR.js → chunk-JVTB3NTP.js} +3 -3
- package/dist/{chunk-6SHOL6WR.js.map → chunk-JVTB3NTP.js.map} +1 -1
- package/dist/{chunk-XETKCF73.js → chunk-JXEIRIU4.js} +3 -3
- package/dist/{chunk-XETKCF73.js.map → chunk-JXEIRIU4.js.map} +1 -1
- package/dist/{chunk-7Y2UQMX6.js → chunk-JYYB6F5O.js} +37 -37
- package/dist/chunk-JYYB6F5O.js.map +1 -0
- package/dist/{chunk-V7WEN4SD.js → chunk-JZA45LEV.js} +3 -3
- package/dist/{chunk-V7WEN4SD.js.map → chunk-JZA45LEV.js.map} +1 -1
- package/dist/{chunk-FCSYPOHF.js → chunk-K44K3EHW.js} +3 -3
- package/dist/{chunk-FCSYPOHF.js.map → chunk-K44K3EHW.js.map} +1 -1
- package/dist/{chunk-PWCMCMDN.js → chunk-K4UCALQQ.js} +4 -4
- package/dist/{chunk-PWCMCMDN.js.map → chunk-K4UCALQQ.js.map} +1 -1
- package/dist/{chunk-OBRJXVWO.js → chunk-KBU4KJKC.js} +7 -7
- package/dist/{chunk-OBRJXVWO.js.map → chunk-KBU4KJKC.js.map} +1 -1
- package/dist/{chunk-JRWQHBJC.js → chunk-KDNTSZF5.js} +4 -4
- package/dist/{chunk-JRWQHBJC.js.map → chunk-KDNTSZF5.js.map} +1 -1
- package/dist/{chunk-3NSIUZGP.js → chunk-KHCHATTD.js} +5 -5
- package/dist/{chunk-3NSIUZGP.js.map → chunk-KHCHATTD.js.map} +1 -1
- package/dist/{chunk-57KTYE5H.js → chunk-KHJIUHHM.js} +3 -3
- package/dist/{chunk-57KTYE5H.js.map → chunk-KHJIUHHM.js.map} +1 -1
- package/dist/{chunk-TQBUBD3E.js → chunk-KLFYTLF3.js} +4 -4
- package/dist/{chunk-TQBUBD3E.js.map → chunk-KLFYTLF3.js.map} +1 -1
- package/dist/{chunk-W3QUVCRK.js → chunk-KXJ3SEW7.js} +3 -3
- package/dist/{chunk-W3QUVCRK.js.map → chunk-KXJ3SEW7.js.map} +1 -1
- package/dist/{chunk-7TF5PVEU.js → chunk-L4OQ6BJ5.js} +7 -7
- package/dist/chunk-L4OQ6BJ5.js.map +1 -0
- package/dist/{chunk-3L5G7VI2.js → chunk-LCBB3N5H.js} +4 -4
- package/dist/chunk-LCBB3N5H.js.map +1 -0
- package/dist/{chunk-BS5XDYOE.js → chunk-LDK6ADKM.js} +6 -6
- package/dist/{chunk-BS5XDYOE.js.map → chunk-LDK6ADKM.js.map} +1 -1
- package/dist/{chunk-K4MYVFWQ.js → chunk-LP6JYJQN.js} +4 -4
- package/dist/{chunk-K4MYVFWQ.js.map → chunk-LP6JYJQN.js.map} +1 -1
- package/dist/{chunk-G7PBPX3K.js → chunk-LRE3LJMW.js} +5 -5
- package/dist/{chunk-G7PBPX3K.js.map → chunk-LRE3LJMW.js.map} +1 -1
- package/dist/{chunk-LQVQ7SHG.js → chunk-LSRKDZW4.js} +4 -4
- package/dist/{chunk-LQVQ7SHG.js.map → chunk-LSRKDZW4.js.map} +1 -1
- package/dist/{chunk-H5N3VPBG.js → chunk-MGIGDALC.js} +4 -4
- package/dist/{chunk-H5N3VPBG.js.map → chunk-MGIGDALC.js.map} +1 -1
- package/dist/{chunk-WXBC3D2N.js → chunk-MNYU5MHO.js} +7 -7
- package/dist/{chunk-WXBC3D2N.js.map → chunk-MNYU5MHO.js.map} +1 -1
- package/dist/{chunk-6GWO7JNP.js → chunk-MXBDOYQL.js} +4 -4
- package/dist/{chunk-6GWO7JNP.js.map → chunk-MXBDOYQL.js.map} +1 -1
- package/dist/{chunk-37KLBMFQ.js → chunk-N2DAVD4Y.js} +3 -3
- package/dist/{chunk-37KLBMFQ.js.map → chunk-N2DAVD4Y.js.map} +1 -1
- package/dist/{chunk-3KOLK3OB.js → chunk-N5YGAESZ.js} +5 -5
- package/dist/{chunk-3KOLK3OB.js.map → chunk-N5YGAESZ.js.map} +1 -1
- package/dist/{chunk-W3JVNX35.js → chunk-N7VMQWM3.js} +15 -10
- package/dist/chunk-N7VMQWM3.js.map +1 -0
- package/dist/{chunk-5KTMPLDK.js → chunk-NAI3TX52.js} +3 -3
- package/dist/{chunk-5KTMPLDK.js.map → chunk-NAI3TX52.js.map} +1 -1
- package/dist/{chunk-QHKOBGLW.js → chunk-NGX3ITG4.js} +3 -3
- package/dist/{chunk-QHKOBGLW.js.map → chunk-NGX3ITG4.js.map} +1 -1
- package/dist/{chunk-5SUD32RK.js → chunk-NHUUSXBL.js} +3 -3
- package/dist/{chunk-5SUD32RK.js.map → chunk-NHUUSXBL.js.map} +1 -1
- package/dist/{chunk-IOWHM7ZY.js → chunk-NIRTZLZL.js} +4 -4
- package/dist/{chunk-IOWHM7ZY.js.map → chunk-NIRTZLZL.js.map} +1 -1
- package/dist/{chunk-GGUWEAYD.js → chunk-NLPVF34P.js} +4 -4
- package/dist/{chunk-GGUWEAYD.js.map → chunk-NLPVF34P.js.map} +1 -1
- package/dist/{chunk-ZPAWUKJI.js → chunk-NNWMBVCB.js} +4 -4
- package/dist/{chunk-ZPAWUKJI.js.map → chunk-NNWMBVCB.js.map} +1 -1
- package/dist/{chunk-H4ANCFZG.js → chunk-NUA54ABI.js} +4 -4
- package/dist/{chunk-H4ANCFZG.js.map → chunk-NUA54ABI.js.map} +1 -1
- package/dist/{chunk-ZPCELVWJ.js → chunk-NY2WZ4P2.js} +4 -4
- package/dist/{chunk-ZPCELVWJ.js.map → chunk-NY2WZ4P2.js.map} +1 -1
- package/dist/{chunk-BECPEVUL.js → chunk-O6LFU3KB.js} +3 -3
- package/dist/{chunk-BECPEVUL.js.map → chunk-O6LFU3KB.js.map} +1 -1
- package/dist/{chunk-HXHB2CK5.js → chunk-OAES72MK.js} +3 -3
- package/dist/{chunk-HXHB2CK5.js.map → chunk-OAES72MK.js.map} +1 -1
- package/dist/{chunk-NGR4HFVA.js → chunk-OCH7GGZF.js} +3 -3
- package/dist/{chunk-NGR4HFVA.js.map → chunk-OCH7GGZF.js.map} +1 -1
- package/dist/{chunk-Y4RKKQMB.js → chunk-ONN5XVYC.js} +4 -4
- package/dist/chunk-ONN5XVYC.js.map +1 -0
- package/dist/{chunk-GL56KIFL.js → chunk-OWZ3MZ5C.js} +4 -4
- package/dist/{chunk-GL56KIFL.js.map → chunk-OWZ3MZ5C.js.map} +1 -1
- package/dist/{chunk-MK6ID2HI.js → chunk-OXO6SKJO.js} +3 -3
- package/dist/{chunk-MK6ID2HI.js.map → chunk-OXO6SKJO.js.map} +1 -1
- package/dist/{chunk-T6XRYT6Q.js → chunk-P4WMDGAQ.js} +4 -4
- package/dist/{chunk-T6XRYT6Q.js.map → chunk-P4WMDGAQ.js.map} +1 -1
- package/dist/{chunk-NXQ25PKF.js → chunk-PBZI5XNV.js} +8 -8
- package/dist/chunk-PBZI5XNV.js.map +1 -0
- package/dist/{chunk-HI3T55XK.js → chunk-PEX7FCZC.js} +3 -3
- package/dist/{chunk-HI3T55XK.js.map → chunk-PEX7FCZC.js.map} +1 -1
- package/dist/{chunk-WMG2MMJF.js → chunk-PI4WGIPG.js} +3 -3
- package/dist/{chunk-WMG2MMJF.js.map → chunk-PI4WGIPG.js.map} +1 -1
- package/dist/{chunk-P7D6S6GX.js → chunk-PTXC4KPQ.js} +39 -5
- package/dist/chunk-PTXC4KPQ.js.map +1 -0
- package/dist/{chunk-UYC7M3FM.js → chunk-PVIIIQJI.js} +6 -6
- package/dist/{chunk-UYC7M3FM.js.map → chunk-PVIIIQJI.js.map} +1 -1
- package/dist/{chunk-E2TI5V67.js → chunk-PXR6CZIL.js} +4 -4
- package/dist/{chunk-E2TI5V67.js.map → chunk-PXR6CZIL.js.map} +1 -1
- package/dist/{chunk-KDJCZXLB.js → chunk-PZSKZFVO.js} +3 -3
- package/dist/{chunk-KDJCZXLB.js.map → chunk-PZSKZFVO.js.map} +1 -1
- package/dist/{chunk-DNAGXK2C.js → chunk-Q3JCNSPU.js} +4 -4
- package/dist/{chunk-DNAGXK2C.js.map → chunk-Q3JCNSPU.js.map} +1 -1
- package/dist/{chunk-JUTPDS4E.js → chunk-QD2ZS5DU.js} +4 -4
- package/dist/{chunk-JUTPDS4E.js.map → chunk-QD2ZS5DU.js.map} +1 -1
- package/dist/{chunk-3NLWCX2F.js → chunk-QJOWG2D4.js} +5 -5
- package/dist/{chunk-3NLWCX2F.js.map → chunk-QJOWG2D4.js.map} +1 -1
- package/dist/{chunk-Q43KJP5A.js → chunk-QLYH3GCV.js} +8 -8
- package/dist/{chunk-Q43KJP5A.js.map → chunk-QLYH3GCV.js.map} +1 -1
- package/dist/{chunk-IRIIK3BU.js → chunk-QO6TOE45.js} +11 -11
- package/dist/chunk-QO6TOE45.js.map +1 -0
- package/dist/{chunk-66TBTTZO.js → chunk-QWWA4FZP.js} +15 -15
- package/dist/chunk-QWWA4FZP.js.map +1 -0
- package/dist/{chunk-2YSZPUQZ.js → chunk-QXET2TML.js} +4 -4
- package/dist/{chunk-2YSZPUQZ.js.map → chunk-QXET2TML.js.map} +1 -1
- package/dist/{chunk-2VHARFMD.js → chunk-QZ7SGO7L.js} +3 -3
- package/dist/{chunk-2VHARFMD.js.map → chunk-QZ7SGO7L.js.map} +1 -1
- package/dist/{chunk-SUU3HNOX.js → chunk-R42LSLJL.js} +6 -6
- package/dist/{chunk-SUU3HNOX.js.map → chunk-R42LSLJL.js.map} +1 -1
- package/dist/{chunk-EVZ2GZU4.js → chunk-RMJVCJ6U.js} +3 -3
- package/dist/{chunk-EVZ2GZU4.js.map → chunk-RMJVCJ6U.js.map} +1 -1
- package/dist/{chunk-XLTSCY22.js → chunk-ROPW65RD.js} +5 -5
- package/dist/chunk-ROPW65RD.js.map +1 -0
- package/dist/{chunk-6ZAMTPGN.js → chunk-RQBYBBMP.js} +4 -4
- package/dist/{chunk-6ZAMTPGN.js.map → chunk-RQBYBBMP.js.map} +1 -1
- package/dist/chunk-RVAYDRMA.js +31 -0
- package/dist/chunk-RVAYDRMA.js.map +1 -0
- package/dist/{chunk-ARNVOHVW.js → chunk-S4P7JIQ2.js} +3 -3
- package/dist/{chunk-ARNVOHVW.js.map → chunk-S4P7JIQ2.js.map} +1 -1
- package/dist/{chunk-UPK5B2FL.js → chunk-S6BREP2G.js} +7 -7
- package/dist/chunk-S6BREP2G.js.map +1 -0
- package/dist/{chunk-Y5GO2F6P.js → chunk-SA3IQI3Y.js} +3 -3
- package/dist/{chunk-Y5GO2F6P.js.map → chunk-SA3IQI3Y.js.map} +1 -1
- package/dist/{chunk-3W7FXRO5.js → chunk-SKI25Q7O.js} +6 -6
- package/dist/{chunk-3W7FXRO5.js.map → chunk-SKI25Q7O.js.map} +1 -1
- package/dist/{chunk-LLI3JFJL.js → chunk-SSKSWSVO.js} +5 -5
- package/dist/{chunk-LLI3JFJL.js.map → chunk-SSKSWSVO.js.map} +1 -1
- package/dist/{chunk-VLDAHAG6.js → chunk-STADVFL2.js} +5 -5
- package/dist/{chunk-VLDAHAG6.js.map → chunk-STADVFL2.js.map} +1 -1
- package/dist/{chunk-UA3OQAHJ.js → chunk-SX63UD5X.js} +3 -3
- package/dist/{chunk-UA3OQAHJ.js.map → chunk-SX63UD5X.js.map} +1 -1
- package/dist/{chunk-YZY35OHQ.js → chunk-SXSR2VRG.js} +4 -4
- package/dist/{chunk-YZY35OHQ.js.map → chunk-SXSR2VRG.js.map} +1 -1
- package/dist/{chunk-DYDXGWH2.js → chunk-T3LWBCVR.js} +4 -4
- package/dist/chunk-T3LWBCVR.js.map +1 -0
- package/dist/{chunk-AR3OXNPL.js → chunk-TDANAN5A.js} +3 -3
- package/dist/{chunk-AR3OXNPL.js.map → chunk-TDANAN5A.js.map} +1 -1
- package/dist/{chunk-7ZJ32KRQ.js → chunk-TEVGCTUN.js} +3 -3
- package/dist/{chunk-7ZJ32KRQ.js.map → chunk-TEVGCTUN.js.map} +1 -1
- package/dist/{chunk-GAMOVEZD.js → chunk-TIPKU427.js} +3 -3
- package/dist/{chunk-GAMOVEZD.js.map → chunk-TIPKU427.js.map} +1 -1
- package/dist/{chunk-2Q4I4VDB.js → chunk-TK5WS675.js} +3 -3
- package/dist/{chunk-2Q4I4VDB.js.map → chunk-TK5WS675.js.map} +1 -1
- package/dist/{chunk-YUHPTV2A.js → chunk-TNSMTINE.js} +4 -4
- package/dist/{chunk-YUHPTV2A.js.map → chunk-TNSMTINE.js.map} +1 -1
- package/dist/{chunk-VT4IMHGE.js → chunk-TRTVYFOF.js} +5 -5
- package/dist/chunk-TRTVYFOF.js.map +1 -0
- package/dist/{chunk-46ESMCEQ.js → chunk-TSE3PKWQ.js} +6 -6
- package/dist/chunk-TSE3PKWQ.js.map +1 -0
- package/dist/{chunk-3BBOSSDG.js → chunk-U7TPJMGY.js} +4 -4
- package/dist/{chunk-3BBOSSDG.js.map → chunk-U7TPJMGY.js.map} +1 -1
- package/dist/{chunk-5I7AXWJU.js → chunk-UC5J6GWG.js} +5 -5
- package/dist/{chunk-5I7AXWJU.js.map → chunk-UC5J6GWG.js.map} +1 -1
- package/dist/{chunk-ZKK7L7H7.js → chunk-UNHPLKMR.js} +3 -3
- package/dist/{chunk-ZKK7L7H7.js.map → chunk-UNHPLKMR.js.map} +1 -1
- package/dist/{chunk-I7ZLEC7Y.js → chunk-UZEJ3ZVR.js} +3 -3
- package/dist/{chunk-I7ZLEC7Y.js.map → chunk-UZEJ3ZVR.js.map} +1 -1
- package/dist/{chunk-SXPBKGLT.js → chunk-UZZCEQH4.js} +4 -4
- package/dist/{chunk-SXPBKGLT.js.map → chunk-UZZCEQH4.js.map} +1 -1
- package/dist/{chunk-AEE5GDNA.js → chunk-V4NSLSCA.js} +4 -4
- package/dist/{chunk-AEE5GDNA.js.map → chunk-V4NSLSCA.js.map} +1 -1
- package/dist/{chunk-IZC5YFGO.js → chunk-V57DERRV.js} +14 -7
- package/dist/chunk-V57DERRV.js.map +1 -0
- package/dist/{chunk-VZZ3HP7G.js → chunk-VHJ6ALIE.js} +4 -4
- package/dist/{chunk-VZZ3HP7G.js.map → chunk-VHJ6ALIE.js.map} +1 -1
- package/dist/{chunk-N3I6GA4I.js → chunk-WG34IXUV.js} +3 -3
- package/dist/{chunk-N3I6GA4I.js.map → chunk-WG34IXUV.js.map} +1 -1
- package/dist/{chunk-OEXQ2MOY.js → chunk-WGKOYZRI.js} +4 -4
- package/dist/{chunk-OEXQ2MOY.js.map → chunk-WGKOYZRI.js.map} +1 -1
- package/dist/{chunk-6DN2UAIR.js → chunk-WGSVSZ7V.js} +3 -3
- package/dist/{chunk-6DN2UAIR.js.map → chunk-WGSVSZ7V.js.map} +1 -1
- package/dist/{chunk-X4YUWX7H.js → chunk-WK324C6D.js} +4 -4
- package/dist/{chunk-X4YUWX7H.js.map → chunk-WK324C6D.js.map} +1 -1
- package/dist/{chunk-N2WITPE2.js → chunk-WOP5OWLG.js} +3 -3
- package/dist/{chunk-N2WITPE2.js.map → chunk-WOP5OWLG.js.map} +1 -1
- package/dist/{chunk-JPA2VQRW.js → chunk-WSDWJX4Y.js} +4 -4
- package/dist/{chunk-JPA2VQRW.js.map → chunk-WSDWJX4Y.js.map} +1 -1
- package/dist/{chunk-2XJWE2XR.js → chunk-WUS45IZW.js} +4 -4
- package/dist/{chunk-2XJWE2XR.js.map → chunk-WUS45IZW.js.map} +1 -1
- package/dist/{chunk-B3BDIM4H.js → chunk-WVOZYDH3.js} +3 -3
- package/dist/{chunk-B3BDIM4H.js.map → chunk-WVOZYDH3.js.map} +1 -1
- package/dist/{chunk-K45MMHLA.js → chunk-WWK7UIKK.js} +5 -5
- package/dist/{chunk-K45MMHLA.js.map → chunk-WWK7UIKK.js.map} +1 -1
- package/dist/{chunk-NCLOPI6U.js → chunk-X2EMALTZ.js} +3 -3
- package/dist/{chunk-NCLOPI6U.js.map → chunk-X2EMALTZ.js.map} +1 -1
- package/dist/{chunk-PK5O62XD.js → chunk-X4CJFD6D.js} +3 -3
- package/dist/{chunk-PK5O62XD.js.map → chunk-X4CJFD6D.js.map} +1 -1
- package/dist/{chunk-JWXK4TMX.js → chunk-XEQGATVF.js} +3 -3
- package/dist/{chunk-JWXK4TMX.js.map → chunk-XEQGATVF.js.map} +1 -1
- package/dist/{chunk-B6KQKQ4S.js → chunk-XMUD3LG7.js} +3 -3
- package/dist/{chunk-B6KQKQ4S.js.map → chunk-XMUD3LG7.js.map} +1 -1
- package/dist/{chunk-5ZEYTBTU.js → chunk-XWBVIBN4.js} +3 -3
- package/dist/{chunk-5ZEYTBTU.js.map → chunk-XWBVIBN4.js.map} +1 -1
- package/dist/{chunk-7I6KK6QE.js → chunk-XXWCMY2G.js} +3 -3
- package/dist/{chunk-7I6KK6QE.js.map → chunk-XXWCMY2G.js.map} +1 -1
- package/dist/{chunk-LFN7UHDT.js → chunk-Y4FEW7SR.js} +3 -3
- package/dist/{chunk-LFN7UHDT.js.map → chunk-Y4FEW7SR.js.map} +1 -1
- package/dist/{chunk-PFVT27B5.js → chunk-YC5VVIZO.js} +3 -3
- package/dist/{chunk-PFVT27B5.js.map → chunk-YC5VVIZO.js.map} +1 -1
- package/dist/{chunk-7EGN7IGY.js → chunk-YMCKML6D.js} +7 -7
- package/dist/{chunk-7EGN7IGY.js.map → chunk-YMCKML6D.js.map} +1 -1
- package/dist/{chunk-7HT32DZG.js → chunk-YMQDTTO7.js} +6 -6
- package/dist/{chunk-7HT32DZG.js.map → chunk-YMQDTTO7.js.map} +1 -1
- package/dist/{chunk-ZARZYMBM.js → chunk-YNTS4GRT.js} +3 -3
- package/dist/{chunk-ZARZYMBM.js.map → chunk-YNTS4GRT.js.map} +1 -1
- package/dist/{chunk-6SZRWNPT.js → chunk-ZOHLZ4YL.js} +3 -3
- package/dist/{chunk-6SZRWNPT.js.map → chunk-ZOHLZ4YL.js.map} +1 -1
- package/dist/{chunk-4Y72SPNL.js → chunk-ZVSMLMMS.js} +5 -5
- package/dist/chunk-ZVSMLMMS.js.map +1 -0
- package/dist/{chunk-VKDN66VL.js → chunk-ZXWT4KWJ.js} +3 -3
- package/dist/{chunk-VKDN66VL.js.map → chunk-ZXWT4KWJ.js.map} +1 -1
- package/dist/components/advanced/AssetManager/index.js +2 -2
- package/dist/components/advanced/Calendar/index.js +7 -7
- package/dist/components/advanced/Command/index.js +3 -3
- package/dist/components/advanced/DragAndDrop/index.js +2 -2
- package/dist/components/advanced/ErrorBoundary/index.js +2 -2
- package/dist/components/advanced/EventCalendar/index.js +7 -7
- package/dist/components/advanced/FileDropzone/index.js +2 -2
- package/dist/components/advanced/FilePreview/index.js +2 -2
- package/dist/components/advanced/FileUpload/index.js +2 -2
- package/dist/components/advanced/FilterBuilder/index.js +10 -10
- package/dist/components/advanced/MarkdownEditor/index.js +6 -6
- package/dist/components/advanced/ReportBuilder/index.js +8 -8
- package/dist/components/advanced/RichTextEditor/index.js +4 -4
- package/dist/components/advanced/Search/index.js +2 -2
- package/dist/components/advanced/SortableList/index.js +2 -2
- package/dist/components/advanced/VersionControl/index.js +2 -2
- package/dist/components/advanced/index.js +31 -31
- package/dist/components/data-display/Accordion/index.js +2 -2
- package/dist/components/data-display/AreaChart/index.js +3 -3
- package/dist/components/data-display/Banner/index.js +2 -2
- package/dist/components/data-display/BarChart/index.js +3 -3
- package/dist/components/data-display/BarList/index.js +2 -2
- package/dist/components/data-display/Callout/index.js +2 -2
- package/dist/components/data-display/Carousel/index.js +7 -7
- package/dist/components/data-display/CategoryBar/index.js +3 -3
- package/dist/components/data-display/Chart/index.js +2 -2
- package/dist/components/data-display/ChartCard/index.js +5 -5
- package/dist/components/data-display/ChartLegend/index.js +2 -2
- package/dist/components/data-display/ComboChart/index.js +3 -3
- package/dist/components/data-display/DashboardCard/index.js +3 -3
- package/dist/components/data-display/DataTable/FilterBuilder/index.js +10 -10
- package/dist/components/data-display/DataTable/index.js +17 -17
- package/dist/components/data-display/DeltaBar/index.js +3 -3
- package/dist/components/data-display/EmptyState/index.js +2 -2
- package/dist/components/data-display/FeatureItem/index.js +3 -3
- package/dist/components/data-display/Feed/index.js +2 -2
- package/dist/components/data-display/FunnelChart/index.js +3 -3
- package/dist/components/data-display/GaugeChart/index.js +2 -2
- package/dist/components/data-display/Heatmap/index.js +3 -3
- package/dist/components/data-display/HoverCard/index.js +2 -2
- package/dist/components/data-display/ImageGallery/index.js +9 -9
- package/dist/components/data-display/Item/index.js +3 -3
- package/dist/components/data-display/KPICard/index.js +8 -8
- package/dist/components/data-display/Lightbox/index.js +2 -2
- package/dist/components/data-display/LineChart/index.js +3 -3
- package/dist/components/data-display/List/index.js +6 -6
- package/dist/components/data-display/MarkerBar/index.js +3 -3
- package/dist/components/data-display/PieChart/index.js +3 -3
- package/dist/components/data-display/RadarChart/index.js +3 -3
- package/dist/components/data-display/RadialChart/index.js +3 -3
- package/dist/components/data-display/ScatterChart/index.js +3 -3
- package/dist/components/data-display/SingleStat/index.js +3 -3
- package/dist/components/data-display/Sparkline/index.js +2 -2
- package/dist/components/data-display/Table/index.js +2 -2
- package/dist/components/data-display/Timeline/index.js +2 -2
- package/dist/components/data-display/Tracker/index.js +3 -3
- package/dist/components/data-display/VirtualTable/index.js +5 -5
- package/dist/components/data-display/index.js +57 -57
- package/dist/components/feedback/Alert/index.js +2 -2
- package/dist/components/feedback/AlertDialog/index.js +7 -7
- package/dist/components/feedback/ConfirmModal/index.js +8 -8
- package/dist/components/feedback/Dialog/index.js +2 -2
- package/dist/components/feedback/ErrorPage/index.js +2 -2
- package/dist/components/feedback/FocusTrap/index.js +2 -2
- package/dist/components/feedback/Message/index.js +2 -2
- package/dist/components/feedback/Modal/index.js +2 -2
- package/dist/components/feedback/Notification/index.js +4 -4
- package/dist/components/feedback/Popover/index.js +2 -2
- package/dist/components/feedback/Tooltip/index.js +2 -2
- package/dist/components/feedback/UpdatesWidget/index.js +2 -2
- package/dist/components/feedback/index.js +18 -18
- package/dist/components/forms/Autocomplete/index.js +2 -2
- package/dist/components/forms/Checkbox/index.js +2 -2
- package/dist/components/forms/CheckboxGroup/index.js +3 -3
- package/dist/components/forms/ColorPicker/index.js +3 -3
- package/dist/components/forms/Combobox/index.js +2 -2
- package/dist/components/forms/DatePicker/index.js +10 -10
- package/dist/components/forms/DateRangePicker/index.js +10 -10
- package/dist/components/forms/EmailInput/index.js +4 -4
- package/dist/components/forms/ErrorMessage/index.js +2 -2
- package/dist/components/forms/Field/index.js +4 -4
- package/dist/components/forms/FloatLabel/index.js +2 -2
- package/dist/components/forms/Form/index.js +3 -3
- package/dist/components/forms/FormValidation/index.js +2 -2
- package/dist/components/forms/HelpText/index.js +2 -2
- package/dist/components/forms/IftaLabel/index.js +2 -2
- package/dist/components/forms/InputGroup/index.js +10 -10
- package/dist/components/forms/InputOTP/index.js +2 -2
- package/dist/components/forms/InputOTPField/index.js +6 -6
- package/dist/components/forms/MultiSelect/index.js +3 -3
- package/dist/components/forms/NativeSelect/index.js +2 -2
- package/dist/components/forms/NumberInput/index.js +3 -3
- package/dist/components/forms/PasswordInput/index.js +4 -4
- package/dist/components/forms/PaymentInput/index.js +2 -2
- package/dist/components/forms/PhoneInput/index.js +2 -2
- package/dist/components/forms/RadioButton/index.js +2 -2
- package/dist/components/forms/RadioCardGroup/index.js +2 -2
- package/dist/components/forms/RadioGroup/index.js +2 -2
- package/dist/components/forms/Rating/index.js +2 -2
- package/dist/components/forms/SearchInput/index.js +4 -4
- package/dist/components/forms/Select/index.js +2 -2
- package/dist/components/forms/Slider/index.js +2 -2
- package/dist/components/forms/SuccessMessage/index.js +2 -2
- package/dist/components/forms/Switch/index.js +2 -2
- package/dist/components/forms/TagsInput/index.js +4 -4
- package/dist/components/forms/TextInput/index.js +3 -3
- package/dist/components/forms/Textarea/index.js +2 -2
- package/dist/components/forms/TextareaField/index.js +6 -6
- package/dist/components/forms/TimePicker/index.js +4 -4
- package/dist/components/forms/URLInput/index.js +4 -4
- package/dist/components/forms/index.js +51 -51
- package/dist/components/index.js +186 -186
- package/dist/components/layout/Card/index.js +2 -2
- package/dist/components/layout/Collapsible/index.js +2 -2
- package/dist/components/layout/Container/index.js +2 -2
- package/dist/components/layout/Flex/index.js +2 -2
- package/dist/components/layout/Grid/index.js +2 -2
- package/dist/components/layout/Panel/index.js +3 -3
- package/dist/components/layout/ResizablePanels/index.js +2 -2
- package/dist/components/layout/ResponsiveContainer/index.js +2 -2
- package/dist/components/layout/ScrollArea/index.js +2 -2
- package/dist/components/layout/Section/index.js +2 -2
- package/dist/components/layout/Sheet/index.js +2 -2
- package/dist/components/layout/Stack/index.js +2 -2
- package/dist/components/layout/index.js +13 -13
- package/dist/components/navigation/AccountSwitch/index.js +6 -6
- package/dist/components/navigation/Breadcrumb/index.js +2 -2
- package/dist/components/navigation/ContextMenu/index.js +2 -2
- package/dist/components/navigation/Drawer/index.js +2 -2
- package/dist/components/navigation/DropdownMenu/index.js +2 -2
- package/dist/components/navigation/FileTree/index.js +2 -2
- package/dist/components/navigation/Header/index.js +2 -2
- package/dist/components/navigation/LogoConta/index.js +2 -2
- package/dist/components/navigation/Menu/index.js +3 -3
- package/dist/components/navigation/Menubar/index.js +2 -2
- package/dist/components/navigation/Navbar/index.js +2 -2
- package/dist/components/navigation/NavigationMenu/index.js +2 -2
- package/dist/components/navigation/Pagination/index.js +7 -7
- package/dist/components/navigation/Sidebar/index.js +12 -12
- package/dist/components/navigation/SkipLinks/index.js +2 -2
- package/dist/components/navigation/SpeedDial/index.js +3 -3
- package/dist/components/navigation/TabNavigation/index.js +2 -2
- package/dist/components/navigation/TabPanel/index.js +2 -2
- package/dist/components/navigation/Tabs/index.js +2 -2
- package/dist/components/navigation/Toolbar/index.js +2 -2
- package/dist/components/navigation/Topbar/index.js +2 -2
- package/dist/components/navigation/index.js +33 -33
- package/dist/components/primitives/ArrowAnimated/index.js +2 -2
- package/dist/components/primitives/Avatar/index.js +3 -3
- package/dist/components/primitives/Badge/index.js +3 -3
- package/dist/components/primitives/Button/index.js +6 -6
- package/dist/components/primitives/ButtonGroup/index.js +3 -3
- package/dist/components/primitives/ConfirmButton/index.js +8 -8
- package/dist/components/primitives/Divider/index.js +2 -2
- package/dist/components/primitives/FeaturedIcon/index.js +2 -2
- package/dist/components/primitives/FolderStack/index.js +2 -2
- package/dist/components/primitives/Heading/index.js +2 -2
- package/dist/components/primitives/Icon/index.js +2 -2
- package/dist/components/primitives/Image/index.js +2 -2
- package/dist/components/primitives/Kbd/index.js +2 -2
- package/dist/components/primitives/Label/index.js +2 -2
- package/dist/components/primitives/Link/index.js +2 -2
- package/dist/components/primitives/Paragraph/index.js +2 -2
- package/dist/components/primitives/PaymentMethodIcon/index.js +2 -2
- package/dist/components/primitives/ProgressBar/index.js +3 -3
- package/dist/components/primitives/ProgressCircle/index.js +3 -3
- package/dist/components/primitives/SkeletonLoader/index.js +2 -2
- package/dist/components/primitives/Spacer/index.js +2 -2
- package/dist/components/primitives/Spinner/index.js +2 -2
- package/dist/components/primitives/SplitButton/index.js +3 -3
- package/dist/components/primitives/StatusIndicator/index.js +2 -2
- package/dist/components/primitives/Tag/index.js +2 -2
- package/dist/components/primitives/Text/index.js +2 -2
- package/dist/components/primitives/Thumbnail/index.js +3 -3
- package/dist/components/primitives/Toggle/index.js +2 -2
- package/dist/components/primitives/index.js +32 -32
- package/dist/components/workflow/ApprovalFlow/index.js +8 -8
- package/dist/components/workflow/ApprovalStatus/index.js +2 -2
- package/dist/components/workflow/CommentSystem/index.js +9 -9
- package/dist/components/workflow/Dashboard/index.js +7 -7
- package/dist/components/workflow/DashboardBuilder/index.js +10 -10
- package/dist/components/workflow/KanbanBoard/index.js +9 -9
- package/dist/components/workflow/ProgressSteps/index.js +2 -2
- package/dist/components/workflow/ReportGenerator/index.js +9 -9
- package/dist/components/workflow/Stepper/index.js +2 -2
- package/dist/components/workflow/TaskCard/index.js +2 -2
- package/dist/components/workflow/TaskList/index.js +2 -2
- package/dist/components/workflow/TaskStatus/index.js +3 -3
- package/dist/components/workflow/Wizard/index.js +8 -8
- package/dist/components/workflow/index.js +27 -27
- package/dist/index.d.ts +62 -14
- package/dist/index.js +186 -186
- package/dist/lib/utils.d.ts +2 -1
- package/dist/lib/utils.js +1 -1
- package/dist/styles.css +27 -703
- package/package.json +2 -2
- package/dist/chunk-3L5G7VI2.js.map +0 -1
- package/dist/chunk-46ESMCEQ.js.map +0 -1
- package/dist/chunk-4GVOOXYD.js.map +0 -1
- package/dist/chunk-4KOJTZVU.js.map +0 -1
- package/dist/chunk-4Y72SPNL.js.map +0 -1
- package/dist/chunk-5GE3BQA7.js.map +0 -1
- package/dist/chunk-66TBTTZO.js.map +0 -1
- package/dist/chunk-7TF5PVEU.js.map +0 -1
- package/dist/chunk-7Y2UQMX6.js.map +0 -1
- package/dist/chunk-DYDXGWH2.js.map +0 -1
- package/dist/chunk-HRNDJU7D.js +0 -11
- package/dist/chunk-HRNDJU7D.js.map +0 -1
- package/dist/chunk-IFHF4UES.js.map +0 -1
- package/dist/chunk-IRIIK3BU.js.map +0 -1
- package/dist/chunk-IZC5YFGO.js.map +0 -1
- package/dist/chunk-NXQ25PKF.js.map +0 -1
- package/dist/chunk-OXDWUKGP.js.map +0 -1
- package/dist/chunk-P27ERD6W.js.map +0 -1
- package/dist/chunk-P7D6S6GX.js.map +0 -1
- package/dist/chunk-TNDW52VZ.js.map +0 -1
- package/dist/chunk-U6EOAIPK.js.map +0 -1
- package/dist/chunk-UPK5B2FL.js.map +0 -1
- package/dist/chunk-VAVE4ZJF.js.map +0 -1
- package/dist/chunk-VT4IMHGE.js.map +0 -1
- package/dist/chunk-W3JVNX35.js.map +0 -1
- package/dist/chunk-WKWLKGNI.js.map +0 -1
- package/dist/chunk-XLTSCY22.js.map +0 -1
- package/dist/chunk-XOGMDABS.js.map +0 -1
- package/dist/chunk-Y4RKKQMB.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/advanced/EventCalendar/EventCalendar.variants.ts","../src/components/advanced/EventCalendar/EventCalendar.tsx"],"names":["Fragment"],"mappings":"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","file":"chunk-T6XRYT6Q.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * EventCalendar container variants\n */\nexport const eventCalendarVariants = cva(\n \"flex flex-col bg-background rounded-lg border border-border overflow-hidden\",\n {\n variants: {\n size: {\n sm: \"min-h-96\",\n md: \"min-h-[var(--event-calendar-root-min-height-md)]\",\n lg: \"min-h-[var(--event-calendar-root-min-height-lg)]\",\n full: \"h-full min-h-[var(--event-calendar-root-min-height-full)]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * Calendar header variants\n */\nexport const eventCalendarHeaderVariants = cva(\n \"flex items-center justify-between p-3 border-b border-border bg-muted/30\",\n {\n variants: {\n compact: {\n true: \"p-2\",\n false: \"p-3\",\n },\n },\n defaultVariants: {\n compact: false,\n },\n }\n)\n\n/**\n * Calendar grid cell variants\n */\nexport const eventCalendarCellVariants = cva(\n \"relative min-h-20 border-r border-b border-border p-1 transition-colors\",\n {\n variants: {\n isToday: {\n true: \"bg-primary/5\",\n false: \"\",\n },\n isWeekend: {\n true: \"bg-muted/30\",\n false: \"\",\n },\n isOutsideMonth: {\n true: \"bg-muted/50 text-muted-foreground\",\n false: \"\",\n },\n isSelected: {\n true: \"ring-2 ring-primary ring-inset\",\n false: \"\",\n },\n isSelectable: {\n true: \"cursor-pointer hover:bg-accent/50\",\n false: \"\",\n },\n },\n defaultVariants: {\n isToday: false,\n isWeekend: false,\n isOutsideMonth: false,\n isSelected: false,\n isSelectable: true,\n },\n }\n)\n\n/**\n * Calendar event chip variants\n * Uses semantic chart colors for event categorization\n */\nexport const eventCalendarEventVariants = cva(\n \"group relative rounded px-1.5 py-0.5 text-xs font-medium truncate cursor-pointer transition-all\",\n {\n variants: {\n variant: {\n default: \"bg-primary/10 text-primary hover:bg-primary/20\",\n blue: \"bg-[color:var(--chart-3)]/10 text-[color:var(--chart-3)] hover:bg-[color:var(--chart-3)]/20\",\n green: \"bg-[color:var(--chart-2)]/10 text-[color:var(--chart-2)] hover:bg-[color:var(--chart-2)]/20\",\n red: \"bg-destructive/10 text-destructive hover:bg-destructive/20\",\n yellow: \"bg-[color:var(--chart-4)]/10 text-[color:var(--chart-4)] hover:bg-[color:var(--chart-4)]/20\",\n purple: \"bg-[color:var(--chart-1)]/10 text-[color:var(--chart-1)] hover:bg-[color:var(--chart-1)]/20\",\n orange: \"bg-[color:var(--chart-5)]/10 text-[color:var(--chart-5)] hover:bg-[color:var(--chart-5)]/20\",\n pink: \"bg-[color:var(--chart-1)]/10 text-[color:var(--chart-1)] hover:bg-[color:var(--chart-1)]/20\",\n cyan: \"bg-[color:var(--chart-2)]/10 text-[color:var(--chart-2)] hover:bg-[color:var(--chart-2)]/20\",\n },\n isAllDay: {\n true: \"font-semibold\",\n false: \"\",\n },\n isDragging: {\n true: \"opacity-50 ring-2 ring-primary\",\n false: \"\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n isAllDay: false,\n isDragging: false,\n },\n }\n)\n\n/**\n * Time slot variants for week/day views\n */\nexport const eventCalendarTimeSlotVariants = cva(\n \"relative border-b border-border transition-colors\",\n {\n variants: {\n isHour: {\n true: \"border-border\",\n false: \"border-border/50\",\n },\n isCurrentTime: {\n true: \"before:absolute before:left-0 before:right-0 before:h-0.5 before:bg-destructive before:z-10\",\n false: \"\",\n },\n isSelectable: {\n true: \"cursor-pointer hover:bg-accent/30\",\n false: \"\",\n },\n },\n defaultVariants: {\n isHour: false,\n isCurrentTime: false,\n isSelectable: true,\n },\n }\n)\n\n/**\n * View toggle button variants\n */\nexport const eventCalendarViewButtonVariants = cva(\n \"px-3 py-1.5 text-sm font-medium rounded-md transition-colors\",\n {\n variants: {\n isActive: {\n true: \"bg-primary text-primary-foreground\",\n false: \"text-muted-foreground hover:text-foreground hover:bg-muted\",\n },\n },\n defaultVariants: {\n isActive: false,\n },\n }\n)\n\n/**\n * Day number variants\n */\nexport const eventCalendarDayNumberVariants = cva(\n \"inline-flex items-center justify-center w-7 h-7 text-sm rounded-full transition-colors\",\n {\n variants: {\n isToday: {\n true: \"bg-primary text-primary-foreground font-semibold\",\n false: \"text-foreground\",\n },\n isOutsideMonth: {\n true: \"text-muted-foreground\",\n false: \"\",\n },\n },\n defaultVariants: {\n isToday: false,\n isOutsideMonth: false,\n },\n }\n)\n\n/**\n * Agenda item variants\n */\nexport const eventCalendarAgendaItemVariants = cva(\n \"flex items-start gap-3 p-3 rounded-lg transition-colors\",\n {\n variants: {\n isClickable: {\n true: \"cursor-pointer hover:bg-muted/50\",\n false: \"\",\n },\n },\n defaultVariants: {\n isClickable: true,\n },\n }\n)\n\n/**\n * Map color string to variant\n */\nexport function getEventVariant(\n color?: string\n): \"blue\" | \"cyan\" | \"default\" | \"green\" | \"orange\" | \"pink\" | \"purple\" | \"red\" | \"yellow\" {\n if (!color) return \"default\"\n\n const colorMap: Record<string, \"blue\" | \"cyan\" | \"green\" | \"orange\" | \"pink\" | \"purple\" | \"red\" | \"yellow\"> = {\n blue: \"blue\",\n green: \"green\",\n red: \"red\",\n yellow: \"yellow\",\n purple: \"purple\",\n orange: \"orange\",\n pink: \"pink\",\n cyan: \"cyan\",\n }\n\n return colorMap[color.toLowerCase()] ?? \"default\"\n}\n","import type {\n CalendarEvent,\n EventCalendarAgendaProps,\n EventCalendarDayProps,\n EventCalendarEventProps,\n EventCalendarHeaderProps,\n EventCalendarMonthProps,\n EventCalendarProps,\n EventCalendarView,\n EventCalendarWeekProps,\n TimeSlot,\n} from \"./EventCalendar.types\"\n\nimport { ChevronLeft, ChevronRight, Clock, MapPin } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Button } from \"../../primitives/Button\"\nimport {\n eventCalendarAgendaItemVariants,\n eventCalendarCellVariants,\n eventCalendarDayNumberVariants,\n eventCalendarEventVariants,\n eventCalendarHeaderVariants,\n eventCalendarTimeSlotVariants,\n eventCalendarVariants,\n eventCalendarViewButtonVariants,\n getEventVariant,\n} from \"./EventCalendar.variants\"\n\n// ============================================================================\n// Date Utilities\n// ============================================================================\n\nfunction startOfMonth(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth(), 1)\n}\n\nfunction endOfMonth(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth() + 1, 0)\n}\n\nfunction startOfWeek(date: Date, weekStartsOn: 0 | 1 = 0): Date {\n const d = new Date(date)\n const day = d.getDay()\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn\n d.setDate(d.getDate() - diff)\n d.setHours(0, 0, 0, 0)\n return d\n}\n\nfunction endOfWeek(date: Date, weekStartsOn: 0 | 1 = 0): Date {\n const d = startOfWeek(date, weekStartsOn)\n d.setDate(d.getDate() + 6)\n d.setHours(23, 59, 59, 999)\n return d\n}\n\nfunction addDays(date: Date, days: number): Date {\n const d = new Date(date)\n d.setDate(d.getDate() + days)\n return d\n}\n\nfunction addMonths(date: Date, months: number): Date {\n const d = new Date(date)\n d.setMonth(d.getMonth() + months)\n return d\n}\n\nfunction addWeeks(date: Date, weeks: number): Date {\n return addDays(date, weeks * 7)\n}\n\nfunction isSameDay(a: Date, b: Date): boolean {\n return (\n a.getFullYear() === b.getFullYear() &&\n a.getMonth() === b.getMonth() &&\n a.getDate() === b.getDate()\n )\n}\n\nfunction isSameMonth(a: Date, b: Date): boolean {\n return (\n a.getFullYear() === b.getFullYear() && a.getMonth() === b.getMonth()\n )\n}\n\nfunction isToday(date: Date): boolean {\n return isSameDay(date, new Date())\n}\n\nfunction isWeekend(date: Date): boolean {\n const day = date.getDay()\n return day === 0 || day === 6\n}\n\nfunction formatDate(\n date: Date,\n options: Intl.DateTimeFormatOptions,\n locale = \"en-US\"\n): string {\n return date.toLocaleDateString(locale, options)\n}\n\nfunction formatTime(date: Date, locale = \"en-US\"): string {\n return date.toLocaleTimeString(locale, { hour: \"numeric\", minute: \"2-digit\" })\n}\n\nfunction parseTime(timeStr: string): { hours: number; minutes: number } {\n const [hours, minutes] = timeStr.split(\":\").map(Number)\n return { hours: hours ?? 0, minutes: minutes ?? 0 }\n}\n\nfunction getEventsForDay(events: CalendarEvent[], date: Date): CalendarEvent[] {\n return events.filter((event) => {\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n const dayStart = new Date(date)\n dayStart.setHours(0, 0, 0, 0)\n const dayEnd = new Date(date)\n dayEnd.setHours(23, 59, 59, 999)\n\n return eventStart <= dayEnd && eventEnd >= dayStart\n })\n}\n\nfunction getEventsForDateRange(\n events: CalendarEvent[],\n start: Date,\n end: Date\n): CalendarEvent[] {\n return events.filter((event) => {\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n return eventStart <= end && eventEnd >= start\n })\n}\n\n// ============================================================================\n// EventCalendarEvent Component\n// ============================================================================\n\nfunction EventCalendarEvent({\n event,\n isDragging = false,\n onClick,\n renderEvent,\n}: EventCalendarEventProps) {\n if (renderEvent) {\n return <>{renderEvent(event)}</>\n }\n\n const variant = getEventVariant(event.color)\n\n return (\n <button\n className={cn(\n eventCalendarEventVariants({\n variant,\n isAllDay: event.allDay,\n isDragging,\n })\n )}\n aria-label={`Event: ${event.title}`}\n data-slot=\"event\"\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation()\n onClick?.(event)\n }}\n >\n {!event.allDay && (\n <span className=\"mr-1 text-xs opacity-70\">\n {formatTime(new Date(event.start))}\n </span>\n )}\n <span>{event.title}</span>\n </button>\n )\n}\n\n// ============================================================================\n// EventCalendarHeader Component\n// ============================================================================\n\nfunction EventCalendarHeader({\n date,\n view,\n onPrevious,\n onNext,\n onToday,\n onViewChange,\n locale = \"en-US\",\n}: EventCalendarHeaderProps) {\n const getHeaderTitle = (): string => {\n switch (view) {\n case \"month\":\n return formatDate(date, { month: \"long\", year: \"numeric\" }, locale)\n case \"week\": {\n const weekStart = startOfWeek(date, 0)\n const weekEnd = endOfWeek(date, 0)\n if (weekStart.getMonth() === weekEnd.getMonth()) {\n return `${formatDate(weekStart, { month: \"long\", day: \"numeric\" }, locale)} - ${String(weekEnd.getDate())}, ${String(weekEnd.getFullYear())}`\n }\n return `${formatDate(weekStart, { month: \"short\", day: \"numeric\" }, locale)} - ${formatDate(weekEnd, { month: \"short\", day: \"numeric\", year: \"numeric\" }, locale)}`\n }\n case \"day\":\n return formatDate(\n date,\n { weekday: \"long\", month: \"long\", day: \"numeric\", year: \"numeric\" },\n locale\n )\n case \"agenda\":\n return formatDate(date, { month: \"long\", year: \"numeric\" }, locale)\n default:\n return \"\"\n }\n }\n\n const views: EventCalendarView[] = [\"month\", \"week\", \"day\", \"agenda\"]\n\n return (\n <div\n className={cn(eventCalendarHeaderVariants())}\n data-slot=\"calendar-header\"\n >\n <div className=\"flex items-center gap-2\">\n <Button\n aria-label=\"Previous\"\n size=\"sm\"\n variant=\"outline\"\n onClick={onPrevious}\n >\n <ChevronLeft className=\"h-4 w-4\" />\n </Button>\n <Button\n aria-label=\"Next\"\n size=\"sm\"\n variant=\"outline\"\n onClick={onNext}\n >\n <ChevronRight className=\"h-4 w-4\" />\n </Button>\n <Button size=\"sm\" variant=\"outline\" onClick={onToday}>\n Today\n </Button>\n <h2 className=\"ml-2 text-lg font-semibold\">{getHeaderTitle()}</h2>\n </div>\n\n <div className=\"flex items-center gap-1 rounded-lg bg-muted p-1\">\n {views.map((v) => (\n <button\n key={v}\n aria-pressed={view === v}\n className={cn(eventCalendarViewButtonVariants({ isActive: view === v }))}\n type=\"button\"\n onClick={() => { onViewChange(v); }}\n >\n {v.charAt(0).toUpperCase() + v.slice(1)}\n </button>\n ))}\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarMonth Component\n// ============================================================================\n\nfunction EventCalendarMonth({\n date,\n events,\n weekStartsOn,\n selectable,\n onDayClick,\n onEventClick,\n onSlotSelect,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarMonthProps) {\n const monthStart = startOfMonth(date)\n const monthEnd = endOfMonth(date)\n const calendarStart = startOfWeek(monthStart, weekStartsOn)\n const calendarEnd = endOfWeek(monthEnd, weekStartsOn)\n\n // Generate week days header\n const weekDays: string[] = []\n let dayPointer = calendarStart\n for (let i = 0; i < 7; i++) {\n weekDays.push(formatDate(dayPointer, { weekday: \"short\" }, locale))\n dayPointer = addDays(dayPointer, 1)\n }\n\n // Generate calendar grid\n const weeks: Date[][] = []\n let currentDay = calendarStart\n while (currentDay <= calendarEnd) {\n const week: Date[] = []\n for (let i = 0; i < 7; i++) {\n week.push(new Date(currentDay))\n currentDay = addDays(currentDay, 1)\n }\n weeks.push(week)\n }\n\n const handleDayClick = (day: Date) => {\n onDayClick?.(day)\n if (selectable && onSlotSelect) {\n const start = new Date(day)\n start.setHours(0, 0, 0, 0)\n const end = new Date(day)\n end.setHours(23, 59, 59, 999)\n onSlotSelect({ start, end, allDay: true })\n }\n }\n\n return (\n <div className=\"flex flex-1 flex-col\" data-slot=\"calendar-month\" role=\"grid\">\n {/* Week day headers */}\n <div\n className=\"grid grid-cols-7 border-b border-border bg-muted/50\"\n role=\"row\"\n >\n {weekDays.map((day) => (\n <div\n key={day}\n className=\"py-2 text-center text-xs font-medium text-muted-foreground\"\n role=\"columnheader\"\n >\n {day}\n </div>\n ))}\n </div>\n\n {/* Calendar grid */}\n <div className=\"flex flex-1 flex-col\">\n {weeks.map((week) => (\n <div\n key={week[0]?.toISOString()}\n className=\"grid flex-1 grid-cols-7\"\n role=\"row\"\n >\n {week.map((day) => {\n const dayEvents = getEventsForDay(events, day)\n const isCurrentMonth = isSameMonth(day, date)\n const isTodayDate = isToday(day)\n const isWeekendDay = isWeekend(day)\n\n return (\n <div\n key={day.toISOString()}\n aria-label={formatDate(day, {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n })}\n className={cn(\n eventCalendarCellVariants({\n isToday: isTodayDate,\n isWeekend: isWeekendDay && !isTodayDate,\n isOutsideMonth: !isCurrentMonth,\n isSelectable: selectable,\n }),\n day.getDay() === (weekStartsOn === 0 ? 6 : 0) && \"border-r-0\"\n )}\n aria-current={isTodayDate ? \"date\" : undefined}\n role=\"gridcell\"\n tabIndex={selectable ? 0 : undefined}\n onClick={() => { handleDayClick(day); }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n handleDayClick(day)\n }\n }}\n >\n <div className=\"mb-1 flex justify-end\">\n <span\n className={cn(\n eventCalendarDayNumberVariants({\n isToday: isTodayDate,\n isOutsideMonth: !isCurrentMonth,\n })\n )}\n >\n {day.getDate()}\n </span>\n </div>\n <div className=\"flex flex-col gap-0.5\">\n {dayEvents.slice(0, 3).map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n {dayEvents.length > 3 && (\n <span className=\"px-1 text-xs text-muted-foreground\">\n +{dayEvents.length - 3} more\n </span>\n )}\n </div>\n </div>\n )\n })}\n </div>\n ))}\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarWeek Component\n// ============================================================================\n\nfunction EventCalendarWeek({\n date,\n events,\n weekStartsOn,\n selectable,\n minTime,\n maxTime,\n onEventClick,\n onSlotSelect,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarWeekProps) {\n const weekStart = startOfWeek(date, weekStartsOn)\n const { hours: startHour } = parseTime(minTime)\n const { hours: endHour } = parseTime(maxTime)\n const hours = Array.from({ length: endHour - startHour }, (_, i) => startHour + i)\n\n const weekDays: Date[] = Array.from({ length: 7 }, (_, i) =>\n addDays(weekStart, i)\n )\n\n const handleSlotClick = (day: Date, hour: number) => {\n if (!selectable || !onSlotSelect) return\n const start = new Date(day)\n start.setHours(hour, 0, 0, 0)\n const end = new Date(day)\n end.setHours(hour + 1, 0, 0, 0)\n onSlotSelect({ start, end })\n }\n\n const getEventsForHour = (day: Date, hour: number): CalendarEvent[] => {\n const hourStart = new Date(day)\n hourStart.setHours(hour, 0, 0, 0)\n const hourEnd = new Date(day)\n hourEnd.setHours(hour + 1, 0, 0, 0)\n\n return events.filter((event) => {\n if (event.allDay) return false\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n return (\n isSameDay(eventStart, day) &&\n eventStart.getHours() <= hour &&\n eventEnd.getHours() > hour\n )\n })\n }\n\n const getAllDayEvents = (day: Date): CalendarEvent[] => {\n return events.filter((event) => {\n if (!event.allDay) return false\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n const dayStart = new Date(day)\n dayStart.setHours(0, 0, 0, 0)\n const dayEnd = new Date(day)\n dayEnd.setHours(23, 59, 59, 999)\n return eventStart <= dayEnd && eventEnd >= dayStart\n })\n }\n\n return (\n <div className=\"flex flex-1 flex-col overflow-hidden\" data-slot=\"calendar-week\">\n {/* Header with day names and dates */}\n <div className=\"grid grid-cols-[60px_repeat(7,1fr)] border-b border-border bg-muted/50\">\n <div className=\"border-r border-border\" />\n {weekDays.map((day, dayIndex) => (\n <div\n key={day.toISOString()}\n className={cn(\n \"flex flex-col items-center py-2 text-center\",\n dayIndex < 6 && \"border-r border-border\"\n )}\n >\n <span className=\"text-xs text-muted-foreground\">\n {formatDate(day, { weekday: \"short\" }, locale)}\n </span>\n <span\n className={cn(\n eventCalendarDayNumberVariants({ isToday: isToday(day) })\n )}\n >\n {day.getDate()}\n </span>\n </div>\n ))}\n </div>\n\n {/* All day events row */}\n <div className=\"grid grid-cols-[60px_repeat(7,1fr)] border-b border-border\">\n <div className=\"flex items-center justify-center border-r border-border text-xs text-muted-foreground\">\n All day\n </div>\n {weekDays.map((day, dayIndex) => {\n const allDayEvts = getAllDayEvents(day)\n return (\n <div\n key={day.toISOString()}\n className={cn(\n \"min-h-8 p-0.5\",\n dayIndex < 6 && \"border-r border-border\"\n )}\n >\n {allDayEvts.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n )\n })}\n </div>\n\n {/* Time grid */}\n <div className=\"flex-1 overflow-auto\">\n <div className=\"grid grid-cols-[60px_repeat(7,1fr)]\">\n {hours.map((hour) => (\n <React.Fragment key={hour}>\n <div className=\"flex h-12 items-start justify-end border-r border-b border-border pr-2 text-xs text-muted-foreground\">\n {formatTime(new Date(2000, 0, 1, hour, 0))}\n </div>\n {weekDays.map((day, dayIndex) => {\n const hourEvents = getEventsForHour(day, hour)\n const now = new Date()\n const isCurrentHour =\n isToday(day) &&\n now.getHours() === hour\n\n return (\n <div\n key={day.toISOString()}\n className={cn(\n eventCalendarTimeSlotVariants({\n isHour: true,\n isCurrentTime: isCurrentHour,\n isSelectable: selectable,\n }),\n \"h-12\",\n dayIndex < 6 && \"border-r\"\n )}\n aria-label={`${formatDate(day, { weekday: \"long\" })} at ${String(hour)}:00`}\n role=\"gridcell\"\n tabIndex={selectable ? 0 : undefined}\n onClick={() => { handleSlotClick(day, hour); }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n handleSlotClick(day, hour)\n }\n }}\n >\n {hourEvents.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n )\n })}\n </React.Fragment>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarDay Component\n// ============================================================================\n\nfunction EventCalendarDay({\n date,\n events,\n selectable,\n minTime,\n maxTime,\n onEventClick,\n onSlotSelect,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarDayProps) {\n const { hours: startHour } = parseTime(minTime)\n const { hours: endHour } = parseTime(maxTime)\n const hours = Array.from({ length: endHour - startHour }, (_, i) => startHour + i)\n\n const handleSlotClick = (hour: number) => {\n if (!selectable || !onSlotSelect) return\n const start = new Date(date)\n start.setHours(hour, 0, 0, 0)\n const end = new Date(date)\n end.setHours(hour + 1, 0, 0, 0)\n onSlotSelect({ start, end })\n }\n\n const getEventsForHour = (hour: number): CalendarEvent[] => {\n return events.filter((event) => {\n if (event.allDay) return false\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n return (\n isSameDay(eventStart, date) &&\n eventStart.getHours() <= hour &&\n eventEnd.getHours() > hour\n )\n })\n }\n\n const allDayEvents = events.filter((e) => e.allDay && isSameDay(new Date(e.start), date))\n\n return (\n <div className=\"flex flex-1 flex-col overflow-hidden\" data-slot=\"calendar-day\">\n {/* Day header */}\n <div className=\"border-b border-border bg-muted/50 p-3 text-center\">\n <span className=\"text-sm text-muted-foreground\">\n {formatDate(date, { weekday: \"long\" }, locale)}\n </span>\n <span\n className={cn(\n \"ml-2\",\n eventCalendarDayNumberVariants({ isToday: isToday(date) })\n )}\n >\n {date.getDate()}\n </span>\n </div>\n\n {/* All day events */}\n {allDayEvents.length > 0 && (\n <div className=\"border-b border-border p-2\">\n <div className=\"mb-1 text-xs text-muted-foreground\">All day</div>\n <div className=\"flex flex-wrap gap-1\">\n {allDayEvents.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n </div>\n )}\n\n {/* Time grid */}\n <div className=\"flex-1 overflow-auto\">\n <div className=\"grid grid-cols-[60px_1fr]\">\n {hours.map((hour) => {\n const hourEvents = getEventsForHour(hour)\n const now = new Date()\n const isCurrentHour = isToday(date) && now.getHours() === hour\n\n return (\n <React.Fragment key={hour}>\n <div className=\"flex h-16 items-start justify-end border-r border-b border-border pr-2 text-xs text-muted-foreground\">\n {formatTime(new Date(2000, 0, 1, hour, 0))}\n </div>\n <div\n className={cn(\n eventCalendarTimeSlotVariants({\n isHour: true,\n isCurrentTime: isCurrentHour,\n isSelectable: selectable,\n }),\n \"h-16 p-1\"\n )}\n aria-label={`${String(hour)}:00`}\n role=\"gridcell\"\n tabIndex={selectable ? 0 : undefined}\n onClick={() => { handleSlotClick(hour); }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n handleSlotClick(hour)\n }\n }}\n >\n {hourEvents.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n </React.Fragment>\n )\n })}\n </div>\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarAgenda Component\n// ============================================================================\n\nfunction EventCalendarAgenda({\n date,\n events,\n daysToShow = 30,\n onEventClick,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarAgendaProps) {\n const startDate = new Date(date)\n startDate.setHours(0, 0, 0, 0)\n const endDate = addDays(startDate, daysToShow)\n\n const filteredEvents = getEventsForDateRange(events, startDate, endDate).sort(\n (a, b) => new Date(a.start).getTime() - new Date(b.start).getTime()\n )\n\n // Group events by date\n const eventsByDate = filteredEvents.reduce<Record<string, CalendarEvent[]>>(\n (acc, event) => {\n const dateKey = new Date(event.start).toDateString()\n acc[dateKey] ??= []\n acc[dateKey].push(event)\n return acc\n },\n {}\n )\n\n if (Object.keys(eventsByDate).length === 0) {\n return (\n <div\n className=\"flex flex-1 items-center justify-center text-muted-foreground\"\n data-slot=\"calendar-agenda\"\n >\n No upcoming events\n </div>\n )\n }\n\n return (\n <div className=\"flex-1 overflow-auto p-4\" data-slot=\"calendar-agenda\">\n {Object.entries(eventsByDate).map(([dateKey, dayEvents]) => {\n const eventDate = new Date(dateKey)\n const isTodayDate = isToday(eventDate)\n\n return (\n <div key={dateKey} className=\"mb-6\">\n <div className=\"mb-2 flex items-center gap-2\">\n <span\n className={cn(\n eventCalendarDayNumberVariants({ isToday: isTodayDate })\n )}\n >\n {eventDate.getDate()}\n </span>\n <div>\n <div className=\"text-sm font-medium\">\n {formatDate(eventDate, { weekday: \"long\" }, locale)}\n </div>\n <div className=\"text-xs text-muted-foreground\">\n {formatDate(eventDate, { month: \"long\", year: \"numeric\" }, locale)}\n </div>\n </div>\n </div>\n\n <div className=\"space-y-2 border-l-2 border-border pl-4\">\n {dayEvents.map((event) => {\n if (renderEvent) {\n return (\n <div\n key={event.id}\n className={cn(\n eventCalendarAgendaItemVariants({\n isClickable: !!onEventClick,\n })\n )}\n role=\"button\"\n tabIndex={onEventClick ? 0 : undefined}\n onClick={() => onEventClick?.(event)}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n onEventClick?.(event)\n }\n }}\n >\n {renderEvent(event)}\n </div>\n )\n }\n\n const variant = getEventVariant(event.color)\n\n return (\n <div\n key={event.id}\n className={cn(\n eventCalendarAgendaItemVariants({\n isClickable: !!onEventClick,\n })\n )}\n role=\"button\"\n tabIndex={onEventClick ? 0 : undefined}\n onClick={() => onEventClick?.(event)}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n onEventClick?.(event)\n }\n }}\n >\n <div\n className={cn(\n \"mt-1 h-3 w-3 flex-shrink-0 rounded-full\",\n variant === \"blue\" && \"bg-blue-500\",\n variant === \"green\" && \"bg-green-500\",\n variant === \"red\" && \"bg-red-500\",\n variant === \"yellow\" && \"bg-yellow-500\",\n variant === \"purple\" && \"bg-purple-500\",\n variant === \"orange\" && \"bg-orange-500\",\n variant === \"pink\" && \"bg-pink-500\",\n variant === \"cyan\" && \"bg-cyan-500\",\n variant === \"default\" && \"bg-primary\"\n )}\n />\n <div className=\"min-w-0 flex-1\">\n <div className=\"font-medium\">{event.title}</div>\n <div className=\"flex items-center gap-3 text-sm text-muted-foreground\">\n <span className=\"flex items-center gap-1\">\n <Clock className=\"h-3 w-3\" />\n {event.allDay\n ? \"All day\"\n : `${formatTime(new Date(event.start))} - ${formatTime(new Date(event.end))}`}\n </span>\n {event.location && (\n <span className=\"flex items-center gap-1\">\n <MapPin className=\"h-3 w-3\" />\n {event.location}\n </span>\n )}\n </div>\n {event.description && (\n <div className=\"mt-1 text-sm text-muted-foreground line-clamp-2\">\n {event.description}\n </div>\n )}\n </div>\n </div>\n )\n })}\n </div>\n </div>\n )\n })}\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendar Main Component\n// ============================================================================\n\nfunction EventCalendar({\n events = [],\n view: controlledView,\n date: controlledDate,\n onDateChange,\n onViewChange,\n onEventClick,\n onEventCreate,\n onEventUpdate: _onEventUpdate,\n onEventDelete: _onEventDelete,\n editable: _editable = true,\n selectable = true,\n weekStartsOn = 0,\n minTime = \"00:00\",\n maxTime = \"24:00\",\n locale = \"en-US\",\n renderEvent,\n loading = false,\n className,\n ...props\n}: EventCalendarProps) {\n // Internal state for uncontrolled mode\n const [internalDate, setInternalDate] = React.useState(() => new Date())\n const [internalView, setInternalView] = React.useState<EventCalendarView>(\"month\")\n\n // Use controlled values if provided\n const currentDate = controlledDate ?? internalDate\n const currentView = controlledView ?? internalView\n\n const handleDateChange = (newDate: Date) => {\n if (onDateChange) {\n onDateChange(newDate)\n } else {\n setInternalDate(newDate)\n }\n }\n\n const handleViewChange = (newView: EventCalendarView) => {\n if (onViewChange) {\n onViewChange(newView)\n } else {\n setInternalView(newView)\n }\n }\n\n const handlePrevious = () => {\n switch (currentView) {\n case \"month\":\n handleDateChange(addMonths(currentDate, -1))\n break\n case \"week\":\n handleDateChange(addWeeks(currentDate, -1))\n break\n case \"day\":\n handleDateChange(addDays(currentDate, -1))\n break\n case \"agenda\":\n handleDateChange(addMonths(currentDate, -1))\n break\n }\n }\n\n const handleNext = () => {\n switch (currentView) {\n case \"month\":\n handleDateChange(addMonths(currentDate, 1))\n break\n case \"week\":\n handleDateChange(addWeeks(currentDate, 1))\n break\n case \"day\":\n handleDateChange(addDays(currentDate, 1))\n break\n case \"agenda\":\n handleDateChange(addMonths(currentDate, 1))\n break\n }\n }\n\n const handleToday = () => {\n handleDateChange(new Date())\n }\n\n const handleSlotSelect = (slot: TimeSlot) => {\n onEventCreate?.(slot)\n }\n\n const handleDayClick = (day: Date) => {\n handleDateChange(day)\n if (currentView === \"month\") {\n handleViewChange(\"day\")\n }\n }\n\n return (\n <div\n className={cn(eventCalendarVariants(), className)}\n data-loading={loading || undefined}\n data-slot=\"event-calendar\"\n {...props}\n >\n <EventCalendarHeader\n date={currentDate}\n locale={locale}\n view={currentView}\n onNext={handleNext}\n onPrevious={handlePrevious}\n onToday={handleToday}\n onViewChange={handleViewChange}\n />\n\n {loading ? (\n <div className=\"flex flex-1 items-center justify-center\">\n <div className=\"h-8 w-8 animate-spin rounded-full border-4 border-primary border-t-transparent\" />\n </div>\n ) : (\n <>\n {currentView === \"month\" && (\n <EventCalendarMonth\n date={currentDate}\n events={events}\n locale={locale}\n renderEvent={renderEvent}\n selectable={selectable}\n weekStartsOn={weekStartsOn}\n onDayClick={handleDayClick}\n onEventClick={onEventClick}\n onSlotSelect={handleSlotSelect}\n />\n )}\n {currentView === \"week\" && (\n <EventCalendarWeek\n date={currentDate}\n events={events}\n locale={locale}\n maxTime={maxTime}\n minTime={minTime}\n renderEvent={renderEvent}\n selectable={selectable}\n weekStartsOn={weekStartsOn}\n onEventClick={onEventClick}\n onSlotSelect={handleSlotSelect}\n />\n )}\n {currentView === \"day\" && (\n <EventCalendarDay\n date={currentDate}\n events={events}\n locale={locale}\n maxTime={maxTime}\n minTime={minTime}\n renderEvent={renderEvent}\n selectable={selectable}\n onEventClick={onEventClick}\n onSlotSelect={handleSlotSelect}\n />\n )}\n {currentView === \"agenda\" && (\n <EventCalendarAgenda\n date={currentDate}\n events={events}\n locale={locale}\n renderEvent={renderEvent}\n onEventClick={onEventClick}\n />\n )}\n </>\n )}\n </div>\n )\n}\n\nexport {\n EventCalendar,\n EventCalendarAgenda,\n EventCalendarDay,\n EventCalendarEvent,\n EventCalendarHeader,\n EventCalendarMonth,\n EventCalendarWeek,\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/advanced/EventCalendar/EventCalendar.variants.ts","../src/components/advanced/EventCalendar/EventCalendar.tsx"],"names":["Fragment"],"mappings":"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","file":"chunk-P4WMDGAQ.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * EventCalendar container variants\n */\nexport const eventCalendarVariants = cva(\n \"flex flex-col bg-background rounded-lg border border-border overflow-hidden\",\n {\n variants: {\n size: {\n sm: \"min-h-96\",\n md: \"min-h-[var(--event-calendar-root-min-height-md)]\",\n lg: \"min-h-[var(--event-calendar-root-min-height-lg)]\",\n full: \"h-full min-h-[var(--event-calendar-root-min-height-full)]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * Calendar header variants\n */\nexport const eventCalendarHeaderVariants = cva(\n \"flex items-center justify-between p-3 border-b border-border bg-muted/30\",\n {\n variants: {\n compact: {\n true: \"p-2\",\n false: \"p-3\",\n },\n },\n defaultVariants: {\n compact: false,\n },\n }\n)\n\n/**\n * Calendar grid cell variants\n */\nexport const eventCalendarCellVariants = cva(\n \"relative min-h-20 border-r border-b border-border p-1 transition-colors\",\n {\n variants: {\n isToday: {\n true: \"bg-primary/5\",\n false: \"\",\n },\n isWeekend: {\n true: \"bg-muted/30\",\n false: \"\",\n },\n isOutsideMonth: {\n true: \"bg-muted/50 text-muted-foreground\",\n false: \"\",\n },\n isSelected: {\n true: \"ring-2 ring-primary ring-inset\",\n false: \"\",\n },\n isSelectable: {\n true: \"cursor-pointer hover:bg-accent/50\",\n false: \"\",\n },\n },\n defaultVariants: {\n isToday: false,\n isWeekend: false,\n isOutsideMonth: false,\n isSelected: false,\n isSelectable: true,\n },\n }\n)\n\n/**\n * Calendar event chip variants\n * Uses semantic chart colors for event categorization\n */\nexport const eventCalendarEventVariants = cva(\n \"group relative rounded px-1.5 py-0.5 text-xs font-medium truncate cursor-pointer transition-all\",\n {\n variants: {\n variant: {\n default: \"bg-primary/10 text-primary hover:bg-primary/20\",\n blue: \"bg-[color:var(--chart-3)]/10 text-[color:var(--chart-3)] hover:bg-[color:var(--chart-3)]/20\",\n green: \"bg-[color:var(--chart-2)]/10 text-[color:var(--chart-2)] hover:bg-[color:var(--chart-2)]/20\",\n red: \"bg-destructive/10 text-destructive hover:bg-destructive/20\",\n yellow: \"bg-[color:var(--chart-4)]/10 text-[color:var(--chart-4)] hover:bg-[color:var(--chart-4)]/20\",\n purple: \"bg-[color:var(--chart-1)]/10 text-[color:var(--chart-1)] hover:bg-[color:var(--chart-1)]/20\",\n orange: \"bg-[color:var(--chart-5)]/10 text-[color:var(--chart-5)] hover:bg-[color:var(--chart-5)]/20\",\n pink: \"bg-[color:var(--chart-1)]/10 text-[color:var(--chart-1)] hover:bg-[color:var(--chart-1)]/20\",\n cyan: \"bg-[color:var(--chart-2)]/10 text-[color:var(--chart-2)] hover:bg-[color:var(--chart-2)]/20\",\n },\n isAllDay: {\n true: \"font-semibold\",\n false: \"\",\n },\n isDragging: {\n true: \"opacity-50 ring-2 ring-primary\",\n false: \"\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n isAllDay: false,\n isDragging: false,\n },\n }\n)\n\n/**\n * Time slot variants for week/day views\n */\nexport const eventCalendarTimeSlotVariants = cva(\n \"relative border-b border-border transition-colors\",\n {\n variants: {\n isHour: {\n true: \"border-border\",\n false: \"border-border/50\",\n },\n isCurrentTime: {\n true: \"before:absolute before:left-0 before:right-0 before:h-0.5 before:bg-destructive before:z-10\",\n false: \"\",\n },\n isSelectable: {\n true: \"cursor-pointer hover:bg-accent/30\",\n false: \"\",\n },\n },\n defaultVariants: {\n isHour: false,\n isCurrentTime: false,\n isSelectable: true,\n },\n }\n)\n\n/**\n * View toggle button variants\n */\nexport const eventCalendarViewButtonVariants = cva(\n \"px-3 py-1.5 text-sm font-medium rounded-md transition-colors\",\n {\n variants: {\n isActive: {\n true: \"bg-primary text-primary-foreground\",\n false: \"text-muted-foreground hover:text-foreground hover:bg-muted\",\n },\n },\n defaultVariants: {\n isActive: false,\n },\n }\n)\n\n/**\n * Day number variants\n */\nexport const eventCalendarDayNumberVariants = cva(\n \"inline-flex items-center justify-center w-7 h-7 text-sm rounded-full transition-colors\",\n {\n variants: {\n isToday: {\n true: \"bg-primary text-primary-foreground font-semibold\",\n false: \"text-foreground\",\n },\n isOutsideMonth: {\n true: \"text-muted-foreground\",\n false: \"\",\n },\n },\n defaultVariants: {\n isToday: false,\n isOutsideMonth: false,\n },\n }\n)\n\n/**\n * Agenda item variants\n */\nexport const eventCalendarAgendaItemVariants = cva(\n \"flex items-start gap-3 p-3 rounded-lg transition-colors\",\n {\n variants: {\n isClickable: {\n true: \"cursor-pointer hover:bg-muted/50\",\n false: \"\",\n },\n },\n defaultVariants: {\n isClickable: true,\n },\n }\n)\n\n/**\n * Map color string to variant\n */\nexport function getEventVariant(\n color?: string\n): \"blue\" | \"cyan\" | \"default\" | \"green\" | \"orange\" | \"pink\" | \"purple\" | \"red\" | \"yellow\" {\n if (!color) return \"default\"\n\n const colorMap: Record<string, \"blue\" | \"cyan\" | \"green\" | \"orange\" | \"pink\" | \"purple\" | \"red\" | \"yellow\"> = {\n blue: \"blue\",\n green: \"green\",\n red: \"red\",\n yellow: \"yellow\",\n purple: \"purple\",\n orange: \"orange\",\n pink: \"pink\",\n cyan: \"cyan\",\n }\n\n return colorMap[color.toLowerCase()] ?? \"default\"\n}\n","import type {\n CalendarEvent,\n EventCalendarAgendaProps,\n EventCalendarDayProps,\n EventCalendarEventProps,\n EventCalendarHeaderProps,\n EventCalendarMonthProps,\n EventCalendarProps,\n EventCalendarView,\n EventCalendarWeekProps,\n TimeSlot,\n} from \"./EventCalendar.types\"\n\nimport { ChevronLeft, ChevronRight, Clock, MapPin } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Button } from \"../../primitives/Button\"\nimport {\n eventCalendarAgendaItemVariants,\n eventCalendarCellVariants,\n eventCalendarDayNumberVariants,\n eventCalendarEventVariants,\n eventCalendarHeaderVariants,\n eventCalendarTimeSlotVariants,\n eventCalendarVariants,\n eventCalendarViewButtonVariants,\n getEventVariant,\n} from \"./EventCalendar.variants\"\n\n// ============================================================================\n// Date Utilities\n// ============================================================================\n\nfunction startOfMonth(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth(), 1)\n}\n\nfunction endOfMonth(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth() + 1, 0)\n}\n\nfunction startOfWeek(date: Date, weekStartsOn: 0 | 1 = 0): Date {\n const d = new Date(date)\n const day = d.getDay()\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn\n d.setDate(d.getDate() - diff)\n d.setHours(0, 0, 0, 0)\n return d\n}\n\nfunction endOfWeek(date: Date, weekStartsOn: 0 | 1 = 0): Date {\n const d = startOfWeek(date, weekStartsOn)\n d.setDate(d.getDate() + 6)\n d.setHours(23, 59, 59, 999)\n return d\n}\n\nfunction addDays(date: Date, days: number): Date {\n const d = new Date(date)\n d.setDate(d.getDate() + days)\n return d\n}\n\nfunction addMonths(date: Date, months: number): Date {\n const d = new Date(date)\n d.setMonth(d.getMonth() + months)\n return d\n}\n\nfunction addWeeks(date: Date, weeks: number): Date {\n return addDays(date, weeks * 7)\n}\n\nfunction isSameDay(a: Date, b: Date): boolean {\n return (\n a.getFullYear() === b.getFullYear() &&\n a.getMonth() === b.getMonth() &&\n a.getDate() === b.getDate()\n )\n}\n\nfunction isSameMonth(a: Date, b: Date): boolean {\n return (\n a.getFullYear() === b.getFullYear() && a.getMonth() === b.getMonth()\n )\n}\n\nfunction isToday(date: Date): boolean {\n return isSameDay(date, new Date())\n}\n\nfunction isWeekend(date: Date): boolean {\n const day = date.getDay()\n return day === 0 || day === 6\n}\n\nfunction formatDate(\n date: Date,\n options: Intl.DateTimeFormatOptions,\n locale = \"en-US\"\n): string {\n return date.toLocaleDateString(locale, options)\n}\n\nfunction formatTime(date: Date, locale = \"en-US\"): string {\n return date.toLocaleTimeString(locale, { hour: \"numeric\", minute: \"2-digit\" })\n}\n\nfunction parseTime(timeStr: string): { hours: number; minutes: number } {\n const [hours, minutes] = timeStr.split(\":\").map(Number)\n return { hours: hours ?? 0, minutes: minutes ?? 0 }\n}\n\nfunction getEventsForDay(events: CalendarEvent[], date: Date): CalendarEvent[] {\n return events.filter((event) => {\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n const dayStart = new Date(date)\n dayStart.setHours(0, 0, 0, 0)\n const dayEnd = new Date(date)\n dayEnd.setHours(23, 59, 59, 999)\n\n return eventStart <= dayEnd && eventEnd >= dayStart\n })\n}\n\nfunction getEventsForDateRange(\n events: CalendarEvent[],\n start: Date,\n end: Date\n): CalendarEvent[] {\n return events.filter((event) => {\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n return eventStart <= end && eventEnd >= start\n })\n}\n\n// ============================================================================\n// EventCalendarEvent Component\n// ============================================================================\n\nfunction EventCalendarEvent({\n event,\n isDragging = false,\n onClick,\n renderEvent,\n}: EventCalendarEventProps) {\n if (renderEvent) {\n return <>{renderEvent(event)}</>\n }\n\n const variant = getEventVariant(event.color)\n\n return (\n <button\n className={cn(\n eventCalendarEventVariants({\n variant,\n isAllDay: event.allDay,\n isDragging,\n })\n )}\n aria-label={`Event: ${event.title}`}\n data-slot=\"event\"\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation()\n onClick?.(event)\n }}\n >\n {!event.allDay && (\n <span className=\"mr-1 text-xs opacity-70\">\n {formatTime(new Date(event.start))}\n </span>\n )}\n <span>{event.title}</span>\n </button>\n )\n}\n\n// ============================================================================\n// EventCalendarHeader Component\n// ============================================================================\n\nfunction EventCalendarHeader({\n date,\n view,\n onPrevious,\n onNext,\n onToday,\n onViewChange,\n locale = \"en-US\",\n}: EventCalendarHeaderProps) {\n const getHeaderTitle = (): string => {\n switch (view) {\n case \"month\":\n return formatDate(date, { month: \"long\", year: \"numeric\" }, locale)\n case \"week\": {\n const weekStart = startOfWeek(date, 0)\n const weekEnd = endOfWeek(date, 0)\n if (weekStart.getMonth() === weekEnd.getMonth()) {\n return `${formatDate(weekStart, { month: \"long\", day: \"numeric\" }, locale)} - ${String(weekEnd.getDate())}, ${String(weekEnd.getFullYear())}`\n }\n return `${formatDate(weekStart, { month: \"short\", day: \"numeric\" }, locale)} - ${formatDate(weekEnd, { month: \"short\", day: \"numeric\", year: \"numeric\" }, locale)}`\n }\n case \"day\":\n return formatDate(\n date,\n { weekday: \"long\", month: \"long\", day: \"numeric\", year: \"numeric\" },\n locale\n )\n case \"agenda\":\n return formatDate(date, { month: \"long\", year: \"numeric\" }, locale)\n default:\n return \"\"\n }\n }\n\n const views: EventCalendarView[] = [\"month\", \"week\", \"day\", \"agenda\"]\n\n return (\n <div\n className={cn(eventCalendarHeaderVariants())}\n data-slot=\"calendar-header\"\n >\n <div className=\"flex items-center gap-2\">\n <Button\n aria-label=\"Previous\"\n size=\"sm\"\n variant=\"outline\"\n onClick={onPrevious}\n >\n <ChevronLeft className=\"h-4 w-4\" />\n </Button>\n <Button\n aria-label=\"Next\"\n size=\"sm\"\n variant=\"outline\"\n onClick={onNext}\n >\n <ChevronRight className=\"h-4 w-4\" />\n </Button>\n <Button size=\"sm\" variant=\"outline\" onClick={onToday}>\n Today\n </Button>\n <h2 className=\"ml-2 text-lg font-semibold\">{getHeaderTitle()}</h2>\n </div>\n\n <div className=\"flex items-center gap-1 rounded-lg bg-muted p-1\">\n {views.map((v) => (\n <button\n key={v}\n aria-pressed={view === v}\n className={cn(eventCalendarViewButtonVariants({ isActive: view === v }))}\n type=\"button\"\n onClick={() => { onViewChange(v); }}\n >\n {v.charAt(0).toUpperCase() + v.slice(1)}\n </button>\n ))}\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarMonth Component\n// ============================================================================\n\nfunction EventCalendarMonth({\n date,\n events,\n weekStartsOn,\n selectable,\n onDayClick,\n onEventClick,\n onSlotSelect,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarMonthProps) {\n const monthStart = startOfMonth(date)\n const monthEnd = endOfMonth(date)\n const calendarStart = startOfWeek(monthStart, weekStartsOn)\n const calendarEnd = endOfWeek(monthEnd, weekStartsOn)\n\n // Generate week days header\n const weekDays: string[] = []\n let dayPointer = calendarStart\n for (let i = 0; i < 7; i++) {\n weekDays.push(formatDate(dayPointer, { weekday: \"short\" }, locale))\n dayPointer = addDays(dayPointer, 1)\n }\n\n // Generate calendar grid\n const weeks: Date[][] = []\n let currentDay = calendarStart\n while (currentDay <= calendarEnd) {\n const week: Date[] = []\n for (let i = 0; i < 7; i++) {\n week.push(new Date(currentDay))\n currentDay = addDays(currentDay, 1)\n }\n weeks.push(week)\n }\n\n const handleDayClick = (day: Date) => {\n onDayClick?.(day)\n if (selectable && onSlotSelect) {\n const start = new Date(day)\n start.setHours(0, 0, 0, 0)\n const end = new Date(day)\n end.setHours(23, 59, 59, 999)\n onSlotSelect({ start, end, allDay: true })\n }\n }\n\n return (\n <div className=\"flex flex-1 flex-col\" data-slot=\"calendar-month\" role=\"grid\">\n {/* Week day headers */}\n <div\n className=\"grid grid-cols-7 border-b border-border bg-muted/50\"\n role=\"row\"\n >\n {weekDays.map((day) => (\n <div\n key={day}\n className=\"py-2 text-center text-xs font-medium text-muted-foreground\"\n role=\"columnheader\"\n >\n {day}\n </div>\n ))}\n </div>\n\n {/* Calendar grid */}\n <div className=\"flex flex-1 flex-col\">\n {weeks.map((week) => (\n <div\n key={week[0]?.toISOString()}\n className=\"grid flex-1 grid-cols-7\"\n role=\"row\"\n >\n {week.map((day) => {\n const dayEvents = getEventsForDay(events, day)\n const isCurrentMonth = isSameMonth(day, date)\n const isTodayDate = isToday(day)\n const isWeekendDay = isWeekend(day)\n\n return (\n <div\n key={day.toISOString()}\n aria-label={formatDate(day, {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n })}\n className={cn(\n eventCalendarCellVariants({\n isToday: isTodayDate,\n isWeekend: isWeekendDay && !isTodayDate,\n isOutsideMonth: !isCurrentMonth,\n isSelectable: selectable,\n }),\n day.getDay() === (weekStartsOn === 0 ? 6 : 0) && \"border-r-0\"\n )}\n aria-current={isTodayDate ? \"date\" : undefined}\n role=\"gridcell\"\n tabIndex={selectable ? 0 : undefined}\n onClick={() => { handleDayClick(day); }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n handleDayClick(day)\n }\n }}\n >\n <div className=\"mb-1 flex justify-end\">\n <span\n className={cn(\n eventCalendarDayNumberVariants({\n isToday: isTodayDate,\n isOutsideMonth: !isCurrentMonth,\n })\n )}\n >\n {day.getDate()}\n </span>\n </div>\n <div className=\"flex flex-col gap-0.5\">\n {dayEvents.slice(0, 3).map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n {dayEvents.length > 3 && (\n <span className=\"px-1 text-xs text-muted-foreground\">\n +{dayEvents.length - 3} more\n </span>\n )}\n </div>\n </div>\n )\n })}\n </div>\n ))}\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarWeek Component\n// ============================================================================\n\nfunction EventCalendarWeek({\n date,\n events,\n weekStartsOn,\n selectable,\n minTime,\n maxTime,\n onEventClick,\n onSlotSelect,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarWeekProps) {\n const weekStart = startOfWeek(date, weekStartsOn)\n const { hours: startHour } = parseTime(minTime)\n const { hours: endHour } = parseTime(maxTime)\n const hours = Array.from({ length: endHour - startHour }, (_, i) => startHour + i)\n\n const weekDays: Date[] = Array.from({ length: 7 }, (_, i) =>\n addDays(weekStart, i)\n )\n\n const handleSlotClick = (day: Date, hour: number) => {\n if (!selectable || !onSlotSelect) return\n const start = new Date(day)\n start.setHours(hour, 0, 0, 0)\n const end = new Date(day)\n end.setHours(hour + 1, 0, 0, 0)\n onSlotSelect({ start, end })\n }\n\n const getEventsForHour = (day: Date, hour: number): CalendarEvent[] => {\n const hourStart = new Date(day)\n hourStart.setHours(hour, 0, 0, 0)\n const hourEnd = new Date(day)\n hourEnd.setHours(hour + 1, 0, 0, 0)\n\n return events.filter((event) => {\n if (event.allDay) return false\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n return (\n isSameDay(eventStart, day) &&\n eventStart.getHours() <= hour &&\n eventEnd.getHours() > hour\n )\n })\n }\n\n const getAllDayEvents = (day: Date): CalendarEvent[] => {\n return events.filter((event) => {\n if (!event.allDay) return false\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n const dayStart = new Date(day)\n dayStart.setHours(0, 0, 0, 0)\n const dayEnd = new Date(day)\n dayEnd.setHours(23, 59, 59, 999)\n return eventStart <= dayEnd && eventEnd >= dayStart\n })\n }\n\n return (\n <div className=\"flex flex-1 flex-col overflow-hidden\" data-slot=\"calendar-week\">\n {/* Header with day names and dates */}\n <div className=\"grid grid-cols-[60px_repeat(7,1fr)] border-b border-border bg-muted/50\">\n <div className=\"border-r border-border\" />\n {weekDays.map((day, dayIndex) => (\n <div\n key={day.toISOString()}\n className={cn(\n \"flex flex-col items-center py-2 text-center\",\n dayIndex < 6 && \"border-r border-border\"\n )}\n >\n <span className=\"text-xs text-muted-foreground\">\n {formatDate(day, { weekday: \"short\" }, locale)}\n </span>\n <span\n className={cn(\n eventCalendarDayNumberVariants({ isToday: isToday(day) })\n )}\n >\n {day.getDate()}\n </span>\n </div>\n ))}\n </div>\n\n {/* All day events row */}\n <div className=\"grid grid-cols-[60px_repeat(7,1fr)] border-b border-border\">\n <div className=\"flex items-center justify-center border-r border-border text-xs text-muted-foreground\">\n All day\n </div>\n {weekDays.map((day, dayIndex) => {\n const allDayEvts = getAllDayEvents(day)\n return (\n <div\n key={day.toISOString()}\n className={cn(\n \"min-h-8 p-0.5\",\n dayIndex < 6 && \"border-r border-border\"\n )}\n >\n {allDayEvts.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n )\n })}\n </div>\n\n {/* Time grid */}\n <div className=\"flex-1 overflow-auto\">\n <div className=\"grid grid-cols-[60px_repeat(7,1fr)]\">\n {hours.map((hour) => (\n <React.Fragment key={hour}>\n <div className=\"flex h-12 items-start justify-end border-r border-b border-border pr-2 text-xs text-muted-foreground\">\n {formatTime(new Date(2000, 0, 1, hour, 0))}\n </div>\n {weekDays.map((day, dayIndex) => {\n const hourEvents = getEventsForHour(day, hour)\n const now = new Date()\n const isCurrentHour =\n isToday(day) &&\n now.getHours() === hour\n\n return (\n <div\n key={day.toISOString()}\n className={cn(\n eventCalendarTimeSlotVariants({\n isHour: true,\n isCurrentTime: isCurrentHour,\n isSelectable: selectable,\n }),\n \"h-12\",\n dayIndex < 6 && \"border-r\"\n )}\n aria-label={`${formatDate(day, { weekday: \"long\" })} at ${String(hour)}:00`}\n role=\"gridcell\"\n tabIndex={selectable ? 0 : undefined}\n onClick={() => { handleSlotClick(day, hour); }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n handleSlotClick(day, hour)\n }\n }}\n >\n {hourEvents.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n )\n })}\n </React.Fragment>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarDay Component\n// ============================================================================\n\nfunction EventCalendarDay({\n date,\n events,\n selectable,\n minTime,\n maxTime,\n onEventClick,\n onSlotSelect,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarDayProps) {\n const { hours: startHour } = parseTime(minTime)\n const { hours: endHour } = parseTime(maxTime)\n const hours = Array.from({ length: endHour - startHour }, (_, i) => startHour + i)\n\n const handleSlotClick = (hour: number) => {\n if (!selectable || !onSlotSelect) return\n const start = new Date(date)\n start.setHours(hour, 0, 0, 0)\n const end = new Date(date)\n end.setHours(hour + 1, 0, 0, 0)\n onSlotSelect({ start, end })\n }\n\n const getEventsForHour = (hour: number): CalendarEvent[] => {\n return events.filter((event) => {\n if (event.allDay) return false\n const eventStart = new Date(event.start)\n const eventEnd = new Date(event.end)\n return (\n isSameDay(eventStart, date) &&\n eventStart.getHours() <= hour &&\n eventEnd.getHours() > hour\n )\n })\n }\n\n const allDayEvents = events.filter((e) => e.allDay && isSameDay(new Date(e.start), date))\n\n return (\n <div className=\"flex flex-1 flex-col overflow-hidden\" data-slot=\"calendar-day\">\n {/* Day header */}\n <div className=\"border-b border-border bg-muted/50 p-3 text-center\">\n <span className=\"text-sm text-muted-foreground\">\n {formatDate(date, { weekday: \"long\" }, locale)}\n </span>\n <span\n className={cn(\n \"ml-2\",\n eventCalendarDayNumberVariants({ isToday: isToday(date) })\n )}\n >\n {date.getDate()}\n </span>\n </div>\n\n {/* All day events */}\n {allDayEvents.length > 0 && (\n <div className=\"border-b border-border p-2\">\n <div className=\"mb-1 text-xs text-muted-foreground\">All day</div>\n <div className=\"flex flex-wrap gap-1\">\n {allDayEvents.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n </div>\n )}\n\n {/* Time grid */}\n <div className=\"flex-1 overflow-auto\">\n <div className=\"grid grid-cols-[60px_1fr]\">\n {hours.map((hour) => {\n const hourEvents = getEventsForHour(hour)\n const now = new Date()\n const isCurrentHour = isToday(date) && now.getHours() === hour\n\n return (\n <React.Fragment key={hour}>\n <div className=\"flex h-16 items-start justify-end border-r border-b border-border pr-2 text-xs text-muted-foreground\">\n {formatTime(new Date(2000, 0, 1, hour, 0))}\n </div>\n <div\n className={cn(\n eventCalendarTimeSlotVariants({\n isHour: true,\n isCurrentTime: isCurrentHour,\n isSelectable: selectable,\n }),\n \"h-16 p-1\"\n )}\n aria-label={`${String(hour)}:00`}\n role=\"gridcell\"\n tabIndex={selectable ? 0 : undefined}\n onClick={() => { handleSlotClick(hour); }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n handleSlotClick(hour)\n }\n }}\n >\n {hourEvents.map((event) => (\n <EventCalendarEvent\n key={event.id}\n event={event}\n renderEvent={renderEvent}\n onClick={onEventClick}\n />\n ))}\n </div>\n </React.Fragment>\n )\n })}\n </div>\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendarAgenda Component\n// ============================================================================\n\nfunction EventCalendarAgenda({\n date,\n events,\n daysToShow = 30,\n onEventClick,\n renderEvent,\n locale = \"en-US\",\n}: EventCalendarAgendaProps) {\n const startDate = new Date(date)\n startDate.setHours(0, 0, 0, 0)\n const endDate = addDays(startDate, daysToShow)\n\n const filteredEvents = getEventsForDateRange(events, startDate, endDate).sort(\n (a, b) => new Date(a.start).getTime() - new Date(b.start).getTime()\n )\n\n // Group events by date\n const eventsByDate = filteredEvents.reduce<Record<string, CalendarEvent[]>>(\n (acc, event) => {\n const dateKey = new Date(event.start).toDateString()\n acc[dateKey] ??= []\n acc[dateKey].push(event)\n return acc\n },\n {}\n )\n\n if (Object.keys(eventsByDate).length === 0) {\n return (\n <div\n className=\"flex flex-1 items-center justify-center text-muted-foreground\"\n data-slot=\"calendar-agenda\"\n >\n No upcoming events\n </div>\n )\n }\n\n return (\n <div className=\"flex-1 overflow-auto p-4\" data-slot=\"calendar-agenda\">\n {Object.entries(eventsByDate).map(([dateKey, dayEvents]) => {\n const eventDate = new Date(dateKey)\n const isTodayDate = isToday(eventDate)\n\n return (\n <div key={dateKey} className=\"mb-6\">\n <div className=\"mb-2 flex items-center gap-2\">\n <span\n className={cn(\n eventCalendarDayNumberVariants({ isToday: isTodayDate })\n )}\n >\n {eventDate.getDate()}\n </span>\n <div>\n <div className=\"text-sm font-medium\">\n {formatDate(eventDate, { weekday: \"long\" }, locale)}\n </div>\n <div className=\"text-xs text-muted-foreground\">\n {formatDate(eventDate, { month: \"long\", year: \"numeric\" }, locale)}\n </div>\n </div>\n </div>\n\n <div className=\"space-y-2 border-l-2 border-border pl-4\">\n {dayEvents.map((event) => {\n if (renderEvent) {\n return (\n <div\n key={event.id}\n className={cn(\n eventCalendarAgendaItemVariants({\n isClickable: !!onEventClick,\n })\n )}\n role=\"button\"\n tabIndex={onEventClick ? 0 : undefined}\n onClick={() => onEventClick?.(event)}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n onEventClick?.(event)\n }\n }}\n >\n {renderEvent(event)}\n </div>\n )\n }\n\n const variant = getEventVariant(event.color)\n\n return (\n <div\n key={event.id}\n className={cn(\n eventCalendarAgendaItemVariants({\n isClickable: !!onEventClick,\n })\n )}\n role=\"button\"\n tabIndex={onEventClick ? 0 : undefined}\n onClick={() => onEventClick?.(event)}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n onEventClick?.(event)\n }\n }}\n >\n <div\n className={cn(\n \"mt-1 h-3 w-3 flex-shrink-0 rounded-full\",\n variant === \"blue\" && \"bg-blue-500\",\n variant === \"green\" && \"bg-green-500\",\n variant === \"red\" && \"bg-red-500\",\n variant === \"yellow\" && \"bg-yellow-500\",\n variant === \"purple\" && \"bg-purple-500\",\n variant === \"orange\" && \"bg-orange-500\",\n variant === \"pink\" && \"bg-pink-500\",\n variant === \"cyan\" && \"bg-cyan-500\",\n variant === \"default\" && \"bg-primary\"\n )}\n />\n <div className=\"min-w-0 flex-1\">\n <div className=\"font-medium\">{event.title}</div>\n <div className=\"flex items-center gap-3 text-sm text-muted-foreground\">\n <span className=\"flex items-center gap-1\">\n <Clock className=\"h-3 w-3\" />\n {event.allDay\n ? \"All day\"\n : `${formatTime(new Date(event.start))} - ${formatTime(new Date(event.end))}`}\n </span>\n {event.location && (\n <span className=\"flex items-center gap-1\">\n <MapPin className=\"h-3 w-3\" />\n {event.location}\n </span>\n )}\n </div>\n {event.description && (\n <div className=\"mt-1 text-sm text-muted-foreground line-clamp-2\">\n {event.description}\n </div>\n )}\n </div>\n </div>\n )\n })}\n </div>\n </div>\n )\n })}\n </div>\n )\n}\n\n// ============================================================================\n// EventCalendar Main Component\n// ============================================================================\n\nfunction EventCalendar({\n events = [],\n view: controlledView,\n date: controlledDate,\n onDateChange,\n onViewChange,\n onEventClick,\n onEventCreate,\n onEventUpdate: _onEventUpdate,\n onEventDelete: _onEventDelete,\n editable: _editable = true,\n selectable = true,\n weekStartsOn = 0,\n minTime = \"00:00\",\n maxTime = \"24:00\",\n locale = \"en-US\",\n renderEvent,\n loading = false,\n className,\n ...props\n}: EventCalendarProps) {\n // Internal state for uncontrolled mode\n const [internalDate, setInternalDate] = React.useState(() => new Date())\n const [internalView, setInternalView] = React.useState<EventCalendarView>(\"month\")\n\n // Use controlled values if provided\n const currentDate = controlledDate ?? internalDate\n const currentView = controlledView ?? internalView\n\n const handleDateChange = (newDate: Date) => {\n if (onDateChange) {\n onDateChange(newDate)\n } else {\n setInternalDate(newDate)\n }\n }\n\n const handleViewChange = (newView: EventCalendarView) => {\n if (onViewChange) {\n onViewChange(newView)\n } else {\n setInternalView(newView)\n }\n }\n\n const handlePrevious = () => {\n switch (currentView) {\n case \"month\":\n handleDateChange(addMonths(currentDate, -1))\n break\n case \"week\":\n handleDateChange(addWeeks(currentDate, -1))\n break\n case \"day\":\n handleDateChange(addDays(currentDate, -1))\n break\n case \"agenda\":\n handleDateChange(addMonths(currentDate, -1))\n break\n }\n }\n\n const handleNext = () => {\n switch (currentView) {\n case \"month\":\n handleDateChange(addMonths(currentDate, 1))\n break\n case \"week\":\n handleDateChange(addWeeks(currentDate, 1))\n break\n case \"day\":\n handleDateChange(addDays(currentDate, 1))\n break\n case \"agenda\":\n handleDateChange(addMonths(currentDate, 1))\n break\n }\n }\n\n const handleToday = () => {\n handleDateChange(new Date())\n }\n\n const handleSlotSelect = (slot: TimeSlot) => {\n onEventCreate?.(slot)\n }\n\n const handleDayClick = (day: Date) => {\n handleDateChange(day)\n if (currentView === \"month\") {\n handleViewChange(\"day\")\n }\n }\n\n return (\n <div\n className={cn(eventCalendarVariants(), className)}\n data-loading={loading || undefined}\n data-slot=\"event-calendar\"\n {...props}\n >\n <EventCalendarHeader\n date={currentDate}\n locale={locale}\n view={currentView}\n onNext={handleNext}\n onPrevious={handlePrevious}\n onToday={handleToday}\n onViewChange={handleViewChange}\n />\n\n {loading ? (\n <div className=\"flex flex-1 items-center justify-center\">\n <div className=\"h-8 w-8 animate-spin rounded-full border-4 border-primary border-t-transparent\" />\n </div>\n ) : (\n <>\n {currentView === \"month\" && (\n <EventCalendarMonth\n date={currentDate}\n events={events}\n locale={locale}\n renderEvent={renderEvent}\n selectable={selectable}\n weekStartsOn={weekStartsOn}\n onDayClick={handleDayClick}\n onEventClick={onEventClick}\n onSlotSelect={handleSlotSelect}\n />\n )}\n {currentView === \"week\" && (\n <EventCalendarWeek\n date={currentDate}\n events={events}\n locale={locale}\n maxTime={maxTime}\n minTime={minTime}\n renderEvent={renderEvent}\n selectable={selectable}\n weekStartsOn={weekStartsOn}\n onEventClick={onEventClick}\n onSlotSelect={handleSlotSelect}\n />\n )}\n {currentView === \"day\" && (\n <EventCalendarDay\n date={currentDate}\n events={events}\n locale={locale}\n maxTime={maxTime}\n minTime={minTime}\n renderEvent={renderEvent}\n selectable={selectable}\n onEventClick={onEventClick}\n onSlotSelect={handleSlotSelect}\n />\n )}\n {currentView === \"agenda\" && (\n <EventCalendarAgenda\n date={currentDate}\n events={events}\n locale={locale}\n renderEvent={renderEvent}\n onEventClick={onEventClick}\n />\n )}\n </>\n )}\n </div>\n )\n}\n\nexport {\n EventCalendar,\n EventCalendarAgenda,\n EventCalendarDay,\n EventCalendarEvent,\n EventCalendarHeader,\n EventCalendarMonth,\n EventCalendarWeek,\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
2
2
|
import { cva } from 'class-variance-authority';
|
|
3
3
|
import { jsx } from 'react/jsx-runtime';
|
|
4
4
|
|
|
@@ -6,22 +6,22 @@ var navbarVariants = cva(
|
|
|
6
6
|
[
|
|
7
7
|
// Base styles
|
|
8
8
|
"flex w-full items-center",
|
|
9
|
-
"px-
|
|
9
|
+
"px-[var(--navbar-root-padding-x)] md:px-6",
|
|
10
10
|
// Transition
|
|
11
11
|
"transition-all"
|
|
12
12
|
],
|
|
13
13
|
{
|
|
14
14
|
variants: {
|
|
15
15
|
variant: {
|
|
16
|
-
default: "bg-background",
|
|
16
|
+
default: "bg-[color:var(--navbar-root-background)]",
|
|
17
17
|
transparent: "bg-transparent",
|
|
18
|
-
bordered: "bg-background border-b border-border",
|
|
18
|
+
bordered: "bg-[color:var(--navbar-root-background)] border-b border-[color:var(--navbar-root-border-color)]",
|
|
19
19
|
floating: "bg-background/95 backdrop-blur-sm shadow-sm mx-4 mt-4 rounded-lg border border-border"
|
|
20
20
|
},
|
|
21
21
|
size: {
|
|
22
22
|
sm: "h-12",
|
|
23
23
|
md: "h-14",
|
|
24
|
-
lg: "h-
|
|
24
|
+
lg: "h-[var(--navbar-root-height)]"
|
|
25
25
|
},
|
|
26
26
|
sticky: {
|
|
27
27
|
true: "sticky top-0 z-50",
|
|
@@ -57,7 +57,7 @@ var navbarBrandVariants = cva([
|
|
|
57
57
|
]);
|
|
58
58
|
var navbarContentVariants = cva(
|
|
59
59
|
[
|
|
60
|
-
"flex items-center gap-
|
|
60
|
+
"flex items-center gap-[var(--navbar-item-gap)] md:gap-6"
|
|
61
61
|
],
|
|
62
62
|
{
|
|
63
63
|
variants: {
|
|
@@ -314,5 +314,5 @@ function NavbarMenu({
|
|
|
314
314
|
}
|
|
315
315
|
|
|
316
316
|
export { Navbar, NavbarBrand, NavbarContent, NavbarItem, NavbarLink, NavbarMenu, NavbarMenuToggle, navbarBrandVariants, navbarContainerVariants, navbarContentVariants, navbarItemVariants, navbarLinkVariants, navbarMenuToggleVariants, navbarMenuVariants, navbarVariants };
|
|
317
|
-
//# sourceMappingURL=chunk-
|
|
318
|
-
//# sourceMappingURL=chunk-
|
|
317
|
+
//# sourceMappingURL=chunk-PBZI5XNV.js.map
|
|
318
|
+
//# sourceMappingURL=chunk-PBZI5XNV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/Navbar/Navbar.variants.ts","../src/components/navigation/Navbar/Navbar.tsx"],"names":[],"mappings":"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","file":"chunk-PBZI5XNV.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * Navbar root variant styles\n */\nexport const navbarVariants = cva(\n [\n // Base styles\n \"flex w-full items-center\",\n \"px-[var(--navbar-root-padding-x)] md:px-6\",\n // Transition\n \"transition-all\",\n ],\n {\n variants: {\n variant: {\n default: \"bg-[color:var(--navbar-root-background)]\",\n transparent: \"bg-transparent\",\n bordered: \"bg-[color:var(--navbar-root-background)] border-b border-[color:var(--navbar-root-border-color)]\",\n floating: \"bg-background/95 backdrop-blur-sm shadow-sm mx-4 mt-4 rounded-lg border border-border\",\n },\n size: {\n sm: \"h-12\",\n md: \"h-14\",\n lg: \"h-[var(--navbar-root-height)]\",\n },\n sticky: {\n true: \"sticky top-0 z-50\",\n false: \"\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n sticky: false,\n },\n }\n)\n\n/**\n * Navbar container variant styles (inner wrapper)\n */\nexport const navbarContainerVariants = cva(\n [\n \"flex w-full items-center justify-between gap-4\",\n ],\n {\n variants: {\n contained: {\n true: \"mx-auto max-w-7xl\",\n false: \"\",\n },\n },\n defaultVariants: {\n contained: false,\n },\n }\n)\n\n/**\n * NavbarBrand variant styles\n */\nexport const navbarBrandVariants = cva([\n \"flex shrink-0 items-center gap-2\",\n \"text-lg font-bold\",\n])\n\n/**\n * NavbarContent variant styles\n */\nexport const navbarContentVariants = cva(\n [\n \"flex items-center gap-[var(--navbar-item-gap)] md:gap-6\",\n ],\n {\n variants: {\n justify: {\n start: \"justify-start\",\n center: \"justify-center flex-1\",\n end: \"justify-end ml-auto\",\n },\n },\n defaultVariants: {\n justify: \"start\",\n },\n }\n)\n\n/**\n * NavbarItem variant styles\n */\nexport const navbarItemVariants = cva(\n [\n \"flex items-center\",\n ],\n {\n variants: {\n isActive: {\n true: \"\",\n false: \"\",\n },\n },\n defaultVariants: {\n isActive: false,\n },\n }\n)\n\n/**\n * NavbarLink variant styles\n */\nexport const navbarLinkVariants = cva(\n [\n \"text-sm font-medium transition-colors\",\n \"text-muted-foreground hover:text-foreground\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n \"rounded-sm\",\n ],\n {\n variants: {\n isActive: {\n true: \"text-foreground font-semibold\",\n false: \"\",\n },\n },\n defaultVariants: {\n isActive: false,\n },\n }\n)\n\n/**\n * NavbarMenuToggle variant styles\n */\nexport const navbarMenuToggleVariants = cva(\n [\n \"inline-flex items-center justify-center\",\n \"h-10 w-10 rounded-md\",\n \"text-muted-foreground hover:text-foreground hover:bg-accent\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\",\n \"transition-colors\",\n ],\n {\n variants: {\n isOpen: {\n true: \"bg-accent\",\n false: \"\",\n },\n },\n defaultVariants: {\n isOpen: false,\n },\n }\n)\n\n/**\n * NavbarMenu variant styles\n */\nexport const navbarMenuVariants = cva(\n [\n \"absolute left-0 right-0 top-full\",\n \"bg-background border-b border-border shadow-lg\",\n \"overflow-hidden transition-all duration-200\",\n ],\n {\n variants: {\n isOpen: {\n true: \"max-h-[80vh] opacity-100\",\n false: \"max-h-0 opacity-0 pointer-events-none\",\n },\n },\n defaultVariants: {\n isOpen: false,\n },\n }\n)\n","\"use client\"\n\nimport type {\n NavbarBrandProps,\n NavbarContentProps,\n NavbarItemProps,\n NavbarLinkProps,\n NavbarMenuProps,\n NavbarMenuToggleProps,\n NavbarProps,\n} from \"./Navbar.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n navbarBrandVariants,\n navbarContainerVariants,\n navbarContentVariants,\n navbarItemVariants,\n navbarLinkVariants,\n navbarMenuToggleVariants,\n navbarMenuVariants,\n navbarVariants,\n} from \"./Navbar.variants\"\n\n/**\n * Navbar - A responsive horizontal navigation component.\n *\n * Combines branding, navigation links, and user actions in a cohesive header.\n *\n * @example\n * <Navbar sticky>\n * <NavbarBrand href=\"/\">Logo</NavbarBrand>\n * <NavbarContent>\n * <NavbarLink href=\"/about\">About</NavbarLink>\n * <NavbarLink href=\"/contact\">Contact</NavbarLink>\n * </NavbarContent>\n * </Navbar>\n */\nfunction Navbar({\n className,\n variant = \"default\",\n size = \"md\",\n sticky = false,\n contained = false,\n containerClassName,\n children,\n ...props\n}: NavbarProps) {\n return (\n <nav\n aria-label=\"Main navigation\"\n className={cn(navbarVariants({ variant, size, sticky }), className)}\n data-slot=\"navbar\"\n {...props}\n >\n <div\n className={cn(navbarContainerVariants({ contained }), containerClassName)}\n data-slot=\"navbar-container\"\n >\n {children}\n </div>\n </nav>\n )\n}\n\n/**\n * NavbarBrand - Logo/brand area of the navbar.\n *\n * Renders as a link when href is provided.\n */\nfunction NavbarBrand({\n className,\n href,\n children,\n ...props\n}: NavbarBrandProps) {\n if (href) {\n return (\n <a\n className={cn(navbarBrandVariants(), className)}\n data-slot=\"navbar-brand\"\n href={href}\n {...(props as React.ComponentProps<\"a\">)}\n >\n {children}\n </a>\n )\n }\n\n return (\n <div\n className={cn(navbarBrandVariants(), className)}\n data-slot=\"navbar-brand\"\n {...props}\n >\n {children}\n </div>\n )\n}\n\n/**\n * NavbarContent - Container for navbar content groups.\n */\nfunction NavbarContent({\n className,\n justify = \"start\",\n children,\n ...props\n}: NavbarContentProps) {\n return (\n <div\n className={cn(navbarContentVariants({ justify }), className)}\n data-slot=\"navbar-content\"\n {...props}\n >\n {children}\n </div>\n )\n}\n\n/**\n * NavbarItem - Wrapper for individual navbar items.\n */\nfunction NavbarItem({\n className,\n isActive = false,\n children,\n ...props\n}: NavbarItemProps) {\n return (\n <div\n className={cn(navbarItemVariants({ isActive }), className)}\n data-active={isActive || undefined}\n data-slot=\"navbar-item\"\n {...props}\n >\n {children}\n </div>\n )\n}\n\n/**\n * NavbarLink - Navigation link for the navbar.\n */\nfunction NavbarLink({\n className,\n isActive = false,\n children,\n ...props\n}: NavbarLinkProps) {\n return (\n <a\n aria-current={isActive ? \"page\" : undefined}\n className={cn(navbarLinkVariants({ isActive }), className)}\n data-slot=\"navbar-link\"\n {...props}\n >\n {children}\n </a>\n )\n}\n\n/**\n * NavbarMenuToggle - Toggle button for mobile menu.\n */\nfunction NavbarMenuToggle({\n className,\n isOpen = false,\n srLabel = \"Toggle menu\",\n children,\n ...props\n}: NavbarMenuToggleProps) {\n return (\n <button\n aria-expanded={isOpen}\n aria-label={srLabel}\n className={cn(navbarMenuToggleVariants({ isOpen }), className)}\n data-slot=\"navbar-menu-toggle\"\n type=\"button\"\n {...props}\n >\n {children ?? (\n <svg\n className=\"h-6 w-6\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n viewBox=\"0 0 24 24\"\n >\n {isOpen ? (\n <path\n d=\"M6 18L18 6M6 6l12 12\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n ) : (\n <path\n d=\"M4 6h16M4 12h16M4 18h16\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n )}\n </svg>\n )}\n </button>\n )\n}\n\n/**\n * NavbarMenu - Mobile menu container.\n */\nfunction NavbarMenu({\n className,\n isOpen = false,\n children,\n ...props\n}: NavbarMenuProps) {\n return (\n <div\n className={cn(navbarMenuVariants({ isOpen }), className)}\n data-slot=\"navbar-menu\"\n data-state={isOpen ? \"open\" : \"closed\"}\n {...props}\n >\n {children}\n </div>\n )\n}\n\nexport {\n Navbar,\n NavbarBrand,\n NavbarContent,\n NavbarItem,\n NavbarLink,\n NavbarMenu,\n NavbarMenuToggle,\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
2
2
|
import { Drawer as Drawer$1 } from 'vaul';
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
4
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -141,5 +141,5 @@ function DrawerDescription({ className, ...props }) {
|
|
|
141
141
|
}
|
|
142
142
|
|
|
143
143
|
export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, drawerContentBaseVariants, drawerDescriptionVariants, drawerFooterVariants, drawerHandleVariants, drawerHeaderVariants, drawerOverlayVariants, drawerTitleVariants };
|
|
144
|
-
//# sourceMappingURL=chunk-
|
|
145
|
-
//# sourceMappingURL=chunk-
|
|
144
|
+
//# sourceMappingURL=chunk-PEX7FCZC.js.map
|
|
145
|
+
//# sourceMappingURL=chunk-PEX7FCZC.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/navigation/Drawer/Drawer.variants.ts","../src/components/navigation/Drawer/Drawer.tsx"],"names":["DrawerPrimitive"],"mappings":"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","file":"chunk-HI3T55XK.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * DrawerOverlay variant styles\n * Semi-transparent backdrop behind the drawer\n */\nexport const drawerOverlayVariants = cva([\n \"fixed inset-0 z-50 bg-[color:var(--drawer-overlay-bg)]\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n])\n\n/**\n * DrawerContent base styles (direction handled by data attributes)\n * Use this when direction is controlled by vaul\n */\nexport const drawerContentBaseVariants = cva([\n \"group/drawer-content bg-[color:var(--drawer-content-bg)] fixed z-50 flex h-auto flex-col\",\n // Top direction styles\n \"data-[vaul-drawer-direction=top]:inset-x-0\",\n \"data-[vaul-drawer-direction=top]:top-0\",\n \"data-[vaul-drawer-direction=top]:mb-24\",\n \"data-[vaul-drawer-direction=top]:max-h-[80vh]\",\n \"data-[vaul-drawer-direction=top]:rounded-b-[var(--drawer-content-radius)]\",\n \"data-[vaul-drawer-direction=top]:border-b data-[vaul-drawer-direction=top]:border-[color:var(--drawer-content-border)]\",\n // Bottom direction styles\n \"data-[vaul-drawer-direction=bottom]:inset-x-0\",\n \"data-[vaul-drawer-direction=bottom]:bottom-0\",\n \"data-[vaul-drawer-direction=bottom]:mt-24\",\n \"data-[vaul-drawer-direction=bottom]:max-h-[80vh]\",\n \"data-[vaul-drawer-direction=bottom]:rounded-t-[var(--drawer-content-radius)]\",\n \"data-[vaul-drawer-direction=bottom]:border-t data-[vaul-drawer-direction=bottom]:border-[color:var(--drawer-content-border)]\",\n // Right direction styles\n \"data-[vaul-drawer-direction=right]:inset-y-0\",\n \"data-[vaul-drawer-direction=right]:right-0\",\n \"data-[vaul-drawer-direction=right]:w-3/4\",\n \"data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:border-[color:var(--drawer-content-border)]\",\n \"data-[vaul-drawer-direction=right]:sm:max-w-sm\",\n // Left direction styles\n \"data-[vaul-drawer-direction=left]:inset-y-0\",\n \"data-[vaul-drawer-direction=left]:left-0\",\n \"data-[vaul-drawer-direction=left]:w-3/4\",\n \"data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:border-[color:var(--drawer-content-border)]\",\n \"data-[vaul-drawer-direction=left]:sm:max-w-sm\",\n])\n\n/**\n * Drawer handle (drag indicator) variant styles\n */\nexport const drawerHandleVariants = cva([\n \"bg-[color:var(--drawer-handle-bg)] mx-auto mt-[var(--drawer-handle-margin-top)] h-[var(--drawer-handle-height)] w-[var(--drawer-handle-width)] shrink-0 rounded-full\",\n \"hidden group-data-[vaul-drawer-direction=bottom]/drawer-content:block\",\n])\n\n/**\n * DrawerHeader variant styles\n */\nexport const drawerHeaderVariants = cva([\n \"flex flex-col gap-[var(--drawer-header-gap)] p-[var(--drawer-header-padding)]\",\n \"md:gap-1.5 md:text-left\",\n \"group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center\",\n \"group-data-[vaul-drawer-direction=top]/drawer-content:text-center\",\n])\n\n/**\n * DrawerFooter variant styles\n */\nexport const drawerFooterVariants = cva([\n \"mt-auto flex flex-col gap-[var(--drawer-footer-gap)] p-[var(--drawer-footer-padding)]\",\n])\n\n/**\n * DrawerTitle variant styles\n */\nexport const drawerTitleVariants = cva([\n \"text-foreground font-semibold\",\n])\n\n/**\n * DrawerDescription variant styles\n */\nexport const drawerDescriptionVariants = cva([\n \"text-muted-foreground text-sm\",\n])\n","\"use client\"\n\nimport type {\n DrawerCloseProps,\n DrawerContentProps,\n DrawerDescriptionProps,\n DrawerFooterProps,\n DrawerHeaderProps,\n DrawerOverlayProps,\n DrawerPortalProps,\n DrawerProps,\n DrawerTitleProps,\n DrawerTriggerProps,\n} from \"./Drawer.types\"\n\nimport { Drawer as DrawerPrimitive } from \"vaul\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n drawerContentBaseVariants,\n drawerDescriptionVariants,\n drawerFooterVariants,\n drawerHandleVariants,\n drawerHeaderVariants,\n drawerOverlayVariants,\n drawerTitleVariants,\n} from \"./Drawer.variants\"\n\n/**\n * Drawer - A drawer/slide-out panel component.\n *\n * Built on top of vaul for touch-friendly drawer behavior.\n * Supports all four directions: top, bottom, left, right.\n *\n * @example\n * <Drawer>\n * <DrawerTrigger>Open Drawer</DrawerTrigger>\n * <DrawerContent>\n * <DrawerHeader>\n * <DrawerTitle>Title</DrawerTitle>\n * <DrawerDescription>Description</DrawerDescription>\n * </DrawerHeader>\n * <div className=\"p-4\">Content</div>\n * </DrawerContent>\n * </Drawer>\n */\nfunction Drawer({ ...props }: DrawerProps) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />\n}\n\n/**\n * DrawerTrigger - Button that opens the drawer.\n */\nfunction DrawerTrigger({ ...props }: DrawerTriggerProps) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />\n}\n\n/**\n * DrawerPortal - Renders drawer content in a portal.\n */\nfunction DrawerPortal({ ...props }: DrawerPortalProps) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />\n}\n\n/**\n * DrawerClose - Button that closes the drawer.\n */\nfunction DrawerClose({ ...props }: DrawerCloseProps) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />\n}\n\n/**\n * DrawerOverlay - Semi-transparent backdrop behind the drawer.\n */\nfunction DrawerOverlay({ className, ...props }: DrawerOverlayProps) {\n return (\n <DrawerPrimitive.Overlay\n className={cn(drawerOverlayVariants(), className)}\n data-slot=\"drawer-overlay\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerContent - Main content container for the drawer.\n *\n * Automatically includes overlay and handles positioning based on direction.\n * Includes a drag handle for bottom drawers.\n */\nfunction DrawerContent({\n className,\n children,\n ...props\n}: DrawerContentProps) {\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n className={cn(drawerContentBaseVariants(), className)}\n data-slot=\"drawer-content\"\n {...props}\n >\n <div className={cn(drawerHandleVariants())} />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n )\n}\n\n/**\n * DrawerHeader - Container for drawer title and description.\n *\n * Centered text for top/bottom drawers, left-aligned for side drawers on desktop.\n */\nfunction DrawerHeader({ className, ...props }: DrawerHeaderProps) {\n return (\n <div\n className={cn(drawerHeaderVariants(), className)}\n data-slot=\"drawer-header\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerFooter - Footer container for drawer actions.\n *\n * Positioned at the bottom with auto margin-top.\n */\nfunction DrawerFooter({ className, ...props }: DrawerFooterProps) {\n return (\n <div\n className={cn(drawerFooterVariants(), className)}\n data-slot=\"drawer-footer\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerTitle - Title text for the drawer.\n */\nfunction DrawerTitle({ className, ...props }: DrawerTitleProps) {\n return (\n <DrawerPrimitive.Title\n className={cn(drawerTitleVariants(), className)}\n data-slot=\"drawer-title\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerDescription - Description text for the drawer.\n */\nfunction DrawerDescription({ className, ...props }: DrawerDescriptionProps) {\n return (\n <DrawerPrimitive.Description\n className={cn(drawerDescriptionVariants(), className)}\n data-slot=\"drawer-description\"\n {...props}\n />\n )\n}\n\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerOverlay,\n DrawerPortal,\n DrawerTitle,\n DrawerTrigger,\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/Drawer/Drawer.variants.ts","../src/components/navigation/Drawer/Drawer.tsx"],"names":["DrawerPrimitive"],"mappings":"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","file":"chunk-PEX7FCZC.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * DrawerOverlay variant styles\n * Semi-transparent backdrop behind the drawer\n */\nexport const drawerOverlayVariants = cva([\n \"fixed inset-0 z-50 bg-[color:var(--drawer-overlay-bg)]\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n])\n\n/**\n * DrawerContent base styles (direction handled by data attributes)\n * Use this when direction is controlled by vaul\n */\nexport const drawerContentBaseVariants = cva([\n \"group/drawer-content bg-[color:var(--drawer-content-bg)] fixed z-50 flex h-auto flex-col\",\n // Top direction styles\n \"data-[vaul-drawer-direction=top]:inset-x-0\",\n \"data-[vaul-drawer-direction=top]:top-0\",\n \"data-[vaul-drawer-direction=top]:mb-24\",\n \"data-[vaul-drawer-direction=top]:max-h-[80vh]\",\n \"data-[vaul-drawer-direction=top]:rounded-b-[var(--drawer-content-radius)]\",\n \"data-[vaul-drawer-direction=top]:border-b data-[vaul-drawer-direction=top]:border-[color:var(--drawer-content-border)]\",\n // Bottom direction styles\n \"data-[vaul-drawer-direction=bottom]:inset-x-0\",\n \"data-[vaul-drawer-direction=bottom]:bottom-0\",\n \"data-[vaul-drawer-direction=bottom]:mt-24\",\n \"data-[vaul-drawer-direction=bottom]:max-h-[80vh]\",\n \"data-[vaul-drawer-direction=bottom]:rounded-t-[var(--drawer-content-radius)]\",\n \"data-[vaul-drawer-direction=bottom]:border-t data-[vaul-drawer-direction=bottom]:border-[color:var(--drawer-content-border)]\",\n // Right direction styles\n \"data-[vaul-drawer-direction=right]:inset-y-0\",\n \"data-[vaul-drawer-direction=right]:right-0\",\n \"data-[vaul-drawer-direction=right]:w-3/4\",\n \"data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:border-[color:var(--drawer-content-border)]\",\n \"data-[vaul-drawer-direction=right]:sm:max-w-sm\",\n // Left direction styles\n \"data-[vaul-drawer-direction=left]:inset-y-0\",\n \"data-[vaul-drawer-direction=left]:left-0\",\n \"data-[vaul-drawer-direction=left]:w-3/4\",\n \"data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:border-[color:var(--drawer-content-border)]\",\n \"data-[vaul-drawer-direction=left]:sm:max-w-sm\",\n])\n\n/**\n * Drawer handle (drag indicator) variant styles\n */\nexport const drawerHandleVariants = cva([\n \"bg-[color:var(--drawer-handle-bg)] mx-auto mt-[var(--drawer-handle-margin-top)] h-[var(--drawer-handle-height)] w-[var(--drawer-handle-width)] shrink-0 rounded-full\",\n \"hidden group-data-[vaul-drawer-direction=bottom]/drawer-content:block\",\n])\n\n/**\n * DrawerHeader variant styles\n */\nexport const drawerHeaderVariants = cva([\n \"flex flex-col gap-[var(--drawer-header-gap)] p-[var(--drawer-header-padding)]\",\n \"md:gap-1.5 md:text-left\",\n \"group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center\",\n \"group-data-[vaul-drawer-direction=top]/drawer-content:text-center\",\n])\n\n/**\n * DrawerFooter variant styles\n */\nexport const drawerFooterVariants = cva([\n \"mt-auto flex flex-col gap-[var(--drawer-footer-gap)] p-[var(--drawer-footer-padding)]\",\n])\n\n/**\n * DrawerTitle variant styles\n */\nexport const drawerTitleVariants = cva([\n \"text-foreground font-semibold\",\n])\n\n/**\n * DrawerDescription variant styles\n */\nexport const drawerDescriptionVariants = cva([\n \"text-muted-foreground text-sm\",\n])\n","\"use client\"\n\nimport type {\n DrawerCloseProps,\n DrawerContentProps,\n DrawerDescriptionProps,\n DrawerFooterProps,\n DrawerHeaderProps,\n DrawerOverlayProps,\n DrawerPortalProps,\n DrawerProps,\n DrawerTitleProps,\n DrawerTriggerProps,\n} from \"./Drawer.types\"\n\nimport { Drawer as DrawerPrimitive } from \"vaul\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n drawerContentBaseVariants,\n drawerDescriptionVariants,\n drawerFooterVariants,\n drawerHandleVariants,\n drawerHeaderVariants,\n drawerOverlayVariants,\n drawerTitleVariants,\n} from \"./Drawer.variants\"\n\n/**\n * Drawer - A drawer/slide-out panel component.\n *\n * Built on top of vaul for touch-friendly drawer behavior.\n * Supports all four directions: top, bottom, left, right.\n *\n * @example\n * <Drawer>\n * <DrawerTrigger>Open Drawer</DrawerTrigger>\n * <DrawerContent>\n * <DrawerHeader>\n * <DrawerTitle>Title</DrawerTitle>\n * <DrawerDescription>Description</DrawerDescription>\n * </DrawerHeader>\n * <div className=\"p-4\">Content</div>\n * </DrawerContent>\n * </Drawer>\n */\nfunction Drawer({ ...props }: DrawerProps) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />\n}\n\n/**\n * DrawerTrigger - Button that opens the drawer.\n */\nfunction DrawerTrigger({ ...props }: DrawerTriggerProps) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />\n}\n\n/**\n * DrawerPortal - Renders drawer content in a portal.\n */\nfunction DrawerPortal({ ...props }: DrawerPortalProps) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />\n}\n\n/**\n * DrawerClose - Button that closes the drawer.\n */\nfunction DrawerClose({ ...props }: DrawerCloseProps) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />\n}\n\n/**\n * DrawerOverlay - Semi-transparent backdrop behind the drawer.\n */\nfunction DrawerOverlay({ className, ...props }: DrawerOverlayProps) {\n return (\n <DrawerPrimitive.Overlay\n className={cn(drawerOverlayVariants(), className)}\n data-slot=\"drawer-overlay\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerContent - Main content container for the drawer.\n *\n * Automatically includes overlay and handles positioning based on direction.\n * Includes a drag handle for bottom drawers.\n */\nfunction DrawerContent({\n className,\n children,\n ...props\n}: DrawerContentProps) {\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n className={cn(drawerContentBaseVariants(), className)}\n data-slot=\"drawer-content\"\n {...props}\n >\n <div className={cn(drawerHandleVariants())} />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n )\n}\n\n/**\n * DrawerHeader - Container for drawer title and description.\n *\n * Centered text for top/bottom drawers, left-aligned for side drawers on desktop.\n */\nfunction DrawerHeader({ className, ...props }: DrawerHeaderProps) {\n return (\n <div\n className={cn(drawerHeaderVariants(), className)}\n data-slot=\"drawer-header\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerFooter - Footer container for drawer actions.\n *\n * Positioned at the bottom with auto margin-top.\n */\nfunction DrawerFooter({ className, ...props }: DrawerFooterProps) {\n return (\n <div\n className={cn(drawerFooterVariants(), className)}\n data-slot=\"drawer-footer\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerTitle - Title text for the drawer.\n */\nfunction DrawerTitle({ className, ...props }: DrawerTitleProps) {\n return (\n <DrawerPrimitive.Title\n className={cn(drawerTitleVariants(), className)}\n data-slot=\"drawer-title\"\n {...props}\n />\n )\n}\n\n/**\n * DrawerDescription - Description text for the drawer.\n */\nfunction DrawerDescription({ className, ...props }: DrawerDescriptionProps) {\n return (\n <DrawerPrimitive.Description\n className={cn(drawerDescriptionVariants(), className)}\n data-slot=\"drawer-description\"\n {...props}\n />\n )\n}\n\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerOverlay,\n DrawerPortal,\n DrawerTitle,\n DrawerTrigger,\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
4
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
@@ -155,5 +155,5 @@ function BarList({
|
|
|
155
155
|
BarList.displayName = "BarList";
|
|
156
156
|
|
|
157
157
|
export { BarList };
|
|
158
|
-
//# sourceMappingURL=chunk-
|
|
159
|
-
//# sourceMappingURL=chunk-
|
|
158
|
+
//# sourceMappingURL=chunk-PI4WGIPG.js.map
|
|
159
|
+
//# sourceMappingURL=chunk-PI4WGIPG.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/data-display/BarList/BarList.variants.ts","../src/components/data-display/BarList/BarList.tsx"],"names":[],"mappings":"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","file":"chunk-WMG2MMJF.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\nexport const barListVariants = cva(\n \"flex flex-col gap-2\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\nexport const barListItemVariants = cva(\n \"relative flex items-center\",\n {\n variants: {\n clickable: {\n true: \"cursor-pointer\",\n false: \"\",\n },\n },\n defaultVariants: {\n clickable: false,\n },\n }\n)\n\nexport const barListBarVariants = cva(\n \"absolute left-0 h-full rounded-[var(--radius-sm)] transition-all duration-300\",\n {\n variants: {\n animated: {\n true: \"\",\n false: \"!transition-none\",\n },\n },\n defaultVariants: {\n animated: true,\n },\n }\n)\n\nexport const barListContentVariants = cva(\n \"relative z-10 flex w-full items-center justify-between gap-2 px-2 py-1.5\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\nexport const barListNameVariants = cva(\n \"flex items-center gap-2 truncate text-sm font-medium\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\nexport const barListValueVariants = cva(\n \"text-sm tabular-nums text-muted-foreground\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n","\"use client\"\n\nimport type { BarListDataItem, BarListProps } from \"./BarList.types\"\n\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n barListBarVariants,\n barListContentVariants,\n barListItemVariants,\n barListNameVariants,\n barListValueVariants,\n barListVariants,\n} from \"./BarList.variants\"\n\n/**\n * Default value formatter\n */\nfunction defaultValueFormatter(value: number): string {\n return value.toLocaleString()\n}\n\n/**\n * Sort data by value\n */\nfunction sortData(\n data: BarListDataItem[],\n order: BarListProps[\"sortOrder\"]\n): BarListDataItem[] {\n if (order === \"none\") return data\n\n return [...data].sort((a, b) =>\n order === \"ascending\" ? a.value - b.value : b.value - a.value\n )\n}\n\n/**\n * BarList - Horizontal bar list for ranked data\n *\n * Displays items as horizontal bars proportional to their values.\n * Commonly used for top items, rankings, category breakdowns, etc.\n *\n * @example\n * ```tsx\n * const data = [\n * { name: \"Twitter\", value: 456 },\n * { name: \"Google\", value: 351 },\n * { name: \"GitHub\", value: 271 },\n * ]\n *\n * <BarList data={data} />\n * ```\n *\n * @example\n * ```tsx\n * // With custom colors and click handler\n * const data = [\n * { name: \"Direct\", value: 456, color: \"var(--chart-1)\" },\n * { name: \"Organic\", value: 351, color: \"var(--chart-2)\" },\n * ]\n *\n * <BarList\n * data={data}\n * onClick={(item) => console.log(item.name)}\n * valueFormatter={(v) => `${v} visits`}\n * />\n * ```\n */\nexport function BarList({\n className,\n color = \"var(--primary)\",\n data,\n onClick,\n showAnimation = true,\n sortOrder = \"descending\",\n valueFormatter = defaultValueFormatter,\n ...props\n}: BarListProps) {\n const sortedData = React.useMemo(\n () => sortData(data, sortOrder),\n [data, sortOrder]\n )\n\n // Calculate max value for bar widths\n const maxValue = React.useMemo(\n () => Math.max(...sortedData.map((d) => d.value), 0),\n [sortedData]\n )\n\n const isClickable = Boolean(onClick)\n\n return (\n <div\n className={cn(barListVariants(), className)}\n data-slot=\"bar-list\"\n {...props}\n >\n {sortedData.map((item, index) => {\n const percentage = maxValue > 0 ? (item.value / maxValue) * 100 : 0\n const barColor = item.color ?? color\n\n const content = (\n <>\n <div\n style={{\n backgroundColor: barColor,\n opacity: 0.15,\n width: `${String(percentage)}%`,\n }}\n className={cn(barListBarVariants({ animated: showAnimation }))}\n />\n <div className={barListContentVariants()}>\n <span className={barListNameVariants()}>\n {React.isValidElement(item.icon) ? item.icon : null}\n {item.href ? (\n <a\n className=\"hover:underline focus:outline-none focus:underline\"\n href={item.href}\n rel={item.target === \"_blank\" ? \"noopener noreferrer\" : undefined}\n target={item.target}\n onClick={(e) => {\n if (onClick) {\n e.preventDefault()\n onClick(item, index)\n }\n }}\n >\n {item.name}\n </a>\n ) : (\n item.name\n )}\n </span>\n <span className={barListValueVariants()}>\n {valueFormatter(item.value)}\n </span>\n </div>\n </>\n )\n\n return (\n <div\n key={item.name}\n className={cn(barListItemVariants({ clickable: isClickable && !item.href }))}\n role={isClickable && !item.href ? \"button\" : undefined}\n tabIndex={isClickable && !item.href ? 0 : undefined}\n onClick={\n isClickable && !item.href\n ? () => onClick?.(item, index)\n : undefined\n }\n onKeyDown={\n isClickable && !item.href\n ? (e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n onClick?.(item, index)\n }\n }\n : undefined\n }\n >\n {content}\n </div>\n )\n })}\n </div>\n )\n}\n\nBarList.displayName = \"BarList\"\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/BarList/BarList.variants.ts","../src/components/data-display/BarList/BarList.tsx"],"names":[],"mappings":"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","file":"chunk-PI4WGIPG.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\nexport const barListVariants = cva(\n \"flex flex-col gap-2\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\nexport const barListItemVariants = cva(\n \"relative flex items-center\",\n {\n variants: {\n clickable: {\n true: \"cursor-pointer\",\n false: \"\",\n },\n },\n defaultVariants: {\n clickable: false,\n },\n }\n)\n\nexport const barListBarVariants = cva(\n \"absolute left-0 h-full rounded-[var(--radius-sm)] transition-all duration-300\",\n {\n variants: {\n animated: {\n true: \"\",\n false: \"!transition-none\",\n },\n },\n defaultVariants: {\n animated: true,\n },\n }\n)\n\nexport const barListContentVariants = cva(\n \"relative z-10 flex w-full items-center justify-between gap-2 px-2 py-1.5\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\nexport const barListNameVariants = cva(\n \"flex items-center gap-2 truncate text-sm font-medium\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\nexport const barListValueVariants = cva(\n \"text-sm tabular-nums text-muted-foreground\",\n {\n variants: {},\n defaultVariants: {},\n }\n)\n","\"use client\"\n\nimport type { BarListDataItem, BarListProps } from \"./BarList.types\"\n\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n barListBarVariants,\n barListContentVariants,\n barListItemVariants,\n barListNameVariants,\n barListValueVariants,\n barListVariants,\n} from \"./BarList.variants\"\n\n/**\n * Default value formatter\n */\nfunction defaultValueFormatter(value: number): string {\n return value.toLocaleString()\n}\n\n/**\n * Sort data by value\n */\nfunction sortData(\n data: BarListDataItem[],\n order: BarListProps[\"sortOrder\"]\n): BarListDataItem[] {\n if (order === \"none\") return data\n\n return [...data].sort((a, b) =>\n order === \"ascending\" ? a.value - b.value : b.value - a.value\n )\n}\n\n/**\n * BarList - Horizontal bar list for ranked data\n *\n * Displays items as horizontal bars proportional to their values.\n * Commonly used for top items, rankings, category breakdowns, etc.\n *\n * @example\n * ```tsx\n * const data = [\n * { name: \"Twitter\", value: 456 },\n * { name: \"Google\", value: 351 },\n * { name: \"GitHub\", value: 271 },\n * ]\n *\n * <BarList data={data} />\n * ```\n *\n * @example\n * ```tsx\n * // With custom colors and click handler\n * const data = [\n * { name: \"Direct\", value: 456, color: \"var(--chart-1)\" },\n * { name: \"Organic\", value: 351, color: \"var(--chart-2)\" },\n * ]\n *\n * <BarList\n * data={data}\n * onClick={(item) => console.log(item.name)}\n * valueFormatter={(v) => `${v} visits`}\n * />\n * ```\n */\nexport function BarList({\n className,\n color = \"var(--primary)\",\n data,\n onClick,\n showAnimation = true,\n sortOrder = \"descending\",\n valueFormatter = defaultValueFormatter,\n ...props\n}: BarListProps) {\n const sortedData = React.useMemo(\n () => sortData(data, sortOrder),\n [data, sortOrder]\n )\n\n // Calculate max value for bar widths\n const maxValue = React.useMemo(\n () => Math.max(...sortedData.map((d) => d.value), 0),\n [sortedData]\n )\n\n const isClickable = Boolean(onClick)\n\n return (\n <div\n className={cn(barListVariants(), className)}\n data-slot=\"bar-list\"\n {...props}\n >\n {sortedData.map((item, index) => {\n const percentage = maxValue > 0 ? (item.value / maxValue) * 100 : 0\n const barColor = item.color ?? color\n\n const content = (\n <>\n <div\n style={{\n backgroundColor: barColor,\n opacity: 0.15,\n width: `${String(percentage)}%`,\n }}\n className={cn(barListBarVariants({ animated: showAnimation }))}\n />\n <div className={barListContentVariants()}>\n <span className={barListNameVariants()}>\n {React.isValidElement(item.icon) ? item.icon : null}\n {item.href ? (\n <a\n className=\"hover:underline focus:outline-none focus:underline\"\n href={item.href}\n rel={item.target === \"_blank\" ? \"noopener noreferrer\" : undefined}\n target={item.target}\n onClick={(e) => {\n if (onClick) {\n e.preventDefault()\n onClick(item, index)\n }\n }}\n >\n {item.name}\n </a>\n ) : (\n item.name\n )}\n </span>\n <span className={barListValueVariants()}>\n {valueFormatter(item.value)}\n </span>\n </div>\n </>\n )\n\n return (\n <div\n key={item.name}\n className={cn(barListItemVariants({ clickable: isClickable && !item.href }))}\n role={isClickable && !item.href ? \"button\" : undefined}\n tabIndex={isClickable && !item.href ? 0 : undefined}\n onClick={\n isClickable && !item.href\n ? () => onClick?.(item, index)\n : undefined\n }\n onKeyDown={\n isClickable && !item.href\n ? (e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n onClick?.(item, index)\n }\n }\n : undefined\n }\n >\n {content}\n </div>\n )\n })}\n </div>\n )\n}\n\nBarList.displayName = \"BarList\"\n"]}
|