@etus/ui 0.4.0-beta.18 → 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-TA4HCLP3.js → chunk-3R6MY3YJ.js} +4 -4
- package/dist/{chunk-TA4HCLP3.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-3NHH7VPI.js → chunk-4SFBDK4E.js} +4 -4
- package/dist/{chunk-3NHH7VPI.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-F5X2BBGU.js → chunk-5YUUE5JJ.js} +3 -3
- package/dist/{chunk-F5X2BBGU.js.map → chunk-5YUUE5JJ.js.map} +1 -1
- package/dist/{chunk-IQKKPOI7.js → chunk-627ZZ6HO.js} +4 -4
- package/dist/{chunk-IQKKPOI7.js.map → chunk-627ZZ6HO.js.map} +1 -1
- package/dist/{chunk-WCMRVCIM.js → chunk-6G5QK3SU.js} +3 -3
- package/dist/{chunk-WCMRVCIM.js.map → chunk-6G5QK3SU.js.map} +1 -1
- package/dist/{chunk-SMVH56FQ.js → chunk-6QVXMYKH.js} +3 -3
- package/dist/{chunk-SMVH56FQ.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-LR56MGWT.js → chunk-7QEFKWUR.js} +7 -7
- package/dist/{chunk-LR56MGWT.js.map → chunk-7QEFKWUR.js.map} +1 -1
- package/dist/{chunk-JRVUEOKT.js → chunk-7TX5X4EP.js} +3 -3
- package/dist/{chunk-JRVUEOKT.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-KA7747GR.js → chunk-7Y325TBV.js} +3 -3
- package/dist/{chunk-KA7747GR.js.map → chunk-7Y325TBV.js.map} +1 -1
- package/dist/{chunk-6KMRMXR6.js → chunk-7YZ7HNXX.js} +3 -3
- package/dist/{chunk-6KMRMXR6.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-WVFQKBDB.js → chunk-AJUOTABG.js} +3 -3
- package/dist/{chunk-WVFQKBDB.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-2X35C55E.js → chunk-ARJAIH7Q.js} +3 -3
- package/dist/{chunk-2X35C55E.js.map → chunk-ARJAIH7Q.js.map} +1 -1
- 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-ARYBNQNS.js → chunk-BUCXPZYE.js} +4 -4
- package/dist/{chunk-ARYBNQNS.js.map → chunk-BUCXPZYE.js.map} +1 -1
- 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-NULX3RRN.js → chunk-DJHDCDU6.js} +4 -4
- package/dist/{chunk-NULX3RRN.js.map → chunk-DJHDCDU6.js.map} +1 -1
- package/dist/{chunk-USPITOG4.js → chunk-DQGBTZRX.js} +4 -4
- package/dist/{chunk-USPITOG4.js.map → chunk-DQGBTZRX.js.map} +1 -1
- 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-5ACHKT35.js → chunk-EDSIOUUR.js} +4 -4
- package/dist/{chunk-5ACHKT35.js.map → chunk-EDSIOUUR.js.map} +1 -1
- package/dist/{chunk-G2CMEHW6.js → chunk-ELRIFGMN.js} +4 -4
- package/dist/{chunk-G2CMEHW6.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-AP3T3KMY.js → chunk-EZYXD2YI.js} +4 -4
- package/dist/{chunk-AP3T3KMY.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-YGLD22TU.js → chunk-FVRSXJKS.js} +3 -3
- package/dist/{chunk-YGLD22TU.js.map → chunk-FVRSXJKS.js.map} +1 -1
- package/dist/{chunk-AR7K7Y4L.js → chunk-FXFVFSG5.js} +5 -5
- package/dist/{chunk-AR7K7Y4L.js.map → chunk-FXFVFSG5.js.map} +1 -1
- package/dist/{chunk-WQI2USN7.js → chunk-GDZECJFS.js} +3 -3
- package/dist/{chunk-WQI2USN7.js.map → chunk-GDZECJFS.js.map} +1 -1
- package/dist/{chunk-7CMOCWFX.js → chunk-GLHKHYJY.js} +8 -8
- package/dist/{chunk-7CMOCWFX.js.map → chunk-GLHKHYJY.js.map} +1 -1
- package/dist/{chunk-IA24GUNV.js → chunk-GRODCJS4.js} +8 -8
- package/dist/{chunk-IA24GUNV.js.map → chunk-GRODCJS4.js.map} +1 -1
- package/dist/{chunk-JDG5A44W.js → chunk-GVNG5ME6.js} +22 -11
- 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-HV2ZZXFN.js → chunk-HHWUROMA.js} +6 -6
- package/dist/{chunk-HV2ZZXFN.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-6ABGMOE2.js → chunk-HNQX6ZG7.js} +4 -4
- package/dist/{chunk-6ABGMOE2.js.map → chunk-HNQX6ZG7.js.map} +1 -1
- 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-B2OCNHUW.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-ZHUW6UYD.js → chunk-JDETM3FL.js} +3 -3
- package/dist/{chunk-ZHUW6UYD.js.map → chunk-JDETM3FL.js.map} +1 -1
- package/dist/{chunk-HZ47LQFJ.js → chunk-JE46MFMN.js} +6 -6
- package/dist/{chunk-HZ47LQFJ.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-XKO6G5H2.js → chunk-JYYB6F5O.js} +3 -3
- package/dist/{chunk-XKO6G5H2.js.map → chunk-JYYB6F5O.js.map} +1 -1
- 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-ZMUUEXVD.js → chunk-K4UCALQQ.js} +3 -3
- package/dist/{chunk-ZMUUEXVD.js.map → chunk-K4UCALQQ.js.map} +1 -1
- package/dist/{chunk-KYURFRCH.js → chunk-KBU4KJKC.js} +7 -7
- package/dist/{chunk-KYURFRCH.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-WZ2J4ALB.js → chunk-KHCHATTD.js} +5 -5
- package/dist/{chunk-WZ2J4ALB.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-H7JHFBFD.js → chunk-KLFYTLF3.js} +4 -4
- package/dist/{chunk-H7JHFBFD.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-X5XP5QVO.js → chunk-L4OQ6BJ5.js} +6 -6
- package/dist/{chunk-X5XP5QVO.js.map → chunk-L4OQ6BJ5.js.map} +1 -1
- package/dist/{chunk-MAM6VUKD.js → chunk-LCBB3N5H.js} +3 -3
- package/dist/{chunk-MAM6VUKD.js.map → chunk-LCBB3N5H.js.map} +1 -1
- package/dist/{chunk-FLERVSKG.js → chunk-LDK6ADKM.js} +6 -6
- package/dist/{chunk-FLERVSKG.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-7VGF6ZVE.js → chunk-LRE3LJMW.js} +5 -5
- package/dist/{chunk-7VGF6ZVE.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-WBERMEN7.js → chunk-MGIGDALC.js} +3 -3
- package/dist/{chunk-WBERMEN7.js.map → chunk-MGIGDALC.js.map} +1 -1
- package/dist/{chunk-IRFAIJLV.js → chunk-MNYU5MHO.js} +7 -7
- package/dist/{chunk-IRFAIJLV.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-EC5YEK3C.js → chunk-N5YGAESZ.js} +5 -5
- package/dist/{chunk-EC5YEK3C.js.map → chunk-N5YGAESZ.js.map} +1 -1
- package/dist/{chunk-DSCLJ3GK.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-5E44I7PB.js → chunk-NLPVF34P.js} +4 -4
- package/dist/{chunk-5E44I7PB.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-HA5YVDHW.js → chunk-ONN5XVYC.js} +3 -3
- package/dist/{chunk-HA5YVDHW.js.map → chunk-ONN5XVYC.js.map} +1 -1
- package/dist/{chunk-OG3M4CMJ.js → chunk-OWZ3MZ5C.js} +3 -3
- package/dist/{chunk-OG3M4CMJ.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-5K2SOCOX.js → chunk-P4WMDGAQ.js} +4 -4
- package/dist/{chunk-5K2SOCOX.js.map → chunk-P4WMDGAQ.js.map} +1 -1
- package/dist/{chunk-K43MPWTO.js → chunk-PBZI5XNV.js} +3 -3
- package/dist/{chunk-K43MPWTO.js.map → chunk-PBZI5XNV.js.map} +1 -1
- 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-V7O4X3AE.js → chunk-PTXC4KPQ.js} +4 -4
- package/dist/{chunk-V7O4X3AE.js.map → chunk-PTXC4KPQ.js.map} +1 -1
- package/dist/{chunk-34WNJNPL.js → chunk-PVIIIQJI.js} +6 -6
- package/dist/{chunk-34WNJNPL.js.map → chunk-PVIIIQJI.js.map} +1 -1
- package/dist/{chunk-A4O3USMA.js → chunk-PXR6CZIL.js} +4 -4
- package/dist/{chunk-A4O3USMA.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-DI3AISAZ.js → chunk-QJOWG2D4.js} +5 -5
- package/dist/{chunk-DI3AISAZ.js.map → chunk-QJOWG2D4.js.map} +1 -1
- package/dist/{chunk-6F5NWXZF.js → chunk-QLYH3GCV.js} +4 -4
- package/dist/{chunk-6F5NWXZF.js.map → chunk-QLYH3GCV.js.map} +1 -1
- package/dist/{chunk-F4EX3622.js → chunk-QO6TOE45.js} +3 -3
- package/dist/{chunk-F4EX3622.js.map → chunk-QO6TOE45.js.map} +1 -1
- package/dist/{chunk-46SUPGQV.js → chunk-QWWA4FZP.js} +3 -3
- package/dist/{chunk-46SUPGQV.js.map → chunk-QWWA4FZP.js.map} +1 -1
- package/dist/{chunk-VTDSGJ4R.js → chunk-QXET2TML.js} +4 -4
- package/dist/{chunk-VTDSGJ4R.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-XORDGKZI.js → chunk-R42LSLJL.js} +6 -6
- package/dist/{chunk-XORDGKZI.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-UYPYAOET.js → chunk-ROPW65RD.js} +3 -3
- package/dist/{chunk-UYPYAOET.js.map → chunk-ROPW65RD.js.map} +1 -1
- package/dist/{chunk-M6VBDPNQ.js → chunk-RQBYBBMP.js} +3 -3
- package/dist/{chunk-M6VBDPNQ.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-AKRVZ2YW.js → chunk-S6BREP2G.js} +4 -4
- package/dist/{chunk-AKRVZ2YW.js.map → chunk-S6BREP2G.js.map} +1 -1
- 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-56TC4CPT.js → chunk-SKI25Q7O.js} +6 -6
- package/dist/{chunk-56TC4CPT.js.map → chunk-SKI25Q7O.js.map} +1 -1
- package/dist/{chunk-MLSIZ6JU.js → chunk-SSKSWSVO.js} +5 -5
- package/dist/{chunk-MLSIZ6JU.js.map → chunk-SSKSWSVO.js.map} +1 -1
- package/dist/{chunk-VV6QE3M2.js → chunk-STADVFL2.js} +5 -5
- package/dist/{chunk-VV6QE3M2.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-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-EDSDAX56.js → chunk-TNSMTINE.js} +4 -4
- package/dist/{chunk-EDSDAX56.js.map → chunk-TNSMTINE.js.map} +1 -1
- package/dist/{chunk-5TABQJDW.js → chunk-TRTVYFOF.js} +3 -3
- package/dist/{chunk-5TABQJDW.js.map → chunk-TRTVYFOF.js.map} +1 -1
- package/dist/{chunk-QBLU7J34.js → chunk-TSE3PKWQ.js} +3 -3
- package/dist/{chunk-QBLU7J34.js.map → chunk-TSE3PKWQ.js.map} +1 -1
- 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-PGRMKSVA.js → chunk-UC5J6GWG.js} +4 -4
- package/dist/{chunk-PGRMKSVA.js.map → chunk-UC5J6GWG.js.map} +1 -1
- package/dist/{chunk-HP7LEQJR.js → chunk-UNHPLKMR.js} +3 -3
- package/dist/{chunk-HP7LEQJR.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-J62NPPDO.js → chunk-UZZCEQH4.js} +4 -4
- package/dist/{chunk-J62NPPDO.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-PM344VOQ.js → chunk-VHJ6ALIE.js} +4 -4
- package/dist/{chunk-PM344VOQ.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-45YJLE4R.js → chunk-WGKOYZRI.js} +3 -3
- package/dist/{chunk-45YJLE4R.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-MAM5PTRV.js → chunk-WSDWJX4Y.js} +4 -4
- package/dist/{chunk-MAM5PTRV.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-HVFACGNK.js → chunk-WWK7UIKK.js} +3 -3
- package/dist/{chunk-HVFACGNK.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-OR3NPCY2.js → chunk-YMCKML6D.js} +7 -7
- package/dist/{chunk-OR3NPCY2.js.map → chunk-YMCKML6D.js.map} +1 -1
- package/dist/{chunk-TGLALXPU.js → chunk-YMQDTTO7.js} +6 -6
- package/dist/{chunk-TGLALXPU.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-VUHJTTPV.js → chunk-ZVSMLMMS.js} +3 -3
- package/dist/{chunk-VUHJTTPV.js.map → chunk-ZVSMLMMS.js.map} +1 -1
- 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 +9 -9
- package/dist/components/advanced/MarkdownEditor/index.js +6 -6
- package/dist/components/advanced/ReportBuilder/index.js +7 -7
- 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 +30 -30
- 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 +9 -9
- package/dist/components/data-display/DataTable/index.js +16 -16
- 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 +56 -56
- 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 +3 -3
- 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 +9 -9
- 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 +2 -2
- package/dist/components/forms/PasswordInput/index.js +3 -3
- 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 +3 -3
- 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 +2 -2
- 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 +3 -3
- package/dist/components/forms/index.js +50 -50
- package/dist/components/index.js +183 -183
- 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 +11 -11
- 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 +32 -32
- 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 +9 -9
- 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 +26 -26
- package/dist/index.d.ts +55 -14
- package/dist/index.js +183 -183
- package/dist/lib/utils.d.ts +2 -1
- package/dist/lib/utils.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-B2OCNHUW.js.map +0 -1
- package/dist/chunk-DSCLJ3GK.js.map +0 -1
- package/dist/chunk-HRNDJU7D.js +0 -11
- package/dist/chunk-HRNDJU7D.js.map +0 -1
- package/dist/chunk-IZC5YFGO.js.map +0 -1
- package/dist/chunk-JDG5A44W.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/advanced/VersionControl/VersionControl.variants.ts","../src/components/advanced/VersionControl/VersionControl.tsx"],"names":["currentVersion"],"mappings":";;;;;;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC,8CAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,OAAA;AAAA,QACN,QAAA,EAAU,OAAA;AAAA,QACV,OAAA,EAAS,OAAA;AAAA,QACT,IAAA,EAAM;AAAA,OACR;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,OAAA,EAAS,SAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,MAAA;AAAA,MACT,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,mBAAA,GAAsB,GAAA;AAAA,EACjC;AAAA,IACE,oCAAA;AAAA,IACA,gCAAA;AAAA,IACA,qGAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,gDAAA;AAAA,QACN,QAAA,EAAU,2BAAA;AAAA,QACV,OAAA,EAAS,4BAAA;AAAA,QACT,IAAA,EAAM;AAAA,OACR;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,WAAA;AAAA,QACJ,OAAA,EAAS,WAAA;AAAA,QACT,EAAA,EAAI;AAAA,OACN;AAAA,MACA,SAAA,EAAW;AAAA,QACT,IAAA,EAAM,6BAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,UAAA,EAAY;AAAA,QACV,IAAA,EAAM,4BAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB;AAAA,QACE,SAAA,EAAW,IAAA;AAAA,QACX,OAAA,EAAS,MAAA;AAAA,QACT,SAAA,EAAW;AAAA,OACb;AAAA,MACA;AAAA,QACE,SAAA,EAAW,IAAA;AAAA,QACX,OAAA,EAAS,UAAA;AAAA,QACT,SAAA,EAAW;AAAA;AACb,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,MAAA;AAAA,MACT,IAAA,EAAM,SAAA;AAAA,MACN,SAAA,EAAW,KAAA;AAAA,MACX,UAAA,EAAY;AAAA;AACd;AAEJ;AAKO,IAAM,oBAAA,GAAuB,GAAA;AAAA,EAClC,uEAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,oCAAA;AAAA,QACT,QAAA,EAAU,gCAAA;AAAA,QACV,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,qBAAA;AAAA,QACJ,OAAA,EAAS,qBAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,UAAA;AAAA,MACT,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,gBAAA,GAAmB,GAAA;AAAA,EAC9B,+BAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,QAAA,EAAU,4BAAA;AAAA,QACV,QAAA,EAAU,oCAAA;AAAA,QACV,OAAA,EAAS;AAAA,OACX;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,wBAAA;AAAA,QACJ,OAAA,EAAS,wBAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,SAAA;AAAA,MACN,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,uBAAA,GAA0B,GAAA;AAAA,EACrC,oDAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,QAAA,EAAU,cAAA;AAAA,QACV,QAAA,EAAU,kBAAA;AAAA,QACV,YAAA,EAAc;AAAA;AAChB,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,gCAAA,GAAmC,GAAA;AAAA,EAC9C,qDAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,MAAA,EAAQ;AAAA,QACN,OAAA,EAAS,YAAA;AAAA,QACT,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,QAAA;AAAA,QACJ,OAAA,EAAS,QAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,MAAA,EAAQ,UAAA;AAAA,MACR,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,6BAAA,GAAgC,GAAA;AAAA,EAC3C,wEAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,MAAA,EAAQ;AAAA,QACN,OAAA,EAAS,sDAAA;AAAA,QACT,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,gBAAA;AAAA,QACJ,OAAA,EAAS,kBAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,MAAA,EAAQ,UAAA;AAAA,MACR,IAAA,EAAM;AAAA;AACR;AAEJ;ACtKA,SAAS,gBAAgB,IAAA,EAAoB;AAC3C,EAAA,OAAO,IAAA,CAAK,mBAAmB,MAAA,EAAW;AAAA,IACxC,GAAA,EAAK,SAAA;AAAA,IACL,KAAA,EAAO,OAAA;AAAA,IACP,IAAA,EAAM,SAAA;AAAA,IACN,IAAA,EAAM,SAAA;AAAA,IACN,MAAA,EAAQ;AAAA,GACT,CAAA;AACH;AAKA,SAAS,mBAAmB,IAAA,EAAoB;AAC9C,EAAA,MAAM,GAAA,uBAAU,IAAA,EAAK;AACrB,EAAA,MAAM,MAAA,GAAS,GAAA,CAAI,OAAA,EAAQ,GAAI,KAAK,OAAA,EAAQ;AAC5C,EAAA,MAAM,WAAW,IAAA,CAAK,KAAA,CAAM,UAAU,GAAA,GAAO,EAAA,GAAK,KAAK,EAAA,CAAG,CAAA;AAE1D,EAAA,IAAI,aAAa,CAAA,EAAG;AAClB,IAAA,MAAM,YAAY,IAAA,CAAK,KAAA,CAAM,MAAA,IAAU,GAAA,GAAO,KAAK,EAAA,CAAG,CAAA;AACtD,IAAA,IAAI,cAAc,CAAA,EAAG;AACnB,MAAA,MAAM,WAAA,GAAc,IAAA,CAAK,KAAA,CAAM,MAAA,IAAU,MAAO,EAAA,CAAG,CAAA;AACnD,MAAA,OAAO,eAAe,CAAA,GAAI,UAAA,GAAa,CAAA,EAAG,MAAA,CAAO,WAAW,CAAC,CAAA,YAAA,CAAA;AAAA,IAC/D;AACA,IAAA,OAAO,cAAc,CAAA,GAAI,YAAA,GAAe,CAAA,EAAG,MAAA,CAAO,SAAS,CAAC,CAAA,UAAA,CAAA;AAAA,EAC9D;AACA,EAAA,IAAI,QAAA,KAAa,GAAG,OAAO,WAAA;AAC3B,EAAA,IAAI,WAAW,CAAA,EAAG,OAAO,CAAA,EAAG,MAAA,CAAO,QAAQ,CAAC,CAAA,SAAA,CAAA;AAC5C,EAAA,OAAO,gBAAgB,IAAI,CAAA;AAC7B;AAKA,SAAS,YAAA,CAAa;AAAA,EACpB,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA,GAAY,KAAA;AAAA,EACZ,UAAA,GAAa,KAAA;AAAA,EACb,IAAA,GAAO;AACT,CAAA,EAMG;AACD,EAAA,MAAM,OAAA,GAAU,SAAA,GAAY,SAAA,GAAY,UAAA,GAAa,UAAA,GAAa,UAAA;AAElE,EAAA,uBACE,GAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,GAAG,oBAAA,CAAqB,EAAE,SAAS,IAAA,EAAM,GAAG,SAAS,CAAA;AAAA,MAChE,WAAA,EAAU,eAAA;AAAA,MAET;AAAA;AAAA,GACH;AAEJ;AAKA,SAAS,eAAA,CAAgB;AAAA,EACvB,SAAA,GAAY,CAAA;AAAA,EACZ,SAAA,GAAY,CAAA;AAAA,EACZ,aAAA,GAAgB,CAAA;AAAA,EAChB;AACF,CAAA,EAKG;AACD,EAAA,uBACE,IAAA,CAAC,SAAI,SAAA,EAAW,EAAA,CAAG,2BAA2B,SAAS,CAAA,EAAG,aAAU,kBAAA,EACjE,QAAA,EAAA;AAAA,IAAA,SAAA,GAAY,CAAA,yBACV,MAAA,EAAA,EAAK,SAAA,EAAW,wBAAwB,EAAE,IAAA,EAAM,UAAA,EAAY,CAAA,EAC3D,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,WAAU,SAAA,EAAU,CAAA;AAAA,MACzB;AAAA,KAAA,EACH,CAAA;AAAA,IAED,SAAA,GAAY,CAAA,oBACX,IAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,wBAAwB,EAAE,IAAA,EAAM,UAAA,EAAY,CAAA,EAC3D,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,KAAA,EAAA,EAAM,WAAU,SAAA,EAAU,CAAA;AAAA,MAC1B;AAAA,KAAA,EACH,CAAA;AAAA,IAED,aAAA,GAAgB,CAAA,oBACf,IAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,wBAAwB,EAAE,IAAA,EAAM,cAAA,EAAgB,CAAA,EAC/D,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,KAAA,EAAA,EAAM,WAAU,SAAA,EAAU,CAAA;AAAA,MAC1B;AAAA,KAAA,EACH;AAAA,GAAA,EAEJ,CAAA;AAEJ;AAKA,SAAS,cAAA,CAAe;AAAA,EACtB,OAAA;AAAA,EACA,YAAA,GAAe,IAAA;AAAA,EACf,SAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA,GAAc,KAAA;AAAA,EACd,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAwB;AACtB,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,CAAA,KAAwB;AACvB,MAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,MAAA,SAAA,GAAY,OAAO,CAAA;AAAA,IACrB,CAAA;AAAA,IACA,CAAC,SAAS,SAAS;AAAA,GACrB;AAEA,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,CAAA,KAAwB;AACvB,MAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,MAAA,SAAA,GAAY,OAAO,CAAA;AAAA,IACrB,CAAA;AAAA,IACA,CAAC,SAAS,SAAS;AAAA,GACrB;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,yBAAA,EAA2B,SAAS,CAAA;AAAA,MAClD,WAAA,EAAU,iBAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,SAAA,oBACC,IAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,uDAAA;AAAA,cACA,qDAAA;AAAA,cACA,mCAAA;AAAA,cACA;AAAA,aACF;AAAA,YACA,YAAA,EAAY,CAAA,gBAAA,EAAmB,OAAA,CAAQ,KAAA,IAAS,QAAQ,EAAE,CAAA,CAAA;AAAA,YAC1D,IAAA,EAAK,QAAA;AAAA,YACL,OAAA,EAAS,aAAA;AAAA,YAET,QAAA,EAAA;AAAA,8BAAA,GAAA,CAAC,UAAA,EAAA,EAAW,WAAU,aAAA,EAAc,CAAA;AAAA,8BACpC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,kBAAA,EAAmB,QAAA,EAAA,SAAA,EAAO;AAAA;AAAA;AAAA,SAC5C;AAAA,QAED,gBAAgB,SAAA,oBACf,IAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,uDAAA;AAAA,cACA,qDAAA;AAAA,cACA,mCAAA;AAAA,cACA,yEAAA;AAAA,cACA;AAAA,aACF;AAAA,YACA,YAAA,EAAY,CAAA,mBAAA,EAAsB,OAAA,CAAQ,KAAA,IAAS,QAAQ,EAAE,CAAA,CAAA;AAAA,YAC7D,QAAA,EAAU,WAAA;AAAA,YACV,IAAA,EAAK,QAAA;AAAA,YACL,OAAA,EAAS,aAAA;AAAA,YAER,QAAA,EAAA;AAAA,cAAA,WAAA,mBACC,GAAA,CAAC,WAAQ,SAAA,EAAU,0BAAA,EAA2B,oBAE9C,GAAA,CAAC,SAAA,EAAA,EAAU,WAAU,aAAA,EAAc,CAAA;AAAA,8BAErC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,kBAAA,EAAmB,QAAA,EAAA,SAAA,EAAO;AAAA;AAAA;AAAA;AAC5C;AAAA;AAAA,GAEJ;AAEJ;AAKA,SAAS,WAAA,CAAY;AAAA,EACnB,OAAA;AAAA,EACA,SAAA,GAAY,KAAA;AAAA,EACZ,UAAA,GAAa,KAAA;AAAA,EACb,YAAA,GAAe,IAAA;AAAA,EACf,IAAA,GAAO,SAAA;AAAA,EACP,cAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAqB;AACnB,EAAA,MAAM,WAAA,GAAc,YAAY,MAAM;AACpC,IAAA,cAAA,GAAiB,OAAO,CAAA;AAAA,EAC1B,CAAA,EAAG,CAAC,OAAA,EAAS,cAAc,CAAC,CAAA;AAE5B,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,KAAA,KAAyC;AACxC,MAAA,IAAI,KAAA,CAAM,GAAA,KAAQ,OAAA,IAAW,KAAA,CAAM,QAAQ,GAAA,EAAK;AAC9C,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,cAAA,GAAiB,OAAO,CAAA;AAAA,MAC1B;AACA,MAAA,IAAI,KAAA,CAAM,GAAA,KAAQ,GAAA,IAAO,KAAA,CAAM,QAAQ,GAAA,EAAK;AAC1C,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,SAAA,GAAY,OAAO,CAAA;AAAA,MACrB;AACA,MAAA,IAAI,KAAA,CAAM,GAAA,KAAQ,GAAA,IAAO,KAAA,CAAM,QAAQ,GAAA,EAAK;AAC1C,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,SAAA,GAAY,OAAO,CAAA;AAAA,MACrB;AAAA,IACF,CAAA;AAAA,IACA,CAAC,OAAA,EAAS,cAAA,EAAgB,SAAA,EAAW,SAAS;AAAA,GAChD;AAEA,EAAA,MAAM,KAAA,GAAQ,OAAA,CAAQ,KAAA,IAAS,OAAA,CAAQ,EAAA;AAEvC,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,mBAAA,CAAoB;AAAA,UAClB,OAAA,EAAS,MAAA;AAAA,UACT,IAAA;AAAA,UACA,SAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,QACD;AAAA,OACF;AAAA,MACA,cAAA,EAAc,YAAY,MAAA,GAAS,MAAA;AAAA,MACnC,cAAA,EAAc,YAAY,EAAA,GAAK,MAAA;AAAA,MAC/B,eAAA,EAAe,aAAa,EAAA,GAAK,MAAA;AAAA,MACjC,WAAA,EAAU,cAAA;AAAA,MACV,IAAA,EAAK,UAAA;AAAA,MACL,QAAA,EAAU,CAAA;AAAA,MACV,OAAA,EAAS,WAAA;AAAA,MACT,SAAA,EAAW,aAAA;AAAA,MACV,GAAG,KAAA;AAAA,MAEJ,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,4BAAA,EACb,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yBAAA,EACb,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAsB,UAAA,EAAwB,IAAA,EACzD,QAAA,EAAA,KAAA,EACH,CAAA;AAAA,YACC,SAAA,oBACC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,iCAAgC,QAAA,EAAA,WAAA,EAAS;AAAA,WAAA,EAE7D,CAAA;AAAA,0BAEA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,uDAAA,EACZ,QAAA,EAAA;AAAA,YAAA,OAAA,CAAQ,0BACP,GAAA,CAAC,MAAA,EAAA,EAAK,aAAU,gBAAA,EAAkB,QAAA,EAAA,OAAA,CAAQ,OAAO,IAAA,EAAK,CAAA;AAAA,4BAExD,GAAA;AAAA,cAAC,MAAA;AAAA,cAAA;AAAA,gBACC,WAAA,EAAU,mBAAA;AAAA,gBACV,QAAA,EAAU,OAAA,CAAQ,SAAA,CAAU,WAAA,EAAY;AAAA,gBACxC,KAAA,EAAO,eAAA,CAAgB,OAAA,CAAQ,SAAS,CAAA;AAAA,gBAEvC,QAAA,EAAA,kBAAA,CAAmB,QAAQ,SAAS;AAAA;AAAA;AACvC,WAAA,EACF,CAAA;AAAA,UAEC,QAAQ,OAAA,oBACP,GAAA;AAAA,YAAC,eAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,QAAQ,OAAA,CAAQ,SAAA;AAAA,cAC3B,SAAA,EAAW,QAAQ,OAAA,CAAQ,SAAA;AAAA,cAC3B,aAAA,EAAe,QAAQ,OAAA,CAAQ;AAAA;AAAA;AACjC,SAAA,EAEJ,CAAA;AAAA,QAAA,CAEE,SAAA,IAAa,SAAA,KAAc,CAAC,SAAA,oBAC5B,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,YAAA;AAAA,YACA,OAAA;AAAA,YACA,SAAA;AAAA,YACA;AAAA;AAAA;AACF;AAAA;AAAA,GAEJ;AAEJ;AAKA,SAAS,WAAA,CAAY;AAAA,EACnB,QAAA;AAAA,EACA,gBAAA;AAAA,EACA,iBAAA;AAAA,EACA,IAAA,GAAO,SAAA;AAAA,EACP,YAAA,GAAe,IAAA;AAAA,EACf,eAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA;AACF,CAAA,EAUG;AACD,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAW,iBAAA;AAAA,MACX,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAuB,SAAS,CAAA;AAAA,MAC9C,WAAA,EAAU,cAAA;AAAA,MACV,IAAA,EAAK,MAAA;AAAA,MAEJ,QAAA,EAAA,QAAA,CAAS,GAAA,CAAI,CAAC,OAAA,qBACb,GAAA;AAAA,QAAC,WAAA;AAAA,QAAA;AAAA,UAEC,YAAA,EAAc,YAAA,IAAgB,OAAA,CAAQ,EAAA,KAAO,gBAAA;AAAA,UAC7C,SAAA,EAAW,QAAQ,EAAA,KAAO,gBAAA;AAAA,UAC1B,UAAA,EAAY,QAAQ,EAAA,KAAO,iBAAA;AAAA,UAC3B,IAAA;AAAA,UACA,OAAA;AAAA,UACA,SAAA;AAAA,UACA,SAAA;AAAA,UACA,cAAA,EAAgB;AAAA,SAAA;AAAA,QARX,OAAA,CAAQ;AAAA,OAUhB;AAAA;AAAA,GACH;AAEJ;AAKA,SAAS,eAAA,CAAgB;AAAA,EACvB,QAAA;AAAA,EACA,gBAAA;AAAA,EACA,IAAA,GAAO,SAAA;AAAA,EACP,eAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAyB;AACvB,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAW,kBAAA;AAAA,MACX,SAAA,EAAW,EAAA,CAAG,mCAAA,EAAqC,SAAS,CAAA;AAAA,MAC5D,WAAA,EAAU,kBAAA;AAAA,MACV,IAAA,EAAK,MAAA;AAAA,MACJ,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA,QAAA,CAAS,GAAA,CAAI,CAAC,OAAA,EAAS,KAAA,KAAU;AAChC,QAAA,MAAM,SAAA,GAAY,QAAQ,EAAA,KAAO,gBAAA;AACjC,QAAA,MAAM,MAAA,GAAS,KAAA,KAAU,QAAA,CAAS,MAAA,GAAS,CAAA;AAE3C,QAAA,uBACE,IAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YAEC,SAAA,EAAU,iCAAA;AAAA,YACV,WAAA,EAAU,eAAA;AAAA,YACV,IAAA,EAAK,UAAA;AAAA,YAGJ,QAAA,EAAA;AAAA,cAAA,CAAC,MAAA,oBACA,GAAA;AAAA,gBAAC,KAAA;AAAA,gBAAA;AAAA,kBACC,WAAW,gCAAA,CAAiC;AAAA,oBAC1C,MAAA,EAAQ,YAAY,SAAA,GAAY,UAAA;AAAA,oBAChC;AAAA,mBACD,CAAA;AAAA,kBACD,aAAA,EAAY,MAAA;AAAA,kBACZ,WAAA,EAAU,oBAAA;AAAA,kBACV,KAAA,EAAO,EAAE,GAAA,EAAK,kBAAA,EAAoB,QAAQ,+BAAA;AAAgC;AAAA,eAC5E;AAAA,8BAIF,GAAA;AAAA,gBAAC,KAAA;AAAA,gBAAA;AAAA,kBACC,SAAA,EAAW,EAAA;AAAA,oBACT,6BAAA,CAA8B;AAAA,sBAC5B,MAAA,EAAQ,YAAY,SAAA,GAAY,UAAA;AAAA,sBAChC;AAAA,qBACD,CAAA;AAAA,oBACD;AAAA,mBACF;AAAA,kBACA,aAAA,EAAY,MAAA;AAAA,kBACZ,WAAA,EAAU;AAAA;AAAA,eACZ;AAAA,8BAGA,IAAA;AAAA,gBAAC,QAAA;AAAA,gBAAA;AAAA,kBACC,SAAA,EAAW,EAAA;AAAA,oBACT,sCAAA;AAAA,oBACA,sBAAA;AAAA,oBACA,sCAAA;AAAA,oBACA,yEAAA;AAAA,oBACA,SAAA,IAAa;AAAA,mBACf;AAAA,kBACA,cAAA,EAAc,YAAY,MAAA,GAAS,MAAA;AAAA,kBACnC,IAAA,EAAK,QAAA;AAAA,kBACL,OAAA,EAAS,MAAM,eAAA,GAAkB,OAAO,CAAA;AAAA,kBAExC,QAAA,EAAA;AAAA,oCAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yBAAA,EACb,QAAA,EAAA;AAAA,sCAAA,GAAA,CAAC,gBAAa,SAAA,EAAsB,IAAA,EACjC,QAAA,EAAA,OAAA,CAAQ,KAAA,IAAS,QAAQ,EAAA,EAC5B,CAAA;AAAA,sBACC,SAAA,oBACC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,iCAAgC,QAAA,EAAA,WAAA,EAAS;AAAA,qBAAA,EAE7D,CAAA;AAAA,oCAEA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,uDAAA,EACZ,QAAA,EAAA;AAAA,sBAAA,OAAA,CAAQ,MAAA,oBAAU,GAAA,CAAC,MAAA,EAAA,EAAM,QAAA,EAAA,OAAA,CAAQ,OAAO,IAAA,EAAK,CAAA;AAAA,sCAC9C,GAAA,CAAC,MAAA,EAAA,EAAK,QAAA,EAAU,OAAA,CAAQ,SAAA,CAAU,aAAY,EAC3C,QAAA,EAAA,kBAAA,CAAmB,OAAA,CAAQ,SAAS,CAAA,EACvC;AAAA,qBAAA,EACF,CAAA;AAAA,oBAEC,QAAQ,OAAA,oBACP,GAAA;AAAA,sBAAC,eAAA;AAAA,sBAAA;AAAA,wBACC,SAAA,EAAW,QAAQ,OAAA,CAAQ,SAAA;AAAA,wBAC3B,SAAA,EAAW,QAAQ,OAAA,CAAQ,SAAA;AAAA,wBAC3B,aAAA,EAAe,QAAQ,OAAA,CAAQ;AAAA;AAAA;AACjC;AAAA;AAAA;AAEJ;AAAA,WAAA;AAAA,UAnEK,OAAA,CAAQ;AAAA,SAoEf;AAAA,MAEJ,CAAC;AAAA;AAAA,GACH;AAEJ;AAKA,SAAS,cAAA,CAAe;AAAA,EACtB,GAAA;AAAA,EACA,GAAA,EAAK,MAAA;AAAA,EACL,IAAA,GAAO;AACT,CAAA,EAIG;AACD,EAAA,MAAM,aAAa,IAAA,KAAS,IAAA,GAAO,KAAA,GAAQ,IAAA,KAAS,OAAO,MAAA,GAAS,MAAA;AAEpE,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,0DAAA;AAAA,QACA,IAAA,KAAS,IAAA,GAAO,SAAA,GAAY,IAAA,KAAS,OAAO,SAAA,GAAY;AAAA,OAC1D;AAAA,MACA,WAAA,EAAU,kBAAA;AAAA,MAEV,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAK,SAAA,EAAW,EAAA,CAAG,YAAY,YAAY,CAAA,EAAI,iBAAO,EAAA,EAAG,CAAA;AAAA,wBAC1D,GAAA,CAAC,UAAK,SAAA,EAAW,EAAA,CAAG,YAAY,YAAY,CAAA,EAAI,oBAAU,EAAA,EAAG;AAAA;AAAA;AAAA,GAC/D;AAEJ;AAKA,SAAS,WAAA,CAAY;AAAA,EACnB,UAAA;AAAA,EACA,UAAA;AAAA,EACA,KAAA;AAAA,EACA,SAAA,GAAY,KAAA;AAAA,EACZ,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAqB;AACnB,EAAA,IAAI,SAAA,EAAW;AACb,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,4DAAA;AAAA,UACA;AAAA,SACF;AAAA,QACA,WAAA,EAAU,cAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEJ,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,OAAA,EAAA,EAAQ,WAAU,2BAAA,EAA4B,CAAA;AAAA,0BAC/C,GAAA,CAAC,UAAK,QAAA,EAAA,iBAAA,EAAe;AAAA;AAAA;AAAA,KACvB;AAAA,EAEJ;AAEA,EAAA,IAAI,KAAA,CAAM,WAAW,CAAA,EAAG;AACtB,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,4DAAA;AAAA,UACA;AAAA,SACF;AAAA,QACA,WAAA,EAAU,cAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEJ,QAAA,kBAAA,GAAA,CAAC,UAAK,QAAA,EAAA,6BAAA,EAA2B;AAAA;AAAA,KACnC;AAAA,EAEJ;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,CAAA,aAAA,EAAgB,UAAA,CAAW,KAAA,IAAS,UAAA,CAAW,EAAE,CAAA,KAAA,EAAQ,UAAA,CAAW,KAAA,IAAS,UAAA,CAAW,EAAE,CAAA,CAAA;AAAA,MACtG,SAAA,EAAW,EAAA,CAAG,iDAAA,EAAmD,SAAS,CAAA;AAAA,MAC1E,WAAA,EAAU,cAAA;AAAA,MACV,IAAA,EAAK,QAAA;AAAA,MACJ,GAAG,KAAA;AAAA,MAGJ,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,SAAI,SAAA,EAAU,gFAAA,EACb,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,iCAAA,EACb,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,YAAA,EAAA,EAAc,QAAA,EAAA,UAAA,CAAW,KAAA,IAAS,UAAA,CAAW,EAAA,EAAG,CAAA;AAAA,0BACjD,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,uBAAA,EAAwB,QAAA,EAAA,IAAA,EAAE,CAAA;AAAA,0BAC1C,GAAA,CAAC,YAAA,EAAA,EAAc,QAAA,EAAA,UAAA,CAAW,KAAA,IAAS,WAAW,EAAA,EAAG;AAAA,SAAA,EACnD,CAAA,EACF,CAAA;AAAA,wBAGA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,iBAAA,EAAkB,aAAU,cAAA,EACzC,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,YAAA,EACZ,QAAA,EAAA,KAAA,CAAM,GAAA,CAAI,CAAC,MAAM,KAAA,qBAChB,IAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YAGC,WAAW,gBAAA,CAAiB,EAAE,IAAA,EAAM,IAAA,CAAK,MAAM,CAAA;AAAA,YAC/C,WAAA,EAAU,WAAA;AAAA,YACV,aAAW,IAAA,CAAK,IAAA;AAAA,YAEhB,QAAA,EAAA;AAAA,8BAAA,GAAA;AAAA,gBAAC,cAAA;AAAA,gBAAA;AAAA,kBACC,GAAA,EAAK,KAAK,UAAA,CAAW,GAAA;AAAA,kBACrB,GAAA,EAAK,KAAK,UAAA,CAAW;AAAA;AAAA,eACvB;AAAA,8BACA,IAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,sCAAA,EACb,QAAA,EAAA;AAAA,gBAAA,IAAA,CAAK,SAAS,UAAA,IAAc,IAAA;AAAA,gBAC5B,IAAA,CAAK,SAAS,UAAA,IAAc,IAAA;AAAA,gBAC5B,IAAA,CAAK,SAAS,SAAA,IAAa,IAAA;AAAA,gBAC3B,IAAA,CAAK;AAAA,eAAA,EACR;AAAA;AAAA,WAAA;AAAA,UAdK;AAAA,SAgBR,GACH,CAAA,EACF;AAAA;AAAA;AAAA,GACF;AAEJ;AAmBA,SAAS,cAAA,CAAe;AAAA,EACtB,QAAA;AAAA,EACA,gBAAA;AAAA,EACA,eAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA,GAAW,IAAA;AAAA,EACX,YAAA,GAAe,KAAA;AAAA,EACf,YAAA,GAAe,IAAA;AAAA,EACf,WAAA;AAAA,EACA,OAAA;AAAA,EACA,YAAA;AAAA,EACA,SAAA,GAAY,KAAA;AAAA,EACZ,OAAA,GAAU,MAAA;AAAA,EACV,IAAA,GAAO,SAAA;AAAA,EACP,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAwB;AACtB,EAAA,MAAM,CAAC,iBAAA,EAAmB,oBAAoB,CAAA,GAAI,QAAA,EAA6B;AAC/E,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAI,QAAA,EAA8B;AAC1E,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,QAAA,CAAqB,EAAE,CAAA;AACzD,EAAA,MAAM,CAAC,aAAA,EAAe,gBAAgB,CAAA,GAAI,SAAS,KAAK,CAAA;AAGxD,EAAA,MAAM,kBAAkB,WAAA,GACpB,QAAA,CAAS,KAAA,CAAM,CAAA,EAAG,WAAW,CAAA,GAC7B,QAAA;AAGJ,EAAA,MAAM,mBAAA,GAAsB,WAAA;AAAA,IAC1B,CAAC,OAAA,KAAqB;AACpB,MAAA,oBAAA,CAAqB,QAAQ,EAAE,CAAA;AAC/B,MAAA,eAAA,GAAkB,OAAO,CAAA;AAAA,IAC3B,CAAA;AAAA,IACA,CAAC,eAAe;AAAA,GAClB;AAGA,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,OAAA,KAAqB;AACpB,MAAA,IAAI,CAAC,gBAAA,IAAoB,CAAC,OAAA,EAAS;AAEnC,MAAA,MAAMA,kBAAiB,QAAA,CAAS,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,OAAO,gBAAgB,CAAA;AACrE,MAAA,IAAI,CAACA,eAAAA,EAAgB;AAErB,MAAA,iBAAA,CAAkB,OAAO,CAAA;AACzB,MAAA,gBAAA,CAAiB,IAAI,CAAA;AAErB,MAAA,KAAA,CAAM,YAAY;AAChB,QAAA,IAAI;AACF,UAAA,MAAM,KAAA,GAAQ,MAAM,OAAA,CAAQ,OAAA,EAASA,eAAc,CAAA;AACnD,UAAA,YAAA,CAAa,KAAK,CAAA;AAAA,QACpB,SAAS,KAAA,EAAO;AACd,UAAA,OAAA,CAAQ,KAAA,CAAM,wBAAwB,KAAK,CAAA;AAC3C,UAAA,YAAA,CAAa,EAAE,CAAA;AAAA,QACjB,CAAA,SAAE;AACA,UAAA,gBAAA,CAAiB,KAAK,CAAA;AAAA,QACxB;AAAA,MACF,CAAA,GAAG;AAEH,MAAA,SAAA,GAAY,SAASA,eAAc,CAAA;AAAA,IACrC,CAAA;AAAA,IACA,CAAC,gBAAA,EAAkB,QAAA,EAAU,OAAA,EAAS,SAAS;AAAA,GACjD;AAGA,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,OAAA,KAAqB;AACpB,MAAA,IAAI,CAAC,SAAA,EAAW;AAChB,MAAA,KAAK,UAAU,OAAO,CAAA;AAAA,IACxB,CAAA;AAAA,IACA,CAAC,SAAS;AAAA,GACZ;AAGA,EAAA,IAAI,SAAA,EAAW;AACb,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,sBAAA,CAAuB,EAAE,OAAA,EAAS,IAAA,EAAM,CAAA;AAAA,UACxC,iCAAA;AAAA,UACA;AAAA,SACF;AAAA,QACA,cAAA,EAAa,EAAA;AAAA,QACb,WAAA,EAAU,iBAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEJ,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,OAAA,EAAA,EAAQ,WAAU,4CAAA,EAA6C,CAAA;AAAA,0BAChE,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,uBAAA,EAAwB,QAAA,EAAA,qBAAA,EAAmB;AAAA;AAAA;AAAA,KAC7D;AAAA,EAEJ;AAGA,EAAA,IAAI,QAAA,CAAS,WAAW,CAAA,EAAG;AACzB,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,sBAAA,CAAuB,EAAE,OAAA,EAAS,IAAA,EAAM,CAAA;AAAA,UACxC,iCAAA;AAAA,UACA;AAAA,SACF;AAAA,QACA,YAAA,EAAW,EAAA;AAAA,QACX,WAAA,EAAU,iBAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA,YAAA,oBACC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,yBAAwB,QAAA,EAAA,uBAAA,EAAqB;AAAA;AAAA,KAEjE;AAAA,EAEJ;AAGA,EAAA,MAAM,iBAAiB,QAAA,CAAS,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,OAAO,gBAAgB,CAAA;AAErE,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,GAAG,sBAAA,CAAuB,EAAE,SAAS,IAAA,EAAM,GAAG,SAAS,CAAA;AAAA,MAClE,WAAA,EAAU,iBAAA;AAAA,MACV,cAAA,EAAc,OAAA;AAAA,MACb,GAAG,KAAA;AAAA,MAGH,QAAA,EAAA;AAAA,QAAA,YAAA,mBACC,GAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,gBAAA;AAAA,YACA,MAAM,IAAA,IAAQ,MAAA;AAAA,YACd,QAAA,EAAU,eAAA;AAAA,YACV,eAAA,EAAiB;AAAA;AAAA,SACnB,mBAEA,GAAA;AAAA,UAAC,WAAA;AAAA,UAAA;AAAA,YACC,YAAA;AAAA,YACA,gBAAA;AAAA,YACA,iBAAA;AAAA,YACA,MAAM,IAAA,IAAQ,MAAA;AAAA,YACd,QAAA,EAAU,eAAA;AAAA,YACV,SAAA,EAAW,UAAU,aAAA,GAAgB,MAAA;AAAA,YACrC,SAAA,EAAW,aAAA;AAAA,YACX,eAAA,EAAiB;AAAA;AAAA,SACnB;AAAA,QAID,QAAA,IAAY,kBAAkB,cAAA,oBAC7B,GAAA;AAAA,UAAC,WAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,MAAA;AAAA,YACV,SAAA,EAAW,aAAA;AAAA,YACX,KAAA,EAAO,SAAA;AAAA,YACP,UAAA,EAAY,cAAA;AAAA,YACZ,UAAA,EAAY;AAAA;AAAA;AACd;AAAA;AAAA,GAEJ;AAEJ;AAEA,cAAA,CAAe,WAAA,GAAc,gBAAA","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';
|
|
@@ -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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/feedback/Modal/Modal.tsx"],"names":[],"mappings":"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","file":"chunk-YGLD22TU.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
|
+
{"version":3,"sources":["../src/components/feedback/Modal/Modal.tsx"],"names":[],"mappings":"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","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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/advanced/RichTextEditor/RichTextEditor.tsx","../src/components/advanced/RichTextEditor/RichTextEditor.variants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAqDA,SAAS,kBAAA,CACP,aAAA,EACA,cAAA,EACA,YAAA,EACA;AACA,EAAA,IAAI,cAAA,EAAgB;AAClB,IAAA,OAAO,eAAe,YAAY,CAAA;AAAA,EACpC;AAEA,EAAA,IAAI,OAAO,WAAW,WAAA,EAAa;AACjC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAO,MAAA,CAAO,MAAA,CAAO,aAAA,EAAe,YAAY,CAAA;AAClD;AAEA,SAAS,eAAA,CAAgB;AAAA,EACvB,SAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AAAA,EACA;AACF,CAAA,EAAyB;AACvB,EAAA,MAAM,OAAA,GAAgB,kBAAY,MAAM;AACtC,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAM,WAAA,GAAc,MAAA,CAAO,aAAA,CAAc,MAAM,EAAE,MAAM,CAAA;AACvD,IAAA,MAAM,GAAA,GAAM,kBAAA,CAAmB,KAAA,EAAO,aAAA,EAAe,WAAW,CAAA;AAEhE,IAAA,IAAI,QAAQ,IAAA,EAAM;AAElB,IAAA,IAAI,QAAQ,EAAA,EAAI;AACd,MAAA,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAgB,MAAM,CAAA,CAAE,SAAA,EAAU,CAAE,GAAA,EAAI;AAC/D,MAAA;AAAA,IACF;AAEA,IAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,eAAA,CAAgB,MAAM,CAAA,CAAE,OAAA,CAAQ,EAAE,IAAA,EAAM,GAAA,EAAK,EAAE,GAAA,EAAI;AAAA,EAC5E,CAAA,EAAG,CAAC,MAAA,EAAQ,aAAa,CAAC,CAAA;AAE1B,EAAA,MAAM,QAAA,GAAiB,kBAAY,MAAM;AACvC,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAM,GAAA,GAAM,kBAAA,CAAmB,WAAA,EAAa,cAAc,CAAA;AAE1D,IAAA,IAAI,GAAA,EAAK;AACP,MAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,QAAA,CAAS,EAAE,GAAA,EAAK,GAAA,EAAK,CAAA,CAAE,GAAA,EAAI;AAAA,IACpD;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,EAAQ,cAAc,CAAC,CAAA;AAE3B,EAAA,MAAM,WAAA,GAAoB,kBAAY,MAAM;AAC1C,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,YAAY,EAAE,IAAA,EAAM,CAAA,EAAG,IAAA,EAAM,CAAA,EAAG,aAAA,EAAe,IAAA,EAAM,EAAE,GAAA,EAAI;AAAA,EACpF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,IAAI,CAAC,QAAQ,OAAO,IAAA;AAEpB,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,0GAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,YAAA,EAAW,iBAAA;AAAA,MACX,WAAA,EAAU,mBAAA;AAAA,MACV,IAAA,EAAK,SAAA;AAAA,MAGL,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,QAAA,EAAU,CAAC,MAAA,CAAO,GAAA,GAAM,IAAA,EAAK;AAAA,YAC7B,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,IAAA,EAAK,CAAE,GAAA,EAAI;AAAA,YAEzD,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,QAAA,EAAU,CAAC,MAAA,CAAO,GAAA,GAAM,IAAA,EAAK;AAAA,YAC7B,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,IAAA,EAAK,CAAE,GAAA,EAAI;AAAA,YAEzD,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,QAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACjC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACpC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,eAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,iBAAA,EAAA,EAAkB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACxC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,aAAa,CAAA;AAAA,YACtC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,iBAAA,EAAkB,CAAE,GAAA,EAAI;AAAA,YAEtE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,UAAU,CAAA;AAAA,YACnC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,cAAA,EAAe,CAAE,GAAA,EAAI;AAAA,YAEnE,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,YAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,EAAE,SAAA,EAAW,QAAQ,CAAA;AAAA,YAC9C,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,OAAM,CAAE,YAAA,CAAa,MAAM,CAAA,CAAE,GAAA,EAAI;AAAA,YAEvE,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACpC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,EAAE,SAAA,EAAW,UAAU,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,OAAM,CAAE,YAAA,CAAa,QAAQ,CAAA,CAAE,GAAA,EAAI;AAAA,YAEzE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,EAAE,SAAA,EAAW,SAAS,CAAA;AAAA,YAC/C,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,OAAM,CAAE,YAAA,CAAa,OAAO,CAAA,CAAE,GAAA,EAAI;AAAA,YAExE,QAAA,kBAAA,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACrC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,YAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAChC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,iBAAA;AAAA,YACX,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,iBAAA,EAAkB,CAAE,GAAA,EAAI;AAAA,YAEtE,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAChC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,OAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,QAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAChC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,WAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA;AAChC;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,yBAAA,CAA0B;AAAA,EACjC,SAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,EAA4B;AAC1B,EAAA,MAAM,OAAA,GAAgB,kBAAY,MAAM;AACtC,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAM,WAAA,GAAc,MAAA,CAAO,aAAA,CAAc,MAAM,EAAE,MAAM,CAAA;AACvD,IAAA,MAAM,GAAA,GAAM,kBAAA,CAAmB,KAAA,EAAO,aAAA,EAAe,WAAW,CAAA;AAEhE,IAAA,IAAI,QAAQ,IAAA,EAAM;AAElB,IAAA,IAAI,QAAQ,EAAA,EAAI;AACd,MAAA,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAgB,MAAM,CAAA,CAAE,SAAA,EAAU,CAAE,GAAA,EAAI;AAC/D,MAAA;AAAA,IACF;AAEA,IAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,eAAA,CAAgB,MAAM,CAAA,CAAE,OAAA,CAAQ,EAAE,IAAA,EAAM,GAAA,EAAK,EAAE,GAAA,EAAI;AAAA,EAC5E,CAAA,EAAG,CAAC,MAAA,EAAQ,aAAa,CAAC,CAAA;AAE1B,EAAA,IAAI,CAAC,QAAQ,OAAO,IAAA;AAEpB,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,8FAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,YAAA,EAAW,sBAAA;AAAA,MACX,WAAA,EAAU,uBAAA;AAAA,MACV,IAAA,EAAK,SAAA;AAAA,MAEL,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,QAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACjC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACpC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,eAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,iBAAA,EAAA,EAAkB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACxC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBACrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,OAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA;AAC/B;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,2BAAA,CAA4B,EAAE,SAAA,EAAW,MAAA,EAAO,EAA8B;AACrF,EAAA,IAAI,CAAC,QAAQ,OAAO,IAAA;AAEpB,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,8FAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,YAAA,EAAW,kBAAA;AAAA,MACX,WAAA,EAAU,yBAAA;AAAA,MACV,IAAA,EAAK,SAAA;AAAA,MAEL,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,aAAa,CAAA;AAAA,YACtC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,iBAAA,EAAkB,CAAE,GAAA,EAAI;AAAA,YAEtE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,UAAU,CAAA;AAAA,YACnC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,cAAA,EAAe,CAAE,GAAA,EAAI;AAAA,YAEnE,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,YAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA;AAChC;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,cAAA,CAAe;AAAA,EACtB,cAAc,SAAA,GAAY,kBAAA;AAAA,EAC1B,SAAA,GAAY,KAAA;AAAA,EACZ,SAAA;AAAA,EACA,OAAA;AAAA,EACA,cAAA;AAAA,EACA,QAAA,GAAW,IAAA;AAAA,EACX,aAAa,EAAC;AAAA,EACd,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA,GAAc,kBAAA;AAAA,EACd,cAAA;AAAA,EACA,aAAA;AAAA,EACA,GAAA;AAAA,EACA,cAAA,GAAiB,IAAA;AAAA,EACjB,gBAAA,GAAmB,KAAA;AAAA,EACnB,WAAA,GAAc,IAAA;AAAA,EACd,eAAA,GAAkB,KAAA;AAAA,EAClB,GAAG;AACL,CAAA,EAAiE;AAC/D,EAAA,MAAM,SAAS,SAAA,CAAU;AAAA,IACvB,SAAA;AAAA,IACA,OAAA,EAAS,WAAW,cAAA,IAAkB,EAAA;AAAA,IACtC,QAAA;AAAA,IACA,WAAA,EAAa;AAAA,MACX,UAAA,EAAY;AAAA,QACV,YAAA,EAAc,SAAA;AAAA,QACd,IAAA,EAAM;AAAA;AACR,KACF;AAAA,IACA,UAAA,EAAY;AAAA,MACV,WAAW,SAAA,CAAU;AAAA,QACnB,OAAA,EAAS;AAAA,UACP,QAAQ,CAAC,CAAA,EAAG,GAAG,CAAA,EAAG,CAAA,EAAG,GAAG,CAAC;AAAA,SAC3B;AAAA,QACA,IAAA,EAAM,KAAA;AAAA,QACN,SAAA,EAAW;AAAA,OACZ,CAAA;AAAA,MACD,YAAY,SAAA,CAAU;AAAA,QACpB;AAAA,OACD,CAAA;AAAA,MACD,KAAK,SAAA,CAAU;AAAA,QACb,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA,SACT;AAAA,QACA,WAAA,EAAa;AAAA,OACd,CAAA;AAAA,MACD,MAAM,SAAA,CAAU;AAAA,QACd,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA;AACT,OACD,CAAA;AAAA,MACD,SAAA;AAAA,MACA,UAAU,SAAA,CAAU;AAAA,QAClB,KAAA,EAAO,CAAC,SAAA,EAAW,WAAW;AAAA,OAC/B,CAAA;AAAA,MACD,UAAU,SAAA,CAAU;AAAA,QAClB,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA,SACT;AAAA,QACA,UAAA,EAAY;AAAA,OACb,CAAA;AAAA,MACD,QAAA;AAAA,MACA,SAAS,SAAA,CAAU;AAAA,QACjB,MAAA,EAAQ;AAAA,OACT,CAAA;AAAA,MACD,MAAM,SAAA,CAAU;AAAA,QACd,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA,SACT;AAAA,QACA,SAAA,EAAW;AAAA,OACZ,CAAA;AAAA,MACD,QAAA;AAAA,MACA,UAAU,SAAA,CAAU;AAAA,QAClB,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA;AACT,OACD,CAAA;AAAA,MACD,YAAY,SAAA,CAAU;AAAA,QACpB,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA;AACT,OACD,CAAA;AAAA,MACD,GAAG;AAAA,KACL;AAAA,IACA,MAAA,EAAQ,CAAC,EAAE,MAAA,EAAQ,eAAc,KAAM;AACrC,MAAA,MAAA,GAAS,EAAE,MAAA,EAAQ,aAAA,EAAe,CAAA;AAAA,IACpC,CAAA;AAAA,IACA,OAAA,EAAS,CAAC,EAAE,MAAA,EAAQ,eAAc,KAAM;AACtC,MAAA,OAAA,GAAU,EAAE,MAAA,EAAQ,aAAA,EAAe,CAAA;AAAA,IACrC,CAAA;AAAA,IACA,QAAA,EAAU,CAAC,EAAE,MAAA,EAAQ,eAAc,KAAM;AACvC,MAAA,QAAA,GAAW,aAAA,CAAc,SAAS,CAAA;AAClC,MAAA,QAAA,GAAW,EAAE,MAAA,EAAQ,aAAA,EAAe,CAAA;AAAA,IACtC;AAAA,GACD,CAAA;AAKD,EAAM,gBAAU,MAAM;AACpB,IAAA,IAAI,MAAA,IAAU,YAAY,MAAA,EAAW;AACnC,MAAA,MAAM,cAAA,GAAiB,OAAO,OAAA,EAAQ;AACtC,MAAA,MAAM,aAAa,OAAO,OAAA,KAAY,WAAW,OAAA,GAAU,IAAA,CAAK,UAAU,OAAO,CAAA;AACjF,MAAA,MAAM,iBAAA,GAAoB,IAAA,CAAK,SAAA,CAAU,cAAc,CAAA;AAEvD,MAAA,IAAI,eAAe,iBAAA,EAAmB;AACpC,QAAA,MAAA,CAAO,QAAA,CAAS,WAAW,OAAO,CAAA;AAAA,MACpC;AAAA,IACF;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,EAAQ,OAAO,CAAC,CAAA;AAGpB,EAAM,gBAAU,MAAM;AACpB,IAAA,IAAI,MAAA,EAAQ;AACV,MAAA,MAAA,CAAO,YAAY,QAAQ,CAAA;AAAA,IAC7B;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,EAAQ,QAAQ,CAAC,CAAA;AAKrB,EAAM,KAAA,CAAA,mBAAA,CAAoB,KAAK,OAAO;AAAA,IACpC,MAAM,MAAM;AACV,MAAA,MAAA,EAAQ,SAAS,IAAA,EAAK;AAAA,IACxB,CAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAO,MAAM;AACX,MAAA,MAAA,EAAQ,SAAS,KAAA,EAAM;AAAA,IACzB,CAAA;AAAA,IACA,OAAA,EAAS,MAAM,MAAA,EAAQ,OAAA,EAAQ,IAAK,EAAA;AAAA,IACpC,OAAA,EAAS,MAAM,MAAA,EAAQ,OAAA,EAAQ,IAAK,EAAE,IAAA,EAAM,KAAA,EAAO,OAAA,EAAS,EAAC,EAAE;AAAA,IAC/D,OAAA,EAAS,MAAM,MAAA,EAAQ,OAAA,EAAQ,IAAK,EAAA;AAAA,IACpC,UAAA,EAAY,CAAC,UAAA,KAAe;AAC1B,MAAA,MAAA,EAAQ,QAAA,CAAS,WAAW,UAAU,CAAA;AAAA,IACxC;AAAA,GACF,CAAE,CAAA;AAGF,EAAA,MAAM,cAAA,GAAiB,eAAe,eAAA,KAAoB,KAAA;AAC1D,EAAA,MAAM,iBAAA,GAAoB,eAAe,eAAA,KAAoB,QAAA;AAE7D,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,wDAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,WAAA,EAAU,kBAAA;AAAA,MACV,OAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,GAAG,MAAM,KAAA,EAAM;AAAA,MACtC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,cAAA,oBACC,GAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,MAAA;AAAA,YACA,cAAA;AAAA,YACA;AAAA;AAAA,SACF;AAAA,wBAGF,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,iBAAA,EAEZ,QAAA,EAAA;AAAA,UAAA,cAAA,IAAkB,MAAA,oBACjB,GAAA;AAAA,YAAC,UAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,uBAAA;AAAA,cACV,MAAA;AAAA,cAEA,QAAA,kBAAA,GAAA;AAAA,gBAAC,yBAAA;AAAA,gBAAA;AAAA,kBACC,MAAA;AAAA,kBACA;AAAA;AAAA;AACF;AAAA,WACF;AAAA,UAID,oBAAoB,MAAA,oBACnB,GAAA;AAAA,YAAC,YAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,yBAAA;AAAA,cACV,MAAA;AAAA,cAEA,QAAA,kBAAA,GAAA,CAAC,+BAA4B,MAAA,EAAgB;AAAA;AAAA,WAC/C;AAAA,0BAGF,GAAA;AAAA,YAAC,aAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,oDAAA;AAAA,gBACA,2BAAA;AAAA,gBACA,oFAAA;AAAA,gBACA,8WAAA;AAAA,gBACA,oGAAA;AAAA,gBACA,+JAAA;AAAA,gBACA;AAAA,eACF;AAAA,cACA,MAAA;AAAA,cACA,OAAO,EAAE,KAAA,EAAO,QAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,MAAA;AAAO;AAAA;AAC7D,SAAA,EACF,CAAA;AAAA,QAEC,iBAAA,oBACC,GAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,iDAAA;AAAA,YACV,MAAA;AAAA,YACA,cAAA;AAAA,YACA;AAAA;AAAA;AACF;AAAA;AAAA,GAEJ;AAEJ;AC/qBO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC,sFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,UAAA;AAAA,QACJ,EAAA,EAAI,UAAA;AAAA,QACJ,EAAA,EAAI,UAAA;AAAA,QACJ,IAAA,EAAM;AAAA,OACR;AAAA,MACA,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,+BAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,gCAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,IAAA;AAAA,MACN,QAAA,EAAU,KAAA;AAAA,MACV,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,6BAAA,GAAgC,GAAA;AAAA,EAC3C,0EAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,GAAA,EAAK,aAAA;AAAA,QACL,MAAA,EAAQ,gCAAA;AAAA,QACR,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU,KAAA;AAAA,MACV,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,mCAAA,GAAsC,GAAA;AAAA,EACjD,mNAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,8CAAA;AAAA,QACT,MAAA,EAAQ;AAAA,OACV;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,SAAA;AAAA,MACT,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,6BAAA,GAAgC,GAAA;AAAA,EAC3C,yFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,EAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU;AAAA;AACZ;AAEJ;AAKO,IAAM,gCAAA,GAAmC,GAAA;AAAA,EAC9C,uFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,kCAAA,GAAqC,GAAA;AAAA,EAChD,qFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,iCAAA,GAAoC,GAAA;AAAA,EAC/C,6EAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ","file":"chunk-AR7K7Y4L.js","sourcesContent":["import type {\n RichTextBubbleMenuProps,\n RichTextEditorProps,\n RichTextEditorRef,\n RichTextFloatingMenuProps,\n RichTextToolbarProps,\n} from \"./RichTextEditor.types\"\n\nimport Highlight from \"@tiptap/extension-highlight\"\nimport Image from \"@tiptap/extension-image\"\nimport Link from \"@tiptap/extension-link\"\nimport Placeholder from \"@tiptap/extension-placeholder\"\nimport { Table } from \"@tiptap/extension-table\"\nimport { TableCell } from \"@tiptap/extension-table-cell\"\nimport { TableHeader } from \"@tiptap/extension-table-header\"\nimport { TableRow } from \"@tiptap/extension-table-row\"\nimport TaskItem from \"@tiptap/extension-task-item\"\nimport TaskList from \"@tiptap/extension-task-list\"\nimport TextAlign from \"@tiptap/extension-text-align\"\nimport Underline from \"@tiptap/extension-underline\"\nimport { EditorContent, useEditor } from \"@tiptap/react\"\nimport { BubbleMenu, FloatingMenu } from \"@tiptap/react/menus\"\nimport StarterKit from \"@tiptap/starter-kit\"\nimport {\n AlignCenterIcon,\n AlignLeftIcon,\n AlignRightIcon,\n BoldIcon,\n CodeIcon,\n Heading1Icon,\n Heading2Icon,\n Heading3Icon,\n HighlighterIcon,\n ImageIcon,\n ItalicIcon,\n LinkIcon,\n ListIcon,\n ListOrderedIcon,\n ListTodoIcon,\n MinusIcon,\n QuoteIcon,\n RedoIcon,\n StrikethroughIcon,\n TableIcon,\n UnderlineIcon,\n UndoIcon,\n} from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Divider } from \"../../primitives/Divider\"\nimport { Toggle } from \"../../primitives/Toggle\"\n\nfunction requestPromptValue(\n promptMessage: string,\n promptForValue?: (currentValue?: string) => null | string,\n currentValue?: string\n) {\n if (promptForValue) {\n return promptForValue(currentValue)\n }\n\n if (typeof window === \"undefined\") {\n return null\n }\n\n return window.prompt(promptMessage, currentValue)\n}\n\nfunction RichTextToolbar({\n className,\n editor,\n promptForImage,\n promptForLink,\n}: RichTextToolbarProps) {\n const addLink = React.useCallback(() => {\n if (!editor) return\n const previousUrl = editor.getAttributes(\"link\")[\"href\"] as string | undefined\n const url = requestPromptValue(\"URL\", promptForLink, previousUrl)\n\n if (url === null) return\n\n if (url === \"\") {\n editor.chain().focus().extendMarkRange(\"link\").unsetLink().run()\n return\n }\n\n editor.chain().focus().extendMarkRange(\"link\").setLink({ href: url }).run()\n }, [editor, promptForLink])\n\n const addImage = React.useCallback(() => {\n if (!editor) return\n const url = requestPromptValue(\"Image URL\", promptForImage)\n\n if (url) {\n editor.chain().focus().setImage({ src: url }).run()\n }\n }, [editor, promptForImage])\n\n const insertTable = React.useCallback(() => {\n if (!editor) return\n editor.chain().focus().insertTable({ rows: 3, cols: 3, withHeaderRow: true }).run()\n }, [editor])\n\n if (!editor) return null\n\n return (\n <div\n className={cn(\n \"bg-muted flex flex-wrap items-center gap-1 rounded-t-md border-b p-1 overflow-x-auto sm:overflow-visible\",\n className\n )}\n aria-label=\"Text formatting\"\n data-slot=\"rich-text-toolbar\"\n role=\"toolbar\"\n >\n {/* History */}\n <Toggle\n aria-label=\"Undo\"\n disabled={!editor.can().undo()}\n pressed={false}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().undo().run()}\n >\n <UndoIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Redo\"\n disabled={!editor.can().redo()}\n pressed={false}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().redo().run()}\n >\n <RedoIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Text formatting */}\n <Toggle\n aria-label=\"Bold\"\n pressed={editor.isActive(\"bold\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBold().run()}\n >\n <BoldIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Italic\"\n pressed={editor.isActive(\"italic\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleItalic().run()}\n >\n <ItalicIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Underline\"\n pressed={editor.isActive(\"underline\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleUnderline().run()}\n >\n <UnderlineIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Strikethrough\"\n pressed={editor.isActive(\"strike\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleStrike().run()}\n >\n <StrikethroughIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Inline code\"\n pressed={editor.isActive(\"code\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleCode().run()}\n >\n <CodeIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Highlight\"\n pressed={editor.isActive(\"highlight\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHighlight().run()}\n >\n <HighlighterIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Headings */}\n <Toggle\n aria-label=\"Heading 1\"\n pressed={editor.isActive(\"heading\", { level: 1 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 1 }).run()}\n >\n <Heading1Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Heading 2\"\n pressed={editor.isActive(\"heading\", { level: 2 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 2 }).run()}\n >\n <Heading2Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Heading 3\"\n pressed={editor.isActive(\"heading\", { level: 3 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 3 }).run()}\n >\n <Heading3Icon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Lists */}\n <Toggle\n aria-label=\"Bullet list\"\n pressed={editor.isActive(\"bulletList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBulletList().run()}\n >\n <ListIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Ordered list\"\n pressed={editor.isActive(\"orderedList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleOrderedList().run()}\n >\n <ListOrderedIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Task list\"\n pressed={editor.isActive(\"taskList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleTaskList().run()}\n >\n <ListTodoIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Alignment */}\n <Toggle\n aria-label=\"Align left\"\n pressed={editor.isActive({ textAlign: \"left\" })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setTextAlign(\"left\").run()}\n >\n <AlignLeftIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Align center\"\n pressed={editor.isActive({ textAlign: \"center\" })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setTextAlign(\"center\").run()}\n >\n <AlignCenterIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Align right\"\n pressed={editor.isActive({ textAlign: \"right\" })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setTextAlign(\"right\").run()}\n >\n <AlignRightIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Blocks */}\n <Toggle\n aria-label=\"Blockquote\"\n pressed={editor.isActive(\"blockquote\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBlockquote().run()}\n >\n <QuoteIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Horizontal rule\"\n pressed={false}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setHorizontalRule().run()}\n >\n <MinusIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Media & Links */}\n <Toggle\n aria-label=\"Insert link\"\n pressed={editor.isActive(\"link\")}\n size=\"sm\"\n onPressedChange={addLink}\n >\n <LinkIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Insert image\"\n pressed={false}\n size=\"sm\"\n onPressedChange={addImage}\n >\n <ImageIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Insert table\"\n pressed={false}\n size=\"sm\"\n onPressedChange={insertTable}\n >\n <TableIcon className=\"size-4\" />\n </Toggle>\n </div>\n )\n}\n\nfunction RichTextBubbleMenuContent({\n className,\n editor,\n promptForLink,\n}: RichTextBubbleMenuProps) {\n const addLink = React.useCallback(() => {\n if (!editor) return\n const previousUrl = editor.getAttributes(\"link\")[\"href\"] as string | undefined\n const url = requestPromptValue(\"URL\", promptForLink, previousUrl)\n\n if (url === null) return\n\n if (url === \"\") {\n editor.chain().focus().extendMarkRange(\"link\").unsetLink().run()\n return\n }\n\n editor.chain().focus().extendMarkRange(\"link\").setLink({ href: url }).run()\n }, [editor, promptForLink])\n\n if (!editor) return null\n\n return (\n <div\n className={cn(\n \"bg-popover text-popover-foreground flex items-center gap-0.5 rounded-md border p-1 shadow-md\",\n className\n )}\n aria-label=\"Selection formatting\"\n data-slot=\"rich-text-bubble-menu\"\n role=\"toolbar\"\n >\n <Toggle\n aria-label=\"Bold\"\n pressed={editor.isActive(\"bold\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBold().run()}\n >\n <BoldIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Italic\"\n pressed={editor.isActive(\"italic\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleItalic().run()}\n >\n <ItalicIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Underline\"\n pressed={editor.isActive(\"underline\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleUnderline().run()}\n >\n <UnderlineIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Strikethrough\"\n pressed={editor.isActive(\"strike\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleStrike().run()}\n >\n <StrikethroughIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Inline code\"\n pressed={editor.isActive(\"code\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleCode().run()}\n >\n <CodeIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Highlight\"\n pressed={editor.isActive(\"highlight\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHighlight().run()}\n >\n <HighlighterIcon className=\"size-4\" />\n </Toggle>\n <Divider className=\"mx-1 h-4\" orientation=\"vertical\" />\n <Toggle\n aria-label=\"Insert link\"\n pressed={editor.isActive(\"link\")}\n size=\"sm\"\n onPressedChange={addLink}\n >\n <LinkIcon className=\"size-4\" />\n </Toggle>\n </div>\n )\n}\n\nfunction RichTextFloatingMenuContent({ className, editor }: RichTextFloatingMenuProps) {\n if (!editor) return null\n\n return (\n <div\n className={cn(\n \"bg-popover text-popover-foreground flex items-center gap-0.5 rounded-md border p-1 shadow-md\",\n className\n )}\n aria-label=\"Block formatting\"\n data-slot=\"rich-text-floating-menu\"\n role=\"toolbar\"\n >\n <Toggle\n aria-label=\"Heading 1\"\n pressed={editor.isActive(\"heading\", { level: 1 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 1 }).run()}\n >\n <Heading1Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Heading 2\"\n pressed={editor.isActive(\"heading\", { level: 2 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 2 }).run()}\n >\n <Heading2Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Bullet list\"\n pressed={editor.isActive(\"bulletList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBulletList().run()}\n >\n <ListIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Ordered list\"\n pressed={editor.isActive(\"orderedList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleOrderedList().run()}\n >\n <ListOrderedIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Task list\"\n pressed={editor.isActive(\"taskList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleTaskList().run()}\n >\n <ListTodoIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Blockquote\"\n pressed={editor.isActive(\"blockquote\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBlockquote().run()}\n >\n <QuoteIcon className=\"size-4\" />\n </Toggle>\n </div>\n )\n}\n\nfunction RichTextEditor({\n \"aria-label\": ariaLabel = \"Rich text editor\",\n autofocus = false,\n className,\n content,\n defaultContent,\n editable = true,\n extensions = [],\n onBlur,\n onChange,\n onFocus,\n onUpdate,\n placeholder = \"Start writing...\",\n promptForImage,\n promptForLink,\n ref,\n showBubbleMenu = true,\n showFloatingMenu = false,\n showToolbar = true,\n toolbarPosition = \"top\",\n ...props\n}: RichTextEditorProps & { ref?: React.Ref<RichTextEditorRef> }) {\n const editor = useEditor({\n autofocus,\n content: content ?? defaultContent ?? \"\",\n editable,\n editorProps: {\n attributes: {\n \"aria-label\": ariaLabel,\n role: \"textbox\",\n },\n },\n extensions: [\n StarterKit.configure({\n heading: {\n levels: [1, 2, 3, 4, 5, 6],\n },\n link: false,\n underline: false,\n }),\n Placeholder.configure({\n placeholder,\n }),\n Link.configure({\n HTMLAttributes: {\n class: \"text-primary underline underline-offset-4 cursor-pointer\",\n },\n openOnClick: false,\n }),\n Image.configure({\n HTMLAttributes: {\n class: \"max-w-full h-auto rounded-md\",\n },\n }),\n Underline,\n TextAlign.configure({\n types: [\"heading\", \"paragraph\"],\n }),\n Highlight.configure({\n HTMLAttributes: {\n class: \"bg-yellow-200 dark:bg-yellow-800\",\n },\n multicolor: false,\n }),\n TaskList,\n TaskItem.configure({\n nested: true,\n }),\n Table.configure({\n HTMLAttributes: {\n class: \"border-collapse table-auto w-full\",\n },\n resizable: true,\n }),\n TableRow,\n TableCell.configure({\n HTMLAttributes: {\n class: \"border border-border p-2\",\n },\n }),\n TableHeader.configure({\n HTMLAttributes: {\n class: \"border border-border p-2 bg-muted font-semibold\",\n },\n }),\n ...extensions,\n ],\n onBlur: ({ editor: currentEditor }) => {\n onBlur?.({ editor: currentEditor })\n },\n onFocus: ({ editor: currentEditor }) => {\n onFocus?.({ editor: currentEditor })\n },\n onUpdate: ({ editor: currentEditor }) => {\n onChange?.(currentEditor.getJSON())\n onUpdate?.({ editor: currentEditor })\n },\n })\n\n // Sync content prop changes\n // Note: useEditor returns Editor | null, but ESLint infers it as always truthy after initialization\n /* eslint-disable @typescript-eslint/no-unnecessary-condition, react-you-might-not-need-an-effect/no-pass-data-to-parent */\n React.useEffect(() => {\n if (editor && content !== undefined) {\n const currentContent = editor.getJSON()\n const newContent = typeof content === \"string\" ? content : JSON.stringify(content)\n const currentContentStr = JSON.stringify(currentContent)\n\n if (newContent !== currentContentStr) {\n editor.commands.setContent(content)\n }\n }\n }, [editor, content])\n\n // Sync editable prop\n React.useEffect(() => {\n if (editor) {\n editor.setEditable(editable)\n }\n }, [editor, editable])\n /* eslint-enable @typescript-eslint/no-unnecessary-condition, react-you-might-not-need-an-effect/no-pass-data-to-parent */\n\n // Expose ref methods - editor can be null before initialization\n /* eslint-disable @typescript-eslint/no-unnecessary-condition */\n React.useImperativeHandle(ref, () => ({\n blur: () => {\n editor?.commands.blur()\n },\n editor,\n focus: () => {\n editor?.commands.focus()\n },\n getHTML: () => editor?.getHTML() ?? \"\",\n getJSON: () => editor?.getJSON() ?? { type: \"doc\", content: [] },\n getText: () => editor?.getText() ?? \"\",\n setContent: (newContent) => {\n editor?.commands.setContent(newContent)\n },\n }))\n /* eslint-enable @typescript-eslint/no-unnecessary-condition */\n\n const showTopToolbar = showToolbar && toolbarPosition === \"top\"\n const showBottomToolbar = showToolbar && toolbarPosition === \"bottom\"\n\n return (\n <div\n className={cn(\n \"bg-background text-foreground border rounded-md w-full\",\n className\n )}\n data-slot=\"rich-text-editor\"\n style={{ width: \"100%\", ...props.style }}\n {...props}\n >\n {showTopToolbar && (\n <RichTextToolbar\n editor={editor}\n promptForImage={promptForImage}\n promptForLink={promptForLink}\n />\n )}\n\n <div className=\"relative w-full\">\n {/* eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- editor can be null */}\n {showBubbleMenu && editor && (\n <BubbleMenu\n className=\"rich-text-bubble-menu\"\n editor={editor}\n >\n <RichTextBubbleMenuContent\n editor={editor}\n promptForLink={promptForLink}\n />\n </BubbleMenu>\n )}\n\n {/* eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- editor can be null */}\n {showFloatingMenu && editor && (\n <FloatingMenu\n className=\"rich-text-floating-menu\"\n editor={editor}\n >\n <RichTextFloatingMenuContent editor={editor} />\n </FloatingMenu>\n )}\n\n <EditorContent\n className={cn(\n \"prose prose-sm dark:prose-invert max-w-none w-full\",\n \"focus-within:outline-none\",\n \"[&_.ProseMirror]:min-h-36 [&_.ProseMirror]:p-4 [&_.ProseMirror]:focus:outline-none\",\n \"[&_.ProseMirror_p.is-editor-empty:first-child::before]:text-muted-foreground [&_.ProseMirror_p.is-editor-empty:first-child::before]:content-[attr(data-placeholder)] [&_.ProseMirror_p.is-editor-empty:first-child::before]:float-left [&_.ProseMirror_p.is-editor-empty:first-child::before]:h-0 [&_.ProseMirror_p.is-editor-empty:first-child::before]:pointer-events-none\",\n \"[&_.ProseMirror_ul[data-type='taskList']]:list-none [&_.ProseMirror_ul[data-type='taskList']]:pl-0\",\n \"[&_.ProseMirror_ul[data-type='taskList']_li]:flex [&_.ProseMirror_ul[data-type='taskList']_li]:items-start [&_.ProseMirror_ul[data-type='taskList']_li]:gap-2\",\n \"[&_.ProseMirror_ul[data-type='taskList']_li_input]:mt-1\"\n )}\n editor={editor}\n style={{ width: \"100%\", minWidth: \"100%\", maxWidth: \"none\" }}\n />\n </div>\n\n {showBottomToolbar && (\n <RichTextToolbar\n className=\"rounded-t-none rounded-b-md border-t border-b-0\"\n editor={editor}\n promptForImage={promptForImage}\n promptForLink={promptForLink}\n />\n )}\n </div>\n )\n}\n\nexport {\n RichTextBubbleMenuContent as RichTextBubbleMenu,\n RichTextEditor,\n RichTextFloatingMenuContent as RichTextFloatingMenu,\n RichTextToolbar,\n}\n","import { cva } from \"class-variance-authority\"\n\n/**\n * RichTextEditor container variants\n */\nexport const richTextEditorVariants = cva(\n \"relative flex flex-col rounded-lg border border-border bg-background overflow-hidden\",\n {\n variants: {\n size: {\n sm: \"min-h-52\",\n md: \"min-h-72\",\n lg: \"min-h-96\",\n full: \"h-full min-h-72\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n false: \"\",\n },\n focused: {\n true: \"ring-2 ring-ring ring-offset-2\",\n false: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n disabled: false,\n focused: false,\n },\n }\n)\n\n/**\n * RichTextEditor toolbar variants\n */\nexport const richTextEditorToolbarVariants = cva(\n \"flex items-center gap-1 flex-wrap border-b border-border bg-muted/30 p-2\",\n {\n variants: {\n position: {\n top: \"order-first\",\n bottom: \"order-last border-b-0 border-t\",\n floating: \"absolute top-2 left-2 right-2 z-10 rounded-md shadow-md border bg-background\",\n },\n compact: {\n true: \"p-1 gap-0.5\",\n false: \"p-2 gap-1\",\n },\n },\n defaultVariants: {\n position: \"top\",\n compact: false,\n },\n }\n)\n\n/**\n * RichTextEditor toolbar button variants\n */\nexport const richTextEditorToolbarButtonVariants = cva(\n \"inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default: \"hover:bg-accent hover:text-accent-foreground\",\n active: \"bg-accent text-accent-foreground\",\n },\n size: {\n sm: \"h-7 w-7\",\n md: \"h-8 w-8\",\n lg: \"h-9 w-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n },\n }\n)\n\n/**\n * RichTextEditor content area variants\n */\nexport const richTextEditorContentVariants = cva(\n \"flex-1 overflow-auto p-4 prose prose-sm dark:prose-invert max-w-none focus:outline-none\",\n {\n variants: {\n editable: {\n true: \"\",\n false: \"pointer-events-none\",\n },\n },\n defaultVariants: {\n editable: true,\n },\n }\n)\n\n/**\n * RichTextEditor bubble menu variants\n */\nexport const richTextEditorBubbleMenuVariants = cva(\n \"flex items-center gap-0.5 rounded-md border border-border bg-background p-1 shadow-md\",\n {\n variants: {\n visible: {\n true: \"opacity-100\",\n false: \"opacity-0 pointer-events-none\",\n },\n },\n defaultVariants: {\n visible: true,\n },\n }\n)\n\n/**\n * RichTextEditor floating menu variants\n */\nexport const richTextEditorFloatingMenuVariants = cva(\n \"flex items-center gap-1 rounded-md border border-border bg-background p-1 shadow-md\",\n {\n variants: {\n visible: {\n true: \"opacity-100\",\n false: \"opacity-0 pointer-events-none\",\n },\n },\n defaultVariants: {\n visible: true,\n },\n }\n)\n\n/**\n * RichTextEditor placeholder variants\n */\nexport const richTextEditorPlaceholderVariants = cva(\n \"absolute top-4 left-4 text-muted-foreground pointer-events-none select-none\",\n {\n variants: {\n visible: {\n true: \"opacity-100\",\n false: \"opacity-0\",\n },\n },\n defaultVariants: {\n visible: true,\n },\n }\n)\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/advanced/RichTextEditor/RichTextEditor.tsx","../src/components/advanced/RichTextEditor/RichTextEditor.variants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAqDA,SAAS,kBAAA,CACP,aAAA,EACA,cAAA,EACA,YAAA,EACA;AACA,EAAA,IAAI,cAAA,EAAgB;AAClB,IAAA,OAAO,eAAe,YAAY,CAAA;AAAA,EACpC;AAEA,EAAA,IAAI,OAAO,WAAW,WAAA,EAAa;AACjC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAO,MAAA,CAAO,MAAA,CAAO,aAAA,EAAe,YAAY,CAAA;AAClD;AAEA,SAAS,eAAA,CAAgB;AAAA,EACvB,SAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AAAA,EACA;AACF,CAAA,EAAyB;AACvB,EAAA,MAAM,OAAA,GAAgB,kBAAY,MAAM;AACtC,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAM,WAAA,GAAc,MAAA,CAAO,aAAA,CAAc,MAAM,EAAE,MAAM,CAAA;AACvD,IAAA,MAAM,GAAA,GAAM,kBAAA,CAAmB,KAAA,EAAO,aAAA,EAAe,WAAW,CAAA;AAEhE,IAAA,IAAI,QAAQ,IAAA,EAAM;AAElB,IAAA,IAAI,QAAQ,EAAA,EAAI;AACd,MAAA,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAgB,MAAM,CAAA,CAAE,SAAA,EAAU,CAAE,GAAA,EAAI;AAC/D,MAAA;AAAA,IACF;AAEA,IAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,eAAA,CAAgB,MAAM,CAAA,CAAE,OAAA,CAAQ,EAAE,IAAA,EAAM,GAAA,EAAK,EAAE,GAAA,EAAI;AAAA,EAC5E,CAAA,EAAG,CAAC,MAAA,EAAQ,aAAa,CAAC,CAAA;AAE1B,EAAA,MAAM,QAAA,GAAiB,kBAAY,MAAM;AACvC,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAM,GAAA,GAAM,kBAAA,CAAmB,WAAA,EAAa,cAAc,CAAA;AAE1D,IAAA,IAAI,GAAA,EAAK;AACP,MAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,QAAA,CAAS,EAAE,GAAA,EAAK,GAAA,EAAK,CAAA,CAAE,GAAA,EAAI;AAAA,IACpD;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,EAAQ,cAAc,CAAC,CAAA;AAE3B,EAAA,MAAM,WAAA,GAAoB,kBAAY,MAAM;AAC1C,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,YAAY,EAAE,IAAA,EAAM,CAAA,EAAG,IAAA,EAAM,CAAA,EAAG,aAAA,EAAe,IAAA,EAAM,EAAE,GAAA,EAAI;AAAA,EACpF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,IAAI,CAAC,QAAQ,OAAO,IAAA;AAEpB,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,0GAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,YAAA,EAAW,iBAAA;AAAA,MACX,WAAA,EAAU,mBAAA;AAAA,MACV,IAAA,EAAK,SAAA;AAAA,MAGL,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,QAAA,EAAU,CAAC,MAAA,CAAO,GAAA,GAAM,IAAA,EAAK;AAAA,YAC7B,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,IAAA,EAAK,CAAE,GAAA,EAAI;AAAA,YAEzD,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,QAAA,EAAU,CAAC,MAAA,CAAO,GAAA,GAAM,IAAA,EAAK;AAAA,YAC7B,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,IAAA,EAAK,CAAE,GAAA,EAAI;AAAA,YAEzD,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,QAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACjC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACpC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,eAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,iBAAA,EAAA,EAAkB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACxC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,aAAa,CAAA;AAAA,YACtC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,iBAAA,EAAkB,CAAE,GAAA,EAAI;AAAA,YAEtE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,UAAU,CAAA;AAAA,YACnC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,cAAA,EAAe,CAAE,GAAA,EAAI;AAAA,YAEnE,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,YAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,EAAE,SAAA,EAAW,QAAQ,CAAA;AAAA,YAC9C,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,OAAM,CAAE,YAAA,CAAa,MAAM,CAAA,CAAE,GAAA,EAAI;AAAA,YAEvE,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACpC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,EAAE,SAAA,EAAW,UAAU,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,OAAM,CAAE,YAAA,CAAa,QAAQ,CAAA,CAAE,GAAA,EAAI;AAAA,YAEzE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,EAAE,SAAA,EAAW,SAAS,CAAA;AAAA,YAC/C,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,OAAM,CAAE,YAAA,CAAa,OAAO,CAAA,CAAE,GAAA,EAAI;AAAA,YAExE,QAAA,kBAAA,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACrC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,YAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAChC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,iBAAA;AAAA,YACX,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,iBAAA,EAAkB,CAAE,GAAA,EAAI;AAAA,YAEtE,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAChC;AAAA,wBAEA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBAGrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,OAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,QAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAChC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,KAAA;AAAA,YACT,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,WAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA;AAChC;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,yBAAA,CAA0B;AAAA,EACjC,SAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,EAA4B;AAC1B,EAAA,MAAM,OAAA,GAAgB,kBAAY,MAAM;AACtC,IAAA,IAAI,CAAC,MAAA,EAAQ;AACb,IAAA,MAAM,WAAA,GAAc,MAAA,CAAO,aAAA,CAAc,MAAM,EAAE,MAAM,CAAA;AACvD,IAAA,MAAM,GAAA,GAAM,kBAAA,CAAmB,KAAA,EAAO,aAAA,EAAe,WAAW,CAAA;AAEhE,IAAA,IAAI,QAAQ,IAAA,EAAM;AAElB,IAAA,IAAI,QAAQ,EAAA,EAAI;AACd,MAAA,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAgB,MAAM,CAAA,CAAE,SAAA,EAAU,CAAE,GAAA,EAAI;AAC/D,MAAA;AAAA,IACF;AAEA,IAAA,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,eAAA,CAAgB,MAAM,CAAA,CAAE,OAAA,CAAQ,EAAE,IAAA,EAAM,GAAA,EAAK,EAAE,GAAA,EAAI;AAAA,EAC5E,CAAA,EAAG,CAAC,MAAA,EAAQ,aAAa,CAAC,CAAA;AAE1B,EAAA,IAAI,CAAC,QAAQ,OAAO,IAAA;AAEpB,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,8FAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,YAAA,EAAW,sBAAA;AAAA,MACX,WAAA,EAAU,uBAAA;AAAA,MACV,IAAA,EAAK,SAAA;AAAA,MAEL,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,MAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,QAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACjC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACpC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,eAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA;AAAA,YACjC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,YAAA,EAAa,CAAE,GAAA,EAAI;AAAA,YAEjE,QAAA,kBAAA,GAAA,CAAC,iBAAA,EAAA,EAAkB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACxC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,UAAA,EAAW,CAAE,GAAA,EAAI;AAAA,YAE/D,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA;AAAA,YACpC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,eAAA,EAAgB,CAAE,GAAA,EAAI;AAAA,YAEpE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,UAAA,EAAW,aAAY,UAAA,EAAW,CAAA;AAAA,wBACrD,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,YAC/B,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,OAAA;AAAA,YAEjB,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA;AAC/B;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,2BAAA,CAA4B,EAAE,SAAA,EAAW,MAAA,EAAO,EAA8B;AACrF,EAAA,IAAI,CAAC,QAAQ,OAAO,IAAA;AAEpB,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,8FAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,YAAA,EAAW,kBAAA;AAAA,MACX,WAAA,EAAU,yBAAA;AAAA,MACV,IAAA,EAAK,SAAA;AAAA,MAEL,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,SAAS,MAAA,CAAO,QAAA,CAAS,WAAW,EAAE,KAAA,EAAO,GAAG,CAAA;AAAA,YAChD,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,EAAM,CAAE,KAAA,EAAM,CAAE,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,EAAE,GAAA,EAAI;AAAA,YAE9E,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,aAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SAC/B;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,cAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,aAAa,CAAA;AAAA,YACtC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,iBAAA,EAAkB,CAAE,GAAA,EAAI;AAAA,YAEtE,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACtC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,WAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,UAAU,CAAA;AAAA,YACnC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,cAAA,EAAe,CAAE,GAAA,EAAI;AAAA,YAEnE,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,SACnC;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAW,YAAA;AAAA,YACX,OAAA,EAAS,MAAA,CAAO,QAAA,CAAS,YAAY,CAAA;AAAA,YACrC,IAAA,EAAK,IAAA;AAAA,YACL,eAAA,EAAiB,MAAM,MAAA,CAAO,KAAA,GAAQ,KAAA,EAAM,CAAE,gBAAA,EAAiB,CAAE,GAAA,EAAI;AAAA,YAErE,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA;AAChC;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,cAAA,CAAe;AAAA,EACtB,cAAc,SAAA,GAAY,kBAAA;AAAA,EAC1B,SAAA,GAAY,KAAA;AAAA,EACZ,SAAA;AAAA,EACA,OAAA;AAAA,EACA,cAAA;AAAA,EACA,QAAA,GAAW,IAAA;AAAA,EACX,aAAa,EAAC;AAAA,EACd,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA,GAAc,kBAAA;AAAA,EACd,cAAA;AAAA,EACA,aAAA;AAAA,EACA,GAAA;AAAA,EACA,cAAA,GAAiB,IAAA;AAAA,EACjB,gBAAA,GAAmB,KAAA;AAAA,EACnB,WAAA,GAAc,IAAA;AAAA,EACd,eAAA,GAAkB,KAAA;AAAA,EAClB,GAAG;AACL,CAAA,EAAiE;AAC/D,EAAA,MAAM,SAAS,SAAA,CAAU;AAAA,IACvB,SAAA;AAAA,IACA,OAAA,EAAS,WAAW,cAAA,IAAkB,EAAA;AAAA,IACtC,QAAA;AAAA,IACA,WAAA,EAAa;AAAA,MACX,UAAA,EAAY;AAAA,QACV,YAAA,EAAc,SAAA;AAAA,QACd,IAAA,EAAM;AAAA;AACR,KACF;AAAA,IACA,UAAA,EAAY;AAAA,MACV,WAAW,SAAA,CAAU;AAAA,QACnB,OAAA,EAAS;AAAA,UACP,QAAQ,CAAC,CAAA,EAAG,GAAG,CAAA,EAAG,CAAA,EAAG,GAAG,CAAC;AAAA,SAC3B;AAAA,QACA,IAAA,EAAM,KAAA;AAAA,QACN,SAAA,EAAW;AAAA,OACZ,CAAA;AAAA,MACD,YAAY,SAAA,CAAU;AAAA,QACpB;AAAA,OACD,CAAA;AAAA,MACD,KAAK,SAAA,CAAU;AAAA,QACb,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA,SACT;AAAA,QACA,WAAA,EAAa;AAAA,OACd,CAAA;AAAA,MACD,MAAM,SAAA,CAAU;AAAA,QACd,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA;AACT,OACD,CAAA;AAAA,MACD,SAAA;AAAA,MACA,UAAU,SAAA,CAAU;AAAA,QAClB,KAAA,EAAO,CAAC,SAAA,EAAW,WAAW;AAAA,OAC/B,CAAA;AAAA,MACD,UAAU,SAAA,CAAU;AAAA,QAClB,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA,SACT;AAAA,QACA,UAAA,EAAY;AAAA,OACb,CAAA;AAAA,MACD,QAAA;AAAA,MACA,SAAS,SAAA,CAAU;AAAA,QACjB,MAAA,EAAQ;AAAA,OACT,CAAA;AAAA,MACD,MAAM,SAAA,CAAU;AAAA,QACd,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA,SACT;AAAA,QACA,SAAA,EAAW;AAAA,OACZ,CAAA;AAAA,MACD,QAAA;AAAA,MACA,UAAU,SAAA,CAAU;AAAA,QAClB,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA;AACT,OACD,CAAA;AAAA,MACD,YAAY,SAAA,CAAU;AAAA,QACpB,cAAA,EAAgB;AAAA,UACd,KAAA,EAAO;AAAA;AACT,OACD,CAAA;AAAA,MACD,GAAG;AAAA,KACL;AAAA,IACA,MAAA,EAAQ,CAAC,EAAE,MAAA,EAAQ,eAAc,KAAM;AACrC,MAAA,MAAA,GAAS,EAAE,MAAA,EAAQ,aAAA,EAAe,CAAA;AAAA,IACpC,CAAA;AAAA,IACA,OAAA,EAAS,CAAC,EAAE,MAAA,EAAQ,eAAc,KAAM;AACtC,MAAA,OAAA,GAAU,EAAE,MAAA,EAAQ,aAAA,EAAe,CAAA;AAAA,IACrC,CAAA;AAAA,IACA,QAAA,EAAU,CAAC,EAAE,MAAA,EAAQ,eAAc,KAAM;AACvC,MAAA,QAAA,GAAW,aAAA,CAAc,SAAS,CAAA;AAClC,MAAA,QAAA,GAAW,EAAE,MAAA,EAAQ,aAAA,EAAe,CAAA;AAAA,IACtC;AAAA,GACD,CAAA;AAKD,EAAM,gBAAU,MAAM;AACpB,IAAA,IAAI,MAAA,IAAU,YAAY,MAAA,EAAW;AACnC,MAAA,MAAM,cAAA,GAAiB,OAAO,OAAA,EAAQ;AACtC,MAAA,MAAM,aAAa,OAAO,OAAA,KAAY,WAAW,OAAA,GAAU,IAAA,CAAK,UAAU,OAAO,CAAA;AACjF,MAAA,MAAM,iBAAA,GAAoB,IAAA,CAAK,SAAA,CAAU,cAAc,CAAA;AAEvD,MAAA,IAAI,eAAe,iBAAA,EAAmB;AACpC,QAAA,MAAA,CAAO,QAAA,CAAS,WAAW,OAAO,CAAA;AAAA,MACpC;AAAA,IACF;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,EAAQ,OAAO,CAAC,CAAA;AAGpB,EAAM,gBAAU,MAAM;AACpB,IAAA,IAAI,MAAA,EAAQ;AACV,MAAA,MAAA,CAAO,YAAY,QAAQ,CAAA;AAAA,IAC7B;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,EAAQ,QAAQ,CAAC,CAAA;AAKrB,EAAM,KAAA,CAAA,mBAAA,CAAoB,KAAK,OAAO;AAAA,IACpC,MAAM,MAAM;AACV,MAAA,MAAA,EAAQ,SAAS,IAAA,EAAK;AAAA,IACxB,CAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAO,MAAM;AACX,MAAA,MAAA,EAAQ,SAAS,KAAA,EAAM;AAAA,IACzB,CAAA;AAAA,IACA,OAAA,EAAS,MAAM,MAAA,EAAQ,OAAA,EAAQ,IAAK,EAAA;AAAA,IACpC,OAAA,EAAS,MAAM,MAAA,EAAQ,OAAA,EAAQ,IAAK,EAAE,IAAA,EAAM,KAAA,EAAO,OAAA,EAAS,EAAC,EAAE;AAAA,IAC/D,OAAA,EAAS,MAAM,MAAA,EAAQ,OAAA,EAAQ,IAAK,EAAA;AAAA,IACpC,UAAA,EAAY,CAAC,UAAA,KAAe;AAC1B,MAAA,MAAA,EAAQ,QAAA,CAAS,WAAW,UAAU,CAAA;AAAA,IACxC;AAAA,GACF,CAAE,CAAA;AAGF,EAAA,MAAM,cAAA,GAAiB,eAAe,eAAA,KAAoB,KAAA;AAC1D,EAAA,MAAM,iBAAA,GAAoB,eAAe,eAAA,KAAoB,QAAA;AAE7D,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,wDAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,WAAA,EAAU,kBAAA;AAAA,MACV,OAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,GAAG,MAAM,KAAA,EAAM;AAAA,MACtC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,cAAA,oBACC,GAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,MAAA;AAAA,YACA,cAAA;AAAA,YACA;AAAA;AAAA,SACF;AAAA,wBAGF,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,iBAAA,EAEZ,QAAA,EAAA;AAAA,UAAA,cAAA,IAAkB,MAAA,oBACjB,GAAA;AAAA,YAAC,UAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,uBAAA;AAAA,cACV,MAAA;AAAA,cAEA,QAAA,kBAAA,GAAA;AAAA,gBAAC,yBAAA;AAAA,gBAAA;AAAA,kBACC,MAAA;AAAA,kBACA;AAAA;AAAA;AACF;AAAA,WACF;AAAA,UAID,oBAAoB,MAAA,oBACnB,GAAA;AAAA,YAAC,YAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,yBAAA;AAAA,cACV,MAAA;AAAA,cAEA,QAAA,kBAAA,GAAA,CAAC,+BAA4B,MAAA,EAAgB;AAAA;AAAA,WAC/C;AAAA,0BAGF,GAAA;AAAA,YAAC,aAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,oDAAA;AAAA,gBACA,2BAAA;AAAA,gBACA,oFAAA;AAAA,gBACA,8WAAA;AAAA,gBACA,oGAAA;AAAA,gBACA,+JAAA;AAAA,gBACA;AAAA,eACF;AAAA,cACA,MAAA;AAAA,cACA,OAAO,EAAE,KAAA,EAAO,QAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,MAAA;AAAO;AAAA;AAC7D,SAAA,EACF,CAAA;AAAA,QAEC,iBAAA,oBACC,GAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,iDAAA;AAAA,YACV,MAAA;AAAA,YACA,cAAA;AAAA,YACA;AAAA;AAAA;AACF;AAAA;AAAA,GAEJ;AAEJ;AC/qBO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC,sFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,UAAA;AAAA,QACJ,EAAA,EAAI,UAAA;AAAA,QACJ,EAAA,EAAI,UAAA;AAAA,QACJ,IAAA,EAAM;AAAA,OACR;AAAA,MACA,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,+BAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,gCAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,IAAA;AAAA,MACN,QAAA,EAAU,KAAA;AAAA,MACV,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,6BAAA,GAAgC,GAAA;AAAA,EAC3C,0EAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,GAAA,EAAK,aAAA;AAAA,QACL,MAAA,EAAQ,gCAAA;AAAA,QACR,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU,KAAA;AAAA,MACV,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,mCAAA,GAAsC,GAAA;AAAA,EACjD,mNAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,8CAAA;AAAA,QACT,MAAA,EAAQ;AAAA,OACV;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,SAAA;AAAA,MACT,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,6BAAA,GAAgC,GAAA;AAAA,EAC3C,yFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,EAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU;AAAA;AACZ;AAEJ;AAKO,IAAM,gCAAA,GAAmC,GAAA;AAAA,EAC9C,uFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,kCAAA,GAAqC,GAAA;AAAA,EAChD,qFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,iCAAA,GAAoC,GAAA;AAAA,EAC/C,6EAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ","file":"chunk-FXFVFSG5.js","sourcesContent":["import type {\n RichTextBubbleMenuProps,\n RichTextEditorProps,\n RichTextEditorRef,\n RichTextFloatingMenuProps,\n RichTextToolbarProps,\n} from \"./RichTextEditor.types\"\n\nimport Highlight from \"@tiptap/extension-highlight\"\nimport Image from \"@tiptap/extension-image\"\nimport Link from \"@tiptap/extension-link\"\nimport Placeholder from \"@tiptap/extension-placeholder\"\nimport { Table } from \"@tiptap/extension-table\"\nimport { TableCell } from \"@tiptap/extension-table-cell\"\nimport { TableHeader } from \"@tiptap/extension-table-header\"\nimport { TableRow } from \"@tiptap/extension-table-row\"\nimport TaskItem from \"@tiptap/extension-task-item\"\nimport TaskList from \"@tiptap/extension-task-list\"\nimport TextAlign from \"@tiptap/extension-text-align\"\nimport Underline from \"@tiptap/extension-underline\"\nimport { EditorContent, useEditor } from \"@tiptap/react\"\nimport { BubbleMenu, FloatingMenu } from \"@tiptap/react/menus\"\nimport StarterKit from \"@tiptap/starter-kit\"\nimport {\n AlignCenterIcon,\n AlignLeftIcon,\n AlignRightIcon,\n BoldIcon,\n CodeIcon,\n Heading1Icon,\n Heading2Icon,\n Heading3Icon,\n HighlighterIcon,\n ImageIcon,\n ItalicIcon,\n LinkIcon,\n ListIcon,\n ListOrderedIcon,\n ListTodoIcon,\n MinusIcon,\n QuoteIcon,\n RedoIcon,\n StrikethroughIcon,\n TableIcon,\n UnderlineIcon,\n UndoIcon,\n} from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Divider } from \"../../primitives/Divider\"\nimport { Toggle } from \"../../primitives/Toggle\"\n\nfunction requestPromptValue(\n promptMessage: string,\n promptForValue?: (currentValue?: string) => null | string,\n currentValue?: string\n) {\n if (promptForValue) {\n return promptForValue(currentValue)\n }\n\n if (typeof window === \"undefined\") {\n return null\n }\n\n return window.prompt(promptMessage, currentValue)\n}\n\nfunction RichTextToolbar({\n className,\n editor,\n promptForImage,\n promptForLink,\n}: RichTextToolbarProps) {\n const addLink = React.useCallback(() => {\n if (!editor) return\n const previousUrl = editor.getAttributes(\"link\")[\"href\"] as string | undefined\n const url = requestPromptValue(\"URL\", promptForLink, previousUrl)\n\n if (url === null) return\n\n if (url === \"\") {\n editor.chain().focus().extendMarkRange(\"link\").unsetLink().run()\n return\n }\n\n editor.chain().focus().extendMarkRange(\"link\").setLink({ href: url }).run()\n }, [editor, promptForLink])\n\n const addImage = React.useCallback(() => {\n if (!editor) return\n const url = requestPromptValue(\"Image URL\", promptForImage)\n\n if (url) {\n editor.chain().focus().setImage({ src: url }).run()\n }\n }, [editor, promptForImage])\n\n const insertTable = React.useCallback(() => {\n if (!editor) return\n editor.chain().focus().insertTable({ rows: 3, cols: 3, withHeaderRow: true }).run()\n }, [editor])\n\n if (!editor) return null\n\n return (\n <div\n className={cn(\n \"bg-muted flex flex-wrap items-center gap-1 rounded-t-md border-b p-1 overflow-x-auto sm:overflow-visible\",\n className\n )}\n aria-label=\"Text formatting\"\n data-slot=\"rich-text-toolbar\"\n role=\"toolbar\"\n >\n {/* History */}\n <Toggle\n aria-label=\"Undo\"\n disabled={!editor.can().undo()}\n pressed={false}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().undo().run()}\n >\n <UndoIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Redo\"\n disabled={!editor.can().redo()}\n pressed={false}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().redo().run()}\n >\n <RedoIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Text formatting */}\n <Toggle\n aria-label=\"Bold\"\n pressed={editor.isActive(\"bold\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBold().run()}\n >\n <BoldIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Italic\"\n pressed={editor.isActive(\"italic\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleItalic().run()}\n >\n <ItalicIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Underline\"\n pressed={editor.isActive(\"underline\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleUnderline().run()}\n >\n <UnderlineIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Strikethrough\"\n pressed={editor.isActive(\"strike\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleStrike().run()}\n >\n <StrikethroughIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Inline code\"\n pressed={editor.isActive(\"code\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleCode().run()}\n >\n <CodeIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Highlight\"\n pressed={editor.isActive(\"highlight\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHighlight().run()}\n >\n <HighlighterIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Headings */}\n <Toggle\n aria-label=\"Heading 1\"\n pressed={editor.isActive(\"heading\", { level: 1 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 1 }).run()}\n >\n <Heading1Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Heading 2\"\n pressed={editor.isActive(\"heading\", { level: 2 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 2 }).run()}\n >\n <Heading2Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Heading 3\"\n pressed={editor.isActive(\"heading\", { level: 3 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 3 }).run()}\n >\n <Heading3Icon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Lists */}\n <Toggle\n aria-label=\"Bullet list\"\n pressed={editor.isActive(\"bulletList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBulletList().run()}\n >\n <ListIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Ordered list\"\n pressed={editor.isActive(\"orderedList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleOrderedList().run()}\n >\n <ListOrderedIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Task list\"\n pressed={editor.isActive(\"taskList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleTaskList().run()}\n >\n <ListTodoIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Alignment */}\n <Toggle\n aria-label=\"Align left\"\n pressed={editor.isActive({ textAlign: \"left\" })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setTextAlign(\"left\").run()}\n >\n <AlignLeftIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Align center\"\n pressed={editor.isActive({ textAlign: \"center\" })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setTextAlign(\"center\").run()}\n >\n <AlignCenterIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Align right\"\n pressed={editor.isActive({ textAlign: \"right\" })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setTextAlign(\"right\").run()}\n >\n <AlignRightIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Blocks */}\n <Toggle\n aria-label=\"Blockquote\"\n pressed={editor.isActive(\"blockquote\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBlockquote().run()}\n >\n <QuoteIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Horizontal rule\"\n pressed={false}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().setHorizontalRule().run()}\n >\n <MinusIcon className=\"size-4\" />\n </Toggle>\n\n <Divider className=\"mx-1 h-6\" orientation=\"vertical\" />\n\n {/* Media & Links */}\n <Toggle\n aria-label=\"Insert link\"\n pressed={editor.isActive(\"link\")}\n size=\"sm\"\n onPressedChange={addLink}\n >\n <LinkIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Insert image\"\n pressed={false}\n size=\"sm\"\n onPressedChange={addImage}\n >\n <ImageIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Insert table\"\n pressed={false}\n size=\"sm\"\n onPressedChange={insertTable}\n >\n <TableIcon className=\"size-4\" />\n </Toggle>\n </div>\n )\n}\n\nfunction RichTextBubbleMenuContent({\n className,\n editor,\n promptForLink,\n}: RichTextBubbleMenuProps) {\n const addLink = React.useCallback(() => {\n if (!editor) return\n const previousUrl = editor.getAttributes(\"link\")[\"href\"] as string | undefined\n const url = requestPromptValue(\"URL\", promptForLink, previousUrl)\n\n if (url === null) return\n\n if (url === \"\") {\n editor.chain().focus().extendMarkRange(\"link\").unsetLink().run()\n return\n }\n\n editor.chain().focus().extendMarkRange(\"link\").setLink({ href: url }).run()\n }, [editor, promptForLink])\n\n if (!editor) return null\n\n return (\n <div\n className={cn(\n \"bg-popover text-popover-foreground flex items-center gap-0.5 rounded-md border p-1 shadow-md\",\n className\n )}\n aria-label=\"Selection formatting\"\n data-slot=\"rich-text-bubble-menu\"\n role=\"toolbar\"\n >\n <Toggle\n aria-label=\"Bold\"\n pressed={editor.isActive(\"bold\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBold().run()}\n >\n <BoldIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Italic\"\n pressed={editor.isActive(\"italic\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleItalic().run()}\n >\n <ItalicIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Underline\"\n pressed={editor.isActive(\"underline\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleUnderline().run()}\n >\n <UnderlineIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Strikethrough\"\n pressed={editor.isActive(\"strike\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleStrike().run()}\n >\n <StrikethroughIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Inline code\"\n pressed={editor.isActive(\"code\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleCode().run()}\n >\n <CodeIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Highlight\"\n pressed={editor.isActive(\"highlight\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHighlight().run()}\n >\n <HighlighterIcon className=\"size-4\" />\n </Toggle>\n <Divider className=\"mx-1 h-4\" orientation=\"vertical\" />\n <Toggle\n aria-label=\"Insert link\"\n pressed={editor.isActive(\"link\")}\n size=\"sm\"\n onPressedChange={addLink}\n >\n <LinkIcon className=\"size-4\" />\n </Toggle>\n </div>\n )\n}\n\nfunction RichTextFloatingMenuContent({ className, editor }: RichTextFloatingMenuProps) {\n if (!editor) return null\n\n return (\n <div\n className={cn(\n \"bg-popover text-popover-foreground flex items-center gap-0.5 rounded-md border p-1 shadow-md\",\n className\n )}\n aria-label=\"Block formatting\"\n data-slot=\"rich-text-floating-menu\"\n role=\"toolbar\"\n >\n <Toggle\n aria-label=\"Heading 1\"\n pressed={editor.isActive(\"heading\", { level: 1 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 1 }).run()}\n >\n <Heading1Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Heading 2\"\n pressed={editor.isActive(\"heading\", { level: 2 })}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleHeading({ level: 2 }).run()}\n >\n <Heading2Icon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Bullet list\"\n pressed={editor.isActive(\"bulletList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBulletList().run()}\n >\n <ListIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Ordered list\"\n pressed={editor.isActive(\"orderedList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleOrderedList().run()}\n >\n <ListOrderedIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Task list\"\n pressed={editor.isActive(\"taskList\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleTaskList().run()}\n >\n <ListTodoIcon className=\"size-4\" />\n </Toggle>\n <Toggle\n aria-label=\"Blockquote\"\n pressed={editor.isActive(\"blockquote\")}\n size=\"sm\"\n onPressedChange={() => editor.chain().focus().toggleBlockquote().run()}\n >\n <QuoteIcon className=\"size-4\" />\n </Toggle>\n </div>\n )\n}\n\nfunction RichTextEditor({\n \"aria-label\": ariaLabel = \"Rich text editor\",\n autofocus = false,\n className,\n content,\n defaultContent,\n editable = true,\n extensions = [],\n onBlur,\n onChange,\n onFocus,\n onUpdate,\n placeholder = \"Start writing...\",\n promptForImage,\n promptForLink,\n ref,\n showBubbleMenu = true,\n showFloatingMenu = false,\n showToolbar = true,\n toolbarPosition = \"top\",\n ...props\n}: RichTextEditorProps & { ref?: React.Ref<RichTextEditorRef> }) {\n const editor = useEditor({\n autofocus,\n content: content ?? defaultContent ?? \"\",\n editable,\n editorProps: {\n attributes: {\n \"aria-label\": ariaLabel,\n role: \"textbox\",\n },\n },\n extensions: [\n StarterKit.configure({\n heading: {\n levels: [1, 2, 3, 4, 5, 6],\n },\n link: false,\n underline: false,\n }),\n Placeholder.configure({\n placeholder,\n }),\n Link.configure({\n HTMLAttributes: {\n class: \"text-primary underline underline-offset-4 cursor-pointer\",\n },\n openOnClick: false,\n }),\n Image.configure({\n HTMLAttributes: {\n class: \"max-w-full h-auto rounded-md\",\n },\n }),\n Underline,\n TextAlign.configure({\n types: [\"heading\", \"paragraph\"],\n }),\n Highlight.configure({\n HTMLAttributes: {\n class: \"bg-yellow-200 dark:bg-yellow-800\",\n },\n multicolor: false,\n }),\n TaskList,\n TaskItem.configure({\n nested: true,\n }),\n Table.configure({\n HTMLAttributes: {\n class: \"border-collapse table-auto w-full\",\n },\n resizable: true,\n }),\n TableRow,\n TableCell.configure({\n HTMLAttributes: {\n class: \"border border-border p-2\",\n },\n }),\n TableHeader.configure({\n HTMLAttributes: {\n class: \"border border-border p-2 bg-muted font-semibold\",\n },\n }),\n ...extensions,\n ],\n onBlur: ({ editor: currentEditor }) => {\n onBlur?.({ editor: currentEditor })\n },\n onFocus: ({ editor: currentEditor }) => {\n onFocus?.({ editor: currentEditor })\n },\n onUpdate: ({ editor: currentEditor }) => {\n onChange?.(currentEditor.getJSON())\n onUpdate?.({ editor: currentEditor })\n },\n })\n\n // Sync content prop changes\n // Note: useEditor returns Editor | null, but ESLint infers it as always truthy after initialization\n /* eslint-disable @typescript-eslint/no-unnecessary-condition, react-you-might-not-need-an-effect/no-pass-data-to-parent */\n React.useEffect(() => {\n if (editor && content !== undefined) {\n const currentContent = editor.getJSON()\n const newContent = typeof content === \"string\" ? content : JSON.stringify(content)\n const currentContentStr = JSON.stringify(currentContent)\n\n if (newContent !== currentContentStr) {\n editor.commands.setContent(content)\n }\n }\n }, [editor, content])\n\n // Sync editable prop\n React.useEffect(() => {\n if (editor) {\n editor.setEditable(editable)\n }\n }, [editor, editable])\n /* eslint-enable @typescript-eslint/no-unnecessary-condition, react-you-might-not-need-an-effect/no-pass-data-to-parent */\n\n // Expose ref methods - editor can be null before initialization\n /* eslint-disable @typescript-eslint/no-unnecessary-condition */\n React.useImperativeHandle(ref, () => ({\n blur: () => {\n editor?.commands.blur()\n },\n editor,\n focus: () => {\n editor?.commands.focus()\n },\n getHTML: () => editor?.getHTML() ?? \"\",\n getJSON: () => editor?.getJSON() ?? { type: \"doc\", content: [] },\n getText: () => editor?.getText() ?? \"\",\n setContent: (newContent) => {\n editor?.commands.setContent(newContent)\n },\n }))\n /* eslint-enable @typescript-eslint/no-unnecessary-condition */\n\n const showTopToolbar = showToolbar && toolbarPosition === \"top\"\n const showBottomToolbar = showToolbar && toolbarPosition === \"bottom\"\n\n return (\n <div\n className={cn(\n \"bg-background text-foreground border rounded-md w-full\",\n className\n )}\n data-slot=\"rich-text-editor\"\n style={{ width: \"100%\", ...props.style }}\n {...props}\n >\n {showTopToolbar && (\n <RichTextToolbar\n editor={editor}\n promptForImage={promptForImage}\n promptForLink={promptForLink}\n />\n )}\n\n <div className=\"relative w-full\">\n {/* eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- editor can be null */}\n {showBubbleMenu && editor && (\n <BubbleMenu\n className=\"rich-text-bubble-menu\"\n editor={editor}\n >\n <RichTextBubbleMenuContent\n editor={editor}\n promptForLink={promptForLink}\n />\n </BubbleMenu>\n )}\n\n {/* eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- editor can be null */}\n {showFloatingMenu && editor && (\n <FloatingMenu\n className=\"rich-text-floating-menu\"\n editor={editor}\n >\n <RichTextFloatingMenuContent editor={editor} />\n </FloatingMenu>\n )}\n\n <EditorContent\n className={cn(\n \"prose prose-sm dark:prose-invert max-w-none w-full\",\n \"focus-within:outline-none\",\n \"[&_.ProseMirror]:min-h-36 [&_.ProseMirror]:p-4 [&_.ProseMirror]:focus:outline-none\",\n \"[&_.ProseMirror_p.is-editor-empty:first-child::before]:text-muted-foreground [&_.ProseMirror_p.is-editor-empty:first-child::before]:content-[attr(data-placeholder)] [&_.ProseMirror_p.is-editor-empty:first-child::before]:float-left [&_.ProseMirror_p.is-editor-empty:first-child::before]:h-0 [&_.ProseMirror_p.is-editor-empty:first-child::before]:pointer-events-none\",\n \"[&_.ProseMirror_ul[data-type='taskList']]:list-none [&_.ProseMirror_ul[data-type='taskList']]:pl-0\",\n \"[&_.ProseMirror_ul[data-type='taskList']_li]:flex [&_.ProseMirror_ul[data-type='taskList']_li]:items-start [&_.ProseMirror_ul[data-type='taskList']_li]:gap-2\",\n \"[&_.ProseMirror_ul[data-type='taskList']_li_input]:mt-1\"\n )}\n editor={editor}\n style={{ width: \"100%\", minWidth: \"100%\", maxWidth: \"none\" }}\n />\n </div>\n\n {showBottomToolbar && (\n <RichTextToolbar\n className=\"rounded-t-none rounded-b-md border-t border-b-0\"\n editor={editor}\n promptForImage={promptForImage}\n promptForLink={promptForLink}\n />\n )}\n </div>\n )\n}\n\nexport {\n RichTextBubbleMenuContent as RichTextBubbleMenu,\n RichTextEditor,\n RichTextFloatingMenuContent as RichTextFloatingMenu,\n RichTextToolbar,\n}\n","import { cva } from \"class-variance-authority\"\n\n/**\n * RichTextEditor container variants\n */\nexport const richTextEditorVariants = cva(\n \"relative flex flex-col rounded-lg border border-border bg-background overflow-hidden\",\n {\n variants: {\n size: {\n sm: \"min-h-52\",\n md: \"min-h-72\",\n lg: \"min-h-96\",\n full: \"h-full min-h-72\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n false: \"\",\n },\n focused: {\n true: \"ring-2 ring-ring ring-offset-2\",\n false: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n disabled: false,\n focused: false,\n },\n }\n)\n\n/**\n * RichTextEditor toolbar variants\n */\nexport const richTextEditorToolbarVariants = cva(\n \"flex items-center gap-1 flex-wrap border-b border-border bg-muted/30 p-2\",\n {\n variants: {\n position: {\n top: \"order-first\",\n bottom: \"order-last border-b-0 border-t\",\n floating: \"absolute top-2 left-2 right-2 z-10 rounded-md shadow-md border bg-background\",\n },\n compact: {\n true: \"p-1 gap-0.5\",\n false: \"p-2 gap-1\",\n },\n },\n defaultVariants: {\n position: \"top\",\n compact: false,\n },\n }\n)\n\n/**\n * RichTextEditor toolbar button variants\n */\nexport const richTextEditorToolbarButtonVariants = cva(\n \"inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default: \"hover:bg-accent hover:text-accent-foreground\",\n active: \"bg-accent text-accent-foreground\",\n },\n size: {\n sm: \"h-7 w-7\",\n md: \"h-8 w-8\",\n lg: \"h-9 w-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n },\n }\n)\n\n/**\n * RichTextEditor content area variants\n */\nexport const richTextEditorContentVariants = cva(\n \"flex-1 overflow-auto p-4 prose prose-sm dark:prose-invert max-w-none focus:outline-none\",\n {\n variants: {\n editable: {\n true: \"\",\n false: \"pointer-events-none\",\n },\n },\n defaultVariants: {\n editable: true,\n },\n }\n)\n\n/**\n * RichTextEditor bubble menu variants\n */\nexport const richTextEditorBubbleMenuVariants = cva(\n \"flex items-center gap-0.5 rounded-md border border-border bg-background p-1 shadow-md\",\n {\n variants: {\n visible: {\n true: \"opacity-100\",\n false: \"opacity-0 pointer-events-none\",\n },\n },\n defaultVariants: {\n visible: true,\n },\n }\n)\n\n/**\n * RichTextEditor floating menu variants\n */\nexport const richTextEditorFloatingMenuVariants = cva(\n \"flex items-center gap-1 rounded-md border border-border bg-background p-1 shadow-md\",\n {\n variants: {\n visible: {\n true: \"opacity-100\",\n false: \"opacity-0 pointer-events-none\",\n },\n },\n defaultVariants: {\n visible: true,\n },\n }\n)\n\n/**\n * RichTextEditor placeholder variants\n */\nexport const richTextEditorPlaceholderVariants = cva(\n \"absolute top-4 left-4 text-muted-foreground pointer-events-none select-none\",\n {\n variants: {\n visible: {\n true: \"opacity-100\",\n false: \"opacity-0\",\n },\n },\n defaultVariants: {\n visible: true,\n },\n }\n)\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-RVAYDRMA.js';
|
|
2
2
|
import { Check, X } from 'lucide-react';
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
4
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -383,5 +383,5 @@ function Stepper({
|
|
|
383
383
|
}
|
|
384
384
|
|
|
385
385
|
export { Stepper, stepperConnectorHorizontalVariants, stepperConnectorVerticalVariants, stepperDescriptionVariants, stepperIndicatorVariants, stepperItemVariants, stepperLabelVariants, stepperVariants };
|
|
386
|
-
//# sourceMappingURL=chunk-
|
|
387
|
-
//# sourceMappingURL=chunk-
|
|
386
|
+
//# sourceMappingURL=chunk-GDZECJFS.js.map
|
|
387
|
+
//# sourceMappingURL=chunk-GDZECJFS.js.map
|