@etus/ui 0.4.0-beta.2 → 0.4.0-beta.4
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-23BHD62H.js +288 -0
- package/dist/chunk-23BHD62H.js.map +1 -0
- package/dist/chunk-2D6OFVPN.js +145 -0
- package/dist/chunk-2D6OFVPN.js.map +1 -0
- package/dist/chunk-2HM5Z2YP.js +834 -0
- package/dist/chunk-2HM5Z2YP.js.map +1 -0
- package/dist/chunk-2IFYXJ3H.js +107 -0
- package/dist/chunk-2IFYXJ3H.js.map +1 -0
- package/dist/chunk-2UGDLAYC.js +71 -0
- package/dist/chunk-2UGDLAYC.js.map +1 -0
- package/dist/chunk-2VHARFMD.js +670 -0
- package/dist/chunk-2VHARFMD.js.map +1 -0
- package/dist/chunk-2XJWE2XR.js +36 -0
- package/dist/chunk-2XJWE2XR.js.map +1 -0
- package/dist/chunk-2Y7PQ6ZL.js +96 -0
- package/dist/chunk-2Y7PQ6ZL.js.map +1 -0
- package/dist/chunk-32IJQOUV.js +226 -0
- package/dist/chunk-32IJQOUV.js.map +1 -0
- package/dist/chunk-33JGPMUW.js +170 -0
- package/dist/chunk-33JGPMUW.js.map +1 -0
- package/dist/chunk-36XTKR3B.js +544 -0
- package/dist/chunk-36XTKR3B.js.map +1 -0
- package/dist/chunk-3L5G7VI2.js +203 -0
- package/dist/chunk-3L5G7VI2.js.map +1 -0
- package/dist/chunk-3MJNJKAF.js +264 -0
- package/dist/chunk-3MJNJKAF.js.map +1 -0
- package/dist/chunk-3NFQXZHO.js +199 -0
- package/dist/chunk-3NFQXZHO.js.map +1 -0
- package/dist/chunk-3RJEA2MM.js +560 -0
- package/dist/chunk-3RJEA2MM.js.map +1 -0
- package/dist/chunk-3WOGOTOV.js +152 -0
- package/dist/chunk-3WOGOTOV.js.map +1 -0
- package/dist/chunk-46ESMCEQ.js +80 -0
- package/dist/chunk-46ESMCEQ.js.map +1 -0
- package/dist/chunk-4GQN76L7.js +228 -0
- package/dist/chunk-4GQN76L7.js.map +1 -0
- package/dist/chunk-4MQNDQ4O.js +62 -0
- package/dist/chunk-4MQNDQ4O.js.map +1 -0
- package/dist/chunk-4RSHPKHB.js +268 -0
- package/dist/chunk-4RSHPKHB.js.map +1 -0
- package/dist/chunk-4Y72SPNL.js +283 -0
- package/dist/chunk-4Y72SPNL.js.map +1 -0
- package/dist/chunk-57KTYE5H.js +273 -0
- package/dist/chunk-57KTYE5H.js.map +1 -0
- package/dist/chunk-5J5OL4IV.js +529 -0
- package/dist/chunk-5J5OL4IV.js.map +1 -0
- package/dist/chunk-5KTMPLDK.js +251 -0
- package/dist/chunk-5KTMPLDK.js.map +1 -0
- package/dist/chunk-5XQIH6WM.js +204 -0
- package/dist/chunk-5XQIH6WM.js.map +1 -0
- package/dist/chunk-5YDFC74M.js +310 -0
- package/dist/chunk-5YDFC74M.js.map +1 -0
- package/dist/chunk-5ZEYTBTU.js +288 -0
- package/dist/chunk-5ZEYTBTU.js.map +1 -0
- package/dist/chunk-5ZKKXLPF.js +177 -0
- package/dist/chunk-5ZKKXLPF.js.map +1 -0
- package/dist/chunk-5ZWFIDO2.js +3 -0
- package/dist/chunk-5ZWFIDO2.js.map +1 -0
- package/dist/chunk-65YSTUD2.js +206 -0
- package/dist/chunk-65YSTUD2.js.map +1 -0
- package/dist/chunk-6GWO7JNP.js +438 -0
- package/dist/chunk-6GWO7JNP.js.map +1 -0
- package/dist/chunk-6SHOL6WR.js +163 -0
- package/dist/chunk-6SHOL6WR.js.map +1 -0
- package/dist/chunk-6SZRWNPT.js +67 -0
- package/dist/chunk-6SZRWNPT.js.map +1 -0
- package/dist/chunk-6VCJU6XD.js +19 -0
- package/dist/chunk-6VCJU6XD.js.map +1 -0
- package/dist/chunk-6XY7QYVR.js +812 -0
- package/dist/chunk-6XY7QYVR.js.map +1 -0
- package/dist/chunk-6Z73ZQOP.js +3 -0
- package/dist/chunk-6Z73ZQOP.js.map +1 -0
- package/dist/chunk-6ZAMTPGN.js +309 -0
- package/dist/chunk-6ZAMTPGN.js.map +1 -0
- package/dist/chunk-7I6KK6QE.js +411 -0
- package/dist/chunk-7I6KK6QE.js.map +1 -0
- package/dist/chunk-7RTHGI6E.js +154 -0
- package/dist/chunk-7RTHGI6E.js.map +1 -0
- package/dist/chunk-7Y2UQMX6.js +524 -0
- package/dist/chunk-7Y2UQMX6.js.map +1 -0
- package/dist/chunk-7ZJ32KRQ.js +100 -0
- package/dist/chunk-7ZJ32KRQ.js.map +1 -0
- package/dist/chunk-AB3S55W5.js +1208 -0
- package/dist/chunk-AB3S55W5.js.map +1 -0
- package/dist/chunk-AEE5GDNA.js +220 -0
- package/dist/chunk-AEE5GDNA.js.map +1 -0
- package/dist/chunk-AEHYYTFW.js +70 -0
- package/dist/chunk-AEHYYTFW.js.map +1 -0
- package/dist/chunk-AFCSDND5.js +58 -0
- package/dist/chunk-AFCSDND5.js.map +1 -0
- package/dist/chunk-AR3OXNPL.js +70 -0
- package/dist/chunk-AR3OXNPL.js.map +1 -0
- package/dist/chunk-ARNVOHVW.js +103 -0
- package/dist/chunk-ARNVOHVW.js.map +1 -0
- package/dist/chunk-ATIEGLR2.js +3 -0
- package/dist/chunk-ATIEGLR2.js.map +1 -0
- package/dist/chunk-AUCDXPWH.js +853 -0
- package/dist/chunk-AUCDXPWH.js.map +1 -0
- package/dist/chunk-AWYOWR5N.js +928 -0
- package/dist/chunk-AWYOWR5N.js.map +1 -0
- package/dist/chunk-AZANPNLR.js +134 -0
- package/dist/chunk-AZANPNLR.js.map +1 -0
- package/dist/chunk-B3BDIM4H.js +137 -0
- package/dist/chunk-B3BDIM4H.js.map +1 -0
- package/dist/chunk-B4ETIQOO.js +101 -0
- package/dist/chunk-B4ETIQOO.js.map +1 -0
- package/dist/chunk-B6KQKQ4S.js +774 -0
- package/dist/chunk-B6KQKQ4S.js.map +1 -0
- package/dist/chunk-B7ZLPQSO.js +181 -0
- package/dist/chunk-B7ZLPQSO.js.map +1 -0
- package/dist/chunk-BECPEVUL.js +115 -0
- package/dist/chunk-BECPEVUL.js.map +1 -0
- package/dist/chunk-BFBGESUI.js +217 -0
- package/dist/chunk-BFBGESUI.js.map +1 -0
- package/dist/chunk-BITATKTH.js +3 -0
- package/dist/chunk-BITATKTH.js.map +1 -0
- package/dist/chunk-BIUVOZQG.js +370 -0
- package/dist/chunk-BIUVOZQG.js.map +1 -0
- package/dist/chunk-BQMQULAC.js +37 -0
- package/dist/chunk-BQMQULAC.js.map +1 -0
- package/dist/chunk-BWGZKU3I.js +3 -0
- package/dist/chunk-BWGZKU3I.js.map +1 -0
- package/dist/chunk-CKD4UBV6.js +138 -0
- package/dist/chunk-CKD4UBV6.js.map +1 -0
- package/dist/chunk-CNRV2IGH.js +111 -0
- package/dist/chunk-CNRV2IGH.js.map +1 -0
- package/dist/chunk-CP2PEDG2.js +383 -0
- package/dist/chunk-CP2PEDG2.js.map +1 -0
- package/dist/chunk-CSXT7SKR.js +139 -0
- package/dist/chunk-CSXT7SKR.js.map +1 -0
- package/dist/chunk-CYIFWQ5Y.js +197 -0
- package/dist/chunk-CYIFWQ5Y.js.map +1 -0
- package/dist/chunk-D2V2HKLX.js +249 -0
- package/dist/chunk-D2V2HKLX.js.map +1 -0
- package/dist/chunk-D6TH3EGA.js +204 -0
- package/dist/chunk-D6TH3EGA.js.map +1 -0
- package/dist/chunk-DDM2I5C6.js +199 -0
- package/dist/chunk-DDM2I5C6.js.map +1 -0
- package/dist/chunk-DDR24GOP.js +182 -0
- package/dist/chunk-DDR24GOP.js.map +1 -0
- package/dist/chunk-DL7D5F7B.js +63 -0
- package/dist/chunk-DL7D5F7B.js.map +1 -0
- package/dist/chunk-DNAGXK2C.js +91 -0
- package/dist/chunk-DNAGXK2C.js.map +1 -0
- package/dist/chunk-DYDXGWH2.js +109 -0
- package/dist/chunk-DYDXGWH2.js.map +1 -0
- package/dist/chunk-E27SQ54A.js +122 -0
- package/dist/chunk-E27SQ54A.js.map +1 -0
- package/dist/chunk-EGYWK2XX.js +316 -0
- package/dist/chunk-EGYWK2XX.js.map +1 -0
- package/dist/chunk-ESLSPRYA.js +875 -0
- package/dist/chunk-ESLSPRYA.js.map +1 -0
- package/dist/chunk-EVUHEBWX.js +35 -0
- package/dist/chunk-EVUHEBWX.js.map +1 -0
- package/dist/chunk-F6ZKBK5B.js +265 -0
- package/dist/chunk-F6ZKBK5B.js.map +1 -0
- package/dist/chunk-F7XARQUW.js +82 -0
- package/dist/chunk-F7XARQUW.js.map +1 -0
- package/dist/chunk-FCSYPOHF.js +77 -0
- package/dist/chunk-FCSYPOHF.js.map +1 -0
- package/dist/chunk-FDES5YDF.js +159 -0
- package/dist/chunk-FDES5YDF.js.map +1 -0
- package/dist/chunk-FPCRGFNY.js +776 -0
- package/dist/chunk-FPCRGFNY.js.map +1 -0
- package/dist/chunk-FRDYXDAE.js +69 -0
- package/dist/chunk-FRDYXDAE.js.map +1 -0
- package/dist/chunk-FSMHI7DW.js +291 -0
- package/dist/chunk-FSMHI7DW.js.map +1 -0
- package/dist/chunk-FYJHWYPM.js +539 -0
- package/dist/chunk-FYJHWYPM.js.map +1 -0
- package/dist/chunk-G2V7D7VC.js +371 -0
- package/dist/chunk-G2V7D7VC.js.map +1 -0
- package/dist/chunk-G5TWK7L3.js +667 -0
- package/dist/chunk-G5TWK7L3.js.map +1 -0
- package/dist/chunk-G6SIIN2B.js +3 -0
- package/dist/chunk-G6SIIN2B.js.map +1 -0
- package/dist/chunk-GAP3OZR7.js +223 -0
- package/dist/chunk-GAP3OZR7.js.map +1 -0
- package/dist/chunk-GKMR5SVC.js +97 -0
- package/dist/chunk-GKMR5SVC.js.map +1 -0
- package/dist/chunk-GL56KIFL.js +79 -0
- package/dist/chunk-GL56KIFL.js.map +1 -0
- package/dist/chunk-GPW57XOW.js +80 -0
- package/dist/chunk-GPW57XOW.js.map +1 -0
- package/dist/chunk-H4ANCFZG.js +233 -0
- package/dist/chunk-H4ANCFZG.js.map +1 -0
- package/dist/chunk-HAEZLC7V.js +122 -0
- package/dist/chunk-HAEZLC7V.js.map +1 -0
- package/dist/chunk-HKXQLWGR.js +335 -0
- package/dist/chunk-HKXQLWGR.js.map +1 -0
- package/dist/chunk-HRNDJU7D.js +5 -5
- package/dist/chunk-HRNDJU7D.js.map +1 -1
- package/dist/chunk-HXHB2CK5.js +108 -0
- package/dist/chunk-HXHB2CK5.js.map +1 -0
- package/dist/chunk-I7ZLEC7Y.js +128 -0
- package/dist/chunk-I7ZLEC7Y.js.map +1 -0
- package/dist/chunk-IBVCSZCH.js +142 -0
- package/dist/chunk-IBVCSZCH.js.map +1 -0
- package/dist/chunk-ICAQYWCX.js +153 -0
- package/dist/chunk-ICAQYWCX.js.map +1 -0
- package/dist/chunk-ICM45N2K.js +225 -0
- package/dist/chunk-ICM45N2K.js.map +1 -0
- package/dist/chunk-IFHF4UES.js +387 -0
- package/dist/chunk-IFHF4UES.js.map +1 -0
- package/dist/chunk-ILAV2AZ4.js +226 -0
- package/dist/chunk-ILAV2AZ4.js.map +1 -0
- package/dist/chunk-IRIIK3BU.js +215 -0
- package/dist/chunk-IRIIK3BU.js.map +1 -0
- package/dist/chunk-IRKDMISK.js +62 -0
- package/dist/chunk-IRKDMISK.js.map +1 -0
- package/dist/chunk-IXJHHR3Y.js +3 -0
- package/dist/chunk-IXJHHR3Y.js.map +1 -0
- package/dist/chunk-J62TFQHR.js +174 -0
- package/dist/chunk-J62TFQHR.js.map +1 -0
- package/dist/chunk-JDTAG7KZ.js +33 -0
- package/dist/chunk-JDTAG7KZ.js.map +1 -0
- package/dist/chunk-JKYB5QAP.js +1070 -0
- package/dist/chunk-JKYB5QAP.js.map +1 -0
- package/dist/chunk-JMZ4CO6R.js +159 -0
- package/dist/chunk-JMZ4CO6R.js.map +1 -0
- package/dist/chunk-JPA2VQRW.js +119 -0
- package/dist/chunk-JPA2VQRW.js.map +1 -0
- package/dist/chunk-JWXK4TMX.js +106 -0
- package/dist/chunk-JWXK4TMX.js.map +1 -0
- package/dist/chunk-K45MMHLA.js +258 -0
- package/dist/chunk-K45MMHLA.js.map +1 -0
- package/dist/chunk-KC6CHPT3.js +995 -0
- package/dist/chunk-KC6CHPT3.js.map +1 -0
- package/dist/chunk-KPNNSUXM.js +130 -0
- package/dist/chunk-KPNNSUXM.js.map +1 -0
- package/dist/chunk-KR3IVNQH.js +402 -0
- package/dist/chunk-KR3IVNQH.js.map +1 -0
- package/dist/chunk-KRHL3YH2.js +3 -0
- package/dist/chunk-KRHL3YH2.js.map +1 -0
- package/dist/chunk-L2XR5IFJ.js +103 -0
- package/dist/chunk-L2XR5IFJ.js.map +1 -0
- package/dist/chunk-LATTRPLQ.js +286 -0
- package/dist/chunk-LATTRPLQ.js.map +1 -0
- package/dist/chunk-LFN7UHDT.js +122 -0
- package/dist/chunk-LFN7UHDT.js.map +1 -0
- package/dist/chunk-LNY2EXOV.js +349 -0
- package/dist/chunk-LNY2EXOV.js.map +1 -0
- package/dist/chunk-LQVQ7SHG.js +226 -0
- package/dist/chunk-LQVQ7SHG.js.map +1 -0
- package/dist/chunk-MK6ID2HI.js +532 -0
- package/dist/chunk-MK6ID2HI.js.map +1 -0
- package/dist/chunk-MQ2446N7.js +216 -0
- package/dist/chunk-MQ2446N7.js.map +1 -0
- package/dist/chunk-MVOENLOZ.js +3 -0
- package/dist/chunk-MVOENLOZ.js.map +1 -0
- package/dist/chunk-N23L6UDK.js +108 -0
- package/dist/chunk-N23L6UDK.js.map +1 -0
- package/dist/chunk-N3I6GA4I.js +137 -0
- package/dist/chunk-N3I6GA4I.js.map +1 -0
- package/dist/chunk-N4UTBJRY.js +72 -0
- package/dist/chunk-N4UTBJRY.js.map +1 -0
- package/dist/chunk-NCLOPI6U.js +347 -0
- package/dist/chunk-NCLOPI6U.js.map +1 -0
- package/dist/chunk-NGR4HFVA.js +136 -0
- package/dist/chunk-NGR4HFVA.js.map +1 -0
- package/dist/chunk-NK5Q2YRM.js +70 -0
- package/dist/chunk-NK5Q2YRM.js.map +1 -0
- package/dist/chunk-NWVYQYKK.js +75 -0
- package/dist/chunk-NWVYQYKK.js.map +1 -0
- package/dist/chunk-NXQ25PKF.js +318 -0
- package/dist/chunk-NXQ25PKF.js.map +1 -0
- package/dist/chunk-OEXQ2MOY.js +338 -0
- package/dist/chunk-OEXQ2MOY.js.map +1 -0
- package/dist/chunk-ONQCNOLU.js +233 -0
- package/dist/chunk-ONQCNOLU.js.map +1 -0
- package/dist/chunk-ONTUN5XH.js +57 -0
- package/dist/chunk-ONTUN5XH.js.map +1 -0
- package/dist/chunk-OQCGQG47.js +83 -0
- package/dist/chunk-OQCGQG47.js.map +1 -0
- package/dist/chunk-OWIFNJXZ.js +167 -0
- package/dist/chunk-OWIFNJXZ.js.map +1 -0
- package/dist/chunk-OWOVCGUZ.js +1062 -0
- package/dist/chunk-OWOVCGUZ.js.map +1 -0
- package/dist/chunk-PFVT27B5.js +92 -0
- package/dist/chunk-PFVT27B5.js.map +1 -0
- package/dist/chunk-PK5O62XD.js +58 -0
- package/dist/chunk-PK5O62XD.js.map +1 -0
- package/dist/chunk-PLLJNHWU.js +175 -0
- package/dist/chunk-PLLJNHWU.js.map +1 -0
- package/dist/chunk-PWCMCMDN.js +67 -0
- package/dist/chunk-PWCMCMDN.js.map +1 -0
- package/dist/chunk-Q43KJP5A.js +294 -0
- package/dist/chunk-Q43KJP5A.js.map +1 -0
- package/dist/chunk-QHKOBGLW.js +119 -0
- package/dist/chunk-QHKOBGLW.js.map +1 -0
- package/dist/chunk-QIETN4UU.js +924 -0
- package/dist/chunk-QIETN4UU.js.map +1 -0
- package/dist/chunk-QUENPT24.js +100 -0
- package/dist/chunk-QUENPT24.js.map +1 -0
- package/dist/chunk-QZWKXUZP.js +147 -0
- package/dist/chunk-QZWKXUZP.js.map +1 -0
- package/dist/chunk-R4UOT76L.js +342 -0
- package/dist/chunk-R4UOT76L.js.map +1 -0
- package/dist/chunk-RVUO7SDG.js +460 -0
- package/dist/chunk-RVUO7SDG.js.map +1 -0
- package/dist/chunk-S6ORCWM2.js +205 -0
- package/dist/chunk-S6ORCWM2.js.map +1 -0
- package/dist/chunk-SCGKQ5RE.js +55 -0
- package/dist/chunk-SCGKQ5RE.js.map +1 -0
- package/dist/chunk-SHS6EGWS.js +226 -0
- package/dist/chunk-SHS6EGWS.js.map +1 -0
- package/dist/chunk-SJSYKUCL.js +297 -0
- package/dist/chunk-SJSYKUCL.js.map +1 -0
- package/dist/chunk-SM4AZOEP.js +222 -0
- package/dist/chunk-SM4AZOEP.js.map +1 -0
- package/dist/chunk-SXJMERQL.js +40 -0
- package/dist/chunk-SXJMERQL.js.map +1 -0
- package/dist/chunk-TAZPML2P.js +198 -0
- package/dist/chunk-TAZPML2P.js.map +1 -0
- package/dist/chunk-TNROOKX3.js +352 -0
- package/dist/chunk-TNROOKX3.js.map +1 -0
- package/dist/chunk-TQBUBD3E.js +100 -0
- package/dist/chunk-TQBUBD3E.js.map +1 -0
- package/dist/chunk-U4H3XHSI.js +305 -0
- package/dist/chunk-U4H3XHSI.js.map +1 -0
- package/dist/chunk-U6EOAIPK.js +67 -0
- package/dist/chunk-U6EOAIPK.js.map +1 -0
- package/dist/chunk-U74PNG4S.js +167 -0
- package/dist/chunk-U74PNG4S.js.map +1 -0
- package/dist/chunk-U77MCUVE.js +3 -0
- package/dist/chunk-U77MCUVE.js.map +1 -0
- package/dist/chunk-UA3OQAHJ.js +140 -0
- package/dist/chunk-UA3OQAHJ.js.map +1 -0
- package/dist/chunk-UFRMZ3M6.js +284 -0
- package/dist/chunk-UFRMZ3M6.js.map +1 -0
- package/dist/chunk-UOHVT5KN.js +3 -0
- package/dist/chunk-UOHVT5KN.js.map +1 -0
- package/dist/chunk-UP2VWCW5.js +2 -7
- package/dist/chunk-UP2VWCW5.js.map +1 -1
- package/dist/chunk-V7WEN4SD.js +444 -0
- package/dist/chunk-V7WEN4SD.js.map +1 -0
- package/dist/chunk-V7XHE25E.js +354 -0
- package/dist/chunk-V7XHE25E.js.map +1 -0
- package/dist/chunk-VFALJSXB.js +373 -0
- package/dist/chunk-VFALJSXB.js.map +1 -0
- package/dist/chunk-VKDN66VL.js +129 -0
- package/dist/chunk-VKDN66VL.js.map +1 -0
- package/dist/chunk-VT4IMHGE.js +292 -0
- package/dist/chunk-VT4IMHGE.js.map +1 -0
- package/dist/chunk-VWW3DJKI.js +53 -0
- package/dist/chunk-VWW3DJKI.js.map +1 -0
- package/dist/chunk-VZZ3HP7G.js +230 -0
- package/dist/chunk-VZZ3HP7G.js.map +1 -0
- package/dist/chunk-W3QUVCRK.js +54 -0
- package/dist/chunk-W3QUVCRK.js.map +1 -0
- package/dist/chunk-W4NC5CU5.js +175 -0
- package/dist/chunk-W4NC5CU5.js.map +1 -0
- package/dist/chunk-WBE6VQOO.js +235 -0
- package/dist/chunk-WBE6VQOO.js.map +1 -0
- package/dist/chunk-WG5IYG7X.js +3 -0
- package/dist/chunk-WG5IYG7X.js.map +1 -0
- package/dist/chunk-WH7Y2MAY.js +24 -0
- package/dist/chunk-WH7Y2MAY.js.map +1 -0
- package/dist/chunk-X4YUWX7H.js +146 -0
- package/dist/chunk-X4YUWX7H.js.map +1 -0
- package/dist/chunk-XETKCF73.js +74 -0
- package/dist/chunk-XETKCF73.js.map +1 -0
- package/dist/chunk-XLTSCY22.js +93 -0
- package/dist/chunk-XLTSCY22.js.map +1 -0
- package/dist/chunk-XOGMDABS.js +152 -0
- package/dist/chunk-XOGMDABS.js.map +1 -0
- package/dist/chunk-XRMKL43Y.js +90 -0
- package/dist/chunk-XRMKL43Y.js.map +1 -0
- package/dist/chunk-XV6NXXXP.js +206 -0
- package/dist/chunk-XV6NXXXP.js.map +1 -0
- package/dist/chunk-XXFKDEFH.js +143 -0
- package/dist/chunk-XXFKDEFH.js.map +1 -0
- package/dist/chunk-Y3BOERVB.js +482 -0
- package/dist/chunk-Y3BOERVB.js.map +1 -0
- package/dist/chunk-Y555RCRZ.js +26 -0
- package/dist/chunk-Y555RCRZ.js.map +1 -0
- package/dist/chunk-Y5GO2F6P.js +188 -0
- package/dist/chunk-Y5GO2F6P.js.map +1 -0
- package/dist/chunk-Y7UFBSAD.js +515 -0
- package/dist/chunk-Y7UFBSAD.js.map +1 -0
- package/dist/chunk-YCZ6M6EF.js +912 -0
- package/dist/chunk-YCZ6M6EF.js.map +1 -0
- package/dist/chunk-YMYXWHDU.js +96 -0
- package/dist/chunk-YMYXWHDU.js.map +1 -0
- package/dist/chunk-YP2ATSXP.js +452 -0
- package/dist/chunk-YP2ATSXP.js.map +1 -0
- package/dist/chunk-YZY35OHQ.js +279 -0
- package/dist/chunk-YZY35OHQ.js.map +1 -0
- package/dist/chunk-Z3FL7LEK.js +401 -0
- package/dist/chunk-Z3FL7LEK.js.map +1 -0
- package/dist/chunk-ZARZYMBM.js +95 -0
- package/dist/chunk-ZARZYMBM.js.map +1 -0
- package/dist/chunk-ZKK7L7H7.js +78 -0
- package/dist/chunk-ZKK7L7H7.js.map +1 -0
- package/dist/chunk-ZO2EKJZM.js +4505 -0
- package/dist/chunk-ZO2EKJZM.js.map +1 -0
- package/dist/chunk-ZPCELVWJ.js +127 -0
- package/dist/chunk-ZPCELVWJ.js.map +1 -0
- package/dist/chunk-ZS2WS5NJ.js +655 -0
- package/dist/chunk-ZS2WS5NJ.js.map +1 -0
- package/dist/chunk-ZUFM33AV.js +113 -0
- package/dist/chunk-ZUFM33AV.js.map +1 -0
- package/dist/components/advanced/AssetManager/index.js +5 -0
- package/dist/components/advanced/AssetManager/index.js.map +1 -0
- package/dist/components/advanced/Calendar/index.js +10 -0
- package/dist/components/advanced/Calendar/index.js.map +1 -0
- package/dist/components/advanced/Command/index.js +6 -0
- package/dist/components/advanced/Command/index.js.map +1 -0
- package/dist/components/advanced/DragAndDrop/index.js +5 -0
- package/dist/components/advanced/DragAndDrop/index.js.map +1 -0
- package/dist/components/advanced/ErrorBoundary/index.js +5 -0
- package/dist/components/advanced/ErrorBoundary/index.js.map +1 -0
- package/dist/components/advanced/EventCalendar/index.js +10 -0
- package/dist/components/advanced/EventCalendar/index.js.map +1 -0
- package/dist/components/advanced/FileDropzone/index.js +5 -0
- package/dist/components/advanced/FileDropzone/index.js.map +1 -0
- package/dist/components/advanced/FilePreview/index.js +5 -0
- package/dist/components/advanced/FilePreview/index.js.map +1 -0
- package/dist/components/advanced/FileUpload/index.js +5 -0
- package/dist/components/advanced/FileUpload/index.js.map +1 -0
- package/dist/components/advanced/FilterBuilder/index.js +13 -0
- package/dist/components/advanced/FilterBuilder/index.js.map +1 -0
- package/dist/components/advanced/MarkdownEditor/index.js +9 -0
- package/dist/components/advanced/MarkdownEditor/index.js.map +1 -0
- package/dist/components/advanced/Portal/index.js +4 -0
- package/dist/components/advanced/Portal/index.js.map +1 -0
- package/dist/components/advanced/ReportBuilder/index.js +11 -0
- package/dist/components/advanced/ReportBuilder/index.js.map +1 -0
- package/dist/components/advanced/RichTextEditor/index.js +7 -0
- package/dist/components/advanced/RichTextEditor/index.js.map +1 -0
- package/dist/components/advanced/Search/index.js +5 -0
- package/dist/components/advanced/Search/index.js.map +1 -0
- package/dist/components/advanced/SortableList/index.js +5 -0
- package/dist/components/advanced/SortableList/index.js.map +1 -0
- package/dist/components/advanced/VersionControl/index.js +5 -0
- package/dist/components/advanced/VersionControl/index.js.map +1 -0
- package/dist/components/advanced/index.js +36 -0
- package/dist/components/advanced/index.js.map +1 -0
- package/dist/components/data-display/Accordion/index.js +5 -0
- package/dist/components/data-display/Accordion/index.js.map +1 -0
- package/dist/components/data-display/AreaChart/index.js +6 -0
- package/dist/components/data-display/AreaChart/index.js.map +1 -0
- package/dist/components/data-display/Banner/index.js +5 -0
- package/dist/components/data-display/Banner/index.js.map +1 -0
- package/dist/components/data-display/BarChart/index.js +6 -0
- package/dist/components/data-display/BarChart/index.js.map +1 -0
- package/dist/components/data-display/BarList/index.js +5 -0
- package/dist/components/data-display/BarList/index.js.map +1 -0
- package/dist/components/data-display/Callout/index.js +5 -0
- package/dist/components/data-display/Callout/index.js.map +1 -0
- package/dist/components/data-display/Carousel/index.js +10 -0
- package/dist/components/data-display/Carousel/index.js.map +1 -0
- package/dist/components/data-display/CategoryBar/index.js +6 -0
- package/dist/components/data-display/CategoryBar/index.js.map +1 -0
- package/dist/components/data-display/Chart/index.js +5 -0
- package/dist/components/data-display/Chart/index.js.map +1 -0
- package/dist/components/data-display/ChartCard/index.js +11 -0
- package/dist/components/data-display/ChartCard/index.js.map +1 -0
- package/dist/components/data-display/ChartLegend/index.js +6 -0
- package/dist/components/data-display/ChartLegend/index.js.map +1 -0
- package/dist/components/data-display/ComboChart/index.js +6 -0
- package/dist/components/data-display/ComboChart/index.js.map +1 -0
- package/dist/components/data-display/DashboardCard/index.js +6 -0
- package/dist/components/data-display/DashboardCard/index.js.map +1 -0
- package/dist/components/data-display/DashboardFilterbar/index.js +111 -0
- package/dist/components/data-display/DashboardFilterbar/index.js.map +1 -0
- package/dist/components/data-display/DataTable/FilterBuilder/index.js +13 -0
- package/dist/components/data-display/DataTable/FilterBuilder/index.js.map +1 -0
- package/dist/components/data-display/DataTable/index.js +22 -0
- package/dist/components/data-display/DataTable/index.js.map +1 -0
- package/dist/components/data-display/DeltaBar/index.js +6 -0
- package/dist/components/data-display/DeltaBar/index.js.map +1 -0
- package/dist/components/data-display/EmptyState/index.js +5 -0
- package/dist/components/data-display/EmptyState/index.js.map +1 -0
- package/dist/components/data-display/Feed/index.js +5 -0
- package/dist/components/data-display/Feed/index.js.map +1 -0
- package/dist/components/data-display/FunnelChart/index.js +6 -0
- package/dist/components/data-display/FunnelChart/index.js.map +1 -0
- package/dist/components/data-display/GaugeChart/index.js +5 -0
- package/dist/components/data-display/GaugeChart/index.js.map +1 -0
- package/dist/components/data-display/Heatmap/index.js +6 -0
- package/dist/components/data-display/Heatmap/index.js.map +1 -0
- package/dist/components/data-display/HoverCard/index.js +5 -0
- package/dist/components/data-display/HoverCard/index.js.map +1 -0
- package/dist/components/data-display/ImageGallery/index.js +6 -0
- package/dist/components/data-display/ImageGallery/index.js.map +1 -0
- package/dist/components/data-display/Item/index.js +6 -0
- package/dist/components/data-display/Item/index.js.map +1 -0
- package/dist/components/data-display/KPICard/index.js +12 -0
- package/dist/components/data-display/KPICard/index.js.map +1 -0
- package/dist/components/data-display/Lightbox/index.js +5 -0
- package/dist/components/data-display/Lightbox/index.js.map +1 -0
- package/dist/components/data-display/LineChart/index.js +6 -0
- package/dist/components/data-display/LineChart/index.js.map +1 -0
- package/dist/components/data-display/List/index.js +10 -0
- package/dist/components/data-display/List/index.js.map +1 -0
- package/dist/components/data-display/MarkerBar/index.js +6 -0
- package/dist/components/data-display/MarkerBar/index.js.map +1 -0
- package/dist/components/data-display/PieChart/index.js +6 -0
- package/dist/components/data-display/PieChart/index.js.map +1 -0
- package/dist/components/data-display/RadarChart/index.js +6 -0
- package/dist/components/data-display/RadarChart/index.js.map +1 -0
- package/dist/components/data-display/RadialChart/index.js +6 -0
- package/dist/components/data-display/RadialChart/index.js.map +1 -0
- package/dist/components/data-display/ScatterChart/index.js +6 -0
- package/dist/components/data-display/ScatterChart/index.js.map +1 -0
- package/dist/components/data-display/SingleStat/index.js +6 -0
- package/dist/components/data-display/SingleStat/index.js.map +1 -0
- package/dist/components/data-display/Sparkline/index.js +5 -0
- package/dist/components/data-display/Sparkline/index.js.map +1 -0
- package/dist/components/data-display/Table/index.js +5 -0
- package/dist/components/data-display/Table/index.js.map +1 -0
- package/dist/components/data-display/Timeline/index.js +5 -0
- package/dist/components/data-display/Timeline/index.js.map +1 -0
- package/dist/components/data-display/Tracker/index.js +6 -0
- package/dist/components/data-display/Tracker/index.js.map +1 -0
- package/dist/components/data-display/VirtualTable/index.js +8 -0
- package/dist/components/data-display/VirtualTable/index.js.map +1 -0
- package/dist/components/data-display/index.js +63 -0
- package/dist/components/data-display/index.js.map +1 -0
- package/dist/components/feedback/Alert/index.js +5 -0
- package/dist/components/feedback/Alert/index.js.map +1 -0
- package/dist/components/feedback/AlertDialog/index.js +10 -0
- package/dist/components/feedback/AlertDialog/index.js.map +1 -0
- package/dist/components/feedback/ConfirmModal/index.js +11 -0
- package/dist/components/feedback/ConfirmModal/index.js.map +1 -0
- package/dist/components/feedback/Dialog/index.js +5 -0
- package/dist/components/feedback/Dialog/index.js.map +1 -0
- package/dist/components/feedback/ErrorPage/index.js +5 -0
- package/dist/components/feedback/ErrorPage/index.js.map +1 -0
- package/dist/components/feedback/FocusTrap/index.js +5 -0
- package/dist/components/feedback/FocusTrap/index.js.map +1 -0
- package/dist/components/feedback/Message/index.js +5 -0
- package/dist/components/feedback/Message/index.js.map +1 -0
- package/dist/components/feedback/Modal/index.js +5 -0
- package/dist/components/feedback/Modal/index.js.map +1 -0
- package/dist/components/feedback/Notification/index.js +7 -0
- package/dist/components/feedback/Notification/index.js.map +1 -0
- package/dist/components/feedback/Popover/index.js +5 -0
- package/dist/components/feedback/Popover/index.js.map +1 -0
- package/dist/components/feedback/Toast/index.js +4 -0
- package/dist/components/feedback/Toast/index.js.map +1 -0
- package/dist/components/feedback/Tooltip/index.js +5 -0
- package/dist/components/feedback/Tooltip/index.js.map +1 -0
- package/dist/components/feedback/UpdatesWidget/index.js +5 -0
- package/dist/components/feedback/UpdatesWidget/index.js.map +1 -0
- package/dist/components/feedback/index.js +23 -0
- package/dist/components/feedback/index.js.map +1 -0
- package/dist/components/forms/Autocomplete/index.js +5 -0
- package/dist/components/forms/Autocomplete/index.js.map +1 -0
- package/dist/components/forms/Checkbox/index.js +5 -0
- package/dist/components/forms/Checkbox/index.js.map +1 -0
- package/dist/components/forms/CheckboxGroup/index.js +6 -0
- package/dist/components/forms/CheckboxGroup/index.js.map +1 -0
- package/dist/components/forms/ColorPicker/index.js +6 -0
- package/dist/components/forms/ColorPicker/index.js.map +1 -0
- package/dist/components/forms/Combobox/index.js +5 -0
- package/dist/components/forms/Combobox/index.js.map +1 -0
- package/dist/components/forms/DatePicker/index.js +13 -0
- package/dist/components/forms/DatePicker/index.js.map +1 -0
- package/dist/components/forms/DateRangePicker/index.js +13 -0
- package/dist/components/forms/DateRangePicker/index.js.map +1 -0
- package/dist/components/forms/EmailInput/index.js +7 -0
- package/dist/components/forms/EmailInput/index.js.map +1 -0
- package/dist/components/forms/ErrorMessage/index.js +5 -0
- package/dist/components/forms/ErrorMessage/index.js.map +1 -0
- package/dist/components/forms/Field/index.js +7 -0
- package/dist/components/forms/Field/index.js.map +1 -0
- package/dist/components/forms/FloatLabel/index.js +5 -0
- package/dist/components/forms/FloatLabel/index.js.map +1 -0
- package/dist/components/forms/Form/index.js +6 -0
- package/dist/components/forms/Form/index.js.map +1 -0
- package/dist/components/forms/FormValidation/index.js +5 -0
- package/dist/components/forms/FormValidation/index.js.map +1 -0
- package/dist/components/forms/HelpText/index.js +5 -0
- package/dist/components/forms/HelpText/index.js.map +1 -0
- package/dist/components/forms/IftaLabel/index.js +5 -0
- package/dist/components/forms/IftaLabel/index.js.map +1 -0
- package/dist/components/forms/InputGroup/index.js +13 -0
- package/dist/components/forms/InputGroup/index.js.map +1 -0
- package/dist/components/forms/InputOTP/index.js +5 -0
- package/dist/components/forms/InputOTP/index.js.map +1 -0
- package/dist/components/forms/InputOTPField/index.js +9 -0
- package/dist/components/forms/InputOTPField/index.js.map +1 -0
- package/dist/components/forms/MultiSelect/index.js +5 -0
- package/dist/components/forms/MultiSelect/index.js.map +1 -0
- package/dist/components/forms/NativeSelect/index.js +5 -0
- package/dist/components/forms/NativeSelect/index.js.map +1 -0
- package/dist/components/forms/NumberInput/index.js +6 -0
- package/dist/components/forms/NumberInput/index.js.map +1 -0
- package/dist/components/forms/PasswordInput/index.js +7 -0
- package/dist/components/forms/PasswordInput/index.js.map +1 -0
- package/dist/components/forms/PaymentInput/index.js +5 -0
- package/dist/components/forms/PaymentInput/index.js.map +1 -0
- package/dist/components/forms/PhoneInput/index.js +5 -0
- package/dist/components/forms/PhoneInput/index.js.map +1 -0
- package/dist/components/forms/RadioButton/index.js +6 -0
- package/dist/components/forms/RadioButton/index.js.map +1 -0
- package/dist/components/forms/RadioCardGroup/index.js +5 -0
- package/dist/components/forms/RadioCardGroup/index.js.map +1 -0
- package/dist/components/forms/RadioGroup/index.js +6 -0
- package/dist/components/forms/RadioGroup/index.js.map +1 -0
- package/dist/components/forms/Rating/index.js +5 -0
- package/dist/components/forms/Rating/index.js.map +1 -0
- package/dist/components/forms/SearchInput/index.js +7 -0
- package/dist/components/forms/SearchInput/index.js.map +1 -0
- package/dist/components/forms/Select/index.js +5 -0
- package/dist/components/forms/Select/index.js.map +1 -0
- package/dist/components/forms/Slider/index.js +5 -0
- package/dist/components/forms/Slider/index.js.map +1 -0
- package/dist/components/forms/SuccessMessage/index.js +5 -0
- package/dist/components/forms/SuccessMessage/index.js.map +1 -0
- package/dist/components/forms/Switch/index.js +5 -0
- package/dist/components/forms/Switch/index.js.map +1 -0
- package/dist/components/forms/TagsInput/index.js +8 -0
- package/dist/components/forms/TagsInput/index.js.map +1 -0
- package/dist/components/forms/TextInput/index.js +6 -0
- package/dist/components/forms/TextInput/index.js.map +1 -0
- package/dist/components/forms/Textarea/index.js +5 -0
- package/dist/components/forms/Textarea/index.js.map +1 -0
- package/dist/components/forms/TextareaField/index.js +9 -0
- package/dist/components/forms/TextareaField/index.js.map +1 -0
- package/dist/components/forms/TimePicker/index.js +7 -0
- package/dist/components/forms/TimePicker/index.js.map +1 -0
- package/dist/components/forms/ToggleGroup/index.js +6 -0
- package/dist/components/forms/ToggleGroup/index.js.map +1 -0
- package/dist/components/forms/URLInput/index.js +7 -0
- package/dist/components/forms/URLInput/index.js.map +1 -0
- package/dist/components/forms/index.js +58 -0
- package/dist/components/forms/index.js.map +1 -0
- package/dist/components/index.js +201 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/layout/Card/index.js +5 -0
- package/dist/components/layout/Card/index.js.map +1 -0
- package/dist/components/layout/Collapsible/index.js +5 -0
- package/dist/components/layout/Collapsible/index.js.map +1 -0
- package/dist/components/layout/Container/index.js +5 -0
- package/dist/components/layout/Container/index.js.map +1 -0
- package/dist/components/layout/Flex/index.js +5 -0
- package/dist/components/layout/Flex/index.js.map +1 -0
- package/dist/components/layout/Grid/index.js +5 -0
- package/dist/components/layout/Grid/index.js.map +1 -0
- package/dist/components/layout/Panel/index.js +5 -0
- package/dist/components/layout/Panel/index.js.map +1 -0
- package/dist/components/layout/ResizablePanels/index.js +5 -0
- package/dist/components/layout/ResizablePanels/index.js.map +1 -0
- package/dist/components/layout/ResponsiveContainer/index.js +5 -0
- package/dist/components/layout/ResponsiveContainer/index.js.map +1 -0
- package/dist/components/layout/ScrollArea/index.js +5 -0
- package/dist/components/layout/ScrollArea/index.js.map +1 -0
- package/dist/components/layout/Section/index.js +5 -0
- package/dist/components/layout/Section/index.js.map +1 -0
- package/dist/components/layout/Sheet/index.js +5 -0
- package/dist/components/layout/Sheet/index.js.map +1 -0
- package/dist/components/layout/Stack/index.js +5 -0
- package/dist/components/layout/Stack/index.js.map +1 -0
- package/dist/components/layout/index.js +17 -0
- package/dist/components/layout/index.js.map +1 -0
- package/dist/components/navigation/AccountSwitch/index.js +10 -0
- package/dist/components/navigation/AccountSwitch/index.js.map +1 -0
- package/dist/components/navigation/Breadcrumb/index.js +5 -0
- package/dist/components/navigation/Breadcrumb/index.js.map +1 -0
- package/dist/components/navigation/ContextMenu/index.js +5 -0
- package/dist/components/navigation/ContextMenu/index.js.map +1 -0
- package/dist/components/navigation/Drawer/index.js +5 -0
- package/dist/components/navigation/Drawer/index.js.map +1 -0
- package/dist/components/navigation/DropdownMenu/index.js +5 -0
- package/dist/components/navigation/DropdownMenu/index.js.map +1 -0
- package/dist/components/navigation/FileTree/index.js +5 -0
- package/dist/components/navigation/FileTree/index.js.map +1 -0
- package/dist/components/navigation/Header/index.js +5 -0
- package/dist/components/navigation/Header/index.js.map +1 -0
- package/dist/components/navigation/Menu/index.js +5 -0
- package/dist/components/navigation/Menu/index.js.map +1 -0
- package/dist/components/navigation/Menubar/index.js +5 -0
- package/dist/components/navigation/Menubar/index.js.map +1 -0
- package/dist/components/navigation/MobileSidebar/index.js +190 -0
- package/dist/components/navigation/MobileSidebar/index.js.map +1 -0
- package/dist/components/navigation/Navbar/index.js +5 -0
- package/dist/components/navigation/Navbar/index.js.map +1 -0
- package/dist/components/navigation/NavigationMenu/index.js +5 -0
- package/dist/components/navigation/NavigationMenu/index.js.map +1 -0
- package/dist/components/navigation/Pagination/index.js +10 -0
- package/dist/components/navigation/Pagination/index.js.map +1 -0
- package/dist/components/navigation/Sidebar/index.js +16 -0
- package/dist/components/navigation/Sidebar/index.js.map +1 -0
- package/dist/components/navigation/SkipLinks/index.js +5 -0
- package/dist/components/navigation/SkipLinks/index.js.map +1 -0
- package/dist/components/navigation/SpeedDial/index.js +6 -0
- package/dist/components/navigation/SpeedDial/index.js.map +1 -0
- package/dist/components/navigation/TabNavigation/index.js +5 -0
- package/dist/components/navigation/TabNavigation/index.js.map +1 -0
- package/dist/components/navigation/TabPanel/index.js +5 -0
- package/dist/components/navigation/TabPanel/index.js.map +1 -0
- package/dist/components/navigation/Tabs/index.js +5 -0
- package/dist/components/navigation/Tabs/index.js.map +1 -0
- package/dist/components/navigation/Toolbar/index.js +5 -0
- package/dist/components/navigation/Toolbar/index.js.map +1 -0
- package/dist/components/navigation/Topbar/index.js +5 -0
- package/dist/components/navigation/Topbar/index.js.map +1 -0
- package/dist/components/navigation/UserProfileDropdown/index.js +224 -0
- package/dist/components/navigation/UserProfileDropdown/index.js.map +1 -0
- package/dist/components/navigation/WorkspaceDropdown/index.js +192 -0
- package/dist/components/navigation/WorkspaceDropdown/index.js.map +1 -0
- package/dist/components/navigation/index.js +37 -0
- package/dist/components/navigation/index.js.map +1 -0
- package/dist/components/primitives/ArrowAnimated/index.js +92 -0
- package/dist/components/primitives/ArrowAnimated/index.js.map +1 -0
- package/dist/components/primitives/AspectRatio/index.js +4 -0
- package/dist/components/primitives/AspectRatio/index.js.map +1 -0
- package/dist/components/primitives/Avatar/index.js +6 -0
- package/dist/components/primitives/Avatar/index.js.map +1 -0
- package/dist/components/primitives/Badge/index.js +7 -0
- package/dist/components/primitives/Badge/index.js.map +1 -0
- package/dist/components/primitives/Button/index.js +9 -0
- package/dist/components/primitives/Button/index.js.map +1 -0
- package/dist/components/primitives/ButtonGroup/index.js +7 -0
- package/dist/components/primitives/ButtonGroup/index.js.map +1 -0
- package/dist/components/primitives/ConfirmButton/index.js +11 -0
- package/dist/components/primitives/ConfirmButton/index.js.map +1 -0
- package/dist/components/primitives/Divider/index.js +5 -0
- package/dist/components/primitives/Divider/index.js.map +1 -0
- package/dist/components/primitives/FeatureItem/index.js +5 -0
- package/dist/components/primitives/FeatureItem/index.js.map +1 -0
- package/dist/components/primitives/FeaturedIcon/index.js +5 -0
- package/dist/components/primitives/FeaturedIcon/index.js.map +1 -0
- package/dist/components/primitives/FolderStack/index.js +5 -0
- package/dist/components/primitives/FolderStack/index.js.map +1 -0
- package/dist/components/primitives/Heading/index.js +5 -0
- package/dist/components/primitives/Heading/index.js.map +1 -0
- package/dist/components/primitives/Icon/index.js +5 -0
- package/dist/components/primitives/Icon/index.js.map +1 -0
- package/dist/components/primitives/Image/index.js +5 -0
- package/dist/components/primitives/Image/index.js.map +1 -0
- package/dist/components/primitives/Kbd/index.js +5 -0
- package/dist/components/primitives/Kbd/index.js.map +1 -0
- package/dist/components/primitives/Label/index.js +5 -0
- package/dist/components/primitives/Label/index.js.map +1 -0
- package/dist/components/primitives/Link/index.js +5 -0
- package/dist/components/primitives/Link/index.js.map +1 -0
- package/dist/components/primitives/Paragraph/index.js +5 -0
- package/dist/components/primitives/Paragraph/index.js.map +1 -0
- package/dist/components/primitives/ProgressBar/index.js +6 -0
- package/dist/components/primitives/ProgressBar/index.js.map +1 -0
- package/dist/components/primitives/ProgressCircle/index.js +6 -0
- package/dist/components/primitives/ProgressCircle/index.js.map +1 -0
- package/dist/components/primitives/SkeletonLoader/index.js +5 -0
- package/dist/components/primitives/SkeletonLoader/index.js.map +1 -0
- package/dist/components/primitives/Spacer/index.js +5 -0
- package/dist/components/primitives/Spacer/index.js.map +1 -0
- package/dist/components/primitives/Spinner/index.js +5 -0
- package/dist/components/primitives/Spinner/index.js.map +1 -0
- package/dist/components/primitives/SplitButton/index.js +6 -0
- package/dist/components/primitives/SplitButton/index.js.map +1 -0
- package/dist/components/primitives/StatusIndicator/index.js +5 -0
- package/dist/components/primitives/StatusIndicator/index.js.map +1 -0
- package/dist/components/primitives/Tag/index.js +5 -0
- package/dist/components/primitives/Tag/index.js.map +1 -0
- package/dist/components/primitives/Text/index.js +5 -0
- package/dist/components/primitives/Text/index.js.map +1 -0
- package/dist/components/primitives/Thumbnail/index.js +6 -0
- package/dist/components/primitives/Thumbnail/index.js.map +1 -0
- package/dist/components/primitives/Toggle/index.js +5 -0
- package/dist/components/primitives/Toggle/index.js.map +1 -0
- package/dist/components/primitives/index.js +38 -0
- package/dist/components/primitives/index.js.map +1 -0
- package/dist/components/workflow/ApprovalFlow/index.js +11 -0
- package/dist/components/workflow/ApprovalFlow/index.js.map +1 -0
- package/dist/components/workflow/ApprovalStatus/index.js +5 -0
- package/dist/components/workflow/ApprovalStatus/index.js.map +1 -0
- package/dist/components/workflow/CommentSystem/index.js +12 -0
- package/dist/components/workflow/CommentSystem/index.js.map +1 -0
- package/dist/components/workflow/Dashboard/index.js +10 -0
- package/dist/components/workflow/Dashboard/index.js.map +1 -0
- package/dist/components/workflow/DashboardBuilder/index.js +13 -0
- package/dist/components/workflow/DashboardBuilder/index.js.map +1 -0
- package/dist/components/workflow/KanbanBoard/index.js +13 -0
- package/dist/components/workflow/KanbanBoard/index.js.map +1 -0
- package/dist/components/workflow/ProgressSteps/index.js +5 -0
- package/dist/components/workflow/ProgressSteps/index.js.map +1 -0
- package/dist/components/workflow/ReportGenerator/index.js +12 -0
- package/dist/components/workflow/ReportGenerator/index.js.map +1 -0
- package/dist/components/workflow/Stepper/index.js +5 -0
- package/dist/components/workflow/Stepper/index.js.map +1 -0
- package/dist/components/workflow/TaskCard/index.js +5 -0
- package/dist/components/workflow/TaskCard/index.js.map +1 -0
- package/dist/components/workflow/TaskList/index.js +5 -0
- package/dist/components/workflow/TaskList/index.js.map +1 -0
- package/dist/components/workflow/TaskStatus/index.js +6 -0
- package/dist/components/workflow/TaskStatus/index.js.map +1 -0
- package/dist/components/workflow/Wizard/index.js +11 -0
- package/dist/components/workflow/Wizard/index.js.map +1 -0
- package/dist/components/workflow/index.js +32 -0
- package/dist/components/workflow/index.js.map +1 -0
- package/dist/fonts/inter-OFL.txt +92 -0
- package/dist/fonts/inter-latin-400-normal.woff2 +0 -0
- package/dist/fonts/inter-latin-500-normal.woff2 +0 -0
- package/dist/fonts/inter-latin-600-normal.woff2 +0 -0
- package/dist/fonts/inter-latin-700-normal.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-OFL.txt +93 -0
- package/dist/fonts/jetbrains-mono-latin-400-normal.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-latin-500-normal.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-latin-700-normal.woff2 +0 -0
- package/dist/hooks/index.js +6 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/index.d.ts +114 -27
- package/dist/index.js +202 -52453
- package/dist/index.js.map +1 -1
- package/dist/jspdf.node.min-CTWP225M.js +372 -656
- package/dist/jspdf.node.min-CTWP225M.js.map +1 -1
- package/dist/jspdf.plugin.autotable-AAE7PZKA.js +4 -14
- package/dist/jspdf.plugin.autotable-AAE7PZKA.js.map +1 -1
- package/dist/lib/chart-colors.js +4 -0
- package/dist/lib/chart-colors.js.map +1 -0
- package/dist/lib/utils.js +3 -7
- package/dist/lib/utils.js.map +1 -1
- package/dist/styles.css +5542 -0
- package/dist/xlsx-PWHBQ6NK.js +206 -366
- package/dist/xlsx-PWHBQ6NK.js.map +1 -1
- package/package.json +9 -6
- package/styles.css +0 -62
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/Sidebar/Sidebar.variants.ts","../src/components/navigation/Sidebar/Sidebar.tsx"],"names":["open"],"mappings":";;;;;;;;;;;;;;;AAOA,IAAM,mBAAA,GAAsB;AAAA,EAC1B,uCAAA;AAAA,EACA,8CAAA;AAAA,EACA;AACF,CAAA;AAKO,IAAM,0BAA0B,GAAA,CAAI;AAAA,EACzC;AACF,CAAC;AAKM,IAAM,gCAAgC,GAAA,CAAI;AAAA,EAC/C;AACF,CAAC;AAKM,IAAM,wBAAwB,GAAA,CAAI;AAAA,EACvC;AACF,CAAC;AAKM,IAAM,yBAAyB,GAAA,CAAI;AAAA,EACxC;AACF,CAAC;AAKM,IAAM,qBAAqB,GAAA,CAAI;AAAA,EACpC,yFAAA;AAAA,EACA,wCAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,2BAA2B,GAAA,CAAI;AAAA,EAC1C;AACF,CAAC;AAKM,IAAM,uBAAuB,GAAA,CAAI;AAAA,EACtC,4FAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,sBAAA,GAAyB,GAAA,CAAI,CAAC,QAAQ,CAAC;AAK7C,IAAM,sBAAsB,GAAA,CAAI;AAAA,EACrC,8GAAA;AAAA,EACA,gEAAA;AAAA,EACA,mEAAA;AAAA,EACA,0EAAA;AAAA,EACA,wHAAA;AAAA,EACA,yJAAA;AAAA,EACA,2DAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,uBAAuB,GAAA,CAAI;AAAA,EACtC,oDAAA;AAAA,EACA,oEAAA;AAAA,EACA,gFAAA;AAAA,EACA,+DAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,uBAAuB,GAAA,CAAI;AAAA,EACtC;AACF,CAAC;AASM,IAAM,wBAAwB,GAAA,CAAI;AAAA,EACvC,yBAAA;AAAA,EACA,yBAAA;AAAA,EACA,8DAAA;AAAA,EACA,yDAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,wBAAwB,GAAA,CAAI;AAAA,EACvC;AACF,CAAC;AAKM,IAAM,2BAA2B,GAAA,CAAI;AAAA,EAC1C;AACF,CAAC;AAKM,IAAM,yBAAyB,GAAA,CAAI;AAAA,EACxC;AACF,CAAC;AASM,IAAM,uBAAuB,GAAA,CAAI;AAAA,EACtC,2CAAA;AAAA,EACA,yDAAA;AAAA,EACA,iDAAA;AAAA,EACA;AACF,CAAC;AAUM,IAAM,4BAA4B,GAAA,CAAI;AAAA,EAC3C,iHAAA;AAAA,EACA,0FAAA;AAAA,EACA,iCAAA;AAAA,EACA,6EAAA;AAAA,EACA,0BAAA;AAAA,EACA,+DAAA;AAAA,EACA,wBAAA;AAAA,EACA,wEAAA;AAAA,EACA,mEAAA;AAAA,EACA,sEAAA;AAAA,EACA,mCAAA;AAAA,EACA,+BAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,6BAA6B,GAAA,CAAI;AAAA,EAC5C,wGAAA;AAAA,EACA,4FAAA;AAAA,EACA,0DAAA;AAAA,EACA,iCAAA;AAAA,EACA,+CAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,8BAA8B,GAAA,CAAI;AAAA,EAC7C;AACF,CAAC;AASM,IAAM,sBAAsB,GAAA,CAAI;AAAA,EACrC,oCAAA;AAAA,EACA,6DAAA;AAAA,EACA,iEAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,0BAA0B,GAAA,CAAI;AAAA,EACzC;AACF,CAAC;AAKM,IAAM,yBAAA,GAA4B,GAAA;AAAA,EACvC;AAAA,IACE,kGAAA;AAAA,IACA,oEAAA;AAAA,IACA,8DAAA;AAAA,IACA,sBAAA;AAAA,IACA,gEAAA;AAAA,IACA,kDAAA;AAAA,IACA,qDAAA;AAAA,IACA,4DAAA;AAAA,IACA,uHAAA;AAAA,IACA,kGAAA;AAAA,IACA,0EAAA;AAAA,IACA,8DAAA;AAAA;AAAA;AAAA;AAAA,IAIA,uDAAA;AAAA,IACA,4DAAA;AAAA,IACA,qDAAA;AAAA,IACA,mEAAA;AAAA,IACA,8DAAA;AAAA,IACA,iEAAA;AAAA,IACA,mEAAA;AAAA,IACA,oEAAA;AAAA,IACA,qEAAA;AAAA,IACA,wEAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,mFAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EACE,8DAAA;AAAA,QACF,OAAA,EACE;AAAA,OACJ;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,aAAA;AAAA,QACT,EAAA,EAAI,aAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,SAAA;AAAA,MACT,IAAA,EAAM;AAAA;AACR;AAEJ;AAWO,IAAM,yBAAA,GAA4B,GAAA;AAAA,EACvC;AAAA,IACE,oEAAA;AAAA,IACA,sCAAA;AAAA,IACA,2CAAA;AAAA,IACA,uDAAA;AAAA,IACA,kDAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,8FAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU;AAAA;AACZ;AAEJ;AAKO,IAAM,4BAA4B,GAAA,CAAI;AAAA,EAC3C,wGAAA;AAAA,EACA,uDAAA;AAAA,EACA,4FAAA;AAAA,EACA,0DAAA;AAAA,EACA,iCAAA;AAAA,EACA,+CAAA;AAAA,EACA,GAAG,mBAAA;AAAA,EACH;AACF,CAAC;AAKM,IAAM,uCAAuC,GAAA,CAAI;AAAA,EACtD,oEAAA;AAAA,EACA,4EAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,2BAA2B,GAAA,CAAI;AAAA,EAC1C,2GAAA;AAAA,EACA,8DAAA;AAAA,EACA,0HAAA;AAAA,EACA,GAAG,mBAAA;AAAA,EACH;AACF,CAAC;AAKM,IAAM,8BAA8B,GAAA,CAAI;AAAA,EAC7C;AACF,CAAC;AAKM,IAAM,yBAAyB,GAAA,CAAI;AAAA,EACxC,gGAAA;AAAA,EACA;AACF,CAAC;AAKM,IAAM,6BAA6B,GAAA,CAAI;AAAA,EAC5C;AACF,CAAC;AAKM,IAAM,4BAAA,GAA+B,GAAA;AAAA,EAC1C;AAAA,IACE,wGAAA;AAAA,IACA,gEAAA;AAAA,IACA,wCAAA;AAAA,IACA,qFAAA;AAAA,IACA,qCAAA;AAAA,IACA,kDAAA;AAAA,IACA,4DAAA;AAAA,IACA,8DAAA;AAAA,IACA,wFAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;ACvSA,IAAM,mBAAA,GAAsB,eAAA;AAC5B,IAAM,sBAAA,GAAyB,EAAA,GAAK,EAAA,GAAK,EAAA,GAAK,CAAA;AAC9C,IAAM,yBAAA,GAA4B,GAAA;AAElC,IAAM,cAAA,GAAuB,oBAA0C,IAAI,CAAA;AAO3E,SAAS,UAAA,GAAa;AACpB,EAAA,MAAM,OAAA,GAAgB,UAAI,cAAc,CAAA;AACxC,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,MAAM,IAAI,MAAM,mDAAmD,CAAA;AAAA,EACrE;AAEA,EAAA,OAAO,OAAA;AACT;AAaA,SAAS,eAAA,CAAgB;AAAA,EACvB,WAAA,GAAc,IAAA;AAAA,EACd,IAAA;AAAA,EACA,IAAA,EAAM,QAAA;AAAA,EACN,YAAA,EAAc,WAAA;AAAA,EACd,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAyB;AACvB,EAAA,MAAM,WAAW,WAAA,EAAY;AAC7B,EAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAU,eAAS,KAAK,CAAA;AAIxD,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAU,eAAS,WAAW,CAAA;AAClE,EAAA,MAAM,OAAO,QAAA,IAAY,YAAA;AACzB,EAAA,MAAM,gBAAA,GAAyB,aAAsC,MAAS,CAAA;AAC9E,EAAA,MAAM,aAAA,GAAsB,KAAA,CAAA,WAAA,CAAY,CAAC,SAAA,KAAuB;AAC9D,IAAA,YAAA,CAAa,iBAAiB,OAAO,CAAA;AACrC,IAAA,gBAAA,CAAiB,OAAA,GAAU,WAAW,MAAM;AAC1C,MAAA,QAAA,CAAS,MAAA,GAAS,CAAA,EAAG,mBAAmB,CAAA,CAAA,EAAI,MAAA,CAAO,SAAS,CAAC,CAAA,kBAAA,EAAqB,MAAA,CAAO,sBAAsB,CAAC,CAAA,CAAA;AAAA,IAClH,GAAG,GAAG,CAAA;AAAA,EACR,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,OAAA,GAAgB,KAAA,CAAA,WAAA;AAAA,IACpB,CAAC,KAAA,KAAmD;AAClD,MAAA,IAAI,OAAO,UAAU,UAAA,EAAY;AAC/B,QAAA,IAAI,WAAA,EAAa;AACf,UAAA,MAAM,QAAA,GAAW,MAAM,IAAI,CAAA;AAC3B,UAAA,WAAA,CAAY,QAAQ,CAAA;AACpB,UAAA,aAAA,CAAc,QAAQ,CAAA;AAAA,QACxB,CAAA,MAAO;AACL,UAAA,eAAA,CAAgB,CAAC,IAAA,KAAS;AACxB,YAAA,MAAM,IAAA,GAAO,MAAM,IAAI,CAAA;AACvB,YAAA,aAAA,CAAc,IAAI,CAAA;AAClB,YAAA,OAAO,IAAA;AAAA,UACT,CAAC,CAAA;AAAA,QACH;AAAA,MACF,CAAA,MAAO;AACL,QAAA,IAAI,WAAA,EAAa;AACf,UAAA,WAAA,CAAY,KAAK,CAAA;AAAA,QACnB,CAAA,MAAO;AACL,UAAA,eAAA,CAAgB,KAAK,CAAA;AAAA,QACvB;AACA,QAAA,aAAA,CAAc,KAAK,CAAA;AAAA,MACrB;AAAA,IACF,CAAA;AAAA,IACA,CAAC,WAAA,EAAa,IAAA,EAAM,aAAa;AAAA,GACnC;AAGA,EAAA,MAAM,aAAA,GAAsB,kBAAY,MAAM;AAC5C,IAAA,IAAI,QAAA,EAAU;AAAE,MAAA,aAAA,CAAc,CAACA,KAAAA,KAAS,CAACA,KAAI,CAAA;AAAA,IAAG,CAAA,MAAO;AAAE,MAAA,OAAA,CAAQ,CAACA,KAAAA,KAAS,CAACA,KAAI,CAAA;AAAA,IAAG;AAAA,EACrF,CAAA,EAAG,CAAC,QAAA,EAAU,OAAA,EAAS,aAAa,CAAC,CAAA;AAGrC,EAAM,gBAAU,MAAM;AACpB,IAAA,MAAM,aAAA,GAAgB,CAAC,KAAA,KAAyB;AAC9C,MAAA,IAAI,MAAM,MAAA,EAAQ;AAClB,MAAA,IACE,MAAM,GAAA,KAAQ,yBAAA,KACb,KAAA,CAAM,OAAA,IAAW,MAAM,OAAA,CAAA,EACxB;AACA,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,aAAA,EAAc;AAAA,MAChB;AAAA,IACF,CAAA;AAEA,IAAA,MAAA,CAAO,gBAAA,CAAiB,WAAW,aAAa,CAAA;AAChD,IAAA,OAAO,MAAM;AAAE,MAAA,MAAA,CAAO,mBAAA,CAAoB,WAAW,aAAa,CAAA;AAAA,IAAG,CAAA;AAAA,EACvE,CAAA,EAAG,CAAC,aAAa,CAAC,CAAA;AAIlB,EAAA,MAAM,KAAA,GAAQ,OAAO,UAAA,GAAa,WAAA;AAElC,EAAA,MAAM,YAAA,GAAqB,KAAA,CAAA,OAAA;AAAA,IACzB,OAAO;AAAA,MACL,KAAA;AAAA,MACA,IAAA;AAAA,MACA,OAAA;AAAA,MACA,QAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA;AAAA,MACA,aAAA;AAAA,MACA;AAAA,KACF,CAAA;AAAA,IACA,CAAC,OAAO,IAAA,EAAM,OAAA,EAAS,UAAU,IAAA,EAAM,UAAA,EAAY,eAAe,aAAa;AAAA,GACjF;AAEA,EAAA,2BACG,cAAA,EAAA,EAAe,KAAA,EAAO,cACrB,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,eAAe,CAAA,EAC9B,QAAA,kBAAA,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,KAAA,EACE;AAAA;AAAA;AAAA;AAAA,QAIE,GAAI,SAAS,MAAA,IAAU;AAAA,UACrB,iBAAA,EAAmB,8DAAA;AAAA,UACnB,sBAAA,EAAwB;AAAA,SAC1B;AAAA,QACA,GAAG;AAAA,OACL;AAAA,MAEF,SAAA,EAAW,EAAA,CAAG,uBAAA,EAAwB,EAAG,SAAS,CAAA;AAAA,MAClD,WAAA,EAAW,IAAA;AAAA,MACX,WAAA,EAAU,iBAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEH;AAAA;AAAA,KAEL,CAAA,EACF,CAAA;AAEJ;AAQA,SAAS,eAAA,CAAgB;AAAA,EACvB,IAAA,GAAO,MAAA;AAAA,EACP,SAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAiB;AACf,EAAA,MAAM,EAAE,QAAA,EAAU,KAAA,EAAO,UAAA,EAAY,aAAA,KAAkB,UAAA,EAAW;AAElE,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,2BACG,KAAA,EAAA,EAAM,IAAA,EAAM,YAAY,YAAA,EAAc,aAAA,EAAgB,GAAG,KAAA,EACxD,QAAA,kBAAA,IAAA;AAAA,MAAC,YAAA;AAAA,MAAA;AAAA,QACC,KAAA,EACE;AAAA,UACE,iBAAA,EAAmB;AAAA,SACrB;AAAA,QAEF,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAuB,CAAA;AAAA,QACrC,aAAA,EAAY,MAAA;AAAA,QACZ,cAAA,EAAa,SAAA;AAAA,QACb,WAAA,EAAU,SAAA;AAAA,QACV,IAAA;AAAA,QAEA,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,WAAA,EAAA,EAAY,WAAU,SAAA,EACrB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,cAAW,QAAA,EAAA,SAAA,EAAO,CAAA;AAAA,4BACnB,GAAA,CAAC,oBAAiB,QAAA,EAAA,8BAAA,EAA4B;AAAA,WAAA,EAChD,CAAA;AAAA,8BACC,KAAA,EAAA,EAAI,YAAA,EAAW,iBAAA,EAAkB,SAAA,EAAU,+BAA+B,QAAA,EAAS;AAAA;AAAA;AAAA,KACtF,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAwB,CAAA;AAAA,MACtC,kBAAA,EAAkB,KAAA,KAAU,WAAA,GAAc,MAAA,GAAS,EAAA;AAAA,MACnD,WAAA,EAAU,MAAA;AAAA,MACV,WAAA,EAAW,IAAA;AAAA,MACX,WAAA,EAAU,SAAA;AAAA,MACV,YAAA,EAAY,KAAA;AAAA,MACZ,cAAA,EAAa,SAAA;AAAA,MAGb,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,kBAAA,EAAmB;AAAA,cACnB;AAAA,aACF;AAAA,YACA,WAAA,EAAU;AAAA;AAAA,SACZ;AAAA,wBACA,GAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,wBAAA,EAAyB;AAAA,cACzB,IAAA,KAAS,SAAS,QAAA,GAAW,SAAA;AAAA,cAC7B,wDAAA;AAAA,cACA;AAAA,aACF;AAAA,YACA,WAAA,EAAU,mBAAA;AAAA,YACT,GAAG,KAAA;AAAA,YAEJ,QAAA,kBAAA,GAAA;AAAA,cAAC,KAAA;AAAA,cAAA;AAAA,gBACC,YAAA,EAAW,iBAAA;AAAA,gBACX,SAAA,EAAU,6BAAA;AAAA,gBACV,cAAA,EAAa,SAAA;AAAA,gBACb,WAAA,EAAU,eAAA;AAAA,gBAET;AAAA;AAAA;AACH;AAAA;AACF;AAAA;AAAA,GACF;AAEJ;AAQA,SAAS,OAAA,CAAQ;AAAA,EACf,IAAA,GAAO,MAAA;AAAA,EACP,OAAA,GAAU,SAAA;AAAA,EACV,WAAA,GAAc,WAAA;AAAA,EACd,SAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAiB;AACf,EAAA,MAAM,EAAE,QAAA,EAAU,IAAA,EAAM,OAAO,UAAA,EAAY,aAAA,KAAkB,UAAA,EAAW;AAExE,EAAA,IAAI,SAAS,MAAA,EAAQ;AACnB,IAAA,2BACG,eAAA,EAAA,EAAgB,SAAA,EAAsB,IAAA,EAAa,GAAG,OACpD,QAAA,EACH,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,gBAAgB,MAAA,EAAQ;AAC1B,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,YAAA,EAAW,iBAAA;AAAA,QACX,SAAA,EAAW,EAAA,CAAG,6BAAA,EAA8B,EAAG,SAAS,CAAA;AAAA,QACxD,WAAA,EAAU,SAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEH;AAAA;AAAA,KACH;AAAA,EAEJ;AAEA,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,2BACG,KAAA,EAAA,EAAM,IAAA,EAAM,YAAY,YAAA,EAAc,aAAA,EAAgB,GAAG,KAAA,EACxD,QAAA,kBAAA,IAAA;AAAA,MAAC,YAAA;AAAA,MAAA;AAAA,QACC,KAAA,EACE;AAAA,UACE,iBAAA,EAAmB;AAAA,SACrB;AAAA,QAEF,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAuB,CAAA;AAAA,QACrC,aAAA,EAAY,MAAA;AAAA,QACZ,cAAA,EAAa,SAAA;AAAA,QACb,WAAA,EAAU,SAAA;AAAA,QACV,IAAA;AAAA,QAEA,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,WAAA,EAAA,EAAY,WAAU,SAAA,EACrB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,cAAW,QAAA,EAAA,SAAA,EAAO,CAAA;AAAA,4BACnB,GAAA,CAAC,oBAAiB,QAAA,EAAA,8BAAA,EAA4B;AAAA,WAAA,EAChD,CAAA;AAAA,8BACC,KAAA,EAAA,EAAI,YAAA,EAAW,iBAAA,EAAkB,SAAA,EAAU,+BAA+B,QAAA,EAAS;AAAA;AAAA;AAAA,KACtF,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAwB,CAAA;AAAA,MACtC,kBAAA,EAAkB,KAAA,KAAU,WAAA,GAAc,WAAA,GAAc,EAAA;AAAA,MACxD,WAAA,EAAW,IAAA;AAAA,MACX,WAAA,EAAW,IAAA;AAAA,MACX,WAAA,EAAU,SAAA;AAAA,MACV,YAAA,EAAY,KAAA;AAAA,MACZ,cAAA,EAAc,OAAA;AAAA,MAGd,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,kBAAA,EAAmB;AAAA,cACnB,OAAA,KAAY,UAAA,IAAc,OAAA,KAAY,OAAA,GAClC,kFAAA,GACA;AAAA,aACN;AAAA,YACA,WAAA,EAAU;AAAA;AAAA,SACZ;AAAA,wBACA,GAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,wBAAA,EAAyB;AAAA,cACzB,IAAA,KAAS,SACL,gFAAA,GACA,kFAAA;AAAA;AAAA,cAEJ,OAAA,KAAY,UAAA,IAAc,OAAA,KAAY,OAAA,GAClC,0FAAA,GACA,yHAAA;AAAA,cACJ;AAAA,aACF;AAAA,YACA,WAAA,EAAU,mBAAA;AAAA,YACT,GAAG,KAAA;AAAA,YAEJ,QAAA,kBAAA,GAAA;AAAA,cAAC,KAAA;AAAA,cAAA;AAAA,gBACC,YAAA,EAAW,iBAAA;AAAA,gBACX,SAAA,EAAW,EAAA,CAAG,oBAAA,EAAsB,CAAA;AAAA,gBACpC,cAAA,EAAa,SAAA;AAAA,gBACb,WAAA,EAAU,eAAA;AAAA,gBAET;AAAA;AAAA;AACH;AAAA;AACF;AAAA;AAAA,GACF;AAEJ;AAKA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,OAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAwB;AACtB,EAAA,MAAM,EAAE,aAAA,EAAe,KAAA,EAAM,GAAI,UAAA,EAAW;AAE5C,EAAA,uBACE,IAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,iBAAe,KAAA,KAAU,UAAA;AAAA,MACzB,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAuB,EAAG,SAAS,CAAA;AAAA,MACjD,cAAA,EAAa,SAAA;AAAA,MACb,WAAA,EAAU,iBAAA;AAAA,MACV,IAAA,EAAK,MAAA;AAAA,MACL,OAAA,EAAQ,OAAA;AAAA,MACR,OAAA,EAAS,CAAC,KAAA,EAAO,OAAA,KAAY;AAC3B,QAAA,OAAA,GAAU,OAAO,OAAO,CAAA;AACxB,QAAA,aAAA,EAAc;AAAA,MAChB,CAAA;AAAA,MACC,GAAG,KAAA;AAAA,MAEJ,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,CAAA;AAAA,wBACf,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAU,QAAA,EAAA,gBAAA,EAAc;AAAA;AAAA;AAAA,GAC1C;AAEJ;AAKA,SAAS,WAAA,CAAY,EAAE,SAAA,EAAW,GAAG,OAAM,EAAqB;AAC9D,EAAA,MAAM,EAAE,aAAA,EAAc,GAAI,UAAA,EAAW;AAErC,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAW,gBAAA;AAAA,MACX,SAAA,EAAW,EAAA,CAAG,mBAAA,EAAoB,EAAG,SAAS,CAAA;AAAA,MAC9C,cAAA,EAAa,MAAA;AAAA,MACb,WAAA,EAAU,cAAA;AAAA,MACV,QAAA,EAAU,EAAA;AAAA,MACV,KAAA,EAAM,gBAAA;AAAA,MACN,OAAA,EAAS,aAAA;AAAA,MACR,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,YAAA,CAAa,EAAE,SAAA,EAAW,GAAG,OAAM,EAAsB;AAChE,EAAA,uBACE,GAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,oBAAA,EAAqB,EAAG,SAAS,CAAA;AAAA,MAC/C,WAAA,EAAU,eAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,YAAA,CAAa;AAAA,EACpB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAsB;AACpB,EAAA,uBACE,GAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,oBAAA,EAAqB,EAAG,SAAS,CAAA;AAAA,MAC/C,cAAA,EAAa,OAAA;AAAA,MACb,WAAA,EAAU,eAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAsB,EAAG,SAAS,CAAA;AAAA,MAChD,cAAA,EAAa,QAAA;AAAA,MACb,WAAA,EAAU,gBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAsB,EAAG,SAAS,CAAA;AAAA,MAChD,cAAA,EAAa,QAAA;AAAA,MACb,WAAA,EAAU,gBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,gBAAA,CAAiB;AAAA,EACxB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA0B;AACxB,EAAA,uBACE,GAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,wBAAA,EAAyB,EAAG,SAAS,CAAA;AAAA,MACnD,cAAA,EAAa,WAAA;AAAA,MACb,WAAA,EAAU,mBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,cAAA,CAAe,EAAE,SAAA,EAAW,GAAG,OAAM,EAAwB;AACpE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAuB,EAAG,SAAS,CAAA;AAAA,MACjD,cAAA,EAAa,SAAA;AAAA,MACb,WAAA,EAAU,iBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,YAAA,CAAa,EAAE,SAAA,EAAW,GAAG,OAAM,EAAsB;AAChE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,oBAAA,EAAqB,EAAG,SAAS,CAAA;AAAA,MAC/C,cAAA,EAAa,OAAA;AAAA,MACb,WAAA,EAAU,eAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,iBAAA,CAAkB;AAAA,EACzB,SAAA;AAAA,EACA,OAAA,GAAU,KAAA;AAAA,EACV,GAAG;AACL,CAAA,EAA2B;AACzB,EAAA,MAAM,IAAA,GAAO,UAAU,IAAA,GAAO,KAAA;AAE9B,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,yBAAA,EAA0B,EAAG,SAAS,CAAA;AAAA,MACpD,cAAA,EAAa,aAAA;AAAA,MACb,WAAA,EAAU,qBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,kBAAA,CAAmB;AAAA,EAC1B,SAAA;AAAA,EACA,OAAA,GAAU,KAAA;AAAA,EACV,GAAG;AACL,CAAA,EAA4B;AAC1B,EAAA,MAAM,IAAA,GAAO,UAAU,IAAA,GAAO,QAAA;AAE9B,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,0BAAA,EAA2B,EAAG,SAAS,CAAA;AAAA,MACrD,cAAA,EAAa,cAAA;AAAA,MACb,WAAA,EAAU,sBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,mBAAA,CAAoB;AAAA,EAC3B,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA6B;AAC3B,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,2BAAA,EAA4B,EAAG,SAAS,CAAA;AAAA,MACtD,cAAA,EAAa,eAAA;AAAA,MACb,WAAA,EAAU,uBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,WAAA,CAAY,EAAE,SAAA,EAAW,GAAG,OAAM,EAAqB;AAC9D,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,mBAAA,EAAoB,EAAG,SAAS,CAAA;AAAA,MAC9C,cAAA,EAAa,MAAA;AAAA,MACb,WAAA,EAAU,cAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,eAAA,CAAgB,EAAE,SAAA,EAAW,GAAG,OAAM,EAAyB;AACtE,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,uBAAA,EAAwB,EAAG,SAAS,CAAA;AAAA,MAClD,cAAA,EAAa,WAAA;AAAA,MACb,WAAA,EAAU,mBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,iBAAA,CAAkB;AAAA,EACzB,OAAA,GAAU,KAAA;AAAA,EACV,QAAA,GAAW,KAAA;AAAA,EACX,OAAA,GAAU,SAAA;AAAA,EACV,IAAA,GAAO,SAAA;AAAA,EACP,OAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA2B;AACzB,EAAA,MAAM,IAAA,GAAO,UAAU,IAAA,GAAO,QAAA;AAC9B,EAAA,MAAM,EAAE,QAAA,EAAU,KAAA,EAAM,GAAI,UAAA,EAAW;AAEvC,EAAA,MAAM,MAAA,mBACJ,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,GAAG,yBAAA,CAA0B,EAAE,SAAS,IAAA,EAAM,GAAG,SAAS,CAAA;AAAA,MACrE,aAAA,EAAa,QAAA;AAAA,MACb,cAAA,EAAa,aAAA;AAAA,MACb,WAAA,EAAW,IAAA;AAAA,MACX,WAAA,EAAU,qBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAGF,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,IAAI,OAAO,YAAY,QAAA,EAAU;AAC/B,IAAA,OAAA,GAAU;AAAA,MACR,QAAA,EAAU;AAAA,KACZ;AAAA,EACF;AAEA,EAAA,4BACG,OAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,cAAA,EAAA,EAAe,OAAA,EAAO,IAAA,EAAE,QAAA,EAAA,MAAA,EAAO,CAAA;AAAA,oBAChC,GAAA;AAAA,MAAC,cAAA;AAAA,MAAA;AAAA,QACC,KAAA,EAAM,QAAA;AAAA,QACN,MAAA,EAAQ,UAAU,WAAA,IAAe,QAAA;AAAA,QACjC,IAAA,EAAK,OAAA;AAAA,QACJ,GAAG;AAAA;AAAA;AACN,GAAA,EACF,CAAA;AAEJ;AAKA,SAAS,iBAAA,CAAkB;AAAA,EACzB,SAAA;AAAA,EACA,OAAA,GAAU,KAAA;AAAA,EACV,WAAA,GAAc,KAAA;AAAA,EACd,GAAG;AACL,CAAA,EAA2B;AACzB,EAAA,MAAM,IAAA,GAAO,UAAU,IAAA,GAAO,QAAA;AAE9B,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,yBAAA,EAA0B;AAAA,QAC1B,eAAe,oCAAA,EAAqC;AAAA,QACpD;AAAA,OACF;AAAA,MACA,cAAA,EAAa,aAAA;AAAA,MACb,WAAA,EAAU,qBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,gBAAA,CAAiB;AAAA,EACxB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA0B;AACxB,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,wBAAA,EAAyB,EAAG,SAAS,CAAA;AAAA,MACnD,cAAA,EAAa,YAAA;AAAA,MACb,WAAA,EAAU,oBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,mBAAA,CAAoB;AAAA,EAC3B,SAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,GAAG;AACL,CAAA,EAA6B;AAC3B,EAAA,MAAM,aAAmB,KAAA,CAAA,KAAA,EAAM;AAE/B,EAAA,MAAM,KAAA,GAAc,cAAQ,MAAM;AAChC,IAAA,IAAI,IAAA,GAAO,CAAA;AACX,IAAA,KAAA,IAAS,IAAI,CAAA,EAAG,CAAA,GAAI,UAAA,CAAW,MAAA,EAAQ,KAAK,CAAA,EAAG;AAC7C,MAAA,IAAA,GAAO,KAAK,KAAA,CAAM,IAAA,GAAO,KAAK,UAAA,CAAW,UAAA,CAAW,CAAC,CAAC,CAAA;AAAA,IACxD;AACA,IAAA,MAAM,UAAA,GAAa,IAAA,CAAK,GAAA,CAAI,IAAI,IAAI,EAAA,GAAK,EAAA;AACzC,IAAA,OAAO,CAAA,EAAG,MAAA,CAAO,UAAU,CAAC,CAAA,CAAA,CAAA;AAAA,EAC9B,CAAA,EAAG,CAAC,UAAU,CAAC,CAAA;AAEf,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,2BAAA,EAA4B,EAAG,SAAS,CAAA;AAAA,MACtD,cAAA,EAAa,eAAA;AAAA,MACb,WAAA,EAAU,uBAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA,oBACC,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,mBAAA;AAAA,YACV,cAAA,EAAa;AAAA;AAAA,SACf;AAAA,wBAEF,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,KAAA,EACE;AAAA,cACE,kBAAA,EAAoB;AAAA,aACtB;AAAA,YAEF,SAAA,EAAU,qCAAA;AAAA,YACV,cAAA,EAAa;AAAA;AAAA;AACf;AAAA;AAAA,GACF;AAEJ;AAKA,SAAS,cAAA,CAAe,EAAE,SAAA,EAAW,GAAG,OAAM,EAAwB;AACpE,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAuB,EAAG,SAAS,CAAA;AAAA,MACjD,cAAA,EAAa,UAAA;AAAA,MACb,WAAA,EAAU,kBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,kBAAA,CAAmB;AAAA,EAC1B,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA4B;AAC1B,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,0BAAA,EAA2B,EAAG,SAAS,CAAA;AAAA,MACrD,cAAA,EAAa,eAAA;AAAA,MACb,WAAA,EAAU,uBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,oBAAA,CAAqB;AAAA,EAC5B,OAAA,GAAU,KAAA;AAAA,EACV,IAAA,GAAO,IAAA;AAAA,EACP,QAAA,GAAW,KAAA;AAAA,EACX,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA8B;AAC5B,EAAA,MAAM,IAAA,GAAO,UAAU,IAAA,GAAO,GAAA;AAE9B,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,WAAW,EAAA,CAAG,4BAAA,CAA6B,EAAE,IAAA,EAAM,GAAG,SAAS,CAAA;AAAA,MAC/D,aAAA,EAAa,QAAA;AAAA,MACb,cAAA,EAAa,iBAAA;AAAA,MACb,WAAA,EAAW,IAAA;AAAA,MACX,WAAA,EAAU,yBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,kBAAA,CAAmB;AAAA,EAC1B,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA4B;AAC1B,EAAA,MAAM,EAAE,QAAA,EAAU,IAAA,EAAK,GAAI,UAAA,EAAW;AAEtC,EAAA,IAAI,QAAA,IAAY,IAAA,KAAS,MAAA,EAAQ,OAAO,IAAA;AAExC,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,kEAAA;AAAA,QACA,4CAAA;AAAA,QACA,mCAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,cAAA,EAAa,cAAA;AAAA,MACb,WAAA,EAAU,sBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAOA,SAAS,iBAAA,CAAkB;AAAA,EACzB,QAAA,GAAW,KAAA;AAAA,EACX,OAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA2B;AACzB,EAAA,MAAM,MAAA,mBACJ,GAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,GAAG,yBAAA,CAA0B,EAAE,UAAU,QAAA,IAAY,MAAA,EAAW,CAAA,EAAG,SAAS,CAAA;AAAA,MACvF,aAAA,EAAa,QAAA;AAAA,MACb,cAAA,EAAa,aAAA;AAAA,MACb,WAAA,EAAU,qBAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAGF,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,4BACG,OAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,cAAA,EAAA,EAAe,OAAA,EAAO,IAAA,EAAE,QAAA,EAAA,MAAA,EAAO,CAAA;AAAA,oBAChC,GAAA,CAAC,cAAA,EAAA,EAAe,IAAA,EAAK,OAAA,EAAS,QAAA,EAAA,OAAA,EAAQ;AAAA,GAAA,EACxC,CAAA;AAEJ;AAOA,SAAS,mBAAA,CAAoB;AAAA,EAC3B,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA6B;AAC3B,EAAA,MAAM,EAAE,IAAA,EAAK,GAAI,UAAA,EAAW;AAE5B,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,sCAAA;AAAA,QACA,gCAAA;AAAA,QACA,oCAAA;AAAA,QACA,mFAAA;AAAA,QACA,CAAC,IAAA,IAAQ,eAAA;AAAA,QACT;AAAA,OACF;AAAA,MACA,cAAA,EAAa,eAAA;AAAA,MACb,WAAA,EAAU,uBAAA;AAAA,MACV,YAAA,EAAY,OAAO,UAAA,GAAa,WAAA;AAAA,MAC/B,GAAG;AAAA;AAAA,GACN;AAEJ;AAWA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAW,GAAG,OAAM,EAAkC;AACzE,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,aAAA,EAAY,MAAA;AAAA,MACZ,SAAA;AAAA,MACA,IAAA,EAAK,MAAA;AAAA,MACL,OAAA,EAAQ,aAAA;AAAA,MACR,KAAA,EAAM,4BAAA;AAAA,MACL,GAAG,KAAA;AAAA,MAEJ,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,MAAA,EAAO,SAAA;AAAA,YACP,EAAA,EAAG,SAAA;AAAA,YACH,KAAA,EAAO,EAAE,IAAA,EAAM,0CAAA,EAA2C;AAAA,YAC1D,KAAA,EAAM;AAAA;AAAA,SACR;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,QAAA,EAAS,SAAA;AAAA,YACT,CAAA,EAAE,0pCAAA;AAAA,YACF,IAAA,EAAK,OAAA;AAAA,YACL,QAAA,EAAS;AAAA;AAAA,SACX;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,CAAA,EAAE,g0CAAA;AAAA,YACF,IAAA,EAAK;AAAA;AAAA;AACP;AAAA;AAAA,GACF;AAEJ;AAwBA,SAAS,WAAA,CAAY;AAAA,EACnB,IAAA,mBAAO,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,WAAA,EAAY,CAAA;AAAA,EACxC,KAAA;AAAA,EACA,GAAA;AAAA,EACA,YAAA,GAAe,KAAA;AAAA,EACf,aAAA,GAAgB,iBAAA;AAAA,EAChB,OAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAqB;AACnB,EAAA,MAAM,EAAE,aAAA,EAAc,GAAI,UAAA,EAAW;AACrC,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,4CAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,WAAA,EAAU,cAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,IAAA,oBACC,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,oDAAA;AAAA,cACA,oHAAA;AAAA,cACA,OAAA,IAAW;AAAA,aACb;AAAA,YACA,cAAY,KAAA,IAAS,MAAA;AAAA,YACrB,WAAA,EAAU,mBAAA;AAAA,YACV,IAAA,EAAK,QAAA;AAAA,YACL,OAAA;AAAA,YAEC,QAAA,EAAA;AAAA;AAAA,SACH;AAAA,QAAA,CAEA,SAAS,GAAA,qBACT,IAAA,CAAC,SAAI,SAAA,EAAU,4CAAA,EAA6C,aAAU,mBAAA,EACnE,QAAA,EAAA;AAAA,UAAA,KAAA,oBACC,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,oDAAA;AAAA,cACV,WAAA,EAAU,oBAAA;AAAA,cAET,QAAA,EAAA;AAAA;AAAA,WACH;AAAA,UAED,GAAA,oBACC,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,2DAAA;AAAA,cACV,WAAA,EAAU,kBAAA;AAAA,cAET,QAAA,EAAA;AAAA;AAAA;AACH,SAAA,EAEJ,CAAA;AAAA,QAED,YAAA,oBACC,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,yDAAA;AAAA,cACA,oEAAA;AAAA,cACA,sFAAA;AAAA,cACA;AAAA,aACF;AAAA,YACA,YAAA,EAAY,aAAA;AAAA,YACZ,WAAA,EAAU,uBAAA;AAAA,YACV,IAAA,EAAK,QAAA;AAAA,YACL,SAAS,MAAM;AAAE,cAAA,aAAA,EAAc;AAAA,YAAG,CAAA;AAAA,YAElC,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,IAAA,EAAM,EAAA,EAAI;AAAA;AAAA;AAC3B;AAAA;AAAA,GAEJ;AAEJ;AA8BA,SAAS,aAAA,CAAc;AAAA,EACrB,MAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAA;AAAA,EACA,WAAA,GAAc,IAAA;AAAA,EACd,OAAA,GAAU,KAAA;AAAA,EACV,OAAA;AAAA,EACA,SAAA;AAAA,EACA,YAAA,EAAc;AAChB,CAAA,EAAuB;AACrB,EAAA,uBACE,IAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,2EAAA;AAAA,QACA,+EAAA;AAAA,QACA,wFAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,eAAA,EAAe,UAAU,MAAA,GAAS,MAAA;AAAA,MAClC,YAAA,EAAY,SAAA,KAAc,IAAA,GAAO,CAAA,iBAAA,EAAe,IAAI,CAAA,CAAA,GAAK,WAAA,CAAA;AAAA,MACzD,gBAAc,OAAA,IAAW,MAAA;AAAA,MACzB,WAAA,EAAU,gBAAA;AAAA,MACV,IAAA,EAAK,QAAA;AAAA,MACL,OAAA;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,MAAA,oBACC,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAK,IAAA;AAAA,YACJ,GAAG;AAAA;AAAA,SACN;AAAA,QAED,CAAC,YAAY,IAAA,IAAQ,KAAA,CAAA,yBACnB,MAAA,EAAA,EAAK,SAAA,EAAU,4CAAA,EAA6C,WAAA,EAAU,qBAAA,EACpE,QAAA,EAAA;AAAA,UAAA,IAAA,wBACE,MAAA,EAAA,EAAK,SAAA,EAAU,iEAAA,EAAkE,WAAA,EAAU,uBACzF,QAAA,EAAA,IAAA,EACH,CAAA;AAAA,UAED,yBACC,GAAA,CAAC,MAAA,EAAA,EAAK,WAAU,2DAAA,EAA4D,WAAA,EAAU,wBACnF,QAAA,EAAA,KAAA,EACH;AAAA,SAAA,EAEJ,CAAA;AAAA,QAED,CAAC,WAAW,WAAA,oBACX,GAAA;AAAA,UAAC,WAAA;AAAA,UAAA;AAAA,YACC,aAAA,EAAY,MAAA;AAAA,YACZ,SAAA,EAAU,+CAAA;AAAA,YACV,WAAA,EAAU,wBAAA;AAAA,YACV,IAAA,EAAM;AAAA;AAAA;AACR;AAAA;AAAA,GAEJ;AAEJ;AAmBA,SAAS,eAAA,GAA2D;AAClE,EAAA,MAAM,IAAA,GAAa,kBAAY,MAAwB;AACrD,IAAA,IAAI,OAAO,QAAA,KAAa,WAAA,EAAa,OAAO,OAAA;AAC5C,IAAA,MAAM,OAAO,QAAA,CAAS,eAAA;AACtB,IAAA,IAAI,IAAA,CAAK,SAAA,CAAU,QAAA,CAAS,MAAM,GAAG,OAAO,MAAA;AAC5C,IAAA,IAAI,IAAA,CAAK,SAAA,CAAU,QAAA,CAAS,OAAO,GAAG,OAAO,OAAA;AAC7C,IAAA,OAAO,OAAO,WAAW,WAAA,IAAe,MAAA,CAAO,WAAW,8BAA8B,CAAA,CAAE,UACtF,MAAA,GACA,OAAA;AAAA,EACN,CAAA,EAAG,EAAE,CAAA;AACL,EAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAU,eAA2B,IAAI,CAAA;AAC7D,EAAM,gBAAU,MAAM;AACpB,IAAA,IAAI,OAAO,aAAa,WAAA,EAAa;AACrC,IAAA,MAAM,GAAA,GAAM,IAAI,gBAAA,CAAiB,MAAM;AAAE,MAAA,OAAA,CAAQ,MAAM,CAAA;AAAA,IAAG,CAAC,CAAA;AAC3D,IAAA,GAAA,CAAI,OAAA,CAAQ,QAAA,CAAS,eAAA,EAAiB,EAAE,UAAA,EAAY,MAAM,eAAA,EAAiB,CAAC,OAAO,CAAA,EAAG,CAAA;AACtF,IAAA,OAAO,MAAM;AAAE,MAAA,GAAA,CAAI,UAAA,EAAW;AAAA,IAAG,CAAA;AAAA,EACnC,CAAA,EAAG,CAAC,IAAI,CAAC,CAAA;AACT,EAAA,MAAM,MAAA,GAAe,kBAAY,MAAM;AACrC,IAAA,IAAI,OAAO,aAAa,WAAA,EAAa;AACrC,IAAA,MAAM,IAAA,GAAyB,IAAA,KAAS,MAAA,GAAS,OAAA,GAAU,MAAA;AAC3D,IAAA,MAAM,OAAO,QAAA,CAAS,eAAA;AACtB,IAAA,IAAA,CAAK,SAAA,CAAU,MAAA,CAAO,MAAA,EAAQ,OAAO,CAAA;AACrC,IAAA,IAAA,CAAK,SAAA,CAAU,IAAI,IAAI,CAAA;AACvB,IAAA,IAAI;AAAE,MAAA,YAAA,CAAa,OAAA,CAAQ,eAAe,IAAI,CAAA;AAAA,IAAE,CAAA,CAAA,MAAQ;AAAA,IAExD;AACA,IAAA,OAAA,CAAQ,IAAI,CAAA;AAAA,EACd,CAAA,EAAG,CAAC,IAAI,CAAC,CAAA;AACT,EAAA,OAAO,CAAC,MAAM,MAAM,CAAA;AACtB;AAgBA,SAAS,kBAAA,CAAmB;AAAA,EAC1B,IAAA,EAAM,cAAA;AAAA,EACN,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA,GAAQ,CAAC,CAAA,KAAO,CAAA,KAAM,SAAS,YAAA,GAAe,aAAA;AAAA,EAC9C,IAAA,GAAO,SAAA;AAAA,EACP;AACF,CAAA,EAA4B;AAC1B,EAAA,MAAM,CAAC,YAAA,EAAc,cAAc,CAAA,GAAI,eAAA,EAAgB;AACvD,EAAA,MAAM,OAAO,cAAA,IAAkB,YAAA;AAC/B,EAAA,MAAM,cAAc,MAAM;AACxB,IAAA,IAAI,QAAA,EAAU;AACZ,MAAA,QAAA,CAAS,IAAA,KAAS,MAAA,GAAS,OAAA,GAAU,MAAM,CAAA;AAAA,IAC7C,CAAA,MAAO;AACL,MAAA,cAAA,EAAe;AAAA,IACjB;AAAA,EACF,CAAA;AACA,EAAA,MAAM,QAAA,GAAW,IAAA,KAAS,IAAA,GAAO,EAAA,GAAK,EAAA;AACtC,EAAA,MAAM,aAAA,GAAgB,IAAA,KAAS,IAAA,GAAO,QAAA,GAAW,QAAA;AACjD,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,4DAAA;AAAA,QACA,qDAAA;AAAA,QACA,sFAAA;AAAA,QACA,wFAAA;AAAA,QACA,aAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,YAAA,EAAY,MAAM,IAAI,CAAA;AAAA,MACtB,gBAAc,IAAA,KAAS,MAAA;AAAA,MACvB,WAAA,EAAW,IAAA;AAAA,MACX,WAAA,EAAU,sBAAA;AAAA,MACV,KAAA,EAAO,MAAM,IAAI,CAAA;AAAA,MACjB,IAAA,EAAK,QAAA;AAAA,MACL,OAAA,EAAS,WAAA;AAAA,MAER,QAAA,EAAA,IAAA,KAAS,MAAA,GACL,SAAA,oBAAa,GAAA,CAAC,OAAA,EAAA,EAAQ,IAAA,EAAM,QAAA,EAAU,CAAA,GACtC,QAAA,oBAAY,GAAA,CAAC,QAAA,EAAA,EAAS,IAAA,EAAM,QAAA,EAAU;AAAA;AAAA,GAC7C;AAEJ","file":"chunk-AB3S55W5.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/* eslint-disable sonarjs/no-duplicate-string -- Tailwind class combinations naturally repeat in variant definitions */\n\n/**\n * Common peer menu button position styles\n */\nconst PEER_SIZE_POSITIONS = [\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n]\n\n/**\n * SidebarProvider wrapper variant styles\n */\nexport const sidebarProviderVariants = cva([\n \"group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full\",\n])\n\n/**\n * Sidebar (non-collapsible) variant styles\n */\nexport const sidebarNonCollapsibleVariants = cva([\n \"bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col\",\n])\n\n/**\n * Sidebar mobile content variant styles\n */\nexport const sidebarMobileVariants = cva([\n \"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\",\n])\n\n/**\n * Sidebar desktop wrapper variant styles\n */\nexport const sidebarDesktopVariants = cva([\n \"group peer text-sidebar-foreground hidden md:block\",\n])\n\n/**\n * Sidebar gap variant styles\n */\nexport const sidebarGapVariants = cva([\n \"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\",\n \"group-data-[collapsible=offcanvas]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n])\n\n/**\n * Sidebar container variant styles\n */\nexport const sidebarContainerVariants = cva([\n \"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\",\n])\n\n/**\n * Sidebar inner variant styles\n */\nexport const sidebarInnerVariants = cva([\n \"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col\",\n \"group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm\",\n])\n\n/**\n * SidebarTrigger variant styles\n */\nexport const sidebarTriggerVariants = cva([\"size-7\"])\n\n/**\n * SidebarRail variant styles\n */\nexport const sidebarRailVariants = cva([\n \"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear\",\n \"group-data-[side=left]:-right-4 group-data-[side=right]:left-0\",\n \"after:absolute after:inset-y-0 after:left-1/2 after:w-0.5 sm:flex\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\",\n \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n])\n\n/**\n * SidebarInset variant styles\n */\nexport const sidebarInsetVariants = cva([\n \"bg-background relative flex w-full flex-1 flex-col\",\n \"md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0\",\n \"md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm\",\n \"md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2\",\n \"peer-data-[mode=dual]:bg-[color:var(--sidebar-background,var(--sidebar))] peer-data-[mode=dual]:flex peer-data-[mode=dual]:flex-col peer-data-[mode=dual]:gap-3 peer-data-[mode=dual]:pt-5\",\n])\n\n/**\n * SidebarInput variant styles\n */\nexport const sidebarInputVariants = cva([\n \"bg-background h-8 w-full shadow-none\",\n])\n\n/**\n * SidebarHeader variant styles\n *\n * Dual mode consumes sidebar.tokens.json (Figma 1092:542 panel header):\n * - padding-x = 16px (--sidebar-panel-header-padding-x)\n * - padding-top = 28px (--sidebar-panel-padding-top) when at top of panel\n */\nexport const sidebarHeaderVariants = cva([\n \"flex flex-col gap-2 p-2\",\n \"group-data-[mode]:gap-0\",\n \"group-data-[mode]:px-[var(--sidebar-panel-header-padding-x)]\",\n \"group-data-[mode]:pt-[var(--sidebar-panel-padding-top)]\",\n \"group-data-[mode]:pb-0\",\n])\n\n/**\n * SidebarFooter variant styles\n */\nexport const sidebarFooterVariants = cva([\n \"flex flex-col gap-2 p-2\",\n])\n\n/**\n * SidebarSeparator variant styles\n */\nexport const sidebarSeparatorVariants = cva([\n \"bg-sidebar-border mx-2 w-auto\",\n])\n\n/**\n * SidebarContent variant styles\n */\nexport const sidebarContentVariants = cva([\n \"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n])\n\n/**\n * SidebarGroup variant styles\n *\n * Dual mode consumes sidebar.tokens.json (Figma 1092:542 Sub Categoria block):\n * - padding-x = 8px (--sidebar-section-padding-x)\n * - vertical gap with header handled by panel gap (--sidebar-panel-gap = 28px)\n */\nexport const sidebarGroupVariants = cva([\n \"relative flex w-full min-w-0 flex-col p-2\",\n \"group-data-[mode]:px-[var(--sidebar-section-padding-x)]\",\n \"group-data-[mode]:pt-[var(--sidebar-panel-gap)]\",\n \"group-data-[mode]:gap-[var(--sidebar-section-gap)]\",\n])\n\n/**\n * SidebarGroupLabel variant styles\n *\n * Dual mode consumes sidebar.tokens.json (Figma 1092:542 section title \"Dashboards\"):\n * - padding-x = 8px (--sidebar-section-title-padding-x)\n * - font 10px Regular leading-1 (not 12px uppercase!)\n * - color = muted-foreground tertiary\n */\nexport const sidebarGroupLabelVariants = cva([\n \"text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium\",\n \"outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2\",\n \"[&>svg]:size-4 [&>svg]:shrink-0\",\n \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\",\n \"group-data-[mode]:h-auto\",\n \"group-data-[mode]:px-[var(--sidebar-section-title-padding-x)]\",\n \"group-data-[mode]:py-0\",\n \"group-data-[mode]:text-[length:var(--sidebar-section-title-font-size)]\",\n \"group-data-[mode]:font-[var(--sidebar-section-title-font-weight)]\",\n \"group-data-[mode]:leading-[var(--sidebar-section-title-line-height)]\",\n \"group-data-[mode]:tracking-normal\",\n \"group-data-[mode]:normal-case\",\n \"group-data-[mode]:text-[color:var(--sidebar-section-title-color)]\",\n])\n\n/**\n * SidebarGroupAction variant styles\n */\nexport const sidebarGroupActionVariants = cva([\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0\",\n \"outline-hidden transition-transform focus-visible:ring-2\",\n \"[&>svg]:size-4 [&>svg]:shrink-0\",\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarGroupContent variant styles\n */\nexport const sidebarGroupContentVariants = cva([\n \"w-full text-sm\",\n])\n\n/**\n * SidebarMenu variant styles\n *\n * Figma spacing differs per variant:\n * - Single (Expanded 1091:8942): gap-y 20px between items (--sidebar-rail-item-gap)\n * - Dual panel (1092:542): gap-y 8px between sub-items (--sidebar-section-content-gap)\n */\nexport const sidebarMenuVariants = cva([\n \"flex w-full min-w-0 flex-col gap-1\",\n \"group-data-[mode=single]:gap-[var(--sidebar-rail-item-gap)]\",\n \"group-data-[mode=dual]:gap-[var(--sidebar-section-content-gap)]\",\n \"group-data-[mode=dual]:px-[var(--sidebar-section-content-padding-x)]\",\n])\n\n/**\n * SidebarMenuItem variant styles\n */\nexport const sidebarMenuItemVariants = cva([\n \"group/menu-item relative\",\n])\n\n/**\n * SidebarMenuButton variant styles\n */\nexport const sidebarMenuButtonVariants = cva(\n [\n \"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm\",\n \"outline-hidden ring-sidebar-ring transition-[width,height,padding]\",\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"focus-visible:ring-2\",\n \"active:bg-sidebar-accent active:text-sidebar-accent-foreground\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"group-has-data-[sidebar=menu-action]/menu-item:pr-8\",\n \"aria-disabled:pointer-events-none aria-disabled:opacity-50\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground\",\n \"data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground\",\n \"group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2!\",\n \"[&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n // Dual mode — consumes Figma 1092:446 nav-item tokens:\n // padding 8px, radius 4px, gap 12px, font 14px Regular leading-1,\n // color muted-foreground default / foreground active, icon 20px\n \"group-data-[mode]:p-[var(--sidebar-nav-item-padding)]\",\n \"group-data-[mode]:rounded-[var(--sidebar-nav-item-radius)]\",\n \"group-data-[mode]:gap-[var(--sidebar-nav-item-gap)]\",\n \"group-data-[mode]:text-[length:var(--sidebar-nav-item-font-size)]\",\n \"group-data-[mode]:font-[var(--sidebar-nav-item-font-weight)]\",\n \"group-data-[mode]:leading-[var(--sidebar-nav-item-line-height)]\",\n \"group-data-[mode]:text-[color:var(--sidebar-nav-item-fg-default)]\",\n \"group-data-[mode]:[&>svg]:size-[var(--sidebar-nav-item-icon-size)]\",\n \"group-data-[mode]:hover:bg-[color:var(--sidebar-nav-item-bg-hover)]\",\n \"group-data-[mode]:hover:text-[color:var(--sidebar-nav-item-fg-active)]\",\n // Scoped `!` so the token-mode active bg/fg wins the Tailwind v4 stacked-variant\n // cascade over the base `data-[active=true]:bg-sidebar-accent` (which otherwise wins\n // by sort order). Idiomatic here (cf. `size-8!`/`p-2!` above). Gated on data-mode →\n // legacy sidebars (no data-mode) keep the shadcn mint; fixes single + dual alike.\n \"group-data-[mode]:data-[active=true]:bg-[color:var(--sidebar-nav-item-bg-hover)]!\",\n \"group-data-[mode]:data-[active=true]:text-[color:var(--sidebar-nav-item-fg-active)]!\",\n ],\n {\n variants: {\n variant: {\n default:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]\",\n },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\n/**\n * SidebarRailButton variant styles\n *\n * Consumes sidebar.tokens.json sub-tokens (Figma 1087:204 Nav Item, status=Default/Active):\n * - padding 8px, radius 4px (rounded-md)\n * - icon size 20px (was 16px — Figma canonical)\n * - fg default = muted-foreground, active = foreground\n * - bg hover/active = muted\n */\nexport const sidebarRailButtonVariants = cva(\n [\n \"inline-flex items-center justify-center transition-colors shrink-0\",\n \"p-[var(--sidebar-rail-item-padding)]\",\n \"rounded-[var(--sidebar-rail-item-radius)]\",\n \"outline-hidden ring-sidebar-ring focus-visible:ring-2\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"[&>svg]:size-[var(--sidebar-rail-item-icon-size)] [&>svg]:shrink-0\",\n ],\n {\n variants: {\n isActive: {\n true: \"bg-[color:var(--sidebar-rail-item-bg-hover)] text-[color:var(--sidebar-rail-item-fg-active)]\",\n false: \"bg-[color:var(--sidebar-rail-item-bg-default)] text-[color:var(--sidebar-rail-item-fg-default)] hover:bg-[color:var(--sidebar-rail-item-bg-hover)] hover:text-[color:var(--sidebar-rail-item-fg-active)]\",\n },\n },\n defaultVariants: {\n isActive: false,\n },\n }\n)\n\n/**\n * SidebarMenuAction variant styles\n */\nexport const sidebarMenuActionVariants = cva([\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground\",\n \"absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0\",\n \"outline-hidden transition-transform focus-visible:ring-2\",\n \"[&>svg]:size-4 [&>svg]:shrink-0\",\n \"after:absolute after:-inset-2 md:after:hidden\",\n ...PEER_SIZE_POSITIONS,\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarMenuAction showOnHover variant styles\n */\nexport const sidebarMenuActionShowOnHoverVariants = cva([\n \"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n \"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100\",\n \"data-[state=open]:opacity-100 md:opacity-0\",\n])\n\n/**\n * SidebarMenuBadge variant styles\n */\nexport const sidebarMenuBadgeVariants = cva([\n \"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center\",\n \"rounded-md px-1 text-xs font-medium tabular-nums select-none\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n ...PEER_SIZE_POSITIONS,\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarMenuSkeleton variant styles\n */\nexport const sidebarMenuSkeletonVariants = cva([\n \"flex h-8 items-center gap-2 rounded-md px-2\",\n])\n\n/**\n * SidebarMenuSub variant styles\n */\nexport const sidebarMenuSubVariants = cva([\n \"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\",\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarMenuSubItem variant styles\n */\nexport const sidebarMenuSubItemVariants = cva([\n \"group/menu-sub-item relative\",\n])\n\n/**\n * SidebarMenuSubButton variant styles\n */\nexport const sidebarMenuSubButtonVariants = cva(\n [\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"active:bg-sidebar-accent active:text-sidebar-accent-foreground\",\n \"[&>svg]:text-sidebar-accent-foreground\",\n \"flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2\",\n \"outline-hidden focus-visible:ring-2\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"aria-disabled:pointer-events-none aria-disabled:opacity-50\",\n \"[&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\",\n \"group-data-[collapsible=icon]:hidden\",\n ],\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n","\"use client\"\n\nimport type {\n SidebarContentProps,\n SidebarContextProps,\n SidebarFooterProps,\n SidebarGroupActionProps,\n SidebarGroupContentProps,\n SidebarGroupLabelProps,\n SidebarGroupProps,\n SidebarHeaderProps,\n SidebarInputProps,\n SidebarInsetProps,\n SidebarMenuActionProps,\n SidebarMenuBadgeProps,\n SidebarMenuButtonProps,\n SidebarMenuItemProps,\n SidebarMenuProps,\n SidebarMenuSkeletonProps,\n SidebarMenuSubButtonProps,\n SidebarMenuSubItemProps,\n SidebarMenuSubProps,\n SidebarPanelContentProps,\n SidebarProps,\n SidebarProviderProps,\n SidebarRailButtonProps,\n SidebarRailContentProps,\n SidebarRailProps,\n SidebarSeparatorProps,\n SidebarTriggerProps,\n} from \"./Sidebar.types\"\n\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { ChevronDown, MoonIcon, PanelLeftIcon, SunIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { useIsMobile } from \"../../../hooks/use-mobile\"\nimport { cn } from \"../../../lib/utils\"\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"../../feedback/Tooltip\"\nimport { TextInput } from \"../../forms/TextInput\"\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"../../layout/Sheet\"\nimport { Avatar } from \"../../primitives/Avatar\"\nimport { Button } from \"../../primitives/Button\"\nimport { Divider } from \"../../primitives/Divider\"\nimport { SkeletonLoader } from \"../../primitives/SkeletonLoader\"\nimport {\n sidebarContainerVariants,\n sidebarContentVariants,\n sidebarDesktopVariants,\n sidebarFooterVariants,\n sidebarGapVariants,\n sidebarGroupActionVariants,\n sidebarGroupContentVariants,\n sidebarGroupLabelVariants,\n sidebarGroupVariants,\n sidebarHeaderVariants,\n sidebarInnerVariants,\n sidebarInputVariants,\n sidebarInsetVariants,\n sidebarMenuActionShowOnHoverVariants,\n sidebarMenuActionVariants,\n sidebarMenuBadgeVariants,\n sidebarMenuButtonVariants,\n sidebarMenuItemVariants,\n sidebarMenuSkeletonVariants,\n sidebarMenuSubButtonVariants,\n sidebarMenuSubItemVariants,\n sidebarMenuSubVariants,\n sidebarMenuVariants,\n sidebarMobileVariants,\n sidebarNonCollapsibleVariants,\n sidebarProviderVariants,\n sidebarRailButtonVariants,\n sidebarRailVariants,\n sidebarSeparatorVariants,\n sidebarTriggerVariants,\n} from \"./Sidebar.variants\"\n\n// App-level constants — NOT design tokens. Persistence + keyboard config.\n// Width tokens read from CSS vars (--sidebar-width, --sidebar-width-icon,\n// --sidebar-width-mobile, --sidebar-rail-width, --sidebar-panel-width)\n// emitted by @etus/tokens. See packages/tokens/src/components/sidebar.tokens.json.\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\"\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\"\n\nconst SidebarContext = React.createContext<null | SidebarContextProps>(null)\n\n/**\n * useSidebar - Hook to access sidebar context.\n *\n * Must be used within a SidebarProvider.\n */\nfunction useSidebar() {\n const context = React.use(SidebarContext)\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\")\n }\n\n return context\n}\n\n/**\n * SidebarProvider - Context provider for sidebar state management.\n *\n * Provides state for expanded/collapsed, mobile/desktop, and keyboard shortcuts.\n *\n * @example\n * <SidebarProvider>\n * <Sidebar>...</Sidebar>\n * <SidebarInset>...</SidebarInset>\n * </SidebarProvider>\n */\nfunction SidebarProvider({\n defaultOpen = true,\n mode,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: SidebarProviderProps) {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [internalOpen, setInternalOpen] = React.useState(defaultOpen)\n const open = openProp ?? internalOpen\n const cookieTimeoutRef = React.useRef<ReturnType<typeof setTimeout>>(undefined)\n const persistCookie = React.useCallback((openState: boolean) => {\n clearTimeout(cookieTimeoutRef.current)\n cookieTimeoutRef.current = setTimeout(() => {\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${String(openState)}; path=/; max-age=${String(SIDEBAR_COOKIE_MAX_AGE)}`\n }, 300)\n }, [])\n\n const setOpen = React.useCallback(\n (value: ((value: boolean) => boolean) | boolean) => {\n if (typeof value === \"function\") {\n if (setOpenProp) {\n const resolved = value(open)\n setOpenProp(resolved)\n persistCookie(resolved)\n } else {\n setInternalOpen((prev) => {\n const next = value(prev)\n persistCookie(next)\n return next\n })\n }\n } else {\n if (setOpenProp) {\n setOpenProp(value)\n } else {\n setInternalOpen(value)\n }\n persistCookie(value)\n }\n },\n [setOpenProp, open, persistCookie]\n )\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n if (isMobile) { setOpenMobile((open) => !open); } else { setOpen((open) => !open); }\n }, [isMobile, setOpen, setOpenMobile])\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.repeat) return\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener(\"keydown\", handleKeyDown)\n return () => { window.removeEventListener(\"keydown\", handleKeyDown); }\n }, [toggleSidebar])\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\"\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n mode,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, mode, openMobile, setOpenMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n style={\n {\n // Mode \"dual\" overrides --sidebar-width and --sidebar-width-icon to compose\n // rail + panel widths. Single mode uses the base token values from\n // @etus/tokens (--sidebar-width, --sidebar-width-icon) without override.\n ...(mode === \"dual\" && {\n \"--sidebar-width\": \"calc(var(--sidebar-rail-width) + var(--sidebar-panel-width))\",\n \"--sidebar-width-icon\": \"var(--sidebar-rail-width)\",\n }),\n ...style,\n } as React.CSSProperties\n }\n className={cn(sidebarProviderVariants(), className)}\n data-mode={mode}\n data-slot=\"sidebar-wrapper\"\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext>\n )\n}\n\n/**\n * SidebarDualMode - Private dual-mode rendering path (icon rail + text panel).\n *\n * Desktop: fixed sidebar with rail and panel children side by side.\n * Mobile: falls back to Sheet with panel content only (rail hidden).\n */\nfunction SidebarDualMode({\n side = \"left\",\n className,\n children,\n ...props\n}: SidebarProps) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n style={\n {\n \"--sidebar-width\": \"var(--sidebar-width-mobile)\",\n } as React.CSSProperties\n }\n className={cn(sidebarMobileVariants())}\n data-mobile=\"true\"\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <nav aria-label=\"Main navigation\" className=\"flex h-full w-full flex-col\">{children}</nav>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className={cn(sidebarDesktopVariants())}\n data-collapsible={state === \"collapsed\" ? \"icon\" : \"\"}\n data-mode=\"dual\"\n data-side={side}\n data-slot=\"sidebar\"\n data-state={state}\n data-variant=\"sidebar\"\n >\n {/* Gap spacer transitions between rail-only and rail+panel widths */}\n <div\n className={cn(\n sidebarGapVariants(),\n \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n data-slot=\"sidebar-gap\"\n />\n <div\n className={cn(\n sidebarContainerVariants(),\n side === \"left\" ? \"left-0\" : \"right-0\",\n \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\",\n className\n )}\n data-slot=\"sidebar-container\"\n {...props}\n >\n <nav\n aria-label=\"Main navigation\"\n className=\"flex h-full w-full flex-row\"\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n >\n {children}\n </nav>\n </div>\n </div>\n )\n}\n\n/**\n * Sidebar - The main sidebar component.\n *\n * Supports multiple variants and collapsible modes.\n * When `mode=\"dual\"` is set on SidebarProvider, delegates to SidebarDualMode.\n */\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n ...props\n}: SidebarProps) {\n const { isMobile, mode, state, openMobile, setOpenMobile } = useSidebar()\n\n if (mode === \"dual\") {\n return (\n <SidebarDualMode className={className} side={side} {...props}>\n {children}\n </SidebarDualMode>\n )\n }\n\n if (collapsible === \"none\") {\n return (\n <nav\n aria-label=\"Main navigation\"\n className={cn(sidebarNonCollapsibleVariants(), className)}\n data-slot=\"sidebar\"\n {...props}\n >\n {children}\n </nav>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n style={\n {\n \"--sidebar-width\": \"var(--sidebar-width-mobile)\",\n } as React.CSSProperties\n }\n className={cn(sidebarMobileVariants())}\n data-mobile=\"true\"\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <nav aria-label=\"Main navigation\" className=\"flex h-full w-full flex-col\">{children}</nav>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className={cn(sidebarDesktopVariants())}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-mode={mode}\n data-side={side}\n data-slot=\"sidebar\"\n data-state={state}\n data-variant={variant}\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n className={cn(\n sidebarGapVariants(),\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n data-slot=\"sidebar-gap\"\n />\n <div\n className={cn(\n sidebarContainerVariants(),\n side === \"left\"\n ? \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\"\n : \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n className\n )}\n data-slot=\"sidebar-container\"\n {...props}\n >\n <nav\n aria-label=\"Main navigation\"\n className={cn(sidebarInnerVariants())}\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n >\n {children}\n </nav>\n </div>\n </div>\n )\n}\n\n/**\n * SidebarTrigger - Button to toggle the sidebar.\n */\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: SidebarTriggerProps) {\n const { toggleSidebar, state } = useSidebar()\n\n return (\n <Button\n aria-expanded={state === \"expanded\"}\n className={cn(sidebarTriggerVariants(), className)}\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n size=\"icon\"\n variant=\"ghost\"\n onClick={(event, payload) => {\n onClick?.(event, payload)\n toggleSidebar()\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n}\n\n/**\n * SidebarRail - Clickable edge to toggle sidebar.\n */\nfunction SidebarRail({ className, ...props }: SidebarRailProps) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n aria-label=\"Toggle Sidebar\"\n className={cn(sidebarRailVariants(), className)}\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n tabIndex={-1}\n title=\"Toggle Sidebar\"\n onClick={toggleSidebar}\n {...props}\n />\n )\n}\n\n/**\n * SidebarInset - Main content area adjacent to sidebar.\n */\nfunction SidebarInset({ className, ...props }: SidebarInsetProps) {\n return (\n <main\n className={cn(sidebarInsetVariants(), className)}\n data-slot=\"sidebar-inset\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarInput - Input field styled for sidebar.\n */\nfunction SidebarInput({\n className,\n ...props\n}: SidebarInputProps) {\n return (\n <TextInput\n className={cn(sidebarInputVariants(), className)}\n data-sidebar=\"input\"\n data-slot=\"sidebar-input\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarHeader - Header section of the sidebar.\n */\nfunction SidebarHeader({ className, ...props }: SidebarHeaderProps) {\n return (\n <div\n className={cn(sidebarHeaderVariants(), className)}\n data-sidebar=\"header\"\n data-slot=\"sidebar-header\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarFooter - Footer section of the sidebar.\n */\nfunction SidebarFooter({ className, ...props }: SidebarFooterProps) {\n return (\n <div\n className={cn(sidebarFooterVariants(), className)}\n data-sidebar=\"footer\"\n data-slot=\"sidebar-footer\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarSeparator - Divider for sidebar sections.\n */\nfunction SidebarSeparator({\n className,\n ...props\n}: SidebarSeparatorProps) {\n return (\n <Divider\n className={cn(sidebarSeparatorVariants(), className)}\n data-sidebar=\"separator\"\n data-slot=\"sidebar-separator\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarContent - Main scrollable content area.\n */\nfunction SidebarContent({ className, ...props }: SidebarContentProps) {\n return (\n <div\n className={cn(sidebarContentVariants(), className)}\n data-sidebar=\"content\"\n data-slot=\"sidebar-content\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroup - Group container for sidebar items.\n */\nfunction SidebarGroup({ className, ...props }: SidebarGroupProps) {\n return (\n <div\n className={cn(sidebarGroupVariants(), className)}\n data-sidebar=\"group\"\n data-slot=\"sidebar-group\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroupLabel - Label for a sidebar group.\n */\nfunction SidebarGroupLabel({\n className,\n asChild = false,\n ...props\n}: SidebarGroupLabelProps) {\n const Comp = asChild ? Slot : \"div\"\n\n return (\n <Comp\n className={cn(sidebarGroupLabelVariants(), className)}\n data-sidebar=\"group-label\"\n data-slot=\"sidebar-group-label\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroupAction - Action button for a sidebar group.\n */\nfunction SidebarGroupAction({\n className,\n asChild = false,\n ...props\n}: SidebarGroupActionProps) {\n const Comp = asChild ? Slot : \"button\"\n\n return (\n <Comp\n className={cn(sidebarGroupActionVariants(), className)}\n data-sidebar=\"group-action\"\n data-slot=\"sidebar-group-action\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroupContent - Content container for a sidebar group.\n */\nfunction SidebarGroupContent({\n className,\n ...props\n}: SidebarGroupContentProps) {\n return (\n <div\n className={cn(sidebarGroupContentVariants(), className)}\n data-sidebar=\"group-content\"\n data-slot=\"sidebar-group-content\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenu - Menu list container.\n */\nfunction SidebarMenu({ className, ...props }: SidebarMenuProps) {\n return (\n <ul\n className={cn(sidebarMenuVariants(), className)}\n data-sidebar=\"menu\"\n data-slot=\"sidebar-menu\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuItem - Individual menu item.\n */\nfunction SidebarMenuItem({ className, ...props }: SidebarMenuItemProps) {\n return (\n <li\n className={cn(sidebarMenuItemVariants(), className)}\n data-sidebar=\"menu-item\"\n data-slot=\"sidebar-menu-item\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuButton - Interactive menu button with variants.\n */\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: SidebarMenuButtonProps) {\n const Comp = asChild ? Slot : \"button\"\n const { isMobile, state } = useSidebar()\n\n const button = (\n <Comp\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n data-active={isActive}\n data-sidebar=\"menu-button\"\n data-size={size}\n data-slot=\"sidebar-menu-button\"\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n }\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n side=\"right\"\n {...tooltip}\n />\n </Tooltip>\n )\n}\n\n/**\n * SidebarMenuAction - Action button within a menu item.\n */\nfunction SidebarMenuAction({\n className,\n asChild = false,\n showOnHover = false,\n ...props\n}: SidebarMenuActionProps) {\n const Comp = asChild ? Slot : \"button\"\n\n return (\n <Comp\n className={cn(\n sidebarMenuActionVariants(),\n showOnHover && sidebarMenuActionShowOnHoverVariants(),\n className\n )}\n data-sidebar=\"menu-action\"\n data-slot=\"sidebar-menu-action\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuBadge - Badge displayed in a menu item.\n */\nfunction SidebarMenuBadge({\n className,\n ...props\n}: SidebarMenuBadgeProps) {\n return (\n <div\n className={cn(sidebarMenuBadgeVariants(), className)}\n data-sidebar=\"menu-badge\"\n data-slot=\"sidebar-menu-badge\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuSkeleton - Loading skeleton for menu items.\n */\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: SidebarMenuSkeletonProps) {\n const skeletonId = React.useId()\n // Deterministic width between 50 to 90% based on component id.\n const width = React.useMemo(() => {\n let hash = 0\n for (let i = 0; i < skeletonId.length; i += 1) {\n hash = Math.trunc(hash * 31 + skeletonId.charCodeAt(i))\n }\n const normalized = Math.abs(hash) % 41 + 50\n return `${String(normalized)}%`\n }, [skeletonId])\n\n return (\n <div\n className={cn(sidebarMenuSkeletonVariants(), className)}\n data-sidebar=\"menu-skeleton\"\n data-slot=\"sidebar-menu-skeleton\"\n {...props}\n >\n {showIcon && (\n <SkeletonLoader\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <SkeletonLoader\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n />\n </div>\n )\n}\n\n/**\n * SidebarMenuSub - Submenu container.\n */\nfunction SidebarMenuSub({ className, ...props }: SidebarMenuSubProps) {\n return (\n <ul\n className={cn(sidebarMenuSubVariants(), className)}\n data-sidebar=\"menu-sub\"\n data-slot=\"sidebar-menu-sub\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuSubItem - Individual submenu item.\n */\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: SidebarMenuSubItemProps) {\n return (\n <li\n className={cn(sidebarMenuSubItemVariants(), className)}\n data-sidebar=\"menu-sub-item\"\n data-slot=\"sidebar-menu-sub-item\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuSubButton - Interactive button within a submenu.\n */\nfunction SidebarMenuSubButton({\n asChild = false,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: SidebarMenuSubButtonProps) {\n const Comp = asChild ? Slot : \"a\"\n\n return (\n <Comp\n className={cn(sidebarMenuSubButtonVariants({ size }), className)}\n data-active={isActive}\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-slot=\"sidebar-menu-sub-button\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarRailContent - Icon rail zone in dual mode (always visible, 3rem wide).\n */\nfunction SidebarRailContent({\n className,\n ...props\n}: SidebarRailContentProps) {\n const { isMobile, mode } = useSidebar()\n\n if (isMobile && mode === \"dual\") return null\n\n return (\n <div\n className={cn(\n \"flex h-full w-[var(--rail-width)] shrink-0 flex-col items-center\",\n \"border-r border-[color:var(--rail-border)]\",\n \"bg-[color:var(--rail-background)]\",\n className\n )}\n data-sidebar=\"rail-content\"\n data-slot=\"sidebar-rail-content\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarRailButton - Icon button for the sidebar rail (32×32).\n *\n * Supports active/inactive states with Figma-aligned sizing.\n */\nfunction SidebarRailButton({\n isActive = false,\n tooltip,\n className,\n ...props\n}: SidebarRailButtonProps) {\n const button = (\n <button\n className={cn(sidebarRailButtonVariants({ isActive: isActive ?? undefined }), className)}\n data-active={isActive}\n data-sidebar=\"rail-button\"\n data-slot=\"sidebar-rail-button\"\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent side=\"right\">{tooltip}</TooltipContent>\n </Tooltip>\n )\n}\n\n/**\n * SidebarPanelContent - Text panel zone in dual mode (toggleable, 13.5rem wide).\n *\n * Collapses to width 0 when sidebar state is \"collapsed\".\n */\nfunction SidebarPanelContent({\n className,\n ...props\n}: SidebarPanelContentProps) {\n const { open } = useSidebar()\n\n return (\n <div\n className={cn(\n \"flex h-full flex-col overflow-hidden\",\n \"w-[var(--sidebar-panel-width)]\",\n \"bg-sidebar text-sidebar-foreground\",\n \"transition-[width,opacity] duration-200 ease-linear motion-reduce:transition-none\",\n !open && \"w-0 opacity-0\",\n className\n )}\n data-sidebar=\"panel-content\"\n data-slot=\"sidebar-panel-content\"\n data-state={open ? \"expanded\" : \"collapsed\"}\n {...props}\n />\n )\n}\n\n/* ─────────────────────────────────────────────────────────────\n * Sub-componentes alinhados aos Figma nodes:\n * - Sidebar / Logo (1087-323) → SidebarLogo\n * - Sidebar / Avatar (1088-627) → SidebarAvatar\n * - Sidebar / Color Mode Toggle (1089-324) → SidebarThemeToggle\n * Valores numéricos pinados em docs/proposals/sidebar-filetree-components/\n * 11-Prototype-values.md (seção 9).\n * ─────────────────────────────────────────────────────────────*/\n\nfunction SevenLogo({ className, ...props }: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n aria-hidden=\"true\"\n className={className}\n fill=\"none\"\n viewBox=\"0 0 447 421\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <rect\n height=\"420.697\"\n rx=\"52.3255\"\n style={{ fill: \"var(--brand-primary-500, var(--primary))\" }}\n width=\"446.511\"\n />\n <path\n clipRule=\"evenodd\"\n d=\"M297.097 126.658C313.023 126.661 327.15 131.593 337.759 140.229L337.772 140.241C342.56 143.898 346.681 148.278 349.989 153.277C360.539 169.219 361.562 189.733 351.524 207.699C341.313 225.975 325.169 234.706 307.327 237.12C289.856 239.483 270.755 235.793 253.953 229.106C257.099 236.591 262.271 243.904 268.869 249.321C273.202 252.609 278.097 255.077 283.391 256.278C304.929 261.165 323.562 252.744 336.549 236.264L337.34 235.261L365.526 256.947L365.513 256.964L366.897 258.029L366.095 259.055C346.033 284.695 314.063 300.49 276.874 292.052C264.669 289.283 254.128 283.966 245.384 276.913L245.377 276.907L245.36 276.894L245.353 276.888L244.889 276.528C224.237 260.353 213.344 234.603 213.866 209.528C213.876 209.081 214.479 202.313 214.479 202.313C214.479 202.313 218.001 182.504 224.799 169.993C237.562 146.503 261.564 126.651 297.097 126.658ZM298.448 163.313C276.722 163.308 261.843 176.856 255.022 192.602C262.048 196.07 269.076 198.519 275.811 199.995C299.647 205.218 314.251 197.954 319.102 189.272C322.736 182.767 322.06 176.535 318.957 171.845C318.134 170.602 317.053 169.35 315.692 168.179L315.341 167.93L314.978 167.684C311.174 165.165 305.764 163.314 298.448 163.313Z\"\n fill=\"black\"\n fillRule=\"evenodd\"\n />\n <path\n d=\"M246.018 186.67C268.826 199.868 252.621 219.225 249.886 226.823C212.772 211.745 200.922 187.978 177.479 169.658C158.128 154.537 139.239 156.58 131.217 162.056C127.067 164.888 125.582 168.878 125.582 173.623C125.582 176.588 126.375 179.159 127.957 181.334C129.538 183.509 131.716 185.286 134.484 186.67C137.449 188.054 140.808 189.34 144.562 190.526L170.368 198.237C183.616 202.192 193.804 208.125 200.922 216.034C208.237 223.942 211.893 233.632 211.893 245.099C211.893 254.788 209.323 263.391 204.182 270.905C199.041 278.22 191.923 283.954 182.828 288.106C173.732 292.258 163.052 294.336 150.792 294.336C133.591 294.336 118.561 290.28 105.709 282.174C93.0569 273.87 84.3585 262.7 79.613 248.665L108.679 234.724C112.831 243.818 118.564 250.937 125.88 256.078C133.393 261.218 141.698 263.789 150.792 263.789C157.911 263.789 163.551 262.204 167.703 259.04C171.853 255.878 173.925 251.727 173.926 246.588C173.926 243.426 173.039 240.854 171.261 238.877C169.679 236.702 167.402 234.917 164.436 233.533C161.668 231.952 158.604 230.665 155.243 229.677L128.85 222.264C115.206 218.309 104.818 212.276 97.7 204.169C90.7811 196.063 87.3242 186.473 87.3242 175.401C87.3242 165.515 89.7943 156.912 94.7376 149.596C99.8784 142.083 106.897 136.249 115.794 132.097C137.208 122.527 166.002 124.69 188.861 140.375C214.713 158.114 223.21 173.473 246.018 186.67Z\"\n fill=\"black\"\n />\n </svg>\n )\n}\n\ninterface SidebarLogoProps extends Omit<React.ComponentProps<\"div\">, \"onClick\"> {\n brand?: string\n collapseLabel?: string\n mark?: React.ReactNode\n onClick?: (event: React.MouseEvent) => void\n showCollapse?: boolean\n sub?: string\n}\n\n/**\n * SidebarLogo — branding header inside `<SidebarHeader>`.\n *\n * Renders a logomark + brand name + (optional) sub line + (optional) collapse trigger.\n * Aligned with Figma node `Sidebar / Logo` (1087-323).\n *\n * Default `mark` is the Seven brand logo. Pass a custom `mark` to override.\n *\n * @example\n * <SidebarHeader>\n * <SidebarLogo brand=\"ETUS · DAM\" showCollapse />\n * </SidebarHeader>\n */\nfunction SidebarLogo({\n mark = <SevenLogo className=\"size-full\" />,\n brand,\n sub,\n showCollapse = false,\n collapseLabel = \"Colapsar painel\",\n onClick,\n className,\n ...props\n}: SidebarLogoProps) {\n const { toggleSidebar } = useSidebar()\n return (\n <div\n className={cn(\n \"flex items-center gap-2.5 px-3.5 pt-4 pb-3\",\n className,\n )}\n data-slot=\"sidebar-logo\"\n {...props}\n >\n {mark && (\n <button\n className={cn(\n \"grid place-items-center shrink-0 size-7 rounded-md\",\n \"bg-[color:var(--brand-primary-500,var(--primary))] text-[color:var(--brand-primary-900,var(--primary-foreground))]\",\n onClick && \"cursor-pointer transition-transform hover:translate-y-px active:translate-y-0.5 motion-reduce:transform-none\",\n )}\n aria-label={brand ?? \"Home\"}\n data-slot=\"sidebar-logo-mark\"\n type=\"button\"\n onClick={onClick}\n >\n {mark}\n </button>\n )}\n {(brand ?? sub) && (\n <div className=\"flex flex-col min-w-0 flex-1 leading-tight\" data-slot=\"sidebar-logo-meta\">\n {brand && (\n <span\n className=\"text-[14px] font-bold tracking-[-0.005em] truncate\"\n data-slot=\"sidebar-logo-brand\"\n >\n {brand}\n </span>\n )}\n {sub && (\n <span\n className=\"text-[11px] text-[color:var(--muted-foreground)] truncate\"\n data-slot=\"sidebar-logo-sub\"\n >\n {sub}\n </span>\n )}\n </div>\n )}\n {showCollapse && (\n <button\n className={cn(\n \"grid place-items-center shrink-0 size-[26px] rounded-md\",\n \"bg-transparent text-[color:var(--muted-foreground)] cursor-pointer\",\n \"transition-colors hover:bg-[color:var(--muted)] hover:text-[color:var(--foreground)]\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--ring)]\",\n )}\n aria-label={collapseLabel}\n data-slot=\"sidebar-logo-collapse\"\n type=\"button\"\n onClick={() => { toggleSidebar(); }}\n >\n <PanelLeftIcon size={14} />\n </button>\n )}\n </div>\n )\n}\n\ninterface SidebarAvatarProps {\n \"aria-label\"?: string\n avatar?: React.ComponentProps<typeof Avatar>\n className?: string\n compact?: boolean\n email?: string\n name?: string\n onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void\n showChevron?: boolean\n}\n\n/**\n * SidebarAvatar — user-identity footer button inside `<SidebarFooter>`.\n *\n * Renders avatar + name + email + (optional) chevron, opens user menu on click.\n * Aligned with Figma node `Sidebar / Avatar` (1088-627).\n *\n * @example\n * <SidebarFooter>\n * <SidebarAvatar\n * avatar={{ initials: \"CR\", tone: \"mint\", size: \"sm\" }}\n * name=\"Camila Reis\"\n * email=\"camila@etus.com.br\"\n * onClick={() => userMenu.toggle()}\n * />\n * <SidebarThemeToggle />\n * </SidebarFooter>\n */\nfunction SidebarAvatar({\n avatar,\n name,\n email,\n showChevron = true,\n compact = false,\n onClick,\n className,\n \"aria-label\": ariaLabel,\n}: SidebarAvatarProps) {\n return (\n <button\n className={cn(\n \"flex items-center gap-2.5 px-2 py-1.5 flex-1 min-w-0 rounded-md text-left\",\n \"bg-transparent cursor-pointer transition-colors hover:bg-[color:var(--muted)]\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--ring)]\",\n className,\n )}\n aria-haspopup={onClick ? \"menu\" : undefined}\n aria-label={ariaLabel ?? (name ? `User menu — ${name}` : \"User menu\")}\n data-compact={compact || undefined}\n data-slot=\"sidebar-avatar\"\n type=\"button\"\n onClick={onClick}\n >\n {avatar && (\n <Avatar\n size=\"sm\"\n {...avatar}\n />\n )}\n {!compact && (name ?? email) && (\n <span className=\"flex flex-col min-w-0 flex-1 leading-tight\" data-slot=\"sidebar-avatar-meta\">\n {name && (\n <span className=\"text-[13px] font-medium text-[color:var(--foreground)] truncate\" data-slot=\"sidebar-avatar-name\">\n {name}\n </span>\n )}\n {email && (\n <span className=\"text-[11px] text-[color:var(--muted-foreground)] truncate\" data-slot=\"sidebar-avatar-email\">\n {email}\n </span>\n )}\n </span>\n )}\n {!compact && showChevron && (\n <ChevronDown\n aria-hidden=\"true\"\n className=\"shrink-0 text-[color:var(--muted-foreground)]\"\n data-slot=\"sidebar-avatar-chevron\"\n size={12}\n />\n )}\n </button>\n )\n}\n\ninterface SidebarThemeToggleProps {\n className?: string\n darkIcon?: React.ReactNode\n label?: (mode: \"dark\" | \"light\") => string\n lightIcon?: React.ReactNode\n mode?: \"dark\" | \"light\"\n onToggle?: (next: \"dark\" | \"light\") => void\n size?: \"default\" | \"sm\"\n}\n\n/**\n * useSidebarTheme — internal hook to read/write `class=\"dark\"|\"light\"` on `<html>`.\n *\n * Persists choice to localStorage under \"seven-theme\". Reacts to external changes\n * via a MutationObserver on `<html>.class`. Used by SidebarThemeToggle when no\n * `mode` prop is provided (uncontrolled mode).\n */\nfunction useSidebarTheme(): readonly [\"dark\" | \"light\", () => void] {\n const read = React.useCallback((): \"dark\" | \"light\" => {\n if (typeof document === \"undefined\") return \"light\"\n const html = document.documentElement\n if (html.classList.contains(\"dark\")) return \"dark\"\n if (html.classList.contains(\"light\")) return \"light\"\n return typeof window !== \"undefined\" && window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"dark\"\n : \"light\"\n }, [])\n const [mode, setMode] = React.useState<\"dark\" | \"light\">(read)\n React.useEffect(() => {\n if (typeof document === \"undefined\") return\n const obs = new MutationObserver(() => { setMode(read()); })\n obs.observe(document.documentElement, { attributes: true, attributeFilter: [\"class\"] })\n return () => { obs.disconnect(); }\n }, [read])\n const toggle = React.useCallback(() => {\n if (typeof document === \"undefined\") return\n const next: \"dark\" | \"light\" = mode === \"dark\" ? \"light\" : \"dark\"\n const html = document.documentElement\n html.classList.remove(\"dark\", \"light\")\n html.classList.add(next)\n try { localStorage.setItem(\"seven-theme\", next) } catch {\n // localStorage may be unavailable (private browsing, SSR); fail silently\n }\n setMode(next)\n }, [mode])\n return [mode, toggle] as const\n}\n\n/**\n * SidebarThemeToggle — sun/moon button that flips `<html>` class between\n * `light` and `dark`. Use inside `<SidebarFooter>` next to `<SidebarAvatar>`.\n *\n * Aligned with Figma node `Sidebar / Color Mode Toggle` (1089-324).\n *\n * @example\n * // Uncontrolled — reads/writes html.classList + localStorage\n * <SidebarThemeToggle />\n *\n * @example\n * // Controlled\n * <SidebarThemeToggle mode={themeStore.mode} onToggle={themeStore.set} />\n */\nfunction SidebarThemeToggle({\n mode: controlledMode,\n onToggle,\n lightIcon,\n darkIcon,\n label = (m) => (m === \"dark\" ? \"Modo claro\" : \"Modo escuro\"),\n size = \"default\",\n className,\n}: SidebarThemeToggleProps) {\n const [internalMode, internalToggle] = useSidebarTheme()\n const mode = controlledMode ?? internalMode\n const handleClick = () => {\n if (onToggle) {\n onToggle(mode === \"dark\" ? \"light\" : \"dark\")\n } else {\n internalToggle()\n }\n }\n const iconSize = size === \"sm\" ? 14 : 16\n const containerSize = size === \"sm\" ? \"size-7\" : \"size-8\"\n return (\n <button\n className={cn(\n \"grid place-items-center shrink-0 rounded-md cursor-pointer\",\n \"bg-transparent text-[color:var(--muted-foreground)]\",\n \"transition-colors hover:bg-[color:var(--muted)] hover:text-[color:var(--foreground)]\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--ring)]\",\n containerSize,\n className,\n )}\n aria-label={label(mode)}\n aria-pressed={mode === \"dark\"}\n data-mode={mode}\n data-slot=\"sidebar-theme-toggle\"\n title={label(mode)}\n type=\"button\"\n onClick={handleClick}\n >\n {mode === \"dark\"\n ? (lightIcon ?? <SunIcon size={iconSize} />)\n : (darkIcon ?? <MoonIcon size={iconSize} />)}\n </button>\n )\n}\n\nexport {\n Sidebar,\n SidebarAvatar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarLogo,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarPanelContent,\n SidebarProvider,\n SidebarRail,\n SidebarRailButton,\n SidebarRailContent,\n SidebarSeparator,\n SidebarThemeToggle,\n SidebarTrigger,\n useSidebar,\n}\n"]}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import { ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, ChartLegendContent } from './chunk-7I6KK6QE.js';
|
|
2
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { ScatterChart as ScatterChart$1, CartesianGrid, XAxis, Label, YAxis, ZAxis, Scatter } from 'recharts';
|
|
5
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
6
|
+
|
|
7
|
+
function TooltipContentWithCallback({
|
|
8
|
+
tooltipCallback,
|
|
9
|
+
tooltipIndicator,
|
|
10
|
+
xAxisKey,
|
|
11
|
+
yAxisKey,
|
|
12
|
+
zAxisKey,
|
|
13
|
+
...props
|
|
14
|
+
}) {
|
|
15
|
+
const prevActiveRef = React.useRef(false);
|
|
16
|
+
const { active = false, payload } = props;
|
|
17
|
+
React.useEffect(() => {
|
|
18
|
+
if (tooltipCallback && active !== prevActiveRef.current) {
|
|
19
|
+
prevActiveRef.current = active;
|
|
20
|
+
tooltipCallback({
|
|
21
|
+
active,
|
|
22
|
+
payload: payload?.map((p) => ({
|
|
23
|
+
payload: p.payload,
|
|
24
|
+
x: p.payload[xAxisKey],
|
|
25
|
+
y: p.payload[yAxisKey],
|
|
26
|
+
z: zAxisKey ? p.payload[zAxisKey] : void 0
|
|
27
|
+
}))
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
}, [active, payload, tooltipCallback, xAxisKey, yAxisKey, zAxisKey]);
|
|
31
|
+
return /* @__PURE__ */ jsx(ChartTooltipContent, { indicator: tooltipIndicator, ...props });
|
|
32
|
+
}
|
|
33
|
+
function ScatterChart({
|
|
34
|
+
autoMinValue = false,
|
|
35
|
+
className,
|
|
36
|
+
config,
|
|
37
|
+
enableLegendSlider = false,
|
|
38
|
+
gridDashArray = "3 3",
|
|
39
|
+
intervalType,
|
|
40
|
+
legendPosition = "bottom",
|
|
41
|
+
maxXValue,
|
|
42
|
+
maxYValue,
|
|
43
|
+
minXValue,
|
|
44
|
+
minYValue,
|
|
45
|
+
onClick,
|
|
46
|
+
rotateLabelX,
|
|
47
|
+
series,
|
|
48
|
+
shape = "circle",
|
|
49
|
+
showGrid = true,
|
|
50
|
+
showLegend = false,
|
|
51
|
+
showOpacity = false,
|
|
52
|
+
showTooltip = true,
|
|
53
|
+
showXAxis = true,
|
|
54
|
+
showYAxis = true,
|
|
55
|
+
size = 60,
|
|
56
|
+
sizeRange = [60, 400],
|
|
57
|
+
startEndOnly = false,
|
|
58
|
+
tickGap,
|
|
59
|
+
tooltipCallback,
|
|
60
|
+
tooltipIndicator = "dot",
|
|
61
|
+
valueFormatter,
|
|
62
|
+
xAxisKey,
|
|
63
|
+
xAxisLabel,
|
|
64
|
+
xAxisTickFormatter,
|
|
65
|
+
yAxisKey,
|
|
66
|
+
yAxisLabel,
|
|
67
|
+
yAxisTickFormatter,
|
|
68
|
+
yAxisWidth,
|
|
69
|
+
zAxisKey,
|
|
70
|
+
...props
|
|
71
|
+
}) {
|
|
72
|
+
const handleClick = React.useCallback((data) => {
|
|
73
|
+
if (!onClick || !data) return;
|
|
74
|
+
onClick({
|
|
75
|
+
payload: data.payload ?? data,
|
|
76
|
+
x: data[xAxisKey] ?? data.x,
|
|
77
|
+
y: data[yAxisKey] ?? data.y,
|
|
78
|
+
z: zAxisKey ? data[zAxisKey] : void 0
|
|
79
|
+
});
|
|
80
|
+
}, [onClick, xAxisKey, yAxisKey, zAxisKey]);
|
|
81
|
+
const xDomain = React.useMemo(() => {
|
|
82
|
+
const min = minXValue ?? (autoMinValue ? "auto" : "dataMin");
|
|
83
|
+
const max = maxXValue ?? "dataMax";
|
|
84
|
+
return [min, max];
|
|
85
|
+
}, [autoMinValue, maxXValue, minXValue]);
|
|
86
|
+
const yDomain = React.useMemo(() => {
|
|
87
|
+
const min = minYValue ?? (autoMinValue ? "auto" : "dataMin");
|
|
88
|
+
const max = maxYValue ?? "dataMax";
|
|
89
|
+
return [min, max];
|
|
90
|
+
}, [autoMinValue, maxYValue, minYValue]);
|
|
91
|
+
const xAxisTicks = React.useMemo(() => {
|
|
92
|
+
if (!startEndOnly) return;
|
|
93
|
+
const allXValues = [];
|
|
94
|
+
for (const s of series) {
|
|
95
|
+
for (const point of s.data) {
|
|
96
|
+
const xVal = point[xAxisKey];
|
|
97
|
+
if (typeof xVal === "number") {
|
|
98
|
+
allXValues.push(xVal);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
if (allXValues.length < 2) return;
|
|
103
|
+
const minX = Math.min(...allXValues);
|
|
104
|
+
const maxX = Math.max(...allXValues);
|
|
105
|
+
return [minX, maxX];
|
|
106
|
+
}, [series, startEndOnly, xAxisKey]);
|
|
107
|
+
const effectiveInterval = startEndOnly ? "preserveStartEnd" : intervalType;
|
|
108
|
+
const effectiveXFormatter = valueFormatter?.x ?? xAxisTickFormatter;
|
|
109
|
+
const effectiveYFormatter = valueFormatter?.y ?? yAxisTickFormatter;
|
|
110
|
+
return /* @__PURE__ */ jsx("div", { "data-slot": "scatter-chart", ...props, children: /* @__PURE__ */ jsx(
|
|
111
|
+
ChartContainer,
|
|
112
|
+
{
|
|
113
|
+
className: cn(className),
|
|
114
|
+
config,
|
|
115
|
+
children: /* @__PURE__ */ jsxs(
|
|
116
|
+
ScatterChart$1,
|
|
117
|
+
{
|
|
118
|
+
accessibilityLayer: true,
|
|
119
|
+
margin: {
|
|
120
|
+
left: yAxisLabel ? 20 : 12,
|
|
121
|
+
right: 12,
|
|
122
|
+
bottom: xAxisLabel ? 20 : 0
|
|
123
|
+
},
|
|
124
|
+
children: [
|
|
125
|
+
showGrid && /* @__PURE__ */ jsx(CartesianGrid, { strokeDasharray: gridDashArray }),
|
|
126
|
+
showXAxis && /* @__PURE__ */ jsx(
|
|
127
|
+
XAxis,
|
|
128
|
+
{
|
|
129
|
+
angle: rotateLabelX,
|
|
130
|
+
axisLine: false,
|
|
131
|
+
dataKey: xAxisKey,
|
|
132
|
+
domain: xDomain,
|
|
133
|
+
interval: effectiveInterval,
|
|
134
|
+
minTickGap: tickGap,
|
|
135
|
+
name: xAxisKey,
|
|
136
|
+
textAnchor: rotateLabelX ? "end" : "middle",
|
|
137
|
+
tickFormatter: effectiveXFormatter,
|
|
138
|
+
tickLine: false,
|
|
139
|
+
tickMargin: 8,
|
|
140
|
+
ticks: xAxisTicks,
|
|
141
|
+
type: "number",
|
|
142
|
+
children: xAxisLabel && /* @__PURE__ */ jsx(Label, { offset: -5, position: "insideBottom", value: xAxisLabel })
|
|
143
|
+
}
|
|
144
|
+
),
|
|
145
|
+
showYAxis && /* @__PURE__ */ jsx(
|
|
146
|
+
YAxis,
|
|
147
|
+
{
|
|
148
|
+
axisLine: false,
|
|
149
|
+
dataKey: yAxisKey,
|
|
150
|
+
domain: yDomain,
|
|
151
|
+
name: yAxisKey,
|
|
152
|
+
tickFormatter: effectiveYFormatter,
|
|
153
|
+
tickLine: false,
|
|
154
|
+
tickMargin: 8,
|
|
155
|
+
type: "number",
|
|
156
|
+
width: yAxisWidth,
|
|
157
|
+
children: yAxisLabel && /* @__PURE__ */ jsx(Label, { angle: -90, offset: -5, position: "insideLeft", value: yAxisLabel })
|
|
158
|
+
}
|
|
159
|
+
),
|
|
160
|
+
zAxisKey && /* @__PURE__ */ jsx(ZAxis, { dataKey: zAxisKey, name: zAxisKey, range: sizeRange, type: "number" }),
|
|
161
|
+
showTooltip && /* @__PURE__ */ jsx(
|
|
162
|
+
ChartTooltip,
|
|
163
|
+
{
|
|
164
|
+
content: tooltipCallback ? /* @__PURE__ */ jsx(
|
|
165
|
+
TooltipContentWithCallback,
|
|
166
|
+
{
|
|
167
|
+
tooltipCallback,
|
|
168
|
+
tooltipIndicator,
|
|
169
|
+
xAxisKey,
|
|
170
|
+
yAxisKey,
|
|
171
|
+
zAxisKey
|
|
172
|
+
}
|
|
173
|
+
) : /* @__PURE__ */ jsx(ChartTooltipContent, { indicator: tooltipIndicator }),
|
|
174
|
+
cursor: { strokeDasharray: "3 3" }
|
|
175
|
+
}
|
|
176
|
+
),
|
|
177
|
+
showLegend && /* @__PURE__ */ jsx(
|
|
178
|
+
ChartLegend,
|
|
179
|
+
{
|
|
180
|
+
align: legendPosition === "left" ? "left" : legendPosition === "right" ? "right" : "center",
|
|
181
|
+
content: /* @__PURE__ */ jsx(ChartLegendContent, { enableSlider: enableLegendSlider }),
|
|
182
|
+
layout: legendPosition === "left" || legendPosition === "right" ? "vertical" : "horizontal",
|
|
183
|
+
verticalAlign: legendPosition === "top" ? "top" : legendPosition === "bottom" ? "bottom" : "middle"
|
|
184
|
+
}
|
|
185
|
+
),
|
|
186
|
+
series.map((seriesConfig) => {
|
|
187
|
+
const {
|
|
188
|
+
data,
|
|
189
|
+
dataKey,
|
|
190
|
+
fill: seriesFill,
|
|
191
|
+
shape: seriesShape,
|
|
192
|
+
size: seriesSize
|
|
193
|
+
} = seriesConfig;
|
|
194
|
+
const fill = seriesFill ?? `var(--color-${dataKey})`;
|
|
195
|
+
return /* @__PURE__ */ jsx(
|
|
196
|
+
Scatter,
|
|
197
|
+
{
|
|
198
|
+
data,
|
|
199
|
+
fill,
|
|
200
|
+
fillOpacity: showOpacity ? 0.7 : 1,
|
|
201
|
+
name: dataKey,
|
|
202
|
+
shape: seriesShape ?? shape,
|
|
203
|
+
style: onClick ? { cursor: "pointer" } : void 0,
|
|
204
|
+
onClick: onClick ? handleClick : void 0,
|
|
205
|
+
children: !zAxisKey && /* @__PURE__ */ jsx(ZAxis, { range: [seriesSize ?? size, seriesSize ?? size] })
|
|
206
|
+
},
|
|
207
|
+
dataKey
|
|
208
|
+
);
|
|
209
|
+
})
|
|
210
|
+
]
|
|
211
|
+
}
|
|
212
|
+
)
|
|
213
|
+
}
|
|
214
|
+
) });
|
|
215
|
+
}
|
|
216
|
+
ScatterChart.displayName = "ScatterChart";
|
|
217
|
+
|
|
218
|
+
export { ScatterChart };
|
|
219
|
+
//# sourceMappingURL=chunk-AEE5GDNA.js.map
|
|
220
|
+
//# sourceMappingURL=chunk-AEE5GDNA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/ScatterChart/ScatterChart.tsx"],"names":["RechartsScatterChart"],"mappings":"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","file":"chunk-AEE5GDNA.js","sourcesContent":["\"use client\"\n\nimport type { ScatterChartProps, ScatterChartTooltipCallbackProps, ScatterChartTooltipIndicator } from \"./ScatterChart.types\"\n\nimport * as React from \"react\"\nimport {\n CartesianGrid,\n Label,\n ScatterChart as RechartsScatterChart,\n Scatter,\n XAxis,\n YAxis,\n ZAxis,\n} from \"recharts\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n ChartContainer,\n ChartLegend,\n ChartLegendContent,\n ChartTooltip,\n ChartTooltipContent,\n} from \"../Chart\"\n\n/**\n * Internal tooltip content wrapper that calls the tooltipCallback\n */\ninterface TooltipContentWithCallbackProps {\n tooltipCallback?: (props: ScatterChartTooltipCallbackProps) => void\n tooltipIndicator: ScatterChartTooltipIndicator\n xAxisKey: string\n yAxisKey: string\n zAxisKey?: string\n}\n\nfunction TooltipContentWithCallback({\n tooltipCallback,\n tooltipIndicator,\n xAxisKey,\n yAxisKey,\n zAxisKey,\n ...props\n}: TooltipContentWithCallbackProps & Record<string, unknown>) {\n const prevActiveRef = React.useRef<boolean>(false)\n const { active = false, payload } = props as { active?: boolean; payload?: { payload: Record<string, unknown> }[] }\n\n // Use effect to call callback when active state changes\n // This is an intentional callback pattern for tooltip state changes\n /* eslint-disable react-you-might-not-need-an-effect/no-pass-data-to-parent */\n React.useEffect(() => {\n if (tooltipCallback && active !== prevActiveRef.current) {\n prevActiveRef.current = active\n tooltipCallback({\n active,\n payload: payload?.map((p) => ({\n payload: p.payload,\n x: p.payload[xAxisKey] as number,\n y: p.payload[yAxisKey] as number,\n z: zAxisKey ? p.payload[zAxisKey] as number : undefined,\n })),\n })\n }\n }, [active, payload, tooltipCallback, xAxisKey, yAxisKey, zAxisKey])\n /* eslint-enable react-you-might-not-need-an-effect/no-pass-data-to-parent */\n\n return <ChartTooltipContent indicator={tooltipIndicator} {...props} />\n}\n\n/**\n * ScatterChart - Data visualization for correlation and distribution\n *\n * Displays data points on a two-dimensional plane, ideal for showing\n * relationships between variables, identifying clusters, and\n * detecting outliers.\n *\n * @example\n * ```tsx\n * const data = [\n * { x: 100, y: 200, name: \"A\" },\n * { x: 120, y: 100, name: \"B\" },\n * { x: 170, y: 300, name: \"C\" },\n * ]\n *\n * const config = {\n * series1: { label: \"Series 1\", color: \"hsl(var(--chart-1))\" },\n * }\n *\n * <ScatterChart\n * config={config}\n * series={[{ dataKey: \"series1\", data }]}\n * xAxisKey=\"x\"\n * yAxisKey=\"y\"\n * />\n * ```\n */\nexport function ScatterChart({\n autoMinValue = false,\n className,\n config,\n enableLegendSlider = false,\n gridDashArray = \"3 3\",\n intervalType,\n legendPosition = \"bottom\",\n maxXValue,\n maxYValue,\n minXValue,\n minYValue,\n onClick,\n rotateLabelX,\n series,\n shape = \"circle\",\n showGrid = true,\n showLegend = false,\n showOpacity = false,\n showTooltip = true,\n showXAxis = true,\n showYAxis = true,\n size = 60,\n sizeRange = [60, 400],\n startEndOnly = false,\n tickGap,\n tooltipCallback,\n tooltipIndicator = \"dot\",\n valueFormatter,\n xAxisKey,\n xAxisLabel,\n xAxisTickFormatter,\n yAxisKey,\n yAxisLabel,\n yAxisTickFormatter,\n yAxisWidth,\n zAxisKey,\n ...props\n}: ScatterChartProps) {\n // Handle point click - Recharts passes any-typed data\n /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access */\n const handleClick = React.useCallback((data: any) => {\n if (!onClick || !data) return\n onClick({\n payload: data.payload ?? data,\n x: data[xAxisKey] ?? data.x,\n y: data[yAxisKey] ?? data.y,\n z: zAxisKey ? data[zAxisKey] : undefined,\n })\n }, [onClick, xAxisKey, yAxisKey, zAxisKey])\n /* eslint-enable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access */\n\n // Calculate X-axis domain\n const xDomain = React.useMemo(() => {\n const min = minXValue ?? (autoMinValue ? \"auto\" : \"dataMin\")\n const max = maxXValue ?? \"dataMax\"\n return [min, max] as const\n }, [autoMinValue, maxXValue, minXValue])\n\n // Calculate Y-axis domain\n const yDomain = React.useMemo(() => {\n const min = minYValue ?? (autoMinValue ? \"auto\" : \"dataMin\")\n const max = maxYValue ?? \"dataMax\"\n return [min, max] as const\n }, [autoMinValue, maxYValue, minYValue])\n\n // Calculate X-axis ticks for startEndOnly\n const xAxisTicks = React.useMemo(() => {\n if (!startEndOnly) return\n // For scatter charts, we need to find min/max from all series\n const allXValues: number[] = []\n for (const s of series) {\n for (const point of s.data) {\n const xVal = point[xAxisKey]\n if (typeof xVal === \"number\") {\n allXValues.push(xVal)\n }\n }\n }\n if (allXValues.length < 2) return\n const minX = Math.min(...allXValues)\n const maxX = Math.max(...allXValues)\n return [minX, maxX]\n }, [series, startEndOnly, xAxisKey])\n\n // Determine effective interval based on startEndOnly\n const effectiveInterval = startEndOnly ? \"preserveStartEnd\" : intervalType\n\n // Effective tick formatters (valueFormatter takes precedence)\n const effectiveXFormatter = valueFormatter?.x ?? xAxisTickFormatter\n const effectiveYFormatter = valueFormatter?.y ?? yAxisTickFormatter\n\n return (\n <div data-slot=\"scatter-chart\" {...props}>\n <ChartContainer\n className={cn(className)}\n config={config}\n >\n <RechartsScatterChart\n accessibilityLayer\n margin={{\n left: yAxisLabel ? 20 : 12,\n right: 12,\n bottom: xAxisLabel ? 20 : 0,\n }}\n >\n {showGrid && (\n <CartesianGrid strokeDasharray={gridDashArray} />\n )}\n\n {showXAxis && (\n <XAxis\n angle={rotateLabelX}\n axisLine={false}\n dataKey={xAxisKey}\n domain={xDomain}\n interval={effectiveInterval}\n minTickGap={tickGap}\n name={xAxisKey}\n textAnchor={rotateLabelX ? \"end\" : \"middle\"}\n tickFormatter={effectiveXFormatter}\n tickLine={false}\n tickMargin={8}\n ticks={xAxisTicks}\n type=\"number\"\n >\n {xAxisLabel && (\n <Label offset={-5} position=\"insideBottom\" value={xAxisLabel} />\n )}\n </XAxis>\n )}\n\n {showYAxis && (\n <YAxis\n axisLine={false}\n dataKey={yAxisKey}\n domain={yDomain}\n name={yAxisKey}\n tickFormatter={effectiveYFormatter}\n tickLine={false}\n tickMargin={8}\n type=\"number\"\n width={yAxisWidth}\n >\n {yAxisLabel && (\n <Label angle={-90} offset={-5} position=\"insideLeft\" value={yAxisLabel} />\n )}\n </YAxis>\n )}\n\n {zAxisKey && (\n <ZAxis dataKey={zAxisKey} name={zAxisKey} range={sizeRange} type=\"number\" />\n )}\n\n {showTooltip && (\n <ChartTooltip\n content={\n tooltipCallback\n ? <TooltipContentWithCallback\n tooltipCallback={tooltipCallback}\n tooltipIndicator={tooltipIndicator}\n xAxisKey={xAxisKey}\n yAxisKey={yAxisKey}\n zAxisKey={zAxisKey}\n />\n : <ChartTooltipContent indicator={tooltipIndicator} />\n }\n cursor={{ strokeDasharray: \"3 3\" }}\n />\n )}\n\n {showLegend && (\n <ChartLegend\n align={legendPosition === \"left\" ? \"left\" : legendPosition === \"right\" ? \"right\" : \"center\"}\n content={<ChartLegendContent enableSlider={enableLegendSlider} />}\n layout={legendPosition === \"left\" || legendPosition === \"right\" ? \"vertical\" : \"horizontal\"}\n verticalAlign={legendPosition === \"top\" ? \"top\" : legendPosition === \"bottom\" ? \"bottom\" : \"middle\"}\n />\n )}\n\n {series.map((seriesConfig) => {\n const {\n data,\n dataKey,\n fill: seriesFill,\n shape: seriesShape,\n size: seriesSize,\n } = seriesConfig\n\n const fill = seriesFill ?? `var(--color-${dataKey})`\n\n return (\n <Scatter\n key={dataKey}\n data={data}\n fill={fill}\n fillOpacity={showOpacity ? 0.7 : 1}\n name={dataKey}\n shape={seriesShape ?? shape}\n style={onClick ? { cursor: \"pointer\" } : undefined}\n onClick={onClick ? handleClick : undefined}\n >\n {!zAxisKey && (\n <ZAxis range={[seriesSize ?? size, seriesSize ?? size]} />\n )}\n </Scatter>\n )\n })}\n </RechartsScatterChart>\n </ChartContainer>\n </div>\n )\n}\n\nScatterChart.displayName = \"ScatterChart\"\n"]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
2
|
+
import { cva } from 'class-variance-authority';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
var formValidationVariants = cva(
|
|
6
|
+
"text-sm mt-1.5",
|
|
7
|
+
{
|
|
8
|
+
variants: {
|
|
9
|
+
state: {
|
|
10
|
+
idle: "text-muted-foreground",
|
|
11
|
+
error: "text-destructive",
|
|
12
|
+
success: "text-success",
|
|
13
|
+
warning: "text-warning"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
defaultVariants: {
|
|
17
|
+
state: "idle"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
function getAutoState(props) {
|
|
22
|
+
if (props.error) return "error";
|
|
23
|
+
if (props.warning) return "warning";
|
|
24
|
+
if (props.success) return "success";
|
|
25
|
+
return "idle";
|
|
26
|
+
}
|
|
27
|
+
function getMessage(state, props) {
|
|
28
|
+
switch (state) {
|
|
29
|
+
case "error":
|
|
30
|
+
return props.error;
|
|
31
|
+
case "warning":
|
|
32
|
+
return props.warning;
|
|
33
|
+
case "success":
|
|
34
|
+
return props.success;
|
|
35
|
+
case "idle":
|
|
36
|
+
default:
|
|
37
|
+
return props.help;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function FormValidation({
|
|
41
|
+
className,
|
|
42
|
+
state,
|
|
43
|
+
error,
|
|
44
|
+
success,
|
|
45
|
+
warning,
|
|
46
|
+
help,
|
|
47
|
+
...props
|
|
48
|
+
}) {
|
|
49
|
+
const resolvedState = state ?? getAutoState({ error, success, warning});
|
|
50
|
+
const message = getMessage(resolvedState, { error, success, warning, help });
|
|
51
|
+
if (!message) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
const role = resolvedState === "error" ? "alert" : resolvedState === "success" ? "status" : void 0;
|
|
55
|
+
return /* @__PURE__ */ jsx(
|
|
56
|
+
"div",
|
|
57
|
+
{
|
|
58
|
+
className: cn(formValidationVariants({ state: resolvedState }), className),
|
|
59
|
+
"data-slot": "form-validation",
|
|
60
|
+
"data-state": resolvedState,
|
|
61
|
+
role,
|
|
62
|
+
...props,
|
|
63
|
+
children: message
|
|
64
|
+
}
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export { FormValidation, formValidationVariants };
|
|
69
|
+
//# sourceMappingURL=chunk-AEHYYTFW.js.map
|
|
70
|
+
//# sourceMappingURL=chunk-AEHYYTFW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/forms/FormValidation/FormValidation.variants.ts","../src/components/forms/FormValidation/FormValidation.tsx"],"names":[],"mappings":";;;;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC,gBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,uBAAA;AAAA,QACN,KAAA,EAAO,kBAAA;AAAA,QACP,OAAA,EAAS,cAAA;AAAA,QACT,OAAA,EAAS;AAAA;AACX,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO;AAAA;AACT;AAEJ;ACRA,SAAS,aAAa,KAAA,EAAiD;AACrE,EAAA,IAAI,KAAA,CAAM,OAAO,OAAO,OAAA;AACxB,EAAA,IAAI,KAAA,CAAM,SAAS,OAAO,SAAA;AAC1B,EAAA,IAAI,KAAA,CAAM,SAAS,OAAO,SAAA;AAC1B,EAAA,OAAO,MAAA;AACT;AAKA,SAAS,UAAA,CAAW,OAA4B,KAAA,EAA4B;AAC1E,EAAA,QAAQ,KAAA;AAAO,IACb,KAAK,OAAA;AACH,MAAA,OAAO,KAAA,CAAM,KAAA;AAAA,IACf,KAAK,SAAA;AACH,MAAA,OAAO,KAAA,CAAM,OAAA;AAAA,IACf,KAAK,SAAA;AACH,MAAA,OAAO,KAAA,CAAM,OAAA;AAAA,IACf,KAAK,MAAA;AAAA,IACL;AACE,MAAA,OAAO,KAAA,CAAM,IAAA;AAAA;AAEnB;AA8BA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAqD;AAEnD,EAAA,MAAM,aAAA,GAAgB,SAAS,YAAA,CAAa,EAAE,OAAO,OAAA,EAAS,OAAc,CAAC,CAAA;AAC7E,EAAA,MAAM,OAAA,GAAU,WAAW,aAAA,EAAe,EAAE,OAAO,OAAA,EAAS,OAAA,EAAS,MAAM,CAAA;AAG3E,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO,IAAA;AAAA,EACT;AAGA,EAAA,MAAM,OAAO,aAAA,KAAkB,OAAA,GAAU,OAAA,GAAU,aAAA,KAAkB,YAAY,QAAA,GAAW,MAAA;AAE5F,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,GAAG,sBAAA,CAAuB,EAAE,OAAO,aAAA,EAAe,GAAG,SAAS,CAAA;AAAA,MACzE,WAAA,EAAU,iBAAA;AAAA,MACV,YAAA,EAAY,aAAA;AAAA,MACZ,IAAA;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA;AAAA,GACH;AAEJ","file":"chunk-AEHYYTFW.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * FormValidation variant styles using CVA\n */\nexport const formValidationVariants = cva(\n \"text-sm mt-1.5\",\n {\n variants: {\n state: {\n idle: \"text-muted-foreground\",\n error: \"text-destructive\",\n success: \"text-success\",\n warning: \"text-warning\",\n },\n },\n defaultVariants: {\n state: \"idle\",\n },\n }\n)\n\n// Export variant prop types\nexport type FormValidationVariantProps = VariantProps<typeof formValidationVariants>\n","import type { FormValidationProps, FormValidationState } from \"./FormValidation.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n type FormValidationVariantProps,\n formValidationVariants,\n} from \"./FormValidation.variants\"\n\n/**\n * Determines the validation state based on which message prop is provided.\n * Priority order: error > warning > success > help (idle)\n */\nfunction getAutoState(props: FormValidationProps): FormValidationState {\n if (props.error) return \"error\"\n if (props.warning) return \"warning\"\n if (props.success) return \"success\"\n return \"idle\"\n}\n\n/**\n * Gets the message content based on the validation state.\n */\nfunction getMessage(state: FormValidationState, props: FormValidationProps) {\n switch (state) {\n case \"error\":\n return props.error\n case \"warning\":\n return props.warning\n case \"success\":\n return props.success\n case \"idle\":\n default:\n return props.help\n }\n}\n\n/**\n * FormValidation displays form validation feedback with appropriate styling.\n *\n * @example\n * ```tsx\n * // Auto-detect state from message prop\n * <FormValidation error=\"This field is required\" />\n * <FormValidation success=\"Email is available\" />\n * <FormValidation warning=\"Password is weak\" />\n * <FormValidation help=\"Enter your email address\" />\n * ```\n *\n * @example\n * ```tsx\n * // Explicit state control\n * <FormValidation state=\"error\" error=\"Invalid format\" />\n * ```\n *\n * @example\n * ```tsx\n * // With conditional rendering\n * <FormValidation\n * error={errors.email?.message}\n * success={isValid ? \"Looks good!\" : undefined}\n * help=\"We'll never share your email\"\n * />\n * ```\n */\nfunction FormValidation({\n className,\n state,\n error,\n success,\n warning,\n help,\n ...props\n}: FormValidationProps & FormValidationVariantProps) {\n // Auto-detect state if not explicitly provided\n const resolvedState = state ?? getAutoState({ error, success, warning, help })\n const message = getMessage(resolvedState, { error, success, warning, help })\n\n // Don't render if no message to display\n if (!message) {\n return null\n }\n\n // Determine appropriate role for accessibility\n const role = resolvedState === \"error\" ? \"alert\" : resolvedState === \"success\" ? \"status\" : undefined\n\n return (\n <div\n className={cn(formValidationVariants({ state: resolvedState }), className)}\n data-slot=\"form-validation\"\n data-state={resolvedState}\n role={role}\n {...props}\n >\n {message}\n </div>\n )\n}\n\nexport { FormValidation }\n"]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
2
|
+
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
var popoverContentVariants = cva(
|
|
7
|
+
[
|
|
8
|
+
"bg-[color:var(--popover-content-background)]",
|
|
9
|
+
"text-[color:var(--popover-content-foreground)]",
|
|
10
|
+
"border-[var(--popover-content-border-width)] border-solid border-[color:var(--popover-border)]",
|
|
11
|
+
"rounded-[var(--popover-content-radius)]",
|
|
12
|
+
"shadow-[var(--popover-content-shadow)]",
|
|
13
|
+
"p-[var(--popover-content-padding)]",
|
|
14
|
+
"w-[var(--popover-content-width)]",
|
|
15
|
+
"z-[var(--popover-content-z-index)]",
|
|
16
|
+
"origin-(--radix-popover-content-transform-origin)",
|
|
17
|
+
"outline-hidden",
|
|
18
|
+
"duration-[var(--popover-content-animation-duration)]",
|
|
19
|
+
"ease-[var(--popover-content-animation-easing)]",
|
|
20
|
+
"data-[state=open]:animate-in data-[state=closed]:animate-out",
|
|
21
|
+
"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
22
|
+
"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
|
|
23
|
+
"data-[side=bottom]:slide-in-from-top-2",
|
|
24
|
+
"data-[side=left]:slide-in-from-right-2",
|
|
25
|
+
"data-[side=right]:slide-in-from-left-2",
|
|
26
|
+
"data-[side=top]:slide-in-from-bottom-2"
|
|
27
|
+
]
|
|
28
|
+
);
|
|
29
|
+
function Popover({ ...props }) {
|
|
30
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
|
|
31
|
+
}
|
|
32
|
+
function PopoverTrigger({ ...props }) {
|
|
33
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
|
|
34
|
+
}
|
|
35
|
+
function PopoverContent({
|
|
36
|
+
className,
|
|
37
|
+
align = "center",
|
|
38
|
+
sideOffset = 4,
|
|
39
|
+
...props
|
|
40
|
+
}) {
|
|
41
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
42
|
+
PopoverPrimitive.Content,
|
|
43
|
+
{
|
|
44
|
+
align,
|
|
45
|
+
className: cn(popoverContentVariants(), className),
|
|
46
|
+
"data-slot": "popover-content",
|
|
47
|
+
sideOffset,
|
|
48
|
+
...props
|
|
49
|
+
}
|
|
50
|
+
) });
|
|
51
|
+
}
|
|
52
|
+
function PopoverAnchor({ ...props }) {
|
|
53
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Anchor, { "data-slot": "popover-anchor", ...props });
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export { Popover, PopoverAnchor, PopoverContent, PopoverTrigger };
|
|
57
|
+
//# sourceMappingURL=chunk-AFCSDND5.js.map
|
|
58
|
+
//# sourceMappingURL=chunk-AFCSDND5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/feedback/Popover/Popover.variants.ts","../src/components/feedback/Popover/Popover.tsx"],"names":[],"mappings":";;;;;AAGO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC;AAAA,IACE,8CAAA;AAAA,IACA,gDAAA;AAAA,IACA,gGAAA;AAAA,IACA,yCAAA;AAAA,IACA,wCAAA;AAAA,IACA,oCAAA;AAAA,IACA,kCAAA;AAAA,IACA,oCAAA;AAAA,IACA,mDAAA;AAAA,IACA,gBAAA;AAAA,IACA,sDAAA;AAAA,IACA,gDAAA;AAAA,IACA,8DAAA;AAAA,IACA,4DAAA;AAAA,IACA,8DAAA;AAAA,IACA,wCAAA;AAAA,IACA,wCAAA;AAAA,IACA,wCAAA;AAAA,IACA;AAAA;AAEJ,CAAA;ACTA,SAAS,OAAA,CAAQ,EAAE,GAAG,KAAA,EAAM,EAAiB;AAC3C,EAAA,2BAAyB,gBAAA,CAAA,IAAA,EAAjB,EAAsB,WAAA,EAAU,SAAA,EAAW,GAAG,KAAA,EAAO,CAAA;AAC/D;AAMA,SAAS,cAAA,CAAe,EAAE,GAAG,KAAA,EAAM,EAAwB;AACzD,EAAA,2BAAyB,gBAAA,CAAA,OAAA,EAAjB,EAAyB,WAAA,EAAU,iBAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AAC1E;AAMA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,KAAA,GAAQ,QAAA;AAAA,EACR,UAAA,GAAa,CAAA;AAAA,EACb,GAAG;AACL,CAAA,EAAwB;AACtB,EAAA,uBACE,GAAA,CAAkB,yBAAjB,EACC,QAAA,kBAAA,GAAA;AAAA,IAAkB,gBAAA,CAAA,OAAA;AAAA,IAAjB;AAAA,MACC,KAAA;AAAA,MACA,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAuB,EAAG,SAAS,CAAA;AAAA,MACjD,WAAA,EAAU,iBAAA;AAAA,MACV,UAAA;AAAA,MACC,GAAG;AAAA;AAAA,GACN,EACF,CAAA;AAEJ;AAMA,SAAS,aAAA,CAAc,EAAE,GAAG,KAAA,EAAM,EAAuB;AACvD,EAAA,2BAAyB,gBAAA,CAAA,MAAA,EAAjB,EAAwB,WAAA,EAAU,gBAAA,EAAkB,GAAG,KAAA,EAAO,CAAA;AACxE","file":"chunk-AFCSDND5.js","sourcesContent":["// Popover/Popover.variants.ts\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nexport const popoverContentVariants = cva(\n [\n \"bg-[color:var(--popover-content-background)]\",\n \"text-[color:var(--popover-content-foreground)]\",\n \"border-[var(--popover-content-border-width)] border-solid border-[color:var(--popover-border)]\",\n \"rounded-[var(--popover-content-radius)]\",\n \"shadow-[var(--popover-content-shadow)]\",\n \"p-[var(--popover-content-padding)]\",\n \"w-[var(--popover-content-width)]\",\n \"z-[var(--popover-content-z-index)]\",\n \"origin-(--radix-popover-content-transform-origin)\",\n \"outline-hidden\",\n \"duration-[var(--popover-content-animation-duration)]\",\n \"ease-[var(--popover-content-animation-easing)]\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n \"data-[side=bottom]:slide-in-from-top-2\",\n \"data-[side=left]:slide-in-from-right-2\",\n \"data-[side=right]:slide-in-from-left-2\",\n \"data-[side=top]:slide-in-from-bottom-2\",\n ]\n)\n\nexport type PopoverContentVariantProps = VariantProps<typeof popoverContentVariants>\n","import type {\n PopoverAnchorProps,\n PopoverContentProps,\n PopoverProps,\n PopoverTriggerProps,\n} from \"./Popover.types\"\n\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { popoverContentVariants } from \"./Popover.variants\"\n\n/**\n * Popover Root component\n * Manages the open/closed state of the popover\n */\nfunction Popover({ ...props }: PopoverProps) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />\n}\n\n/**\n * PopoverTrigger component\n * Element that opens the popover when clicked\n */\nfunction PopoverTrigger({ ...props }: PopoverTriggerProps) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />\n}\n\n/**\n * PopoverContent component\n * The floating content container with animations\n */\nfunction PopoverContent({\n className,\n align = \"center\",\n sideOffset = 4,\n ...props\n}: PopoverContentProps) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n align={align}\n className={cn(popoverContentVariants(), className)}\n data-slot=\"popover-content\"\n sideOffset={sideOffset}\n {...props}\n />\n </PopoverPrimitive.Portal>\n )\n}\n\n/**\n * PopoverAnchor component\n * Alternative anchor element for positioning\n */\nfunction PopoverAnchor({ ...props }: PopoverAnchorProps) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />\n}\n\nexport { Popover, PopoverAnchor, PopoverContent, PopoverTrigger }\n"]}
|