silver-ui 0.2.0 → 0.3.1
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/README.md +2 -1
- package/dist/{chunk-E7UOFIBW.cjs → chunk-23NN5WRP.cjs} +7 -6
- package/dist/chunk-23NN5WRP.cjs.map +1 -0
- package/dist/{chunk-3SLWOIT4.cjs → chunk-276LEL3G.cjs} +15 -6
- package/dist/chunk-276LEL3G.cjs.map +1 -0
- package/dist/chunk-2PSZAWLC.js +8 -0
- package/dist/chunk-2PSZAWLC.js.map +1 -0
- package/dist/{chunk-5MDH6QZE.js → chunk-2XAA3CM5.js} +7 -10
- package/dist/chunk-2XAA3CM5.js.map +1 -0
- package/dist/{chunk-SA3LUT6E.js → chunk-3DJ46WN4.js} +5 -5
- package/dist/{chunk-SA3LUT6E.js.map → chunk-3DJ46WN4.js.map} +1 -1
- package/dist/{chunk-JMLJLDHO.cjs → chunk-3IBY374V.cjs} +9 -9
- package/dist/{chunk-JMLJLDHO.cjs.map → chunk-3IBY374V.cjs.map} +1 -1
- package/dist/{chunk-7MB2KK6X.js → chunk-3L6KAW7G.js} +5 -5
- package/dist/{chunk-7MB2KK6X.js.map → chunk-3L6KAW7G.js.map} +1 -1
- package/dist/{chunk-WVQDFCFQ.js → chunk-3TXVDCF2.js} +4 -4
- package/dist/chunk-3TXVDCF2.js.map +1 -0
- package/dist/{chunk-P4A7GWQY.cjs → chunk-3XDUR3IG.cjs} +7 -6
- package/dist/chunk-3XDUR3IG.cjs.map +1 -0
- package/dist/{chunk-XHTKGOQV.cjs → chunk-3ZFEBOXD.cjs} +29 -18
- package/dist/chunk-3ZFEBOXD.cjs.map +1 -0
- package/dist/{chunk-UYKFE7KF.js → chunk-4CVDLMD6.js} +15 -6
- package/dist/chunk-4CVDLMD6.js.map +1 -0
- package/dist/{chunk-UUIAGGFW.cjs → chunk-4H35H54I.cjs} +35 -33
- package/dist/chunk-4H35H54I.cjs.map +1 -0
- package/dist/chunk-4MRORQNN.js +213 -0
- package/dist/chunk-4MRORQNN.js.map +1 -0
- package/dist/{chunk-CPZWTWYQ.js → chunk-54J6FRPG.js} +21 -16
- package/dist/chunk-54J6FRPG.js.map +1 -0
- package/dist/chunk-5AYGQJOW.js +162 -0
- package/dist/chunk-5AYGQJOW.js.map +1 -0
- package/dist/{chunk-GGZGVAEF.cjs → chunk-5BCLEOFF.cjs} +19 -16
- package/dist/chunk-5BCLEOFF.cjs.map +1 -0
- package/dist/{chunk-MEBIRX2P.js → chunk-5D4LRSIV.js} +6 -5
- package/dist/chunk-5D4LRSIV.js.map +1 -0
- package/dist/{chunk-4YQTSHIB.cjs → chunk-5GNYP3PH.cjs} +256 -209
- package/dist/chunk-5GNYP3PH.cjs.map +1 -0
- package/dist/{chunk-3DZPRXMC.cjs → chunk-5TT4PGZO.cjs} +6 -6
- package/dist/chunk-5TT4PGZO.cjs.map +1 -0
- package/dist/{chunk-AJYVGSBW.cjs → chunk-65QAZWOG.cjs} +4 -4
- package/dist/chunk-65QAZWOG.cjs.map +1 -0
- package/dist/{chunk-TZQWZ7IL.cjs → chunk-66LRFIYK.cjs} +8 -7
- package/dist/chunk-66LRFIYK.cjs.map +1 -0
- package/dist/{chunk-BDPE6ZKX.cjs → chunk-6MOJEGDU.cjs} +3 -3
- package/dist/{chunk-BDPE6ZKX.cjs.map → chunk-6MOJEGDU.cjs.map} +1 -1
- package/dist/{chunk-BA2VUDQS.js → chunk-6NTDPZWP.js} +3 -3
- package/dist/{chunk-BA2VUDQS.js.map → chunk-6NTDPZWP.js.map} +1 -1
- package/dist/{chunk-35MFOORC.js → chunk-6USJ4LJJ.js} +4 -4
- package/dist/{chunk-35MFOORC.js.map → chunk-6USJ4LJJ.js.map} +1 -1
- package/dist/{chunk-36QGPGT2.cjs → chunk-6W3L6IJB.cjs} +13 -12
- package/dist/chunk-6W3L6IJB.cjs.map +1 -0
- package/dist/{chunk-7P3VY5JZ.js → chunk-75CPTIET.js} +8 -7
- package/dist/chunk-75CPTIET.js.map +1 -0
- package/dist/{chunk-J2FCNWYM.js → chunk-76B2VLID.js} +82 -88
- package/dist/chunk-76B2VLID.js.map +1 -0
- package/dist/{chunk-FHKB6MBQ.js → chunk-7MN4JDP7.js} +31 -16
- package/dist/chunk-7MN4JDP7.js.map +1 -0
- package/dist/{chunk-3DFRJSNE.cjs → chunk-7PNLMDAR.cjs} +8 -8
- package/dist/{chunk-3DFRJSNE.cjs.map → chunk-7PNLMDAR.cjs.map} +1 -1
- package/dist/{chunk-ABEOBHAM.cjs → chunk-7U7RP6N2.cjs} +8 -8
- package/dist/{chunk-ABEOBHAM.cjs.map → chunk-7U7RP6N2.cjs.map} +1 -1
- package/dist/{chunk-463O56TB.js → chunk-AJTJD5C6.js} +6 -6
- package/dist/{chunk-463O56TB.js.map → chunk-AJTJD5C6.js.map} +1 -1
- package/dist/chunk-AMFFE5UJ.js +216 -0
- package/dist/chunk-AMFFE5UJ.js.map +1 -0
- package/dist/{chunk-K6CQ45C2.js → chunk-ASJ5CBCR.js} +7 -6
- package/dist/chunk-ASJ5CBCR.js.map +1 -0
- package/dist/{chunk-ESJND7B6.js → chunk-BA4A7C7U.js} +12 -9
- package/dist/chunk-BA4A7C7U.js.map +1 -0
- package/dist/{chunk-KFEXS6OK.cjs → chunk-BAPCHFNX.cjs} +10 -9
- package/dist/chunk-BAPCHFNX.cjs.map +1 -0
- package/dist/{chunk-O3T7Z6RH.cjs → chunk-BRB52QFV.cjs} +14 -54
- package/dist/chunk-BRB52QFV.cjs.map +1 -0
- package/dist/chunk-BS55BG2U.cjs +164 -0
- package/dist/chunk-BS55BG2U.cjs.map +1 -0
- package/dist/{chunk-TH3H5UGK.cjs → chunk-CEU7BIL6.cjs} +11 -11
- package/dist/{chunk-TH3H5UGK.cjs.map → chunk-CEU7BIL6.cjs.map} +1 -1
- package/dist/{chunk-VBL5SI5N.js → chunk-CN2HJ7CP.js} +212 -183
- package/dist/chunk-CN2HJ7CP.js.map +1 -0
- package/dist/{chunk-PXVVTPRJ.js → chunk-CRQXHA7N.js} +9 -8
- package/dist/chunk-CRQXHA7N.js.map +1 -0
- package/dist/{chunk-SXIBQQ55.js → chunk-CZC2K5GJ.js} +10 -9
- package/dist/chunk-CZC2K5GJ.js.map +1 -0
- package/dist/{chunk-WA4VZ363.cjs → chunk-CZM5FAWL.cjs} +11 -10
- package/dist/chunk-CZM5FAWL.cjs.map +1 -0
- package/dist/{chunk-3JVD4AXC.js → chunk-D2DOHX4W.js} +253 -206
- package/dist/chunk-D2DOHX4W.js.map +1 -0
- package/dist/chunk-D3SSMY73.cjs +80 -0
- package/dist/chunk-D3SSMY73.cjs.map +1 -0
- package/dist/{chunk-PTZAJW3J.js → chunk-DIIE44GO.js} +14 -13
- package/dist/chunk-DIIE44GO.js.map +1 -0
- package/dist/{chunk-S54CKWKV.js → chunk-DSB4Q3AS.js} +3 -3
- package/dist/{chunk-S54CKWKV.js.map → chunk-DSB4Q3AS.js.map} +1 -1
- package/dist/{chunk-AMG3S252.js → chunk-EBQ3A4XO.js} +9 -8
- package/dist/chunk-EBQ3A4XO.js.map +1 -0
- package/dist/{chunk-2K44WLBJ.js → chunk-EC2ALHNJ.js} +73 -67
- package/dist/chunk-EC2ALHNJ.js.map +1 -0
- package/dist/{chunk-JEK5SVB5.cjs → chunk-EE2O457Z.cjs} +9 -9
- package/dist/{chunk-JEK5SVB5.cjs.map → chunk-EE2O457Z.cjs.map} +1 -1
- package/dist/{chunk-DP4KK2N4.cjs → chunk-EVKFA5FA.cjs} +32 -27
- package/dist/chunk-EVKFA5FA.cjs.map +1 -0
- package/dist/{chunk-MNVBSOAQ.cjs → chunk-F3NATTQG.cjs} +81 -75
- package/dist/chunk-F3NATTQG.cjs.map +1 -0
- package/dist/{chunk-OJCJPYXE.js → chunk-F3ZNRO6W.js} +8 -7
- package/dist/chunk-F3ZNRO6W.js.map +1 -0
- package/dist/{chunk-OHKL4DOV.js → chunk-FZCBTFHY.js} +7 -6
- package/dist/chunk-FZCBTFHY.js.map +1 -0
- package/dist/{chunk-Z7ID5TC7.cjs → chunk-GLJWAY4A.cjs} +15 -10
- package/dist/chunk-GLJWAY4A.cjs.map +1 -0
- package/dist/{chunk-7DWASA3K.js → chunk-GXRH5XQY.js} +89 -74
- package/dist/chunk-GXRH5XQY.js.map +1 -0
- package/dist/{chunk-WE2AXMPB.js → chunk-HNROO7CR.js} +230 -170
- package/dist/chunk-HNROO7CR.js.map +1 -0
- package/dist/{chunk-UJODHP7E.cjs → chunk-HPVXP3DG.cjs} +12 -11
- package/dist/chunk-HPVXP3DG.cjs.map +1 -0
- package/dist/chunk-HVUYVPQL.cjs +193 -0
- package/dist/chunk-HVUYVPQL.cjs.map +1 -0
- package/dist/{chunk-PWL6TWVC.cjs → chunk-I7KILUVL.cjs} +13 -12
- package/dist/chunk-I7KILUVL.cjs.map +1 -0
- package/dist/{chunk-UY3MYNI6.js → chunk-IHM2M74J.js} +5 -4
- package/dist/chunk-IHM2M74J.js.map +1 -0
- package/dist/{chunk-4M2KCZMO.js → chunk-IRSJHEYI.js} +5 -4
- package/dist/chunk-IRSJHEYI.js.map +1 -0
- package/dist/{chunk-MX2F3HUI.cjs → chunk-JEIQ5GDK.cjs} +25 -24
- package/dist/chunk-JEIQ5GDK.cjs.map +1 -0
- package/dist/{chunk-YXYD5HKL.cjs → chunk-KFDHP4WP.cjs} +4 -4
- package/dist/{chunk-YXYD5HKL.cjs.map → chunk-KFDHP4WP.cjs.map} +1 -1
- package/dist/{chunk-FDSUILCM.cjs → chunk-KRZ57O2J.cjs} +3 -4
- package/dist/chunk-KRZ57O2J.cjs.map +1 -0
- package/dist/{chunk-W3QVSVL7.cjs → chunk-L5YTMHDI.cjs} +11 -10
- package/dist/chunk-L5YTMHDI.cjs.map +1 -0
- package/dist/{chunk-PNYF6NS4.cjs → chunk-L7BOLGF2.cjs} +8 -7
- package/dist/chunk-L7BOLGF2.cjs.map +1 -0
- package/dist/{chunk-QPYPPJEZ.js → chunk-LHP47U6H.js} +5 -4
- package/dist/chunk-LHP47U6H.js.map +1 -0
- package/dist/{chunk-EBCHOGKT.js → chunk-LUBVZVY3.js} +17 -16
- package/dist/chunk-LUBVZVY3.js.map +1 -0
- package/dist/{chunk-47FUQCAT.cjs → chunk-LX64ENLC.cjs} +66 -51
- package/dist/chunk-LX64ENLC.cjs.map +1 -0
- package/dist/{chunk-GYUWDJXS.cjs → chunk-M3BF3BBJ.cjs} +13 -12
- package/dist/chunk-M3BF3BBJ.cjs.map +1 -0
- package/dist/chunk-M3IKL2VG.js +393 -0
- package/dist/chunk-M3IKL2VG.js.map +1 -0
- package/dist/{chunk-RSG7N5QQ.cjs → chunk-M3RNFDA2.cjs} +14 -13
- package/dist/chunk-M3RNFDA2.cjs.map +1 -0
- package/dist/{chunk-U4GWNENK.js → chunk-M4JUQCKP.js} +3 -3
- package/dist/chunk-M4JUQCKP.js.map +1 -0
- package/dist/{chunk-YUONTRNC.js → chunk-MGVEX3RS.js} +7 -7
- package/dist/{chunk-YUONTRNC.js.map → chunk-MGVEX3RS.js.map} +1 -1
- package/dist/chunk-MSNRGNVY.cjs +216 -0
- package/dist/chunk-MSNRGNVY.cjs.map +1 -0
- package/dist/{chunk-IXJOPMJX.cjs → chunk-MUUPZEZ5.cjs} +7 -6
- package/dist/chunk-MUUPZEZ5.cjs.map +1 -0
- package/dist/{chunk-XVRQSTUF.js → chunk-N2TNBDQI.js} +4 -3
- package/dist/chunk-N2TNBDQI.js.map +1 -0
- package/dist/{chunk-CBJ4APCT.js → chunk-NH7KH7QP.js} +5 -4
- package/dist/chunk-NH7KH7QP.js.map +1 -0
- package/dist/{chunk-76FHSISK.cjs → chunk-NHXJVSZZ.cjs} +7 -10
- package/dist/chunk-NHXJVSZZ.cjs.map +1 -0
- package/dist/{chunk-4I6VIR44.cjs → chunk-NYQPIBOD.cjs} +12 -11
- package/dist/chunk-NYQPIBOD.cjs.map +1 -0
- package/dist/{chunk-BTL6GUMN.js → chunk-O4RTJESR.js} +3 -3
- package/dist/{chunk-BTL6GUMN.js.map → chunk-O4RTJESR.js.map} +1 -1
- package/dist/{chunk-DZ3NHSJ4.js → chunk-O5A47TA2.js} +5 -4
- package/dist/chunk-O5A47TA2.js.map +1 -0
- package/dist/{chunk-HMWV6KCW.cjs → chunk-OSBVDRVD.cjs} +17 -16
- package/dist/chunk-OSBVDRVD.cjs.map +1 -0
- package/dist/{chunk-NF63IRZR.cjs → chunk-OULO3YDQ.cjs} +6 -5
- package/dist/chunk-OULO3YDQ.cjs.map +1 -0
- package/dist/{chunk-POW2Z7TP.js → chunk-OWBNRALR.js} +5 -5
- package/dist/{chunk-POW2Z7TP.js.map → chunk-OWBNRALR.js.map} +1 -1
- package/dist/{chunk-GEGYC7CE.js → chunk-P6RAOXJA.js} +5 -5
- package/dist/chunk-P6RAOXJA.js.map +1 -0
- package/dist/{chunk-MMQIQILP.cjs → chunk-PJMV2HTO.cjs} +27 -29
- package/dist/chunk-PJMV2HTO.cjs.map +1 -0
- package/dist/{chunk-3WMLV4VP.cjs → chunk-PL6J55JB.cjs} +6 -6
- package/dist/chunk-PL6J55JB.cjs.map +1 -0
- package/dist/chunk-PQRIV5XU.js +242 -0
- package/dist/chunk-PQRIV5XU.js.map +1 -0
- package/dist/chunk-PZ63ZCEO.cjs +470 -0
- package/dist/chunk-PZ63ZCEO.cjs.map +1 -0
- package/dist/{chunk-AKTUU5ML.js → chunk-Q3OA23V5.js} +17 -19
- package/dist/chunk-Q3OA23V5.js.map +1 -0
- package/dist/chunk-QAO6QMNQ.cjs +10 -0
- package/dist/chunk-QAO6QMNQ.cjs.map +1 -0
- package/dist/{chunk-O2ZMOBMA.cjs → chunk-QCT4BPB6.cjs} +21 -21
- package/dist/{chunk-O2ZMOBMA.cjs.map → chunk-QCT4BPB6.cjs.map} +1 -1
- package/dist/{chunk-JMNH45Q3.cjs → chunk-QEFE4QBL.cjs} +81 -87
- package/dist/chunk-QEFE4QBL.cjs.map +1 -0
- package/dist/{chunk-ZP3UZDSV.cjs → chunk-QEX7V7TI.cjs} +10 -9
- package/dist/chunk-QEX7V7TI.cjs.map +1 -0
- package/dist/chunk-QGHFUOUB.cjs +112 -0
- package/dist/chunk-QGHFUOUB.cjs.map +1 -0
- package/dist/{chunk-VQ7IRFRR.cjs → chunk-QL3YSC3H.cjs} +16 -15
- package/dist/chunk-QL3YSC3H.cjs.map +1 -0
- package/dist/{chunk-2VIJC4NW.cjs → chunk-QRKRVCA3.cjs} +238 -178
- package/dist/chunk-QRKRVCA3.cjs.map +1 -0
- package/dist/{chunk-S4GLMGFI.js → chunk-RINP34ZG.js} +5 -4
- package/dist/chunk-RINP34ZG.js.map +1 -0
- package/dist/{chunk-RRNT32KY.js → chunk-RVENUWRD.js} +15 -55
- package/dist/chunk-RVENUWRD.js.map +1 -0
- package/dist/{chunk-GTPRZCNZ.js → chunk-S4B2D427.js} +3 -3
- package/dist/{chunk-GTPRZCNZ.js.map → chunk-S4B2D427.js.map} +1 -1
- package/dist/{chunk-AXCE2HKG.js → chunk-S4LVSSJI.js} +11 -6
- package/dist/chunk-S4LVSSJI.js.map +1 -0
- package/dist/{chunk-L6JT244G.cjs → chunk-SSOAZZNR.cjs} +4 -3
- package/dist/chunk-SSOAZZNR.cjs.map +1 -0
- package/dist/{chunk-BZ4XKKNH.js → chunk-TF7IWMV2.js} +9 -8
- package/dist/chunk-TF7IWMV2.js.map +1 -0
- package/dist/{chunk-V7Q64Z3S.cjs → chunk-U2U4FMFM.cjs} +8 -8
- package/dist/{chunk-V7Q64Z3S.cjs.map → chunk-U2U4FMFM.cjs.map} +1 -1
- package/dist/chunk-U5GTHA44.cjs +395 -0
- package/dist/chunk-U5GTHA44.cjs.map +1 -0
- package/dist/chunk-UKDGDMWN.js +78 -0
- package/dist/chunk-UKDGDMWN.js.map +1 -0
- package/dist/chunk-UN35QV25.js +110 -0
- package/dist/chunk-UN35QV25.js.map +1 -0
- package/dist/{chunk-IR4COTIR.js → chunk-UPQHFW47.js} +4 -4
- package/dist/{chunk-IR4COTIR.js.map → chunk-UPQHFW47.js.map} +1 -1
- package/dist/{chunk-U5ZCQI5O.cjs → chunk-UXDXE7Z6.cjs} +41 -40
- package/dist/chunk-UXDXE7Z6.cjs.map +1 -0
- package/dist/{chunk-ZJ2NV4SQ.js → chunk-UYBGXFYX.js} +22 -21
- package/dist/chunk-UYBGXFYX.js.map +1 -0
- package/dist/{chunk-ZW2ATXTL.js → chunk-VAK4JQYL.js} +7 -6
- package/dist/chunk-VAK4JQYL.js.map +1 -0
- package/dist/{chunk-QADMIAYK.js → chunk-VEUZ5DZR.js} +6 -5
- package/dist/chunk-VEUZ5DZR.js.map +1 -0
- package/dist/{chunk-JVLE7PCJ.cjs → chunk-VJBBMBRT.cjs} +7 -7
- package/dist/{chunk-JVLE7PCJ.cjs.map → chunk-VJBBMBRT.cjs.map} +1 -1
- package/dist/chunk-VVO7GIHG.cjs +220 -0
- package/dist/chunk-VVO7GIHG.cjs.map +1 -0
- package/dist/{chunk-BDBHHJGN.cjs → chunk-W3KMDQKP.cjs} +8 -7
- package/dist/chunk-W3KMDQKP.cjs.map +1 -0
- package/dist/{chunk-UC36KIEP.cjs → chunk-WGCGHFXE.cjs} +2 -3
- package/dist/chunk-WGCGHFXE.cjs.map +1 -0
- package/dist/{chunk-74ONIT6C.js → chunk-WO6FS4DV.js} +5 -4
- package/dist/chunk-WO6FS4DV.js.map +1 -0
- package/dist/chunk-WYE3VOFK.cjs +244 -0
- package/dist/chunk-WYE3VOFK.cjs.map +1 -0
- package/dist/{chunk-3IDEWEDY.cjs → chunk-X2GRBPCJ.cjs} +89 -74
- package/dist/chunk-X2GRBPCJ.cjs.map +1 -0
- package/dist/{chunk-4YQSKCVF.cjs → chunk-XADTIY7J.cjs} +4 -4
- package/dist/{chunk-4YQSKCVF.cjs.map → chunk-XADTIY7J.cjs.map} +1 -1
- package/dist/{chunk-63RKQ237.js → chunk-XUJZTD4E.js} +9 -8
- package/dist/chunk-XUJZTD4E.js.map +1 -0
- package/dist/{chunk-OJ3KVNW2.js → chunk-Y4FH67QZ.js} +8 -7
- package/dist/chunk-Y4FH67QZ.js.map +1 -0
- package/dist/{chunk-UQV5MOGR.js → chunk-YLGAJD6Q.js} +8 -6
- package/dist/chunk-YLGAJD6Q.js.map +1 -0
- package/dist/chunk-YNTPHZFJ.js +191 -0
- package/dist/chunk-YNTPHZFJ.js.map +1 -0
- package/dist/{chunk-OBBPRWYD.js → chunk-YSTESYUB.js} +24 -13
- package/dist/chunk-YSTESYUB.js.map +1 -0
- package/dist/{chunk-K77D7H4V.cjs → chunk-ZD3NPHZ7.cjs} +5 -4
- package/dist/chunk-ZD3NPHZ7.cjs.map +1 -0
- package/dist/{chunk-2RIDPITG.cjs → chunk-ZLATP3P5.cjs} +10 -8
- package/dist/chunk-ZLATP3P5.cjs.map +1 -0
- package/dist/{chunk-6NY5DOFM.js → chunk-ZVH3BLYO.js} +8 -7
- package/dist/chunk-ZVH3BLYO.js.map +1 -0
- package/dist/{chunk-STSR3FAC.js → chunk-ZWULWVN3.js} +30 -28
- package/dist/chunk-ZWULWVN3.js.map +1 -0
- package/dist/components/Accordion/AccordionItem.recipe.d.ts +1 -1
- package/dist/components/Accordion/index.cjs +5 -5
- package/dist/components/Accordion/index.js +2 -2
- package/dist/components/Alert/Alert.d.ts.map +1 -1
- package/dist/components/Alert/Alert.recipe.d.ts +1 -1
- package/dist/components/Alert/index.cjs +8 -7
- package/dist/components/Alert/index.js +7 -6
- package/dist/components/AlertDialog/index.cjs +10 -9
- package/dist/components/AlertDialog/index.js +8 -7
- package/dist/components/AppShell/AppShell.d.ts.map +1 -1
- package/dist/components/AppShell/index.cjs +16 -15
- package/dist/components/AppShell/index.js +13 -12
- package/dist/components/AutocompleteInput/AutocompleteInput.d.ts +6 -1
- package/dist/components/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/AutocompleteInput.recipe.d.ts +42 -0
- package/dist/components/AutocompleteInput/AutocompleteInput.recipe.d.ts.map +1 -0
- package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts +27 -4
- package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts +22 -2
- package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/index.cjs +14 -13
- package/dist/components/AutocompleteInput/index.d.ts +1 -1
- package/dist/components/AutocompleteInput/index.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/index.js +10 -9
- package/dist/components/AutocompleteInput/types.d.ts +39 -3
- package/dist/components/AutocompleteInput/types.d.ts.map +1 -1
- package/dist/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/components/Avatar/AvatarStatusDot.d.ts.map +1 -1
- package/dist/components/Avatar/index.cjs +6 -5
- package/dist/components/Avatar/index.js +3 -2
- package/dist/components/AvatarGroup/index.cjs +6 -5
- package/dist/components/AvatarGroup/index.js +4 -3
- package/dist/components/Blockquote/Blockquote.d.ts.map +1 -1
- package/dist/components/Blockquote/index.cjs +3 -6
- package/dist/components/Blockquote/index.d.ts +0 -1
- package/dist/components/Blockquote/index.d.ts.map +1 -1
- package/dist/components/Blockquote/index.js +2 -1
- package/dist/components/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/BreadcrumbItem.recipe.d.ts +22 -0
- package/dist/components/Breadcrumbs/BreadcrumbItem.recipe.d.ts.map +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/Breadcrumbs.recipe.d.ts +4 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.recipe.d.ts.map +1 -0
- package/dist/components/Breadcrumbs/index.cjs +6 -4
- package/dist/components/Breadcrumbs/index.js +3 -1
- package/dist/components/Button/Button.d.ts.map +1 -1
- package/dist/components/Button/Button.recipe.d.ts +80 -62
- package/dist/components/Button/Button.recipe.d.ts.map +1 -1
- package/dist/components/Button/index.cjs +7 -6
- package/dist/components/Button/index.js +6 -5
- package/dist/components/ButtonGroup/ButtonGroup.recipe.d.ts +4 -4
- package/dist/components/ButtonGroup/ButtonGroup.recipe.d.ts.map +1 -1
- package/dist/components/ButtonGroup/index.cjs +2 -2
- package/dist/components/ButtonGroup/index.js +1 -1
- package/dist/components/Calendar/Calendar.d.ts.map +1 -1
- package/dist/components/Calendar/Calendar.recipe.d.ts +86 -0
- package/dist/components/Calendar/Calendar.recipe.d.ts.map +1 -0
- package/dist/components/Calendar/index.cjs +8 -7
- package/dist/components/Calendar/index.js +7 -6
- package/dist/components/CheckboxInput/CheckboxInput.d.ts.map +1 -1
- package/dist/components/CheckboxInput/CheckboxInput.recipe.d.ts +39 -0
- package/dist/components/CheckboxInput/CheckboxInput.recipe.d.ts.map +1 -0
- package/dist/components/CheckboxInput/index.cjs +7 -6
- package/dist/components/CheckboxInput/index.js +6 -5
- package/dist/components/CodeBlock/index.cjs +9 -8
- package/dist/components/CodeBlock/index.d.ts +0 -1
- package/dist/components/CodeBlock/index.d.ts.map +1 -1
- package/dist/components/CodeBlock/index.js +8 -7
- package/dist/components/ContextMenu/index.cjs +13 -12
- package/dist/components/ContextMenu/index.js +11 -10
- package/dist/components/DateInput/DateInput.d.ts +5 -1
- package/dist/components/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/DateInput/index.cjs +11 -10
- package/dist/components/DateInput/index.js +10 -9
- package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/components/DateRangeInput/index.cjs +11 -10
- package/dist/components/DateRangeInput/index.js +10 -9
- package/dist/components/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/components/DateTimeInput/index.cjs +13 -12
- package/dist/components/DateTimeInput/index.js +12 -11
- package/dist/components/Divider/Divider.d.ts.map +1 -1
- package/dist/components/Divider/index.cjs +3 -2
- package/dist/components/Divider/index.js +2 -1
- package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/components/DropdownMenu/index.cjs +14 -13
- package/dist/components/DropdownMenu/index.js +10 -9
- package/dist/components/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/components/EmptyState/EmptyState.recipe.d.ts +13 -4
- package/dist/components/EmptyState/EmptyState.recipe.d.ts.map +1 -1
- package/dist/components/EmptyState/index.cjs +5 -3
- package/dist/components/EmptyState/index.js +4 -2
- package/dist/components/Field/Field.d.ts.map +1 -1
- package/dist/components/Field/index.cjs +6 -5
- package/dist/components/Field/index.js +4 -3
- package/dist/components/FileInput/FileInput.d.ts.map +1 -1
- package/dist/components/FileInput/index.cjs +9 -8
- package/dist/components/FileInput/index.js +8 -7
- package/dist/components/InputGroup/InputGroup.d.ts.map +1 -1
- package/dist/components/InputGroup/index.cjs +9 -8
- package/dist/components/InputGroup/index.js +5 -4
- package/dist/components/Item/Item.d.ts.map +1 -1
- package/dist/components/Item/index.cjs +4 -3
- package/dist/components/Item/index.js +3 -2
- package/dist/components/Kbd/index.d.ts +0 -1
- package/dist/components/Kbd/index.d.ts.map +1 -1
- package/dist/components/Layout/Layout.d.ts.map +1 -1
- package/dist/components/Layout/LayoutFooter.d.ts.map +1 -1
- package/dist/components/Layout/LayoutHeader.d.ts.map +1 -1
- package/dist/components/Layout/index.cjs +12 -11
- package/dist/components/Layout/index.js +7 -6
- package/dist/components/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/components/Lightbox/index.cjs +9 -8
- package/dist/components/Lightbox/index.js +7 -6
- package/dist/components/Link/index.cjs +1 -0
- package/dist/components/Link/index.js +1 -0
- package/dist/components/List/List.d.ts.map +1 -1
- package/dist/components/List/List.recipe.d.ts +42 -0
- package/dist/components/List/List.recipe.d.ts.map +1 -0
- package/dist/components/List/ListItem.d.ts.map +1 -1
- package/dist/components/List/index.cjs +7 -5
- package/dist/components/List/index.js +5 -3
- package/dist/components/MetadataList/index.cjs +4 -4
- package/dist/components/MetadataList/index.js +2 -2
- package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/dist/components/MultiSelect/index.cjs +11 -10
- package/dist/components/MultiSelect/index.js +10 -9
- package/dist/components/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/components/NumberInput/index.cjs +10 -9
- package/dist/components/NumberInput/index.js +9 -8
- package/dist/components/Pagination/index.cjs +8 -7
- package/dist/components/Pagination/index.js +7 -6
- package/dist/components/PasswordInput/index.cjs +11 -10
- package/dist/components/PasswordInput/index.js +10 -9
- package/dist/components/Popover/Popover.d.ts.map +1 -1
- package/dist/components/Popover/index.cjs +9 -8
- package/dist/components/Popover/index.js +7 -6
- package/dist/components/Progress/Progress.d.ts.map +1 -1
- package/dist/components/Progress/Progress.recipe.d.ts +34 -16
- package/dist/components/Progress/Progress.recipe.d.ts.map +1 -1
- package/dist/components/Progress/index.cjs +4 -2
- package/dist/components/Progress/index.js +3 -1
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroupItem.d.ts.map +1 -1
- package/dist/components/RadioGroup/index.cjs +8 -7
- package/dist/components/RadioGroup/index.d.ts +0 -1
- package/dist/components/RadioGroup/index.d.ts.map +1 -1
- package/dist/components/RadioGroup/index.js +6 -5
- package/dist/components/Rating/index.cjs +3 -7
- package/dist/components/Rating/index.d.ts +0 -1
- package/dist/components/Rating/index.d.ts.map +1 -1
- package/dist/components/Rating/index.js +2 -2
- package/dist/components/Schedule/index.cjs +23 -22
- package/dist/components/Schedule/index.js +12 -11
- package/dist/components/SearchFilterInput/SearchFilterInput.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/index.cjs +30 -29
- package/dist/components/SearchFilterInput/index.js +22 -21
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/Select/Select.recipe.d.ts +25 -0
- package/dist/components/Select/Select.recipe.d.ts.map +1 -0
- package/dist/components/Select/SelectOption.d.ts.map +1 -1
- package/dist/components/Select/index.cjs +13 -12
- package/dist/components/Select/index.js +11 -10
- package/dist/components/SideNav/SideNav.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavHeading.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavSection.d.ts.map +1 -1
- package/dist/components/SideNav/index.cjs +15 -14
- package/dist/components/SideNav/index.js +9 -8
- package/dist/components/Skeleton/index.cjs +2 -6
- package/dist/components/Skeleton/index.d.ts +0 -1
- package/dist/components/Skeleton/index.d.ts.map +1 -1
- package/dist/components/Skeleton/index.js +1 -1
- package/dist/components/Slider/Slider.d.ts.map +1 -1
- package/dist/components/Slider/index.cjs +6 -9
- package/dist/components/Slider/index.d.ts +0 -1
- package/dist/components/Slider/index.d.ts.map +1 -1
- package/dist/components/Slider/index.js +5 -4
- package/dist/components/Spinner/index.cjs +3 -3
- package/dist/components/Spinner/index.js +2 -2
- package/dist/components/SplitButton/SplitButton.d.ts +89 -0
- package/dist/components/SplitButton/SplitButton.d.ts.map +1 -0
- package/dist/components/SplitButton/index.cjs +35 -0
- package/dist/components/SplitButton/index.cjs.map +1 -0
- package/dist/components/SplitButton/index.d.ts +2 -0
- package/dist/components/SplitButton/index.d.ts.map +1 -0
- package/dist/components/SplitButton/index.js +26 -0
- package/dist/components/SplitButton/index.js.map +1 -0
- package/dist/components/Stack/HStack.d.ts +1 -1
- package/dist/components/Stack/HStack.d.ts.map +1 -1
- package/dist/components/Stack/VStack.d.ts +1 -1
- package/dist/components/Stack/VStack.d.ts.map +1 -1
- package/dist/components/Stack/index.cjs +3 -3
- package/dist/components/Stack/index.d.ts +1 -1
- package/dist/components/Stack/index.d.ts.map +1 -1
- package/dist/components/Stack/index.js +1 -1
- package/dist/components/Stack/{Stack.d.ts → internal/Stack.d.ts} +13 -3
- package/dist/components/Stack/internal/Stack.d.ts.map +1 -0
- package/dist/components/Stack/{Stack.recipe.d.ts → internal/Stack.recipe.d.ts} +1 -1
- package/dist/components/Stack/internal/Stack.recipe.d.ts.map +1 -0
- package/dist/components/Stepper/Step.d.ts.map +1 -1
- package/dist/components/Stepper/index.cjs +6 -5
- package/dist/components/Stepper/index.js +3 -2
- package/dist/components/Switch/Switch.d.ts.map +1 -1
- package/dist/components/Switch/index.cjs +6 -5
- package/dist/components/Switch/index.js +5 -4
- package/dist/components/Table/BaseTable.d.ts.map +1 -1
- package/dist/components/Table/index.cjs +53 -52
- package/dist/components/Table/index.js +25 -24
- package/dist/components/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
- package/dist/components/Tabs/Tab.d.ts.map +1 -1
- package/dist/components/Tabs/index.cjs +13 -12
- package/dist/components/Tabs/index.js +8 -7
- package/dist/components/Tag/Tag.d.ts +2 -2
- package/dist/components/Tag/Tag.d.ts.map +1 -1
- package/dist/components/Tag/Tag.recipe.d.ts +103 -68
- package/dist/components/Tag/Tag.recipe.d.ts.map +1 -1
- package/dist/components/Tag/index.cjs +4 -2
- package/dist/components/Tag/index.js +3 -1
- package/dist/components/TagsInput/TagsInput.d.ts.map +1 -1
- package/dist/components/TagsInput/index.cjs +12 -11
- package/dist/components/TagsInput/index.js +11 -10
- package/dist/components/Text/Heading.d.ts.map +1 -1
- package/dist/components/Text/Text.d.ts.map +1 -1
- package/dist/components/Text/index.cjs +3 -3
- package/dist/components/Text/index.js +1 -1
- package/dist/components/TextArea/TextArea.d.ts.map +1 -1
- package/dist/components/TextArea/index.cjs +7 -6
- package/dist/components/TextArea/index.js +6 -5
- package/dist/components/TextInput/TextInput.d.ts.map +1 -1
- package/dist/components/TextInput/index.cjs +10 -9
- package/dist/components/TextInput/index.js +9 -8
- package/dist/components/Thumbnail/Thumbnail.recipe.d.ts +1 -1
- package/dist/components/Thumbnail/index.cjs +9 -8
- package/dist/components/Thumbnail/index.d.ts +0 -1
- package/dist/components/Thumbnail/index.d.ts.map +1 -1
- package/dist/components/Thumbnail/index.js +8 -7
- package/dist/components/TimeInput/TimeInput.d.ts +10 -2
- package/dist/components/TimeInput/TimeInput.d.ts.map +1 -1
- package/dist/components/TimeInput/index.cjs +9 -8
- package/dist/components/TimeInput/index.js +8 -7
- package/dist/components/Toast/Toast.d.ts.map +1 -1
- package/dist/components/Toast/Toast.recipe.d.ts +39 -0
- package/dist/components/Toast/Toast.recipe.d.ts.map +1 -0
- package/dist/components/Toast/ToastViewport.d.ts.map +1 -1
- package/dist/components/Toast/index.cjs +10 -9
- package/dist/components/Toast/index.js +7 -6
- package/dist/components/ToggleButton/index.cjs +7 -7
- package/dist/components/ToggleButton/index.js +5 -5
- package/dist/components/TopNav/TopNav.d.ts.map +1 -1
- package/dist/components/TopNav/TopNavHeading.d.ts.map +1 -1
- package/dist/components/TopNav/index.cjs +15 -14
- package/dist/components/TopNav/index.js +9 -8
- package/dist/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/components/TreeView/TreeViewItem.d.ts.map +1 -1
- package/dist/components/TreeView/index.cjs +3 -2
- package/dist/components/TreeView/index.js +2 -1
- package/dist/index.cjs +229 -227
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +66 -64
- package/dist/index.js.map +1 -1
- package/dist/internal/MobileNav/MobileNav.d.ts.map +1 -1
- package/dist/internal/OverflowList.d.ts.map +1 -1
- package/dist/internal/index.d.ts +1 -0
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/isReactNode.d.ts +3 -0
- package/dist/internal/isReactNode.d.ts.map +1 -0
- package/dist/internal/useSelectListbox.d.ts +2 -2
- package/dist/internal/useSelectListbox.d.ts.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/dist/chunk-2K44WLBJ.js.map +0 -1
- package/dist/chunk-2RIDPITG.cjs.map +0 -1
- package/dist/chunk-2VIJC4NW.cjs.map +0 -1
- package/dist/chunk-36QGPGT2.cjs.map +0 -1
- package/dist/chunk-3DZPRXMC.cjs.map +0 -1
- package/dist/chunk-3IDEWEDY.cjs.map +0 -1
- package/dist/chunk-3JVD4AXC.js.map +0 -1
- package/dist/chunk-3SLWOIT4.cjs.map +0 -1
- package/dist/chunk-3WMLV4VP.cjs.map +0 -1
- package/dist/chunk-47FUQCAT.cjs.map +0 -1
- package/dist/chunk-4I6VIR44.cjs.map +0 -1
- package/dist/chunk-4M2KCZMO.js.map +0 -1
- package/dist/chunk-4YESF35X.cjs +0 -211
- package/dist/chunk-4YESF35X.cjs.map +0 -1
- package/dist/chunk-4YQTSHIB.cjs.map +0 -1
- package/dist/chunk-5MDH6QZE.js.map +0 -1
- package/dist/chunk-63RKQ237.js.map +0 -1
- package/dist/chunk-6D3FA247.js +0 -126
- package/dist/chunk-6D3FA247.js.map +0 -1
- package/dist/chunk-6NY5DOFM.js.map +0 -1
- package/dist/chunk-74ONIT6C.js.map +0 -1
- package/dist/chunk-76FHSISK.cjs.map +0 -1
- package/dist/chunk-77RGTGRM.cjs +0 -128
- package/dist/chunk-77RGTGRM.cjs.map +0 -1
- package/dist/chunk-7DWASA3K.js.map +0 -1
- package/dist/chunk-7P3VY5JZ.js.map +0 -1
- package/dist/chunk-AJYVGSBW.cjs.map +0 -1
- package/dist/chunk-AKTUU5ML.js.map +0 -1
- package/dist/chunk-AMG3S252.js.map +0 -1
- package/dist/chunk-AXCE2HKG.js.map +0 -1
- package/dist/chunk-BDBHHJGN.cjs.map +0 -1
- package/dist/chunk-BZ4XKKNH.js.map +0 -1
- package/dist/chunk-CBJ4APCT.js.map +0 -1
- package/dist/chunk-CPZWTWYQ.js.map +0 -1
- package/dist/chunk-DH2ZFYKE.cjs +0 -441
- package/dist/chunk-DH2ZFYKE.cjs.map +0 -1
- package/dist/chunk-DP4KK2N4.cjs.map +0 -1
- package/dist/chunk-DZ3NHSJ4.js.map +0 -1
- package/dist/chunk-E2JZGYKU.cjs +0 -181
- package/dist/chunk-E2JZGYKU.cjs.map +0 -1
- package/dist/chunk-E7UOFIBW.cjs.map +0 -1
- package/dist/chunk-EBCHOGKT.js.map +0 -1
- package/dist/chunk-EFO5NDBJ.js +0 -191
- package/dist/chunk-EFO5NDBJ.js.map +0 -1
- package/dist/chunk-ESJND7B6.js.map +0 -1
- package/dist/chunk-FDSUILCM.cjs.map +0 -1
- package/dist/chunk-FHKB6MBQ.js.map +0 -1
- package/dist/chunk-GEGYC7CE.js.map +0 -1
- package/dist/chunk-GGZGVAEF.cjs.map +0 -1
- package/dist/chunk-GYUWDJXS.cjs.map +0 -1
- package/dist/chunk-HMWV6KCW.cjs.map +0 -1
- package/dist/chunk-IXJOPMJX.cjs.map +0 -1
- package/dist/chunk-J2FCNWYM.js.map +0 -1
- package/dist/chunk-JMNH45Q3.cjs.map +0 -1
- package/dist/chunk-K6CQ45C2.js.map +0 -1
- package/dist/chunk-K77D7H4V.cjs.map +0 -1
- package/dist/chunk-KFEXS6OK.cjs.map +0 -1
- package/dist/chunk-L6JT244G.cjs.map +0 -1
- package/dist/chunk-L6WUK7O4.js +0 -207
- package/dist/chunk-L6WUK7O4.js.map +0 -1
- package/dist/chunk-LJLCGQRV.js +0 -99
- package/dist/chunk-LJLCGQRV.js.map +0 -1
- package/dist/chunk-MEBIRX2P.js.map +0 -1
- package/dist/chunk-MMQIQILP.cjs.map +0 -1
- package/dist/chunk-MMST4VXH.cjs +0 -392
- package/dist/chunk-MMST4VXH.cjs.map +0 -1
- package/dist/chunk-MNVBSOAQ.cjs.map +0 -1
- package/dist/chunk-MX2F3HUI.cjs.map +0 -1
- package/dist/chunk-NF63IRZR.cjs.map +0 -1
- package/dist/chunk-O3T7Z6RH.cjs.map +0 -1
- package/dist/chunk-OBBPRWYD.js.map +0 -1
- package/dist/chunk-OHKL4DOV.js.map +0 -1
- package/dist/chunk-OJ3KVNW2.js.map +0 -1
- package/dist/chunk-OJCJPYXE.js.map +0 -1
- package/dist/chunk-P4A7GWQY.cjs.map +0 -1
- package/dist/chunk-P4TOIB2A.cjs +0 -101
- package/dist/chunk-P4TOIB2A.cjs.map +0 -1
- package/dist/chunk-PJXJOI73.js +0 -232
- package/dist/chunk-PJXJOI73.js.map +0 -1
- package/dist/chunk-PNYF6NS4.cjs.map +0 -1
- package/dist/chunk-PTZAJW3J.js.map +0 -1
- package/dist/chunk-PWL6TWVC.cjs.map +0 -1
- package/dist/chunk-PXVVTPRJ.js.map +0 -1
- package/dist/chunk-QADMIAYK.js.map +0 -1
- package/dist/chunk-QPYPPJEZ.js.map +0 -1
- package/dist/chunk-RRNT32KY.js.map +0 -1
- package/dist/chunk-RSG7N5QQ.cjs.map +0 -1
- package/dist/chunk-S4GLMGFI.js.map +0 -1
- package/dist/chunk-SSOHJEHS.js +0 -390
- package/dist/chunk-SSOHJEHS.js.map +0 -1
- package/dist/chunk-STSR3FAC.js.map +0 -1
- package/dist/chunk-SXIBQQ55.js.map +0 -1
- package/dist/chunk-TO3ZPSYO.cjs +0 -234
- package/dist/chunk-TO3ZPSYO.cjs.map +0 -1
- package/dist/chunk-TZQWZ7IL.cjs.map +0 -1
- package/dist/chunk-U4GWNENK.js.map +0 -1
- package/dist/chunk-U5ZCQI5O.cjs.map +0 -1
- package/dist/chunk-UC36KIEP.cjs.map +0 -1
- package/dist/chunk-UJODHP7E.cjs.map +0 -1
- package/dist/chunk-UQV5MOGR.js.map +0 -1
- package/dist/chunk-UUIAGGFW.cjs.map +0 -1
- package/dist/chunk-UX2Z7LRM.cjs +0 -194
- package/dist/chunk-UX2Z7LRM.cjs.map +0 -1
- package/dist/chunk-UY3MYNI6.js.map +0 -1
- package/dist/chunk-UYKFE7KF.js.map +0 -1
- package/dist/chunk-VBL5SI5N.js.map +0 -1
- package/dist/chunk-VQ7IRFRR.cjs.map +0 -1
- package/dist/chunk-W3QVSVL7.cjs.map +0 -1
- package/dist/chunk-WA4VZ363.cjs.map +0 -1
- package/dist/chunk-WE2AXMPB.js.map +0 -1
- package/dist/chunk-WVQDFCFQ.js.map +0 -1
- package/dist/chunk-XHTKGOQV.cjs.map +0 -1
- package/dist/chunk-XVRQSTUF.js.map +0 -1
- package/dist/chunk-Z7ID5TC7.cjs.map +0 -1
- package/dist/chunk-ZC6GLBEL.js +0 -179
- package/dist/chunk-ZC6GLBEL.js.map +0 -1
- package/dist/chunk-ZJ2NV4SQ.js.map +0 -1
- package/dist/chunk-ZP3UZDSV.cjs.map +0 -1
- package/dist/chunk-ZW2ATXTL.js.map +0 -1
- package/dist/components/Stack/Stack.d.ts.map +0 -1
- package/dist/components/Stack/Stack.recipe.d.ts.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Tag/Tag.recipe.ts","../src/components/Tag/Tag.tsx"],"names":[],"mappings":"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","file":"chunk-SSOHJEHS.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const tagRecipe = cva({\n base: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n maxW: 'full',\n overflow: 'hidden',\n borderWidth: 0,\n borderRadius: 'sm',\n fontFamily: 'body',\n fontWeight: 'medium',\n lineHeight: 'normal',\n textDecoration: 'none',\n whiteSpace: 'nowrap',\n verticalAlign: 'middle',\n _hover: {\n textDecoration: 'none',\n },\n },\n variants: {\n size: {\n sm: {\n minH: '6',\n px: '2',\n fontSize: 'sm',\n },\n md: {\n minH: '8',\n px: '2',\n fontSize: 'sm',\n },\n lg: {\n minH: '10',\n px: '2.5',\n fontSize: 'md',\n },\n },\n color: {\n default: {\n bg: 'surface.gray',\n color: 'surface.gray.fg',\n _hover: {bg: 'surface.gray.hover'},\n },\n red: {\n bg: 'surface.red',\n color: 'surface.red.fg',\n _hover: {bg: 'surface.red.hover'},\n },\n orange: {\n bg: 'surface.orange',\n color: 'surface.orange.fg',\n _hover: {bg: 'surface.orange.hover'},\n },\n yellow: {\n bg: 'surface.yellow',\n color: 'surface.yellow.fg',\n _hover: {bg: 'surface.yellow.hover'},\n },\n green: {\n bg: 'surface.green',\n color: 'surface.green.fg',\n _hover: {bg: 'surface.green.hover'},\n },\n teal: {\n bg: 'surface.teal',\n color: 'surface.teal.fg',\n _hover: {bg: 'surface.teal.hover'},\n },\n cyan: {\n bg: 'surface.cyan',\n color: 'surface.cyan.fg',\n _hover: {bg: 'surface.cyan.hover'},\n },\n blue: {\n bg: 'surface.blue',\n color: 'surface.blue.fg',\n _hover: {bg: 'surface.blue.hover'},\n },\n purple: {\n bg: 'surface.purple',\n color: 'surface.purple.fg',\n _hover: {bg: 'surface.purple.hover'},\n },\n pink: {\n bg: 'surface.pink',\n color: 'surface.pink.fg',\n _hover: {bg: 'surface.pink.hover'},\n },\n gray: {\n bg: 'surface.gray',\n color: 'surface.gray.fg',\n _hover: {bg: 'surface.gray.hover'},\n },\n },\n isInteractive: {\n true: {\n cursor: 'pointer',\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n },\n false: {},\n },\n isDisabled: {\n true: {\n opacity: 0.55,\n cursor: 'not-allowed',\n pointerEvents: 'none',\n },\n false: {},\n },\n },\n defaultVariants: {\n size: 'md',\n color: 'default',\n isInteractive: false,\n isDisabled: false,\n },\n});\n\nexport type TagVariants = RecipeVariantProps<typeof tagRecipe>;\n","import {X} from 'lucide-react';\nimport type {\n CSSProperties,\n MouseEvent,\n MouseEventHandler,\n ReactNode,\n Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {VisuallyHidden} from '../../internal/VisuallyHidden';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconComponent} from '../Icon';\nimport {Link} from '../Link';\nimport {Tooltip} from '../Tooltip';\nimport {tagRecipe} from './Tag.recipe';\n\nexport type TagColor =\n | 'default'\n | 'red'\n | 'orange'\n | 'yellow'\n | 'green'\n | 'teal'\n | 'cyan'\n | 'blue'\n | 'purple'\n | 'pink'\n | 'gray';\n\nexport type TagSize = 'sm' | 'md' | 'lg';\n\nexport interface TagProps {\n /**\n * Additional CSS class names applied to the tag.\n */\n className?: string;\n /**\n * Visual color.\n * @default 'default'\n */\n color?: TagColor;\n /**\n * Test ID applied to the tag root.\n */\n 'data-testid'?: string;\n /**\n * Accessible description for the tag.\n */\n description?: string;\n /**\n * Content rendered after the label and before the remove button.\n */\n endContent?: ReactNode;\n /**\n * Link destination. When provided, the tag renders as a link.\n */\n href?: string;\n /**\n * Icon rendered before the label.\n */\n icon?: IconComponent;\n /**\n * Whether the tag is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label while keeping it available to screen readers.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Tag text.\n */\n label: string;\n /**\n * Click handler.\n */\n onClick?: MouseEventHandler<HTMLElement>;\n /**\n * Called when the remove button is clicked. When provided, a remove button is shown.\n */\n onRemove?: (event: MouseEvent<HTMLButtonElement>) => void;\n /**\n * Ref forwarded to the tag root element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Visual size.\n * @default 'md'\n */\n size?: TagSize;\n /**\n * Content rendered before the icon and label.\n */\n startContent?: ReactNode;\n /**\n * Inline styles applied to the tag.\n */\n style?: CSSProperties;\n /**\n * Tooltip text shown on hover.\n */\n tooltip?: string;\n}\n\nconst styles = {\n buttonReset: css({\n p: 0,\n borderWidth: 0,\n font: 'inherit',\n color: 'inherit',\n bg: 'transparent',\n cursor: 'pointer',\n }),\n bodyButton: css({\n display: 'inline-flex',\n alignItems: 'center',\n gap: 'inherit',\n p: 0,\n borderWidth: 0,\n font: 'inherit',\n color: 'inherit',\n bg: 'transparent',\n cursor: 'pointer',\n minW: 0,\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n }),\n label: css({\n minW: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n }),\n removeButton: css({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n p: 0,\n borderWidth: 0,\n borderRadius: 'full',\n bg: 'transparent',\n color: 'inherit',\n cursor: 'pointer',\n _hover: {\n opacity: 0.7,\n },\n _active: {\n opacity: 0.5,\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n }),\n} as const;\n\nfunction TagContent({\n endContent,\n icon,\n isLabelHidden,\n label,\n onRemove,\n isDisabled,\n size = 'md',\n startContent,\n}: Pick<\n TagProps,\n | 'endContent'\n | 'icon'\n | 'isDisabled'\n | 'isLabelHidden'\n | 'label'\n | 'size'\n | 'startContent'\n> & {\n onRemove?: (event: MouseEvent<HTMLButtonElement>) => void;\n}): React.JSX.Element {\n return (\n <>\n {startContent}\n {icon != null ? (\n <Icon aria-hidden=\"true\" color=\"inherit\" icon={icon} size={size} />\n ) : null}\n {isLabelHidden === true ? (\n <VisuallyHidden>{label}</VisuallyHidden>\n ) : (\n <span className={styles.label}>{label}</span>\n )}\n {endContent}\n {onRemove != null ? (\n <button\n aria-label={`Remove ${label}`}\n className={styles.removeButton}\n disabled={isDisabled}\n onClick={event => {\n event.stopPropagation();\n onRemove(event);\n }}\n type=\"button\">\n <Icon icon={X} size=\"sm\" />\n </button>\n ) : null}\n </>\n );\n}\n\n/**\n * Compact chip for displaying selected values, filters, tags, or removable entities.\n */\nexport function Tag({\n className,\n color = 'default',\n 'data-testid': dataTestId,\n description,\n endContent,\n href,\n icon,\n isDisabled = false,\n isLabelHidden = false,\n label,\n onClick,\n onRemove,\n ref,\n size = 'md',\n startContent,\n style,\n tooltip,\n}: TagProps): React.JSX.Element {\n const isInteractive = href != null || onClick != null;\n const classNames = cx(\n tagRecipe({size, color, isInteractive, isDisabled}),\n href == null && onClick != null && onRemove == null\n ? styles.buttonReset\n : undefined,\n className,\n );\n const sharedProps = {\n 'aria-description': description,\n className: classNames,\n 'data-testid': dataTestId,\n style,\n };\n\n let element: React.JSX.Element;\n\n if (href != null && onRemove != null) {\n element = (\n <span {...sharedProps} ref={ref}>\n <Link\n className={styles.bodyButton}\n color=\"inherit\"\n href={href}\n isDisabled={isDisabled}\n onClick={onClick}>\n {startContent}\n {icon != null ? (\n <Icon aria-hidden=\"true\" color=\"inherit\" icon={icon} size={size} />\n ) : null}\n {isLabelHidden ? (\n <VisuallyHidden>{label}</VisuallyHidden>\n ) : (\n <span className={styles.label}>{label}</span>\n )}\n {endContent}\n </Link>\n <button\n aria-label={`Remove ${label}`}\n className={styles.removeButton}\n disabled={isDisabled}\n onClick={event => {\n event.stopPropagation();\n onRemove(event);\n }}\n type=\"button\">\n <Icon icon={X} size=\"sm\" />\n </button>\n </span>\n );\n } else if (href != null) {\n element = (\n <Link\n {...sharedProps}\n color=\"inherit\"\n href={href}\n isDisabled={isDisabled}\n onClick={onClick}\n ref={ref as Ref<HTMLAnchorElement>}>\n <TagContent\n endContent={endContent}\n icon={icon}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n label={label}\n size={size}\n startContent={startContent}\n />\n </Link>\n );\n } else if (onClick != null && onRemove != null) {\n element = (\n <span {...sharedProps} ref={ref}>\n <button\n className={styles.bodyButton}\n disabled={isDisabled}\n onClick={onClick}\n type=\"button\">\n {startContent}\n {icon != null ? (\n <Icon aria-hidden=\"true\" color=\"inherit\" icon={icon} size={size} />\n ) : null}\n {isLabelHidden ? (\n <VisuallyHidden>{label}</VisuallyHidden>\n ) : (\n <span className={styles.label}>{label}</span>\n )}\n {endContent}\n </button>\n <button\n aria-label={`Remove ${label}`}\n className={styles.removeButton}\n disabled={isDisabled}\n onClick={event => {\n event.stopPropagation();\n onRemove(event);\n }}\n type=\"button\">\n <Icon icon={X} size=\"sm\" />\n </button>\n </span>\n );\n } else if (onClick != null) {\n element = (\n <button\n {...sharedProps}\n disabled={isDisabled}\n onClick={onClick}\n ref={ref as Ref<HTMLButtonElement>}\n type=\"button\">\n <TagContent\n endContent={endContent}\n icon={icon}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n label={label}\n size={size}\n startContent={startContent}\n />\n </button>\n );\n } else {\n element = (\n <span {...sharedProps} ref={ref}>\n <TagContent\n endContent={endContent}\n icon={icon}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n label={label}\n onRemove={onRemove}\n size={size}\n startContent={startContent}\n />\n </span>\n );\n }\n\n if (tooltip != null) {\n return <Tooltip content={tooltip}>{element}</Tooltip>;\n }\n\n return element;\n}\n\nTag.displayName = 'Tag';\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/NumberInput/NumberInput.tsx"],"names":[],"mappings":"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","file":"chunk-STSR3FAC.js","sourcesContent":["import {X} from 'lucide-react';\nimport {\n useId,\n useMemo,\n useState,\n type ChangeEvent,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {Button} from '../Button';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from '../Field';\nimport {inputRecipe, inputStyles} from '../Field/inputStyles';\nimport {\n getDescribedBy,\n getStatusIcon,\n getStatusMessageID,\n} from '../Field/inputUtils';\nimport {Icon, type IconComponent} from '../Icon';\nimport {useInputGroup} from '../InputGroup';\nimport {Spinner} from '../Spinner';\n\ntype NumberInputBaseProps = {\n /**\n * HTML autocomplete attribute value.\n */\n autoComplete?: string;\n /**\n * Additional CSS class names applied to the input wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: ReactNode;\n /**\n * Content rendered after the input, before the status icon.\n */\n endContent?: ReactNode;\n /**\n * Whether to focus the input on mount.\n * @default false\n */\n hasAutoFocus?: boolean;\n /**\n * HTML name attribute.\n */\n htmlName?: string;\n /**\n * Whether the input is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to restrict input to integer values only.\n * @default false\n */\n isIntegerOnly?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Whether the input is in a loading state.\n * @default false\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon rendered beside the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Maximum allowed value.\n */\n max?: number | null;\n /**\n * Minimum allowed value.\n */\n min?: number | null;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called when Enter is pressed.\n */\n onEnter?: () => void;\n /**\n * Called when the input receives focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Keyboard event handler for the input.\n */\n onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;\n /**\n * Placeholder text.\n */\n placeholder?: string;\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Visual size.\n * @default 'md'\n */\n size?: InputSize;\n /**\n * Icon shown before the input.\n */\n startIcon?: IconComponent;\n /**\n * Validation status displayed below the input.\n */\n status?: InputStatus;\n /**\n * Step increment for the number input.\n */\n step?: number | null;\n /**\n * Inline styles applied to the input wrapper.\n */\n style?: CSSProperties;\n /**\n * Unit label displayed after the input value.\n */\n units?: string | null;\n /**\n * Controlled numeric value.\n */\n value: number | null;\n} & FieldNecessity;\n\ntype NumberInputNonClearableProps = NumberInputBaseProps & {\n /**\n * Whether to show a clear button.\n */\n hasClear?: false;\n /**\n * Called when the numeric value changes.\n */\n onChange: (value: number) => void;\n};\n\ntype NumberInputClearableProps = NumberInputBaseProps & {\n /**\n * Whether to show a clear button.\n */\n hasClear: true;\n /**\n * Called when the numeric value changes or is cleared.\n */\n onChange: (value: number | null) => void;\n};\n\nexport type NumberInputProps =\n | NumberInputClearableProps\n | NumberInputNonClearableProps;\n\nconst styles = {\n units: css({\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'sm',\n }),\n} as const;\n\nfunction parseNumberInput(\n input: string,\n options: {isIntegerOnly: boolean; max?: number | null; min?: number | null},\n): number | null {\n const trimmed = input.trim();\n if (trimmed === '' || trimmed === '-') {\n return null;\n }\n const number = Number(trimmed);\n if (!Number.isFinite(number)) {\n return null;\n }\n if (options.isIntegerOnly && !Number.isInteger(number)) {\n return null;\n }\n if (options.min != null && number < options.min) {\n return null;\n }\n if (options.max != null && number > options.max) {\n return null;\n }\n return number;\n}\n\n/**\n * Numeric input field with optional min/max bounds and step control.\n */\nexport function NumberInput({\n label,\n value,\n onChange,\n size: sizeProp = 'md',\n description,\n endContent,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isIntegerOnly = false,\n isLoading = false,\n hasClear,\n hasAutoFocus = false,\n htmlName,\n autoComplete,\n min,\n max,\n step,\n units,\n status,\n labelIcon,\n labelTooltip,\n startIcon,\n placeholder,\n onFocus,\n onBlur,\n onEnter,\n onKeyDown,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: NumberInputProps): React.JSX.Element {\n const inputId = useId();\n const descriptionID =\n description != null ? `${inputId}-description` : undefined;\n const statusMessageID = getStatusMessageID(inputId, status);\n const describedBy = getDescribedBy(descriptionID, statusMessageID);\n const inputGroup = useInputGroup();\n const effectiveDisabled = isDisabled || inputGroup?.isDisabled === true;\n const size = inputGroup?.size ?? sizeProp;\n const effectiveStatusType = status?.type ?? inputGroup?.statusType;\n const [pendingInput, setPendingInput] = useState<string | null>(null);\n const displayValue = useMemo(() => {\n if (pendingInput != null) {\n return pendingInput;\n }\n return value == null ? '' : String(value);\n }, [pendingInput, value]);\n const isInputValid =\n pendingInput == null ||\n pendingInput.trim() === '' ||\n parseNumberInput(pendingInput, {min, max, isIntegerOnly}) != null;\n\n const necessity = getNecessity(isOptional, isRequired);\n\n const inputWrapper = (\n <div\n className={cx(\n inputRecipe({\n size,\n status: effectiveStatusType,\n isDisabled: effectiveDisabled,\n }),\n inputGroup != null ? className : undefined,\n )}\n style={inputGroup != null ? style : undefined}>\n {startIcon != null ? (\n <span className={inputStyles.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <input\n aria-busy={isLoading || undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || !isInputValid || undefined}\n aria-label={inputGroup != null ? label : undefined}\n aria-required={isRequired ?? undefined}\n autoComplete={autoComplete}\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={inputStyles.control}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={effectiveDisabled}\n id={inputId}\n max={max ?? undefined}\n min={min ?? undefined}\n name={htmlName}\n onBlur={event => {\n if (pendingInput != null) {\n const parsed = parseNumberInput(pendingInput, {\n min,\n max,\n isIntegerOnly,\n });\n if (parsed != null && parsed !== value) {\n onChange(parsed);\n }\n setPendingInput(null);\n }\n onBlur?.(event);\n }}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n const nextValue = event.target.value;\n setPendingInput(nextValue);\n const parsed = parseNumberInput(nextValue, {\n min,\n max,\n isIntegerOnly,\n });\n if (parsed != null && parsed !== value) {\n onChange(parsed);\n }\n }}\n onFocus={onFocus}\n onKeyDown={event => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n onEnter?.();\n }\n onKeyDown?.(event);\n }}\n placeholder={placeholder}\n ref={ref}\n required={isRequired ?? undefined}\n step={step ?? undefined}\n type=\"number\"\n value={displayValue}\n />\n {units != null ? <span className={styles.units}>{units}</span> : null}\n {hasClear === true && value != null && !effectiveDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={() => onChange(null)}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n {endContent}\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {status != null ? (\n <span className={inputStyles.iconSlot}>\n {getStatusIcon(status.type)}\n </span>\n ) : null}\n </div>\n );\n\n if (inputGroup != null) {\n return inputWrapper;\n }\n\n return (\n <Field\n className={className}\n description={description}\n descriptionID={descriptionID}\n inputId={inputId}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n {...necessity}\n label={label}\n labelIcon={labelIcon}\n labelTooltip={labelTooltip}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n style={style}>\n {inputWrapper}\n </Field>\n );\n}\n\nNumberInput.displayName = 'NumberInput';\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Alert/Alert.recipe.ts","../src/components/Alert/Alert.tsx"],"names":[],"mappings":"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","file":"chunk-SXIBQQ55.js","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\n/**\n * Symmetric padding overrides for the collapsible body. Keys mirror the\n * `SpacingToken` scale so the `padding` prop maps onto build-time-validated\n * spacing tokens instead of a runtime token lookup.\n */\nconst paddingVariants = {\n 0: {bodyContent: {px: '0', py: '0'}},\n 0.5: {bodyContent: {px: '0.5', py: '0.5'}},\n 1: {bodyContent: {px: '1', py: '1'}},\n 1.5: {bodyContent: {px: '1.5', py: '1.5'}},\n 2: {bodyContent: {px: '2', py: '2'}},\n 3: {bodyContent: {px: '3', py: '3'}},\n 4: {bodyContent: {px: '4', py: '4'}},\n 5: {bodyContent: {px: '5', py: '5'}},\n 6: {bodyContent: {px: '6', py: '6'}},\n 8: {bodyContent: {px: '8', py: '8'}},\n 10: {bodyContent: {px: '10', py: '10'}},\n};\n\nexport const alertRecipe = sva({\n slots: [\n 'root',\n 'header',\n 'icon',\n 'content',\n 'endArea',\n 'chevron',\n 'body',\n 'bodyContent',\n ],\n base: {\n root: {\n display: 'flex',\n flexDirection: 'column',\n fontFamily: 'body',\n },\n header: {\n display: 'flex',\n alignItems: 'flex-start',\n gap: '2',\n px: '4',\n py: '3',\n },\n icon: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n },\n content: {\n display: 'flex',\n flex: 1,\n flexDirection: 'column',\n minW: 0,\n },\n endArea: {\n display: 'flex',\n alignItems: 'center',\n flexShrink: 0,\n gap: '2',\n ms: 'auto',\n },\n // The body stays mounted so child state and the `aria-controls` target are\n // preserved; it is collapsed with a `grid-template-rows` 1fr -> 0fr\n // transition (mirroring `AccordionItem`). `overflow: hidden` lives on this\n // grid so the body chrome on `bodyContent` is fully clipped when collapsed.\n body: {\n display: 'grid',\n gridTemplateRows: '1fr',\n overflow: 'hidden',\n // `visibility` is transitioned alongside the rows so the content stays\n // readable while collapsing, then becomes `hidden` (removing it from the\n // a11y tree and tab order) once closed. The inline `visibility` style in\n // the component drives the open/closed value.\n transitionProperty: 'grid-template-rows, visibility',\n transitionDuration: 'normal',\n transitionTimingFunction: 'default',\n '@media (prefers-reduced-motion: reduce)': {\n transitionDuration: '0.01s',\n },\n },\n bodyContent: {\n minH: 0,\n bg: 'bg',\n borderBlockEndWidth: 'default',\n borderColor: 'border',\n borderInlineWidth: 'default',\n borderStyle: 'solid',\n px: '4',\n py: '3',\n },\n },\n variants: {\n status: {\n error: {\n header: {\n bg: 'surface.red',\n color: 'surface.red.fg',\n '--silver-text-color': 'token(colors.surface.red.fg)',\n '--silver-text-color-muted': 'token(colors.surface.red.fg)',\n },\n },\n info: {\n header: {\n bg: 'surface.blue',\n color: 'surface.blue.fg',\n '--silver-text-color': 'token(colors.surface.blue.fg)',\n '--silver-text-color-muted': 'token(colors.surface.blue.fg)',\n },\n },\n success: {\n header: {\n bg: 'surface.green',\n color: 'surface.green.fg',\n '--silver-text-color': 'token(colors.surface.green.fg)',\n '--silver-text-color-muted': 'token(colors.surface.green.fg)',\n },\n },\n warning: {\n header: {\n bg: 'surface.yellow',\n color: 'surface.yellow.fg',\n '--silver-text-color': 'token(colors.surface.yellow.fg)',\n '--silver-text-color-muted': 'token(colors.surface.yellow.fg)',\n },\n },\n },\n container: {\n card: {\n header: {borderTopRadius: 'lg'},\n bodyContent: {borderBottomRadius: 'lg'},\n },\n section: {},\n },\n // Squares off the header's bottom corners while the body is revealed; the\n // compound variant rounds them back when there is no expanded content.\n hasContent: {\n true: {},\n false: {},\n },\n isCentered: {\n true: {header: {alignItems: 'center'}},\n false: {},\n },\n isExpanded: {\n true: {chevron: {transform: 'rotate(180deg)'}},\n false: {body: {gridTemplateRows: '0fr'}},\n },\n padding: paddingVariants,\n },\n compoundVariants: [\n {\n container: 'card',\n css: {header: {borderBottomRadius: 'lg'}},\n hasContent: false,\n },\n ],\n defaultVariants: {\n container: 'card',\n hasContent: false,\n isCentered: false,\n isExpanded: false,\n status: 'info',\n },\n});\n\nexport type AlertVariants = RecipeVariantProps<typeof alertRecipe>;\n","import {\n CheckCircle2,\n ChevronDown,\n Info,\n TriangleAlert,\n X,\n XCircle,\n} from 'lucide-react';\nimport {\n useId,\n useState,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport type {SpacingToken} from '../../internal/spacingTokens';\nimport {Button} from '../Button';\nimport {Icon} from '../Icon';\nimport {Text} from '../Text';\nimport {alertRecipe, type AlertVariants} from './Alert.recipe';\n\n/**\n * Derived from the recipe's `container` variant so the prop stays in sync with\n * the styles.\n */\nexport type AlertContainer = NonNullable<\n NonNullable<AlertVariants>['container']\n>;\n/**\n * Derived from the recipe's `status` variant so the prop stays in sync with the\n * styles.\n */\nexport type AlertStatus = NonNullable<NonNullable<AlertVariants>['status']>;\n\nexport interface AlertProps {\n /**\n * Extra content rendered below the alert header in a collapsible area.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Visual container style.\n * @default 'card'\n */\n container?: AlertContainer;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Supporting description displayed below the title.\n */\n description?: ReactNode;\n /**\n * Content rendered at the end of the header, before collapse and dismiss controls.\n */\n endContent?: ReactNode;\n /**\n * Custom status icon. A default icon is rendered when omitted.\n */\n icon?: ReactNode;\n /**\n * Whether collapsible children are expanded initially.\n * @default false\n */\n isDefaultExpanded?: boolean;\n /**\n * Whether the alert can be dismissed.\n * @default false\n */\n isDismissable?: boolean;\n /**\n * Called when the dismiss button is clicked.\n */\n onDismiss?: () => void;\n /**\n * Inner padding step.\n * @default 4\n */\n padding?: SpacingToken;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Status controlling role, icon, and color.\n */\n status: AlertStatus;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * Primary alert title.\n */\n title: ReactNode;\n}\n\nconst statusRole: Record<AlertStatus, 'alert' | 'status'> = {\n error: 'alert',\n info: 'status',\n success: 'status',\n warning: 'alert',\n};\n\nconst defaultIcons: Record<AlertStatus, ReactNode> = {\n error: <Icon color=\"error\" icon={XCircle} />,\n info: <Icon color=\"info\" icon={Info} />,\n success: <Icon color=\"success\" icon={CheckCircle2} />,\n warning: <Icon color=\"warning\" icon={TriangleAlert} />,\n};\n\n/**\n * Displays a contextual message with status-based styling, an optional\n * collapsible body, and dismiss functionality.\n */\nexport function Alert({\n children,\n className,\n container = 'card',\n 'data-testid': dataTestId,\n description,\n endContent,\n icon,\n isDefaultExpanded = false,\n isDismissable = false,\n onDismiss,\n padding,\n ref,\n status,\n style,\n title,\n}: AlertProps): React.JSX.Element | null {\n const bodyId = useId();\n const [isDismissed, setIsDismissed] = useState(false);\n const [isExpanded, setIsExpanded] = useState(isDefaultExpanded);\n const hasChildren = children != null;\n // The body is kept mounted whenever there are children (so child state and\n // the `aria-controls` target survive collapsing); `isExpanded` only drives\n // the visual collapse. `showContent` reflects whether the body is currently\n // revealed, which the header uses to square off its bottom corners.\n const showContent = hasChildren && isExpanded;\n const showEndArea = endContent != null || isDismissable || hasChildren;\n const isSingleLine =\n description == null && (endContent != null || isDismissable || hasChildren);\n\n if (isDismissed) {\n return null;\n }\n\n const classes = alertRecipe({\n container,\n hasContent: showContent,\n isCentered: isSingleLine,\n isExpanded,\n padding,\n status,\n });\n\n return (\n <div\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n role={statusRole[status]}\n style={style}>\n <div className={classes.header}>\n <span aria-hidden=\"true\" className={classes.icon}>\n {icon ?? defaultIcons[status]}\n </span>\n <div className={classes.content}>\n <Text as=\"p\" type=\"label\" weight=\"semibold\">\n {title}\n </Text>\n {description != null ? (\n <Text as=\"p\" color=\"secondary\" type=\"supporting\">\n {description}\n </Text>\n ) : null}\n </div>\n {showEndArea ? (\n <div className={classes.endArea}>\n {endContent}\n {hasChildren ? (\n <Button\n aria-controls={bodyId}\n aria-expanded={isExpanded}\n className={classes.chevron}\n icon={ChevronDown}\n isIconOnly\n label={isExpanded ? 'Collapse' : 'Expand'}\n onClick={() => setIsExpanded(value => !value)}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n {isDismissable ? (\n <Button\n icon={X}\n isIconOnly\n label=\"Dismiss\"\n onClick={() => {\n setIsDismissed(true);\n onDismiss?.();\n }}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n </div>\n ) : null}\n </div>\n {hasChildren ? (\n <div\n className={classes.body}\n id={bodyId}\n style={{visibility: isExpanded ? undefined : 'hidden'}}>\n <div className={classes.bodyContent}>{children}</div>\n </div>\n ) : null}\n </div>\n );\n}\n\nAlert.displayName = 'Alert';\n"]}
|
package/dist/chunk-TO3ZPSYO.cjs
DELETED
|
@@ -1,234 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var chunk4I6VIR44_cjs = require('./chunk-4I6VIR44.cjs');
|
|
4
|
-
var chunk2P6D43V2_cjs = require('./chunk-2P6D43V2.cjs');
|
|
5
|
-
var chunkW5G7ZDQ6_cjs = require('./chunk-W5G7ZDQ6.cjs');
|
|
6
|
-
var chunkYXYD5HKL_cjs = require('./chunk-YXYD5HKL.cjs');
|
|
7
|
-
var chunkJMNH45Q3_cjs = require('./chunk-JMNH45Q3.cjs');
|
|
8
|
-
var chunkWMXIUOOU_cjs = require('./chunk-WMXIUOOU.cjs');
|
|
9
|
-
var chunk7GN6YTSS_cjs = require('./chunk-7GN6YTSS.cjs');
|
|
10
|
-
var chunk6SHL7FYO_cjs = require('./chunk-6SHL7FYO.cjs');
|
|
11
|
-
var chunk4TIAKZ4Q_cjs = require('./chunk-4TIAKZ4Q.cjs');
|
|
12
|
-
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
13
|
-
var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
|
|
14
|
-
var lucideReact = require('lucide-react');
|
|
15
|
-
var react = require('react');
|
|
16
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
17
|
-
|
|
18
|
-
var styles = {
|
|
19
|
-
root: chunkRU6JG3FS_cjs.css({
|
|
20
|
-
display: "flex",
|
|
21
|
-
flexDirection: "column"
|
|
22
|
-
}),
|
|
23
|
-
boxWrap: chunkRU6JG3FS_cjs.css({
|
|
24
|
-
position: "relative",
|
|
25
|
-
display: "inline-flex",
|
|
26
|
-
alignItems: "center",
|
|
27
|
-
justifyContent: "center",
|
|
28
|
-
flexShrink: 0
|
|
29
|
-
}),
|
|
30
|
-
input: chunkRU6JG3FS_cjs.css({
|
|
31
|
-
position: "absolute",
|
|
32
|
-
inset: 0,
|
|
33
|
-
opacity: 0,
|
|
34
|
-
cursor: "pointer",
|
|
35
|
-
_disabled: {
|
|
36
|
-
cursor: "not-allowed"
|
|
37
|
-
}
|
|
38
|
-
}),
|
|
39
|
-
box: chunkRU6JG3FS_cjs.css({
|
|
40
|
-
display: "inline-flex",
|
|
41
|
-
alignItems: "center",
|
|
42
|
-
justifyContent: "center",
|
|
43
|
-
borderWidth: "default",
|
|
44
|
-
borderStyle: "solid",
|
|
45
|
-
borderColor: "border.emphasized",
|
|
46
|
-
borderRadius: "sm",
|
|
47
|
-
bg: "bg",
|
|
48
|
-
color: "fg.onPrimary",
|
|
49
|
-
pointerEvents: "none",
|
|
50
|
-
_peerFocusVisible: {
|
|
51
|
-
outlineWidth: "focus",
|
|
52
|
-
outlineStyle: "solid",
|
|
53
|
-
outlineColor: "primary",
|
|
54
|
-
outlineOffset: "focusOffset"
|
|
55
|
-
}
|
|
56
|
-
}),
|
|
57
|
-
boxChecked: chunkRU6JG3FS_cjs.css({
|
|
58
|
-
bg: "primary",
|
|
59
|
-
borderColor: "primary"
|
|
60
|
-
}),
|
|
61
|
-
boxDisabled: chunkRU6JG3FS_cjs.css({
|
|
62
|
-
opacity: 0.55
|
|
63
|
-
}),
|
|
64
|
-
boxSize: {
|
|
65
|
-
sm: chunkRU6JG3FS_cjs.css({ w: "4.5", h: "4.5" }),
|
|
66
|
-
md: chunkRU6JG3FS_cjs.css({ w: "5.5", h: "5.5" })
|
|
67
|
-
},
|
|
68
|
-
icon: chunkRU6JG3FS_cjs.css({
|
|
69
|
-
w: "70%",
|
|
70
|
-
h: "70%"
|
|
71
|
-
}),
|
|
72
|
-
label: chunkRU6JG3FS_cjs.css({
|
|
73
|
-
cursor: "pointer"
|
|
74
|
-
}),
|
|
75
|
-
labelDisabled: chunkRU6JG3FS_cjs.css({
|
|
76
|
-
cursor: "not-allowed"
|
|
77
|
-
}),
|
|
78
|
-
indicator: chunkRU6JG3FS_cjs.css({
|
|
79
|
-
fontWeight: "normal",
|
|
80
|
-
color: "fg.muted"
|
|
81
|
-
}),
|
|
82
|
-
tooltipIcon: chunkRU6JG3FS_cjs.css({
|
|
83
|
-
display: "inline-flex",
|
|
84
|
-
color: "fg.muted"
|
|
85
|
-
})
|
|
86
|
-
};
|
|
87
|
-
function CheckboxInput({
|
|
88
|
-
label,
|
|
89
|
-
value,
|
|
90
|
-
onChange,
|
|
91
|
-
description,
|
|
92
|
-
endContent,
|
|
93
|
-
endContentPosition = "inline",
|
|
94
|
-
htmlName,
|
|
95
|
-
isLabelHidden = false,
|
|
96
|
-
isOptional,
|
|
97
|
-
isRequired,
|
|
98
|
-
isDisabled = false,
|
|
99
|
-
isReadOnly = false,
|
|
100
|
-
isLoading = false,
|
|
101
|
-
status,
|
|
102
|
-
labelIcon,
|
|
103
|
-
labelTooltip,
|
|
104
|
-
size = "md",
|
|
105
|
-
startContent,
|
|
106
|
-
onFocus,
|
|
107
|
-
onBlur,
|
|
108
|
-
className,
|
|
109
|
-
"data-testid": dataTestId,
|
|
110
|
-
style,
|
|
111
|
-
ref
|
|
112
|
-
}) {
|
|
113
|
-
const inputId = react.useId();
|
|
114
|
-
const descriptionId = react.useId();
|
|
115
|
-
const inputRef = react.useRef(null);
|
|
116
|
-
const statusMessageID = chunk2P6D43V2_cjs.getStatusMessageID(inputId, status);
|
|
117
|
-
const describedBy = chunk2P6D43V2_cjs.getDescribedBy(
|
|
118
|
-
description != null ? descriptionId : void 0,
|
|
119
|
-
statusMessageID
|
|
120
|
-
);
|
|
121
|
-
const isIndeterminate = value === "indeterminate";
|
|
122
|
-
const isChecked = value === true;
|
|
123
|
-
const isCheckedOrIndeterminate = isChecked || isIndeterminate;
|
|
124
|
-
react.useEffect(() => {
|
|
125
|
-
if (inputRef.current != null) {
|
|
126
|
-
inputRef.current.indeterminate = isIndeterminate;
|
|
127
|
-
}
|
|
128
|
-
}, [isIndeterminate]);
|
|
129
|
-
const statusText = isOptional ? "Optional" : isRequired ? "Required" : null;
|
|
130
|
-
const control = /* @__PURE__ */ jsxRuntime.jsxs("span", { className: styles.boxWrap, children: [
|
|
131
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
132
|
-
"input",
|
|
133
|
-
{
|
|
134
|
-
"aria-busy": isLoading || void 0,
|
|
135
|
-
"aria-checked": isIndeterminate ? "mixed" : void 0,
|
|
136
|
-
"aria-describedby": describedBy,
|
|
137
|
-
"aria-invalid": status?.type === "error" || void 0,
|
|
138
|
-
"aria-readonly": isReadOnly || void 0,
|
|
139
|
-
checked: isChecked,
|
|
140
|
-
className: styles.input,
|
|
141
|
-
"data-testid": dataTestId,
|
|
142
|
-
disabled: isDisabled,
|
|
143
|
-
id: inputId,
|
|
144
|
-
name: htmlName,
|
|
145
|
-
onBlur,
|
|
146
|
-
onChange: (event) => {
|
|
147
|
-
if (isReadOnly) {
|
|
148
|
-
event.preventDefault();
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
onChange(event.target.checked, event);
|
|
152
|
-
},
|
|
153
|
-
onFocus,
|
|
154
|
-
readOnly: isReadOnly,
|
|
155
|
-
ref: chunk6SHL7FYO_cjs.mergeRefs(ref, inputRef),
|
|
156
|
-
required: isRequired,
|
|
157
|
-
type: "checkbox"
|
|
158
|
-
}
|
|
159
|
-
),
|
|
160
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
161
|
-
"span",
|
|
162
|
-
{
|
|
163
|
-
"aria-hidden": "true",
|
|
164
|
-
className: chunkSPDVNY2Z_cjs.cx(
|
|
165
|
-
styles.box,
|
|
166
|
-
styles.boxSize[size],
|
|
167
|
-
isCheckedOrIndeterminate ? styles.boxChecked : void 0,
|
|
168
|
-
isDisabled ? styles.boxDisabled : void 0
|
|
169
|
-
),
|
|
170
|
-
children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
171
|
-
chunkYXYD5HKL_cjs.Spinner,
|
|
172
|
-
{
|
|
173
|
-
size: "sm",
|
|
174
|
-
variant: isCheckedOrIndeterminate ? "onMedia" : "default"
|
|
175
|
-
}
|
|
176
|
-
) : isIndeterminate ? /* @__PURE__ */ jsxRuntime.jsx(chunk4TIAKZ4Q_cjs.Icon, { className: styles.icon, icon: lucideReact.Minus }) : isChecked ? /* @__PURE__ */ jsxRuntime.jsx(chunk4TIAKZ4Q_cjs.Icon, { className: styles.icon, icon: lucideReact.Check }) : null
|
|
177
|
-
}
|
|
178
|
-
)
|
|
179
|
-
] });
|
|
180
|
-
const labelContent = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
181
|
-
labelIcon != null ? /* @__PURE__ */ jsxRuntime.jsx(chunk4TIAKZ4Q_cjs.Icon, { color: "secondary", icon: labelIcon, size: "sm" }) : null,
|
|
182
|
-
label,
|
|
183
|
-
statusText != null ? /* @__PURE__ */ jsxRuntime.jsxs(chunkJMNH45Q3_cjs.Text, { as: "span", className: styles.indicator, type: "supporting", children: [
|
|
184
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", children: " \xB7 " }),
|
|
185
|
-
statusText
|
|
186
|
-
] }) : null,
|
|
187
|
-
labelTooltip != null ? /* @__PURE__ */ jsxRuntime.jsx(chunk7GN6YTSS_cjs.Tooltip, { content: labelTooltip, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles.tooltipIcon, children: /* @__PURE__ */ jsxRuntime.jsx(chunk4TIAKZ4Q_cjs.Icon, { icon: lucideReact.Info, size: "sm" }) }) }) : null
|
|
188
|
-
] });
|
|
189
|
-
const labelNode = /* @__PURE__ */ jsxRuntime.jsx(
|
|
190
|
-
"label",
|
|
191
|
-
{
|
|
192
|
-
className: chunkSPDVNY2Z_cjs.cx(
|
|
193
|
-
styles.label,
|
|
194
|
-
isDisabled ? styles.labelDisabled : void 0
|
|
195
|
-
),
|
|
196
|
-
htmlFor: inputId,
|
|
197
|
-
children: isLabelHidden ? /* @__PURE__ */ jsxRuntime.jsx(chunkWMXIUOOU_cjs.VisuallyHidden, { children: labelContent }) : labelContent
|
|
198
|
-
}
|
|
199
|
-
);
|
|
200
|
-
const statusNode = status?.message != null ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
201
|
-
"div",
|
|
202
|
-
{
|
|
203
|
-
"aria-live": status.type === "error" ? "assertive" : "polite",
|
|
204
|
-
className: chunkW5G7ZDQ6_cjs.fieldRecipe({
|
|
205
|
-
statusType: status.type,
|
|
206
|
-
statusVariant: "detached"
|
|
207
|
-
}).status,
|
|
208
|
-
id: statusMessageID,
|
|
209
|
-
role: status.type === "error" ? "alert" : "status",
|
|
210
|
-
children: status.message
|
|
211
|
-
}
|
|
212
|
-
) : null;
|
|
213
|
-
const item = /* @__PURE__ */ jsxRuntime.jsx(
|
|
214
|
-
chunk4I6VIR44_cjs.Item,
|
|
215
|
-
{
|
|
216
|
-
description: description != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { id: descriptionId, children: description }) : void 0,
|
|
217
|
-
endContent,
|
|
218
|
-
endContentPosition,
|
|
219
|
-
isDisabled,
|
|
220
|
-
label: labelNode,
|
|
221
|
-
leadingContent: control,
|
|
222
|
-
startContent
|
|
223
|
-
}
|
|
224
|
-
);
|
|
225
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: chunkSPDVNY2Z_cjs.cx(styles.root, className), style, children: [
|
|
226
|
-
item,
|
|
227
|
-
statusNode
|
|
228
|
-
] });
|
|
229
|
-
}
|
|
230
|
-
CheckboxInput.displayName = "CheckboxInput";
|
|
231
|
-
|
|
232
|
-
exports.CheckboxInput = CheckboxInput;
|
|
233
|
-
//# sourceMappingURL=chunk-TO3ZPSYO.cjs.map
|
|
234
|
-
//# sourceMappingURL=chunk-TO3ZPSYO.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/CheckboxInput/CheckboxInput.tsx"],"names":["css","useId","useRef","getStatusMessageID","getDescribedBy","useEffect","jsxs","jsx","mergeRefs","cx","Spinner","Icon","Minus","Check","Fragment","Text","Tooltip","Info","VisuallyHidden","fieldRecipe","Item"],"mappings":"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","file":"chunk-TO3ZPSYO.cjs","sourcesContent":["import {Check, Info, Minus} from 'lucide-react';\nimport {\n useEffect,\n useId,\n useRef,\n type ChangeEvent,\n type CSSProperties,\n type FocusEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {VisuallyHidden} from '../../internal/VisuallyHidden';\nimport {cx} from '../../internal/cx';\nimport {mergeRefs} from '../../internal/mergeRefs';\nimport type {FieldNecessity, InputStatus} from '../Field';\nimport {fieldRecipe} from '../Field/Field.recipe';\nimport {getDescribedBy, getStatusMessageID} from '../Field/inputUtils';\nimport {Icon, type IconComponent} from '../Icon';\nimport {Item} from '../Item';\nimport {Spinner} from '../Spinner';\nimport {Text} from '../Text';\nimport {Tooltip} from '../Tooltip';\n\nexport type CheckboxInputSize = 'sm' | 'md';\nexport type CheckboxInputValue = boolean | 'indeterminate';\n\nexport type CheckboxInputProps = {\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Supporting text rendered below the label.\n */\n description?: ReactNode;\n /**\n * Content rendered after the label.\n */\n endContent?: ReactNode;\n /**\n * Where to place `endContent` within the item.\n * `'end'` pushes it to the trailing edge; `'inline'` keeps it next to the label.\n * @default 'inline'\n */\n endContentPosition?: 'end' | 'inline';\n /**\n * HTML name attribute for native form submission.\n */\n htmlName?: string;\n /**\n * Whether the checkbox is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Whether the checkbox is in a loading state.\n * @default false\n */\n isLoading?: boolean;\n /**\n * Whether the checkbox is read-only.\n * @default false\n */\n isReadOnly?: boolean;\n /**\n * Field label text.\n */\n label: string;\n /**\n * Optional content shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called when the checked state changes.\n */\n onChange: (checked: boolean, event: ChangeEvent<HTMLInputElement>) => void;\n /**\n * Called when the input receives focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Visual size of the checkbox.\n * @default 'md'\n */\n size?: CheckboxInputSize;\n /**\n * Content rendered after the checkbox control and before the label.\n */\n startContent?: ReactNode;\n /**\n * Validation status displayed below the checkbox.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * Current checked state: true, false, or 'indeterminate'.\n */\n value: CheckboxInputValue;\n} & FieldNecessity;\n\nconst styles = {\n root: css({\n display: 'flex',\n flexDirection: 'column',\n }),\n boxWrap: css({\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n }),\n input: css({\n position: 'absolute',\n inset: 0,\n opacity: 0,\n cursor: 'pointer',\n _disabled: {\n cursor: 'not-allowed',\n },\n }),\n box: css({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border.emphasized',\n borderRadius: 'sm',\n bg: 'bg',\n color: 'fg.onPrimary',\n pointerEvents: 'none',\n _peerFocusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n }),\n boxChecked: css({\n bg: 'primary',\n borderColor: 'primary',\n }),\n boxDisabled: css({\n opacity: 0.55,\n }),\n boxSize: {\n sm: css({w: '4.5', h: '4.5'}),\n md: css({w: '5.5', h: '5.5'}),\n },\n icon: css({\n w: '70%',\n h: '70%',\n }),\n label: css({\n cursor: 'pointer',\n }),\n labelDisabled: css({\n cursor: 'not-allowed',\n }),\n indicator: css({\n fontWeight: 'normal',\n color: 'fg.muted',\n }),\n tooltipIcon: css({\n display: 'inline-flex',\n color: 'fg.muted',\n }),\n} as const;\n\n/**\n * A checkbox input with label, description, and validation support.\n */\nexport function CheckboxInput({\n label,\n value,\n onChange,\n description,\n endContent,\n endContentPosition = 'inline',\n htmlName,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isReadOnly = false,\n isLoading = false,\n status,\n labelIcon,\n labelTooltip,\n size = 'md',\n startContent,\n onFocus,\n onBlur,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: CheckboxInputProps): React.JSX.Element {\n const inputId = useId();\n const descriptionId = useId();\n const inputRef = useRef<HTMLInputElement>(null);\n const statusMessageID = getStatusMessageID(inputId, status);\n const describedBy = getDescribedBy(\n description != null ? descriptionId : undefined,\n statusMessageID,\n );\n const isIndeterminate = value === 'indeterminate';\n const isChecked = value === true;\n const isCheckedOrIndeterminate = isChecked || isIndeterminate;\n\n useEffect(() => {\n if (inputRef.current != null) {\n inputRef.current.indeterminate = isIndeterminate;\n }\n }, [isIndeterminate]);\n\n const statusText = isOptional ? 'Optional' : isRequired ? 'Required' : null;\n\n const control = (\n <span className={styles.boxWrap}>\n <input\n aria-busy={isLoading || undefined}\n aria-checked={isIndeterminate ? 'mixed' : undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || undefined}\n aria-readonly={isReadOnly || undefined}\n checked={isChecked}\n className={styles.input}\n data-testid={dataTestId}\n disabled={isDisabled}\n id={inputId}\n name={htmlName}\n onBlur={onBlur}\n onChange={event => {\n if (isReadOnly) {\n event.preventDefault();\n return;\n }\n onChange(event.target.checked, event);\n }}\n onFocus={onFocus}\n readOnly={isReadOnly}\n ref={mergeRefs(ref, inputRef)}\n required={isRequired}\n type=\"checkbox\"\n />\n <span\n aria-hidden=\"true\"\n className={cx(\n styles.box,\n styles.boxSize[size],\n isCheckedOrIndeterminate ? styles.boxChecked : undefined,\n isDisabled ? styles.boxDisabled : undefined,\n )}>\n {isLoading ? (\n <Spinner\n size=\"sm\"\n variant={isCheckedOrIndeterminate ? 'onMedia' : 'default'}\n />\n ) : isIndeterminate ? (\n <Icon className={styles.icon} icon={Minus} />\n ) : isChecked ? (\n <Icon className={styles.icon} icon={Check} />\n ) : null}\n </span>\n </span>\n );\n\n const labelContent = (\n <>\n {labelIcon != null ? (\n <Icon color=\"secondary\" icon={labelIcon} size=\"sm\" />\n ) : null}\n {label}\n {statusText != null ? (\n <Text as=\"span\" className={styles.indicator} type=\"supporting\">\n <span aria-hidden=\"true\"> · </span>\n {statusText}\n </Text>\n ) : null}\n {labelTooltip != null ? (\n <Tooltip content={labelTooltip}>\n <span className={styles.tooltipIcon}>\n <Icon icon={Info} size=\"sm\" />\n </span>\n </Tooltip>\n ) : null}\n </>\n );\n\n const labelNode = (\n <label\n className={cx(\n styles.label,\n isDisabled ? styles.labelDisabled : undefined,\n )}\n htmlFor={inputId}>\n {isLabelHidden ? (\n <VisuallyHidden>{labelContent}</VisuallyHidden>\n ) : (\n labelContent\n )}\n </label>\n );\n\n const statusNode =\n status?.message != null ? (\n <div\n aria-live={status.type === 'error' ? 'assertive' : 'polite'}\n className={\n fieldRecipe({\n statusType: status.type,\n statusVariant: 'detached',\n }).status\n }\n id={statusMessageID}\n role={status.type === 'error' ? 'alert' : 'status'}>\n {status.message}\n </div>\n ) : null;\n\n const item = (\n <Item\n description={\n description != null ? (\n <span id={descriptionId}>{description}</span>\n ) : undefined\n }\n endContent={endContent}\n endContentPosition={endContentPosition}\n isDisabled={isDisabled}\n label={labelNode}\n leadingContent={control}\n startContent={startContent}\n />\n );\n\n return (\n <div className={cx(styles.root, className)} style={style}>\n {item}\n {statusNode}\n </div>\n );\n}\n\nCheckboxInput.displayName = 'CheckboxInput';\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Lightbox/Lightbox.tsx","../src/components/Lightbox/useLightbox.tsx"],"names":["css","useEffect","useRef","useState","useMemo","useCallback","useIsomorphicLayoutEffect","jsx","cx","mergeRefs","jsxs","Button","X","ChevronLeft","ChevronRight"],"mappings":"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","file":"chunk-TZQWZ7IL.cjs","sourcesContent":["/* eslint-disable jsx-a11y-x/no-noninteractive-element-interactions */\n\nimport {ChevronLeft, ChevronRight, X} from 'lucide-react';\nimport {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type MouseEvent as ReactMouseEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {mergeRefs} from '../../internal/mergeRefs';\nimport {useIsomorphicLayoutEffect} from '../../internal/useIsomorphicLayoutEffect';\nimport {Button} from '../Button';\n\nexport type LightboxMediaType = 'image' | 'video';\n\nexport interface LightboxMedia {\n /**\n * Accessible image alt text, or video label.\n */\n alt: string;\n /**\n * Optional caption shown below the media.\n */\n caption?: ReactNode;\n /**\n * Optional WebVTT captions source for video media.\n */\n captionsSrc?: string;\n /**\n * Media source URL.\n */\n src: string;\n /**\n * Media type.\n * @default 'image'\n */\n type?: LightboxMediaType;\n}\n\nexport interface LightboxProps {\n /**\n * Additional CSS class names applied to the dialog.\n */\n className?: string;\n /**\n * Test ID applied to the dialog.\n */\n 'data-testid'?: string;\n /**\n * Initial gallery index for uncontrolled usage.\n * @default 0\n */\n defaultIndex?: number;\n /**\n * Whether videos autoplay when opened.\n * @default false\n */\n hasAutoPlay?: boolean;\n /**\n * Whether images can be double-clicked to zoom.\n * @default false\n */\n hasZoom?: boolean;\n /**\n * Controlled gallery index.\n */\n index?: number;\n /**\n * Whether the lightbox is open.\n */\n isOpen: boolean;\n /**\n * Media to display.\n */\n media: LightboxMedia | ReadonlyArray<LightboxMedia>;\n /**\n * Called when gallery index changes.\n */\n onIndexChange?: (index: number) => void;\n /**\n * Called when the lightbox requests an open-state change.\n */\n onOpenChange: (isOpen: boolean) => void;\n /**\n * Ref forwarded to the dialog element.\n */\n ref?: Ref<HTMLDialogElement>;\n /**\n * Inline styles applied to the dialog.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n dialog: css({\n position: 'fixed',\n inset: 0,\n w: '100dvw',\n h: '100dvh',\n maxW: 'none',\n maxH: 'none',\n m: 0,\n p: 0,\n borderWidth: 0,\n bg: 'transparent',\n overflow: 'hidden',\n outline: 'none',\n _backdrop: {\n bg: 'overlay.scrim.strong',\n backdropFilter: 'blur(2px)',\n },\n }),\n container: css({\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n w: 'full',\n h: 'full',\n p: '8',\n }),\n mediaGroup: css({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n maxW: 'full',\n maxH: 'full',\n minH: 0,\n }),\n mediaWrap: css({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n minH: 0,\n userSelect: 'none',\n }),\n zoomable: css({cursor: 'zoom-in'}),\n zoomed: css({cursor: 'grab'}),\n dragging: css({cursor: 'grabbing'}),\n image: css({\n display: 'block',\n maxW: '100%',\n maxH: 'calc(100dvh - 7rem)',\n objectFit: 'contain',\n pointerEvents: 'none',\n transitionProperty: 'transform',\n transitionDuration: 'normal',\n transitionTimingFunction: 'default',\n '@media (prefers-reduced-motion: reduce)': {\n transitionDuration: '0ms',\n },\n }),\n imageDragging: css({transitionProperty: 'none'}),\n video: css({\n maxW: '100%',\n maxH: 'calc(100dvh - 7rem)',\n objectFit: 'contain',\n outline: 'none',\n }),\n caption: css({\n w: 'full',\n maxW: 'min(90dvw, 48rem)',\n px: '3',\n pt: '2',\n color: 'fg.onPrimary',\n fontFamily: 'body',\n fontSize: 'lg',\n lineHeight: 'normal',\n textAlign: 'center',\n }),\n close: css({\n position: 'absolute',\n top: '3',\n right: '3',\n zIndex: 1,\n }),\n nav: css({\n position: 'absolute',\n top: '50%',\n zIndex: 1,\n transform: 'translateY(-50%)',\n }),\n prev: css({left: '3'}),\n next: css({right: '3'}),\n counter: css({\n position: 'absolute',\n top: '3',\n left: '3',\n zIndex: 1,\n color: 'fg.onPrimary',\n fontFamily: 'body',\n fontSize: 'md',\n }),\n controlButton: css({\n bg: 'overlay.scrim',\n color: 'fg.onPrimary',\n _hover: {\n bg: 'overlay.scrim.strong',\n },\n _active: {\n bg: 'overlay.scrim.strong',\n },\n }),\n} as const;\n\nfunction useScrollLock(isLocked: boolean): void {\n useEffect(() => {\n if (!isLocked) {\n return;\n }\n const previousOverflow = document.body.style.overflow;\n document.body.style.overflow = 'hidden';\n return () => {\n document.body.style.overflow = previousOverflow;\n };\n }, [isLocked]);\n}\n\nfunction isMediaArray(\n media: LightboxMedia | ReadonlyArray<LightboxMedia>,\n): media is ReadonlyArray<LightboxMedia> {\n return Array.isArray(media);\n}\n\n/**\n * Fullscreen dialog for viewing image or video media, with optional gallery navigation.\n */\nexport function Lightbox({\n className,\n 'data-testid': dataTestId,\n defaultIndex = 0,\n hasAutoPlay = false,\n hasZoom = false,\n index: indexFromProps,\n isOpen,\n media,\n onIndexChange,\n onOpenChange,\n ref,\n style,\n}: LightboxProps): React.JSX.Element {\n const dialogRef = useRef<HTMLDialogElement>(null);\n const triggerRef = useRef<Element | null>(null);\n const [uncontrolledIndex, setUncontrolledIndex] = useState(defaultIndex);\n const [zoom, setZoom] = useState(1);\n const [pan, setPan] = useState({x: 0, y: 0});\n const [isDragging, setIsDragging] = useState(false);\n const dragStartRef = useRef({x: 0, y: 0, panX: 0, panY: 0});\n const isControlled = indexFromProps !== undefined;\n const index = isControlled ? indexFromProps : uncontrolledIndex;\n const mediaItems: ReadonlyArray<LightboxMedia> = useMemo(\n () => (isMediaArray(media) ? media : [media]),\n [media],\n );\n const currentIndex =\n mediaItems.length === 0\n ? 0\n : Math.min(Math.max(index, 0), mediaItems.length - 1);\n const currentItem =\n mediaItems.length === 0 ? undefined : mediaItems[currentIndex];\n const hasMedia = currentItem != null;\n const isGallery = mediaItems.length > 1;\n const isVideo = (currentItem?.type ?? 'image') === 'video';\n const canPrev = isGallery && currentIndex > 0;\n const canNext = isGallery && currentIndex < mediaItems.length - 1;\n const imageTransform =\n zoom === 1\n ? undefined\n : `scale(${zoom}) translate(${pan.x / zoom}px, ${pan.y / zoom}px)`;\n\n useScrollLock(isOpen);\n\n const setIndex = useCallback(\n (nextIndex: number) => {\n if (!isControlled) {\n setUncontrolledIndex(nextIndex);\n }\n onIndexChange?.(nextIndex);\n },\n [isControlled, onIndexChange],\n );\n\n useEffect(() => {\n // eslint-disable-next-line @eslint-react/set-state-in-effect\n setZoom(1);\n // eslint-disable-next-line @eslint-react/set-state-in-effect\n setPan({x: 0, y: 0});\n }, [currentIndex, currentItem?.src, isOpen]);\n\n useEffect(() => {\n if (!isGallery) {\n return;\n }\n\n for (const nextIndex of [currentIndex - 1, currentIndex + 1]) {\n if (nextIndex < 0 || nextIndex >= mediaItems.length) {\n continue;\n }\n const item = mediaItems[nextIndex];\n if (item.type === 'video') {\n continue;\n }\n\n const image = new Image();\n image.src = item.src;\n }\n }, [currentIndex, isGallery, mediaItems]);\n\n useIsomorphicLayoutEffect(() => {\n const dialog = dialogRef.current;\n if (dialog == null) {\n return;\n }\n if (isOpen && !dialog.open) {\n triggerRef.current = document.activeElement;\n dialog.showModal();\n } else if (!isOpen && dialog.open) {\n dialog.close();\n if (triggerRef.current instanceof HTMLElement) {\n triggerRef.current.focus();\n }\n }\n }, [isOpen]);\n\n useEffect(() => {\n if (!isDragging) {\n return;\n }\n const handlePointerMove = (event: PointerEvent) => {\n setPan({\n x: dragStartRef.current.panX + event.clientX - dragStartRef.current.x,\n y: dragStartRef.current.panY + event.clientY - dragStartRef.current.y,\n });\n };\n const handlePointerUp = () => setIsDragging(false);\n window.addEventListener('pointermove', handlePointerMove);\n window.addEventListener('pointerup', handlePointerUp);\n return () => {\n window.removeEventListener('pointermove', handlePointerMove);\n window.removeEventListener('pointerup', handlePointerUp);\n };\n }, [isDragging]);\n\n const close = useCallback(() => {\n onOpenChange(false);\n }, [onOpenChange]);\n const goPrev = useCallback(() => {\n if (canPrev) {\n setIndex(currentIndex - 1);\n }\n }, [canPrev, currentIndex, setIndex]);\n const goNext = useCallback(() => {\n if (canNext) {\n setIndex(currentIndex + 1);\n }\n }, [canNext, currentIndex, setIndex]);\n\n return (\n <dialog\n aria-label=\"Media lightbox\"\n className={cx(styles.dialog, className)}\n data-testid={dataTestId}\n onCancel={event => {\n event.preventDefault();\n close();\n }}\n onClick={(event: ReactMouseEvent<HTMLDialogElement>) => {\n if (event.target === event.currentTarget) {\n close();\n }\n }}\n onKeyDown={event => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n goPrev();\n } else if (event.key === 'ArrowRight') {\n event.preventDefault();\n goNext();\n }\n }}\n ref={mergeRefs(ref, dialogRef)}\n style={style}>\n <div className={styles.container}>\n <div className={styles.close}>\n <Button\n className={styles.controlButton}\n icon={X}\n isIconOnly\n label=\"Close\"\n onClick={close}\n />\n </div>\n {canPrev ? (\n <div className={cx(styles.nav, styles.prev)}>\n <Button\n className={styles.controlButton}\n icon={ChevronLeft}\n isIconOnly\n label=\"Previous\"\n onClick={goPrev}\n />\n </div>\n ) : null}\n {hasMedia ? (\n <div className={styles.mediaGroup}>\n {/* eslint-disable-next-line jsx-a11y-x/no-static-element-interactions -- media viewport supports image zoom/pan gestures */}\n <div\n className={cx(\n styles.mediaWrap,\n !isVideo && hasZoom && zoom === 1 ? styles.zoomable : undefined,\n !isVideo && zoom > 1 ? styles.zoomed : undefined,\n isDragging ? styles.dragging : undefined,\n )}\n onDoubleClick={() => {\n if (!hasZoom || isVideo) {\n return;\n }\n setZoom(zoom === 1 ? 2 : 1);\n setPan({x: 0, y: 0});\n }}\n onPointerDown={event => {\n if (!hasZoom || isVideo || zoom <= 1) {\n return;\n }\n setIsDragging(true);\n dragStartRef.current = {\n x: event.clientX,\n y: event.clientY,\n panX: pan.x,\n panY: pan.y,\n };\n }}>\n {isVideo ? (\n // eslint-disable-next-line jsx-a11y-x/media-has-caption -- captions are rendered only when callers provide a real WebVTT source\n <video\n aria-label={currentItem.alt}\n autoPlay={hasAutoPlay}\n className={styles.video}\n controls\n src={currentItem.src}>\n {currentItem.captionsSrc != null ? (\n <track\n kind=\"captions\"\n label=\"Captions\"\n src={currentItem.captionsSrc}\n />\n ) : null}\n </video>\n ) : (\n <img\n alt={currentItem.alt}\n className={cx(\n styles.image,\n isDragging ? styles.imageDragging : undefined,\n )}\n draggable={false}\n src={currentItem.src}\n style={{transform: imageTransform}}\n />\n )}\n </div>\n {currentItem.caption != null ? (\n <div className={styles.caption}>{currentItem.caption}</div>\n ) : null}\n </div>\n ) : null}\n {canNext ? (\n <div className={cx(styles.nav, styles.next)}>\n <Button\n className={styles.controlButton}\n icon={ChevronRight}\n isIconOnly\n label=\"Next\"\n onClick={goNext}\n />\n </div>\n ) : null}\n {isGallery ? (\n <div className={styles.counter}>\n {currentIndex + 1} / {mediaItems.length}\n </div>\n ) : null}\n </div>\n </dialog>\n );\n}\n\nLightbox.displayName = 'Lightbox';\n","import {useCallback, useMemo, useState, type ReactNode} from 'react';\nimport {Lightbox, type LightboxMedia, type LightboxProps} from './Lightbox';\n\ntype LightboxOptions = Omit<\n LightboxProps,\n | 'defaultIndex'\n | 'index'\n | 'isOpen'\n | 'media'\n | 'onIndexChange'\n | 'onOpenChange'\n>;\n\nexport interface UseLightboxOptions extends LightboxOptions {\n /**\n * Media to display in the lightbox.\n */\n media: LightboxMedia | ReadonlyArray<LightboxMedia>;\n}\n\nexport interface UseLightboxReturn {\n /**\n * Close the lightbox.\n */\n close: () => void;\n /**\n * Render this element in your tree.\n */\n element: ReactNode;\n /**\n * Returns trigger props that open at the given gallery index.\n */\n getTriggerProps: (index: number) => {\n 'aria-haspopup': 'dialog';\n onClick: () => void;\n onKeyDown: (event: React.KeyboardEvent) => void;\n role: 'button';\n tabIndex: 0;\n };\n /**\n * Current gallery index.\n */\n index: number;\n /**\n * Whether the lightbox is open.\n */\n isOpen: boolean;\n /**\n * Open the lightbox, optionally at a specific gallery index.\n */\n open: (index?: number) => void;\n /**\n * Trigger props that open the first item.\n */\n triggerProps: {\n 'aria-haspopup': 'dialog';\n onClick: () => void;\n onKeyDown: (event: React.KeyboardEvent) => void;\n role: 'button';\n tabIndex: 0;\n };\n}\n\n/**\n * State helper for Lightbox triggers and rendering.\n */\nexport function useLightbox(options: UseLightboxOptions): UseLightboxReturn {\n const {media, ...lightboxProps} = options;\n const [isOpen, setIsOpen] = useState(false);\n const [index, setIndex] = useState(0);\n\n const open = useCallback((nextIndex = 0) => {\n setIndex(nextIndex);\n setIsOpen(true);\n }, []);\n const close = useCallback(() => setIsOpen(false), []);\n const getTriggerProps = useCallback(\n (nextIndex: number) => ({\n 'aria-haspopup': 'dialog' as const,\n onClick: () => open(nextIndex),\n onKeyDown: (event: React.KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n open(nextIndex);\n }\n },\n role: 'button' as const,\n tabIndex: 0 as const,\n }),\n [open],\n );\n const triggerProps = useMemo(() => getTriggerProps(0), [getTriggerProps]);\n const element = (\n <Lightbox\n {...lightboxProps}\n index={index}\n isOpen={isOpen}\n media={media}\n onIndexChange={setIndex}\n onOpenChange={setIsOpen}\n />\n );\n\n return {close, element, getTriggerProps, index, isOpen, open, triggerProps};\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Skeleton/Skeleton.recipe.ts","../src/components/Skeleton/Skeleton.tsx"],"names":[],"mappings":";;;;;AAEO,IAAM,iBAAiB,GAAA,CAAI;AAAA,EAChC,IAAA,EAAM;AAAA,IACJ,EAAA,EAAI,UAAA;AAAA,IACJ,eAAA,EACE,oHAAA;AAAA,IACF,cAAA,EAAgB,WAAA;AAAA,IAChB,SAAA,EAAW,4CAAA;AAAA,IACX,yCAAA,EAA2C;AAAA,MACzC,SAAA,EAAW,MAAA;AAAA,MACX,eAAA,EAAiB;AAAA;AACnB,GACF;AAAA,EACA,QAAA,EAAU;AAAA,IACR,MAAA,EAAQ;AAAA,MACN,IAAA,EAAM,EAAC,YAAA,EAAc,CAAA,EAAC;AAAA,MACtB,CAAA,EAAG,EAAC,YAAA,EAAc,CAAA,EAAC;AAAA,MACnB,CAAA,EAAG,EAAC,YAAA,EAAc,IAAA,EAAI;AAAA,MACtB,CAAA,EAAG,EAAC,YAAA,EAAc,IAAA,EAAI;AAAA,MACtB,CAAA,EAAG,EAAC,YAAA,EAAc,IAAA,EAAI;AAAA,MACtB,CAAA,EAAG,EAAC,YAAA,EAAc,IAAA,EAAI;AAAA,MACtB,OAAA,EAAS,EAAC,YAAA,EAAc,MAAA;AAAM;AAChC,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,MAAA,EAAQ;AAAA;AAEZ,CAAC;ACuBD,IAAM,SAAA,GAAY,GAAA;AAClB,IAAM,WAAA,GAAc,GAAA;AAEpB,SAAS,WAAW,KAAA,EAAgC;AAClD,EAAA,OAAO,OAAO,KAAA,KAAU,QAAA,GAAW,CAAA,EAAG,KAAK,CAAA,EAAA,CAAA,GAAO,KAAA;AACpD;AAQO,SAAS,QAAA,CAAS;AAAA,EACvB,cAAc,SAAA,GAAY,SAAA;AAAA,EAC1B,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,MAAA,GAAS,MAAA;AAAA,EACT,MAAA,GAAS,CAAA;AAAA,EACT,GAAA;AAAA,EACA,YAAA,GAAe,CAAA;AAAA,EACf,KAAA;AAAA,EACA,KAAA,GAAQ;AACV,CAAA,EAAqC;AACnC,EAAA,MAAM,YAAA,GAAe,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,YAAY,CAAA;AAE7C,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,SAAA;AAAA,MACZ,WAAW,EAAA,CAAG,cAAA,CAAe,EAAC,MAAA,EAAO,GAAG,SAAS,CAAA;AAAA,MACjD,aAAA,EAAa,UAAA;AAAA,MACb,GAAA;AAAA,MACA,IAAA,EAAK,QAAA;AAAA,MACL,KAAA,EAAO;AAAA,QACL,GAAG,KAAA;AAAA,QACH,KAAA,EAAO,WAAW,KAAK,CAAA;AAAA,QACvB,MAAA,EAAQ,WAAW,MAAM,CAAA;AAAA,QACzB,cAAA,EAAgB,CAAA,EAAG,SAAA,GAAY,WAAA,GAAc,YAAY,CAAA,EAAA;AAAA;AAC3D;AAAA,GACF;AAEJ;AAEA,QAAA,CAAS,WAAA,GAAc,UAAA","file":"chunk-U4GWNENK.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const skeletonRecipe = cva({\n base: {\n bg: 'skeleton',\n backgroundImage:\n 'linear-gradient(90deg, token(colors.skeleton) 0%, token(colors.skeleton.shimmer) 50%, token(colors.skeleton) 100%)',\n backgroundSize: '200% 100%',\n animation: 'skeleton-shimmer 1.4s ease-in-out infinite',\n '@media (prefers-reduced-motion: reduce)': {\n animation: 'none',\n backgroundImage: 'none',\n },\n },\n variants: {\n radius: {\n none: {borderRadius: 0},\n 0: {borderRadius: 0},\n 1: {borderRadius: 'xs'},\n 2: {borderRadius: 'sm'},\n 3: {borderRadius: 'md'},\n 4: {borderRadius: 'lg'},\n rounded: {borderRadius: 'full'},\n },\n },\n defaultVariants: {\n radius: 3,\n },\n});\n\nexport type SkeletonVariants = RecipeVariantProps<typeof skeletonRecipe>;\n","import type {CSSProperties, Ref} from 'react';\nimport {cx} from '../../internal/cx';\nimport {skeletonRecipe} from './Skeleton.recipe';\n\nexport type SkeletonRadius = 0 | 1 | 2 | 3 | 4 | 'none' | 'rounded';\n\nexport interface SkeletonProps {\n /**\n * Accessible label for the loading placeholder.\n * @default 'Loading'\n */\n 'aria-label'?: string;\n /**\n * Additional CSS class names applied to the skeleton.\n */\n className?: string;\n /**\n * Test ID applied to the skeleton.\n */\n 'data-testid'?: string;\n /**\n * Skeleton height. Numbers are treated as pixels.\n * @default '100%'\n */\n height?: number | string;\n /**\n * Border radius token.\n * @default 3\n */\n radius?: SkeletonRadius;\n /**\n * Ref forwarded to the skeleton element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Animation stagger index for lists of skeletons. Controls the delay\n * before the shimmer animation starts, creating a wave effect.\n * @default 0\n */\n staggerIndex?: number;\n /**\n * Inline styles applied to the skeleton.\n */\n style?: CSSProperties;\n /**\n * Skeleton width. Numbers are treated as pixels.\n * @default '100%'\n */\n width?: number | string;\n}\n\nconst delayTime = 1000;\nconst staggerTime = 100;\n\nfunction formatSize(value: number | string): string {\n return typeof value === 'number' ? `${value}px` : value;\n}\n\n/**\n * A pulsing placeholder used while content is loading.\n *\n * For containers with multiple skeletons, set `aria-busy=\"true\"` on the\n * parent element so assistive technology knows to wait for content.\n */\nexport function Skeleton({\n 'aria-label': ariaLabel = 'Loading',\n className,\n 'data-testid': dataTestId,\n height = '100%',\n radius = 3,\n ref,\n staggerIndex = 0,\n style,\n width = '100%',\n}: SkeletonProps): React.JSX.Element {\n const clampedIndex = Math.max(0, staggerIndex);\n\n return (\n <div\n aria-label={ariaLabel}\n className={cx(skeletonRecipe({radius}), className)}\n data-testid={dataTestId}\n ref={ref}\n role=\"status\"\n style={{\n ...style,\n width: formatSize(width),\n height: formatSize(height),\n animationDelay: `${delayTime + staggerTime * clampedIndex}ms`,\n }}\n />\n );\n}\n\nSkeleton.displayName = 'Skeleton';\n"]}
|