@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,204 @@
|
|
|
1
|
+
import { SkeletonLoader } from './chunk-QHKOBGLW.js';
|
|
2
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
3
|
+
import { useState, useRef, useEffect } from 'react';
|
|
4
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
var sizeClasses = {
|
|
7
|
+
lg: "text-[length:var(--single-stat-value-size-lg)]",
|
|
8
|
+
md: "text-[length:var(--single-stat-value-size-md)]",
|
|
9
|
+
sm: "text-[length:var(--single-stat-value-size-sm)]",
|
|
10
|
+
xl: "text-[length:var(--single-stat-value-size-xl)]",
|
|
11
|
+
xs: "text-[length:var(--single-stat-value-size-xs)]"
|
|
12
|
+
};
|
|
13
|
+
var skeletonSizes = {
|
|
14
|
+
lg: "h-10",
|
|
15
|
+
md: "h-8",
|
|
16
|
+
sm: "h-7",
|
|
17
|
+
xl: "h-14",
|
|
18
|
+
xs: "h-6"
|
|
19
|
+
};
|
|
20
|
+
function useAnimatedCounter(targetValue, duration, enabled) {
|
|
21
|
+
const [count, setCount] = useState(0);
|
|
22
|
+
const animationFrameRef = useRef(0);
|
|
23
|
+
const startTimeRef = useRef(null);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (!enabled) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
startTimeRef.current = null;
|
|
29
|
+
const animate = (timestamp) => {
|
|
30
|
+
startTimeRef.current ??= timestamp;
|
|
31
|
+
const progress = Math.min((timestamp - startTimeRef.current) / duration, 1);
|
|
32
|
+
const eased = 1 - (1 - progress) * (1 - progress);
|
|
33
|
+
setCount(Math.floor(eased * targetValue));
|
|
34
|
+
if (progress < 1) {
|
|
35
|
+
animationFrameRef.current = requestAnimationFrame(animate);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
animationFrameRef.current = requestAnimationFrame(animate);
|
|
39
|
+
return () => {
|
|
40
|
+
if (animationFrameRef.current) {
|
|
41
|
+
cancelAnimationFrame(animationFrameRef.current);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
}, [targetValue, duration, enabled]);
|
|
45
|
+
return enabled ? count : targetValue;
|
|
46
|
+
}
|
|
47
|
+
function SingleStat({
|
|
48
|
+
value,
|
|
49
|
+
label,
|
|
50
|
+
variant = "default",
|
|
51
|
+
size = "md",
|
|
52
|
+
prefix,
|
|
53
|
+
suffix,
|
|
54
|
+
animated = false,
|
|
55
|
+
animationDuration = 1e3,
|
|
56
|
+
loading = false,
|
|
57
|
+
className,
|
|
58
|
+
...props
|
|
59
|
+
}) {
|
|
60
|
+
const numericValue = typeof value === "number" ? value : Number.NaN;
|
|
61
|
+
const isNumeric = !Number.isNaN(numericValue);
|
|
62
|
+
const animatedValue = useAnimatedCounter(
|
|
63
|
+
isNumeric ? numericValue : 0,
|
|
64
|
+
animationDuration,
|
|
65
|
+
animated && isNumeric
|
|
66
|
+
);
|
|
67
|
+
const displayValue = animated && isNumeric ? animatedValue.toLocaleString() : typeof value === "number" ? value.toLocaleString() : value;
|
|
68
|
+
if (loading) {
|
|
69
|
+
if (variant === "compact") {
|
|
70
|
+
return /* @__PURE__ */ jsx(
|
|
71
|
+
SkeletonLoader,
|
|
72
|
+
{
|
|
73
|
+
className: cn(skeletonSizes[size], "w-24", className),
|
|
74
|
+
"data-slot": "single-stat",
|
|
75
|
+
...props
|
|
76
|
+
}
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
if (variant === "inline") {
|
|
80
|
+
return /* @__PURE__ */ jsxs(
|
|
81
|
+
"div",
|
|
82
|
+
{
|
|
83
|
+
className: cn("flex items-baseline gap-2", className),
|
|
84
|
+
"data-slot": "single-stat",
|
|
85
|
+
...props,
|
|
86
|
+
children: [
|
|
87
|
+
/* @__PURE__ */ jsx(SkeletonLoader, { className: cn(skeletonSizes[size], "w-20") }),
|
|
88
|
+
label && /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-4 w-16" })
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
);
|
|
92
|
+
}
|
|
93
|
+
return /* @__PURE__ */ jsxs(
|
|
94
|
+
"div",
|
|
95
|
+
{
|
|
96
|
+
className: cn("space-y-1", className),
|
|
97
|
+
"data-slot": "single-stat",
|
|
98
|
+
...props,
|
|
99
|
+
children: [
|
|
100
|
+
label && /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-4 w-20" }),
|
|
101
|
+
/* @__PURE__ */ jsx(SkeletonLoader, { className: cn(skeletonSizes[size], "w-24") })
|
|
102
|
+
]
|
|
103
|
+
}
|
|
104
|
+
);
|
|
105
|
+
}
|
|
106
|
+
if (variant === "compact") {
|
|
107
|
+
const ariaValue = typeof displayValue === "string" ? displayValue : String(displayValue);
|
|
108
|
+
return /* @__PURE__ */ jsxs(
|
|
109
|
+
"span",
|
|
110
|
+
{
|
|
111
|
+
className: cn(
|
|
112
|
+
"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]",
|
|
113
|
+
sizeClasses[size],
|
|
114
|
+
className
|
|
115
|
+
),
|
|
116
|
+
"aria-label": label ? `${label}: ${prefix ?? ""}${ariaValue}${suffix ?? ""}` : void 0,
|
|
117
|
+
"data-slot": "single-stat",
|
|
118
|
+
role: "text",
|
|
119
|
+
...props,
|
|
120
|
+
children: [
|
|
121
|
+
prefix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: prefix }),
|
|
122
|
+
displayValue,
|
|
123
|
+
suffix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: suffix })
|
|
124
|
+
]
|
|
125
|
+
}
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
if (variant === "inline") {
|
|
129
|
+
return /* @__PURE__ */ jsxs(
|
|
130
|
+
"div",
|
|
131
|
+
{
|
|
132
|
+
"aria-label": label,
|
|
133
|
+
className: cn("flex items-baseline gap-2", className),
|
|
134
|
+
"data-slot": "single-stat",
|
|
135
|
+
role: "group",
|
|
136
|
+
...props,
|
|
137
|
+
children: [
|
|
138
|
+
/* @__PURE__ */ jsxs(
|
|
139
|
+
"span",
|
|
140
|
+
{
|
|
141
|
+
className: cn(
|
|
142
|
+
"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]",
|
|
143
|
+
sizeClasses[size]
|
|
144
|
+
),
|
|
145
|
+
"data-slot": "single-stat-value",
|
|
146
|
+
children: [
|
|
147
|
+
prefix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: prefix }),
|
|
148
|
+
displayValue,
|
|
149
|
+
suffix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: suffix })
|
|
150
|
+
]
|
|
151
|
+
}
|
|
152
|
+
),
|
|
153
|
+
label && /* @__PURE__ */ jsx(
|
|
154
|
+
"span",
|
|
155
|
+
{
|
|
156
|
+
className: "text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]",
|
|
157
|
+
"data-slot": "single-stat-label",
|
|
158
|
+
children: label
|
|
159
|
+
}
|
|
160
|
+
)
|
|
161
|
+
]
|
|
162
|
+
}
|
|
163
|
+
);
|
|
164
|
+
}
|
|
165
|
+
return /* @__PURE__ */ jsxs(
|
|
166
|
+
"div",
|
|
167
|
+
{
|
|
168
|
+
"aria-label": label,
|
|
169
|
+
className: cn("space-y-1", className),
|
|
170
|
+
"data-slot": "single-stat",
|
|
171
|
+
role: "group",
|
|
172
|
+
...props,
|
|
173
|
+
children: [
|
|
174
|
+
label && /* @__PURE__ */ jsx(
|
|
175
|
+
"p",
|
|
176
|
+
{
|
|
177
|
+
className: "text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]",
|
|
178
|
+
"data-slot": "single-stat-label",
|
|
179
|
+
children: label
|
|
180
|
+
}
|
|
181
|
+
),
|
|
182
|
+
/* @__PURE__ */ jsxs(
|
|
183
|
+
"p",
|
|
184
|
+
{
|
|
185
|
+
className: cn(
|
|
186
|
+
"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]",
|
|
187
|
+
sizeClasses[size]
|
|
188
|
+
),
|
|
189
|
+
"data-slot": "single-stat-value",
|
|
190
|
+
children: [
|
|
191
|
+
prefix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: prefix }),
|
|
192
|
+
displayValue,
|
|
193
|
+
suffix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: suffix })
|
|
194
|
+
]
|
|
195
|
+
}
|
|
196
|
+
)
|
|
197
|
+
]
|
|
198
|
+
}
|
|
199
|
+
);
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
export { SingleStat };
|
|
203
|
+
//# sourceMappingURL=chunk-D6TH3EGA.js.map
|
|
204
|
+
//# sourceMappingURL=chunk-D6TH3EGA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/SingleStat/SingleStat.tsx"],"names":[],"mappings":";;;;;AAUA,IAAM,WAAA,GAA8C;AAAA,EAClD,EAAA,EAAI,gDAAA;AAAA,EACJ,EAAA,EAAI,gDAAA;AAAA,EACJ,EAAA,EAAI,gDAAA;AAAA,EACJ,EAAA,EAAI,gDAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAKA,IAAM,aAAA,GAAgD;AAAA,EACpD,EAAA,EAAI,MAAA;AAAA,EACJ,EAAA,EAAI,KAAA;AAAA,EACJ,EAAA,EAAI,KAAA;AAAA,EACJ,EAAA,EAAI,MAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAKA,SAAS,kBAAA,CACP,WAAA,EACA,QAAA,EACA,OAAA,EACQ;AAER,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAI,SAAS,CAAC,CAAA;AACpC,EAAA,MAAM,iBAAA,GAAoB,OAAe,CAAC,CAAA;AAC1C,EAAA,MAAM,YAAA,GAAe,OAAsB,IAAI,CAAA;AAE/C,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA;AAAA,IACF;AAEA,IAAA,YAAA,CAAa,OAAA,GAAU,IAAA;AAEvB,IAAA,MAAM,OAAA,GAAU,CAAC,SAAA,KAAsB;AACrC,MAAA,YAAA,CAAa,OAAA,KAAY,SAAA;AACzB,MAAA,MAAM,WAAW,IAAA,CAAK,GAAA,CAAA,CAAK,YAAY,YAAA,CAAa,OAAA,IAAW,UAAU,CAAC,CAAA;AAG1E,MAAA,MAAM,KAAA,GAAQ,CAAA,GAAA,CAAK,CAAA,GAAI,QAAA,KAAa,CAAA,GAAI,QAAA,CAAA;AACxC,MAAA,QAAA,CAAS,IAAA,CAAK,KAAA,CAAM,KAAA,GAAQ,WAAW,CAAC,CAAA;AAExC,MAAA,IAAI,WAAW,CAAA,EAAG;AAChB,QAAA,iBAAA,CAAkB,OAAA,GAAU,sBAAsB,OAAO,CAAA;AAAA,MAC3D;AAAA,IACF,CAAA;AAEA,IAAA,iBAAA,CAAkB,OAAA,GAAU,sBAAsB,OAAO,CAAA;AAEzD,IAAA,OAAO,MAAM;AACX,MAAA,IAAI,kBAAkB,OAAA,EAAS;AAC7B,QAAA,oBAAA,CAAqB,kBAAkB,OAAO,CAAA;AAAA,MAChD;AAAA,IACF,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,WAAA,EAAa,QAAA,EAAU,OAAO,CAAC,CAAA;AAGnC,EAAA,OAAO,UAAU,KAAA,GAAQ,WAAA;AAC3B;AAwBA,SAAS,UAAA,CAAW;AAAA,EAClB,KAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA,GAAU,SAAA;AAAA,EACV,IAAA,GAAO,IAAA;AAAA,EACP,MAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,iBAAA,GAAoB,GAAA;AAAA,EACpB,OAAA,GAAU,KAAA;AAAA,EACV,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAoB;AAElB,EAAA,MAAM,YAAA,GAAe,OAAO,KAAA,KAAU,QAAA,GAAW,QAAQ,MAAA,CAAO,GAAA;AAChE,EAAA,MAAM,SAAA,GAAY,CAAC,MAAA,CAAO,KAAA,CAAM,YAAY,CAAA;AAC5C,EAAA,MAAM,aAAA,GAAgB,kBAAA;AAAA,IACpB,YAAY,YAAA,GAAe,CAAA;AAAA,IAC3B,iBAAA;AAAA,IACA,QAAA,IAAY;AAAA,GACd;AAGA,EAAA,MAAM,YAAA,GAAe,QAAA,IAAY,SAAA,GAC7B,aAAA,CAAc,cAAA,EAAe,GAC7B,OAAO,KAAA,KAAU,QAAA,GACf,KAAA,CAAM,cAAA,EAAe,GACrB,KAAA;AAGN,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,IAAI,YAAY,SAAA,EAAW;AACzB,MAAA,uBACE,GAAA;AAAA,QAAC,cAAA;AAAA,QAAA;AAAA,UACC,WAAW,EAAA,CAAG,aAAA,CAAc,IAAI,CAAA,EAAG,QAAQ,SAAS,CAAA;AAAA,UACpD,WAAA,EAAU,aAAA;AAAA,UACT,GAAG;AAAA;AAAA,OACN;AAAA,IAEJ;AAEA,IAAA,IAAI,YAAY,QAAA,EAAU;AACxB,MAAA,uBACE,IAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,SAAA,EAAW,EAAA,CAAG,2BAAA,EAA6B,SAAS,CAAA;AAAA,UACpD,WAAA,EAAU,aAAA;AAAA,UACT,GAAG,KAAA;AAAA,UAEJ,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,kBAAe,SAAA,EAAW,EAAA,CAAG,cAAc,IAAI,CAAA,EAAG,MAAM,CAAA,EAAG,CAAA;AAAA,YAC3D,KAAA,oBAAS,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,UAAA,EAAW;AAAA;AAAA;AAAA,OACjD;AAAA,IAEJ;AAEA,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA,CAAG,WAAA,EAAa,SAAS,CAAA;AAAA,QACpC,WAAA,EAAU,aAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,KAAA,oBAAS,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,UAAA,EAAW,CAAA;AAAA,0BAC/C,GAAA,CAAC,kBAAe,SAAA,EAAW,EAAA,CAAG,cAAc,IAAI,CAAA,EAAG,MAAM,CAAA,EAAG;AAAA;AAAA;AAAA,KAC9D;AAAA,EAEJ;AAGA,EAAA,IAAI,YAAY,SAAA,EAAW;AACzB,IAAA,MAAM,YAAY,OAAO,YAAA,KAAiB,QAAA,GAAW,YAAA,GAAe,OAAO,YAAY,CAAA;AACvF,IAAA,uBACE,IAAA;AAAA,MAAC,MAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,wGAAA;AAAA,UACA,YAAY,IAAI,CAAA;AAAA,UAChB;AAAA,SACF;AAAA,QACA,YAAA,EAAY,KAAA,GAAQ,CAAA,EAAG,KAAK,CAAA,EAAA,EAAK,MAAA,IAAU,EAAE,CAAA,EAAG,SAAS,CAAA,EAAG,MAAA,IAAU,EAAE,CAAA,CAAA,GAAK,MAAA;AAAA,QAC7E,WAAA,EAAU,aAAA;AAAA,QACV,IAAA,EAAK,MAAA;AAAA,QACJ,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,MAAA,oBAAU,GAAA,CAAC,MAAA,EAAA,EAAK,aAAA,EAAY,MAAA,EAAQ,QAAA,EAAA,MAAA,EAAO,CAAA;AAAA,UAC3C,YAAA;AAAA,UACA,MAAA,oBAAU,GAAA,CAAC,MAAA,EAAA,EAAK,aAAA,EAAY,QAAQ,QAAA,EAAA,MAAA,EAAO;AAAA;AAAA;AAAA,KAC9C;AAAA,EAEJ;AAGA,EAAA,IAAI,YAAY,QAAA,EAAU;AACxB,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,YAAA,EAAY,KAAA;AAAA,QACZ,SAAA,EAAW,EAAA,CAAG,2BAAA,EAA6B,SAAS,CAAA;AAAA,QACpD,WAAA,EAAU,aAAA;AAAA,QACV,IAAA,EAAK,OAAA;AAAA,QACJ,GAAG,KAAA;AAAA,QAEJ,QAAA,EAAA;AAAA,0BAAA,IAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,wGAAA;AAAA,gBACA,YAAY,IAAI;AAAA,eAClB;AAAA,cACA,WAAA,EAAU,mBAAA;AAAA,cAET,QAAA,EAAA;AAAA,gBAAA,MAAA,oBAAU,GAAA,CAAC,MAAA,EAAA,EAAK,aAAA,EAAY,MAAA,EAAQ,QAAA,EAAA,MAAA,EAAO,CAAA;AAAA,gBAC3C,YAAA;AAAA,gBACA,MAAA,oBAAU,GAAA,CAAC,MAAA,EAAA,EAAK,aAAA,EAAY,QAAQ,QAAA,EAAA,MAAA,EAAO;AAAA;AAAA;AAAA,WAC9C;AAAA,UACC,KAAA,oBACC,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,mGAAA;AAAA,cACV,WAAA,EAAU,mBAAA;AAAA,cAET,QAAA,EAAA;AAAA;AAAA;AACH;AAAA;AAAA,KAEJ;AAAA,EAEJ;AAGA,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,KAAA;AAAA,MACZ,SAAA,EAAW,EAAA,CAAG,WAAA,EAAa,SAAS,CAAA;AAAA,MACpC,WAAA,EAAU,aAAA;AAAA,MACV,IAAA,EAAK,OAAA;AAAA,MACJ,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,KAAA,oBACC,GAAA;AAAA,UAAC,GAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,mGAAA;AAAA,YACV,WAAA,EAAU,mBAAA;AAAA,YAET,QAAA,EAAA;AAAA;AAAA,SACH;AAAA,wBAEF,IAAA;AAAA,UAAC,GAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,wGAAA;AAAA,cACA,YAAY,IAAI;AAAA,aAClB;AAAA,YACA,WAAA,EAAU,mBAAA;AAAA,YAET,QAAA,EAAA;AAAA,cAAA,MAAA,oBAAU,GAAA,CAAC,MAAA,EAAA,EAAK,aAAA,EAAY,MAAA,EAAQ,QAAA,EAAA,MAAA,EAAO,CAAA;AAAA,cAC3C,YAAA;AAAA,cACA,MAAA,oBAAU,GAAA,CAAC,MAAA,EAAA,EAAK,aAAA,EAAY,QAAQ,QAAA,EAAA,MAAA,EAAO;AAAA;AAAA;AAAA;AAC9C;AAAA;AAAA,GACF;AAEJ","file":"chunk-D6TH3EGA.js","sourcesContent":["import type { SingleStatProps, SingleStatSize } from \"./SingleStat.types\"\n\nimport { useEffect, useRef, useState } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { SkeletonLoader } from \"../../primitives/SkeletonLoader\"\n\n/**\n * Size configuration for value typography\n */\nconst sizeClasses: Record<SingleStatSize, string> = {\n lg: \"text-[length:var(--single-stat-value-size-lg)]\",\n md: \"text-[length:var(--single-stat-value-size-md)]\",\n sm: \"text-[length:var(--single-stat-value-size-sm)]\",\n xl: \"text-[length:var(--single-stat-value-size-xl)]\",\n xs: \"text-[length:var(--single-stat-value-size-xs)]\",\n}\n\n/**\n * Skeleton height configuration by size\n */\nconst skeletonSizes: Record<SingleStatSize, string> = {\n lg: \"h-10\",\n md: \"h-8\",\n sm: \"h-7\",\n xl: \"h-14\",\n xs: \"h-6\",\n}\n\n/**\n * Hook for animated count-up effect\n */\nfunction useAnimatedCounter(\n targetValue: number,\n duration: number,\n enabled: boolean\n): number {\n // When not enabled, just return the target value directly\n const [count, setCount] = useState(0)\n const animationFrameRef = useRef<number>(0)\n const startTimeRef = useRef<null | number>(null)\n\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n startTimeRef.current = null\n\n const animate = (timestamp: number) => {\n startTimeRef.current ??= timestamp\n const progress = Math.min((timestamp - startTimeRef.current) / duration, 1)\n\n // Use easeOutQuad for smoother animation\n const eased = 1 - (1 - progress) * (1 - progress)\n setCount(Math.floor(eased * targetValue))\n\n if (progress < 1) {\n animationFrameRef.current = requestAnimationFrame(animate)\n }\n }\n\n animationFrameRef.current = requestAnimationFrame(animate)\n\n return () => {\n if (animationFrameRef.current) {\n cancelAnimationFrame(animationFrameRef.current)\n }\n }\n }, [targetValue, duration, enabled])\n\n // Return target value when not animating, otherwise return animated count\n return enabled ? count : targetValue\n}\n\n/**\n * SingleStat - Minimalist single metric display\n *\n * A compact component for displaying a single highlighted metric.\n * Simpler than KPICard, focused only on value and label.\n * Ideal for inline indicators or space-constrained layouts.\n *\n * @example\n * ```tsx\n * <SingleStat value={1234} label=\"Total Users\" />\n * ```\n *\n * @example\n * ```tsx\n * <SingleStat\n * value={45231}\n * prefix=\"$\"\n * label=\"Revenue\"\n * size=\"lg\"\n * />\n * ```\n */\nfunction SingleStat({\n value,\n label,\n variant = \"default\",\n size = \"md\",\n prefix,\n suffix,\n animated = false,\n animationDuration = 1000,\n loading = false,\n className,\n ...props\n}: SingleStatProps) {\n // Use animated counter for numeric values\n const numericValue = typeof value === \"number\" ? value : Number.NaN\n const isNumeric = !Number.isNaN(numericValue)\n const animatedValue = useAnimatedCounter(\n isNumeric ? numericValue : 0,\n animationDuration,\n animated && isNumeric\n )\n\n // Format the display value\n const displayValue = animated && isNumeric\n ? animatedValue.toLocaleString()\n : typeof value === \"number\"\n ? value.toLocaleString()\n : value\n\n // Loading state\n if (loading) {\n if (variant === \"compact\") {\n return (\n <SkeletonLoader\n className={cn(skeletonSizes[size], \"w-24\", className)}\n data-slot=\"single-stat\"\n {...props}\n />\n )\n }\n\n if (variant === \"inline\") {\n return (\n <div\n className={cn(\"flex items-baseline gap-2\", className)}\n data-slot=\"single-stat\"\n {...props}\n >\n <SkeletonLoader className={cn(skeletonSizes[size], \"w-20\")} />\n {label && <SkeletonLoader className=\"h-4 w-16\" />}\n </div>\n )\n }\n\n return (\n <div\n className={cn(\"space-y-1\", className)}\n data-slot=\"single-stat\"\n {...props}\n >\n {label && <SkeletonLoader className=\"h-4 w-20\" />}\n <SkeletonLoader className={cn(skeletonSizes[size], \"w-24\")} />\n </div>\n )\n }\n\n // Compact variant: value only\n if (variant === \"compact\") {\n const ariaValue = typeof displayValue === \"string\" ? displayValue : String(displayValue)\n return (\n <span\n className={cn(\n \"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]\",\n sizeClasses[size],\n className\n )}\n aria-label={label ? `${label}: ${prefix ?? \"\"}${ariaValue}${suffix ?? \"\"}` : undefined}\n data-slot=\"single-stat\"\n role=\"text\"\n {...props}\n >\n {prefix && <span aria-hidden=\"true\">{prefix}</span>}\n {displayValue}\n {suffix && <span aria-hidden=\"true\">{suffix}</span>}\n </span>\n )\n }\n\n // Inline variant: label and value side by side\n if (variant === \"inline\") {\n return (\n <div\n aria-label={label}\n className={cn(\"flex items-baseline gap-2\", className)}\n data-slot=\"single-stat\"\n role=\"group\"\n {...props}\n >\n <span\n className={cn(\n \"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]\",\n sizeClasses[size]\n )}\n data-slot=\"single-stat-value\"\n >\n {prefix && <span aria-hidden=\"true\">{prefix}</span>}\n {displayValue}\n {suffix && <span aria-hidden=\"true\">{suffix}</span>}\n </span>\n {label && (\n <span\n className=\"text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]\"\n data-slot=\"single-stat-label\"\n >\n {label}\n </span>\n )}\n </div>\n )\n }\n\n // Default variant: label above, value below\n return (\n <div\n aria-label={label}\n className={cn(\"space-y-1\", className)}\n data-slot=\"single-stat\"\n role=\"group\"\n {...props}\n >\n {label && (\n <p\n className=\"text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]\"\n data-slot=\"single-stat-label\"\n >\n {label}\n </p>\n )}\n <p\n className={cn(\n \"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]\",\n sizeClasses[size]\n )}\n data-slot=\"single-stat-value\"\n >\n {prefix && <span aria-hidden=\"true\">{prefix}</span>}\n {displayValue}\n {suffix && <span aria-hidden=\"true\">{suffix}</span>}\n </p>\n </div>\n )\n}\n\nexport { SingleStat }\n"]}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { Badge } from './chunk-TNROOKX3.js';
|
|
2
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
3
|
+
import { useRef, useState, useId, useCallback } from 'react';
|
|
4
|
+
import { cva } from 'class-variance-authority';
|
|
5
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
6
|
+
|
|
7
|
+
var tagsInputVariants = cva(
|
|
8
|
+
[
|
|
9
|
+
"flex flex-wrap items-center gap-1.5 w-full min-w-0 rounded-md border bg-transparent transition-[color,box-shadow] outline-none",
|
|
10
|
+
"dark:bg-input/30",
|
|
11
|
+
"focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",
|
|
12
|
+
"aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50",
|
|
13
|
+
"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive"
|
|
14
|
+
],
|
|
15
|
+
{
|
|
16
|
+
variants: {
|
|
17
|
+
size: {
|
|
18
|
+
sm: "min-h-8 px-2 py-1 text-sm",
|
|
19
|
+
md: "min-h-9 px-3 py-1.5 text-base md:text-sm",
|
|
20
|
+
lg: "min-h-10 px-3.5 py-2 text-base"
|
|
21
|
+
},
|
|
22
|
+
variant: {
|
|
23
|
+
default: "border-input shadow-xs",
|
|
24
|
+
filled: "border-transparent bg-muted",
|
|
25
|
+
flushed: "rounded-none border-x-0 border-t-0 border-b-input px-0"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
defaultVariants: {
|
|
29
|
+
size: "md",
|
|
30
|
+
variant: "default"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
var tagsInputInputVariants = cva(
|
|
35
|
+
[
|
|
36
|
+
"flex-1 min-w-24 bg-transparent outline-none",
|
|
37
|
+
"placeholder:text-muted-foreground",
|
|
38
|
+
"disabled:cursor-not-allowed"
|
|
39
|
+
],
|
|
40
|
+
{
|
|
41
|
+
variants: {
|
|
42
|
+
size: {
|
|
43
|
+
sm: "text-sm h-5",
|
|
44
|
+
md: "text-base md:text-sm h-5",
|
|
45
|
+
lg: "text-base h-6"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
defaultVariants: {
|
|
49
|
+
size: "md"
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
);
|
|
53
|
+
function TagsInput({
|
|
54
|
+
value: controlledValue,
|
|
55
|
+
defaultValue = [],
|
|
56
|
+
onChange,
|
|
57
|
+
onTagAdd,
|
|
58
|
+
onTagRemove,
|
|
59
|
+
placeholder = "Add tag...",
|
|
60
|
+
maxTags,
|
|
61
|
+
allowDuplicates = false,
|
|
62
|
+
disabled,
|
|
63
|
+
size = "md",
|
|
64
|
+
variant,
|
|
65
|
+
invalid,
|
|
66
|
+
delimiters = [","],
|
|
67
|
+
className,
|
|
68
|
+
...props
|
|
69
|
+
}) {
|
|
70
|
+
const inputRef = useRef(null);
|
|
71
|
+
const [inputValue, setInputValue] = useState("");
|
|
72
|
+
const [internalTags, setInternalTags] = useState(defaultValue);
|
|
73
|
+
const id = useId();
|
|
74
|
+
const isControlled = controlledValue !== void 0;
|
|
75
|
+
const tags = isControlled ? controlledValue : internalTags;
|
|
76
|
+
const updateTags = useCallback(
|
|
77
|
+
(newTags) => {
|
|
78
|
+
if (!isControlled) {
|
|
79
|
+
setInternalTags(newTags);
|
|
80
|
+
}
|
|
81
|
+
onChange?.(newTags);
|
|
82
|
+
},
|
|
83
|
+
[isControlled, onChange]
|
|
84
|
+
);
|
|
85
|
+
const addTag = useCallback(
|
|
86
|
+
(tag) => {
|
|
87
|
+
const trimmedTag = tag.trim();
|
|
88
|
+
if (!trimmedTag) return;
|
|
89
|
+
if (!allowDuplicates && tags.includes(trimmedTag)) {
|
|
90
|
+
setInputValue("");
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
if (maxTags && tags.length >= maxTags) {
|
|
94
|
+
setInputValue("");
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const newTags = [...tags, trimmedTag];
|
|
98
|
+
updateTags(newTags);
|
|
99
|
+
onTagAdd?.(trimmedTag);
|
|
100
|
+
setInputValue("");
|
|
101
|
+
},
|
|
102
|
+
[tags, allowDuplicates, maxTags, updateTags, onTagAdd]
|
|
103
|
+
);
|
|
104
|
+
const removeTag = useCallback(
|
|
105
|
+
(tagToRemove) => {
|
|
106
|
+
const newTags = tags.filter((tag) => tag !== tagToRemove);
|
|
107
|
+
updateTags(newTags);
|
|
108
|
+
onTagRemove?.(tagToRemove);
|
|
109
|
+
},
|
|
110
|
+
[tags, updateTags, onTagRemove]
|
|
111
|
+
);
|
|
112
|
+
const removeLastTag = useCallback(() => {
|
|
113
|
+
const lastTag = tags[tags.length - 1];
|
|
114
|
+
if (lastTag) {
|
|
115
|
+
removeTag(lastTag);
|
|
116
|
+
}
|
|
117
|
+
}, [tags, removeTag]);
|
|
118
|
+
const handleKeyDown = useCallback(
|
|
119
|
+
(e) => {
|
|
120
|
+
if (e.key === "Enter" || delimiters.includes(e.key)) {
|
|
121
|
+
e.preventDefault();
|
|
122
|
+
addTag(inputValue);
|
|
123
|
+
} else if (e.key === "Backspace" && inputValue === "" && tags.length > 0) {
|
|
124
|
+
removeLastTag();
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
[inputValue, tags.length, addTag, removeLastTag, delimiters]
|
|
128
|
+
);
|
|
129
|
+
const handleInputChange = useCallback(
|
|
130
|
+
(e) => {
|
|
131
|
+
const value = e.target.value;
|
|
132
|
+
for (const delimiter of delimiters) {
|
|
133
|
+
if (value.includes(delimiter)) {
|
|
134
|
+
const parts = value.split(delimiter);
|
|
135
|
+
parts.forEach((part, index) => {
|
|
136
|
+
if (index < parts.length - 1) {
|
|
137
|
+
addTag(part);
|
|
138
|
+
} else {
|
|
139
|
+
setInputValue(part);
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
setInputValue(value);
|
|
146
|
+
},
|
|
147
|
+
[delimiters, addTag]
|
|
148
|
+
);
|
|
149
|
+
const handleContainerClick = useCallback(() => {
|
|
150
|
+
inputRef.current?.focus();
|
|
151
|
+
}, []);
|
|
152
|
+
const tagSize = size === "lg" ? "default" : "sm";
|
|
153
|
+
return /* @__PURE__ */ jsxs(
|
|
154
|
+
"div",
|
|
155
|
+
{
|
|
156
|
+
"aria-disabled": disabled ?? void 0,
|
|
157
|
+
"aria-invalid": invalid ?? void 0,
|
|
158
|
+
className: cn(tagsInputVariants({ size, variant }), className),
|
|
159
|
+
"data-slot": "tags-input",
|
|
160
|
+
onClick: handleContainerClick,
|
|
161
|
+
...props,
|
|
162
|
+
children: [
|
|
163
|
+
tags.map((tag, index) => /* @__PURE__ */ jsx(
|
|
164
|
+
Badge,
|
|
165
|
+
{
|
|
166
|
+
color: "muted",
|
|
167
|
+
size: tagSize,
|
|
168
|
+
type: "pill-color",
|
|
169
|
+
onDismiss: disabled ? void 0 : () => {
|
|
170
|
+
removeTag(tag);
|
|
171
|
+
},
|
|
172
|
+
children: tag
|
|
173
|
+
},
|
|
174
|
+
`${tag}-${String(index)}`
|
|
175
|
+
)),
|
|
176
|
+
/* @__PURE__ */ jsx(
|
|
177
|
+
"input",
|
|
178
|
+
{
|
|
179
|
+
ref: inputRef,
|
|
180
|
+
"aria-label": "Add tag",
|
|
181
|
+
className: tagsInputInputVariants({ size }),
|
|
182
|
+
"data-slot": "tags-input-field",
|
|
183
|
+
disabled,
|
|
184
|
+
id,
|
|
185
|
+
placeholder: tags.length === 0 ? placeholder : void 0,
|
|
186
|
+
type: "text",
|
|
187
|
+
value: inputValue,
|
|
188
|
+
onChange: handleInputChange,
|
|
189
|
+
onKeyDown: handleKeyDown
|
|
190
|
+
}
|
|
191
|
+
)
|
|
192
|
+
]
|
|
193
|
+
}
|
|
194
|
+
);
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
export { TagsInput, tagsInputInputVariants, tagsInputVariants };
|
|
198
|
+
//# sourceMappingURL=chunk-DDM2I5C6.js.map
|
|
199
|
+
//# sourceMappingURL=chunk-DDM2I5C6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/forms/TagsInput/TagsInput.variants.ts","../src/components/forms/TagsInput/TagsInput.tsx"],"names":[],"mappings":";;;;;;AAKO,IAAM,iBAAA,GAAoB,GAAA;AAAA,EAC/B;AAAA,IACE,gIAAA;AAAA,IACA,kBAAA;AAAA,IACA,4EAAA;AAAA,IACA,6FAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,2BAAA;AAAA,QACJ,EAAA,EAAI,0CAAA;AAAA,QACJ,EAAA,EAAI;AAAA,OACN;AAAA,MACA,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,wBAAA;AAAA,QACT,MAAA,EAAQ,6BAAA;AAAA,QACR,OAAA,EAAS;AAAA;AACX,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,IAAA;AAAA,MACN,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC;AAAA,IACE,6CAAA;AAAA,IACA,mCAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,aAAA;AAAA,QACJ,EAAA,EAAI,0BAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;ACvBA,SAAS,SAAA,CAAU;AAAA,EACjB,KAAA,EAAO,eAAA;AAAA,EACP,eAAe,EAAC;AAAA,EAChB,QAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,WAAA,GAAc,YAAA;AAAA,EACd,OAAA;AAAA,EACA,eAAA,GAAkB,KAAA;AAAA,EAClB,QAAA;AAAA,EACA,IAAA,GAAO,IAAA;AAAA,EACP,OAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA,GAAa,CAAC,GAAG,CAAA;AAAA,EACjB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAmB;AACjB,EAAA,MAAM,QAAA,GAAW,OAAyB,IAAI,CAAA;AAC9C,EAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,SAAS,EAAE,CAAA;AAC/C,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAmB,YAAY,CAAA;AACvE,EAAA,MAAM,KAAK,KAAA,EAAM;AAGjB,EAAA,MAAM,eAAe,eAAA,KAAoB,MAAA;AACzC,EAAA,MAAM,IAAA,GAAO,eAAe,eAAA,GAAkB,YAAA;AAE9C,EAAA,MAAM,UAAA,GAAa,WAAA;AAAA,IACjB,CAAC,OAAA,KAAsB;AACrB,MAAA,IAAI,CAAC,YAAA,EAAc;AACjB,QAAA,eAAA,CAAgB,OAAO,CAAA;AAAA,MACzB;AACA,MAAA,QAAA,GAAW,OAAO,CAAA;AAAA,IACpB,CAAA;AAAA,IACA,CAAC,cAAc,QAAQ;AAAA,GACzB;AAEA,EAAA,MAAM,MAAA,GAAS,WAAA;AAAA,IACb,CAAC,GAAA,KAAgB;AACf,MAAA,MAAM,UAAA,GAAa,IAAI,IAAA,EAAK;AAC5B,MAAA,IAAI,CAAC,UAAA,EAAY;AAGjB,MAAA,IAAI,CAAC,eAAA,IAAmB,IAAA,CAAK,QAAA,CAAS,UAAU,CAAA,EAAG;AACjD,QAAA,aAAA,CAAc,EAAE,CAAA;AAChB,QAAA;AAAA,MACF;AAGA,MAAA,IAAI,OAAA,IAAW,IAAA,CAAK,MAAA,IAAU,OAAA,EAAS;AACrC,QAAA,aAAA,CAAc,EAAE,CAAA;AAChB,QAAA;AAAA,MACF;AAEA,MAAA,MAAM,OAAA,GAAU,CAAC,GAAG,IAAA,EAAM,UAAU,CAAA;AACpC,MAAA,UAAA,CAAW,OAAO,CAAA;AAClB,MAAA,QAAA,GAAW,UAAU,CAAA;AACrB,MAAA,aAAA,CAAc,EAAE,CAAA;AAAA,IAClB,CAAA;AAAA,IACA,CAAC,IAAA,EAAM,eAAA,EAAiB,OAAA,EAAS,YAAY,QAAQ;AAAA,GACvD;AAEA,EAAA,MAAM,SAAA,GAAY,WAAA;AAAA,IAChB,CAAC,WAAA,KAAwB;AACvB,MAAA,MAAM,UAAU,IAAA,CAAK,MAAA,CAAO,CAAC,GAAA,KAAQ,QAAQ,WAAW,CAAA;AACxD,MAAA,UAAA,CAAW,OAAO,CAAA;AAClB,MAAA,WAAA,GAAc,WAAW,CAAA;AAAA,IAC3B,CAAA;AAAA,IACA,CAAC,IAAA,EAAM,UAAA,EAAY,WAAW;AAAA,GAChC;AAEA,EAAA,MAAM,aAAA,GAAgB,YAAY,MAAM;AACtC,IAAA,MAAM,OAAA,GAAU,IAAA,CAAK,IAAA,CAAK,MAAA,GAAS,CAAC,CAAA;AACpC,IAAA,IAAI,OAAA,EAAS;AACX,MAAA,SAAA,CAAU,OAAO,CAAA;AAAA,IACnB;AAAA,EACF,CAAA,EAAG,CAAC,IAAA,EAAM,SAAS,CAAC,CAAA;AAEpB,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,CAAA,KAA6C;AAC5C,MAAA,IAAI,EAAE,GAAA,KAAQ,OAAA,IAAW,WAAW,QAAA,CAAS,CAAA,CAAE,GAAG,CAAA,EAAG;AACnD,QAAA,CAAA,CAAE,cAAA,EAAe;AACjB,QAAA,MAAA,CAAO,UAAU,CAAA;AAAA,MACnB,CAAA,MAAA,IAAW,EAAE,GAAA,KAAQ,WAAA,IAAe,eAAe,EAAA,IAAM,IAAA,CAAK,SAAS,CAAA,EAAG;AACxE,QAAA,aAAA,EAAc;AAAA,MAChB;AAAA,IACF,CAAA;AAAA,IACA,CAAC,UAAA,EAAY,IAAA,CAAK,MAAA,EAAQ,MAAA,EAAQ,eAAe,UAAU;AAAA,GAC7D;AAEA,EAAA,MAAM,iBAAA,GAAoB,WAAA;AAAA,IACxB,CAAC,CAAA,KAA2C;AAC1C,MAAA,MAAM,KAAA,GAAQ,EAAE,MAAA,CAAO,KAAA;AAGvB,MAAA,KAAA,MAAW,aAAa,UAAA,EAAY;AAClC,QAAA,IAAI,KAAA,CAAM,QAAA,CAAS,SAAS,CAAA,EAAG;AAC7B,UAAA,MAAM,KAAA,GAAQ,KAAA,CAAM,KAAA,CAAM,SAAS,CAAA;AACnC,UAAA,KAAA,CAAM,OAAA,CAAQ,CAAC,IAAA,EAAM,KAAA,KAAU;AAC7B,YAAA,IAAI,KAAA,GAAQ,KAAA,CAAM,MAAA,GAAS,CAAA,EAAG;AAC5B,cAAA,MAAA,CAAO,IAAI,CAAA;AAAA,YACb,CAAA,MAAO;AACL,cAAA,aAAA,CAAc,IAAI,CAAA;AAAA,YACpB;AAAA,UACF,CAAC,CAAA;AACD,UAAA;AAAA,QACF;AAAA,MACF;AAEA,MAAA,aAAA,CAAc,KAAK,CAAA;AAAA,IACrB,CAAA;AAAA,IACA,CAAC,YAAY,MAAM;AAAA,GACrB;AAEA,EAAA,MAAM,oBAAA,GAAuB,YAAY,MAAM;AAC7C,IAAA,QAAA,CAAS,SAAS,KAAA,EAAM;AAAA,EAC1B,CAAA,EAAG,EAAE,CAAA;AAGL,EAAA,MAAM,OAAA,GAAU,IAAA,KAAS,IAAA,GAAO,SAAA,GAAY,IAAA;AAE5C,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,iBAAe,QAAA,IAAY,MAAA;AAAA,MAC3B,gBAAc,OAAA,IAAW,MAAA;AAAA,MACzB,SAAA,EAAW,GAAG,iBAAA,CAAkB,EAAE,MAAM,OAAA,EAAS,GAAG,SAAS,CAAA;AAAA,MAC7D,WAAA,EAAU,YAAA;AAAA,MACV,OAAA,EAAS,oBAAA;AAAA,MACR,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,IAAA,CAAK,GAAA,CAAI,CAAC,GAAA,EAAK,KAAA,qBACd,GAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YAEC,KAAA,EAAM,OAAA;AAAA,YACN,IAAA,EAAM,OAAA;AAAA,YACN,IAAA,EAAK,YAAA;AAAA,YACL,SAAA,EAAW,QAAA,GAAW,MAAA,GAAY,MAAM;AAAE,cAAA,SAAA,CAAU,GAAG,CAAA;AAAA,YAAG,CAAA;AAAA,YAEzD,QAAA,EAAA;AAAA,WAAA;AAAA,UANI,CAAA,EAAG,GAAG,CAAA,CAAA,EAAI,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,SAQ/B,CAAA;AAAA,wBACD,GAAA;AAAA,UAAC,OAAA;AAAA,UAAA;AAAA,YACC,GAAA,EAAK,QAAA;AAAA,YACL,YAAA,EAAW,SAAA;AAAA,YACX,SAAA,EAAW,sBAAA,CAAuB,EAAE,IAAA,EAAM,CAAA;AAAA,YAC1C,WAAA,EAAU,kBAAA;AAAA,YACV,QAAA;AAAA,YACA,EAAA;AAAA,YACA,WAAA,EAAa,IAAA,CAAK,MAAA,KAAW,CAAA,GAAI,WAAA,GAAc,MAAA;AAAA,YAC/C,IAAA,EAAK,MAAA;AAAA,YACL,KAAA,EAAO,UAAA;AAAA,YACP,QAAA,EAAU,iBAAA;AAAA,YACV,SAAA,EAAW;AAAA;AAAA;AACb;AAAA;AAAA,GACF;AAEJ","file":"chunk-DDM2I5C6.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * TagsInput container variant styles using CVA\n */\nexport const tagsInputVariants = cva(\n [\n \"flex flex-wrap items-center gap-1.5 w-full min-w-0 rounded-md border bg-transparent transition-[color,box-shadow] outline-none\",\n \"dark:bg-input/30\",\n \"focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]\",\n \"aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50\",\n \"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n ],\n {\n variants: {\n size: {\n sm: \"min-h-8 px-2 py-1 text-sm\",\n md: \"min-h-9 px-3 py-1.5 text-base md:text-sm\",\n lg: \"min-h-10 px-3.5 py-2 text-base\",\n },\n variant: {\n default: \"border-input shadow-xs\",\n filled: \"border-transparent bg-muted\",\n flushed: \"rounded-none border-x-0 border-t-0 border-b-input px-0\",\n },\n },\n defaultVariants: {\n size: \"md\",\n variant: \"default\",\n },\n }\n)\n\n/**\n * TagsInput inner input variant styles\n */\nexport const tagsInputInputVariants = cva(\n [\n \"flex-1 min-w-24 bg-transparent outline-none\",\n \"placeholder:text-muted-foreground\",\n \"disabled:cursor-not-allowed\",\n ],\n {\n variants: {\n size: {\n sm: \"text-sm h-5\",\n md: \"text-base md:text-sm h-5\",\n lg: \"text-base h-6\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport type TagsInputVariantProps = VariantProps<typeof tagsInputVariants>\nexport type TagsInputInputVariantProps = VariantProps<typeof tagsInputInputVariants>\n","\"use client\"\n\nimport type { TagsInputProps } from \"./TagsInput.types\"\n\nimport * as React from \"react\"\nimport { useCallback, useId, useRef, useState } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Badge } from \"../../primitives/Badge\"\nimport { tagsInputInputVariants, tagsInputVariants } from \"./TagsInput.variants\"\n\n/**\n * TagsInput - A multi-tag input component for entering and managing tags\n *\n * @example\n * ```tsx\n * // Uncontrolled\n * <TagsInput\n * defaultValue={[\"react\", \"typescript\"]}\n * placeholder=\"Add tags...\"\n * />\n *\n * // Controlled\n * const [tags, setTags] = useState([\"hello\"])\n * <TagsInput\n * value={tags}\n * onChange={setTags}\n * maxTags={5}\n * />\n * ```\n */\nfunction TagsInput({\n value: controlledValue,\n defaultValue = [],\n onChange,\n onTagAdd,\n onTagRemove,\n placeholder = \"Add tag...\",\n maxTags,\n allowDuplicates = false,\n disabled,\n size = \"md\",\n variant,\n invalid,\n delimiters = [\",\"],\n className,\n ...props\n}: TagsInputProps) {\n const inputRef = useRef<HTMLInputElement>(null)\n const [inputValue, setInputValue] = useState(\"\")\n const [internalTags, setInternalTags] = useState<string[]>(defaultValue)\n const id = useId()\n\n // Determine if controlled or uncontrolled\n const isControlled = controlledValue !== undefined\n const tags = isControlled ? controlledValue : internalTags\n\n const updateTags = useCallback(\n (newTags: string[]) => {\n if (!isControlled) {\n setInternalTags(newTags)\n }\n onChange?.(newTags)\n },\n [isControlled, onChange]\n )\n\n const addTag = useCallback(\n (tag: string) => {\n const trimmedTag = tag.trim()\n if (!trimmedTag) return\n\n // Check for duplicates\n if (!allowDuplicates && tags.includes(trimmedTag)) {\n setInputValue(\"\")\n return\n }\n\n // Check max tags\n if (maxTags && tags.length >= maxTags) {\n setInputValue(\"\")\n return\n }\n\n const newTags = [...tags, trimmedTag]\n updateTags(newTags)\n onTagAdd?.(trimmedTag)\n setInputValue(\"\")\n },\n [tags, allowDuplicates, maxTags, updateTags, onTagAdd]\n )\n\n const removeTag = useCallback(\n (tagToRemove: string) => {\n const newTags = tags.filter((tag) => tag !== tagToRemove)\n updateTags(newTags)\n onTagRemove?.(tagToRemove)\n },\n [tags, updateTags, onTagRemove]\n )\n\n const removeLastTag = useCallback(() => {\n const lastTag = tags[tags.length - 1]\n if (lastTag) {\n removeTag(lastTag)\n }\n }, [tags, removeTag])\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"Enter\" || delimiters.includes(e.key)) {\n e.preventDefault()\n addTag(inputValue)\n } else if (e.key === \"Backspace\" && inputValue === \"\" && tags.length > 0) {\n removeLastTag()\n }\n },\n [inputValue, tags.length, addTag, removeLastTag, delimiters]\n )\n\n const handleInputChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value\n\n // Check if any delimiter is in the pasted/typed value\n for (const delimiter of delimiters) {\n if (value.includes(delimiter)) {\n const parts = value.split(delimiter)\n parts.forEach((part, index) => {\n if (index < parts.length - 1) {\n addTag(part)\n } else {\n setInputValue(part)\n }\n })\n return\n }\n }\n\n setInputValue(value)\n },\n [delimiters, addTag]\n )\n\n const handleContainerClick = useCallback(() => {\n inputRef.current?.focus()\n }, [])\n\n // Map size to Tag size\n const tagSize = size === \"lg\" ? \"default\" : \"sm\"\n\n return (\n <div\n aria-disabled={disabled ?? undefined}\n aria-invalid={invalid ?? undefined}\n className={cn(tagsInputVariants({ size, variant }), className)}\n data-slot=\"tags-input\"\n onClick={handleContainerClick}\n {...props}\n >\n {tags.map((tag, index) => (\n <Badge\n key={`${tag}-${String(index)}`}\n color=\"muted\"\n size={tagSize}\n type=\"pill-color\"\n onDismiss={disabled ? undefined : () => { removeTag(tag); }}\n >\n {tag}\n </Badge>\n ))}\n <input\n ref={inputRef}\n aria-label=\"Add tag\"\n className={tagsInputInputVariants({ size })}\n data-slot=\"tags-input-field\"\n disabled={disabled}\n id={id}\n placeholder={tags.length === 0 ? placeholder : undefined}\n type=\"text\"\n value={inputValue}\n onChange={handleInputChange}\n onKeyDown={handleKeyDown}\n />\n </div>\n )\n}\n\nexport { TagsInput }\n"]}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { LineChart } from './chunk-XV6NXXXP.js';
|
|
2
|
+
import { SkeletonLoader } from './chunk-QHKOBGLW.js';
|
|
3
|
+
import { Badge } from './chunk-TNROOKX3.js';
|
|
4
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import { cva } from 'class-variance-authority';
|
|
7
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
8
|
+
|
|
9
|
+
var chartCardVariants = cva(
|
|
10
|
+
"transition",
|
|
11
|
+
{
|
|
12
|
+
variants: {
|
|
13
|
+
variant: {
|
|
14
|
+
default: "",
|
|
15
|
+
outlined: "border border-border rounded-lg p-4",
|
|
16
|
+
elevated: "bg-card rounded-lg p-4 shadow-sm"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
defaultVariants: {
|
|
20
|
+
variant: "default"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
var chartCardHeaderVariants = cva(
|
|
25
|
+
"flex items-center justify-between gap-x-2"
|
|
26
|
+
);
|
|
27
|
+
var chartCardTitleVariants = cva(
|
|
28
|
+
"font-bold text-foreground sm:text-sm"
|
|
29
|
+
);
|
|
30
|
+
var chartCardValueContainerVariants = cva(
|
|
31
|
+
"mt-2 flex items-baseline justify-between"
|
|
32
|
+
);
|
|
33
|
+
var chartCardValueVariants = cva(
|
|
34
|
+
"text-xl text-foreground"
|
|
35
|
+
);
|
|
36
|
+
var chartCardPreviousValueVariants = cva(
|
|
37
|
+
"text-sm text-muted-foreground"
|
|
38
|
+
);
|
|
39
|
+
var chartCardChartVariants = cva(
|
|
40
|
+
"mt-6"
|
|
41
|
+
);
|
|
42
|
+
var defaultFormatter = (value) => String(value);
|
|
43
|
+
function getBadgeColor(value) {
|
|
44
|
+
if (value > 0) {
|
|
45
|
+
return "success";
|
|
46
|
+
} else if (value < 0) {
|
|
47
|
+
if (value < -50) {
|
|
48
|
+
return "warning";
|
|
49
|
+
}
|
|
50
|
+
return "destructive";
|
|
51
|
+
}
|
|
52
|
+
return "muted";
|
|
53
|
+
}
|
|
54
|
+
function formatPercentage(value) {
|
|
55
|
+
const sign = value > 0 ? "+" : "";
|
|
56
|
+
return `${sign}${(value * 100).toFixed(1)}%`;
|
|
57
|
+
}
|
|
58
|
+
function ChartCard({
|
|
59
|
+
title,
|
|
60
|
+
data,
|
|
61
|
+
config,
|
|
62
|
+
valueFormatter = defaultFormatter,
|
|
63
|
+
comparisonPeriod = "no-comparison",
|
|
64
|
+
isThumbnail = false,
|
|
65
|
+
loading = false,
|
|
66
|
+
badge,
|
|
67
|
+
chartHeight = "h-32",
|
|
68
|
+
showTooltip = true,
|
|
69
|
+
xAxisKey = "formattedDate",
|
|
70
|
+
emptyMessage,
|
|
71
|
+
variant,
|
|
72
|
+
className,
|
|
73
|
+
...props
|
|
74
|
+
}) {
|
|
75
|
+
const isEmpty = !loading && data.length === 0;
|
|
76
|
+
const totalValue = React.useMemo(() => {
|
|
77
|
+
return data.reduce((acc, item) => acc + (item.value ?? 0), 0);
|
|
78
|
+
}, [data]);
|
|
79
|
+
const totalPreviousValue = React.useMemo(() => {
|
|
80
|
+
return data.reduce((acc, item) => acc + (item.previousValue ?? 0), 0);
|
|
81
|
+
}, [data]);
|
|
82
|
+
const evolution = React.useMemo(() => {
|
|
83
|
+
if (comparisonPeriod === "no-comparison" || totalPreviousValue === 0) {
|
|
84
|
+
return 0;
|
|
85
|
+
}
|
|
86
|
+
return (totalValue - totalPreviousValue) / totalPreviousValue;
|
|
87
|
+
}, [comparisonPeriod, totalPreviousValue, totalValue]);
|
|
88
|
+
const series = React.useMemo(() => {
|
|
89
|
+
return comparisonPeriod === "no-comparison" ? ["value"] : ["value", "previousValue"];
|
|
90
|
+
}, [comparisonPeriod]);
|
|
91
|
+
const showComparison = comparisonPeriod !== "no-comparison";
|
|
92
|
+
if (isEmpty) {
|
|
93
|
+
return /* @__PURE__ */ jsxs(
|
|
94
|
+
"article",
|
|
95
|
+
{
|
|
96
|
+
"aria-label": `${title}: empty`,
|
|
97
|
+
className: cn(chartCardVariants({ variant }), className),
|
|
98
|
+
"data-empty": "true",
|
|
99
|
+
"data-slot": "chart-card",
|
|
100
|
+
...props,
|
|
101
|
+
children: [
|
|
102
|
+
/* @__PURE__ */ jsx("div", { className: cn(chartCardHeaderVariants()), children: /* @__PURE__ */ jsx("h3", { className: cn(chartCardTitleVariants()), children: title }) }),
|
|
103
|
+
/* @__PURE__ */ jsx(
|
|
104
|
+
"div",
|
|
105
|
+
{
|
|
106
|
+
className: cn(
|
|
107
|
+
chartCardChartVariants(),
|
|
108
|
+
chartHeight,
|
|
109
|
+
"flex items-center justify-center text-sm text-muted-foreground"
|
|
110
|
+
),
|
|
111
|
+
"data-slot": "chart-card-empty",
|
|
112
|
+
children: emptyMessage ?? "No data available"
|
|
113
|
+
}
|
|
114
|
+
)
|
|
115
|
+
]
|
|
116
|
+
}
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
if (loading) {
|
|
120
|
+
return /* @__PURE__ */ jsxs(
|
|
121
|
+
"article",
|
|
122
|
+
{
|
|
123
|
+
"aria-busy": "true",
|
|
124
|
+
className: cn(chartCardVariants({ variant }), className),
|
|
125
|
+
"data-slot": "chart-card",
|
|
126
|
+
...props,
|
|
127
|
+
children: [
|
|
128
|
+
/* @__PURE__ */ jsxs("div", { className: cn(chartCardHeaderVariants()), children: [
|
|
129
|
+
/* @__PURE__ */ jsx(SkeletonLoader, { className: "h-4 w-24" }),
|
|
130
|
+
/* @__PURE__ */ jsx(SkeletonLoader, { className: "h-5 w-12" })
|
|
131
|
+
] }),
|
|
132
|
+
/* @__PURE__ */ jsx("div", { className: cn(chartCardValueContainerVariants()), children: /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-7 w-32" }) }),
|
|
133
|
+
/* @__PURE__ */ jsx("div", { className: cn(chartCardChartVariants(), chartHeight), children: /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-full w-full" }) })
|
|
134
|
+
]
|
|
135
|
+
}
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
return /* @__PURE__ */ jsxs(
|
|
139
|
+
"article",
|
|
140
|
+
{
|
|
141
|
+
"aria-label": `${title}: ${valueFormatter(totalValue)}`,
|
|
142
|
+
className: cn(chartCardVariants({ variant }), className),
|
|
143
|
+
"data-slot": "chart-card",
|
|
144
|
+
...props,
|
|
145
|
+
children: [
|
|
146
|
+
/* @__PURE__ */ jsx("div", { className: cn(chartCardHeaderVariants()), children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-x-2", children: [
|
|
147
|
+
/* @__PURE__ */ jsx("h3", { className: cn(chartCardTitleVariants()), children: title }),
|
|
148
|
+
showComparison && (badge ?? /* @__PURE__ */ jsx(Badge, { color: getBadgeColor(evolution), size: "sm", children: formatPercentage(evolution) }))
|
|
149
|
+
] }) }),
|
|
150
|
+
/* @__PURE__ */ jsxs("div", { className: cn(chartCardValueContainerVariants()), children: [
|
|
151
|
+
/* @__PURE__ */ jsx("p", { className: cn(chartCardValueVariants()), children: valueFormatter(totalValue) }),
|
|
152
|
+
showComparison && /* @__PURE__ */ jsxs("p", { className: cn(chartCardPreviousValueVariants()), children: [
|
|
153
|
+
"from ",
|
|
154
|
+
valueFormatter(totalPreviousValue)
|
|
155
|
+
] })
|
|
156
|
+
] }),
|
|
157
|
+
!isThumbnail && data.length > 0 && /* @__PURE__ */ jsx(
|
|
158
|
+
LineChart,
|
|
159
|
+
{
|
|
160
|
+
autoMinValue: true,
|
|
161
|
+
startEndOnly: true,
|
|
162
|
+
className: cn(chartCardChartVariants(), chartHeight),
|
|
163
|
+
config,
|
|
164
|
+
data,
|
|
165
|
+
series,
|
|
166
|
+
showLegend: false,
|
|
167
|
+
showTooltip,
|
|
168
|
+
showYAxis: false,
|
|
169
|
+
xAxisKey,
|
|
170
|
+
xAxisTickFormatter: (value) => String(value),
|
|
171
|
+
yAxisTickFormatter: (value) => valueFormatter(Number(value))
|
|
172
|
+
}
|
|
173
|
+
)
|
|
174
|
+
]
|
|
175
|
+
}
|
|
176
|
+
);
|
|
177
|
+
}
|
|
178
|
+
ChartCard.displayName = "ChartCard";
|
|
179
|
+
|
|
180
|
+
export { ChartCard, chartCardChartVariants, chartCardHeaderVariants, chartCardPreviousValueVariants, chartCardTitleVariants, chartCardValueContainerVariants, chartCardValueVariants, chartCardVariants };
|
|
181
|
+
//# sourceMappingURL=chunk-DDR24GOP.js.map
|
|
182
|
+
//# sourceMappingURL=chunk-DDR24GOP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/ChartCard/ChartCard.variants.ts","../src/components/data-display/ChartCard/ChartCard.tsx"],"names":[],"mappings":";;;;;;;;AAMO,IAAM,iBAAA,GAAoB,GAAA;AAAA,EAC/B,YAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,EAAA;AAAA,QACT,QAAA,EAAU,qCAAA;AAAA,QACV,QAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ;AAKO,IAAM,uBAAA,GAA0B,GAAA;AAAA,EACrC;AACF;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC;AACF;AAKO,IAAM,+BAAA,GAAkC,GAAA;AAAA,EAC7C;AACF;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC;AACF;AAKO,IAAM,8BAAA,GAAiC,GAAA;AAAA,EAC5C;AACF;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC;AACF;ACtCA,IAAM,gBAAA,GAA4C,CAAC,KAAA,KAAU,MAAA,CAAO,KAAK,CAAA;AAKzE,SAAS,cAAc,KAAA,EAAgE;AACrF,EAAA,IAAI,QAAQ,CAAA,EAAG;AACb,IAAA,OAAO,SAAA;AAAA,EACT,CAAA,MAAA,IAAW,QAAQ,CAAA,EAAG;AACpB,IAAA,IAAI,QAAQ,GAAA,EAAK;AACf,MAAA,OAAO,SAAA;AAAA,IACT;AACA,IAAA,OAAO,aAAA;AAAA,EACT;AACA,EAAA,OAAO,OAAA;AACT;AAKA,SAAS,iBAAiB,KAAA,EAAuB;AAC/C,EAAA,MAAM,IAAA,GAAO,KAAA,GAAQ,CAAA,GAAI,GAAA,GAAM,EAAA;AAC/B,EAAA,OAAO,GAAG,IAAI,CAAA,EAAA,CAAI,QAAQ,GAAA,EAAK,OAAA,CAAQ,CAAC,CAAC,CAAA,CAAA,CAAA;AAC3C;AA6BA,SAAS,SAAA,CAAU;AAAA,EACjB,KAAA;AAAA,EACA,IAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA,GAAiB,gBAAA;AAAA,EACjB,gBAAA,GAAmB,eAAA;AAAA,EACnB,WAAA,GAAc,KAAA;AAAA,EACd,OAAA,GAAU,KAAA;AAAA,EACV,KAAA;AAAA,EACA,WAAA,GAAc,MAAA;AAAA,EACd,WAAA,GAAc,IAAA;AAAA,EACd,QAAA,GAAW,eAAA;AAAA,EACX,YAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAmB;AACjB,EAAA,MAAM,OAAA,GAAU,CAAC,OAAA,IAAW,IAAA,CAAK,MAAA,KAAW,CAAA;AAE5C,EAAA,MAAM,UAAA,GAAmB,cAAQ,MAAM;AACrC,IAAA,OAAO,IAAA,CAAK,OAAO,CAAC,GAAA,EAAK,SAAS,GAAA,IAAO,IAAA,CAAK,KAAA,IAAS,CAAA,CAAA,EAAI,CAAC,CAAA;AAAA,EAC9D,CAAA,EAAG,CAAC,IAAI,CAAC,CAAA;AAET,EAAA,MAAM,kBAAA,GAA2B,cAAQ,MAAM;AAC7C,IAAA,OAAO,IAAA,CAAK,OAAO,CAAC,GAAA,EAAK,SAAS,GAAA,IAAO,IAAA,CAAK,aAAA,IAAiB,CAAA,CAAA,EAAI,CAAC,CAAA;AAAA,EACtE,CAAA,EAAG,CAAC,IAAI,CAAC,CAAA;AAGT,EAAA,MAAM,SAAA,GAAkB,cAAQ,MAAM;AACpC,IAAA,IAAI,gBAAA,KAAqB,eAAA,IAAmB,kBAAA,KAAuB,CAAA,EAAG;AACpE,MAAA,OAAO,CAAA;AAAA,IACT;AACA,IAAA,OAAA,CAAQ,aAAa,kBAAA,IAAsB,kBAAA;AAAA,EAC7C,CAAA,EAAG,CAAC,gBAAA,EAAkB,kBAAA,EAAoB,UAAU,CAAC,CAAA;AAGrD,EAAA,MAAM,MAAA,GAAe,cAAQ,MAAM;AACjC,IAAA,OAAO,qBAAqB,eAAA,GACxB,CAAC,OAAO,CAAA,GACR,CAAC,SAAS,eAAe,CAAA;AAAA,EAC/B,CAAA,EAAG,CAAC,gBAAgB,CAAC,CAAA;AAGrB,EAAA,MAAM,iBAAiB,gBAAA,KAAqB,eAAA;AAG5C,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,uBACE,IAAA;AAAA,MAAC,SAAA;AAAA,MAAA;AAAA,QACC,YAAA,EAAY,GAAG,KAAK,CAAA,OAAA,CAAA;AAAA,QACpB,WAAW,EAAA,CAAG,iBAAA,CAAkB,EAAE,OAAA,EAAS,GAAG,SAAS,CAAA;AAAA,QACvD,YAAA,EAAW,MAAA;AAAA,QACX,WAAA,EAAU,YAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEJ,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,uBAAA,EAAyB,CAAA,EAC1C,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAwB,CAAA,EAAI,iBAAM,CAAA,EACtD,CAAA;AAAA,0BACA,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,sBAAA,EAAuB;AAAA,gBACvB,WAAA;AAAA,gBACA;AAAA,eACF;AAAA,cACA,WAAA,EAAU,kBAAA;AAAA,cAET,QAAA,EAAA,YAAA,IAAgB;AAAA;AAAA;AACnB;AAAA;AAAA,KACF;AAAA,EAEJ;AAGA,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,uBACE,IAAA;AAAA,MAAC,SAAA;AAAA,MAAA;AAAA,QACC,WAAA,EAAU,MAAA;AAAA,QACV,WAAW,EAAA,CAAG,iBAAA,CAAkB,EAAE,OAAA,EAAS,GAAG,SAAS,CAAA;AAAA,QACvD,WAAA,EAAU,YAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEJ,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,uBAAA,EAAyB,CAAA,EAC1C,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,cAAA,EAAA,EAAe,WAAU,UAAA,EAAW,CAAA;AAAA,4BACrC,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,UAAA,EAAW;AAAA,WAAA,EACvC,CAAA;AAAA,0BACA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,+BAAA,EAAiC,CAAA,EAClD,QAAA,kBAAA,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,UAAA,EAAW,CAAA,EACvC,CAAA;AAAA,0BACA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAuB,EAAG,WAAW,CAAA,EACtD,QAAA,kBAAA,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,eAAA,EAAgB,CAAA,EAC5C;AAAA;AAAA;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,cAAY,CAAA,EAAG,KAAK,CAAA,EAAA,EAAK,cAAA,CAAe,UAAU,CAAC,CAAA,CAAA;AAAA,MACnD,WAAW,EAAA,CAAG,iBAAA,CAAkB,EAAE,OAAA,EAAS,GAAG,SAAS,CAAA;AAAA,MACvD,WAAA,EAAU,YAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAGJ,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,WAAW,EAAA,CAAG,uBAAA,EAAyB,CAAA,EAC1C,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,2BAAA,EACb,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,QAAG,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAwB,GACvC,QAAA,EAAA,KAAA,EACH,CAAA;AAAA,UACC,cAAA,KACC,KAAA,oBACE,GAAA,CAAC,KAAA,EAAA,EAAM,KAAA,EAAO,aAAA,CAAc,SAAS,CAAA,EAAG,IAAA,EAAK,IAAA,EAC1C,QAAA,EAAA,gBAAA,CAAiB,SAAS,CAAA,EAC7B,CAAA;AAAA,SAAA,EAGN,CAAA,EACF,CAAA;AAAA,6BAGC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,+BAAA,EAAiC,CAAA,EAClD,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,GAAA,EAAA,EAAE,WAAW,EAAA,CAAG,sBAAA,EAAwB,CAAA,EACtC,QAAA,EAAA,cAAA,CAAe,UAAU,CAAA,EAC5B,CAAA;AAAA,UACC,kCACC,IAAA,CAAC,GAAA,EAAA,EAAE,WAAW,EAAA,CAAG,8BAAA,EAAgC,CAAA,EAAG,QAAA,EAAA;AAAA,YAAA,OAAA;AAAA,YAC5C,eAAe,kBAAkB;AAAA,WAAA,EACzC;AAAA,SAAA,EAEJ,CAAA;AAAA,QAGC,CAAC,WAAA,IAAe,IAAA,CAAK,MAAA,GAAS,CAAA,oBAC7B,GAAA;AAAA,UAAC,SAAA;AAAA,UAAA;AAAA,YACC,YAAA,EAAY,IAAA;AAAA,YACZ,YAAA,EAAY,IAAA;AAAA,YACZ,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAuB,EAAG,WAAW,CAAA;AAAA,YACnD,MAAA;AAAA,YACA,IAAA;AAAA,YACA,MAAA;AAAA,YACA,UAAA,EAAY,KAAA;AAAA,YACZ,WAAA;AAAA,YACA,SAAA,EAAW,KAAA;AAAA,YACX,QAAA;AAAA,YACA,kBAAA,EAAoB,CAAC,KAAA,KAAU,MAAA,CAAO,KAAK,CAAA;AAAA,YAC3C,oBAAoB,CAAC,KAAA,KAAU,cAAA,CAAe,MAAA,CAAO,KAAK,CAAC;AAAA;AAAA;AAC7D;AAAA;AAAA,GAEJ;AAEJ;AAEA,SAAA,CAAU,WAAA,GAAc,WAAA","file":"chunk-DDR24GOP.js","sourcesContent":["// ChartCard/ChartCard.variants.ts\nimport { cva } from \"class-variance-authority\"\n\n/**\n * ChartCard container variants\n */\nexport const chartCardVariants = cva(\n \"transition\",\n {\n variants: {\n variant: {\n default: \"\",\n outlined: \"border border-border rounded-lg p-4\",\n elevated: \"bg-card rounded-lg p-4 shadow-sm\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\n/**\n * ChartCard header variants\n */\nexport const chartCardHeaderVariants = cva(\n \"flex items-center justify-between gap-x-2\"\n)\n\n/**\n * ChartCard title variants\n */\nexport const chartCardTitleVariants = cva(\n \"font-bold text-foreground sm:text-sm\"\n)\n\n/**\n * ChartCard value container variants\n */\nexport const chartCardValueContainerVariants = cva(\n \"mt-2 flex items-baseline justify-between\"\n)\n\n/**\n * ChartCard value text variants\n */\nexport const chartCardValueVariants = cva(\n \"text-xl text-foreground\"\n)\n\n/**\n * ChartCard previous value variants\n */\nexport const chartCardPreviousValueVariants = cva(\n \"text-sm text-muted-foreground\"\n)\n\n/**\n * ChartCard chart container variants\n */\nexport const chartCardChartVariants = cva(\n \"mt-6\"\n)\n","// ChartCard/ChartCard.tsx\n\"use client\"\n\nimport type { ChartCardProps, ChartCardValueFormatter } from \"./ChartCard.types\"\n\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Badge } from \"../../primitives/Badge\"\nimport { SkeletonLoader } from \"../../primitives/SkeletonLoader\"\nimport { LineChart } from \"../LineChart\"\nimport {\n chartCardChartVariants,\n chartCardHeaderVariants,\n chartCardPreviousValueVariants,\n chartCardTitleVariants,\n chartCardValueContainerVariants,\n chartCardValueVariants,\n chartCardVariants,\n} from \"./ChartCard.variants\"\n\n/**\n * Default value formatter (returns value as string)\n */\nconst defaultFormatter: ChartCardValueFormatter = (value) => String(value)\n\n/**\n * Get badge color based on evolution percentage\n */\nfunction getBadgeColor(value: number): \"destructive\" | \"muted\" | \"success\" | \"warning\" {\n if (value > 0) {\n return \"success\"\n } else if (value < 0) {\n if (value < -50) {\n return \"warning\"\n }\n return \"destructive\"\n }\n return \"muted\"\n}\n\n/**\n * Format percentage for display\n */\nfunction formatPercentage(value: number): string {\n const sign = value > 0 ? \"+\" : \"\"\n return `${sign}${(value * 100).toFixed(1)}%`\n}\n\n/**\n * ChartCard - Dashboard widget with integrated LineChart\n *\n * Displays a KPI value with trend chart and optional comparison period.\n * Matches the Tremor DashboardChartCard layout with evolution badge.\n *\n * @example\n * ```tsx\n * const data = [\n * { formattedDate: \"01/01\", value: 1000, previousValue: 900 },\n * { formattedDate: \"02/01\", value: 1200, previousValue: 1100 },\n * ]\n *\n * const config = {\n * value: { label: \"Current\", color: \"hsl(var(--chart-1))\" },\n * previousValue: { label: \"Previous\", color: \"hsl(var(--chart-2))\" },\n * }\n *\n * <ChartCard\n * title=\"Revenue\"\n * data={data}\n * config={config}\n * valueFormatter={(v) => `$${v.toLocaleString()}`}\n * comparisonPeriod=\"previous-year\"\n * />\n * ```\n */\nfunction ChartCard({\n title,\n data,\n config,\n valueFormatter = defaultFormatter,\n comparisonPeriod = \"no-comparison\",\n isThumbnail = false,\n loading = false,\n badge,\n chartHeight = \"h-32\",\n showTooltip = true,\n xAxisKey = \"formattedDate\",\n emptyMessage,\n variant,\n className,\n ...props\n}: ChartCardProps) {\n const isEmpty = !loading && data.length === 0\n // Calculate totals\n const totalValue = React.useMemo(() => {\n return data.reduce((acc, item) => acc + (item.value ?? 0), 0)\n }, [data])\n\n const totalPreviousValue = React.useMemo(() => {\n return data.reduce((acc, item) => acc + (item.previousValue ?? 0), 0)\n }, [data])\n\n // Calculate evolution percentage\n const evolution = React.useMemo(() => {\n if (comparisonPeriod === \"no-comparison\" || totalPreviousValue === 0) {\n return 0\n }\n return (totalValue - totalPreviousValue) / totalPreviousValue\n }, [comparisonPeriod, totalPreviousValue, totalValue])\n\n // Determine which series to show\n const series = React.useMemo(() => {\n return comparisonPeriod === \"no-comparison\"\n ? [\"value\"]\n : [\"value\", \"previousValue\"]\n }, [comparisonPeriod])\n\n // Show comparison UI elements\n const showComparison = comparisonPeriod !== \"no-comparison\"\n\n // Empty state (DES-1254 item 3 — Figma Empty State)\n if (isEmpty) {\n return (\n <article\n aria-label={`${title}: empty`}\n className={cn(chartCardVariants({ variant }), className)}\n data-empty=\"true\"\n data-slot=\"chart-card\"\n {...props}\n >\n <div className={cn(chartCardHeaderVariants())}>\n <h3 className={cn(chartCardTitleVariants())}>{title}</h3>\n </div>\n <div\n className={cn(\n chartCardChartVariants(),\n chartHeight,\n \"flex items-center justify-center text-sm text-muted-foreground\"\n )}\n data-slot=\"chart-card-empty\"\n >\n {emptyMessage ?? \"No data available\"}\n </div>\n </article>\n )\n }\n\n // Loading state\n if (loading) {\n return (\n <article\n aria-busy=\"true\"\n className={cn(chartCardVariants({ variant }), className)}\n data-slot=\"chart-card\"\n {...props}\n >\n <div className={cn(chartCardHeaderVariants())}>\n <SkeletonLoader className=\"h-4 w-24\" />\n <SkeletonLoader className=\"h-5 w-12\" />\n </div>\n <div className={cn(chartCardValueContainerVariants())}>\n <SkeletonLoader className=\"h-7 w-32\" />\n </div>\n <div className={cn(chartCardChartVariants(), chartHeight)}>\n <SkeletonLoader className=\"h-full w-full\" />\n </div>\n </article>\n )\n }\n\n return (\n <article\n aria-label={`${title}: ${valueFormatter(totalValue)}`}\n className={cn(chartCardVariants({ variant }), className)}\n data-slot=\"chart-card\"\n {...props}\n >\n {/* Header with title and badge */}\n <div className={cn(chartCardHeaderVariants())}>\n <div className=\"flex items-center gap-x-2\">\n <h3 className={cn(chartCardTitleVariants())}>\n {title}\n </h3>\n {showComparison && (\n badge ?? (\n <Badge color={getBadgeColor(evolution)} size=\"sm\">\n {formatPercentage(evolution)}\n </Badge>\n )\n )}\n </div>\n </div>\n\n {/* Value display */}\n <div className={cn(chartCardValueContainerVariants())}>\n <p className={cn(chartCardValueVariants())}>\n {valueFormatter(totalValue)}\n </p>\n {showComparison && (\n <p className={cn(chartCardPreviousValueVariants())}>\n from {valueFormatter(totalPreviousValue)}\n </p>\n )}\n </div>\n\n {/* Chart */}\n {!isThumbnail && data.length > 0 && (\n <LineChart\n autoMinValue\n startEndOnly\n className={cn(chartCardChartVariants(), chartHeight)}\n config={config}\n data={data}\n series={series}\n showLegend={false}\n showTooltip={showTooltip}\n showYAxis={false}\n xAxisKey={xAxisKey}\n xAxisTickFormatter={(value) => String(value)}\n yAxisTickFormatter={(value) => valueFormatter(Number(value))}\n />\n )}\n </article>\n )\n}\n\nChartCard.displayName = \"ChartCard\"\n\nexport { ChartCard }\n"]}
|