@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,529 @@
|
|
|
1
|
+
import { cn } from './chunk-HRNDJU7D.js';
|
|
2
|
+
import { Filter, X, ChevronUp, ChevronDown, Check } from 'lucide-react';
|
|
3
|
+
import { useState, useMemo, useCallback } from 'react';
|
|
4
|
+
import { cva } from 'class-variance-authority';
|
|
5
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
6
|
+
|
|
7
|
+
var taskListVariants = cva(["flex flex-col"], {
|
|
8
|
+
defaultVariants: {
|
|
9
|
+
size: "default",
|
|
10
|
+
variant: "default"
|
|
11
|
+
},
|
|
12
|
+
variants: {
|
|
13
|
+
size: {
|
|
14
|
+
default: "gap-3",
|
|
15
|
+
lg: "gap-4",
|
|
16
|
+
sm: "gap-2"
|
|
17
|
+
},
|
|
18
|
+
variant: {
|
|
19
|
+
compact: "gap-2",
|
|
20
|
+
default: "gap-3",
|
|
21
|
+
grouped: "divide-y divide-border gap-0"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
var taskListHeaderVariants = cva(
|
|
26
|
+
["flex items-center justify-between mb-4"],
|
|
27
|
+
{
|
|
28
|
+
defaultVariants: {
|
|
29
|
+
size: "default"
|
|
30
|
+
},
|
|
31
|
+
variants: {
|
|
32
|
+
size: {
|
|
33
|
+
default: "mb-4",
|
|
34
|
+
lg: "mb-6",
|
|
35
|
+
sm: "mb-3"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
var taskListTitleVariants = cva(["font-semibold text-foreground"], {
|
|
41
|
+
defaultVariants: {
|
|
42
|
+
size: "default"
|
|
43
|
+
},
|
|
44
|
+
variants: {
|
|
45
|
+
size: {
|
|
46
|
+
default: "text-lg",
|
|
47
|
+
lg: "text-xl",
|
|
48
|
+
sm: "text-base"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
var taskListItemVariants = cva(
|
|
53
|
+
[
|
|
54
|
+
"relative flex items-start gap-3 rounded-lg border transition-all duration-200",
|
|
55
|
+
"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",
|
|
56
|
+
"hover:shadow-sm cursor-pointer"
|
|
57
|
+
],
|
|
58
|
+
{
|
|
59
|
+
compoundVariants: [
|
|
60
|
+
{
|
|
61
|
+
class: "py-3",
|
|
62
|
+
size: "default",
|
|
63
|
+
variant: "grouped"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
class: "py-2",
|
|
67
|
+
size: "sm",
|
|
68
|
+
variant: "grouped"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
class: "py-4",
|
|
72
|
+
size: "lg",
|
|
73
|
+
variant: "grouped"
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
defaultVariants: {
|
|
77
|
+
size: "default",
|
|
78
|
+
variant: "default"
|
|
79
|
+
},
|
|
80
|
+
variants: {
|
|
81
|
+
size: {
|
|
82
|
+
default: "p-4 gap-3",
|
|
83
|
+
lg: "p-6 gap-4",
|
|
84
|
+
sm: "p-3 gap-2"
|
|
85
|
+
},
|
|
86
|
+
variant: {
|
|
87
|
+
compact: "p-2 gap-2 border-transparent hover:bg-muted/50",
|
|
88
|
+
default: "bg-card border-border",
|
|
89
|
+
grouped: "border-x-0 border-t-0 rounded-none first:rounded-t-lg last:rounded-b-lg last:border-b-0"
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
);
|
|
94
|
+
var priorityStyles = {
|
|
95
|
+
high: "bg-[color:var(--priority-high-bg)] text-[color:var(--priority-high-text)]",
|
|
96
|
+
low: "bg-[color:var(--priority-low-bg)] text-[color:var(--priority-low-text)]",
|
|
97
|
+
medium: "bg-[color:var(--priority-medium-bg)] text-[color:var(--priority-medium-text)]",
|
|
98
|
+
urgent: "bg-[color:var(--priority-urgent-bg)] text-[color:var(--priority-urgent-text)]"
|
|
99
|
+
};
|
|
100
|
+
var statusStyles = {
|
|
101
|
+
done: "bg-[color:var(--task-status-done-dot)]",
|
|
102
|
+
"in-progress": "bg-[color:var(--task-status-in-progress-dot)]",
|
|
103
|
+
todo: "bg-[color:var(--task-status-todo-dot)]"
|
|
104
|
+
};
|
|
105
|
+
var emptyStateStyles = "text-center py-8 text-muted-foreground";
|
|
106
|
+
var loadingStyles = "animate-pulse";
|
|
107
|
+
var selectedItemStyles = "bg-primary/10 border-primary";
|
|
108
|
+
var groupHeaderStyles = "text-sm font-medium text-muted-foreground uppercase tracking-wide py-2 px-1";
|
|
109
|
+
var PRIORITY_LABELS = {
|
|
110
|
+
high: "High",
|
|
111
|
+
low: "Low",
|
|
112
|
+
medium: "Medium",
|
|
113
|
+
urgent: "Urgent"
|
|
114
|
+
};
|
|
115
|
+
var STATUS_LABELS = {
|
|
116
|
+
done: "Done",
|
|
117
|
+
"in-progress": "In Progress",
|
|
118
|
+
todo: "To Do"
|
|
119
|
+
};
|
|
120
|
+
function groupTasks(tasks, groupBy) {
|
|
121
|
+
const groups = /* @__PURE__ */ new Map();
|
|
122
|
+
for (const task of tasks) {
|
|
123
|
+
let key;
|
|
124
|
+
switch (groupBy) {
|
|
125
|
+
case "assignee":
|
|
126
|
+
key = task.assignee?.name ?? "Unassigned";
|
|
127
|
+
break;
|
|
128
|
+
case "priority":
|
|
129
|
+
key = task.priority ? PRIORITY_LABELS[task.priority] : "No Priority";
|
|
130
|
+
break;
|
|
131
|
+
case "status":
|
|
132
|
+
key = task.status ? STATUS_LABELS[task.status] : "No Status";
|
|
133
|
+
break;
|
|
134
|
+
default:
|
|
135
|
+
key = "Default";
|
|
136
|
+
}
|
|
137
|
+
const existing = groups.get(key) ?? [];
|
|
138
|
+
groups.set(key, [...existing, task]);
|
|
139
|
+
}
|
|
140
|
+
return groups;
|
|
141
|
+
}
|
|
142
|
+
function sortTasks(tasks, sortField, sortDirection) {
|
|
143
|
+
return [...tasks].sort((a, b) => {
|
|
144
|
+
let comparison = 0;
|
|
145
|
+
switch (sortField) {
|
|
146
|
+
case "title":
|
|
147
|
+
comparison = a.title.localeCompare(b.title);
|
|
148
|
+
break;
|
|
149
|
+
case "priority": {
|
|
150
|
+
const priorityOrder = {
|
|
151
|
+
urgent: 0,
|
|
152
|
+
high: 1,
|
|
153
|
+
medium: 2,
|
|
154
|
+
low: 3
|
|
155
|
+
};
|
|
156
|
+
const aPriority = a.priority ? priorityOrder[a.priority] : 4;
|
|
157
|
+
const bPriority = b.priority ? priorityOrder[b.priority] : 4;
|
|
158
|
+
comparison = aPriority - bPriority;
|
|
159
|
+
break;
|
|
160
|
+
}
|
|
161
|
+
case "status": {
|
|
162
|
+
const statusOrder = {
|
|
163
|
+
"in-progress": 0,
|
|
164
|
+
todo: 1,
|
|
165
|
+
done: 2
|
|
166
|
+
};
|
|
167
|
+
const aStatus = a.status ? statusOrder[a.status] : 3;
|
|
168
|
+
const bStatus = b.status ? statusOrder[b.status] : 3;
|
|
169
|
+
comparison = aStatus - bStatus;
|
|
170
|
+
break;
|
|
171
|
+
}
|
|
172
|
+
case "dueDate": {
|
|
173
|
+
const aDate = a.dueDate?.getTime() ?? Infinity;
|
|
174
|
+
const bDate = b.dueDate?.getTime() ?? Infinity;
|
|
175
|
+
comparison = aDate - bDate;
|
|
176
|
+
break;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return sortDirection === "desc" ? -comparison : comparison;
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
function TaskListItem({
|
|
183
|
+
isSelected,
|
|
184
|
+
onKeyDown,
|
|
185
|
+
onSelect,
|
|
186
|
+
onTaskClick,
|
|
187
|
+
selectable,
|
|
188
|
+
size,
|
|
189
|
+
task,
|
|
190
|
+
variant
|
|
191
|
+
}) {
|
|
192
|
+
const handleClick = () => {
|
|
193
|
+
if (selectable) {
|
|
194
|
+
onSelect(task);
|
|
195
|
+
}
|
|
196
|
+
onTaskClick?.(task);
|
|
197
|
+
};
|
|
198
|
+
const handleKeyDown = (event) => {
|
|
199
|
+
onKeyDown(event, task);
|
|
200
|
+
};
|
|
201
|
+
return /* @__PURE__ */ jsxs(
|
|
202
|
+
"div",
|
|
203
|
+
{
|
|
204
|
+
className: cn(
|
|
205
|
+
taskListItemVariants({ size, variant }),
|
|
206
|
+
isSelected && selectedItemStyles
|
|
207
|
+
),
|
|
208
|
+
"aria-selected": selectable ? isSelected : void 0,
|
|
209
|
+
"data-slot": "task-list-item",
|
|
210
|
+
role: "listitem",
|
|
211
|
+
tabIndex: 0,
|
|
212
|
+
onClick: handleClick,
|
|
213
|
+
onKeyDown: handleKeyDown,
|
|
214
|
+
children: [
|
|
215
|
+
selectable && /* @__PURE__ */ jsx(
|
|
216
|
+
"div",
|
|
217
|
+
{
|
|
218
|
+
className: cn(
|
|
219
|
+
"flex h-5 w-5 shrink-0 items-center justify-center rounded border",
|
|
220
|
+
isSelected ? "bg-primary border-primary text-primary-foreground" : "border-input"
|
|
221
|
+
),
|
|
222
|
+
"data-slot": "task-list-checkbox",
|
|
223
|
+
children: isSelected && /* @__PURE__ */ jsx(Check, { className: "h-3 w-3" })
|
|
224
|
+
}
|
|
225
|
+
),
|
|
226
|
+
task.status && /* @__PURE__ */ jsx(
|
|
227
|
+
"div",
|
|
228
|
+
{
|
|
229
|
+
className: cn("h-2 w-2 shrink-0 rounded-full", statusStyles[task.status]),
|
|
230
|
+
"data-slot": "task-list-status",
|
|
231
|
+
title: STATUS_LABELS[task.status]
|
|
232
|
+
}
|
|
233
|
+
),
|
|
234
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", "data-slot": "task-list-content", children: [
|
|
235
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-start justify-between gap-2", children: [
|
|
236
|
+
/* @__PURE__ */ jsx(
|
|
237
|
+
"span",
|
|
238
|
+
{
|
|
239
|
+
className: cn(
|
|
240
|
+
"font-medium text-foreground",
|
|
241
|
+
task.status === "done" && "line-through opacity-70"
|
|
242
|
+
),
|
|
243
|
+
"data-slot": "task-list-title",
|
|
244
|
+
children: task.title
|
|
245
|
+
}
|
|
246
|
+
),
|
|
247
|
+
task.priority && /* @__PURE__ */ jsx(
|
|
248
|
+
"span",
|
|
249
|
+
{
|
|
250
|
+
className: cn(
|
|
251
|
+
"shrink-0 rounded px-1.5 py-0.5 text-xs font-medium",
|
|
252
|
+
priorityStyles[task.priority]
|
|
253
|
+
),
|
|
254
|
+
"data-slot": "task-list-priority",
|
|
255
|
+
children: PRIORITY_LABELS[task.priority]
|
|
256
|
+
}
|
|
257
|
+
)
|
|
258
|
+
] }),
|
|
259
|
+
task.description && /* @__PURE__ */ jsx(
|
|
260
|
+
"p",
|
|
261
|
+
{
|
|
262
|
+
className: "mt-1 text-sm text-muted-foreground line-clamp-2",
|
|
263
|
+
"data-slot": "task-list-description",
|
|
264
|
+
children: task.description
|
|
265
|
+
}
|
|
266
|
+
),
|
|
267
|
+
/* @__PURE__ */ jsxs("div", { className: "mt-2 flex flex-wrap items-center gap-2", children: [
|
|
268
|
+
task.tags && task.tags.length > 0 && /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1", "data-slot": "task-list-tags", children: task.tags.map((tag) => /* @__PURE__ */ jsx(
|
|
269
|
+
"span",
|
|
270
|
+
{
|
|
271
|
+
className: "rounded bg-muted px-1.5 py-0.5 text-xs text-muted-foreground",
|
|
272
|
+
children: tag
|
|
273
|
+
},
|
|
274
|
+
tag
|
|
275
|
+
)) }),
|
|
276
|
+
task.dueDate && /* @__PURE__ */ jsxs(
|
|
277
|
+
"span",
|
|
278
|
+
{
|
|
279
|
+
className: "text-xs text-muted-foreground",
|
|
280
|
+
"data-slot": "task-list-due-date",
|
|
281
|
+
children: [
|
|
282
|
+
"Due: ",
|
|
283
|
+
task.dueDate.toLocaleDateString()
|
|
284
|
+
]
|
|
285
|
+
}
|
|
286
|
+
),
|
|
287
|
+
task.assignee && /* @__PURE__ */ jsxs(
|
|
288
|
+
"div",
|
|
289
|
+
{
|
|
290
|
+
className: "flex items-center gap-1",
|
|
291
|
+
"data-slot": "task-list-assignee",
|
|
292
|
+
children: [
|
|
293
|
+
task.assignee.avatar ? /* @__PURE__ */ jsx(
|
|
294
|
+
"img",
|
|
295
|
+
{
|
|
296
|
+
alt: task.assignee.name,
|
|
297
|
+
className: "h-5 w-5 rounded-full",
|
|
298
|
+
src: task.assignee.avatar
|
|
299
|
+
}
|
|
300
|
+
) : /* @__PURE__ */ jsx("div", { className: "flex h-5 w-5 items-center justify-center rounded-full bg-muted text-xs", children: task.assignee.name.charAt(0).toUpperCase() }),
|
|
301
|
+
/* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: task.assignee.name })
|
|
302
|
+
]
|
|
303
|
+
}
|
|
304
|
+
)
|
|
305
|
+
] })
|
|
306
|
+
] })
|
|
307
|
+
]
|
|
308
|
+
}
|
|
309
|
+
);
|
|
310
|
+
}
|
|
311
|
+
function TaskListSkeleton({ count = 3 }) {
|
|
312
|
+
return /* @__PURE__ */ jsx(Fragment, { children: Array.from({ length: count }).map((_, index) => /* @__PURE__ */ jsxs(
|
|
313
|
+
"div",
|
|
314
|
+
{
|
|
315
|
+
className: cn(taskListItemVariants({}), loadingStyles),
|
|
316
|
+
"data-slot": "task-list-skeleton",
|
|
317
|
+
children: [
|
|
318
|
+
/* @__PURE__ */ jsx("div", { className: "h-2 w-2 shrink-0 rounded-full bg-muted" }),
|
|
319
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1 space-y-2", children: [
|
|
320
|
+
/* @__PURE__ */ jsx("div", { className: "h-4 w-3/4 rounded bg-muted" }),
|
|
321
|
+
/* @__PURE__ */ jsx("div", { className: "h-3 w-1/2 rounded bg-muted" })
|
|
322
|
+
] })
|
|
323
|
+
]
|
|
324
|
+
},
|
|
325
|
+
`skeleton-${String(index)}`
|
|
326
|
+
)) });
|
|
327
|
+
}
|
|
328
|
+
function TaskList({
|
|
329
|
+
className,
|
|
330
|
+
empty,
|
|
331
|
+
filterable = false,
|
|
332
|
+
groupBy,
|
|
333
|
+
loading = false,
|
|
334
|
+
onSelect,
|
|
335
|
+
onTaskClick,
|
|
336
|
+
selectable = false,
|
|
337
|
+
size = "default",
|
|
338
|
+
sortable = false,
|
|
339
|
+
tasks = [],
|
|
340
|
+
title,
|
|
341
|
+
variant = "default",
|
|
342
|
+
...props
|
|
343
|
+
}) {
|
|
344
|
+
const [selectedIds, setSelectedIds] = useState(() => /* @__PURE__ */ new Set());
|
|
345
|
+
const [sortField, setSortField] = useState("title");
|
|
346
|
+
const [sortDirection, setSortDirection] = useState("asc");
|
|
347
|
+
const [filterStatus, setFilterStatus] = useState(null);
|
|
348
|
+
const filteredTasks = useMemo(() => {
|
|
349
|
+
if (!filterStatus) return tasks;
|
|
350
|
+
return tasks.filter((task) => task.status === filterStatus);
|
|
351
|
+
}, [tasks, filterStatus]);
|
|
352
|
+
const sortedTasks = useMemo(() => {
|
|
353
|
+
if (!sortable) return filteredTasks;
|
|
354
|
+
return sortTasks(filteredTasks, sortField, sortDirection);
|
|
355
|
+
}, [filteredTasks, sortable, sortField, sortDirection]);
|
|
356
|
+
const groupedTasks = useMemo(() => {
|
|
357
|
+
if (!groupBy) return null;
|
|
358
|
+
return groupTasks(sortedTasks, groupBy);
|
|
359
|
+
}, [sortedTasks, groupBy]);
|
|
360
|
+
const handleSelect = useCallback(
|
|
361
|
+
(task) => {
|
|
362
|
+
if (!selectable) return;
|
|
363
|
+
const newSelected = new Set(selectedIds);
|
|
364
|
+
if (newSelected.has(task.id)) {
|
|
365
|
+
newSelected.delete(task.id);
|
|
366
|
+
} else {
|
|
367
|
+
newSelected.add(task.id);
|
|
368
|
+
}
|
|
369
|
+
setSelectedIds(newSelected);
|
|
370
|
+
if (onSelect) {
|
|
371
|
+
const selectedTasks = tasks.filter((t) => newSelected.has(t.id));
|
|
372
|
+
onSelect(selectedTasks);
|
|
373
|
+
}
|
|
374
|
+
},
|
|
375
|
+
[selectable, selectedIds, tasks, onSelect]
|
|
376
|
+
);
|
|
377
|
+
const handleKeyDown = useCallback(
|
|
378
|
+
(event, task) => {
|
|
379
|
+
if (event.key === " " || event.key === "Spacebar") {
|
|
380
|
+
event.preventDefault();
|
|
381
|
+
if (selectable) {
|
|
382
|
+
handleSelect(task);
|
|
383
|
+
}
|
|
384
|
+
} else if (event.key === "Enter") {
|
|
385
|
+
onTaskClick?.(task);
|
|
386
|
+
}
|
|
387
|
+
},
|
|
388
|
+
[selectable, handleSelect, onTaskClick]
|
|
389
|
+
);
|
|
390
|
+
const toggleSort = (field) => {
|
|
391
|
+
if (sortField === field) {
|
|
392
|
+
setSortDirection((prev) => prev === "asc" ? "desc" : "asc");
|
|
393
|
+
} else {
|
|
394
|
+
setSortField(field);
|
|
395
|
+
setSortDirection("asc");
|
|
396
|
+
}
|
|
397
|
+
};
|
|
398
|
+
const renderTaskItems = (tasksToRender) => tasksToRender.map((task) => /* @__PURE__ */ jsx(
|
|
399
|
+
TaskListItem,
|
|
400
|
+
{
|
|
401
|
+
isSelected: selectedIds.has(task.id),
|
|
402
|
+
selectable,
|
|
403
|
+
size: size ?? "default",
|
|
404
|
+
task,
|
|
405
|
+
variant: variant ?? "default",
|
|
406
|
+
onKeyDown: handleKeyDown,
|
|
407
|
+
onSelect: handleSelect,
|
|
408
|
+
onTaskClick
|
|
409
|
+
},
|
|
410
|
+
task.id
|
|
411
|
+
));
|
|
412
|
+
return /* @__PURE__ */ jsxs(
|
|
413
|
+
"div",
|
|
414
|
+
{
|
|
415
|
+
"aria-label": title ?? "Task list",
|
|
416
|
+
"aria-live": "polite",
|
|
417
|
+
className: cn(taskListVariants({ size, variant }), className),
|
|
418
|
+
"data-slot": "task-list",
|
|
419
|
+
role: "list",
|
|
420
|
+
...props,
|
|
421
|
+
children: [
|
|
422
|
+
(title || filterable || sortable) && /* @__PURE__ */ jsxs(
|
|
423
|
+
"div",
|
|
424
|
+
{
|
|
425
|
+
className: taskListHeaderVariants({ size }),
|
|
426
|
+
"data-slot": "task-list-header",
|
|
427
|
+
children: [
|
|
428
|
+
title && /* @__PURE__ */ jsx(
|
|
429
|
+
"h2",
|
|
430
|
+
{
|
|
431
|
+
className: taskListTitleVariants({ size }),
|
|
432
|
+
"data-slot": "task-list-title",
|
|
433
|
+
children: title
|
|
434
|
+
}
|
|
435
|
+
),
|
|
436
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", "data-slot": "task-list-controls", children: [
|
|
437
|
+
filterable && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
|
|
438
|
+
/* @__PURE__ */ jsx(Filter, { className: "h-4 w-4 text-muted-foreground" }),
|
|
439
|
+
/* @__PURE__ */ jsxs(
|
|
440
|
+
"select",
|
|
441
|
+
{
|
|
442
|
+
"aria-label": "Filter by status",
|
|
443
|
+
className: "rounded border border-input bg-background px-2 py-1 text-sm",
|
|
444
|
+
value: filterStatus ?? "",
|
|
445
|
+
onChange: (e) => {
|
|
446
|
+
setFilterStatus(
|
|
447
|
+
e.target.value ? e.target.value : null
|
|
448
|
+
);
|
|
449
|
+
},
|
|
450
|
+
children: [
|
|
451
|
+
/* @__PURE__ */ jsx("option", { value: "", children: "All" }),
|
|
452
|
+
/* @__PURE__ */ jsx("option", { value: "todo", children: "To Do" }),
|
|
453
|
+
/* @__PURE__ */ jsx("option", { value: "in-progress", children: "In Progress" }),
|
|
454
|
+
/* @__PURE__ */ jsx("option", { value: "done", children: "Done" })
|
|
455
|
+
]
|
|
456
|
+
}
|
|
457
|
+
),
|
|
458
|
+
filterStatus && /* @__PURE__ */ jsx(
|
|
459
|
+
"button",
|
|
460
|
+
{
|
|
461
|
+
"aria-label": "Clear filter",
|
|
462
|
+
className: "rounded p-1 hover:bg-muted",
|
|
463
|
+
type: "button",
|
|
464
|
+
onClick: () => {
|
|
465
|
+
setFilterStatus(null);
|
|
466
|
+
},
|
|
467
|
+
children: /* @__PURE__ */ jsx(X, { className: "h-3 w-3" })
|
|
468
|
+
}
|
|
469
|
+
)
|
|
470
|
+
] }),
|
|
471
|
+
sortable && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
|
|
472
|
+
/* @__PURE__ */ jsxs(
|
|
473
|
+
"select",
|
|
474
|
+
{
|
|
475
|
+
"aria-label": "Sort by",
|
|
476
|
+
className: "rounded border border-input bg-background px-2 py-1 text-sm",
|
|
477
|
+
value: sortField,
|
|
478
|
+
onChange: (e) => {
|
|
479
|
+
setSortField(
|
|
480
|
+
e.target.value
|
|
481
|
+
);
|
|
482
|
+
},
|
|
483
|
+
children: [
|
|
484
|
+
/* @__PURE__ */ jsx("option", { value: "title", children: "Title" }),
|
|
485
|
+
/* @__PURE__ */ jsx("option", { value: "priority", children: "Priority" }),
|
|
486
|
+
/* @__PURE__ */ jsx("option", { value: "status", children: "Status" }),
|
|
487
|
+
/* @__PURE__ */ jsx("option", { value: "dueDate", children: "Due Date" })
|
|
488
|
+
]
|
|
489
|
+
}
|
|
490
|
+
),
|
|
491
|
+
/* @__PURE__ */ jsx(
|
|
492
|
+
"button",
|
|
493
|
+
{
|
|
494
|
+
"aria-label": `Sort ${sortDirection === "asc" ? "descending" : "ascending"}`,
|
|
495
|
+
className: "rounded p-1 hover:bg-muted",
|
|
496
|
+
type: "button",
|
|
497
|
+
onClick: () => {
|
|
498
|
+
toggleSort(sortField);
|
|
499
|
+
},
|
|
500
|
+
children: sortDirection === "asc" ? /* @__PURE__ */ jsx(ChevronUp, { className: "h-4 w-4" }) : /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4" })
|
|
501
|
+
}
|
|
502
|
+
)
|
|
503
|
+
] })
|
|
504
|
+
] })
|
|
505
|
+
]
|
|
506
|
+
}
|
|
507
|
+
),
|
|
508
|
+
/* @__PURE__ */ jsxs("div", { "data-slot": "task-list-items", children: [
|
|
509
|
+
loading && /* @__PURE__ */ jsx(TaskListSkeleton, {}),
|
|
510
|
+
!loading && sortedTasks.length === 0 && /* @__PURE__ */ jsx("div", { className: emptyStateStyles, "data-slot": "task-list-empty", children: empty ?? "No tasks to display" }),
|
|
511
|
+
!loading && groupedTasks && sortedTasks.length > 0 && /* @__PURE__ */ jsx(Fragment, { children: [...groupedTasks.entries()].map(([group, groupTasks2]) => /* @__PURE__ */ jsxs("div", { "data-slot": "task-list-group", children: [
|
|
512
|
+
/* @__PURE__ */ jsxs("div", { className: groupHeaderStyles, "data-slot": "task-list-group-header", children: [
|
|
513
|
+
group,
|
|
514
|
+
" (",
|
|
515
|
+
groupTasks2.length,
|
|
516
|
+
")"
|
|
517
|
+
] }),
|
|
518
|
+
renderTaskItems(groupTasks2)
|
|
519
|
+
] }, group)) }),
|
|
520
|
+
!loading && !groupedTasks && sortedTasks.length > 0 && renderTaskItems(sortedTasks)
|
|
521
|
+
] })
|
|
522
|
+
]
|
|
523
|
+
}
|
|
524
|
+
);
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
export { TaskList, emptyStateStyles, groupHeaderStyles, loadingStyles, selectedItemStyles, taskListHeaderVariants, taskListItemVariants, taskListTitleVariants, taskListVariants };
|
|
528
|
+
//# sourceMappingURL=chunk-5J5OL4IV.js.map
|
|
529
|
+
//# sourceMappingURL=chunk-5J5OL4IV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/workflow/TaskList/TaskList.variants.ts","../src/components/workflow/TaskList/TaskList.tsx"],"names":["groupTasks"],"mappings":"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","file":"chunk-5J5OL4IV.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * TaskList container variant styles using CVA\n */\nexport const taskListVariants = cva([\"flex flex-col\"], {\n defaultVariants: {\n size: \"default\",\n variant: \"default\",\n },\n variants: {\n size: {\n default: \"gap-3\",\n lg: \"gap-4\",\n sm: \"gap-2\",\n },\n variant: {\n compact: \"gap-2\",\n default: \"gap-3\",\n grouped: \"divide-y divide-border gap-0\",\n },\n },\n})\n\n/**\n * TaskList header styles\n */\nexport const taskListHeaderVariants = cva(\n [\"flex items-center justify-between mb-4\"],\n {\n defaultVariants: {\n size: \"default\",\n },\n variants: {\n size: {\n default: \"mb-4\",\n lg: \"mb-6\",\n sm: \"mb-3\",\n },\n },\n }\n)\n\n/**\n * TaskList title styles\n */\nexport const taskListTitleVariants = cva([\"font-semibold text-foreground\"], {\n defaultVariants: {\n size: \"default\",\n },\n variants: {\n size: {\n default: \"text-lg\",\n lg: \"text-xl\",\n sm: \"text-base\",\n },\n },\n})\n\n/**\n * TaskList item wrapper styles\n */\nexport const taskListItemVariants = cva(\n [\n \"relative flex items-start gap-3 rounded-lg border transition-all duration-200\",\n \"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2\",\n \"hover:shadow-sm cursor-pointer\",\n ],\n {\n compoundVariants: [\n {\n class: \"py-3\",\n size: \"default\",\n variant: \"grouped\",\n },\n {\n class: \"py-2\",\n size: \"sm\",\n variant: \"grouped\",\n },\n {\n class: \"py-4\",\n size: \"lg\",\n variant: \"grouped\",\n },\n ],\n defaultVariants: {\n size: \"default\",\n variant: \"default\",\n },\n variants: {\n size: {\n default: \"p-4 gap-3\",\n lg: \"p-6 gap-4\",\n sm: \"p-3 gap-2\",\n },\n variant: {\n compact: \"p-2 gap-2 border-transparent hover:bg-muted/50\",\n default: \"bg-card border-border\",\n grouped: \"border-x-0 border-t-0 rounded-none first:rounded-t-lg last:rounded-b-lg last:border-b-0\",\n },\n },\n }\n)\n\n/**\n * Priority badge color styles using semantic tokens\n */\nexport const priorityStyles: Record<string, string> = {\n high: \"bg-[color:var(--priority-high-bg)] text-[color:var(--priority-high-text)]\",\n low: \"bg-[color:var(--priority-low-bg)] text-[color:var(--priority-low-text)]\",\n medium: \"bg-[color:var(--priority-medium-bg)] text-[color:var(--priority-medium-text)]\",\n urgent: \"bg-[color:var(--priority-urgent-bg)] text-[color:var(--priority-urgent-text)]\",\n}\n\n/**\n * Status indicator color styles using semantic tokens\n */\nexport const statusStyles: Record<string, string> = {\n done: \"bg-[color:var(--task-status-done-dot)]\",\n \"in-progress\": \"bg-[color:var(--task-status-in-progress-dot)]\",\n todo: \"bg-[color:var(--task-status-todo-dot)]\",\n}\n\n/**\n * Empty state styles\n */\nexport const emptyStateStyles = \"text-center py-8 text-muted-foreground\"\n\n/**\n * Loading state styles\n */\nexport const loadingStyles = \"animate-pulse\"\n\n/**\n * Selected item styles\n */\nexport const selectedItemStyles = \"bg-primary/10 border-primary\"\n\n/**\n * Group header styles\n */\nexport const groupHeaderStyles = \"text-sm font-medium text-muted-foreground uppercase tracking-wide py-2 px-1\"\n","import type {\n TaskGroupBy,\n TaskItem,\n TaskListPriority,\n TaskListProps,\n TaskListStatus,\n} from \"./TaskList.types\"\nimport type { KeyboardEvent } from \"react\"\n\nimport { Check, ChevronDown, ChevronUp, Filter, X } from \"lucide-react\"\nimport { useCallback, useMemo, useState } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n emptyStateStyles,\n groupHeaderStyles,\n loadingStyles,\n priorityStyles,\n selectedItemStyles,\n statusStyles,\n taskListHeaderVariants,\n taskListItemVariants,\n taskListTitleVariants,\n taskListVariants,\n} from \"./TaskList.variants\"\n\n/**\n * Priority labels for display\n */\nconst PRIORITY_LABELS: Record<TaskListPriority, string> = {\n high: \"High\",\n low: \"Low\",\n medium: \"Medium\",\n urgent: \"Urgent\",\n}\n\n/**\n * Status labels for display\n */\nconst STATUS_LABELS: Record<TaskListStatus, string> = {\n done: \"Done\",\n \"in-progress\": \"In Progress\",\n todo: \"To Do\",\n}\n\n/**\n * Group tasks by a specific field\n */\nfunction groupTasks(\n tasks: TaskItem[],\n groupBy: TaskGroupBy\n): Map<string, TaskItem[]> {\n const groups = new Map<string, TaskItem[]>()\n\n for (const task of tasks) {\n let key: string\n\n switch (groupBy) {\n case \"assignee\":\n key = task.assignee?.name ?? \"Unassigned\"\n break\n case \"priority\":\n key = task.priority ? PRIORITY_LABELS[task.priority] : \"No Priority\"\n break\n case \"status\":\n key = task.status ? STATUS_LABELS[task.status] : \"No Status\"\n break\n default:\n key = \"Default\"\n }\n\n const existing = groups.get(key) ?? []\n groups.set(key, [...existing, task])\n }\n\n return groups\n}\n\n/**\n * Sort tasks by field\n */\nfunction sortTasks(\n tasks: TaskItem[],\n sortField: \"dueDate\" | \"priority\" | \"status\" | \"title\",\n sortDirection: \"asc\" | \"desc\"\n): TaskItem[] {\n return [...tasks].sort((a, b) => {\n let comparison = 0\n\n switch (sortField) {\n case \"title\":\n comparison = a.title.localeCompare(b.title)\n break\n case \"priority\": {\n const priorityOrder: Record<TaskListPriority, number> = {\n urgent: 0,\n high: 1,\n medium: 2,\n low: 3,\n }\n const aPriority = a.priority ? priorityOrder[a.priority] : 4\n const bPriority = b.priority ? priorityOrder[b.priority] : 4\n comparison = aPriority - bPriority\n break\n }\n case \"status\": {\n const statusOrder: Record<TaskListStatus, number> = {\n \"in-progress\": 0,\n todo: 1,\n done: 2,\n }\n const aStatus = a.status ? statusOrder[a.status] : 3\n const bStatus = b.status ? statusOrder[b.status] : 3\n comparison = aStatus - bStatus\n break\n }\n case \"dueDate\": {\n const aDate = a.dueDate?.getTime() ?? Infinity\n const bDate = b.dueDate?.getTime() ?? Infinity\n comparison = aDate - bDate\n break\n }\n }\n\n return sortDirection === \"desc\" ? -comparison : comparison\n })\n}\n\n/**\n * Individual task item component\n */\nfunction TaskListItem({\n isSelected,\n onKeyDown,\n onSelect,\n onTaskClick,\n selectable,\n size,\n task,\n variant,\n}: {\n isSelected: boolean\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>, task: TaskItem) => void\n onSelect: (task: TaskItem) => void\n onTaskClick?: (task: TaskItem) => void\n selectable: boolean\n size: \"default\" | \"lg\" | \"sm\"\n task: TaskItem\n variant: \"compact\" | \"default\" | \"grouped\"\n}) {\n const handleClick = () => {\n if (selectable) {\n onSelect(task)\n }\n onTaskClick?.(task)\n }\n\n const handleKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n onKeyDown(event, task)\n }\n\n return (\n <div\n className={cn(\n taskListItemVariants({ size, variant }),\n isSelected && selectedItemStyles\n )}\n aria-selected={selectable ? isSelected : undefined}\n data-slot=\"task-list-item\"\n role=\"listitem\"\n tabIndex={0}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n >\n {/* Selection checkbox */}\n {selectable && (\n <div\n className={cn(\n \"flex h-5 w-5 shrink-0 items-center justify-center rounded border\",\n isSelected\n ? \"bg-primary border-primary text-primary-foreground\"\n : \"border-input\"\n )}\n data-slot=\"task-list-checkbox\"\n >\n {isSelected && <Check className=\"h-3 w-3\" />}\n </div>\n )}\n\n {/* Status indicator */}\n {task.status && (\n <div\n className={cn(\"h-2 w-2 shrink-0 rounded-full\", statusStyles[task.status])}\n data-slot=\"task-list-status\"\n title={STATUS_LABELS[task.status]}\n />\n )}\n\n {/* Task content */}\n <div className=\"min-w-0 flex-1\" data-slot=\"task-list-content\">\n <div className=\"flex items-start justify-between gap-2\">\n <span\n className={cn(\n \"font-medium text-foreground\",\n task.status === \"done\" && \"line-through opacity-70\"\n )}\n data-slot=\"task-list-title\"\n >\n {task.title}\n </span>\n\n {/* Priority badge */}\n {task.priority && (\n <span\n className={cn(\n \"shrink-0 rounded px-1.5 py-0.5 text-xs font-medium\",\n priorityStyles[task.priority]\n )}\n data-slot=\"task-list-priority\"\n >\n {PRIORITY_LABELS[task.priority]}\n </span>\n )}\n </div>\n\n {/* Description */}\n {task.description && (\n <p\n className=\"mt-1 text-sm text-muted-foreground line-clamp-2\"\n data-slot=\"task-list-description\"\n >\n {task.description}\n </p>\n )}\n\n {/* Tags and metadata */}\n <div className=\"mt-2 flex flex-wrap items-center gap-2\">\n {/* Tags */}\n {task.tags && task.tags.length > 0 && (\n <div className=\"flex flex-wrap gap-1\" data-slot=\"task-list-tags\">\n {task.tags.map((tag) => (\n <span\n key={tag}\n className=\"rounded bg-muted px-1.5 py-0.5 text-xs text-muted-foreground\"\n >\n {tag}\n </span>\n ))}\n </div>\n )}\n\n {/* Due date */}\n {task.dueDate && (\n <span\n className=\"text-xs text-muted-foreground\"\n data-slot=\"task-list-due-date\"\n >\n Due: {task.dueDate.toLocaleDateString()}\n </span>\n )}\n\n {/* Assignee */}\n {task.assignee && (\n <div\n className=\"flex items-center gap-1\"\n data-slot=\"task-list-assignee\"\n >\n {task.assignee.avatar ? (\n <img\n alt={task.assignee.name}\n className=\"h-5 w-5 rounded-full\"\n src={task.assignee.avatar}\n />\n ) : (\n <div className=\"flex h-5 w-5 items-center justify-center rounded-full bg-muted text-xs\">\n {task.assignee.name.charAt(0).toUpperCase()}\n </div>\n )}\n <span className=\"text-xs text-muted-foreground\">\n {task.assignee.name}\n </span>\n </div>\n )}\n </div>\n </div>\n </div>\n )\n}\n\n/**\n * Loading skeleton for task items\n */\nfunction TaskListSkeleton({ count = 3 }: { count?: number }) {\n return (\n <>\n {Array.from({ length: count }).map((_, index) => (\n <div\n key={`skeleton-${String(index)}`}\n className={cn(taskListItemVariants({}), loadingStyles)}\n data-slot=\"task-list-skeleton\"\n >\n <div className=\"h-2 w-2 shrink-0 rounded-full bg-muted\" />\n <div className=\"min-w-0 flex-1 space-y-2\">\n <div className=\"h-4 w-3/4 rounded bg-muted\" />\n <div className=\"h-3 w-1/2 rounded bg-muted\" />\n </div>\n </div>\n ))}\n </>\n )\n}\n\n/**\n * TaskList component displays a list of tasks with optional selection, filtering, and sorting.\n *\n * @example\n * ```tsx\n * const tasks = [\n * { id: \"1\", title: \"Task 1\", status: \"todo\" },\n * { id: \"2\", title: \"Task 2\", status: \"in-progress\" },\n * { id: \"3\", title: \"Task 3\", status: \"done\" },\n * ]\n *\n * <TaskList tasks={tasks} title=\"My Tasks\" />\n * ```\n */\nfunction TaskList({\n className,\n empty,\n filterable = false,\n groupBy,\n loading = false,\n onSelect,\n onTaskClick,\n selectable = false,\n size = \"default\",\n sortable = false,\n tasks = [],\n title,\n variant = \"default\",\n ...props\n}: TaskListProps) {\n const [selectedIds, setSelectedIds] = useState<Set<string>>(() => new Set())\n const [sortField, setSortField] = useState<\"dueDate\" | \"priority\" | \"status\" | \"title\">(\"title\")\n const [sortDirection, setSortDirection] = useState<\"asc\" | \"desc\">(\"asc\")\n const [filterStatus, setFilterStatus] = useState<null | TaskListStatus>(null)\n\n // Filter tasks\n const filteredTasks = useMemo(() => {\n if (!filterStatus) return tasks\n return tasks.filter((task) => task.status === filterStatus)\n }, [tasks, filterStatus])\n\n // Sort tasks\n const sortedTasks = useMemo(() => {\n if (!sortable) return filteredTasks\n return sortTasks(filteredTasks, sortField, sortDirection)\n }, [filteredTasks, sortable, sortField, sortDirection])\n\n // Group tasks if groupBy is specified\n const groupedTasks = useMemo(() => {\n if (!groupBy) return null\n return groupTasks(sortedTasks, groupBy)\n }, [sortedTasks, groupBy])\n\n // Handle selection\n const handleSelect = useCallback(\n (task: TaskItem) => {\n if (!selectable) return\n\n const newSelected = new Set(selectedIds)\n if (newSelected.has(task.id)) {\n newSelected.delete(task.id)\n } else {\n newSelected.add(task.id)\n }\n setSelectedIds(newSelected)\n\n if (onSelect) {\n const selectedTasks = tasks.filter((t) => newSelected.has(t.id))\n onSelect(selectedTasks)\n }\n },\n [selectable, selectedIds, tasks, onSelect]\n )\n\n // Handle keyboard navigation\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>, task: TaskItem) => {\n if (event.key === \" \" || event.key === \"Spacebar\") {\n event.preventDefault()\n if (selectable) {\n handleSelect(task)\n }\n } else if (event.key === \"Enter\") {\n onTaskClick?.(task)\n }\n },\n [selectable, handleSelect, onTaskClick]\n )\n\n // Toggle sort direction\n const toggleSort = (field: \"dueDate\" | \"priority\" | \"status\" | \"title\") => {\n if (sortField === field) {\n setSortDirection((prev) => (prev === \"asc\" ? \"desc\" : \"asc\"))\n } else {\n setSortField(field)\n setSortDirection(\"asc\")\n }\n }\n\n // Render task items\n const renderTaskItems = (tasksToRender: TaskItem[]) =>\n tasksToRender.map((task) => (\n <TaskListItem\n key={task.id}\n isSelected={selectedIds.has(task.id)}\n selectable={selectable}\n size={size ?? \"default\"}\n task={task}\n variant={variant ?? \"default\"}\n onKeyDown={handleKeyDown}\n onSelect={handleSelect}\n onTaskClick={onTaskClick}\n />\n ))\n\n return (\n <div\n aria-label={title ?? \"Task list\"}\n aria-live=\"polite\"\n className={cn(taskListVariants({ size, variant }), className)}\n data-slot=\"task-list\"\n role=\"list\"\n {...props}\n >\n {/* Header - uses || intentionally for boolean truthiness check */}\n {/* eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing */}\n {(title || filterable || sortable) && (\n <div\n className={taskListHeaderVariants({ size })}\n data-slot=\"task-list-header\"\n >\n {title && (\n <h2\n className={taskListTitleVariants({ size })}\n data-slot=\"task-list-title\"\n >\n {title}\n </h2>\n )}\n\n <div className=\"flex items-center gap-2\" data-slot=\"task-list-controls\">\n {/* Filter controls */}\n {filterable && (\n <div className=\"flex items-center gap-1\">\n <Filter className=\"h-4 w-4 text-muted-foreground\" />\n <select\n aria-label=\"Filter by status\"\n className=\"rounded border border-input bg-background px-2 py-1 text-sm\"\n value={filterStatus ?? \"\"}\n onChange={(e) =>\n { setFilterStatus(\n e.target.value ? (e.target.value as TaskListStatus) : null\n ); }\n }\n >\n <option value=\"\">All</option>\n <option value=\"todo\">To Do</option>\n <option value=\"in-progress\">In Progress</option>\n <option value=\"done\">Done</option>\n </select>\n {filterStatus && (\n <button\n aria-label=\"Clear filter\"\n className=\"rounded p-1 hover:bg-muted\"\n type=\"button\"\n onClick={() => { setFilterStatus(null); }}\n >\n <X className=\"h-3 w-3\" />\n </button>\n )}\n </div>\n )}\n\n {/* Sort controls */}\n {sortable && (\n <div className=\"flex items-center gap-1\">\n <select\n aria-label=\"Sort by\"\n className=\"rounded border border-input bg-background px-2 py-1 text-sm\"\n value={sortField}\n onChange={(e) =>\n { setSortField(\n e.target.value as \"dueDate\" | \"priority\" | \"status\" | \"title\"\n ); }\n }\n >\n <option value=\"title\">Title</option>\n <option value=\"priority\">Priority</option>\n <option value=\"status\">Status</option>\n <option value=\"dueDate\">Due Date</option>\n </select>\n <button\n aria-label={`Sort ${sortDirection === \"asc\" ? \"descending\" : \"ascending\"}`}\n className=\"rounded p-1 hover:bg-muted\"\n type=\"button\"\n onClick={() => { toggleSort(sortField); }}\n >\n {sortDirection === \"asc\" ? (\n <ChevronUp className=\"h-4 w-4\" />\n ) : (\n <ChevronDown className=\"h-4 w-4\" />\n )}\n </button>\n </div>\n )}\n </div>\n </div>\n )}\n\n {/* Items container */}\n <div data-slot=\"task-list-items\">\n {/* Loading state */}\n {loading && <TaskListSkeleton />}\n\n {/* Empty state */}\n {!loading && sortedTasks.length === 0 && (\n <div className={emptyStateStyles} data-slot=\"task-list-empty\">\n {empty ?? \"No tasks to display\"}\n </div>\n )}\n\n {/* Grouped tasks */}\n {!loading && groupedTasks && sortedTasks.length > 0 && (\n <>\n {[...groupedTasks.entries()].map(([group, groupTasks]) => (\n <div key={group} data-slot=\"task-list-group\">\n <div className={groupHeaderStyles} data-slot=\"task-list-group-header\">\n {group} ({groupTasks.length})\n </div>\n {renderTaskItems(groupTasks)}\n </div>\n ))}\n </>\n )}\n\n {/* Ungrouped tasks */}\n {!loading && !groupedTasks && sortedTasks.length > 0 && renderTaskItems(sortedTasks)}\n </div>\n </div>\n )\n}\n\nexport { TaskList }\nexport type { TaskItem, TaskListProps }\n"]}
|