@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/data-display/AreaChart/AreaChart.tsx"],"names":["data","props","RechartsAreaChart"],"mappings":"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","file":"chunk-HJ4E6YPW.js","sourcesContent":["\"use client\"\n\nimport type {\n AreaChartProps,\n AreaChartSeriesConfig,\n} from \"./AreaChart.types\"\n\nimport * as React from \"react\"\nimport {\n Area,\n CartesianGrid,\n Label,\n AreaChart as RechartsAreaChart,\n XAxis,\n YAxis,\n} from \"recharts\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n ChartContainer,\n ChartLegend,\n ChartLegendContent,\n ChartTooltip,\n ChartTooltipContent,\n} from \"../Chart\"\n\n/**\n * Normalize series to AreaChartSeriesConfig format\n */\nfunction normalizeSeriesConfig(\n series: (AreaChartSeriesConfig | string)[]\n): AreaChartSeriesConfig[] {\n return series.map((s) =>\n typeof s === \"string\" ? { dataKey: s } : s\n )\n}\n\n/**\n * Generate gradient defs for gradient variant\n */\nfunction GradientDefs({\n idPrefix,\n series,\n}: {\n idPrefix: string\n series: AreaChartSeriesConfig[]\n}) {\n return (\n <defs>\n {series.map((s) => (\n <linearGradient\n key={s.dataKey}\n id={`${idPrefix}-${s.dataKey}`}\n x1=\"0\"\n x2=\"0\"\n y1=\"0\"\n y2=\"1\"\n >\n <stop\n offset=\"5%\"\n stopColor={`var(--color-${s.dataKey})`}\n stopOpacity={0.8}\n />\n <stop\n offset=\"95%\"\n stopColor={`var(--color-${s.dataKey})`}\n stopOpacity={0.1}\n />\n </linearGradient>\n ))}\n </defs>\n )\n}\n\n/**\n * AreaChart - Data visualization component for cumulative data\n *\n * Displays quantitative values along a continuous axis with filled area.\n * Ideal for showing trends over time and comparing volumes between series.\n *\n * @example\n * ```tsx\n * const data = [\n * { month: \"Jan\", desktop: 186, mobile: 80 },\n * { month: \"Feb\", desktop: 305, mobile: 200 },\n * ]\n *\n * const config = {\n * desktop: { label: \"Desktop\", color: \"hsl(var(--chart-1))\" },\n * mobile: { label: \"Mobile\", color: \"hsl(var(--chart-2))\" },\n * }\n *\n * <AreaChart\n * data={data}\n * config={config}\n * xAxisKey=\"month\"\n * series={[\"desktop\", \"mobile\"]}\n * />\n * ```\n */\nexport function AreaChart({\n allowDecimals = true,\n ariaLabel,\n autoMinValue = false,\n className,\n config,\n connectNulls = false,\n customTooltip,\n enableLegendSlider = false,\n curveType = \"monotone\",\n data,\n fill = \"solid\",\n fillOpacity = 0.3,\n gradientIdPrefix = \"area-gradient\",\n gridDashArray = \"3 3\",\n intervalType,\n legendPosition = \"bottom\",\n maxValue,\n minValue,\n onValueChange,\n series,\n showGrid = true,\n showLegend = false,\n showTooltip = true,\n showXAxis = true,\n showYAxis = true,\n startEndOnly = false,\n tickGap,\n tooltipCallback,\n tooltipIndicator = \"dot\",\n variant = \"default\",\n xAxisLabel,\n xAxisKey,\n xAxisTickFormatter,\n yAxisLabel,\n yAxisTickFormatter,\n yAxisWidth,\n ...props\n}: AreaChartProps) {\n const normalizedSeries = normalizeSeriesConfig(series)\n const isStacked = variant === \"stacked\" || variant === \"percent\"\n const isPercent = variant === \"percent\"\n const isGradient = variant === \"gradient\" || fill === \"gradient\"\n const isNoFill = fill === \"none\"\n const chartId = React.useId().replaceAll(\":\", \"\")\n const gradientPrefix = `${gradientIdPrefix}-${chartId}`\n const prevTooltipStateRef = React.useRef<boolean>(false)\n\n // Handle dot click for onValueChange\n const handleDotClick = React.useCallback(\n (dataKey: string) => (data: { payload: Record<string, unknown> }) => {\n if (!onValueChange) return\n const payload = data.payload\n const value = payload[dataKey]\n onValueChange({\n category: payload[xAxisKey],\n dataKey,\n payload,\n value: typeof value === \"number\" ? value : 0,\n })\n },\n [onValueChange, xAxisKey]\n )\n\n /* eslint-disable react-hooks/static-components, @eslint-react/no-nested-component-definitions, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access -- Intentional: memoized render function with Recharts any-typed props */\n // Custom tooltip content wrapper for tooltipCallback\n const TooltipContentWithCallback = React.useCallback(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (props: any) => {\n const { active = false, label, payload } = props\n\n // Call tooltipCallback when state changes\n if (tooltipCallback && active !== prevTooltipStateRef.current) {\n prevTooltipStateRef.current = active\n tooltipCallback({\n active,\n label,\n payload: payload?.map((p: { dataKey: number | string; payload: Record<string, unknown>; value: number; }) => ({\n dataKey: String(p.dataKey),\n value: p.value,\n payload: p.payload,\n })),\n })\n }\n\n return <ChartTooltipContent indicator={tooltipIndicator} {...props} />\n },\n [tooltipCallback, tooltipIndicator]\n )\n\n // Calculate Y-axis domain\n const yDomain = React.useMemo(() => {\n const min = minValue ?? (autoMinValue ? \"auto\" : 0)\n const max = maxValue ?? \"auto\"\n return [min, max] as const\n }, [autoMinValue, maxValue, minValue])\n\n // Calculate X-axis ticks for startEndOnly\n const xAxisTicks = React.useMemo(() => {\n if (!startEndOnly || data.length < 2) return\n const first = data[0]\n const last = data[data.length - 1]\n if (!first || !last) return\n return [first[xAxisKey], last[xAxisKey]] as string[]\n }, [data, startEndOnly, xAxisKey])\n\n return (\n <div\n aria-label={ariaLabel}\n data-slot=\"area-chart\"\n role={ariaLabel ? \"img\" : undefined}\n {...props}\n >\n <ChartContainer\n className={cn(className)}\n config={config}\n >\n <RechartsAreaChart\n accessibilityLayer\n data={data}\n margin={{ left: xAxisLabel ? 20 : 12, right: 12, bottom: yAxisLabel ? 20 : 0 }}\n stackOffset={isPercent ? \"expand\" : undefined}\n >\n {isGradient && (\n <GradientDefs idPrefix={gradientPrefix} series={normalizedSeries} />\n )}\n\n {showGrid && (\n <CartesianGrid strokeDasharray={gridDashArray} vertical={false} />\n )}\n\n {showXAxis && (\n <XAxis\n axisLine={false}\n dataKey={xAxisKey}\n interval={intervalType}\n minTickGap={tickGap}\n tickFormatter={xAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n ticks={xAxisTicks}\n >\n {xAxisLabel && (\n <Label offset={-5} position=\"insideBottom\" value={xAxisLabel} />\n )}\n </XAxis>\n )}\n\n {showYAxis && (\n <YAxis\n allowDecimals={allowDecimals}\n axisLine={false}\n domain={isPercent ? [0, 1] : yDomain}\n tickFormatter={isPercent ? (value) => `${(value * 100).toFixed(0)}%` : yAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n width={yAxisWidth}\n >\n {yAxisLabel && (\n <Label angle={-90} offset={-5} position=\"insideLeft\" value={yAxisLabel} />\n )}\n </YAxis>\n )}\n\n {showTooltip && (\n <ChartTooltip\n content={\n customTooltip\n ?? (tooltipCallback\n ? <TooltipContentWithCallback />\n : <ChartTooltipContent indicator={tooltipIndicator} />)\n }\n cursor={false}\n />\n )}\n\n {showLegend && (\n <ChartLegend\n align={legendPosition === \"left\" ? \"left\" : legendPosition === \"right\" ? \"right\" : \"center\"}\n content={<ChartLegendContent enableSlider={enableLegendSlider} />}\n layout={legendPosition === \"left\" || legendPosition === \"right\" ? \"vertical\" : \"horizontal\"}\n verticalAlign={legendPosition === \"top\" ? \"top\" : legendPosition === \"bottom\" ? \"bottom\" : \"middle\"}\n />\n )}\n\n {normalizedSeries.map((seriesConfig) => {\n const { dataKey, fillOpacity: seriesFillOpacity, stackId } = seriesConfig\n\n const areaFill = isGradient\n ? `url(#${gradientPrefix}-${dataKey})`\n : `var(--color-${dataKey})`\n\n const stroke = `var(--color-${dataKey})`\n\n // Calculate fill opacity: 0 for \"none\", otherwise use series or default\n const computedFillOpacity = isNoFill ? 0 : (seriesFillOpacity ?? fillOpacity)\n\n return (\n <Area\n key={dataKey}\n activeDot={\n onValueChange\n ? { onClick: handleDotClick(dataKey), r: 6, style: { cursor: \"pointer\" } }\n : { r: 6 }\n }\n connectNulls={connectNulls}\n dataKey={dataKey}\n fill={areaFill}\n fillOpacity={computedFillOpacity}\n stackId={isStacked ? \"area-stack\" : stackId}\n stroke={stroke}\n type={curveType}\n />\n )\n })}\n </RechartsAreaChart>\n </ChartContainer>\n </div>\n )\n}\n\nAreaChart.displayName = \"AreaChart\"\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/AreaChart/AreaChart.tsx"],"names":["data","props","RechartsAreaChart"],"mappings":"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","file":"chunk-F3ETIDS7.js","sourcesContent":["\"use client\"\n\nimport type {\n AreaChartProps,\n AreaChartSeriesConfig,\n} from \"./AreaChart.types\"\n\nimport * as React from \"react\"\nimport {\n Area,\n CartesianGrid,\n Label,\n AreaChart as RechartsAreaChart,\n XAxis,\n YAxis,\n} from \"recharts\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n ChartContainer,\n ChartLegend,\n ChartLegendContent,\n ChartTooltip,\n ChartTooltipContent,\n} from \"../Chart\"\n\n/**\n * Normalize series to AreaChartSeriesConfig format\n */\nfunction normalizeSeriesConfig(\n series: (AreaChartSeriesConfig | string)[]\n): AreaChartSeriesConfig[] {\n return series.map((s) =>\n typeof s === \"string\" ? { dataKey: s } : s\n )\n}\n\n/**\n * Generate gradient defs for gradient variant\n */\nfunction GradientDefs({\n idPrefix,\n series,\n}: {\n idPrefix: string\n series: AreaChartSeriesConfig[]\n}) {\n return (\n <defs>\n {series.map((s) => (\n <linearGradient\n key={s.dataKey}\n id={`${idPrefix}-${s.dataKey}`}\n x1=\"0\"\n x2=\"0\"\n y1=\"0\"\n y2=\"1\"\n >\n <stop\n offset=\"5%\"\n stopColor={`var(--color-${s.dataKey})`}\n stopOpacity={0.8}\n />\n <stop\n offset=\"95%\"\n stopColor={`var(--color-${s.dataKey})`}\n stopOpacity={0.1}\n />\n </linearGradient>\n ))}\n </defs>\n )\n}\n\n/**\n * AreaChart - Data visualization component for cumulative data\n *\n * Displays quantitative values along a continuous axis with filled area.\n * Ideal for showing trends over time and comparing volumes between series.\n *\n * @example\n * ```tsx\n * const data = [\n * { month: \"Jan\", desktop: 186, mobile: 80 },\n * { month: \"Feb\", desktop: 305, mobile: 200 },\n * ]\n *\n * const config = {\n * desktop: { label: \"Desktop\", color: \"hsl(var(--chart-1))\" },\n * mobile: { label: \"Mobile\", color: \"hsl(var(--chart-2))\" },\n * }\n *\n * <AreaChart\n * data={data}\n * config={config}\n * xAxisKey=\"month\"\n * series={[\"desktop\", \"mobile\"]}\n * />\n * ```\n */\nexport function AreaChart({\n allowDecimals = true,\n ariaLabel,\n autoMinValue = false,\n className,\n config,\n connectNulls = false,\n customTooltip,\n enableLegendSlider = false,\n curveType = \"monotone\",\n data,\n fill = \"solid\",\n fillOpacity = 0.3,\n gradientIdPrefix = \"area-gradient\",\n gridDashArray = \"3 3\",\n intervalType,\n legendPosition = \"bottom\",\n maxValue,\n minValue,\n onValueChange,\n series,\n showGrid = true,\n showLegend = false,\n showTooltip = true,\n showXAxis = true,\n showYAxis = true,\n startEndOnly = false,\n tickGap,\n tooltipCallback,\n tooltipIndicator = \"dot\",\n variant = \"default\",\n xAxisLabel,\n xAxisKey,\n xAxisTickFormatter,\n yAxisLabel,\n yAxisTickFormatter,\n yAxisWidth,\n ...props\n}: AreaChartProps) {\n const normalizedSeries = normalizeSeriesConfig(series)\n const isStacked = variant === \"stacked\" || variant === \"percent\"\n const isPercent = variant === \"percent\"\n const isGradient = variant === \"gradient\" || fill === \"gradient\"\n const isNoFill = fill === \"none\"\n const chartId = React.useId().replaceAll(\":\", \"\")\n const gradientPrefix = `${gradientIdPrefix}-${chartId}`\n const prevTooltipStateRef = React.useRef<boolean>(false)\n\n // Handle dot click for onValueChange\n const handleDotClick = React.useCallback(\n (dataKey: string) => (data: { payload: Record<string, unknown> }) => {\n if (!onValueChange) return\n const payload = data.payload\n const value = payload[dataKey]\n onValueChange({\n category: payload[xAxisKey],\n dataKey,\n payload,\n value: typeof value === \"number\" ? value : 0,\n })\n },\n [onValueChange, xAxisKey]\n )\n\n /* eslint-disable react-hooks/static-components, @eslint-react/no-nested-component-definitions, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access -- Intentional: memoized render function with Recharts any-typed props */\n // Custom tooltip content wrapper for tooltipCallback\n const TooltipContentWithCallback = React.useCallback(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (props: any) => {\n const { active = false, label, payload } = props\n\n // Call tooltipCallback when state changes\n if (tooltipCallback && active !== prevTooltipStateRef.current) {\n prevTooltipStateRef.current = active\n tooltipCallback({\n active,\n label,\n payload: payload?.map((p: { dataKey: number | string; payload: Record<string, unknown>; value: number; }) => ({\n dataKey: String(p.dataKey),\n value: p.value,\n payload: p.payload,\n })),\n })\n }\n\n return <ChartTooltipContent indicator={tooltipIndicator} {...props} />\n },\n [tooltipCallback, tooltipIndicator]\n )\n\n // Calculate Y-axis domain\n const yDomain = React.useMemo(() => {\n const min = minValue ?? (autoMinValue ? \"auto\" : 0)\n const max = maxValue ?? \"auto\"\n return [min, max] as const\n }, [autoMinValue, maxValue, minValue])\n\n // Calculate X-axis ticks for startEndOnly\n const xAxisTicks = React.useMemo(() => {\n if (!startEndOnly || data.length < 2) return\n const first = data[0]\n const last = data[data.length - 1]\n if (!first || !last) return\n return [first[xAxisKey], last[xAxisKey]] as string[]\n }, [data, startEndOnly, xAxisKey])\n\n return (\n <div\n aria-label={ariaLabel}\n data-slot=\"area-chart\"\n role={ariaLabel ? \"img\" : undefined}\n {...props}\n >\n <ChartContainer\n className={cn(className)}\n config={config}\n >\n <RechartsAreaChart\n accessibilityLayer\n data={data}\n margin={{ left: xAxisLabel ? 20 : 12, right: 12, bottom: yAxisLabel ? 20 : 0 }}\n stackOffset={isPercent ? \"expand\" : undefined}\n >\n {isGradient && (\n <GradientDefs idPrefix={gradientPrefix} series={normalizedSeries} />\n )}\n\n {showGrid && (\n <CartesianGrid strokeDasharray={gridDashArray} vertical={false} />\n )}\n\n {showXAxis && (\n <XAxis\n axisLine={false}\n dataKey={xAxisKey}\n interval={intervalType}\n minTickGap={tickGap}\n tickFormatter={xAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n ticks={xAxisTicks}\n >\n {xAxisLabel && (\n <Label offset={-5} position=\"insideBottom\" value={xAxisLabel} />\n )}\n </XAxis>\n )}\n\n {showYAxis && (\n <YAxis\n allowDecimals={allowDecimals}\n axisLine={false}\n domain={isPercent ? [0, 1] : yDomain}\n tickFormatter={isPercent ? (value) => `${(value * 100).toFixed(0)}%` : yAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n width={yAxisWidth}\n >\n {yAxisLabel && (\n <Label angle={-90} offset={-5} position=\"insideLeft\" value={yAxisLabel} />\n )}\n </YAxis>\n )}\n\n {showTooltip && (\n <ChartTooltip\n content={\n customTooltip\n ?? (tooltipCallback\n ? <TooltipContentWithCallback />\n : <ChartTooltipContent indicator={tooltipIndicator} />)\n }\n cursor={false}\n />\n )}\n\n {showLegend && (\n <ChartLegend\n align={legendPosition === \"left\" ? \"left\" : legendPosition === \"right\" ? \"right\" : \"center\"}\n content={<ChartLegendContent enableSlider={enableLegendSlider} />}\n layout={legendPosition === \"left\" || legendPosition === \"right\" ? \"vertical\" : \"horizontal\"}\n verticalAlign={legendPosition === \"top\" ? \"top\" : legendPosition === \"bottom\" ? \"bottom\" : \"middle\"}\n />\n )}\n\n {normalizedSeries.map((seriesConfig) => {\n const { dataKey, fillOpacity: seriesFillOpacity, stackId } = seriesConfig\n\n const areaFill = isGradient\n ? `url(#${gradientPrefix}-${dataKey})`\n : `var(--color-${dataKey})`\n\n const stroke = `var(--color-${dataKey})`\n\n // Calculate fill opacity: 0 for \"none\", otherwise use series or default\n const computedFillOpacity = isNoFill ? 0 : (seriesFillOpacity ?? fillOpacity)\n\n return (\n <Area\n key={dataKey}\n activeDot={\n onValueChange\n ? { onClick: handleDotClick(dataKey), r: 6, style: { cursor: \"pointer\" } }\n : { r: 6 }\n }\n connectNulls={connectNulls}\n dataKey={dataKey}\n fill={areaFill}\n fillOpacity={computedFillOpacity}\n stackId={isStacked ? \"area-stack\" : stackId}\n stroke={stroke}\n type={curveType}\n />\n )\n })}\n </RechartsAreaChart>\n </ChartContainer>\n </div>\n )\n}\n\nAreaChart.displayName = \"AreaChart\"\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
2
2
|
import { useSensors, useSensor, PointerSensor, KeyboardSensor, DndContext, closestCenter, DragOverlay } from '@dnd-kit/core';
|
|
3
3
|
import { sortableKeyboardCoordinates, arrayMove, SortableContext, horizontalListSortingStrategy, verticalListSortingStrategy, useSortable } from '@dnd-kit/sortable';
|
|
4
4
|
import { CSS } from '@dnd-kit/utilities';
|
|
@@ -345,5 +345,5 @@ function SortableListDragHandle({
|
|
|
345
345
|
}
|
|
346
346
|
|
|
347
347
|
export { SortableList, SortableListDragHandle, SortableListItem, sortableListHandleVariants, sortableListItemVariants, sortableListOverlayVariants, sortableListVariants };
|
|
348
|
-
//# sourceMappingURL=chunk-
|
|
349
|
-
//# sourceMappingURL=chunk-
|
|
348
|
+
//# sourceMappingURL=chunk-F3WDMYZ4.js.map
|
|
349
|
+
//# sourceMappingURL=chunk-F3WDMYZ4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/advanced/SortableList/SortableList.variants.ts","../src/components/advanced/SortableList/SortableList.tsx"],"names":[],"mappings":"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","file":"chunk-LNY2EXOV.js","sourcesContent":["// SortableList/SortableList.variants.ts\nimport { cva } from \"class-variance-authority\"\n\n/**\n * Variants for the SortableList container\n */\nexport const sortableListVariants = cva(\n // Base styles\n \"relative\",\n {\n variants: {\n direction: {\n vertical: \"flex flex-col\",\n horizontal: \"flex flex-row flex-wrap\",\n },\n gap: {\n \"0\": \"gap-0\",\n \"1\": \"gap-1\",\n \"2\": \"gap-2\",\n \"3\": \"gap-3\",\n \"4\": \"gap-4\",\n \"6\": \"gap-6\",\n \"8\": \"gap-8\",\n },\n disabled: {\n true: \"opacity-60 pointer-events-none\",\n false: \"\",\n },\n },\n defaultVariants: {\n direction: \"vertical\",\n gap: \"2\",\n disabled: false,\n },\n }\n)\n\n/**\n * Variants for the SortableListItem\n */\nexport const sortableListItemVariants = cva(\n // Base styles\n [\n \"relative\",\n \"touch-none\",\n \"select-none\",\n \"transition-all duration-200 ease-out\",\n ],\n {\n variants: {\n isDragging: {\n true: [\n \"z-50\",\n \"opacity-50\",\n \"scale-[1.02]\",\n ],\n false: \"\",\n },\n isSorting: {\n true: \"transition-transform\",\n false: \"\",\n },\n isOver: {\n true: \"\",\n false: \"\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n false: \"cursor-grab\",\n },\n },\n compoundVariants: [\n {\n isDragging: true,\n disabled: false,\n className: \"cursor-grabbing\",\n },\n ],\n defaultVariants: {\n isDragging: false,\n isSorting: false,\n isOver: false,\n disabled: false,\n },\n }\n)\n\n/**\n * Variants for the SortableListDragHandle\n */\nexport const sortableListHandleVariants = cva(\n // Base styles\n [\n \"inline-flex items-center justify-center\",\n \"rounded-sm\",\n \"p-1\",\n \"text-muted-foreground\",\n \"hover:text-foreground\",\n \"hover:bg-accent\",\n \"focus-visible:outline-none\",\n \"focus-visible:ring-2\",\n \"focus-visible:ring-ring\",\n \"focus-visible:ring-offset-2\",\n \"transition-colors duration-150\",\n \"touch-none\",\n ],\n {\n variants: {\n isDragging: {\n true: \"cursor-grabbing text-foreground bg-accent\",\n false: \"cursor-grab\",\n },\n disabled: {\n true: \"cursor-not-allowed opacity-50 pointer-events-none\",\n false: \"\",\n },\n },\n defaultVariants: {\n isDragging: false,\n disabled: false,\n },\n }\n)\n\n/**\n * Variants for the drag overlay\n */\nexport const sortableListOverlayVariants = cva(\n // Base styles\n [\n \"bg-background\",\n \"shadow-lg\",\n \"ring-2\",\n \"ring-primary/20\",\n \"rounded-md\",\n ],\n {\n variants: {},\n defaultVariants: {},\n }\n)\n","// SortableList/SortableList.tsx\nimport type {\n SortableListDragHandleProps,\n SortableListHandleContextValue,\n SortableListItemProps,\n SortableListProps,\n} from \"./SortableList.types\"\nimport type { DraggableAttributes, DraggableSyntheticListeners } from \"@dnd-kit/core\"\nimport type { DragEndEvent, DragStartEvent, UniqueIdentifier } from \"@dnd-kit/core\"\n\nimport {\n closestCenter,\n DndContext,\n DragOverlay,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n} from \"@dnd-kit/core\"\nimport {\n arrayMove,\n horizontalListSortingStrategy,\n SortableContext,\n sortableKeyboardCoordinates,\n useSortable,\n verticalListSortingStrategy,\n} from \"@dnd-kit/sortable\"\nimport { CSS } from \"@dnd-kit/utilities\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n sortableListHandleVariants,\n sortableListItemVariants,\n sortableListOverlayVariants,\n sortableListVariants,\n} from \"./SortableList.variants\"\n\n// ============================================\n// CONTEXT FOR SORTABLE HANDLE\n// ============================================\n\ninterface SortableItemHandleContextValue {\n attributes: DraggableAttributes\n isDragging: boolean\n listeners: DraggableSyntheticListeners\n}\n\nconst SortableItemHandleContext = React.createContext<null | SortableItemHandleContextValue>(null)\n\n/**\n * Hook to access sortable handle context\n * @throws Error if used outside of SortableListItem\n */\nfunction useSortableItemHandle(): SortableItemHandleContextValue {\n const context = React.use(SortableItemHandleContext)\n if (!context) {\n throw new Error(\"SortableListDragHandle must be used within a SortableListItem\")\n }\n return context\n}\n\n// Context for handle requirement\nconst SortableListHandleContext = React.createContext<SortableListHandleContextValue>({\n handleRequired: false,\n})\n\n// ============================================\n// SORTABLE LIST\n// ============================================\n\n/**\n * SortableList - A reorderable list with drag and drop support\n *\n * @example\n * ```tsx\n * const [items, setItems] = useState([\n * { id: \"1\", title: \"Item 1\" },\n * { id: \"2\", title: \"Item 2\" },\n * ])\n *\n * <SortableList\n * items={items}\n * onReorder={setItems}\n * keyExtractor={(item) => item.id}\n * renderItem={(item) => (\n * <SortableListItem id={item.id}>\n * <div className=\"p-4 border rounded\">{item.title}</div>\n * </SortableListItem>\n * )}\n * />\n * ```\n */\nfunction SortableList<T>({\n className,\n direction = \"vertical\",\n disabled = false,\n gap = \"2\",\n handle = false,\n items,\n keyExtractor,\n onReorder,\n renderItem,\n strategy,\n}: SortableListProps<T>): React.ReactElement {\n const [activeId, setActiveId] = React.useState<null | UniqueIdentifier>(null)\n\n // Get the IDs for SortableContext\n const itemIds = React.useMemo(\n () => items.map((item) => keyExtractor(item)),\n [items, keyExtractor]\n )\n\n // Configure sensors for drag detection\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n distance: 8,\n },\n }),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n })\n )\n\n // Determine sorting strategy based on direction\n const sortingStrategy = strategy ?? (\n direction === \"horizontal\"\n ? horizontalListSortingStrategy\n : verticalListSortingStrategy\n )\n\n // Handle drag start\n const handleDragStart = React.useCallback((event: DragStartEvent) => {\n setActiveId(event.active.id)\n }, [])\n\n // Handle drag end - reorder items\n const handleDragEnd = React.useCallback((event: DragEndEvent) => {\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n const oldIndex = itemIds.indexOf(String(active.id))\n const newIndex = itemIds.indexOf(String(over.id))\n\n if (oldIndex !== -1 && newIndex !== -1) {\n const newItems = arrayMove(items, oldIndex, newIndex)\n onReorder(newItems)\n }\n }\n\n setActiveId(null)\n }, [items, itemIds, onReorder])\n\n // Handle drag cancel\n const handleDragCancel = React.useCallback(() => {\n setActiveId(null)\n }, [])\n\n // Find active item for overlay\n const activeItem = React.useMemo(() => {\n if (activeId === null) return null\n return items.find((item) => keyExtractor(item) === String(activeId))\n }, [activeId, items, keyExtractor])\n\n // Find active index for overlay render\n const activeIndex = React.useMemo(() => {\n if (activeId === null) return -1\n return itemIds.indexOf(String(activeId))\n }, [activeId, itemIds])\n\n // Accessibility announcements\n const announcements = React.useMemo(() => ({\n onDragCancel({ active }: { active: { id: UniqueIdentifier } }) {\n return `Sorting was cancelled. Sortable item ${String(active.id)} was dropped.`\n },\n onDragEnd({ active, over }: { active: { id: UniqueIdentifier }; over: null | { id: UniqueIdentifier } }) {\n if (over) {\n return `Sortable item ${String(active.id)} was dropped at position ${String(itemIds.indexOf(String(over.id)) + 1)} of ${String(itemIds.length)}`\n }\n return `Sortable item ${String(active.id)} was dropped`\n },\n onDragOver({ active, over }: { active: { id: UniqueIdentifier }; over: null | { id: UniqueIdentifier } }) {\n if (over) {\n return `Sortable item ${String(active.id)} was moved into position ${String(itemIds.indexOf(String(over.id)) + 1)} of ${String(itemIds.length)}`\n }\n return\n },\n onDragStart({ active }: { active: { id: UniqueIdentifier } }) {\n return `Picked up sortable item ${String(active.id)}. Sortable item ${String(active.id)} is in position ${String(itemIds.indexOf(String(active.id)) + 1)} of ${String(itemIds.length)}`\n },\n }), [itemIds])\n\n return (\n <SortableListHandleContext value={{ handleRequired: handle }}>\n <DndContext\n accessibility={{ announcements }}\n collisionDetection={closestCenter}\n sensors={sensors}\n onDragCancel={handleDragCancel}\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n >\n <SortableContext\n disabled={disabled}\n items={itemIds}\n strategy={sortingStrategy}\n >\n <div\n className={cn(\n sortableListVariants({ direction, disabled, gap }),\n className\n )}\n aria-label=\"Sortable list\"\n data-slot=\"sortable-list\"\n role=\"listbox\"\n >\n {items.map((item, index) => (\n <React.Fragment key={keyExtractor(item)}>\n {renderItem(item, index)}\n </React.Fragment>\n ))}\n </div>\n </SortableContext>\n\n <DragOverlay\n dropAnimation={{\n duration: 200,\n easing: \"ease-out\",\n }}\n >\n {activeItem && activeIndex !== -1 ? (\n <div\n className={cn(sortableListOverlayVariants())}\n data-slot=\"sortable-list-overlay\"\n >\n {renderItem(activeItem, activeIndex)}\n </div>\n ) : null}\n </DragOverlay>\n </DndContext>\n </SortableListHandleContext>\n )\n}\n\n// ============================================\n// SORTABLE LIST ITEM\n// ============================================\n\n/**\n * SortableListItem - An individual sortable item\n *\n * @example\n * ```tsx\n * <SortableListItem id=\"item-1\">\n * <div className=\"p-4 border rounded\">Item content</div>\n * </SortableListItem>\n * ```\n */\nfunction SortableListItem({\n children,\n className,\n disabled = false,\n id,\n}: SortableListItemProps): React.ReactElement {\n const { handleRequired } = React.use(SortableListHandleContext)\n\n const {\n attributes,\n isDragging,\n isSorting,\n listeners,\n setNodeRef,\n transform,\n transition,\n } = useSortable({\n disabled,\n id,\n })\n\n const style: React.CSSProperties = {\n transform: CSS.Transform.toString(transform),\n transition,\n }\n\n // Context value for drag handle\n const handleContextValue: SortableItemHandleContextValue = {\n attributes,\n isDragging,\n listeners,\n }\n\n // If handle is not required, apply listeners to the item itself\n const itemProps = handleRequired\n ? {}\n : { ...attributes, ...listeners }\n\n return (\n <SortableItemHandleContext value={handleContextValue}>\n <div\n ref={setNodeRef}\n className={cn(\n sortableListItemVariants({\n disabled,\n isDragging,\n isSorting,\n }),\n className\n )}\n aria-describedby=\"sortable-instructions\"\n aria-roledescription=\"sortable\"\n data-dragging={isDragging}\n data-slot=\"sortable-list-item\"\n data-sorting={isSorting}\n role=\"option\"\n style={style}\n {...itemProps}\n >\n {children}\n </div>\n </SortableItemHandleContext>\n )\n}\n\n// ============================================\n// SORTABLE LIST DRAG HANDLE\n// ============================================\n\n/**\n * SortableListDragHandle - A drag handle for sortable items\n *\n * @example\n * ```tsx\n * <SortableListItem id=\"item-1\">\n * <div className=\"flex items-center gap-2\">\n * <SortableListDragHandle>\n * <GripVerticalIcon className=\"h-4 w-4\" />\n * </SortableListDragHandle>\n * <span>Item content</span>\n * </div>\n * </SortableListItem>\n * ```\n */\nfunction SortableListDragHandle({\n children,\n className,\n disabled = false,\n ...props\n}: SortableListDragHandleProps): React.ReactElement {\n const { attributes, isDragging, listeners } = useSortableItemHandle()\n\n return (\n <button\n className={cn(\n sortableListHandleVariants({ disabled, isDragging }),\n className\n )}\n data-slot=\"sortable-list-handle\"\n disabled={disabled}\n type=\"button\"\n {...attributes}\n {...listeners}\n {...props}\n >\n {children}\n </button>\n )\n}\n\n// ============================================\n// EXPORTS\n// ============================================\n\nexport {\n SortableList,\n SortableListDragHandle,\n SortableListItem,\n}\n\nexport type {\n SortableListDragHandleProps,\n SortableListItemProps,\n SortableListProps,\n} from \"./SortableList.types\"\n\n// Sorting strategies are already re-exported from DragAndDrop\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/advanced/SortableList/SortableList.variants.ts","../src/components/advanced/SortableList/SortableList.tsx"],"names":[],"mappings":"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","file":"chunk-F3WDMYZ4.js","sourcesContent":["// SortableList/SortableList.variants.ts\nimport { cva } from \"class-variance-authority\"\n\n/**\n * Variants for the SortableList container\n */\nexport const sortableListVariants = cva(\n // Base styles\n \"relative\",\n {\n variants: {\n direction: {\n vertical: \"flex flex-col\",\n horizontal: \"flex flex-row flex-wrap\",\n },\n gap: {\n \"0\": \"gap-0\",\n \"1\": \"gap-1\",\n \"2\": \"gap-2\",\n \"3\": \"gap-3\",\n \"4\": \"gap-4\",\n \"6\": \"gap-6\",\n \"8\": \"gap-8\",\n },\n disabled: {\n true: \"opacity-60 pointer-events-none\",\n false: \"\",\n },\n },\n defaultVariants: {\n direction: \"vertical\",\n gap: \"2\",\n disabled: false,\n },\n }\n)\n\n/**\n * Variants for the SortableListItem\n */\nexport const sortableListItemVariants = cva(\n // Base styles\n [\n \"relative\",\n \"touch-none\",\n \"select-none\",\n \"transition-all duration-200 ease-out\",\n ],\n {\n variants: {\n isDragging: {\n true: [\n \"z-50\",\n \"opacity-50\",\n \"scale-[1.02]\",\n ],\n false: \"\",\n },\n isSorting: {\n true: \"transition-transform\",\n false: \"\",\n },\n isOver: {\n true: \"\",\n false: \"\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n false: \"cursor-grab\",\n },\n },\n compoundVariants: [\n {\n isDragging: true,\n disabled: false,\n className: \"cursor-grabbing\",\n },\n ],\n defaultVariants: {\n isDragging: false,\n isSorting: false,\n isOver: false,\n disabled: false,\n },\n }\n)\n\n/**\n * Variants for the SortableListDragHandle\n */\nexport const sortableListHandleVariants = cva(\n // Base styles\n [\n \"inline-flex items-center justify-center\",\n \"rounded-sm\",\n \"p-1\",\n \"text-muted-foreground\",\n \"hover:text-foreground\",\n \"hover:bg-accent\",\n \"focus-visible:outline-none\",\n \"focus-visible:ring-2\",\n \"focus-visible:ring-ring\",\n \"focus-visible:ring-offset-2\",\n \"transition-colors duration-150\",\n \"touch-none\",\n ],\n {\n variants: {\n isDragging: {\n true: \"cursor-grabbing text-foreground bg-accent\",\n false: \"cursor-grab\",\n },\n disabled: {\n true: \"cursor-not-allowed opacity-50 pointer-events-none\",\n false: \"\",\n },\n },\n defaultVariants: {\n isDragging: false,\n disabled: false,\n },\n }\n)\n\n/**\n * Variants for the drag overlay\n */\nexport const sortableListOverlayVariants = cva(\n // Base styles\n [\n \"bg-background\",\n \"shadow-lg\",\n \"ring-2\",\n \"ring-primary/20\",\n \"rounded-md\",\n ],\n {\n variants: {},\n defaultVariants: {},\n }\n)\n","// SortableList/SortableList.tsx\nimport type {\n SortableListDragHandleProps,\n SortableListHandleContextValue,\n SortableListItemProps,\n SortableListProps,\n} from \"./SortableList.types\"\nimport type { DraggableAttributes, DraggableSyntheticListeners } from \"@dnd-kit/core\"\nimport type { DragEndEvent, DragStartEvent, UniqueIdentifier } from \"@dnd-kit/core\"\n\nimport {\n closestCenter,\n DndContext,\n DragOverlay,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n} from \"@dnd-kit/core\"\nimport {\n arrayMove,\n horizontalListSortingStrategy,\n SortableContext,\n sortableKeyboardCoordinates,\n useSortable,\n verticalListSortingStrategy,\n} from \"@dnd-kit/sortable\"\nimport { CSS } from \"@dnd-kit/utilities\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n sortableListHandleVariants,\n sortableListItemVariants,\n sortableListOverlayVariants,\n sortableListVariants,\n} from \"./SortableList.variants\"\n\n// ============================================\n// CONTEXT FOR SORTABLE HANDLE\n// ============================================\n\ninterface SortableItemHandleContextValue {\n attributes: DraggableAttributes\n isDragging: boolean\n listeners: DraggableSyntheticListeners\n}\n\nconst SortableItemHandleContext = React.createContext<null | SortableItemHandleContextValue>(null)\n\n/**\n * Hook to access sortable handle context\n * @throws Error if used outside of SortableListItem\n */\nfunction useSortableItemHandle(): SortableItemHandleContextValue {\n const context = React.use(SortableItemHandleContext)\n if (!context) {\n throw new Error(\"SortableListDragHandle must be used within a SortableListItem\")\n }\n return context\n}\n\n// Context for handle requirement\nconst SortableListHandleContext = React.createContext<SortableListHandleContextValue>({\n handleRequired: false,\n})\n\n// ============================================\n// SORTABLE LIST\n// ============================================\n\n/**\n * SortableList - A reorderable list with drag and drop support\n *\n * @example\n * ```tsx\n * const [items, setItems] = useState([\n * { id: \"1\", title: \"Item 1\" },\n * { id: \"2\", title: \"Item 2\" },\n * ])\n *\n * <SortableList\n * items={items}\n * onReorder={setItems}\n * keyExtractor={(item) => item.id}\n * renderItem={(item) => (\n * <SortableListItem id={item.id}>\n * <div className=\"p-4 border rounded\">{item.title}</div>\n * </SortableListItem>\n * )}\n * />\n * ```\n */\nfunction SortableList<T>({\n className,\n direction = \"vertical\",\n disabled = false,\n gap = \"2\",\n handle = false,\n items,\n keyExtractor,\n onReorder,\n renderItem,\n strategy,\n}: SortableListProps<T>): React.ReactElement {\n const [activeId, setActiveId] = React.useState<null | UniqueIdentifier>(null)\n\n // Get the IDs for SortableContext\n const itemIds = React.useMemo(\n () => items.map((item) => keyExtractor(item)),\n [items, keyExtractor]\n )\n\n // Configure sensors for drag detection\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n distance: 8,\n },\n }),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n })\n )\n\n // Determine sorting strategy based on direction\n const sortingStrategy = strategy ?? (\n direction === \"horizontal\"\n ? horizontalListSortingStrategy\n : verticalListSortingStrategy\n )\n\n // Handle drag start\n const handleDragStart = React.useCallback((event: DragStartEvent) => {\n setActiveId(event.active.id)\n }, [])\n\n // Handle drag end - reorder items\n const handleDragEnd = React.useCallback((event: DragEndEvent) => {\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n const oldIndex = itemIds.indexOf(String(active.id))\n const newIndex = itemIds.indexOf(String(over.id))\n\n if (oldIndex !== -1 && newIndex !== -1) {\n const newItems = arrayMove(items, oldIndex, newIndex)\n onReorder(newItems)\n }\n }\n\n setActiveId(null)\n }, [items, itemIds, onReorder])\n\n // Handle drag cancel\n const handleDragCancel = React.useCallback(() => {\n setActiveId(null)\n }, [])\n\n // Find active item for overlay\n const activeItem = React.useMemo(() => {\n if (activeId === null) return null\n return items.find((item) => keyExtractor(item) === String(activeId))\n }, [activeId, items, keyExtractor])\n\n // Find active index for overlay render\n const activeIndex = React.useMemo(() => {\n if (activeId === null) return -1\n return itemIds.indexOf(String(activeId))\n }, [activeId, itemIds])\n\n // Accessibility announcements\n const announcements = React.useMemo(() => ({\n onDragCancel({ active }: { active: { id: UniqueIdentifier } }) {\n return `Sorting was cancelled. Sortable item ${String(active.id)} was dropped.`\n },\n onDragEnd({ active, over }: { active: { id: UniqueIdentifier }; over: null | { id: UniqueIdentifier } }) {\n if (over) {\n return `Sortable item ${String(active.id)} was dropped at position ${String(itemIds.indexOf(String(over.id)) + 1)} of ${String(itemIds.length)}`\n }\n return `Sortable item ${String(active.id)} was dropped`\n },\n onDragOver({ active, over }: { active: { id: UniqueIdentifier }; over: null | { id: UniqueIdentifier } }) {\n if (over) {\n return `Sortable item ${String(active.id)} was moved into position ${String(itemIds.indexOf(String(over.id)) + 1)} of ${String(itemIds.length)}`\n }\n return\n },\n onDragStart({ active }: { active: { id: UniqueIdentifier } }) {\n return `Picked up sortable item ${String(active.id)}. Sortable item ${String(active.id)} is in position ${String(itemIds.indexOf(String(active.id)) + 1)} of ${String(itemIds.length)}`\n },\n }), [itemIds])\n\n return (\n <SortableListHandleContext value={{ handleRequired: handle }}>\n <DndContext\n accessibility={{ announcements }}\n collisionDetection={closestCenter}\n sensors={sensors}\n onDragCancel={handleDragCancel}\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n >\n <SortableContext\n disabled={disabled}\n items={itemIds}\n strategy={sortingStrategy}\n >\n <div\n className={cn(\n sortableListVariants({ direction, disabled, gap }),\n className\n )}\n aria-label=\"Sortable list\"\n data-slot=\"sortable-list\"\n role=\"listbox\"\n >\n {items.map((item, index) => (\n <React.Fragment key={keyExtractor(item)}>\n {renderItem(item, index)}\n </React.Fragment>\n ))}\n </div>\n </SortableContext>\n\n <DragOverlay\n dropAnimation={{\n duration: 200,\n easing: \"ease-out\",\n }}\n >\n {activeItem && activeIndex !== -1 ? (\n <div\n className={cn(sortableListOverlayVariants())}\n data-slot=\"sortable-list-overlay\"\n >\n {renderItem(activeItem, activeIndex)}\n </div>\n ) : null}\n </DragOverlay>\n </DndContext>\n </SortableListHandleContext>\n )\n}\n\n// ============================================\n// SORTABLE LIST ITEM\n// ============================================\n\n/**\n * SortableListItem - An individual sortable item\n *\n * @example\n * ```tsx\n * <SortableListItem id=\"item-1\">\n * <div className=\"p-4 border rounded\">Item content</div>\n * </SortableListItem>\n * ```\n */\nfunction SortableListItem({\n children,\n className,\n disabled = false,\n id,\n}: SortableListItemProps): React.ReactElement {\n const { handleRequired } = React.use(SortableListHandleContext)\n\n const {\n attributes,\n isDragging,\n isSorting,\n listeners,\n setNodeRef,\n transform,\n transition,\n } = useSortable({\n disabled,\n id,\n })\n\n const style: React.CSSProperties = {\n transform: CSS.Transform.toString(transform),\n transition,\n }\n\n // Context value for drag handle\n const handleContextValue: SortableItemHandleContextValue = {\n attributes,\n isDragging,\n listeners,\n }\n\n // If handle is not required, apply listeners to the item itself\n const itemProps = handleRequired\n ? {}\n : { ...attributes, ...listeners }\n\n return (\n <SortableItemHandleContext value={handleContextValue}>\n <div\n ref={setNodeRef}\n className={cn(\n sortableListItemVariants({\n disabled,\n isDragging,\n isSorting,\n }),\n className\n )}\n aria-describedby=\"sortable-instructions\"\n aria-roledescription=\"sortable\"\n data-dragging={isDragging}\n data-slot=\"sortable-list-item\"\n data-sorting={isSorting}\n role=\"option\"\n style={style}\n {...itemProps}\n >\n {children}\n </div>\n </SortableItemHandleContext>\n )\n}\n\n// ============================================\n// SORTABLE LIST DRAG HANDLE\n// ============================================\n\n/**\n * SortableListDragHandle - A drag handle for sortable items\n *\n * @example\n * ```tsx\n * <SortableListItem id=\"item-1\">\n * <div className=\"flex items-center gap-2\">\n * <SortableListDragHandle>\n * <GripVerticalIcon className=\"h-4 w-4\" />\n * </SortableListDragHandle>\n * <span>Item content</span>\n * </div>\n * </SortableListItem>\n * ```\n */\nfunction SortableListDragHandle({\n children,\n className,\n disabled = false,\n ...props\n}: SortableListDragHandleProps): React.ReactElement {\n const { attributes, isDragging, listeners } = useSortableItemHandle()\n\n return (\n <button\n className={cn(\n sortableListHandleVariants({ disabled, isDragging }),\n className\n )}\n data-slot=\"sortable-list-handle\"\n disabled={disabled}\n type=\"button\"\n {...attributes}\n {...listeners}\n {...props}\n >\n {children}\n </button>\n )\n}\n\n// ============================================\n// EXPORTS\n// ============================================\n\nexport {\n SortableList,\n SortableListDragHandle,\n SortableListItem,\n}\n\nexport type {\n SortableListDragHandleProps,\n SortableListItemProps,\n SortableListProps,\n} from \"./SortableList.types\"\n\n// Sorting strategies are already re-exported from DragAndDrop\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
2
2
|
import { Plus, Minus, Edit3, GitCompare, Loader2, RotateCcw } from 'lucide-react';
|
|
3
3
|
import { useCallback, useState } from 'react';
|
|
4
4
|
import { cva } from 'class-variance-authority';
|
|
@@ -772,5 +772,5 @@ function VersionControl({
|
|
|
772
772
|
VersionControl.displayName = "VersionControl";
|
|
773
773
|
|
|
774
774
|
export { ChangeIndicator, VersionActions, VersionBadge, VersionControl, VersionDiff, VersionItem, VersionList, VersionTimeline, changeIndicatorVariants, diffLineVariants, versionBadgeVariants, versionControlVariants, versionItemVariants, versionTimelineConnectorVariants, versionTimelineMarkerVariants };
|
|
775
|
-
//# sourceMappingURL=chunk-
|
|
776
|
-
//# sourceMappingURL=chunk-
|
|
775
|
+
//# sourceMappingURL=chunk-FRKB4Z2P.js.map
|
|
776
|
+
//# sourceMappingURL=chunk-FRKB4Z2P.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/advanced/VersionControl/VersionControl.variants.ts","../src/components/advanced/VersionControl/VersionControl.tsx"],"names":["currentVersion"],"mappings":"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","file":"chunk-FPCRGFNY.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * VersionControl container variants\n */\nexport const versionControlVariants = cva(\n \"flex flex-col transition-colors duration-200\",\n {\n variants: {\n variant: {\n list: \"gap-2\",\n timeline: \"gap-4\",\n compact: \"gap-1\",\n diff: \"gap-0\",\n },\n size: {\n sm: \"text-xs\",\n default: \"text-sm\",\n lg: \"text-base\",\n },\n },\n defaultVariants: {\n variant: \"list\",\n size: \"default\",\n },\n }\n)\n\n/**\n * VersionItem variants\n */\nexport const versionItemVariants = cva(\n [\n \"relative flex gap-3 rounded-md p-3\",\n \"transition-colors duration-200\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n \"cursor-pointer hover:bg-accent/50\",\n ],\n {\n variants: {\n variant: {\n list: \"flex-row items-start border border-transparent\",\n timeline: \"flex-row items-start pl-8\",\n compact: \"flex-row items-center py-2\",\n diff: \"flex-col border-b border-border last:border-b-0\",\n },\n size: {\n sm: \"p-2 gap-2\",\n default: \"p-3 gap-3\",\n lg: \"p-4 gap-4\",\n },\n isCurrent: {\n true: \"border-primary bg-primary/5\",\n false: \"\",\n },\n isSelected: {\n true: \"bg-accent ring-1 ring-ring\",\n false: \"\",\n },\n },\n compoundVariants: [\n {\n isCurrent: true,\n variant: \"list\",\n className: \"border-primary\",\n },\n {\n isCurrent: true,\n variant: \"timeline\",\n className: \"bg-primary/5\",\n },\n ],\n defaultVariants: {\n variant: \"list\",\n size: \"default\",\n isCurrent: false,\n isSelected: false,\n },\n }\n)\n\n/**\n * Version badge/label variants\n */\nexport const versionBadgeVariants = cva(\n \"inline-flex items-center rounded-md px-2 py-0.5 font-mono font-medium\",\n {\n variants: {\n variant: {\n current: \"bg-primary text-primary-foreground\",\n previous: \"bg-muted text-muted-foreground\",\n selected: \"bg-accent text-accent-foreground border border-ring\",\n },\n size: {\n sm: \"text-xs px-1.5 py-0\",\n default: \"text-xs px-2 py-0.5\",\n lg: \"text-sm px-2.5 py-1\",\n },\n },\n defaultVariants: {\n variant: \"previous\",\n size: \"default\",\n },\n }\n)\n\n/**\n * Diff line variants\n */\nexport const diffLineVariants = cva(\n \"flex font-mono leading-6 px-4\",\n {\n variants: {\n type: {\n addition: \"bg-success/10 text-success\",\n deletion: \"bg-destructive/10 text-destructive\",\n context: \"bg-transparent text-muted-foreground\",\n },\n size: {\n sm: \"text-xs leading-5 px-2\",\n default: \"text-sm leading-6 px-4\",\n lg: \"text-base leading-7 px-6\",\n },\n },\n defaultVariants: {\n type: \"context\",\n size: \"default\",\n },\n }\n)\n\n/**\n * Change indicator variants (additions/deletions)\n */\nexport const changeIndicatorVariants = cva(\n \"inline-flex items-center gap-1 text-xs font-medium\",\n {\n variants: {\n type: {\n addition: \"text-success\",\n deletion: \"text-destructive\",\n modification: \"text-warning\",\n },\n },\n defaultVariants: {\n type: \"addition\",\n },\n }\n)\n\n/**\n * Version timeline connector variants\n */\nexport const versionTimelineConnectorVariants = cva(\n \"absolute left-3 top-0 w-0.5 h-full -translate-x-1/2\",\n {\n variants: {\n status: {\n current: \"bg-primary\",\n previous: \"bg-muted-foreground/30\",\n },\n size: {\n sm: \"left-2\",\n default: \"left-3\",\n lg: \"left-4\",\n },\n },\n defaultVariants: {\n status: \"previous\",\n size: \"default\",\n },\n }\n)\n\n/**\n * Version timeline marker variants\n */\nexport const versionTimelineMarkerVariants = cva(\n \"absolute shrink-0 rounded-full border-2 transition-colors duration-200\",\n {\n variants: {\n status: {\n current: \"border-primary bg-primary ring-[3px] ring-primary/30\",\n previous: \"border-muted-foreground bg-background\",\n },\n size: {\n sm: \"h-2 w-2 left-1\",\n default: \"h-3 w-3 left-1.5\",\n lg: \"h-4 w-4 left-2\",\n },\n },\n defaultVariants: {\n status: \"previous\",\n size: \"default\",\n },\n }\n)\n\nexport type VersionControlVariantProps = VariantProps<typeof versionControlVariants>\nexport type VersionItemVariantProps = VariantProps<typeof versionItemVariants>\nexport type VersionBadgeVariantProps = VariantProps<typeof versionBadgeVariants>\nexport type DiffLineVariantProps = VariantProps<typeof diffLineVariants>\nexport type ChangeIndicatorVariantProps = VariantProps<typeof changeIndicatorVariants>\n","\"use client\"\n\nimport type {\n DiffLine,\n Version,\n VersionActionsProps,\n VersionControlProps,\n VersionDiffProps,\n VersionItemProps,\n VersionTimelineProps,\n} from \"./VersionControl.types\"\nimport type { KeyboardEvent, ReactNode } from \"react\"\n\nimport { Edit3, GitCompare, Loader2, Minus, Plus, RotateCcw } from \"lucide-react\"\nimport { useCallback, useState } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n changeIndicatorVariants,\n diffLineVariants,\n versionBadgeVariants,\n versionControlVariants,\n versionItemVariants,\n versionTimelineConnectorVariants,\n versionTimelineMarkerVariants,\n} from \"./VersionControl.variants\"\n\n/**\n * Format a date to a human-readable string\n */\nfunction formatTimestamp(date: Date): string {\n return date.toLocaleDateString(undefined, {\n day: \"numeric\",\n month: \"short\",\n year: \"numeric\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n })\n}\n\n/**\n * Format relative time\n */\nfunction formatRelativeTime(date: Date): string {\n const now = new Date()\n const diffMs = now.getTime() - date.getTime()\n const diffDays = Math.floor(diffMs / (1000 * 60 * 60 * 24))\n\n if (diffDays === 0) {\n const diffHours = Math.floor(diffMs / (1000 * 60 * 60))\n if (diffHours === 0) {\n const diffMinutes = Math.floor(diffMs / (1000 * 60))\n return diffMinutes <= 1 ? \"Just now\" : `${String(diffMinutes)} minutes ago`\n }\n return diffHours === 1 ? \"1 hour ago\" : `${String(diffHours)} hours ago`\n }\n if (diffDays === 1) return \"Yesterday\"\n if (diffDays < 7) return `${String(diffDays)} days ago`\n return formatTimestamp(date)\n}\n\n/**\n * VersionBadge component for displaying version labels\n */\nfunction VersionBadge({\n children,\n className,\n isCurrent = false,\n isSelected = false,\n size = \"default\",\n}: {\n children: ReactNode\n className?: string\n isCurrent?: boolean\n isSelected?: boolean\n size?: \"default\" | \"lg\" | \"sm\"\n}) {\n const variant = isCurrent ? \"current\" : isSelected ? \"selected\" : \"previous\"\n\n return (\n <span\n className={cn(versionBadgeVariants({ variant, size }), className)}\n data-slot=\"version-badge\"\n >\n {children}\n </span>\n )\n}\n\n/**\n * ChangeIndicator component for showing additions/deletions/modifications\n */\nfunction ChangeIndicator({\n additions = 0,\n deletions = 0,\n modifications = 0,\n className,\n}: {\n additions?: number\n className?: string\n deletions?: number\n modifications?: number\n}) {\n return (\n <div className={cn(\"flex items-center gap-2\", className)} data-slot=\"change-indicator\">\n {additions > 0 && (\n <span className={changeIndicatorVariants({ type: \"addition\" })}>\n <Plus className=\"h-3 w-3\" />\n {additions}\n </span>\n )}\n {deletions > 0 && (\n <span className={changeIndicatorVariants({ type: \"deletion\" })}>\n <Minus className=\"h-3 w-3\" />\n {deletions}\n </span>\n )}\n {modifications > 0 && (\n <span className={changeIndicatorVariants({ type: \"modification\" })}>\n <Edit3 className=\"h-3 w-3\" />\n {modifications}\n </span>\n )}\n </div>\n )\n}\n\n/**\n * VersionActions component for version action buttons\n */\nfunction VersionActions({\n version,\n allowRestore = true,\n onRestore,\n onCompare,\n isRestoring = false,\n className,\n ...props\n}: VersionActionsProps) {\n const handleRestore = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation()\n onRestore?.(version)\n },\n [version, onRestore]\n )\n\n const handleCompare = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation()\n onCompare?.(version)\n },\n [version, onCompare]\n )\n\n return (\n <div\n className={cn(\"flex items-center gap-1\", className)}\n data-slot=\"version-actions\"\n {...props}\n >\n {onCompare && (\n <button\n className={cn(\n \"inline-flex items-center gap-1.5 rounded-md px-2 py-1\",\n \"text-xs text-muted-foreground hover:text-foreground\",\n \"hover:bg-accent transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n )}\n aria-label={`Compare version ${version.label ?? version.id}`}\n type=\"button\"\n onClick={handleCompare}\n >\n <GitCompare className=\"h-3.5 w-3.5\" />\n <span className=\"hidden sm:inline\">Compare</span>\n </button>\n )}\n {allowRestore && onRestore && (\n <button\n className={cn(\n \"inline-flex items-center gap-1.5 rounded-md px-2 py-1\",\n \"text-xs text-muted-foreground hover:text-foreground\",\n \"hover:bg-accent transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\",\n \"disabled:opacity-50 disabled:pointer-events-none\"\n )}\n aria-label={`Restore to version ${version.label ?? version.id}`}\n disabled={isRestoring}\n type=\"button\"\n onClick={handleRestore}\n >\n {isRestoring ? (\n <Loader2 className=\"h-3.5 w-3.5 animate-spin\" />\n ) : (\n <RotateCcw className=\"h-3.5 w-3.5\" />\n )}\n <span className=\"hidden sm:inline\">Restore</span>\n </button>\n )}\n </div>\n )\n}\n\n/**\n * VersionItem component for displaying a single version entry\n */\nfunction VersionItem({\n version,\n isCurrent = false,\n isSelected = false,\n allowRestore = true,\n size = \"default\",\n onVersionClick,\n onRestore,\n onCompare,\n className,\n ...props\n}: VersionItemProps) {\n const handleClick = useCallback(() => {\n onVersionClick?.(version)\n }, [version, onVersionClick])\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault()\n onVersionClick?.(version)\n }\n if (event.key === \"r\" || event.key === \"R\") {\n event.preventDefault()\n onRestore?.(version)\n }\n if (event.key === \"c\" || event.key === \"C\") {\n event.preventDefault()\n onCompare?.(version)\n }\n },\n [version, onVersionClick, onRestore, onCompare]\n )\n\n const label = version.label ?? version.id\n\n return (\n <div\n className={cn(\n versionItemVariants({\n variant: \"list\",\n size,\n isCurrent,\n isSelected,\n }),\n className\n )}\n aria-current={isCurrent ? \"true\" : undefined}\n data-current={isCurrent ? \"\" : undefined}\n data-selected={isSelected ? \"\" : undefined}\n data-slot=\"version-item\"\n role=\"listitem\"\n tabIndex={0}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...props}\n >\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"flex items-center gap-2\">\n <VersionBadge isCurrent={isCurrent} isSelected={isSelected} size={size}>\n {label}\n </VersionBadge>\n {isCurrent && (\n <span className=\"text-xs text-muted-foreground\">(Current)</span>\n )}\n </div>\n\n <div className=\"flex items-center gap-2 text-xs text-muted-foreground\">\n {version.author && (\n <span data-slot=\"version-author\">{version.author.name}</span>\n )}\n <time\n data-slot=\"version-timestamp\"\n dateTime={version.timestamp.toISOString()}\n title={formatTimestamp(version.timestamp)}\n >\n {formatRelativeTime(version.timestamp)}\n </time>\n </div>\n\n {version.changes && (\n <ChangeIndicator\n additions={version.changes.additions}\n deletions={version.changes.deletions}\n modifications={version.changes.modifications}\n />\n )}\n </div>\n\n {(onRestore ?? onCompare) && !isCurrent && (\n <VersionActions\n allowRestore={allowRestore}\n version={version}\n onCompare={onCompare}\n onRestore={onRestore}\n />\n )}\n </div>\n )\n}\n\n/**\n * VersionList component for displaying versions in a list format\n */\nfunction VersionList({\n versions,\n currentVersionId,\n selectedVersionId,\n size = \"default\",\n allowRestore = true,\n onVersionSelect,\n onRestore,\n onCompare,\n className,\n}: {\n allowRestore?: boolean\n className?: string\n currentVersionId?: string\n onCompare?: (version: Version) => void\n onRestore?: (version: Version) => void\n onVersionSelect?: (version: Version) => void\n selectedVersionId?: string\n size?: \"default\" | \"lg\" | \"sm\"\n versions: Version[]\n}) {\n return (\n <div\n aria-label=\"Version history\"\n className={cn(\"flex flex-col gap-2\", className)}\n data-slot=\"version-list\"\n role=\"list\"\n >\n {versions.map((version) => (\n <VersionItem\n key={version.id}\n allowRestore={allowRestore && version.id !== currentVersionId}\n isCurrent={version.id === currentVersionId}\n isSelected={version.id === selectedVersionId}\n size={size}\n version={version}\n onCompare={onCompare}\n onRestore={onRestore}\n onVersionClick={onVersionSelect}\n />\n ))}\n </div>\n )\n}\n\n/**\n * VersionTimeline component for displaying versions in a timeline format\n */\nfunction VersionTimeline({\n versions,\n currentVersionId,\n size = \"default\",\n onVersionSelect,\n className,\n ...props\n}: VersionTimelineProps) {\n return (\n <div\n aria-label=\"Version timeline\"\n className={cn(\"relative flex flex-col gap-4 pl-6\", className)}\n data-slot=\"version-timeline\"\n role=\"list\"\n {...props}\n >\n {versions.map((version, index) => {\n const isCurrent = version.id === currentVersionId\n const isLast = index === versions.length - 1\n\n return (\n <div\n key={version.id}\n className=\"relative flex items-start gap-3\"\n data-slot=\"timeline-item\"\n role=\"listitem\"\n >\n {/* Connector line */}\n {!isLast && (\n <div\n className={versionTimelineConnectorVariants({\n status: isCurrent ? \"current\" : \"previous\",\n size,\n })}\n aria-hidden=\"true\"\n data-slot=\"timeline-connector\"\n style={{ top: \"var(--spacing-4)\", height: \"calc(100% + var(--spacing-4))\" }}\n />\n )}\n\n {/* Marker */}\n <div\n className={cn(\n versionTimelineMarkerVariants({\n status: isCurrent ? \"current\" : \"previous\",\n size,\n }),\n \"top-1\"\n )}\n aria-hidden=\"true\"\n data-slot=\"timeline-marker\"\n />\n\n {/* Content */}\n <button\n className={cn(\n \"flex flex-1 flex-col gap-1 text-left\",\n \"rounded-md p-2 -ml-1\",\n \"hover:bg-accent/50 transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\",\n isCurrent && \"bg-primary/5\"\n )}\n aria-current={isCurrent ? \"true\" : undefined}\n type=\"button\"\n onClick={() => onVersionSelect?.(version)}\n >\n <div className=\"flex items-center gap-2\">\n <VersionBadge isCurrent={isCurrent} size={size}>\n {version.label ?? version.id}\n </VersionBadge>\n {isCurrent && (\n <span className=\"text-xs text-muted-foreground\">(Current)</span>\n )}\n </div>\n\n <div className=\"flex items-center gap-2 text-xs text-muted-foreground\">\n {version.author && <span>{version.author.name}</span>}\n <time dateTime={version.timestamp.toISOString()}>\n {formatRelativeTime(version.timestamp)}\n </time>\n </div>\n\n {version.changes && (\n <ChangeIndicator\n additions={version.changes.additions}\n deletions={version.changes.deletions}\n modifications={version.changes.modifications}\n />\n )}\n </button>\n </div>\n )\n })}\n </div>\n )\n}\n\n/**\n * DiffLineNumber component for rendering line numbers\n */\nfunction DiffLineNumber({\n old,\n new: newNum,\n size = \"default\",\n}: {\n new?: number\n old?: number\n size?: \"default\" | \"lg\" | \"sm\"\n}) {\n const widthClass = size === \"sm\" ? \"w-8\" : size === \"lg\" ? \"w-12\" : \"w-10\"\n\n return (\n <div\n className={cn(\n \"flex shrink-0 select-none gap-1 text-muted-foreground/50\",\n size === \"sm\" ? \"text-xs\" : size === \"lg\" ? \"text-sm\" : \"text-xs\"\n )}\n data-slot=\"diff-line-number\"\n >\n <span className={cn(widthClass, \"text-right\")}>{old ?? \"\"}</span>\n <span className={cn(widthClass, \"text-right\")}>{newNum ?? \"\"}</span>\n </div>\n )\n}\n\n/**\n * VersionDiff component for displaying diff between versions\n */\nfunction VersionDiff({\n oldVersion,\n newVersion,\n lines,\n isLoading = false,\n className,\n ...props\n}: VersionDiffProps) {\n if (isLoading) {\n return (\n <div\n className={cn(\n \"flex items-center justify-center p-8 text-muted-foreground\",\n className\n )}\n data-slot=\"version-diff\"\n {...props}\n >\n <Loader2 className=\"h-6 w-6 animate-spin mr-2\" />\n <span>Loading diff...</span>\n </div>\n )\n }\n\n if (lines.length === 0) {\n return (\n <div\n className={cn(\n \"flex items-center justify-center p-8 text-muted-foreground\",\n className\n )}\n data-slot=\"version-diff\"\n {...props}\n >\n <span>No changes between versions</span>\n </div>\n )\n }\n\n return (\n <div\n aria-label={`Diff between ${oldVersion.label ?? oldVersion.id} and ${newVersion.label ?? newVersion.id}`}\n className={cn(\"rounded-md border border-border overflow-hidden\", className)}\n data-slot=\"version-diff\"\n role=\"region\"\n {...props}\n >\n {/* Diff header */}\n <div className=\"flex items-center justify-between border-b border-border bg-muted/50 px-4 py-2\">\n <div className=\"flex items-center gap-2 text-sm\">\n <VersionBadge>{oldVersion.label ?? oldVersion.id}</VersionBadge>\n <span className=\"text-muted-foreground\">vs</span>\n <VersionBadge>{newVersion.label ?? newVersion.id}</VersionBadge>\n </div>\n </div>\n\n {/* Diff content */}\n <div className=\"overflow-x-auto\" data-slot=\"diff-content\">\n <pre className=\"min-w-full\">\n {lines.map((line, index) => (\n <div\n // eslint-disable-next-line @eslint-react/no-array-index-key -- diff lines can have duplicate content, index is appropriate\n key={index}\n className={diffLineVariants({ type: line.type })}\n data-slot=\"diff-line\"\n data-type={line.type}\n >\n <DiffLineNumber\n new={line.lineNumber.new}\n old={line.lineNumber.old}\n />\n <span className=\"flex-1 whitespace-pre-wrap break-all\">\n {line.type === \"addition\" && \"+ \"}\n {line.type === \"deletion\" && \"- \"}\n {line.type === \"context\" && \" \"}\n {line.content}\n </span>\n </div>\n ))}\n </pre>\n </div>\n </div>\n )\n}\n\n/**\n * VersionControl component for displaying and managing version history.\n *\n * @example\n * ```tsx\n * const versions = [\n * { id: \"v3\", timestamp: new Date(), author: { id: \"1\", name: \"John\" } },\n * { id: \"v2\", timestamp: new Date(Date.now() - 86400000), author: { id: \"1\", name: \"John\" } },\n * ]\n * <VersionControl\n * versions={versions}\n * currentVersionId=\"v3\"\n * onVersionSelect={(v) => console.log(\"Selected:\", v)}\n * onRestore={async (v) => await restoreVersion(v.id)}\n * />\n * ```\n */\nfunction VersionControl({\n versions,\n currentVersionId,\n onVersionSelect,\n onRestore,\n onCompare,\n showDiff = true,\n showTimeline = false,\n allowRestore = true,\n maxVersions,\n getDiff,\n emptyContent,\n isLoading = false,\n variant = \"list\",\n size = \"default\",\n className,\n ...props\n}: VersionControlProps) {\n const [selectedVersionId, setSelectedVersionId] = useState<string | undefined>()\n const [compareVersion, setCompareVersion] = useState<undefined | Version>()\n const [diffLines, setDiffLines] = useState<DiffLine[]>([])\n const [isDiffLoading, setIsDiffLoading] = useState(false)\n\n // Limit versions if maxVersions is set\n const displayVersions = maxVersions\n ? versions.slice(0, maxVersions)\n : versions\n\n // Handle version selection\n const handleVersionSelect = useCallback(\n (version: Version) => {\n setSelectedVersionId(version.id)\n onVersionSelect?.(version)\n },\n [onVersionSelect]\n )\n\n // Handle compare action (async wrapped for event handler compatibility)\n const handleCompare = useCallback(\n (version: Version) => {\n if (!currentVersionId || !getDiff) return\n\n const currentVersion = versions.find((v) => v.id === currentVersionId)\n if (!currentVersion) return\n\n setCompareVersion(version)\n setIsDiffLoading(true)\n\n void (async () => {\n try {\n const lines = await getDiff(version, currentVersion)\n setDiffLines(lines)\n } catch (error) {\n console.error(\"Failed to load diff:\", error)\n setDiffLines([])\n } finally {\n setIsDiffLoading(false)\n }\n })()\n\n onCompare?.(version, currentVersion)\n },\n [currentVersionId, versions, getDiff, onCompare]\n )\n\n // Handle restore action (async wrapped for event handler compatibility)\n const handleRestore = useCallback(\n (version: Version) => {\n if (!onRestore) return\n void onRestore(version)\n },\n [onRestore]\n )\n\n // Loading state\n if (isLoading) {\n return (\n <div\n className={cn(\n versionControlVariants({ variant, size }),\n \"items-center justify-center p-8\",\n className\n )}\n data-loading=\"\"\n data-slot=\"version-control\"\n {...props}\n >\n <Loader2 className=\"h-6 w-6 animate-spin text-muted-foreground\" />\n <span className=\"text-muted-foreground\">Loading versions...</span>\n </div>\n )\n }\n\n // Empty state\n if (versions.length === 0) {\n return (\n <div\n className={cn(\n versionControlVariants({ variant, size }),\n \"items-center justify-center p-8\",\n className\n )}\n data-empty=\"\"\n data-slot=\"version-control\"\n {...props}\n >\n {emptyContent ?? (\n <span className=\"text-muted-foreground\">No versions available</span>\n )}\n </div>\n )\n }\n\n // Get current version for diff display\n const currentVersion = versions.find((v) => v.id === currentVersionId)\n\n return (\n <div\n className={cn(versionControlVariants({ variant, size }), className)}\n data-slot=\"version-control\"\n data-variant={variant}\n {...props}\n >\n {/* Version list or timeline */}\n {showTimeline ? (\n <VersionTimeline\n currentVersionId={currentVersionId}\n size={size ?? undefined}\n versions={displayVersions}\n onVersionSelect={handleVersionSelect}\n />\n ) : (\n <VersionList\n allowRestore={allowRestore}\n currentVersionId={currentVersionId}\n selectedVersionId={selectedVersionId}\n size={size ?? undefined}\n versions={displayVersions}\n onCompare={getDiff ? handleCompare : undefined}\n onRestore={handleRestore}\n onVersionSelect={handleVersionSelect}\n />\n )}\n\n {/* Diff view */}\n {showDiff && compareVersion && currentVersion && (\n <VersionDiff\n className=\"mt-4\"\n isLoading={isDiffLoading}\n lines={diffLines}\n newVersion={currentVersion}\n oldVersion={compareVersion}\n />\n )}\n </div>\n )\n}\n\nVersionControl.displayName = \"VersionControl\"\n\nexport {\n ChangeIndicator,\n VersionActions,\n VersionBadge,\n VersionControl,\n VersionDiff,\n VersionItem,\n VersionList,\n VersionTimeline,\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/advanced/VersionControl/VersionControl.variants.ts","../src/components/advanced/VersionControl/VersionControl.tsx"],"names":["currentVersion"],"mappings":"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","file":"chunk-FRKB4Z2P.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * VersionControl container variants\n */\nexport const versionControlVariants = cva(\n \"flex flex-col transition-colors duration-200\",\n {\n variants: {\n variant: {\n list: \"gap-2\",\n timeline: \"gap-4\",\n compact: \"gap-1\",\n diff: \"gap-0\",\n },\n size: {\n sm: \"text-xs\",\n default: \"text-sm\",\n lg: \"text-base\",\n },\n },\n defaultVariants: {\n variant: \"list\",\n size: \"default\",\n },\n }\n)\n\n/**\n * VersionItem variants\n */\nexport const versionItemVariants = cva(\n [\n \"relative flex gap-3 rounded-md p-3\",\n \"transition-colors duration-200\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n \"cursor-pointer hover:bg-accent/50\",\n ],\n {\n variants: {\n variant: {\n list: \"flex-row items-start border border-transparent\",\n timeline: \"flex-row items-start pl-8\",\n compact: \"flex-row items-center py-2\",\n diff: \"flex-col border-b border-border last:border-b-0\",\n },\n size: {\n sm: \"p-2 gap-2\",\n default: \"p-3 gap-3\",\n lg: \"p-4 gap-4\",\n },\n isCurrent: {\n true: \"border-primary bg-primary/5\",\n false: \"\",\n },\n isSelected: {\n true: \"bg-accent ring-1 ring-ring\",\n false: \"\",\n },\n },\n compoundVariants: [\n {\n isCurrent: true,\n variant: \"list\",\n className: \"border-primary\",\n },\n {\n isCurrent: true,\n variant: \"timeline\",\n className: \"bg-primary/5\",\n },\n ],\n defaultVariants: {\n variant: \"list\",\n size: \"default\",\n isCurrent: false,\n isSelected: false,\n },\n }\n)\n\n/**\n * Version badge/label variants\n */\nexport const versionBadgeVariants = cva(\n \"inline-flex items-center rounded-md px-2 py-0.5 font-mono font-medium\",\n {\n variants: {\n variant: {\n current: \"bg-primary text-primary-foreground\",\n previous: \"bg-muted text-muted-foreground\",\n selected: \"bg-accent text-accent-foreground border border-ring\",\n },\n size: {\n sm: \"text-xs px-1.5 py-0\",\n default: \"text-xs px-2 py-0.5\",\n lg: \"text-sm px-2.5 py-1\",\n },\n },\n defaultVariants: {\n variant: \"previous\",\n size: \"default\",\n },\n }\n)\n\n/**\n * Diff line variants\n */\nexport const diffLineVariants = cva(\n \"flex font-mono leading-6 px-4\",\n {\n variants: {\n type: {\n addition: \"bg-success/10 text-success\",\n deletion: \"bg-destructive/10 text-destructive\",\n context: \"bg-transparent text-muted-foreground\",\n },\n size: {\n sm: \"text-xs leading-5 px-2\",\n default: \"text-sm leading-6 px-4\",\n lg: \"text-base leading-7 px-6\",\n },\n },\n defaultVariants: {\n type: \"context\",\n size: \"default\",\n },\n }\n)\n\n/**\n * Change indicator variants (additions/deletions)\n */\nexport const changeIndicatorVariants = cva(\n \"inline-flex items-center gap-1 text-xs font-medium\",\n {\n variants: {\n type: {\n addition: \"text-success\",\n deletion: \"text-destructive\",\n modification: \"text-warning\",\n },\n },\n defaultVariants: {\n type: \"addition\",\n },\n }\n)\n\n/**\n * Version timeline connector variants\n */\nexport const versionTimelineConnectorVariants = cva(\n \"absolute left-3 top-0 w-0.5 h-full -translate-x-1/2\",\n {\n variants: {\n status: {\n current: \"bg-primary\",\n previous: \"bg-muted-foreground/30\",\n },\n size: {\n sm: \"left-2\",\n default: \"left-3\",\n lg: \"left-4\",\n },\n },\n defaultVariants: {\n status: \"previous\",\n size: \"default\",\n },\n }\n)\n\n/**\n * Version timeline marker variants\n */\nexport const versionTimelineMarkerVariants = cva(\n \"absolute shrink-0 rounded-full border-2 transition-colors duration-200\",\n {\n variants: {\n status: {\n current: \"border-primary bg-primary ring-[3px] ring-primary/30\",\n previous: \"border-muted-foreground bg-background\",\n },\n size: {\n sm: \"h-2 w-2 left-1\",\n default: \"h-3 w-3 left-1.5\",\n lg: \"h-4 w-4 left-2\",\n },\n },\n defaultVariants: {\n status: \"previous\",\n size: \"default\",\n },\n }\n)\n\nexport type VersionControlVariantProps = VariantProps<typeof versionControlVariants>\nexport type VersionItemVariantProps = VariantProps<typeof versionItemVariants>\nexport type VersionBadgeVariantProps = VariantProps<typeof versionBadgeVariants>\nexport type DiffLineVariantProps = VariantProps<typeof diffLineVariants>\nexport type ChangeIndicatorVariantProps = VariantProps<typeof changeIndicatorVariants>\n","\"use client\"\n\nimport type {\n DiffLine,\n Version,\n VersionActionsProps,\n VersionControlProps,\n VersionDiffProps,\n VersionItemProps,\n VersionTimelineProps,\n} from \"./VersionControl.types\"\nimport type { KeyboardEvent, ReactNode } from \"react\"\n\nimport { Edit3, GitCompare, Loader2, Minus, Plus, RotateCcw } from \"lucide-react\"\nimport { useCallback, useState } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n changeIndicatorVariants,\n diffLineVariants,\n versionBadgeVariants,\n versionControlVariants,\n versionItemVariants,\n versionTimelineConnectorVariants,\n versionTimelineMarkerVariants,\n} from \"./VersionControl.variants\"\n\n/**\n * Format a date to a human-readable string\n */\nfunction formatTimestamp(date: Date): string {\n return date.toLocaleDateString(undefined, {\n day: \"numeric\",\n month: \"short\",\n year: \"numeric\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n })\n}\n\n/**\n * Format relative time\n */\nfunction formatRelativeTime(date: Date): string {\n const now = new Date()\n const diffMs = now.getTime() - date.getTime()\n const diffDays = Math.floor(diffMs / (1000 * 60 * 60 * 24))\n\n if (diffDays === 0) {\n const diffHours = Math.floor(diffMs / (1000 * 60 * 60))\n if (diffHours === 0) {\n const diffMinutes = Math.floor(diffMs / (1000 * 60))\n return diffMinutes <= 1 ? \"Just now\" : `${String(diffMinutes)} minutes ago`\n }\n return diffHours === 1 ? \"1 hour ago\" : `${String(diffHours)} hours ago`\n }\n if (diffDays === 1) return \"Yesterday\"\n if (diffDays < 7) return `${String(diffDays)} days ago`\n return formatTimestamp(date)\n}\n\n/**\n * VersionBadge component for displaying version labels\n */\nfunction VersionBadge({\n children,\n className,\n isCurrent = false,\n isSelected = false,\n size = \"default\",\n}: {\n children: ReactNode\n className?: string\n isCurrent?: boolean\n isSelected?: boolean\n size?: \"default\" | \"lg\" | \"sm\"\n}) {\n const variant = isCurrent ? \"current\" : isSelected ? \"selected\" : \"previous\"\n\n return (\n <span\n className={cn(versionBadgeVariants({ variant, size }), className)}\n data-slot=\"version-badge\"\n >\n {children}\n </span>\n )\n}\n\n/**\n * ChangeIndicator component for showing additions/deletions/modifications\n */\nfunction ChangeIndicator({\n additions = 0,\n deletions = 0,\n modifications = 0,\n className,\n}: {\n additions?: number\n className?: string\n deletions?: number\n modifications?: number\n}) {\n return (\n <div className={cn(\"flex items-center gap-2\", className)} data-slot=\"change-indicator\">\n {additions > 0 && (\n <span className={changeIndicatorVariants({ type: \"addition\" })}>\n <Plus className=\"h-3 w-3\" />\n {additions}\n </span>\n )}\n {deletions > 0 && (\n <span className={changeIndicatorVariants({ type: \"deletion\" })}>\n <Minus className=\"h-3 w-3\" />\n {deletions}\n </span>\n )}\n {modifications > 0 && (\n <span className={changeIndicatorVariants({ type: \"modification\" })}>\n <Edit3 className=\"h-3 w-3\" />\n {modifications}\n </span>\n )}\n </div>\n )\n}\n\n/**\n * VersionActions component for version action buttons\n */\nfunction VersionActions({\n version,\n allowRestore = true,\n onRestore,\n onCompare,\n isRestoring = false,\n className,\n ...props\n}: VersionActionsProps) {\n const handleRestore = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation()\n onRestore?.(version)\n },\n [version, onRestore]\n )\n\n const handleCompare = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation()\n onCompare?.(version)\n },\n [version, onCompare]\n )\n\n return (\n <div\n className={cn(\"flex items-center gap-1\", className)}\n data-slot=\"version-actions\"\n {...props}\n >\n {onCompare && (\n <button\n className={cn(\n \"inline-flex items-center gap-1.5 rounded-md px-2 py-1\",\n \"text-xs text-muted-foreground hover:text-foreground\",\n \"hover:bg-accent transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n )}\n aria-label={`Compare version ${version.label ?? version.id}`}\n type=\"button\"\n onClick={handleCompare}\n >\n <GitCompare className=\"h-3.5 w-3.5\" />\n <span className=\"hidden sm:inline\">Compare</span>\n </button>\n )}\n {allowRestore && onRestore && (\n <button\n className={cn(\n \"inline-flex items-center gap-1.5 rounded-md px-2 py-1\",\n \"text-xs text-muted-foreground hover:text-foreground\",\n \"hover:bg-accent transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\",\n \"disabled:opacity-50 disabled:pointer-events-none\"\n )}\n aria-label={`Restore to version ${version.label ?? version.id}`}\n disabled={isRestoring}\n type=\"button\"\n onClick={handleRestore}\n >\n {isRestoring ? (\n <Loader2 className=\"h-3.5 w-3.5 animate-spin\" />\n ) : (\n <RotateCcw className=\"h-3.5 w-3.5\" />\n )}\n <span className=\"hidden sm:inline\">Restore</span>\n </button>\n )}\n </div>\n )\n}\n\n/**\n * VersionItem component for displaying a single version entry\n */\nfunction VersionItem({\n version,\n isCurrent = false,\n isSelected = false,\n allowRestore = true,\n size = \"default\",\n onVersionClick,\n onRestore,\n onCompare,\n className,\n ...props\n}: VersionItemProps) {\n const handleClick = useCallback(() => {\n onVersionClick?.(version)\n }, [version, onVersionClick])\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault()\n onVersionClick?.(version)\n }\n if (event.key === \"r\" || event.key === \"R\") {\n event.preventDefault()\n onRestore?.(version)\n }\n if (event.key === \"c\" || event.key === \"C\") {\n event.preventDefault()\n onCompare?.(version)\n }\n },\n [version, onVersionClick, onRestore, onCompare]\n )\n\n const label = version.label ?? version.id\n\n return (\n <div\n className={cn(\n versionItemVariants({\n variant: \"list\",\n size,\n isCurrent,\n isSelected,\n }),\n className\n )}\n aria-current={isCurrent ? \"true\" : undefined}\n data-current={isCurrent ? \"\" : undefined}\n data-selected={isSelected ? \"\" : undefined}\n data-slot=\"version-item\"\n role=\"listitem\"\n tabIndex={0}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...props}\n >\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"flex items-center gap-2\">\n <VersionBadge isCurrent={isCurrent} isSelected={isSelected} size={size}>\n {label}\n </VersionBadge>\n {isCurrent && (\n <span className=\"text-xs text-muted-foreground\">(Current)</span>\n )}\n </div>\n\n <div className=\"flex items-center gap-2 text-xs text-muted-foreground\">\n {version.author && (\n <span data-slot=\"version-author\">{version.author.name}</span>\n )}\n <time\n data-slot=\"version-timestamp\"\n dateTime={version.timestamp.toISOString()}\n title={formatTimestamp(version.timestamp)}\n >\n {formatRelativeTime(version.timestamp)}\n </time>\n </div>\n\n {version.changes && (\n <ChangeIndicator\n additions={version.changes.additions}\n deletions={version.changes.deletions}\n modifications={version.changes.modifications}\n />\n )}\n </div>\n\n {(onRestore ?? onCompare) && !isCurrent && (\n <VersionActions\n allowRestore={allowRestore}\n version={version}\n onCompare={onCompare}\n onRestore={onRestore}\n />\n )}\n </div>\n )\n}\n\n/**\n * VersionList component for displaying versions in a list format\n */\nfunction VersionList({\n versions,\n currentVersionId,\n selectedVersionId,\n size = \"default\",\n allowRestore = true,\n onVersionSelect,\n onRestore,\n onCompare,\n className,\n}: {\n allowRestore?: boolean\n className?: string\n currentVersionId?: string\n onCompare?: (version: Version) => void\n onRestore?: (version: Version) => void\n onVersionSelect?: (version: Version) => void\n selectedVersionId?: string\n size?: \"default\" | \"lg\" | \"sm\"\n versions: Version[]\n}) {\n return (\n <div\n aria-label=\"Version history\"\n className={cn(\"flex flex-col gap-2\", className)}\n data-slot=\"version-list\"\n role=\"list\"\n >\n {versions.map((version) => (\n <VersionItem\n key={version.id}\n allowRestore={allowRestore && version.id !== currentVersionId}\n isCurrent={version.id === currentVersionId}\n isSelected={version.id === selectedVersionId}\n size={size}\n version={version}\n onCompare={onCompare}\n onRestore={onRestore}\n onVersionClick={onVersionSelect}\n />\n ))}\n </div>\n )\n}\n\n/**\n * VersionTimeline component for displaying versions in a timeline format\n */\nfunction VersionTimeline({\n versions,\n currentVersionId,\n size = \"default\",\n onVersionSelect,\n className,\n ...props\n}: VersionTimelineProps) {\n return (\n <div\n aria-label=\"Version timeline\"\n className={cn(\"relative flex flex-col gap-4 pl-6\", className)}\n data-slot=\"version-timeline\"\n role=\"list\"\n {...props}\n >\n {versions.map((version, index) => {\n const isCurrent = version.id === currentVersionId\n const isLast = index === versions.length - 1\n\n return (\n <div\n key={version.id}\n className=\"relative flex items-start gap-3\"\n data-slot=\"timeline-item\"\n role=\"listitem\"\n >\n {/* Connector line */}\n {!isLast && (\n <div\n className={versionTimelineConnectorVariants({\n status: isCurrent ? \"current\" : \"previous\",\n size,\n })}\n aria-hidden=\"true\"\n data-slot=\"timeline-connector\"\n style={{ top: \"var(--spacing-4)\", height: \"calc(100% + var(--spacing-4))\" }}\n />\n )}\n\n {/* Marker */}\n <div\n className={cn(\n versionTimelineMarkerVariants({\n status: isCurrent ? \"current\" : \"previous\",\n size,\n }),\n \"top-1\"\n )}\n aria-hidden=\"true\"\n data-slot=\"timeline-marker\"\n />\n\n {/* Content */}\n <button\n className={cn(\n \"flex flex-1 flex-col gap-1 text-left\",\n \"rounded-md p-2 -ml-1\",\n \"hover:bg-accent/50 transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\",\n isCurrent && \"bg-primary/5\"\n )}\n aria-current={isCurrent ? \"true\" : undefined}\n type=\"button\"\n onClick={() => onVersionSelect?.(version)}\n >\n <div className=\"flex items-center gap-2\">\n <VersionBadge isCurrent={isCurrent} size={size}>\n {version.label ?? version.id}\n </VersionBadge>\n {isCurrent && (\n <span className=\"text-xs text-muted-foreground\">(Current)</span>\n )}\n </div>\n\n <div className=\"flex items-center gap-2 text-xs text-muted-foreground\">\n {version.author && <span>{version.author.name}</span>}\n <time dateTime={version.timestamp.toISOString()}>\n {formatRelativeTime(version.timestamp)}\n </time>\n </div>\n\n {version.changes && (\n <ChangeIndicator\n additions={version.changes.additions}\n deletions={version.changes.deletions}\n modifications={version.changes.modifications}\n />\n )}\n </button>\n </div>\n )\n })}\n </div>\n )\n}\n\n/**\n * DiffLineNumber component for rendering line numbers\n */\nfunction DiffLineNumber({\n old,\n new: newNum,\n size = \"default\",\n}: {\n new?: number\n old?: number\n size?: \"default\" | \"lg\" | \"sm\"\n}) {\n const widthClass = size === \"sm\" ? \"w-8\" : size === \"lg\" ? \"w-12\" : \"w-10\"\n\n return (\n <div\n className={cn(\n \"flex shrink-0 select-none gap-1 text-muted-foreground/50\",\n size === \"sm\" ? \"text-xs\" : size === \"lg\" ? \"text-sm\" : \"text-xs\"\n )}\n data-slot=\"diff-line-number\"\n >\n <span className={cn(widthClass, \"text-right\")}>{old ?? \"\"}</span>\n <span className={cn(widthClass, \"text-right\")}>{newNum ?? \"\"}</span>\n </div>\n )\n}\n\n/**\n * VersionDiff component for displaying diff between versions\n */\nfunction VersionDiff({\n oldVersion,\n newVersion,\n lines,\n isLoading = false,\n className,\n ...props\n}: VersionDiffProps) {\n if (isLoading) {\n return (\n <div\n className={cn(\n \"flex items-center justify-center p-8 text-muted-foreground\",\n className\n )}\n data-slot=\"version-diff\"\n {...props}\n >\n <Loader2 className=\"h-6 w-6 animate-spin mr-2\" />\n <span>Loading diff...</span>\n </div>\n )\n }\n\n if (lines.length === 0) {\n return (\n <div\n className={cn(\n \"flex items-center justify-center p-8 text-muted-foreground\",\n className\n )}\n data-slot=\"version-diff\"\n {...props}\n >\n <span>No changes between versions</span>\n </div>\n )\n }\n\n return (\n <div\n aria-label={`Diff between ${oldVersion.label ?? oldVersion.id} and ${newVersion.label ?? newVersion.id}`}\n className={cn(\"rounded-md border border-border overflow-hidden\", className)}\n data-slot=\"version-diff\"\n role=\"region\"\n {...props}\n >\n {/* Diff header */}\n <div className=\"flex items-center justify-between border-b border-border bg-muted/50 px-4 py-2\">\n <div className=\"flex items-center gap-2 text-sm\">\n <VersionBadge>{oldVersion.label ?? oldVersion.id}</VersionBadge>\n <span className=\"text-muted-foreground\">vs</span>\n <VersionBadge>{newVersion.label ?? newVersion.id}</VersionBadge>\n </div>\n </div>\n\n {/* Diff content */}\n <div className=\"overflow-x-auto\" data-slot=\"diff-content\">\n <pre className=\"min-w-full\">\n {lines.map((line, index) => (\n <div\n // eslint-disable-next-line @eslint-react/no-array-index-key -- diff lines can have duplicate content, index is appropriate\n key={index}\n className={diffLineVariants({ type: line.type })}\n data-slot=\"diff-line\"\n data-type={line.type}\n >\n <DiffLineNumber\n new={line.lineNumber.new}\n old={line.lineNumber.old}\n />\n <span className=\"flex-1 whitespace-pre-wrap break-all\">\n {line.type === \"addition\" && \"+ \"}\n {line.type === \"deletion\" && \"- \"}\n {line.type === \"context\" && \" \"}\n {line.content}\n </span>\n </div>\n ))}\n </pre>\n </div>\n </div>\n )\n}\n\n/**\n * VersionControl component for displaying and managing version history.\n *\n * @example\n * ```tsx\n * const versions = [\n * { id: \"v3\", timestamp: new Date(), author: { id: \"1\", name: \"John\" } },\n * { id: \"v2\", timestamp: new Date(Date.now() - 86400000), author: { id: \"1\", name: \"John\" } },\n * ]\n * <VersionControl\n * versions={versions}\n * currentVersionId=\"v3\"\n * onVersionSelect={(v) => console.log(\"Selected:\", v)}\n * onRestore={async (v) => await restoreVersion(v.id)}\n * />\n * ```\n */\nfunction VersionControl({\n versions,\n currentVersionId,\n onVersionSelect,\n onRestore,\n onCompare,\n showDiff = true,\n showTimeline = false,\n allowRestore = true,\n maxVersions,\n getDiff,\n emptyContent,\n isLoading = false,\n variant = \"list\",\n size = \"default\",\n className,\n ...props\n}: VersionControlProps) {\n const [selectedVersionId, setSelectedVersionId] = useState<string | undefined>()\n const [compareVersion, setCompareVersion] = useState<undefined | Version>()\n const [diffLines, setDiffLines] = useState<DiffLine[]>([])\n const [isDiffLoading, setIsDiffLoading] = useState(false)\n\n // Limit versions if maxVersions is set\n const displayVersions = maxVersions\n ? versions.slice(0, maxVersions)\n : versions\n\n // Handle version selection\n const handleVersionSelect = useCallback(\n (version: Version) => {\n setSelectedVersionId(version.id)\n onVersionSelect?.(version)\n },\n [onVersionSelect]\n )\n\n // Handle compare action (async wrapped for event handler compatibility)\n const handleCompare = useCallback(\n (version: Version) => {\n if (!currentVersionId || !getDiff) return\n\n const currentVersion = versions.find((v) => v.id === currentVersionId)\n if (!currentVersion) return\n\n setCompareVersion(version)\n setIsDiffLoading(true)\n\n void (async () => {\n try {\n const lines = await getDiff(version, currentVersion)\n setDiffLines(lines)\n } catch (error) {\n console.error(\"Failed to load diff:\", error)\n setDiffLines([])\n } finally {\n setIsDiffLoading(false)\n }\n })()\n\n onCompare?.(version, currentVersion)\n },\n [currentVersionId, versions, getDiff, onCompare]\n )\n\n // Handle restore action (async wrapped for event handler compatibility)\n const handleRestore = useCallback(\n (version: Version) => {\n if (!onRestore) return\n void onRestore(version)\n },\n [onRestore]\n )\n\n // Loading state\n if (isLoading) {\n return (\n <div\n className={cn(\n versionControlVariants({ variant, size }),\n \"items-center justify-center p-8\",\n className\n )}\n data-loading=\"\"\n data-slot=\"version-control\"\n {...props}\n >\n <Loader2 className=\"h-6 w-6 animate-spin text-muted-foreground\" />\n <span className=\"text-muted-foreground\">Loading versions...</span>\n </div>\n )\n }\n\n // Empty state\n if (versions.length === 0) {\n return (\n <div\n className={cn(\n versionControlVariants({ variant, size }),\n \"items-center justify-center p-8\",\n className\n )}\n data-empty=\"\"\n data-slot=\"version-control\"\n {...props}\n >\n {emptyContent ?? (\n <span className=\"text-muted-foreground\">No versions available</span>\n )}\n </div>\n )\n }\n\n // Get current version for diff display\n const currentVersion = versions.find((v) => v.id === currentVersionId)\n\n return (\n <div\n className={cn(versionControlVariants({ variant, size }), className)}\n data-slot=\"version-control\"\n data-variant={variant}\n {...props}\n >\n {/* Version list or timeline */}\n {showTimeline ? (\n <VersionTimeline\n currentVersionId={currentVersionId}\n size={size ?? undefined}\n versions={displayVersions}\n onVersionSelect={handleVersionSelect}\n />\n ) : (\n <VersionList\n allowRestore={allowRestore}\n currentVersionId={currentVersionId}\n selectedVersionId={selectedVersionId}\n size={size ?? undefined}\n versions={displayVersions}\n onCompare={getDiff ? handleCompare : undefined}\n onRestore={handleRestore}\n onVersionSelect={handleVersionSelect}\n />\n )}\n\n {/* Diff view */}\n {showDiff && compareVersion && currentVersion && (\n <VersionDiff\n className=\"mt-4\"\n isLoading={isDiffLoading}\n lines={diffLines}\n newVersion={currentVersion}\n oldVersion={compareVersion}\n />\n )}\n </div>\n )\n}\n\nVersionControl.displayName = \"VersionControl\"\n\nexport {\n ChangeIndicator,\n VersionActions,\n VersionBadge,\n VersionControl,\n VersionDiff,\n VersionItem,\n VersionList,\n VersionTimeline,\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
2
2
|
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
3
3
|
import { X } from 'lucide-react';
|
|
4
4
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
@@ -6,7 +6,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
6
6
|
var sizeClasses = {
|
|
7
7
|
"2xl": "sm:max-w-2xl",
|
|
8
8
|
full: "sm:max-w-[calc(100vw-4rem)]",
|
|
9
|
-
lg: "sm:max-w-
|
|
9
|
+
lg: "sm:max-w-[var(--modal-content-max-width)]",
|
|
10
10
|
md: "sm:max-w-md",
|
|
11
11
|
sm: "sm:max-w-sm",
|
|
12
12
|
xl: "sm:max-w-xl"
|
|
@@ -161,5 +161,5 @@ function Modal({
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
export { Modal };
|
|
164
|
-
//# sourceMappingURL=chunk-
|
|
165
|
-
//# sourceMappingURL=chunk-
|
|
164
|
+
//# sourceMappingURL=chunk-FVRSXJKS.js.map
|
|
165
|
+
//# sourceMappingURL=chunk-FVRSXJKS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/feedback/Modal/Modal.tsx"],"names":[],"mappings":";;;;;AAYA,IAAM,WAAA,GAAyC;AAAA,EAC7C,KAAA,EAAO,cAAA;AAAA,EACP,IAAA,EAAM,6BAAA;AAAA,EACN,EAAA,EAAI,2CAAA;AAAA,EACJ,EAAA,EAAI,aAAA;AAAA,EACJ,EAAA,EAAI,aAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAMA,IAAM,eAAA,GAA+C;AAAA,EACnD,OAAA,EACE,yGAAA;AAAA,EACF,WAAA,EACE,iHAAA;AAAA,EACF,OAAA,EACE;AACJ,CAAA;AAGA,IAAM,sBAAA,GAAyB,cAAA;AAC/B,IAAM,4BAAA,GAA+B,iDAAA;AACrC,IAAM,mBAAA,GAAsB,OAAA;AAgC5B,SAAS,KAAA,CAAM;AAAA,EACb,QAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA,GAAa,mBAAA;AAAA,EACb,aAAA,GAAgB,IAAA;AAAA,EAChB,mBAAA,GAAsB,IAAA;AAAA,EACtB,WAAA,GAAc,KAAA;AAAA,EACd,WAAA;AAAA,EACA,mBAAA,GAAsB,4BAAA;AAAA,EACtB,aAAA,GAAgB,sBAAA;AAAA,EAChB,MAAA;AAAA,EACA,IAAA;AAAA,EACA,MAAA,GAAS,SAAA;AAAA,EACT,YAAA;AAAA,EACA,IAAA;AAAA,EACA,gBAAA;AAAA,EACA,eAAA,GAAkB,IAAA;AAAA,EAClB,IAAA,GAAO,IAAA;AAAA,EACP,KAAA;AAAA,EACA;AACF,CAAA,EAAe;AACb,EAAA,MAAM,kBAAkB,KAAA,IAAS,aAAA;AACjC,EAAA,MAAM,wBAAwB,WAAA,IAAe,mBAAA;AAE7C,EAAA,MAAM,gBAAA,GAAmB,CAAC,OAAA,KAA2B;AACnD,IAAA,YAAA,GAAe,OAAO,CAAA;AAAA,EACxB,CAAA;AAEA,EAAA,MAAM,mBAAA,GAAsB,CAAC,KAAA,KAA+B;AAC1D,IAAA,IAAI,CAAC,aAAA,EAAe;AAClB,MAAA,KAAA,CAAM,cAAA,EAAe;AAAA,IACvB;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,qBAAA,GAAwB,CAC5B,KAAA,KACS;AACT,IAAA,IAAI,CAAC,mBAAA,EAAqB;AACxB,MAAA,KAAA,CAAM,cAAA,EAAe;AAAA,IACvB;AAAA,EACF,CAAA;AAEA,EAAA,uBACE,IAAA;AAAA,IAAiB,eAAA,CAAA,IAAA;AAAA,IAAhB;AAAA,MACC,WAAA;AAAA,MACA,IAAA;AAAA,MACA,YAAA,EAAc,gBAAA;AAAA,MAEb,QAAA,EAAA;AAAA,QAAA,OAAA,wBACkB,eAAA,CAAA,OAAA,EAAhB,EAAwB,SAAO,IAAA,EAAC,WAAA,EAAU,iBACxC,QAAA,EAAA,OAAA,EACH,CAAA;AAAA,wBAGF,IAAA,CAAiB,wBAAhB,EACC,QAAA,EAAA;AAAA,0BAAA,GAAA;AAAA,YAAiB,eAAA,CAAA,OAAA;AAAA,YAAhB;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,+KAAA;AAAA,gBACA;AAAA,eACF;AAAA,cACA,WAAA,EAAU;AAAA;AAAA,WACZ;AAAA,0BACA,IAAA;AAAA,YAAiB,eAAA,CAAA,OAAA;AAAA,YAAhB;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,oTAAA;AAAA,gBACA,0NAAA;AAAA,gBACA,YAAY,IAAI,CAAA;AAAA,gBAChB;AAAA,eACF;AAAA,cACA,WAAA,EAAU,OAAA;AAAA,cACV,eAAA,EAAiB,mBAAA;AAAA,cACjB,iBAAA,EAAmB,qBAAA;AAAA,cAGnB,QAAA,EAAA;AAAA,gCAAA,IAAA;AAAA,kBAAC,KAAA;AAAA,kBAAA;AAAA,oBACC,SAAA,EAAU,sEAAA;AAAA,oBACV,WAAA,EAAU,cAAA;AAAA,oBAET,QAAA,EAAA;AAAA,sBAAA,IAAA,oBACC,GAAA;AAAA,wBAAC,MAAA;AAAA,wBAAA;AAAA,0BACC,SAAA,EAAW,EAAA;AAAA,4BACT,qNAAA;AAAA,4BACA,gBAAgB,MAAM;AAAA,2BACxB;AAAA,0BACA,aAAA,EAAY,MAAA;AAAA,0BACZ,aAAA,EAAa,MAAA;AAAA,0BACb,WAAA,EAAU,iBAAA;AAAA,0BAET,QAAA,EAAA;AAAA;AAAA,uBACH;AAAA,sCAEF,GAAA;AAAA,wBAAiB,eAAA,CAAA,KAAA;AAAA,wBAAhB;AAAA,0BACC,SAAA,EAAW,EAAA;AAAA,4BACT,qCAAA;AAAA,4BACA,CAAC,KAAA,IAAS;AAAA,2BACZ;AAAA,0BACA,WAAA,EAAU,aAAA;AAAA,0BAET,QAAA,EAAA;AAAA;AAAA,uBACH;AAAA,sCACA,GAAA;AAAA,wBAAiB,eAAA,CAAA,WAAA;AAAA,wBAAhB;AAAA,0BACC,SAAA,EAAW,EAAA;AAAA,4BACT,+BAAA;AAAA,4BACA,CAAC,WAAA,IAAe;AAAA,2BAClB;AAAA,0BACA,WAAA,EAAU,mBAAA;AAAA,0BAET,QAAA,EAAA;AAAA;AAAA;AACH;AAAA;AAAA,iBACF;AAAA,gBAGC,QAAA,oBAAY,GAAA,CAAC,KAAA,EAAA,EAAI,WAAA,EAAU,iBAAiB,QAAA,EAAS,CAAA;AAAA,gBAGrD,MAAA,oBACC,GAAA;AAAA,kBAAC,KAAA;AAAA,kBAAA;AAAA,oBACC,SAAA,EAAU,gFAAA;AAAA,oBACV,WAAA,EAAU,cAAA;AAAA,oBAET,QAAA,EAAA;AAAA;AAAA,iBACH;AAAA,gBAID,eAAA,oBACC,IAAA;AAAA,kBAAiB,eAAA,CAAA,KAAA;AAAA,kBAAhB;AAAA,oBACC,SAAA,EAAU,mWAAA;AAAA,oBACV,WAAA,EAAU,aAAA;AAAA,oBAEV,QAAA,EAAA;AAAA,sCAAA,GAAA,CAAC,CAAA,EAAA,EAAE,CAAA;AAAA,sCACH,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAW,QAAA,EAAA,UAAA,EAAW;AAAA;AAAA;AAAA;AACxC;AAAA;AAAA;AAEJ,SAAA,EACF;AAAA;AAAA;AAAA,GACF;AAEJ","file":"chunk-FVRSXJKS.js","sourcesContent":["\"use client\"\n\nimport type { ModalIntent, ModalProps, ModalSize } from \"./Modal.types\"\n\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport { X } from \"lucide-react\"\n\nimport { cn } from \"../../../lib/utils\"\n\n/**\n * Size classes for modal widths\n */\nconst sizeClasses: Record<ModalSize, string> = {\n \"2xl\": \"sm:max-w-2xl\",\n full: \"sm:max-w-[calc(100vw-4rem)]\",\n lg: \"sm:max-w-[var(--modal-content-max-width)]\",\n md: \"sm:max-w-md\",\n sm: \"sm:max-w-sm\",\n xl: \"sm:max-w-xl\",\n}\n\n/**\n * Background/foreground classes for the header icon-pill per intent.\n * Reuses the semantic STATUS tokens exposed as `--modal-icon-pill-color-*`.\n */\nconst iconPillClasses: Record<ModalIntent, string> = {\n default:\n \"bg-[color:var(--modal-icon-pill-color-default-bg)] text-[color:var(--modal-icon-pill-color-default-fg)]\",\n destructive:\n \"bg-[color:var(--modal-icon-pill-color-destructive-bg)] text-[color:var(--modal-icon-pill-color-destructive-fg)]\",\n warning:\n \"bg-[color:var(--modal-icon-pill-color-warning-bg)] text-[color:var(--modal-icon-pill-color-warning-fg)]\",\n}\n\n// Default English fallbacks — override via props for i18n (DES-1286 item 7)\nconst DEFAULT_FALLBACK_TITLE = \"Modal dialog\"\nconst DEFAULT_FALLBACK_DESCRIPTION = \"Use this dialog to complete the current action.\"\nconst DEFAULT_CLOSE_LABEL = \"Close\"\n\n/**\n * Modal - Simplified wrapper over @radix-ui/react-dialog\n *\n * A declarative API for common modal use cases. Modal is NOT a wrapper over\n * Seven's Dialog component — both are sibling wrappers over the same Radix\n * primitive. Modal provides a simpler props-based interface than Dialog's\n * compound subcomponents while maintaining full accessibility.\n *\n * @example\n * ```tsx\n * // With trigger (uncontrolled)\n * <Modal\n * trigger={<Button>Open Modal</Button>}\n * title=\"Modal Title\"\n * description=\"Optional description\"\n * footer={<Button>Save</Button>}\n * >\n * <p>Modal content here</p>\n * </Modal>\n *\n * // Controlled\n * <Modal\n * open={isOpen}\n * onOpenChange={setIsOpen}\n * title=\"Controlled Modal\"\n * >\n * <p>Content</p>\n * </Modal>\n * ```\n */\nfunction Modal({\n children,\n className,\n closeLabel = DEFAULT_CLOSE_LABEL,\n closeOnEscape = true,\n closeOnOverlayClick = true,\n defaultOpen = false,\n description,\n fallbackDescription = DEFAULT_FALLBACK_DESCRIPTION,\n fallbackTitle = DEFAULT_FALLBACK_TITLE,\n footer,\n icon,\n intent = \"default\",\n onOpenChange,\n open,\n overlayClassName,\n showCloseButton = true,\n size = \"md\",\n title,\n trigger,\n}: ModalProps) {\n const accessibleTitle = title ?? fallbackTitle\n const accessibleDescription = description ?? fallbackDescription\n\n const handleOpenChange = (newOpen: boolean): void => {\n onOpenChange?.(newOpen)\n }\n\n const handleEscapeKeyDown = (event: KeyboardEvent): void => {\n if (!closeOnEscape) {\n event.preventDefault()\n }\n }\n\n const handleInteractOutside = (\n event: CustomEvent<{ originalEvent: Event }>\n ): void => {\n if (!closeOnOverlayClick) {\n event.preventDefault()\n }\n }\n\n return (\n <DialogPrimitive.Root\n defaultOpen={defaultOpen}\n open={open}\n onOpenChange={handleOpenChange}\n >\n {trigger && (\n <DialogPrimitive.Trigger asChild data-slot=\"modal-trigger\">\n {trigger}\n </DialogPrimitive.Trigger>\n )}\n\n <DialogPrimitive.Portal>\n <DialogPrimitive.Overlay\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-[color:var(--modal-overlay-bg)]\",\n overlayClassName\n )}\n data-slot=\"modal-overlay\"\n />\n <DialogPrimitive.Content\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] border duration-200\",\n \"bg-[color:var(--modal-content-bg)] border-[color:var(--modal-content-border)] gap-[var(--modal-content-gap)] rounded-[var(--modal-content-radius)] p-[var(--modal-content-padding)] shadow-[var(--modal-content-shadow)]\",\n sizeClasses[size],\n className\n )}\n data-slot=\"modal\"\n onEscapeKeyDown={handleEscapeKeyDown}\n onInteractOutside={handleInteractOutside}\n >\n {/* Header */}\n <div\n className=\"flex flex-col gap-[var(--modal-header-gap)] text-center sm:text-left\"\n data-slot=\"modal-header\"\n >\n {icon && (\n <span\n className={cn(\n \"inline-flex w-fit items-center justify-center self-center rounded-[var(--modal-icon-pill-radius)] p-[var(--modal-icon-pill-padding)] sm:self-start [&_svg]:size-[var(--modal-icon-pill-icon-size)] [&_svg]:shrink-0\",\n iconPillClasses[intent]\n )}\n aria-hidden=\"true\"\n data-intent={intent}\n data-slot=\"modal-icon-pill\"\n >\n {icon}\n </span>\n )}\n <DialogPrimitive.Title\n className={cn(\n \"text-lg leading-tight font-semibold\",\n !title && \"sr-only\"\n )}\n data-slot=\"modal-title\"\n >\n {accessibleTitle}\n </DialogPrimitive.Title>\n <DialogPrimitive.Description\n className={cn(\n \"text-muted-foreground text-sm\",\n !description && \"sr-only\"\n )}\n data-slot=\"modal-description\"\n >\n {accessibleDescription}\n </DialogPrimitive.Description>\n </div>\n\n {/* Content */}\n {children && <div data-slot=\"modal-content\">{children}</div>}\n\n {/* Footer */}\n {footer && (\n <div\n className=\"flex flex-col-reverse gap-[var(--modal-footer-gap)] sm:flex-row sm:justify-end\"\n data-slot=\"modal-footer\"\n >\n {footer}\n </div>\n )}\n\n {/* Close Button */}\n {showCloseButton && (\n <DialogPrimitive.Close\n className=\"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\"\n data-slot=\"modal-close\"\n >\n <X />\n <span className=\"sr-only\">{closeLabel}</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPrimitive.Portal>\n </DialogPrimitive.Root>\n )\n}\n\nexport { Modal }\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Toggle } from './chunk-
|
|
2
|
-
import { Divider } from './chunk-
|
|
3
|
-
import { cn } from './chunk-
|
|
1
|
+
import { Toggle } from './chunk-2XNMKALT.js';
|
|
2
|
+
import { Divider } from './chunk-LCBB3N5H.js';
|
|
3
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
4
4
|
import Highlight from '@tiptap/extension-highlight';
|
|
5
5
|
import Image from '@tiptap/extension-image';
|
|
6
6
|
import Link from '@tiptap/extension-link';
|
|
@@ -808,5 +808,5 @@ var richTextEditorPlaceholderVariants = cva(
|
|
|
808
808
|
);
|
|
809
809
|
|
|
810
810
|
export { RichTextBubbleMenuContent, RichTextEditor, RichTextFloatingMenuContent, RichTextToolbar, richTextEditorBubbleMenuVariants, richTextEditorContentVariants, richTextEditorFloatingMenuVariants, richTextEditorPlaceholderVariants, richTextEditorToolbarButtonVariants, richTextEditorToolbarVariants, richTextEditorVariants };
|
|
811
|
-
//# sourceMappingURL=chunk-
|
|
812
|
-
//# sourceMappingURL=chunk-
|
|
811
|
+
//# sourceMappingURL=chunk-FXFVFSG5.js.map
|
|
812
|
+
//# sourceMappingURL=chunk-FXFVFSG5.js.map
|