silver-ui 0.3.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-QGHFUOUB.cjs → chunk-2A3V6OR7.cjs} +7 -7
- package/dist/{chunk-QGHFUOUB.cjs.map → chunk-2A3V6OR7.cjs.map} +1 -1
- package/dist/{chunk-RVENUWRD.js → chunk-2LABTS4P.js} +7 -7
- package/dist/{chunk-RVENUWRD.js.map → chunk-2LABTS4P.js.map} +1 -1
- package/dist/{chunk-DIIE44GO.js → chunk-2N6FOSNM.js} +5 -5
- package/dist/{chunk-DIIE44GO.js.map → chunk-2N6FOSNM.js.map} +1 -1
- package/dist/{chunk-LUBVZVY3.js → chunk-2RKMG2TC.js} +7 -7
- package/dist/{chunk-LUBVZVY3.js.map → chunk-2RKMG2TC.js.map} +1 -1
- package/dist/{chunk-EMHLPPQZ.js → chunk-3CJC4QE6.js} +4 -4
- package/dist/chunk-3CJC4QE6.js.map +1 -0
- package/dist/{chunk-P3SMNZCT.js → chunk-3JPUXC5U.js} +3 -3
- package/dist/{chunk-P3SMNZCT.js.map → chunk-3JPUXC5U.js.map} +1 -1
- package/dist/{chunk-F3ZNRO6W.js → chunk-3OIUA2NY.js} +5 -5
- package/dist/{chunk-F3ZNRO6W.js.map → chunk-3OIUA2NY.js.map} +1 -1
- package/dist/{chunk-PZ63ZCEO.cjs → chunk-3ZV3EGGK.cjs} +17 -17
- package/dist/{chunk-PZ63ZCEO.cjs.map → chunk-3ZV3EGGK.cjs.map} +1 -1
- package/dist/{chunk-O5A47TA2.js → chunk-4H7X5FGX.js} +5 -5
- package/dist/{chunk-O5A47TA2.js.map → chunk-4H7X5FGX.js.map} +1 -1
- package/dist/{chunk-Q3OA23V5.js → chunk-52WQDDWQ.js} +7 -7
- package/dist/{chunk-Q3OA23V5.js.map → chunk-52WQDDWQ.js.map} +1 -1
- package/dist/{chunk-ZLATP3P5.cjs → chunk-5D2OR64D.cjs} +6 -6
- package/dist/{chunk-ZLATP3P5.cjs.map → chunk-5D2OR64D.cjs.map} +1 -1
- package/dist/{chunk-YAIEA2YE.cjs → chunk-5PX76QOL.cjs} +3 -3
- package/dist/{chunk-YAIEA2YE.cjs.map → chunk-5PX76QOL.cjs.map} +1 -1
- package/dist/{chunk-HM7IEGQ2.cjs → chunk-5YS43PSQ.cjs} +7 -7
- package/dist/chunk-5YS43PSQ.cjs.map +1 -0
- package/dist/{chunk-D2DOHX4W.js → chunk-6ONAGCCZ.js} +13 -6
- package/dist/chunk-6ONAGCCZ.js.map +1 -0
- package/dist/{chunk-DSB4Q3AS.js → chunk-6ULCJ3XZ.js} +4 -4
- package/dist/{chunk-DSB4Q3AS.js.map → chunk-6ULCJ3XZ.js.map} +1 -1
- package/dist/{chunk-GXRH5XQY.js → chunk-6XWXBXYE.js} +5 -5
- package/dist/{chunk-GXRH5XQY.js.map → chunk-6XWXBXYE.js.map} +1 -1
- package/dist/{chunk-EXYBQVZT.js → chunk-7BSFKG7N.js} +3 -3
- package/dist/{chunk-EXYBQVZT.js.map → chunk-7BSFKG7N.js.map} +1 -1
- package/dist/{chunk-7GN6YTSS.cjs → chunk-7CCXHH6Y.cjs} +7 -7
- package/dist/chunk-7CCXHH6Y.cjs.map +1 -0
- package/dist/{chunk-PJMV2HTO.cjs → chunk-7U7JMRVF.cjs} +18 -18
- package/dist/{chunk-PJMV2HTO.cjs.map → chunk-7U7JMRVF.cjs.map} +1 -1
- package/dist/{chunk-M3IKL2VG.js → chunk-AFI4V7LI.js} +6 -6
- package/dist/{chunk-M3IKL2VG.js.map → chunk-AFI4V7LI.js.map} +1 -1
- package/dist/{chunk-OSBVDRVD.cjs → chunk-AHVHLNHU.cjs} +8 -8
- package/dist/{chunk-OSBVDRVD.cjs.map → chunk-AHVHLNHU.cjs.map} +1 -1
- package/dist/{chunk-6USJ4LJJ.js → chunk-AJ6X62AI.js} +4 -4
- package/dist/{chunk-6USJ4LJJ.js.map → chunk-AJ6X62AI.js.map} +1 -1
- package/dist/{chunk-UKDGDMWN.js → chunk-AP7BDTTF.js} +4 -4
- package/dist/{chunk-UKDGDMWN.js.map → chunk-AP7BDTTF.js.map} +1 -1
- package/dist/{chunk-7U7RP6N2.cjs → chunk-AWDIKDX5.cjs} +10 -10
- package/dist/{chunk-7U7RP6N2.cjs.map → chunk-AWDIKDX5.cjs.map} +1 -1
- package/dist/{chunk-5AYGQJOW.js → chunk-BCCPNGUV.js} +4 -4
- package/dist/{chunk-5AYGQJOW.js.map → chunk-BCCPNGUV.js.map} +1 -1
- package/dist/{chunk-QRKRVCA3.cjs → chunk-BLRWA445.cjs} +25 -25
- package/dist/{chunk-QRKRVCA3.cjs.map → chunk-BLRWA445.cjs.map} +1 -1
- package/dist/{chunk-BA4A7C7U.js → chunk-BSAZRW6T.js} +8 -8
- package/dist/{chunk-BA4A7C7U.js.map → chunk-BSAZRW6T.js.map} +1 -1
- package/dist/{chunk-5TT4PGZO.cjs → chunk-BUESV4DR.cjs} +9 -9
- package/dist/{chunk-5TT4PGZO.cjs.map → chunk-BUESV4DR.cjs.map} +1 -1
- package/dist/{chunk-HPVXP3DG.cjs → chunk-BULJWVPU.cjs} +16 -16
- package/dist/{chunk-HPVXP3DG.cjs.map → chunk-BULJWVPU.cjs.map} +1 -1
- package/dist/{chunk-L7BOLGF2.cjs → chunk-C6EYCIKJ.cjs} +3 -3
- package/dist/{chunk-L7BOLGF2.cjs.map → chunk-C6EYCIKJ.cjs.map} +1 -1
- package/dist/{chunk-4H35H54I.cjs → chunk-C732WXKS.cjs} +12 -12
- package/dist/{chunk-4H35H54I.cjs.map → chunk-C732WXKS.cjs.map} +1 -1
- package/dist/{chunk-S4B2D427.js → chunk-CGYZ6QWY.js} +4 -4
- package/dist/{chunk-S4B2D427.js.map → chunk-CGYZ6QWY.js.map} +1 -1
- package/dist/{chunk-QCT4BPB6.cjs → chunk-CKTXDIH4.cjs} +39 -40
- package/dist/chunk-CKTXDIH4.cjs.map +1 -0
- package/dist/{chunk-PYW5UO2Z.js → chunk-D3LZQ5QS.js} +4 -4
- package/dist/chunk-D3LZQ5QS.js.map +1 -0
- package/dist/{chunk-D3SSMY73.cjs → chunk-DIRVAHOF.cjs} +6 -6
- package/dist/{chunk-D3SSMY73.cjs.map → chunk-DIRVAHOF.cjs.map} +1 -1
- package/dist/{chunk-ZD3NPHZ7.cjs → chunk-DP7VC4FW.cjs} +4 -4
- package/dist/{chunk-ZD3NPHZ7.cjs.map → chunk-DP7VC4FW.cjs.map} +1 -1
- package/dist/{chunk-NYQPIBOD.cjs → chunk-DVGLYE3G.cjs} +10 -10
- package/dist/{chunk-NYQPIBOD.cjs.map → chunk-DVGLYE3G.cjs.map} +1 -1
- package/dist/{chunk-ZWULWVN3.js → chunk-DWUEPOYH.js} +7 -7
- package/dist/{chunk-ZWULWVN3.js.map → chunk-DWUEPOYH.js.map} +1 -1
- package/dist/{chunk-UN35QV25.js → chunk-DXPQRAGI.js} +4 -4
- package/dist/{chunk-UN35QV25.js.map → chunk-DXPQRAGI.js.map} +1 -1
- package/dist/{chunk-3XDUR3IG.cjs → chunk-E2A3GJSN.cjs} +5 -5
- package/dist/{chunk-3XDUR3IG.cjs.map → chunk-E2A3GJSN.cjs.map} +1 -1
- package/dist/{chunk-OULO3YDQ.cjs → chunk-EALKX3ST.cjs} +7 -7
- package/dist/{chunk-OULO3YDQ.cjs.map → chunk-EALKX3ST.cjs.map} +1 -1
- package/dist/{chunk-VAK4JQYL.js → chunk-EBDODJ5X.js} +6 -6
- package/dist/{chunk-VAK4JQYL.js.map → chunk-EBDODJ5X.js.map} +1 -1
- package/dist/{chunk-U5GTHA44.cjs → chunk-FB245S6T.cjs} +11 -11
- package/dist/{chunk-U5GTHA44.cjs.map → chunk-FB245S6T.cjs.map} +1 -1
- package/dist/{chunk-RNB4BDEG.js → chunk-FDUO2HVX.js} +3 -3
- package/dist/{chunk-RNB4BDEG.js.map → chunk-FDUO2HVX.js.map} +1 -1
- package/dist/{chunk-6W3L6IJB.cjs → chunk-FDZQPWFZ.cjs} +11 -11
- package/dist/{chunk-6W3L6IJB.cjs.map → chunk-FDZQPWFZ.cjs.map} +1 -1
- package/dist/{chunk-3L6KAW7G.js → chunk-FMLIYHDP.js} +5 -5
- package/dist/{chunk-3L6KAW7G.js.map → chunk-FMLIYHDP.js.map} +1 -1
- package/dist/{chunk-XADTIY7J.cjs → chunk-FNOUX5T2.cjs} +5 -5
- package/dist/{chunk-XADTIY7J.cjs.map → chunk-FNOUX5T2.cjs.map} +1 -1
- package/dist/{chunk-LFRTNC7M.cjs → chunk-FNZOICR4.cjs} +7 -7
- package/dist/{chunk-LFRTNC7M.cjs.map → chunk-FNZOICR4.cjs.map} +1 -1
- package/dist/{chunk-IRSJHEYI.js → chunk-FP5E5BUM.js} +3 -3
- package/dist/{chunk-IRSJHEYI.js.map → chunk-FP5E5BUM.js.map} +1 -1
- package/dist/{chunk-ZVH3BLYO.js → chunk-G2U2W422.js} +6 -6
- package/dist/{chunk-ZVH3BLYO.js.map → chunk-G2U2W422.js.map} +1 -1
- package/dist/{chunk-W3KMDQKP.cjs → chunk-G2WW52GO.cjs} +12 -12
- package/dist/{chunk-W3KMDQKP.cjs.map → chunk-G2WW52GO.cjs.map} +1 -1
- package/dist/{chunk-U2U4FMFM.cjs → chunk-G3KKLGZU.cjs} +9 -9
- package/dist/{chunk-U2U4FMFM.cjs.map → chunk-G3KKLGZU.cjs.map} +1 -1
- package/dist/{chunk-IKF6VHA4.cjs → chunk-GC5VUTUR.cjs} +4 -4
- package/dist/{chunk-IKF6VHA4.cjs.map → chunk-GC5VUTUR.cjs.map} +1 -1
- package/dist/{chunk-QL3YSC3H.cjs → chunk-GL7PSN7H.cjs} +15 -15
- package/dist/{chunk-QL3YSC3H.cjs.map → chunk-GL7PSN7H.cjs.map} +1 -1
- package/dist/{chunk-WMXIUOOU.cjs → chunk-GYVWTH3U.cjs} +3 -3
- package/dist/{chunk-WMXIUOOU.cjs.map → chunk-GYVWTH3U.cjs.map} +1 -1
- package/dist/{chunk-UXDXE7Z6.cjs → chunk-H2CZ6IE5.cjs} +38 -36
- package/dist/chunk-H2CZ6IE5.cjs.map +1 -0
- package/dist/{chunk-MGVEX3RS.js → chunk-H7HQYBPH.js} +25 -26
- package/dist/chunk-H7HQYBPH.js.map +1 -0
- package/dist/{chunk-ZNUOFLCQ.js → chunk-HINS4GY6.js} +3 -3
- package/dist/chunk-HINS4GY6.js.map +1 -0
- package/dist/{chunk-EC2ALHNJ.js → chunk-HNZWPIJE.js} +8 -8
- package/dist/{chunk-EC2ALHNJ.js.map → chunk-HNZWPIJE.js.map} +1 -1
- package/dist/{chunk-3ZFEBOXD.cjs → chunk-IA5GII7N.cjs} +16 -16
- package/dist/chunk-IA5GII7N.cjs.map +1 -0
- package/dist/{chunk-EHCAF6D3.js → chunk-IAVZKGZS.js} +14 -3
- package/dist/chunk-IAVZKGZS.js.map +1 -0
- package/dist/{chunk-AJTJD5C6.js → chunk-ILEKDNP7.js} +6 -6
- package/dist/{chunk-AJTJD5C6.js.map → chunk-ILEKDNP7.js.map} +1 -1
- package/dist/{chunk-XSQOHNIF.js → chunk-J3DNWPXJ.js} +3 -3
- package/dist/{chunk-XSQOHNIF.js.map → chunk-J3DNWPXJ.js.map} +1 -1
- package/dist/{chunk-M3BF3BBJ.cjs → chunk-J4OEETYQ.cjs} +10 -10
- package/dist/{chunk-M3BF3BBJ.cjs.map → chunk-J4OEETYQ.cjs.map} +1 -1
- package/dist/{chunk-YSTESYUB.js → chunk-J5IRFGUP.js} +8 -8
- package/dist/chunk-J5IRFGUP.js.map +1 -0
- package/dist/{chunk-5D4LRSIV.js → chunk-JDAJ2HJQ.js} +6 -6
- package/dist/{chunk-5D4LRSIV.js.map → chunk-JDAJ2HJQ.js.map} +1 -1
- package/dist/{chunk-3DJ46WN4.js → chunk-JIVYPJKO.js} +6 -6
- package/dist/{chunk-3DJ46WN4.js.map → chunk-JIVYPJKO.js.map} +1 -1
- package/dist/{chunk-U2WVHZ24.cjs → chunk-JJ324PSZ.cjs} +6 -6
- package/dist/chunk-JJ324PSZ.cjs.map +1 -0
- package/dist/{chunk-EE2O457Z.cjs → chunk-JSINCF2R.cjs} +10 -10
- package/dist/{chunk-EE2O457Z.cjs.map → chunk-JSINCF2R.cjs.map} +1 -1
- package/dist/{chunk-X2GRBPCJ.cjs → chunk-JTFNNEWR.cjs} +7 -7
- package/dist/{chunk-X2GRBPCJ.cjs.map → chunk-JTFNNEWR.cjs.map} +1 -1
- package/dist/{chunk-YAYINZT2.cjs → chunk-JYVYCU22.cjs} +3 -3
- package/dist/{chunk-YAYINZT2.cjs.map → chunk-JYVYCU22.cjs.map} +1 -1
- package/dist/{chunk-PQRIV5XU.js → chunk-K3XHXWBW.js} +9 -9
- package/dist/{chunk-PQRIV5XU.js.map → chunk-K3XHXWBW.js.map} +1 -1
- package/dist/{chunk-65QAZWOG.cjs → chunk-K4ZJNQTX.cjs} +4 -4
- package/dist/{chunk-65QAZWOG.cjs.map → chunk-K4ZJNQTX.cjs.map} +1 -1
- package/dist/{chunk-CZM5FAWL.cjs → chunk-KDR5DCYL.cjs} +9 -9
- package/dist/{chunk-CZM5FAWL.cjs.map → chunk-KDR5DCYL.cjs.map} +1 -1
- package/dist/{chunk-GLJWAY4A.cjs → chunk-KXIILLQD.cjs} +10 -10
- package/dist/{chunk-GLJWAY4A.cjs.map → chunk-KXIILLQD.cjs.map} +1 -1
- package/dist/{chunk-Y4FH67QZ.js → chunk-L6VSBBPP.js} +7 -7
- package/dist/{chunk-Y4FH67QZ.js.map → chunk-L6VSBBPP.js.map} +1 -1
- package/dist/{chunk-O4RTJESR.js → chunk-LNT2IFOA.js} +4 -4
- package/dist/{chunk-O4RTJESR.js.map → chunk-LNT2IFOA.js.map} +1 -1
- package/dist/{chunk-MUUPZEZ5.cjs → chunk-LO5NZY7N.cjs} +5 -5
- package/dist/{chunk-MUUPZEZ5.cjs.map → chunk-LO5NZY7N.cjs.map} +1 -1
- package/dist/{chunk-CN2HJ7CP.js → chunk-LQIZSE3O.js} +8 -8
- package/dist/{chunk-CN2HJ7CP.js.map → chunk-LQIZSE3O.js.map} +1 -1
- package/dist/{chunk-5GNYP3PH.cjs → chunk-LUQVSNQL.cjs} +16 -9
- package/dist/chunk-LUQVSNQL.cjs.map +1 -0
- package/dist/{chunk-TF7IWMV2.js → chunk-LY6Z6A54.js} +8 -8
- package/dist/{chunk-TF7IWMV2.js.map → chunk-LY6Z6A54.js.map} +1 -1
- package/dist/{chunk-QEFE4QBL.cjs → chunk-M26XECB2.cjs} +14 -14
- package/dist/{chunk-QEFE4QBL.cjs.map → chunk-M26XECB2.cjs.map} +1 -1
- package/dist/{chunk-VVO7GIHG.cjs → chunk-M2MC3E27.cjs} +7 -7
- package/dist/{chunk-VVO7GIHG.cjs.map → chunk-M2MC3E27.cjs.map} +1 -1
- package/dist/{chunk-HVUYVPQL.cjs → chunk-MAYQGKKW.cjs} +4 -4
- package/dist/{chunk-HVUYVPQL.cjs.map → chunk-MAYQGKKW.cjs.map} +1 -1
- package/dist/{chunk-2IKWX66Q.js → chunk-MI5QU37D.js} +5 -5
- package/dist/{chunk-2IKWX66Q.js.map → chunk-MI5QU37D.js.map} +1 -1
- package/dist/{chunk-XUJZTD4E.js → chunk-NFABMGNH.js} +54 -45
- package/dist/chunk-NFABMGNH.js.map +1 -0
- package/dist/{chunk-4MRORQNN.js → chunk-NI55JEYL.js} +4 -4
- package/dist/{chunk-4MRORQNN.js.map → chunk-NI55JEYL.js.map} +1 -1
- package/dist/{chunk-6MOJEGDU.cjs → chunk-O2WICOUK.cjs} +5 -5
- package/dist/{chunk-6MOJEGDU.cjs.map → chunk-O2WICOUK.cjs.map} +1 -1
- package/dist/{chunk-LX64ENLC.cjs → chunk-OBWWRRL6.cjs} +43 -43
- package/dist/chunk-OBWWRRL6.cjs.map +1 -0
- package/dist/{chunk-NH7KH7QP.js → chunk-PIOMR4X2.js} +5 -5
- package/dist/{chunk-NH7KH7QP.js.map → chunk-PIOMR4X2.js.map} +1 -1
- package/dist/{chunk-75CPTIET.js → chunk-PIZMCOKL.js} +3 -3
- package/dist/{chunk-75CPTIET.js.map → chunk-PIZMCOKL.js.map} +1 -1
- package/dist/{chunk-L5YTMHDI.cjs → chunk-PQEFVHJZ.cjs} +10 -10
- package/dist/{chunk-L5YTMHDI.cjs.map → chunk-PQEFVHJZ.cjs.map} +1 -1
- package/dist/{chunk-I7KILUVL.cjs → chunk-QATCDVZ6.cjs} +12 -12
- package/dist/{chunk-I7KILUVL.cjs.map → chunk-QATCDVZ6.cjs.map} +1 -1
- package/dist/{chunk-BRB52QFV.cjs → chunk-QOKEU3DC.cjs} +15 -15
- package/dist/{chunk-BRB52QFV.cjs.map → chunk-QOKEU3DC.cjs.map} +1 -1
- package/dist/{chunk-76B2VLID.js → chunk-QRFDPG34.js} +5 -5
- package/dist/{chunk-76B2VLID.js.map → chunk-QRFDPG34.js.map} +1 -1
- package/dist/{chunk-3IBY374V.cjs → chunk-QVNDZZS6.cjs} +10 -10
- package/dist/{chunk-3IBY374V.cjs.map → chunk-QVNDZZS6.cjs.map} +1 -1
- package/dist/{chunk-EBQ3A4XO.js → chunk-QY6OMQW6.js} +5 -5
- package/dist/{chunk-EBQ3A4XO.js.map → chunk-QY6OMQW6.js.map} +1 -1
- package/dist/{chunk-XIFLSMGW.js → chunk-R6CMJMIJ.js} +3 -3
- package/dist/{chunk-XIFLSMGW.js.map → chunk-R6CMJMIJ.js.map} +1 -1
- package/dist/{chunk-ASJ5CBCR.js → chunk-RLOGQBFD.js} +6 -6
- package/dist/{chunk-ASJ5CBCR.js.map → chunk-RLOGQBFD.js.map} +1 -1
- package/dist/{chunk-S4LVSSJI.js → chunk-S7INL5NI.js} +6 -6
- package/dist/{chunk-S4LVSSJI.js.map → chunk-S7INL5NI.js.map} +1 -1
- package/dist/{chunk-HNROO7CR.js → chunk-SBOXHIES.js} +13 -13
- package/dist/{chunk-HNROO7CR.js.map → chunk-SBOXHIES.js.map} +1 -1
- package/dist/{chunk-KFDHP4WP.cjs → chunk-SBS7U7CN.cjs} +6 -6
- package/dist/{chunk-KFDHP4WP.cjs.map → chunk-SBS7U7CN.cjs.map} +1 -1
- package/dist/{chunk-WYE3VOFK.cjs → chunk-SCGXGVNN.cjs} +16 -16
- package/dist/{chunk-WYE3VOFK.cjs.map → chunk-SCGXGVNN.cjs.map} +1 -1
- package/dist/{chunk-54J6FRPG.js → chunk-SOCSUNIM.js} +9 -9
- package/dist/{chunk-54J6FRPG.js.map → chunk-SOCSUNIM.js.map} +1 -1
- package/dist/{chunk-BS55BG2U.cjs → chunk-SR5VVJ5Y.cjs} +7 -7
- package/dist/{chunk-BS55BG2U.cjs.map → chunk-SR5VVJ5Y.cjs.map} +1 -1
- package/dist/{chunk-YLGAJD6Q.js → chunk-SSAYBCAD.js} +4 -4
- package/dist/{chunk-YLGAJD6Q.js.map → chunk-SSAYBCAD.js.map} +1 -1
- package/dist/{chunk-24J3BUKL.js → chunk-SUH62Z64.js} +3 -3
- package/dist/{chunk-24J3BUKL.js.map → chunk-SUH62Z64.js.map} +1 -1
- package/dist/{chunk-PL6J55JB.cjs → chunk-TBOQTPRO.cjs} +9 -9
- package/dist/{chunk-PL6J55JB.cjs.map → chunk-TBOQTPRO.cjs.map} +1 -1
- package/dist/{chunk-YNTPHZFJ.js → chunk-TCTPR7YQ.js} +3 -3
- package/dist/{chunk-YNTPHZFJ.js.map → chunk-TCTPR7YQ.js.map} +1 -1
- package/dist/{chunk-M3RNFDA2.cjs → chunk-TF7XVTSP.cjs} +59 -50
- package/dist/chunk-TF7XVTSP.cjs.map +1 -0
- package/dist/{chunk-CRQXHA7N.js → chunk-TKTLWX2V.js} +7 -7
- package/dist/{chunk-CRQXHA7N.js.map → chunk-TKTLWX2V.js.map} +1 -1
- package/dist/{chunk-F3NATTQG.cjs → chunk-TPB53MHV.cjs} +14 -14
- package/dist/{chunk-F3NATTQG.cjs.map → chunk-TPB53MHV.cjs.map} +1 -1
- package/dist/{chunk-MSNRGNVY.cjs → chunk-TQA3BI7M.cjs} +7 -7
- package/dist/{chunk-MSNRGNVY.cjs.map → chunk-TQA3BI7M.cjs.map} +1 -1
- package/dist/{chunk-WO6FS4DV.js → chunk-U6NH54YD.js} +5 -5
- package/dist/{chunk-WO6FS4DV.js.map → chunk-U6NH54YD.js.map} +1 -1
- package/dist/{chunk-NUTB2K4G.js → chunk-U7ALNPFJ.js} +3 -3
- package/dist/{chunk-NUTB2K4G.js.map → chunk-U7ALNPFJ.js.map} +1 -1
- package/dist/{chunk-RINP34ZG.js → chunk-UKW2C5RN.js} +4 -4
- package/dist/{chunk-RINP34ZG.js.map → chunk-UKW2C5RN.js.map} +1 -1
- package/dist/{chunk-AMFFE5UJ.js → chunk-UUVLEOSD.js} +4 -4
- package/dist/{chunk-AMFFE5UJ.js.map → chunk-UUVLEOSD.js.map} +1 -1
- package/dist/{chunk-6NTDPZWP.js → chunk-VFGSNR35.js} +4 -4
- package/dist/{chunk-6NTDPZWP.js.map → chunk-VFGSNR35.js.map} +1 -1
- package/dist/{chunk-KRZ57O2J.cjs → chunk-VGHNBMEJ.cjs} +6 -6
- package/dist/{chunk-KRZ57O2J.cjs.map → chunk-VGHNBMEJ.cjs.map} +1 -1
- package/dist/{chunk-5BCLEOFF.cjs → chunk-VHKA25IV.cjs} +15 -15
- package/dist/{chunk-5BCLEOFF.cjs.map → chunk-VHKA25IV.cjs.map} +1 -1
- package/dist/{chunk-23NN5WRP.cjs → chunk-VK4O6W2K.cjs} +6 -6
- package/dist/{chunk-23NN5WRP.cjs.map → chunk-VK4O6W2K.cjs.map} +1 -1
- package/dist/{chunk-2VOB6LEI.js → chunk-VQ7U3ASC.js} +4 -4
- package/dist/{chunk-2VOB6LEI.js.map → chunk-VQ7U3ASC.js.map} +1 -1
- package/dist/{chunk-7MN4JDP7.js → chunk-VUCMGGU5.js} +14 -14
- package/dist/chunk-VUCMGGU5.js.map +1 -0
- package/dist/{chunk-IHM2M74J.js → chunk-W2Q4PQ6I.js} +3 -3
- package/dist/{chunk-IHM2M74J.js.map → chunk-W2Q4PQ6I.js.map} +1 -1
- package/dist/{chunk-UPQHFW47.js → chunk-W3C6QQF7.js} +5 -5
- package/dist/{chunk-UPQHFW47.js.map → chunk-W3C6QQF7.js.map} +1 -1
- package/dist/{chunk-P6RAOXJA.js → chunk-WBGFFP3G.js} +6 -6
- package/dist/{chunk-P6RAOXJA.js.map → chunk-WBGFFP3G.js.map} +1 -1
- package/dist/{chunk-CZC2K5GJ.js → chunk-WBQNPBXR.js} +5 -5
- package/dist/{chunk-CZC2K5GJ.js.map → chunk-WBQNPBXR.js.map} +1 -1
- package/dist/{chunk-3TXVDCF2.js → chunk-WY5BOT7O.js} +4 -4
- package/dist/{chunk-3TXVDCF2.js.map → chunk-WY5BOT7O.js.map} +1 -1
- package/dist/{chunk-CEU7BIL6.cjs → chunk-X574M2JB.cjs} +13 -13
- package/dist/{chunk-CEU7BIL6.cjs.map → chunk-X574M2JB.cjs.map} +1 -1
- package/dist/{chunk-7PNLMDAR.cjs → chunk-XLKXFJMU.cjs} +8 -8
- package/dist/{chunk-7PNLMDAR.cjs.map → chunk-XLKXFJMU.cjs.map} +1 -1
- package/dist/{chunk-W5G7ZDQ6.cjs → chunk-XLNRO3S6.cjs} +4 -4
- package/dist/{chunk-W5G7ZDQ6.cjs.map → chunk-XLNRO3S6.cjs.map} +1 -1
- package/dist/{chunk-A66NIFJE.cjs → chunk-XXBA3KSH.cjs} +5 -5
- package/dist/{chunk-A66NIFJE.cjs.map → chunk-XXBA3KSH.cjs.map} +1 -1
- package/dist/{chunk-OWBNRALR.js → chunk-YAWVGZRC.js} +6 -6
- package/dist/{chunk-OWBNRALR.js.map → chunk-YAWVGZRC.js.map} +1 -1
- package/dist/{chunk-JEIQ5GDK.cjs → chunk-YHBYVERE.cjs} +18 -18
- package/dist/{chunk-JEIQ5GDK.cjs.map → chunk-YHBYVERE.cjs.map} +1 -1
- package/dist/{chunk-CPOYENSZ.cjs → chunk-YO3MBGBP.cjs} +4 -4
- package/dist/{chunk-CPOYENSZ.cjs.map → chunk-YO3MBGBP.cjs.map} +1 -1
- package/dist/{chunk-EVKFA5FA.cjs → chunk-YVHWOKR7.cjs} +23 -23
- package/dist/{chunk-EVKFA5FA.cjs.map → chunk-YVHWOKR7.cjs.map} +1 -1
- package/dist/{chunk-66LRFIYK.cjs → chunk-YWGYN6YV.cjs} +9 -9
- package/dist/{chunk-66LRFIYK.cjs.map → chunk-YWGYN6YV.cjs.map} +1 -1
- package/dist/{chunk-BAPCHFNX.cjs → chunk-YY6KJO5Z.cjs} +12 -12
- package/dist/{chunk-BAPCHFNX.cjs.map → chunk-YY6KJO5Z.cjs.map} +1 -1
- package/dist/{chunk-UYBGXFYX.js → chunk-YYNWZRXZ.js} +20 -18
- package/dist/chunk-YYNWZRXZ.js.map +1 -0
- package/dist/{chunk-5QPM5LUS.cjs → chunk-Z6RT3WPE.cjs} +15 -4
- package/dist/chunk-Z6RT3WPE.cjs.map +1 -0
- package/dist/{chunk-VEUZ5DZR.js → chunk-ZAX2UJBC.js} +6 -6
- package/dist/{chunk-VEUZ5DZR.js.map → chunk-ZAX2UJBC.js.map} +1 -1
- package/dist/{chunk-LHP47U6H.js → chunk-ZEA2VYX4.js} +3 -3
- package/dist/{chunk-LHP47U6H.js.map → chunk-ZEA2VYX4.js.map} +1 -1
- package/dist/{chunk-QEX7V7TI.cjs → chunk-ZFBQ4R7M.cjs} +10 -10
- package/dist/{chunk-QEX7V7TI.cjs.map → chunk-ZFBQ4R7M.cjs.map} +1 -1
- package/dist/{chunk-AX6HC2YY.cjs → chunk-ZN7CULIL.cjs} +3 -3
- package/dist/{chunk-AX6HC2YY.cjs.map → chunk-ZN7CULIL.cjs.map} +1 -1
- package/dist/{chunk-FZCBTFHY.js → chunk-ZQUPAIBS.js} +4 -4
- package/dist/{chunk-FZCBTFHY.js.map → chunk-ZQUPAIBS.js.map} +1 -1
- package/dist/{chunk-VJBBMBRT.cjs → chunk-ZTWBG2XY.cjs} +7 -7
- package/dist/{chunk-VJBBMBRT.cjs.map → chunk-ZTWBG2XY.cjs.map} +1 -1
- package/dist/components/Accordion/index.cjs +6 -7
- package/dist/components/Accordion/index.js +3 -4
- package/dist/components/Alert/index.cjs +12 -13
- package/dist/components/Alert/index.js +11 -12
- package/dist/components/AlertDialog/index.cjs +15 -16
- package/dist/components/AlertDialog/index.js +13 -14
- package/dist/components/AppShell/index.cjs +20 -21
- package/dist/components/AppShell/index.js +17 -18
- package/dist/components/AspectRatio/index.cjs +3 -3
- package/dist/components/AspectRatio/index.js +2 -2
- package/dist/components/AutocompleteInput/AutocompleteInput.d.ts +3 -1
- package/dist/components/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts +3 -1
- package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/index.cjs +20 -21
- 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 +15 -16
- package/dist/components/AutocompleteInput/types.d.ts +3 -3
- package/dist/components/AutocompleteInput/types.d.ts.map +1 -1
- package/dist/components/Avatar/index.cjs +6 -7
- package/dist/components/Avatar/index.js +3 -4
- package/dist/components/AvatarGroup/index.cjs +6 -7
- package/dist/components/AvatarGroup/index.js +4 -5
- package/dist/components/Badge/index.cjs +1 -1
- package/dist/components/Badge/index.js +1 -1
- package/dist/components/Blockquote/index.cjs +4 -5
- package/dist/components/Blockquote/index.js +3 -4
- package/dist/components/Breadcrumbs/index.cjs +10 -11
- package/dist/components/Breadcrumbs/index.js +7 -8
- package/dist/components/Button/index.cjs +11 -12
- package/dist/components/Button/index.js +10 -11
- package/dist/components/ButtonGroup/index.cjs +1 -1
- package/dist/components/ButtonGroup/index.js +1 -1
- package/dist/components/Calendar/index.cjs +12 -13
- package/dist/components/Calendar/index.js +11 -12
- package/dist/components/Card/index.cjs +1 -1
- package/dist/components/Card/index.js +1 -1
- package/dist/components/Center/index.cjs +1 -1
- package/dist/components/Center/index.js +1 -1
- package/dist/components/CheckboxInput/index.cjs +12 -13
- package/dist/components/CheckboxInput/index.js +11 -12
- package/dist/components/CodeBlock/index.cjs +13 -14
- package/dist/components/CodeBlock/index.js +12 -13
- package/dist/components/ContextMenu/index.cjs +17 -18
- package/dist/components/ContextMenu/index.js +15 -16
- package/dist/components/DateInput/index.cjs +16 -17
- package/dist/components/DateInput/index.js +15 -16
- package/dist/components/DateRangeInput/index.cjs +16 -17
- package/dist/components/DateRangeInput/index.js +15 -16
- package/dist/components/DateTimeInput/index.cjs +18 -19
- package/dist/components/DateTimeInput/index.js +17 -18
- package/dist/components/Dialog/index.cjs +5 -6
- package/dist/components/Dialog/index.js +3 -4
- package/dist/components/Divider/index.cjs +4 -5
- package/dist/components/Divider/index.js +3 -4
- package/dist/components/Drawer/index.cjs +4 -4
- package/dist/components/Drawer/index.js +2 -2
- package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuItem.recipe.d.ts +36 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.recipe.d.ts.map +1 -0
- package/dist/components/DropdownMenu/index.cjs +18 -19
- package/dist/components/DropdownMenu/index.js +14 -15
- package/dist/components/EmptyState/index.cjs +7 -8
- package/dist/components/EmptyState/index.js +6 -7
- package/dist/components/Field/index.cjs +10 -11
- package/dist/components/Field/index.js +8 -9
- package/dist/components/FileInput/index.cjs +14 -15
- package/dist/components/FileInput/index.js +13 -14
- package/dist/components/HoverCard/index.cjs +5 -5
- package/dist/components/HoverCard/index.js +3 -3
- package/dist/components/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/components/Icon/index.cjs +1 -1
- package/dist/components/Icon/index.js +1 -1
- package/dist/components/InputGroup/index.cjs +13 -14
- package/dist/components/InputGroup/index.js +9 -10
- package/dist/components/Item/index.cjs +8 -9
- package/dist/components/Item/index.js +7 -8
- package/dist/components/Kbd/index.cjs +4 -5
- package/dist/components/Kbd/index.js +3 -4
- package/dist/components/Layout/index.cjs +16 -17
- package/dist/components/Layout/index.js +11 -12
- package/dist/components/Lightbox/index.cjs +13 -14
- package/dist/components/Lightbox/index.js +11 -12
- package/dist/components/Link/index.cjs +8 -9
- package/dist/components/Link/index.js +5 -6
- package/dist/components/List/index.cjs +11 -12
- package/dist/components/List/index.js +9 -10
- package/dist/components/MetadataList/index.cjs +7 -8
- package/dist/components/MetadataList/index.js +5 -6
- package/dist/components/MultiSelect/index.cjs +15 -16
- package/dist/components/MultiSelect/index.js +14 -15
- package/dist/components/NavIcon/index.cjs +3 -3
- package/dist/components/NavIcon/index.js +2 -2
- package/dist/components/NumberInput/index.cjs +15 -16
- package/dist/components/NumberInput/index.js +14 -15
- package/dist/components/Pagination/index.cjs +12 -13
- package/dist/components/Pagination/index.js +11 -12
- package/dist/components/PasswordInput/index.cjs +16 -17
- package/dist/components/PasswordInput/index.js +15 -16
- package/dist/components/Popover/Popover.d.ts.map +1 -1
- package/dist/components/Popover/index.cjs +13 -14
- package/dist/components/Popover/index.js +11 -12
- package/dist/components/Progress/index.cjs +5 -6
- package/dist/components/Progress/index.js +4 -5
- package/dist/components/RadioGroup/index.cjs +13 -14
- package/dist/components/RadioGroup/index.js +11 -12
- package/dist/components/Rating/index.cjs +5 -6
- package/dist/components/Rating/index.js +4 -5
- package/dist/components/Schedule/ListView.d.ts.map +1 -1
- package/dist/components/Schedule/MonthlyView.d.ts.map +1 -1
- package/dist/components/Schedule/TimeGridView.d.ts.map +1 -1
- package/dist/components/Schedule/index.cjs +26 -27
- package/dist/components/Schedule/index.js +15 -16
- package/dist/components/Schedule/shared.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/index.cjs +33 -34
- package/dist/components/SearchFilterInput/index.js +25 -26
- package/dist/components/SegmentedControl/index.cjs +5 -5
- package/dist/components/SegmentedControl/index.js +3 -3
- package/dist/components/Select/index.cjs +17 -18
- package/dist/components/Select/index.js +15 -16
- package/dist/components/SideNav/index.cjs +19 -20
- package/dist/components/SideNav/index.js +13 -14
- package/dist/components/Skeleton/index.cjs +1 -1
- package/dist/components/Skeleton/index.js +1 -1
- package/dist/components/Slider/index.cjs +10 -11
- package/dist/components/Slider/index.js +9 -10
- package/dist/components/Spinner/index.cjs +7 -8
- package/dist/components/Spinner/index.js +6 -7
- package/dist/components/SplitButton/index.cjs +16 -17
- package/dist/components/SplitButton/index.js +15 -16
- package/dist/components/Stack/index.cjs +1 -1
- package/dist/components/Stack/index.js +1 -1
- package/dist/components/Stepper/index.cjs +8 -9
- package/dist/components/Stepper/index.js +5 -6
- package/dist/components/Switch/index.cjs +9 -10
- package/dist/components/Switch/index.js +8 -9
- package/dist/components/Table/index.cjs +57 -58
- package/dist/components/Table/index.js +29 -30
- package/dist/components/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
- package/dist/components/Tabs/index.cjs +17 -18
- package/dist/components/Tabs/index.js +12 -13
- package/dist/components/Tag/index.cjs +8 -9
- package/dist/components/Tag/index.js +7 -8
- package/dist/components/TagsInput/TagsInput.d.ts +3 -1
- package/dist/components/TagsInput/TagsInput.d.ts.map +1 -1
- package/dist/components/TagsInput/index.cjs +17 -18
- package/dist/components/TagsInput/index.js +16 -17
- package/dist/components/Text/index.cjs +6 -6
- package/dist/components/Text/index.js +4 -4
- package/dist/components/TextArea/index.cjs +11 -12
- package/dist/components/TextArea/index.js +10 -11
- package/dist/components/TextInput/index.cjs +15 -16
- package/dist/components/TextInput/index.js +14 -15
- package/dist/components/Thumbnail/index.cjs +12 -13
- package/dist/components/Thumbnail/index.js +11 -12
- package/dist/components/TimeInput/index.cjs +14 -15
- package/dist/components/TimeInput/index.js +13 -14
- package/dist/components/Toast/index.cjs +14 -15
- package/dist/components/Toast/index.js +11 -12
- package/dist/components/ToggleButton/index.cjs +10 -11
- package/dist/components/ToggleButton/index.js +8 -9
- package/dist/components/Tooltip/index.cjs +5 -5
- package/dist/components/Tooltip/index.js +3 -3
- package/dist/components/Tooltip/useTooltip.d.ts.map +1 -1
- package/dist/components/TopNav/index.cjs +19 -20
- package/dist/components/TopNav/index.js +13 -14
- package/dist/components/TreeView/index.cjs +3 -3
- package/dist/components/TreeView/index.js +2 -2
- package/dist/index.cjs +243 -244
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +74 -75
- package/dist/index.js.map +1 -1
- package/dist/internal/HoverLayerTrigger.d.ts.map +1 -1
- package/dist/internal/useLayer.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-3ZFEBOXD.cjs.map +0 -1
- package/dist/chunk-5GNYP3PH.cjs.map +0 -1
- package/dist/chunk-5QPM5LUS.cjs.map +0 -1
- package/dist/chunk-6BK4LUK4.cjs +0 -17
- package/dist/chunk-6BK4LUK4.cjs.map +0 -1
- package/dist/chunk-7GN6YTSS.cjs.map +0 -1
- package/dist/chunk-7MN4JDP7.js.map +0 -1
- package/dist/chunk-D2DOHX4W.js.map +0 -1
- package/dist/chunk-EHCAF6D3.js.map +0 -1
- package/dist/chunk-EMHLPPQZ.js.map +0 -1
- package/dist/chunk-GUKZNXTB.js +0 -15
- package/dist/chunk-GUKZNXTB.js.map +0 -1
- package/dist/chunk-HM7IEGQ2.cjs.map +0 -1
- package/dist/chunk-LX64ENLC.cjs.map +0 -1
- package/dist/chunk-M3RNFDA2.cjs.map +0 -1
- package/dist/chunk-MGVEX3RS.js.map +0 -1
- package/dist/chunk-PYW5UO2Z.js.map +0 -1
- package/dist/chunk-QCT4BPB6.cjs.map +0 -1
- package/dist/chunk-U2WVHZ24.cjs.map +0 -1
- package/dist/chunk-UXDXE7Z6.cjs.map +0 -1
- package/dist/chunk-UYBGXFYX.js.map +0 -1
- package/dist/chunk-XUJZTD4E.js.map +0 -1
- package/dist/chunk-YSTESYUB.js.map +0 -1
- package/dist/chunk-ZNUOFLCQ.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Stepper/Step.recipe.ts","../src/components/Stepper/StepperContext.ts","../src/components/Stepper/Step.tsx","../src/components/Stepper/Stepper.tsx"],"names":["styles","jsx"],"mappings":"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","file":"chunk-RINP34ZG.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\nimport type {StepState} from './Step';\n\nexport const stepIndicatorRecipe = cva({\n base: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n w: '7',\n h: '7',\n borderRadius: 'full',\n fontFamily: 'body',\n fontSize: 'sm',\n fontWeight: 'semibold',\n lineHeight: 'none',\n transitionProperty: 'background-color, color, border-color, opacity',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n flexShrink: 0,\n userSelect: 'none',\n borderWidth: 'emphasized',\n borderStyle: 'solid',\n },\n variants: {\n state: {\n active: {\n bg: 'primary',\n borderColor: 'primary',\n color: 'fg.onPrimary',\n },\n completed: {\n bg: 'primary',\n borderColor: 'primary',\n color: 'fg.onPrimary',\n },\n upcoming: {\n bg: 'transparent',\n borderColor: 'border.emphasized',\n color: 'fg.muted',\n },\n disabled: {\n bg: 'transparent',\n borderColor: 'border',\n color: 'fg.disabled',\n },\n error: {\n bg: 'status.error.solid',\n borderColor: 'status.error.solid',\n color: 'status.error.solidFg',\n },\n } satisfies Record<StepState, object>,\n isClickable: {\n true: {\n cursor: 'pointer',\n _hover: {\n opacity: 0.85,\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n },\n false: {},\n },\n },\n defaultVariants: {\n state: 'upcoming',\n isClickable: false,\n },\n});\n\nexport const stepLabelRecipe = cva({\n base: {\n textAlign: 'center',\n },\n variants: {\n state: {\n active: {\n color: 'fg',\n fontWeight: 'semibold',\n },\n completed: {\n color: 'fg',\n },\n upcoming: {\n color: 'fg.muted',\n },\n disabled: {\n color: 'fg.disabled',\n },\n error: {\n color: 'status.error.fg',\n },\n } satisfies Record<StepState, object>,\n orientation: {\n horizontal: {},\n vertical: {\n textAlign: 'start',\n },\n },\n },\n defaultVariants: {\n state: 'upcoming',\n orientation: 'horizontal',\n },\n});\n\nexport const stepConnectorRecipe = cva({\n base: {\n borderRadius: 'full',\n transitionProperty: 'background-color',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n },\n variants: {\n isCompleted: {\n true: {\n bg: 'primary',\n },\n false: {\n bg: 'track.emphasized',\n },\n },\n orientation: {\n horizontal: {\n h: '0.5',\n w: 'full',\n },\n vertical: {\n w: '0.5',\n h: 'full',\n },\n },\n },\n defaultVariants: {\n isCompleted: false,\n orientation: 'horizontal',\n },\n});\n\nexport type StepIndicatorVariants = RecipeVariantProps<\n typeof stepIndicatorRecipe\n>;\nexport type StepLabelVariants = RecipeVariantProps<typeof stepLabelRecipe>;\nexport type StepConnectorVariants = RecipeVariantProps<\n typeof stepConnectorRecipe\n>;\n","import {createContext, use} from 'react';\n\nexport type StepperOrientation = 'horizontal' | 'vertical';\n\nexport interface StepperContextValue {\n activeStep: number;\n isNonLinear: boolean;\n onStepClick: ((index: number) => void) | null;\n orientation: StepperOrientation;\n}\n\nexport const StepperContext = createContext<StepperContextValue | null>(null);\nStepperContext.displayName = 'StepperContext';\n\nexport function useStepperContext(): StepperContextValue {\n const context = use(StepperContext);\n\n if (context == null) {\n throw new Error('Step must be used within a Stepper.');\n }\n\n return context;\n}\n","import {Check, TriangleAlert} from 'lucide-react';\nimport type {CSSProperties, ReactNode, Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {Icon} from '../Icon';\nimport {Text} from '../Text';\nimport {\n stepConnectorRecipe,\n stepIndicatorRecipe,\n stepLabelRecipe,\n} from './Step.recipe';\nimport {useStepperContext} from './StepperContext';\n\nexport type StepState =\n | 'active'\n | 'completed'\n | 'disabled'\n | 'error'\n | 'upcoming';\n\nexport interface StepProps {\n /**\n * Content rendered below the label and description in vertical steppers.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the step.\n */\n className?: string;\n /**\n * Test ID applied to the step.\n */\n 'data-testid'?: string;\n /**\n * Optional supporting text.\n */\n description?: string;\n /**\n * Whether the step has an error.\n * @default false\n */\n hasError?: boolean;\n /**\n * Custom indicator content replacing the number or check icon.\n */\n icon?: ReactNode;\n /**\n * Override the automatically computed completed state.\n */\n isCompleted?: boolean;\n /**\n * Whether the step is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Step label.\n */\n label: string;\n /**\n * Ref forwarded to the list item.\n */\n ref?: Ref<HTMLLIElement>;\n /**\n * Zero-based index of this step.\n */\n step: number;\n /**\n * Inline styles applied to the step.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n horizontalRoot: css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start',\n flex: 1,\n position: 'relative',\n _last: {\n flex: 'none',\n },\n '&:last-child [data-step-connector]': {\n display: 'none',\n },\n }),\n horizontalContent: css({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n position: 'relative',\n zIndex: 1,\n }),\n horizontalConnector: css({\n flex: 1,\n display: 'flex',\n alignItems: 'center',\n px: '2',\n minW: '6',\n h: '7',\n }),\n verticalRoot: css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'stretch',\n position: 'relative',\n minH: '12',\n '&:last-child [data-step-connector]': {\n display: 'none',\n },\n }),\n verticalIndicatorColumn: css({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n w: '7',\n flexShrink: 0,\n }),\n verticalConnector: css({\n flex: 1,\n display: 'flex',\n justifyContent: 'center',\n py: '1',\n }),\n verticalContent: css({\n display: 'flex',\n flexDirection: 'column',\n ps: '3',\n pb: '6',\n flex: 1,\n }),\n labelRow: css({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n pt: '1',\n maxW: '120px',\n }),\n labelRowVertical: css({\n alignItems: 'flex-start',\n maxW: 'none',\n pt: '0.5',\n }),\n description: css({\n textAlign: 'center',\n }),\n descriptionVertical: css({\n textAlign: 'start',\n }),\n descriptionError: css({\n color: 'status.error.fg',\n }),\n buttonReset: css({\n bg: 'none',\n borderWidth: 0,\n p: 0,\n m: 0,\n font: 'inherit',\n }),\n stepContent: css({\n pt: '3',\n }),\n} as const;\n\nfunction getStepState({\n hasError,\n isActive,\n isCompleted,\n isDisabled,\n}: {\n hasError: boolean;\n isActive: boolean;\n isCompleted: boolean;\n isDisabled: boolean;\n}): StepState {\n if (hasError) {\n return 'error';\n }\n if (isDisabled) {\n return 'disabled';\n }\n if (isActive) {\n return 'active';\n }\n if (isCompleted) {\n return 'completed';\n }\n return 'upcoming';\n}\n\n/**\n * Individual step within a `Stepper`.\n */\nexport function Step({\n children,\n className,\n 'data-testid': dataTestId,\n description,\n hasError = false,\n icon,\n isCompleted: isCompletedFromProps,\n isDisabled = false,\n label,\n ref,\n step,\n style,\n}: StepProps): React.JSX.Element {\n const {activeStep, orientation, isNonLinear, onStepClick} =\n useStepperContext();\n const isActive = step === activeStep;\n const isCompleted = isCompletedFromProps ?? step < activeStep;\n const isVertical = orientation === 'vertical';\n const isClickable = isNonLinear && !isDisabled && (isCompleted || isActive);\n const state = getStepState({hasError, isActive, isCompleted, isDisabled});\n\n const connectorClassName = stepConnectorRecipe({\n isCompleted,\n orientation,\n });\n\n const defaultIndicatorContent = isCompleted ? (\n <Icon color=\"inherit\" icon={Check} size=\"sm\" />\n ) : (\n <span>{step + 1}</span>\n );\n const indicatorContent = hasError ? (\n <Icon color=\"inherit\" icon={TriangleAlert} size=\"sm\" />\n ) : (\n (icon ?? defaultIndicatorContent)\n );\n\n const handleClick = () => {\n if (isClickable) {\n onStepClick?.(step);\n }\n };\n\n const stepLabel = hasError\n ? `Go to step ${step + 1}: ${label} (error)`\n : `Go to step ${step + 1}: ${label}`;\n\n const indicator = isClickable ? (\n <button\n aria-label={stepLabel}\n className={cx(\n styles.buttonReset,\n stepIndicatorRecipe({state, isClickable: true}),\n )}\n onClick={handleClick}\n type=\"button\">\n {indicatorContent}\n </button>\n ) : (\n <div\n aria-hidden=\"true\"\n className={stepIndicatorRecipe({state, isClickable: false})}>\n {indicatorContent}\n </div>\n );\n\n const labelNode = (\n <div\n className={cx(\n styles.labelRow,\n isVertical ? styles.labelRowVertical : undefined,\n )}>\n <Text\n as=\"span\"\n className={stepLabelRecipe({state, orientation})}\n color=\"inherit\"\n type=\"label\">\n {label}\n </Text>\n {description != null ? (\n <Text\n as=\"span\"\n className={cx(\n styles.description,\n isVertical ? styles.descriptionVertical : undefined,\n state === 'error' ? styles.descriptionError : undefined,\n )}\n color=\"secondary\"\n type=\"supporting\">\n {description}\n </Text>\n ) : null}\n </div>\n );\n\n if (isVertical) {\n return (\n <li\n aria-current={isActive ? 'step' : undefined}\n className={cx(styles.verticalRoot, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <div className={styles.verticalIndicatorColumn}>\n {indicator}\n <div className={styles.verticalConnector} data-step-connector=\"\">\n <div className={connectorClassName} />\n </div>\n </div>\n <div className={styles.verticalContent}>\n {labelNode}\n {isReactNode(children) ? (\n <div className={styles.stepContent}>{children}</div>\n ) : null}\n </div>\n </li>\n );\n }\n\n return (\n <li\n aria-current={isActive ? 'step' : undefined}\n className={cx(styles.horizontalRoot, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <div className={styles.horizontalContent}>\n {indicator}\n {labelNode}\n </div>\n <div className={styles.horizontalConnector} data-step-connector=\"\">\n <div className={connectorClassName} />\n </div>\n </li>\n );\n}\n\nStep.displayName = 'Step';\n","import {useMemo, type CSSProperties, type ReactNode, type Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {\n StepperContext,\n type StepperContextValue,\n type StepperOrientation,\n} from './StepperContext';\n\nexport type {StepperOrientation};\n\nexport interface StepperProps {\n /**\n * Zero-based index of the active step.\n */\n activeStep: number;\n /**\n * Step elements to render.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the ordered list.\n */\n className?: string;\n /**\n * Test ID applied to the ordered list.\n */\n 'data-testid'?: string;\n /**\n * Accessible label for the navigation landmark.\n * @default 'Progress'\n */\n label?: string;\n /**\n * Called when a completed or active step indicator is clicked.\n */\n onStepClick?: (index: number) => void;\n /**\n * Layout direction.\n * @default 'horizontal'\n */\n orientation?: StepperOrientation;\n /**\n * Ref forwarded to the navigation element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Inline styles applied to the ordered list.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n root: css({\n display: 'flex',\n w: 'full',\n m: 0,\n p: 0,\n listStyleType: 'none',\n }),\n horizontal: css({\n flexDirection: 'row',\n alignItems: 'flex-start',\n }),\n vertical: css({\n flexDirection: 'column',\n }),\n} as const;\n\n/**\n * Displays progress through a sequence of logical steps.\n */\nexport function Stepper({\n activeStep,\n children,\n className,\n 'data-testid': dataTestId,\n label = 'Progress',\n onStepClick,\n orientation = 'horizontal',\n ref,\n style,\n}: StepperProps): React.JSX.Element {\n const contextValue = useMemo<StepperContextValue>(\n () => ({\n activeStep,\n isNonLinear: onStepClick != null,\n onStepClick: onStepClick ?? null,\n orientation,\n }),\n [activeStep, onStepClick, orientation],\n );\n\n return (\n <StepperContext value={contextValue}>\n <nav aria-label={label} ref={ref}>\n <ol\n className={cx(\n styles.root,\n orientation === 'horizontal' ? styles.horizontal : styles.vertical,\n className,\n )}\n data-testid={dataTestId}\n style={style}>\n {children}\n </ol>\n </nav>\n </StepperContext>\n );\n}\n\nStepper.displayName = 'Stepper';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/Stepper/Step.recipe.ts","../src/components/Stepper/StepperContext.ts","../src/components/Stepper/Step.tsx","../src/components/Stepper/Stepper.tsx"],"names":["styles","jsx"],"mappings":";;;;;;;;;;;AAGO,IAAM,sBAAsB,GAAA,CAAI;AAAA,EACrC,IAAA,EAAM;AAAA,IACJ,OAAA,EAAS,MAAA;AAAA,IACT,UAAA,EAAY,QAAA;AAAA,IACZ,cAAA,EAAgB,QAAA;AAAA,IAChB,CAAA,EAAG,GAAA;AAAA,IACH,CAAA,EAAG,GAAA;AAAA,IACH,YAAA,EAAc,MAAA;AAAA,IACd,UAAA,EAAY,MAAA;AAAA,IACZ,QAAA,EAAU,IAAA;AAAA,IACV,UAAA,EAAY,UAAA;AAAA,IACZ,UAAA,EAAY,MAAA;AAAA,IACZ,kBAAA,EAAoB,gDAAA;AAAA,IACpB,kBAAA,EAAoB,MAAA;AAAA,IACpB,wBAAA,EAA0B,SAAA;AAAA,IAC1B,UAAA,EAAY,CAAA;AAAA,IACZ,UAAA,EAAY,MAAA;AAAA,IACZ,WAAA,EAAa,YAAA;AAAA,IACb,WAAA,EAAa;AAAA,GACf;AAAA,EACA,QAAA,EAAU;AAAA,IACR,KAAA,EAAO;AAAA,MACL,MAAA,EAAQ;AAAA,QACN,EAAA,EAAI,SAAA;AAAA,QACJ,WAAA,EAAa,SAAA;AAAA,QACb,KAAA,EAAO;AAAA,OACT;AAAA,MACA,SAAA,EAAW;AAAA,QACT,EAAA,EAAI,SAAA;AAAA,QACJ,WAAA,EAAa,SAAA;AAAA,QACb,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,EAAA,EAAI,aAAA;AAAA,QACJ,WAAA,EAAa,mBAAA;AAAA,QACb,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,EAAA,EAAI,aAAA;AAAA,QACJ,WAAA,EAAa,QAAA;AAAA,QACb,KAAA,EAAO;AAAA,OACT;AAAA,MACA,KAAA,EAAO;AAAA,QACL,EAAA,EAAI,oBAAA;AAAA,QACJ,WAAA,EAAa,oBAAA;AAAA,QACb,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,WAAA,EAAa;AAAA,MACX,IAAA,EAAM;AAAA,QACJ,MAAA,EAAQ,SAAA;AAAA,QACR,MAAA,EAAQ;AAAA,UACN,OAAA,EAAS;AAAA,SACX;AAAA,QACA,aAAA,EAAe;AAAA,UACb,YAAA,EAAc,OAAA;AAAA,UACd,YAAA,EAAc,OAAA;AAAA,UACd,YAAA,EAAc,SAAA;AAAA,UACd,aAAA,EAAe;AAAA;AACjB,OACF;AAAA,MACA,OAAO;AAAC;AACV,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,KAAA,EAAO,UAAA;AAAA,IACP,WAAA,EAAa;AAAA;AAEjB,CAAC,CAAA;AAEM,IAAM,kBAAkB,GAAA,CAAI;AAAA,EACjC,IAAA,EAAM;AAAA,IACJ,SAAA,EAAW;AAAA,GACb;AAAA,EACA,QAAA,EAAU;AAAA,IACR,KAAA,EAAO;AAAA,MACL,MAAA,EAAQ;AAAA,QACN,KAAA,EAAO,IAAA;AAAA,QACP,UAAA,EAAY;AAAA,OACd;AAAA,MACA,SAAA,EAAW;AAAA,QACT,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,KAAA,EAAO;AAAA,OACT;AAAA,MACA,KAAA,EAAO;AAAA,QACL,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,WAAA,EAAa;AAAA,MACX,YAAY,EAAC;AAAA,MACb,QAAA,EAAU;AAAA,QACR,SAAA,EAAW;AAAA;AACb;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,KAAA,EAAO,UAAA;AAAA,IACP,WAAA,EAAa;AAAA;AAEjB,CAAC,CAAA;AAEM,IAAM,sBAAsB,GAAA,CAAI;AAAA,EACrC,IAAA,EAAM;AAAA,IACJ,YAAA,EAAc,MAAA;AAAA,IACd,kBAAA,EAAoB,kBAAA;AAAA,IACpB,kBAAA,EAAoB,MAAA;AAAA,IACpB,wBAAA,EAA0B;AAAA,GAC5B;AAAA,EACA,QAAA,EAAU;AAAA,IACR,WAAA,EAAa;AAAA,MACX,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI;AAAA,OACN;AAAA,MACA,KAAA,EAAO;AAAA,QACL,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,WAAA,EAAa;AAAA,MACX,UAAA,EAAY;AAAA,QACV,CAAA,EAAG,KAAA;AAAA,QACH,CAAA,EAAG;AAAA,OACL;AAAA,MACA,QAAA,EAAU;AAAA,QACR,CAAA,EAAG,KAAA;AAAA,QACH,CAAA,EAAG;AAAA;AACL;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,WAAA,EAAa,KAAA;AAAA,IACb,WAAA,EAAa;AAAA;AAEjB,CAAC,CAAA;ACjIM,IAAM,cAAA,GAAiB,cAA0C,IAAI,CAAA;AAC5E,cAAA,CAAe,WAAA,GAAc,gBAAA;AAEtB,SAAS,iBAAA,GAAyC;AACvD,EAAA,MAAM,OAAA,GAAU,IAAI,cAAc,CAAA;AAElC,EAAA,IAAI,WAAW,IAAA,EAAM;AACnB,IAAA,MAAM,IAAI,MAAM,qCAAqC,CAAA;AAAA,EACvD;AAEA,EAAA,OAAO,OAAA;AACT;ACoDA,IAAM,MAAA,GAAS;AAAA,EACb,gBAAgB,GAAA,CAAI;AAAA,IAClB,OAAA,EAAS,MAAA;AAAA,IACT,aAAA,EAAe,KAAA;AAAA,IACf,UAAA,EAAY,YAAA;AAAA,IACZ,IAAA,EAAM,CAAA;AAAA,IACN,QAAA,EAAU,UAAA;AAAA,IACV,KAAA,EAAO;AAAA,MACL,IAAA,EAAM;AAAA,KACR;AAAA,IACA,oCAAA,EAAsC;AAAA,MACpC,OAAA,EAAS;AAAA;AACX,GACD,CAAA;AAAA,EACD,mBAAmB,GAAA,CAAI;AAAA,IACrB,OAAA,EAAS,MAAA;AAAA,IACT,aAAA,EAAe,QAAA;AAAA,IACf,UAAA,EAAY,QAAA;AAAA,IACZ,QAAA,EAAU,UAAA;AAAA,IACV,MAAA,EAAQ;AAAA,GACT,CAAA;AAAA,EACD,qBAAqB,GAAA,CAAI;AAAA,IACvB,IAAA,EAAM,CAAA;AAAA,IACN,OAAA,EAAS,MAAA;AAAA,IACT,UAAA,EAAY,QAAA;AAAA,IACZ,EAAA,EAAI,GAAA;AAAA,IACJ,IAAA,EAAM,GAAA;AAAA,IACN,CAAA,EAAG;AAAA,GACJ,CAAA;AAAA,EACD,cAAc,GAAA,CAAI;AAAA,IAChB,OAAA,EAAS,MAAA;AAAA,IACT,aAAA,EAAe,KAAA;AAAA,IACf,UAAA,EAAY,SAAA;AAAA,IACZ,QAAA,EAAU,UAAA;AAAA,IACV,IAAA,EAAM,IAAA;AAAA,IACN,oCAAA,EAAsC;AAAA,MACpC,OAAA,EAAS;AAAA;AACX,GACD,CAAA;AAAA,EACD,yBAAyB,GAAA,CAAI;AAAA,IAC3B,OAAA,EAAS,MAAA;AAAA,IACT,aAAA,EAAe,QAAA;AAAA,IACf,UAAA,EAAY,QAAA;AAAA,IACZ,CAAA,EAAG,GAAA;AAAA,IACH,UAAA,EAAY;AAAA,GACb,CAAA;AAAA,EACD,mBAAmB,GAAA,CAAI;AAAA,IACrB,IAAA,EAAM,CAAA;AAAA,IACN,OAAA,EAAS,MAAA;AAAA,IACT,cAAA,EAAgB,QAAA;AAAA,IAChB,EAAA,EAAI;AAAA,GACL,CAAA;AAAA,EACD,iBAAiB,GAAA,CAAI;AAAA,IACnB,OAAA,EAAS,MAAA;AAAA,IACT,aAAA,EAAe,QAAA;AAAA,IACf,EAAA,EAAI,GAAA;AAAA,IACJ,EAAA,EAAI,GAAA;AAAA,IACJ,IAAA,EAAM;AAAA,GACP,CAAA;AAAA,EACD,UAAU,GAAA,CAAI;AAAA,IACZ,OAAA,EAAS,MAAA;AAAA,IACT,aAAA,EAAe,QAAA;AAAA,IACf,UAAA,EAAY,QAAA;AAAA,IACZ,EAAA,EAAI,GAAA;AAAA,IACJ,IAAA,EAAM;AAAA,GACP,CAAA;AAAA,EACD,kBAAkB,GAAA,CAAI;AAAA,IACpB,UAAA,EAAY,YAAA;AAAA,IACZ,IAAA,EAAM,MAAA;AAAA,IACN,EAAA,EAAI;AAAA,GACL,CAAA;AAAA,EACD,aAAa,GAAA,CAAI;AAAA,IACf,SAAA,EAAW;AAAA,GACZ,CAAA;AAAA,EACD,qBAAqB,GAAA,CAAI;AAAA,IACvB,SAAA,EAAW;AAAA,GACZ,CAAA;AAAA,EACD,kBAAkB,GAAA,CAAI;AAAA,IACpB,KAAA,EAAO;AAAA,GACR,CAAA;AAAA,EACD,aAAa,GAAA,CAAI;AAAA,IACf,EAAA,EAAI,MAAA;AAAA,IACJ,WAAA,EAAa,CAAA;AAAA,IACb,CAAA,EAAG,CAAA;AAAA,IACH,CAAA,EAAG,CAAA;AAAA,IACH,IAAA,EAAM;AAAA,GACP,CAAA;AAAA,EACD,aAAa,GAAA,CAAI;AAAA,IACf,EAAA,EAAI;AAAA,GACL;AACH,CAAA;AAEA,SAAS,YAAA,CAAa;AAAA,EACpB,QAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA;AACF,CAAA,EAKc;AACZ,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,OAAO,OAAA;AAAA,EACT;AACA,EAAA,IAAI,UAAA,EAAY;AACd,IAAA,OAAO,UAAA;AAAA,EACT;AACA,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,OAAO,QAAA;AAAA,EACT;AACA,EAAA,IAAI,WAAA,EAAa;AACf,IAAA,OAAO,WAAA;AAAA,EACT;AACA,EAAA,OAAO,UAAA;AACT;AAKO,SAAS,IAAA,CAAK;AAAA,EACnB,QAAA;AAAA,EACA,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,WAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,IAAA;AAAA,EACA,WAAA,EAAa,oBAAA;AAAA,EACb,UAAA,GAAa,KAAA;AAAA,EACb,KAAA;AAAA,EACA,GAAA;AAAA,EACA,IAAA;AAAA,EACA;AACF,CAAA,EAAiC;AAC/B,EAAA,MAAM,EAAC,UAAA,EAAY,WAAA,EAAa,WAAA,EAAa,WAAA,KAC3C,iBAAA,EAAkB;AACpB,EAAA,MAAM,WAAW,IAAA,KAAS,UAAA;AAC1B,EAAA,MAAM,WAAA,GAAc,wBAAwB,IAAA,GAAO,UAAA;AACnD,EAAA,MAAM,aAAa,WAAA,KAAgB,UAAA;AACnC,EAAA,MAAM,WAAA,GAAc,WAAA,IAAe,CAAC,UAAA,KAAe,WAAA,IAAe,QAAA,CAAA;AAClE,EAAA,MAAM,QAAQ,YAAA,CAAa,EAAC,UAAU,QAAA,EAAU,WAAA,EAAa,YAAW,CAAA;AAExE,EAAA,MAAM,qBAAqB,mBAAA,CAAoB;AAAA,IAC7C,WAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAA,MAAM,uBAAA,GAA0B,WAAA,mBAC9B,GAAA,CAAC,IAAA,EAAA,EAAK,OAAM,SAAA,EAAU,IAAA,EAAM,KAAA,EAAO,IAAA,EAAK,IAAA,EAAK,CAAA,mBAE7C,GAAA,CAAC,MAAA,EAAA,EAAM,iBAAO,CAAA,EAAE,CAAA;AAElB,EAAA,MAAM,gBAAA,GAAmB,QAAA,mBACvB,GAAA,CAAC,IAAA,EAAA,EAAK,KAAA,EAAM,SAAA,EAAU,IAAA,EAAM,aAAA,EAAe,IAAA,EAAK,IAAA,EAAK,CAAA,GAEpD,IAAA,IAAQ,uBAAA;AAGX,EAAA,MAAM,cAAc,MAAM;AACxB,IAAA,IAAI,WAAA,EAAa;AACf,MAAA,WAAA,GAAc,IAAI,CAAA;AAAA,IACpB;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,SAAA,GAAY,QAAA,GACd,CAAA,WAAA,EAAc,IAAA,GAAO,CAAC,CAAA,EAAA,EAAK,KAAK,CAAA,QAAA,CAAA,GAChC,CAAA,WAAA,EAAc,IAAA,GAAO,CAAC,CAAA,EAAA,EAAK,KAAK,CAAA,CAAA;AAEpC,EAAA,MAAM,YAAY,WAAA,mBAChB,GAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,SAAA;AAAA,MACZ,SAAA,EAAW,EAAA;AAAA,QACT,MAAA,CAAO,WAAA;AAAA,QACP,mBAAA,CAAoB,EAAC,KAAA,EAAO,WAAA,EAAa,MAAK;AAAA,OAChD;AAAA,MACA,OAAA,EAAS,WAAA;AAAA,MACT,IAAA,EAAK,QAAA;AAAA,MACJ,QAAA,EAAA;AAAA;AAAA,GACH,mBAEA,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,aAAA,EAAY,MAAA;AAAA,MACZ,WAAW,mBAAA,CAAoB,EAAC,KAAA,EAAO,WAAA,EAAa,OAAM,CAAA;AAAA,MACzD,QAAA,EAAA;AAAA;AAAA,GACH;AAGF,EAAA,MAAM,SAAA,mBACJ,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,MAAA,CAAO,QAAA;AAAA,QACP,UAAA,GAAa,OAAO,gBAAA,GAAmB;AAAA,OACzC;AAAA,MACA,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,IAAA;AAAA,UAAA;AAAA,YACC,EAAA,EAAG,MAAA;AAAA,YACH,SAAA,EAAW,eAAA,CAAgB,EAAC,KAAA,EAAO,aAAY,CAAA;AAAA,YAC/C,KAAA,EAAM,SAAA;AAAA,YACN,IAAA,EAAK,OAAA;AAAA,YACJ,QAAA,EAAA;AAAA;AAAA,SACH;AAAA,QACC,eAAe,IAAA,mBACd,GAAA;AAAA,UAAC,IAAA;AAAA,UAAA;AAAA,YACC,EAAA,EAAG,MAAA;AAAA,YACH,SAAA,EAAW,EAAA;AAAA,cACT,MAAA,CAAO,WAAA;AAAA,cACP,UAAA,GAAa,OAAO,mBAAA,GAAsB,MAAA;AAAA,cAC1C,KAAA,KAAU,OAAA,GAAU,MAAA,CAAO,gBAAA,GAAmB;AAAA,aAChD;AAAA,YACA,KAAA,EAAM,WAAA;AAAA,YACN,IAAA,EAAK,YAAA;AAAA,YACJ,QAAA,EAAA;AAAA;AAAA,SACH,GACE;AAAA;AAAA;AAAA,GACN;AAGF,EAAA,IAAI,UAAA,EAAY;AACd,IAAA,uBACE,IAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,cAAA,EAAc,WAAW,MAAA,GAAS,MAAA;AAAA,QAClC,SAAA,EAAW,EAAA,CAAG,MAAA,CAAO,YAAA,EAAc,SAAS,CAAA;AAAA,QAC5C,aAAA,EAAa,UAAA;AAAA,QACb,GAAA;AAAA,QACA,KAAA;AAAA,QACA,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,uBAAA,EACpB,QAAA,EAAA;AAAA,YAAA,SAAA;AAAA,4BACD,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,iBAAA,EAAmB,qBAAA,EAAoB,EAAA,EAC5D,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,kBAAA,EAAoB,CAAA,EACtC;AAAA,WAAA,EACF,CAAA;AAAA,0BACA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,eAAA,EACpB,QAAA,EAAA;AAAA,YAAA,SAAA;AAAA,YACA,WAAA,CAAY,QAAQ,CAAA,mBACnB,GAAA,CAAC,SAAI,SAAA,EAAW,MAAA,CAAO,WAAA,EAAc,QAAA,EAAS,CAAA,GAC5C;AAAA,WAAA,EACN;AAAA;AAAA;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,cAAA,EAAc,WAAW,MAAA,GAAS,MAAA;AAAA,MAClC,SAAA,EAAW,EAAA,CAAG,MAAA,CAAO,cAAA,EAAgB,SAAS,CAAA;AAAA,MAC9C,aAAA,EAAa,UAAA;AAAA,MACb,GAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,iBAAA,EACpB,QAAA,EAAA;AAAA,UAAA,SAAA;AAAA,UACA;AAAA,SAAA,EACH,CAAA;AAAA,wBACA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,mBAAA,EAAqB,qBAAA,EAAoB,EAAA,EAC9D,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,kBAAA,EAAoB,CAAA,EACtC;AAAA;AAAA;AAAA,GACF;AAEJ;AAEA,IAAA,CAAK,WAAA,GAAc,MAAA;ACzRnB,IAAMA,OAAAA,GAAS;AAAA,EACb,MAAM,GAAA,CAAI;AAAA,IACR,OAAA,EAAS,MAAA;AAAA,IACT,CAAA,EAAG,MAAA;AAAA,IACH,CAAA,EAAG,CAAA;AAAA,IACH,CAAA,EAAG,CAAA;AAAA,IACH,aAAA,EAAe;AAAA,GAChB,CAAA;AAAA,EACD,YAAY,GAAA,CAAI;AAAA,IACd,aAAA,EAAe,KAAA;AAAA,IACf,UAAA,EAAY;AAAA,GACb,CAAA;AAAA,EACD,UAAU,GAAA,CAAI;AAAA,IACZ,aAAA,EAAe;AAAA,GAChB;AACH,CAAA;AAKO,SAAS,OAAA,CAAQ;AAAA,EACtB,UAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,KAAA,GAAQ,UAAA;AAAA,EACR,WAAA;AAAA,EACA,WAAA,GAAc,YAAA;AAAA,EACd,GAAA;AAAA,EACA;AACF,CAAA,EAAoC;AAClC,EAAA,MAAM,YAAA,GAAe,OAAA;AAAA,IACnB,OAAO;AAAA,MACL,UAAA;AAAA,MACA,aAAa,WAAA,IAAe,IAAA;AAAA,MAC5B,aAAa,WAAA,IAAe,IAAA;AAAA,MAC5B;AAAA,KACF,CAAA;AAAA,IACA,CAAC,UAAA,EAAY,WAAA,EAAa,WAAW;AAAA,GACvC;AAEA,EAAA,uBACEC,GAAAA,CAAC,cAAA,EAAA,EAAe,KAAA,EAAO,YAAA,EACrB,QAAA,kBAAAA,GAAAA,CAAC,KAAA,EAAA,EAAI,YAAA,EAAY,KAAA,EAAO,GAAA,EACtB,QAAA,kBAAAA,GAAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACTD,OAAAA,CAAO,IAAA;AAAA,QACP,WAAA,KAAgB,YAAA,GAAeA,OAAAA,CAAO,UAAA,GAAaA,OAAAA,CAAO,QAAA;AAAA,QAC1D;AAAA,OACF;AAAA,MACA,aAAA,EAAa,UAAA;AAAA,MACb,KAAA;AAAA,MACC;AAAA;AAAA,KAEL,CAAA,EACF,CAAA;AAEJ;AAEA,OAAA,CAAQ,WAAA,GAAc,SAAA","file":"chunk-UKW2C5RN.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\nimport type {StepState} from './Step';\n\nexport const stepIndicatorRecipe = cva({\n base: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n w: '7',\n h: '7',\n borderRadius: 'full',\n fontFamily: 'body',\n fontSize: 'sm',\n fontWeight: 'semibold',\n lineHeight: 'none',\n transitionProperty: 'background-color, color, border-color, opacity',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n flexShrink: 0,\n userSelect: 'none',\n borderWidth: 'emphasized',\n borderStyle: 'solid',\n },\n variants: {\n state: {\n active: {\n bg: 'primary',\n borderColor: 'primary',\n color: 'fg.onPrimary',\n },\n completed: {\n bg: 'primary',\n borderColor: 'primary',\n color: 'fg.onPrimary',\n },\n upcoming: {\n bg: 'transparent',\n borderColor: 'border.emphasized',\n color: 'fg.muted',\n },\n disabled: {\n bg: 'transparent',\n borderColor: 'border',\n color: 'fg.disabled',\n },\n error: {\n bg: 'status.error.solid',\n borderColor: 'status.error.solid',\n color: 'status.error.solidFg',\n },\n } satisfies Record<StepState, object>,\n isClickable: {\n true: {\n cursor: 'pointer',\n _hover: {\n opacity: 0.85,\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n },\n false: {},\n },\n },\n defaultVariants: {\n state: 'upcoming',\n isClickable: false,\n },\n});\n\nexport const stepLabelRecipe = cva({\n base: {\n textAlign: 'center',\n },\n variants: {\n state: {\n active: {\n color: 'fg',\n fontWeight: 'semibold',\n },\n completed: {\n color: 'fg',\n },\n upcoming: {\n color: 'fg.muted',\n },\n disabled: {\n color: 'fg.disabled',\n },\n error: {\n color: 'status.error.fg',\n },\n } satisfies Record<StepState, object>,\n orientation: {\n horizontal: {},\n vertical: {\n textAlign: 'start',\n },\n },\n },\n defaultVariants: {\n state: 'upcoming',\n orientation: 'horizontal',\n },\n});\n\nexport const stepConnectorRecipe = cva({\n base: {\n borderRadius: 'full',\n transitionProperty: 'background-color',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n },\n variants: {\n isCompleted: {\n true: {\n bg: 'primary',\n },\n false: {\n bg: 'track.emphasized',\n },\n },\n orientation: {\n horizontal: {\n h: '0.5',\n w: 'full',\n },\n vertical: {\n w: '0.5',\n h: 'full',\n },\n },\n },\n defaultVariants: {\n isCompleted: false,\n orientation: 'horizontal',\n },\n});\n\nexport type StepIndicatorVariants = RecipeVariantProps<\n typeof stepIndicatorRecipe\n>;\nexport type StepLabelVariants = RecipeVariantProps<typeof stepLabelRecipe>;\nexport type StepConnectorVariants = RecipeVariantProps<\n typeof stepConnectorRecipe\n>;\n","import {createContext, use} from 'react';\n\nexport type StepperOrientation = 'horizontal' | 'vertical';\n\nexport interface StepperContextValue {\n activeStep: number;\n isNonLinear: boolean;\n onStepClick: ((index: number) => void) | null;\n orientation: StepperOrientation;\n}\n\nexport const StepperContext = createContext<StepperContextValue | null>(null);\nStepperContext.displayName = 'StepperContext';\n\nexport function useStepperContext(): StepperContextValue {\n const context = use(StepperContext);\n\n if (context == null) {\n throw new Error('Step must be used within a Stepper.');\n }\n\n return context;\n}\n","import {Check, TriangleAlert} from 'lucide-react';\nimport type {CSSProperties, ReactNode, Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {Icon} from '../Icon';\nimport {Text} from '../Text';\nimport {\n stepConnectorRecipe,\n stepIndicatorRecipe,\n stepLabelRecipe,\n} from './Step.recipe';\nimport {useStepperContext} from './StepperContext';\n\nexport type StepState =\n | 'active'\n | 'completed'\n | 'disabled'\n | 'error'\n | 'upcoming';\n\nexport interface StepProps {\n /**\n * Content rendered below the label and description in vertical steppers.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the step.\n */\n className?: string;\n /**\n * Test ID applied to the step.\n */\n 'data-testid'?: string;\n /**\n * Optional supporting text.\n */\n description?: string;\n /**\n * Whether the step has an error.\n * @default false\n */\n hasError?: boolean;\n /**\n * Custom indicator content replacing the number or check icon.\n */\n icon?: ReactNode;\n /**\n * Override the automatically computed completed state.\n */\n isCompleted?: boolean;\n /**\n * Whether the step is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Step label.\n */\n label: string;\n /**\n * Ref forwarded to the list item.\n */\n ref?: Ref<HTMLLIElement>;\n /**\n * Zero-based index of this step.\n */\n step: number;\n /**\n * Inline styles applied to the step.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n horizontalRoot: css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start',\n flex: 1,\n position: 'relative',\n _last: {\n flex: 'none',\n },\n '&:last-child [data-step-connector]': {\n display: 'none',\n },\n }),\n horizontalContent: css({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n position: 'relative',\n zIndex: 1,\n }),\n horizontalConnector: css({\n flex: 1,\n display: 'flex',\n alignItems: 'center',\n px: '2',\n minW: '6',\n h: '7',\n }),\n verticalRoot: css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'stretch',\n position: 'relative',\n minH: '12',\n '&:last-child [data-step-connector]': {\n display: 'none',\n },\n }),\n verticalIndicatorColumn: css({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n w: '7',\n flexShrink: 0,\n }),\n verticalConnector: css({\n flex: 1,\n display: 'flex',\n justifyContent: 'center',\n py: '1',\n }),\n verticalContent: css({\n display: 'flex',\n flexDirection: 'column',\n ps: '3',\n pb: '6',\n flex: 1,\n }),\n labelRow: css({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n pt: '1',\n maxW: '120px',\n }),\n labelRowVertical: css({\n alignItems: 'flex-start',\n maxW: 'none',\n pt: '0.5',\n }),\n description: css({\n textAlign: 'center',\n }),\n descriptionVertical: css({\n textAlign: 'start',\n }),\n descriptionError: css({\n color: 'status.error.fg',\n }),\n buttonReset: css({\n bg: 'none',\n borderWidth: 0,\n p: 0,\n m: 0,\n font: 'inherit',\n }),\n stepContent: css({\n pt: '3',\n }),\n} as const;\n\nfunction getStepState({\n hasError,\n isActive,\n isCompleted,\n isDisabled,\n}: {\n hasError: boolean;\n isActive: boolean;\n isCompleted: boolean;\n isDisabled: boolean;\n}): StepState {\n if (hasError) {\n return 'error';\n }\n if (isDisabled) {\n return 'disabled';\n }\n if (isActive) {\n return 'active';\n }\n if (isCompleted) {\n return 'completed';\n }\n return 'upcoming';\n}\n\n/**\n * Individual step within a `Stepper`.\n */\nexport function Step({\n children,\n className,\n 'data-testid': dataTestId,\n description,\n hasError = false,\n icon,\n isCompleted: isCompletedFromProps,\n isDisabled = false,\n label,\n ref,\n step,\n style,\n}: StepProps): React.JSX.Element {\n const {activeStep, orientation, isNonLinear, onStepClick} =\n useStepperContext();\n const isActive = step === activeStep;\n const isCompleted = isCompletedFromProps ?? step < activeStep;\n const isVertical = orientation === 'vertical';\n const isClickable = isNonLinear && !isDisabled && (isCompleted || isActive);\n const state = getStepState({hasError, isActive, isCompleted, isDisabled});\n\n const connectorClassName = stepConnectorRecipe({\n isCompleted,\n orientation,\n });\n\n const defaultIndicatorContent = isCompleted ? (\n <Icon color=\"inherit\" icon={Check} size=\"sm\" />\n ) : (\n <span>{step + 1}</span>\n );\n const indicatorContent = hasError ? (\n <Icon color=\"inherit\" icon={TriangleAlert} size=\"sm\" />\n ) : (\n (icon ?? defaultIndicatorContent)\n );\n\n const handleClick = () => {\n if (isClickable) {\n onStepClick?.(step);\n }\n };\n\n const stepLabel = hasError\n ? `Go to step ${step + 1}: ${label} (error)`\n : `Go to step ${step + 1}: ${label}`;\n\n const indicator = isClickable ? (\n <button\n aria-label={stepLabel}\n className={cx(\n styles.buttonReset,\n stepIndicatorRecipe({state, isClickable: true}),\n )}\n onClick={handleClick}\n type=\"button\">\n {indicatorContent}\n </button>\n ) : (\n <div\n aria-hidden=\"true\"\n className={stepIndicatorRecipe({state, isClickable: false})}>\n {indicatorContent}\n </div>\n );\n\n const labelNode = (\n <div\n className={cx(\n styles.labelRow,\n isVertical ? styles.labelRowVertical : undefined,\n )}>\n <Text\n as=\"span\"\n className={stepLabelRecipe({state, orientation})}\n color=\"inherit\"\n type=\"label\">\n {label}\n </Text>\n {description != null ? (\n <Text\n as=\"span\"\n className={cx(\n styles.description,\n isVertical ? styles.descriptionVertical : undefined,\n state === 'error' ? styles.descriptionError : undefined,\n )}\n color=\"secondary\"\n type=\"supporting\">\n {description}\n </Text>\n ) : null}\n </div>\n );\n\n if (isVertical) {\n return (\n <li\n aria-current={isActive ? 'step' : undefined}\n className={cx(styles.verticalRoot, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <div className={styles.verticalIndicatorColumn}>\n {indicator}\n <div className={styles.verticalConnector} data-step-connector=\"\">\n <div className={connectorClassName} />\n </div>\n </div>\n <div className={styles.verticalContent}>\n {labelNode}\n {isReactNode(children) ? (\n <div className={styles.stepContent}>{children}</div>\n ) : null}\n </div>\n </li>\n );\n }\n\n return (\n <li\n aria-current={isActive ? 'step' : undefined}\n className={cx(styles.horizontalRoot, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <div className={styles.horizontalContent}>\n {indicator}\n {labelNode}\n </div>\n <div className={styles.horizontalConnector} data-step-connector=\"\">\n <div className={connectorClassName} />\n </div>\n </li>\n );\n}\n\nStep.displayName = 'Step';\n","import {useMemo, type CSSProperties, type ReactNode, type Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {\n StepperContext,\n type StepperContextValue,\n type StepperOrientation,\n} from './StepperContext';\n\nexport type {StepperOrientation};\n\nexport interface StepperProps {\n /**\n * Zero-based index of the active step.\n */\n activeStep: number;\n /**\n * Step elements to render.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the ordered list.\n */\n className?: string;\n /**\n * Test ID applied to the ordered list.\n */\n 'data-testid'?: string;\n /**\n * Accessible label for the navigation landmark.\n * @default 'Progress'\n */\n label?: string;\n /**\n * Called when a completed or active step indicator is clicked.\n */\n onStepClick?: (index: number) => void;\n /**\n * Layout direction.\n * @default 'horizontal'\n */\n orientation?: StepperOrientation;\n /**\n * Ref forwarded to the navigation element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Inline styles applied to the ordered list.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n root: css({\n display: 'flex',\n w: 'full',\n m: 0,\n p: 0,\n listStyleType: 'none',\n }),\n horizontal: css({\n flexDirection: 'row',\n alignItems: 'flex-start',\n }),\n vertical: css({\n flexDirection: 'column',\n }),\n} as const;\n\n/**\n * Displays progress through a sequence of logical steps.\n */\nexport function Stepper({\n activeStep,\n children,\n className,\n 'data-testid': dataTestId,\n label = 'Progress',\n onStepClick,\n orientation = 'horizontal',\n ref,\n style,\n}: StepperProps): React.JSX.Element {\n const contextValue = useMemo<StepperContextValue>(\n () => ({\n activeStep,\n isNonLinear: onStepClick != null,\n onStepClick: onStepClick ?? null,\n orientation,\n }),\n [activeStep, onStepClick, orientation],\n );\n\n return (\n <StepperContext value={contextValue}>\n <nav aria-label={label} ref={ref}>\n <ol\n className={cx(\n styles.root,\n orientation === 'horizontal' ? styles.horizontal : styles.vertical,\n className,\n )}\n data-testid={dataTestId}\n style={style}>\n {children}\n </ol>\n </nav>\n </StepperContext>\n );\n}\n\nStepper.displayName = 'Stepper';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { useLinkComponent } from './chunk-
|
|
1
|
+
import { useLinkComponent } from './chunk-MI5QU37D.js';
|
|
2
2
|
import { Icon } from './chunk-7T3SWOY7.js';
|
|
3
|
-
import { sva } from './chunk-
|
|
3
|
+
import { sva } from './chunk-IAVZKGZS.js';
|
|
4
4
|
import { cx } from './chunk-PPNETWIP.js';
|
|
5
5
|
import { createContext, use, useMemo } from 'react';
|
|
6
6
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
@@ -212,5 +212,5 @@ function Breadcrumbs({
|
|
|
212
212
|
Breadcrumbs.displayName = "Breadcrumbs";
|
|
213
213
|
|
|
214
214
|
export { BreadcrumbItem, Breadcrumbs, BreadcrumbsContext };
|
|
215
|
-
//# sourceMappingURL=chunk-
|
|
216
|
-
//# sourceMappingURL=chunk-
|
|
215
|
+
//# sourceMappingURL=chunk-UUVLEOSD.js.map
|
|
216
|
+
//# sourceMappingURL=chunk-UUVLEOSD.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Breadcrumbs/BreadcrumbItem.recipe.ts","../src/components/Breadcrumbs/BreadcrumbsContext.ts","../src/components/Breadcrumbs/BreadcrumbItem.tsx","../src/components/Breadcrumbs/Breadcrumbs.recipe.ts","../src/components/Breadcrumbs/Breadcrumbs.tsx"],"names":["jsx"],"mappings":"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","file":"chunk-AMFFE5UJ.js","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const breadcrumbItemRecipe = sva({\n slots: ['item', 'separator', 'content', 'link', 'icon'],\n base: {\n item: {\n display: 'flex',\n alignItems: 'center',\n gap: '1',\n m: 0,\n '--breadcrumb-separator-display': 'flex',\n _first: {\n '--breadcrumb-separator-display': 'none',\n },\n },\n separator: {\n display: 'var(--breadcrumb-separator-display)',\n alignItems: 'center',\n color: 'fg.muted',\n py: '1',\n userSelect: 'none',\n },\n content: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n },\n link: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n p: 0,\n py: '1',\n borderWidth: 0,\n bg: 'transparent',\n color: 'fg.muted',\n cursor: 'pointer',\n font: 'inherit',\n textDecoration: 'none',\n _hover: {\n textDecoration: 'underline',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n },\n icon: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n },\n },\n variants: {\n variant: {\n default: {\n item: {\n fontSize: 'sm',\n lineHeight: 'normal',\n },\n },\n supporting: {\n item: {\n fontSize: 'xs',\n lineHeight: 'normal',\n },\n },\n },\n isCurrent: {\n true: {},\n },\n },\n compoundVariants: [\n {\n variant: 'default',\n isCurrent: true,\n css: {content: {color: 'fg'}},\n },\n {\n variant: 'supporting',\n isCurrent: true,\n css: {content: {color: 'fg.muted'}},\n },\n ],\n defaultVariants: {\n variant: 'default',\n },\n});\n\nexport type BreadcrumbItemVariants = RecipeVariantProps<\n typeof breadcrumbItemRecipe\n>;\n","import {createContext, type ReactNode} from 'react';\n\nexport type BreadcrumbsVariant = 'default' | 'supporting';\n\nexport interface BreadcrumbsContextValue {\n separator: ReactNode;\n variant: BreadcrumbsVariant;\n}\n\nexport const BreadcrumbsContext = createContext<BreadcrumbsContextValue>({\n separator: '/',\n variant: 'default',\n});\n\nBreadcrumbsContext.displayName = 'BreadcrumbsContext';\n","/* eslint-disable @eslint-react/static-components -- intentional polymorphism via as prop */\n\nimport {\n use,\n type CSSProperties,\n type MouseEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconComponent} from '../Icon';\nimport type {LinkComponent} from '../Link';\nimport {useLinkComponent} from '../Link';\nimport {breadcrumbItemRecipe} from './BreadcrumbItem.recipe';\nimport {BreadcrumbsContext} from './BreadcrumbsContext';\n\nexport interface BreadcrumbItemProps {\n /**\n * Custom link component used when href is set.\n */\n as?: LinkComponent;\n /**\n * Breadcrumb label content.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the list item.\n */\n className?: string;\n /**\n * Test ID applied to the list item.\n */\n 'data-testid'?: string;\n /**\n * Link destination. Omit for the current page.\n */\n href?: string;\n /**\n * Whether this item represents the current page.\n */\n isCurrent?: boolean;\n /**\n * Click handler for link or button items.\n */\n onClick?: (event: MouseEvent<HTMLElement>) => void;\n /**\n * Ref forwarded to the list item.\n */\n ref?: Ref<HTMLLIElement>;\n /**\n * Icon rendered before the label.\n */\n startIcon?: IconComponent;\n /**\n * Inline styles applied to the list item.\n */\n style?: CSSProperties;\n}\n\n/**\n * A single item in a breadcrumb trail, rendered as a link, button, or\n * static text depending on the props provided.\n */\nexport function BreadcrumbItem({\n as,\n children,\n className,\n 'data-testid': dataTestId,\n href,\n isCurrent: isCurrentProp,\n onClick,\n ref,\n startIcon,\n style,\n}: BreadcrumbItemProps): React.JSX.Element {\n const context = use(BreadcrumbsContext);\n const LinkComponent = useLinkComponent(as);\n const isCurrent = isCurrentProp === true;\n const classes = breadcrumbItemRecipe({\n variant: context.variant,\n isCurrent: isCurrent || undefined,\n });\n\n const content = (\n <>\n {startIcon != null ? (\n <span className={classes.icon}>\n <Icon icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n {children}\n </>\n );\n\n if (isCurrent) {\n return (\n <li\n className={cx(classes.item, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <span aria-hidden=\"true\" className={classes.separator}>\n {context.separator}\n </span>\n <span aria-current=\"page\" className={classes.content}>\n {content}\n </span>\n </li>\n );\n }\n\n return (\n <li\n className={cx(classes.item, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <span aria-hidden=\"true\" className={classes.separator}>\n {context.separator}\n </span>\n {href != null ? (\n <LinkComponent\n className={classes.link}\n href={href}\n onClick={onClick}\n to={LinkComponent === 'a' ? undefined : href}>\n {content}\n </LinkComponent>\n ) : onClick != null ? (\n <button className={classes.link} onClick={onClick} type=\"button\">\n {content}\n </button>\n ) : (\n <span className={classes.content}>{content}</span>\n )}\n </li>\n );\n}\n\nBreadcrumbItem.displayName = 'BreadcrumbItem';\n","import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const breadcrumbsRecipe = sva({\n slots: ['nav', 'list'],\n base: {\n nav: {\n display: 'block',\n },\n list: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n gap: '1',\n m: 0,\n p: 0,\n listStyle: 'none',\n },\n },\n});\n\nexport type BreadcrumbsVariants = RecipeVariantProps<typeof breadcrumbsRecipe>;\n","import {useMemo, type CSSProperties, type ReactNode, type Ref} from 'react';\nimport {cx} from '../../internal/cx';\nimport {breadcrumbsRecipe} from './Breadcrumbs.recipe';\nimport {\n BreadcrumbsContext,\n type BreadcrumbsVariant,\n} from './BreadcrumbsContext';\n\nexport interface BreadcrumbsProps {\n /**\n * BreadcrumbItem children.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the nav element.\n */\n className?: string;\n /**\n * Test ID applied to the nav element.\n */\n 'data-testid'?: string;\n /**\n * Accessible label for the navigation landmark.\n * @default 'Breadcrumb'\n */\n label?: string;\n /**\n * Ref forwarded to the nav element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Separator rendered between items.\n * @default '/'\n */\n separator?: ReactNode;\n /**\n * Inline styles applied to the nav element.\n */\n style?: CSSProperties;\n /**\n * Visual text variant.\n * @default 'default'\n */\n variant?: BreadcrumbsVariant;\n}\n\n/**\n * Navigation landmark that displays a trail of breadcrumb links.\n */\nexport function Breadcrumbs({\n children,\n className,\n 'data-testid': dataTestId,\n label = 'Breadcrumb',\n ref,\n separator = '/',\n style,\n variant = 'default',\n}: BreadcrumbsProps): React.JSX.Element {\n const contextValue = useMemo(\n () => ({separator, variant}),\n [separator, variant],\n );\n const classes = breadcrumbsRecipe();\n\n return (\n <BreadcrumbsContext value={contextValue}>\n <nav\n aria-label={label}\n className={cx(classes.nav, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <ol className={classes.list}>{children}</ol>\n </nav>\n </BreadcrumbsContext>\n );\n}\n\nBreadcrumbs.displayName = 'Breadcrumbs';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/Breadcrumbs/BreadcrumbItem.recipe.ts","../src/components/Breadcrumbs/BreadcrumbsContext.ts","../src/components/Breadcrumbs/BreadcrumbItem.tsx","../src/components/Breadcrumbs/Breadcrumbs.recipe.ts","../src/components/Breadcrumbs/Breadcrumbs.tsx"],"names":["jsx"],"mappings":"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","file":"chunk-UUVLEOSD.js","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const breadcrumbItemRecipe = sva({\n slots: ['item', 'separator', 'content', 'link', 'icon'],\n base: {\n item: {\n display: 'flex',\n alignItems: 'center',\n gap: '1',\n m: 0,\n '--breadcrumb-separator-display': 'flex',\n _first: {\n '--breadcrumb-separator-display': 'none',\n },\n },\n separator: {\n display: 'var(--breadcrumb-separator-display)',\n alignItems: 'center',\n color: 'fg.muted',\n py: '1',\n userSelect: 'none',\n },\n content: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n },\n link: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n p: 0,\n py: '1',\n borderWidth: 0,\n bg: 'transparent',\n color: 'fg.muted',\n cursor: 'pointer',\n font: 'inherit',\n textDecoration: 'none',\n _hover: {\n textDecoration: 'underline',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n },\n icon: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n },\n },\n variants: {\n variant: {\n default: {\n item: {\n fontSize: 'sm',\n lineHeight: 'normal',\n },\n },\n supporting: {\n item: {\n fontSize: 'xs',\n lineHeight: 'normal',\n },\n },\n },\n isCurrent: {\n true: {},\n },\n },\n compoundVariants: [\n {\n variant: 'default',\n isCurrent: true,\n css: {content: {color: 'fg'}},\n },\n {\n variant: 'supporting',\n isCurrent: true,\n css: {content: {color: 'fg.muted'}},\n },\n ],\n defaultVariants: {\n variant: 'default',\n },\n});\n\nexport type BreadcrumbItemVariants = RecipeVariantProps<\n typeof breadcrumbItemRecipe\n>;\n","import {createContext, type ReactNode} from 'react';\n\nexport type BreadcrumbsVariant = 'default' | 'supporting';\n\nexport interface BreadcrumbsContextValue {\n separator: ReactNode;\n variant: BreadcrumbsVariant;\n}\n\nexport const BreadcrumbsContext = createContext<BreadcrumbsContextValue>({\n separator: '/',\n variant: 'default',\n});\n\nBreadcrumbsContext.displayName = 'BreadcrumbsContext';\n","/* eslint-disable @eslint-react/static-components -- intentional polymorphism via as prop */\n\nimport {\n use,\n type CSSProperties,\n type MouseEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconComponent} from '../Icon';\nimport type {LinkComponent} from '../Link';\nimport {useLinkComponent} from '../Link';\nimport {breadcrumbItemRecipe} from './BreadcrumbItem.recipe';\nimport {BreadcrumbsContext} from './BreadcrumbsContext';\n\nexport interface BreadcrumbItemProps {\n /**\n * Custom link component used when href is set.\n */\n as?: LinkComponent;\n /**\n * Breadcrumb label content.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the list item.\n */\n className?: string;\n /**\n * Test ID applied to the list item.\n */\n 'data-testid'?: string;\n /**\n * Link destination. Omit for the current page.\n */\n href?: string;\n /**\n * Whether this item represents the current page.\n */\n isCurrent?: boolean;\n /**\n * Click handler for link or button items.\n */\n onClick?: (event: MouseEvent<HTMLElement>) => void;\n /**\n * Ref forwarded to the list item.\n */\n ref?: Ref<HTMLLIElement>;\n /**\n * Icon rendered before the label.\n */\n startIcon?: IconComponent;\n /**\n * Inline styles applied to the list item.\n */\n style?: CSSProperties;\n}\n\n/**\n * A single item in a breadcrumb trail, rendered as a link, button, or\n * static text depending on the props provided.\n */\nexport function BreadcrumbItem({\n as,\n children,\n className,\n 'data-testid': dataTestId,\n href,\n isCurrent: isCurrentProp,\n onClick,\n ref,\n startIcon,\n style,\n}: BreadcrumbItemProps): React.JSX.Element {\n const context = use(BreadcrumbsContext);\n const LinkComponent = useLinkComponent(as);\n const isCurrent = isCurrentProp === true;\n const classes = breadcrumbItemRecipe({\n variant: context.variant,\n isCurrent: isCurrent || undefined,\n });\n\n const content = (\n <>\n {startIcon != null ? (\n <span className={classes.icon}>\n <Icon icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n {children}\n </>\n );\n\n if (isCurrent) {\n return (\n <li\n className={cx(classes.item, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <span aria-hidden=\"true\" className={classes.separator}>\n {context.separator}\n </span>\n <span aria-current=\"page\" className={classes.content}>\n {content}\n </span>\n </li>\n );\n }\n\n return (\n <li\n className={cx(classes.item, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <span aria-hidden=\"true\" className={classes.separator}>\n {context.separator}\n </span>\n {href != null ? (\n <LinkComponent\n className={classes.link}\n href={href}\n onClick={onClick}\n to={LinkComponent === 'a' ? undefined : href}>\n {content}\n </LinkComponent>\n ) : onClick != null ? (\n <button className={classes.link} onClick={onClick} type=\"button\">\n {content}\n </button>\n ) : (\n <span className={classes.content}>{content}</span>\n )}\n </li>\n );\n}\n\nBreadcrumbItem.displayName = 'BreadcrumbItem';\n","import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const breadcrumbsRecipe = sva({\n slots: ['nav', 'list'],\n base: {\n nav: {\n display: 'block',\n },\n list: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n gap: '1',\n m: 0,\n p: 0,\n listStyle: 'none',\n },\n },\n});\n\nexport type BreadcrumbsVariants = RecipeVariantProps<typeof breadcrumbsRecipe>;\n","import {useMemo, type CSSProperties, type ReactNode, type Ref} from 'react';\nimport {cx} from '../../internal/cx';\nimport {breadcrumbsRecipe} from './Breadcrumbs.recipe';\nimport {\n BreadcrumbsContext,\n type BreadcrumbsVariant,\n} from './BreadcrumbsContext';\n\nexport interface BreadcrumbsProps {\n /**\n * BreadcrumbItem children.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the nav element.\n */\n className?: string;\n /**\n * Test ID applied to the nav element.\n */\n 'data-testid'?: string;\n /**\n * Accessible label for the navigation landmark.\n * @default 'Breadcrumb'\n */\n label?: string;\n /**\n * Ref forwarded to the nav element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Separator rendered between items.\n * @default '/'\n */\n separator?: ReactNode;\n /**\n * Inline styles applied to the nav element.\n */\n style?: CSSProperties;\n /**\n * Visual text variant.\n * @default 'default'\n */\n variant?: BreadcrumbsVariant;\n}\n\n/**\n * Navigation landmark that displays a trail of breadcrumb links.\n */\nexport function Breadcrumbs({\n children,\n className,\n 'data-testid': dataTestId,\n label = 'Breadcrumb',\n ref,\n separator = '/',\n style,\n variant = 'default',\n}: BreadcrumbsProps): React.JSX.Element {\n const contextValue = useMemo(\n () => ({separator, variant}),\n [separator, variant],\n );\n const classes = breadcrumbsRecipe();\n\n return (\n <BreadcrumbsContext value={contextValue}>\n <nav\n aria-label={label}\n className={cx(classes.nav, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <ol className={classes.list}>{children}</ol>\n </nav>\n </BreadcrumbsContext>\n );\n}\n\nBreadcrumbs.displayName = 'Breadcrumbs';\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Icon } from './chunk-7T3SWOY7.js';
|
|
2
|
-
import { sva } from './chunk-
|
|
3
|
-
import { cx } from './chunk-PPNETWIP.js';
|
|
2
|
+
import { sva } from './chunk-IAVZKGZS.js';
|
|
4
3
|
import { css } from './chunk-OD4DHHZH.js';
|
|
4
|
+
import { cx } from './chunk-PPNETWIP.js';
|
|
5
5
|
import { createContext, useState, useRef, useMemo, useCallback, useId, use } from 'react';
|
|
6
6
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
7
7
|
import { ChevronDown } from 'lucide-react';
|
|
@@ -317,5 +317,5 @@ function Collapsible({
|
|
|
317
317
|
Collapsible.displayName = "Collapsible";
|
|
318
318
|
|
|
319
319
|
export { Accordion, AccordionItem, Collapsible };
|
|
320
|
-
//# sourceMappingURL=chunk-
|
|
321
|
-
//# sourceMappingURL=chunk-
|
|
320
|
+
//# sourceMappingURL=chunk-VFGSNR35.js.map
|
|
321
|
+
//# sourceMappingURL=chunk-VFGSNR35.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Accordion/AccordionContext.tsx","../src/components/Accordion/Accordion.tsx","../src/components/Accordion/AccordionItem.recipe.ts","../src/components/Accordion/useCollapsible.ts","../src/components/Accordion/AccordionItem.tsx","../src/components/Accordion/Collapsible.tsx"],"names":["useState","useCallback","jsx"],"mappings":";;;;;;;;AAOO,IAAM,gBAAA,GAAmB,aAAA;AAAA,EAC9B;AACF,CAAA;AACA,gBAAA,CAAiB,WAAA,GAAc,kBAAA;ACuF/B,SAAS,eACP,KAAA,EACqB;AACrB,EAAA,IAAI,SAAS,IAAA,EAAM;AACjB,IAAA,2BAAW,GAAA,EAAI;AAAA,EACjB;AACA,EAAA,OAAO,IAAI,IAAI,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,GAAI,KAAA,GAAQ,CAAC,KAAK,CAAC,CAAA;AACvD;AAEA,IAAM,MAAA,GAAS;AAAA,EACb,MAAM,GAAA,CAAI;AAAA,IACR,OAAA,EAAS,MAAA;AAAA,IACT,aAAA,EAAe,QAAA;AAAA,IACf,GAAA,EAAK;AAAA,GACN;AACH,CAAA;AAEO,SAAS,SAAA,CAAU;AAAA,EACxB,YAAA,EAAc,SAAA;AAAA,EACd,iBAAA,EAAmB,cAAA;AAAA,EACnB,IAAA,GAAO,QAAA;AAAA,EACP,YAAA;AAAA,EACA,KAAA,EAAO,eAAA;AAAA,EACP,QAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,GAAA;AAAA,EACA;AACF,CAAA,EAAsC;AACpC,EAAA,MAAM,eAAe,eAAA,KAAoB,MAAA;AACzC,EAAA,MAAM,CAAC,aAAA,EAAe,gBAAgB,CAAA,GAAI,QAAA;AAAA,IAA8B,MACtE,eAAe,YAAY;AAAA,GAC7B;AAQA,EAAA,MAAM,sBAAA,GAAyB,MAAA;AAAA,IAC7B;AAAA,GACF;AACA,EAAA,MAAM,yBAAA,GAA4B,OAAO,KAAK,CAAA;AAC9C,EAAA,IAAI,OAAA,CAAQ,GAAA,CAAI,QAAA,KAAa,YAAA,EAAc;AACzC,IAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,eAAe,CAAA,EAAG;AAClC,MAAA,MAAM,OAAO,sBAAA,CAAuB,OAAA;AACpC,MAAA,IACE,CAAC,0BAA0B,OAAA,IAC3B,IAAA,KAAS,UACT,IAAA,KAAS,eAAA,IACT,KAAK,MAAA,KAAW,eAAA,CAAgB,UAChC,IAAA,CAAK,KAAA,CAAM,CAAC,IAAA,EAAM,CAAA,KAAM,SAAS,eAAA,CAAgB,CAAC,CAAC,CAAA,EACnD;AACA,QAAA,yBAAA,CAA0B,OAAA,GAAU,IAAA;AACpC,QAAA,OAAA,CAAQ,IAAA;AAAA,UACN;AAAA,SAGF;AAAA,MACF;AACA,MAAA,sBAAA,CAAuB,OAAA,GAAU,eAAA;AAAA,IACnC;AAAA,EACF;AAGA,EAAA,MAAM,UAAA,GAAa,OAAA;AAAA,IACjB,MAAO,YAAA,GAAe,cAAA,CAAe,eAAe,CAAA,GAAI,aAAA;AAAA,IACxD,CAAC,YAAA,EAAc,eAAA,EAAiB,aAAa;AAAA,GAC/C;AAEA,EAAA,MAAM,SAAA,GAAY,WAAA;AAAA,IAChB,CAAC,SAAA,KAAsB,UAAA,CAAW,GAAA,CAAI,SAAS,CAAA;AAAA,IAC/C,CAAC,UAAU;AAAA,GACb;AAEA,EAAA,MAAM,MAAA,GAAS,WAAA;AAAA,IACb,CAAC,SAAA,KAAsB;AACrB,MAAA,IAAI,UAAA;AAEJ,MAAA,IAAI,SAAS,QAAA,EAAU;AACrB,QAAA,UAAA,GAAa,UAAA,CAAW,GAAA,CAAI,SAAS,CAAA,mBACjC,IAAI,GAAA,EAAI,mBACR,IAAI,GAAA,CAAI,CAAC,SAAS,CAAC,CAAA;AAAA,MACzB,CAAA,MAAO;AACL,QAAA,MAAM,IAAA,GAAO,IAAI,GAAA,CAAI,UAAU,CAAA;AAC/B,QAAA,IAAI,IAAA,CAAK,GAAA,CAAI,SAAS,CAAA,EAAG;AACvB,UAAA,IAAA,CAAK,OAAO,SAAS,CAAA;AAAA,QACvB,CAAA,MAAO;AACL,UAAA,IAAA,CAAK,IAAI,SAAS,CAAA;AAAA,QACpB;AACA,QAAA,UAAA,GAAa,IAAA;AAAA,MACf;AAEA,MAAA,IAAI,CAAC,YAAA,EAAc;AACjB,QAAA,gBAAA,CAAiB,UAAU,CAAA;AAAA,MAC7B;AAEA,MAAA,IAAI,QAAA,EAAU;AACZ,QAAA,MAAM,GAAA,GAAM,CAAC,GAAG,UAAU,CAAA;AAC1B,QAAA,IAAI,SAAS,QAAA,EAAU;AACrB,UAAC,QAAA,CAA4C,GAAA,CAAI,CAAC,CAAA,IAAK,IAAI,CAAA;AAAA,QAC7D,CAAA,MAAO;AACL,UAAC,SAAuC,GAAG,CAAA;AAAA,QAC7C;AAAA,MACF;AAAA,IACF,CAAA;AAAA,IACA,CAAC,IAAA,EAAM,UAAA,EAAY,YAAA,EAAc,QAAQ;AAAA,GAC3C;AAEA,EAAA,MAAM,YAAA,GAAe,OAAA;AAAA,IACnB,OAAO,EAAC,SAAA,EAAW,MAAA,EAAM,CAAA;AAAA,IACzB,CAAC,WAAW,MAAM;AAAA,GACpB;AAEA,EAAA,uBACE,GAAA,CAAC,gBAAA,EAAA,EAAiB,KAAA,EAAO,YAAA,EACvB,QAAA,kBAAA,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,SAAA;AAAA,MACZ,iBAAA,EAAiB,cAAA;AAAA,MACjB,SAAA,EAAW,EAAA,CAAG,MAAA,CAAO,IAAA,EAAM,SAAS,CAAA;AAAA,MACpC,aAAA,EAAa,UAAA;AAAA,MACb,GAAA;AAAA,MACA,IAAA,EAAK,OAAA;AAAA,MACL,KAAA;AAAA,MACC;AAAA;AAAA,GACH,EACF,CAAA;AAEJ;AAEA,SAAA,CAAU,WAAA,GAAc,WAAA;;;ACnOjB,IAAM,sBAAsB,GAAA,CAAI;AAAA,EACrC,OAAO,CAAC,MAAA,EAAQ,SAAA,EAAW,SAAA,EAAW,SAAS,YAAY,CAAA;AAAA,EAC3D,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,MACJ,CAAA,EAAG;AAAA,KACL;AAAA,IACA,OAAA,EAAS;AAAA,MACP,OAAA,EAAS,MAAA;AAAA,MACT,UAAA,EAAY,QAAA;AAAA,MACZ,cAAA,EAAgB,eAAA;AAAA,MAChB,CAAA,EAAG,MAAA;AAAA,MACH,MAAA,EAAQ,SAAA;AAAA,MACR,UAAA,EAAY,MAAA;AAAA,MACZ,QAAA,EAAU,IAAA;AAAA,MACV,UAAA,EAAY,UAAA;AAAA,MACZ,KAAA,EAAO,IAAA;AAAA,MACP,SAAA,EAAW,OAAA;AAAA,MACX,EAAA,EAAI,CAAA;AAAA,MACJ,SAAA,EAAW;AAAA,QACT,OAAA,EAAS,GAAA;AAAA,QACT,MAAA,EAAQ;AAAA,OACV;AAAA,MACA,aAAA,EAAe;AAAA,QACb,YAAA,EAAc,OAAA;AAAA,QACd,YAAA,EAAc,OAAA;AAAA,QACd,YAAA,EAAc,SAAA;AAAA,QACd,aAAA,EAAe,aAAA;AAAA,QACf,YAAA,EAAc;AAAA;AAChB,KACF;AAAA,IACA,OAAA,EAAS;AAAA,MACP,OAAA,EAAS,aAAA;AAAA,MACT,UAAA,EAAY,QAAA;AAAA,MACZ,cAAA,EAAgB,QAAA;AAAA,MAChB,UAAA,EAAY,CAAA;AAAA,MACZ,kBAAA,EAAoB,WAAA;AAAA,MACpB,kBAAA,EAAoB,MAAA;AAAA,MACpB,wBAAA,EAA0B,SAAA;AAAA,MAC1B,KAAA,EAAO;AAAA,KACT;AAAA,IACA,KAAA,EAAO;AAAA,MACL,OAAA,EAAS,MAAA;AAAA,MACT,gBAAA,EAAkB,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAKlB,kBAAA,EAAoB,gCAAA;AAAA,MACpB,kBAAA,EAAoB,QAAA;AAAA,MACpB,wBAAA,EAA0B,SAAA;AAAA,MAC1B,yCAAA,EAA2C;AAAA,QACzC,kBAAA,EAAoB;AAAA;AACtB,KACF;AAAA,IACA,UAAA,EAAY;AAAA,MACV,QAAA,EAAU,QAAA;AAAA,MACV,IAAA,EAAM,CAAA;AAAA,MACN,EAAA,EAAI;AAAA;AACN,GACF;AAAA,EACA,QAAA,EAAU;AAAA,IACR,MAAA,EAAQ;AAAA,MACN,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,EAAC,SAAA,EAAW,gBAAA;AAAgB,OACvC;AAAA,MACA,KAAA,EAAO;AAAA,QACL,KAAA,EAAO,EAAC,gBAAA,EAAkB,KAAA;AAAK;AACjC;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,MAAA,EAAQ;AAAA;AAEZ,CAAC,CAAA;ACxDM,SAAS,eACd,OAAA,EACsB;AACtB,EAAA,MAAM,EAAC,MAAA,EAAQ,KAAA,EAAK,GAAI,OAAA;AAExB,EAAA,MAAM,KAAA,GAAQ,IAAI,gBAAgB,CAAA;AAClC,EAAA,MAAM,mBAAA,GAAsB,KAAA,IAAS,IAAA,IAAQ,KAAA,IAAS,IAAA;AACtD,EAAA,MAAM,mBAAA,GAAsB,KAAA,IAAS,IAAA,IAAQ,KAAA,IAAS,IAAA;AAEtD,EAAA,IAAI,OAAA,CAAQ,GAAA,CAAI,QAAA,KAAa,YAAA,EAAc;AACzC,IAAA,IAAI,mBAAA,EAAqB;AACvB,MAAA,MAAM,IAAI,KAAA;AAAA,QACR;AAAA,OACF;AAAA,IACF;AAAA,EACF;AAEA,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAIA,SAAS,MAAM;AACzD,IAAA,IAAI,mBAAA,EAAqB;AACvB,MAAA,OAAO,IAAA;AAAA,IACT;AACA,IAAA,IAAI,MAAA,EAAQ,WAAW,MAAA,EAAW;AAChC,MAAA,OAAO,MAAA,CAAO,MAAA;AAAA,IAChB;AACA,IAAA,OAAO,QAAQ,aAAA,IAAiB,IAAA;AAAA,EAClC,CAAC,CAAA;AAED,EAAA,IAAI,MAAA;AACJ,EAAA,IAAI,mBAAA,EAAqB;AACvB,IAAA,MAAA,GAAS,KAAA,CAAM,UAAU,KAAK,CAAA;AAAA,EAChC,WAAW,mBAAA,EAAqB;AAC9B,IAAA,MAAA,GAAS,KAAA;AAAA,EACX,CAAA,MAAA,IAAW,MAAA,EAAQ,MAAA,KAAW,MAAA,EAAW;AACvC,IAAA,MAAA,GAAS,MAAA,CAAO,MAAA;AAAA,EAClB,CAAA,MAAO;AACL,IAAA,MAAA,GAAS,cAAA;AAAA,EACX;AAEA,EAAA,MAAM,eAAe,MAAA,EAAQ,MAAA;AAC7B,EAAA,MAAM,eAAe,MAAA,EAAQ,YAAA;AAM7B,EAAA,MAAM,MAAA,GAASC,YAAY,MAAM;AAC/B,IAAA,IAAI,KAAA,IAAS,IAAA,IAAQ,KAAA,IAAS,IAAA,EAAM;AAClC,MAAA,KAAA,CAAM,OAAO,KAAK,CAAA;AAAA,IACpB,CAAA,MAAA,IAAW,SAAS,IAAA,EAAM;AAExB,MAAA;AAAA,IACF,CAAA,MAAA,IAAW,iBAAiB,MAAA,EAAW;AACrC,MAAA,YAAA,GAAe,CAAC,YAAY,CAAA;AAAA,IAC9B,CAAA,MAAO;AACL,MAAA,iBAAA,CAAkB,CAAA,IAAA,KAAQ,CAAC,IAAI,CAAA;AAC/B,MAAA,YAAA,GAAe,CAAC,MAAM,CAAA;AAAA,IACxB;AAAA,EACF,GAAG,CAAC,KAAA,EAAO,OAAO,YAAA,EAAc,YAAA,EAAc,MAAM,CAAC,CAAA;AAErD,EAAA,OAAO,EAAC,QAAQ,MAAA,EAAM;AACxB;ACbO,SAAS,aAAA,CAAc;AAAA,EAC5B,OAAA;AAAA,EACA,QAAA;AAAA,EACA,aAAA;AAAA,EACA,UAAA,GAAa,KAAA;AAAA,EACb,MAAA,EAAQ,gBAAA;AAAA,EACR,YAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAA;AAAA,EACA,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf;AACF,CAAA,EAA0C;AACxC,EAAA,MAAM,iBAAA,GACJ,gBAAA,KAAqB,MAAA,GACjB,EAAC,MAAA,EAAQ,gBAAA,EAAkB,YAAA,EAAY,GACvC,EAAC,aAAA,EAAe,aAAA,IAAiB,IAAA,EAAM,YAAA,EAAY;AAEzD,EAAA,MAAM,EAAC,MAAA,EAAQ,MAAA,EAAM,GAAI,cAAA,CAAe;AAAA,IACtC,MAAA,EAAQ,iBAAA;AAAA,IACR;AAAA,GACD,CAAA;AAED,EAAA,MAAM,KAAK,KAAA,EAAM;AACjB,EAAA,MAAM,SAAA,GAAY,GAAG,EAAE,CAAA,QAAA,CAAA;AACvB,EAAA,MAAM,OAAA,GAAU,GAAG,EAAE,CAAA,MAAA,CAAA;AAErB,EAAA,MAAM,OAAA,GAAU,mBAAA,CAAoB,EAAC,MAAA,EAAO,CAAA;AAE5C,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,OAAA,CAAQ,IAAA,EAAM,SAAS,CAAA;AAAA,MACrC,aAAA,EAAa,UAAA;AAAA,MACb,GAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA,EAAA;AAAA,wBAAA,IAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,eAAA,EAAe,OAAA;AAAA,YACf,eAAA,EAAe,MAAA;AAAA,YACf,WAAW,OAAA,CAAQ,OAAA;AAAA,YACnB,QAAA,EAAU,UAAA;AAAA,YACV,EAAA,EAAI,SAAA;AAAA,YACJ,OAAA,EAAS,MAAA;AAAA,YACT,IAAA,EAAK,QAAA;AAAA,YACJ,QAAA,EAAA;AAAA,cAAA,OAAA;AAAA,8BACDC,GAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,OAAA,CAAQ,OAAA,EACvB,QAAA,kBAAAA,GAAAA,CAAC,IAAA,EAAA,EAAK,IAAA,EAAM,WAAA,EAAa,IAAA,EAAK,MAAK,CAAA,EACrC;AAAA;AAAA;AAAA,SACF;AAAA,wBACAA,GAAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,iBAAA,EAAiB,SAAA;AAAA,YACjB,WAAW,OAAA,CAAQ,KAAA;AAAA,YACnB,EAAA,EAAI,OAAA;AAAA,YACJ,IAAA,EAAK,QAAA;AAAA,YACL,KAAA,EAAO,EAAC,UAAA,EAAY,MAAA,GAAS,SAAY,QAAA,EAAQ;AAAA,YACjD,0BAAAA,GAAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,OAAA,CAAQ,YAAa,QAAA,EAAS;AAAA;AAAA;AAChD;AAAA;AAAA,GACF;AAEJ;AAEA,aAAA,CAAc,WAAA,GAAc,eAAA;ACpErB,SAAS,WAAA,CAAY;AAAA,EAC1B,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,GAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAwC;AACtC,EAAA,uBACEA,GAAAA;AAAA,IAAC,aAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,SAAA;AAAA,MACA,aAAA,EAAa,UAAA;AAAA,MACb,GAAA;AAAA,MACA;AAAA;AAAA,GACF;AAEJ;AAEA,WAAA,CAAY,WAAA,GAAc,aAAA","file":"chunk-6NTDPZWP.js","sourcesContent":["import {createContext} from 'react';\n\nexport interface AccordionContextValue {\n getIsOpen: (value: string) => boolean;\n toggle: (value: string) => void;\n}\n\nexport const AccordionContext = createContext<AccordionContextValue | null>(\n null,\n);\nAccordionContext.displayName = 'AccordionContext';\n","import {\n useCallback,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {AccordionContext, type AccordionContextValue} from './AccordionContext';\n\n/**\n * A container that coordinates multiple `AccordionItem` children so that\n * one (`type=\"single\"`) or several (`type=\"multiple\"`) can be open at a\n * time. For a standalone disclosure widget, use `Collapsible` instead.\n */\ninterface AccordionBaseProps {\n /**\n * Accessible label for the accordion group. Provide either `aria-label`\n * or `aria-labelledby`, not both.\n */\n 'aria-label'?: string;\n /**\n * ID of an element that labels the accordion group. Provide either\n * `aria-label` or `aria-labelledby`, not both.\n */\n 'aria-labelledby'?: string;\n /**\n * One or more `AccordionItem` elements.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n}\n\nexport type AccordionProps =\n | (AccordionBaseProps & {\n /**\n * Item value that is open on initial render, or `null` for all\n * closed. Ignored when `value` is provided.\n */\n defaultValue?: string | null;\n /**\n * Called when the open item changes. Receives the item value string,\n * or `null` when all items are closed.\n */\n onChange?: (value: string | null) => void;\n /**\n * Only one item can be open at a time. This is the default.\n */\n type?: 'single';\n /**\n * Controls which item is open externally. Pass `null` to close all\n * items. When set, the component becomes controlled and `onChange`\n * should be provided.\n */\n value?: string | null;\n })\n | (AccordionBaseProps & {\n /**\n * Item values that are open on initial render. Ignored when `value` is\n * provided.\n */\n defaultValue?: string[];\n /**\n * Called when the set of open items changes. Receives an array of\n * open item values.\n */\n onChange?: (value: string[]) => void;\n /**\n * Multiple items can be open simultaneously.\n */\n type: 'multiple';\n /**\n * Controls which items are open externally. When set, the component\n * becomes controlled and `onChange` should be provided. Memoize array\n * values to avoid unnecessary re-renders.\n */\n value?: string[];\n });\n\nfunction normalizeToSet(\n value: string | string[] | null | undefined,\n): ReadonlySet<string> {\n if (value == null) {\n return new Set();\n }\n return new Set(Array.isArray(value) ? value : [value]);\n}\n\nconst styles = {\n root: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '3',\n }),\n};\n\nexport function Accordion({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n type = 'single',\n defaultValue,\n value: controlledValue,\n onChange,\n children,\n className,\n 'data-testid': dataTestId,\n ref,\n style,\n}: AccordionProps): React.JSX.Element {\n const isControlled = controlledValue !== undefined;\n const [internalValue, setInternalValue] = useState<ReadonlySet<string>>(() =>\n normalizeToSet(defaultValue),\n );\n\n // Dev-only: warn when a controlled `value` array is recreated each render\n // with the same contents, which defeats the `openValues` memo and forces\n // unnecessary re-renders. These refs are read/written during render purely\n // for the diagnostic — they never affect render output — and the whole\n // block is inert in production.\n /* eslint-disable @eslint-react/refs -- diagnostic-only ref use, does not affect render output */\n const prevControlledArrayRef = useRef<ReadonlyArray<string> | undefined>(\n undefined,\n );\n const hasWarnedUnstableValueRef = useRef(false);\n if (process.env.NODE_ENV !== 'production') {\n if (Array.isArray(controlledValue)) {\n const prev = prevControlledArrayRef.current;\n if (\n !hasWarnedUnstableValueRef.current &&\n prev !== undefined &&\n prev !== controlledValue &&\n prev.length === controlledValue.length &&\n prev.every((item, i) => item === controlledValue[i])\n ) {\n hasWarnedUnstableValueRef.current = true;\n console.warn(\n 'Accordion: the `value` array changed identity between renders but ' +\n 'contains the same items. Memoize it (e.g. with `useMemo`) to ' +\n 'avoid unnecessary re-renders of the accordion items.',\n );\n }\n prevControlledArrayRef.current = controlledValue;\n }\n }\n /* eslint-enable @eslint-react/refs */\n\n const openValues = useMemo(\n () => (isControlled ? normalizeToSet(controlledValue) : internalValue),\n [isControlled, controlledValue, internalValue],\n );\n\n const getIsOpen = useCallback(\n (itemValue: string) => openValues.has(itemValue),\n [openValues],\n );\n\n const toggle = useCallback(\n (itemValue: string) => {\n let nextValues: ReadonlySet<string>;\n\n if (type === 'single') {\n nextValues = openValues.has(itemValue)\n ? new Set()\n : new Set([itemValue]);\n } else {\n const next = new Set(openValues);\n if (next.has(itemValue)) {\n next.delete(itemValue);\n } else {\n next.add(itemValue);\n }\n nextValues = next;\n }\n\n if (!isControlled) {\n setInternalValue(nextValues);\n }\n\n if (onChange) {\n const arr = [...nextValues];\n if (type === 'single') {\n (onChange as (value: string | null) => void)(arr[0] ?? null);\n } else {\n (onChange as (value: string[]) => void)(arr);\n }\n }\n },\n [type, openValues, isControlled, onChange],\n );\n\n const contextValue = useMemo<AccordionContextValue>(\n () => ({getIsOpen, toggle}),\n [getIsOpen, toggle],\n );\n\n return (\n <AccordionContext value={contextValue}>\n <div\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n className={cx(styles.root, className)}\n data-testid={dataTestId}\n ref={ref}\n role=\"group\"\n style={style}>\n {children}\n </div>\n </AccordionContext>\n );\n}\n\nAccordion.displayName = 'Accordion';\n","import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const accordionItemRecipe = sva({\n slots: ['root', 'trigger', 'chevron', 'panel', 'panelInner'],\n base: {\n root: {\n w: '100%',\n },\n trigger: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n w: '100%',\n cursor: 'pointer',\n fontFamily: 'body',\n fontSize: 'lg',\n fontWeight: 'semibold',\n color: 'fg',\n textAlign: 'start',\n py: 0,\n _disabled: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n borderRadius: 'sm',\n },\n },\n chevron: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n transitionProperty: 'transform',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n color: 'fg.muted',\n },\n panel: {\n display: 'grid',\n gridTemplateRows: '1fr',\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 panelInner: {\n overflow: 'hidden',\n minH: 0,\n pt: '1',\n },\n },\n variants: {\n isOpen: {\n true: {\n chevron: {transform: 'rotate(180deg)'},\n },\n false: {\n panel: {gridTemplateRows: '0fr'},\n },\n },\n },\n defaultVariants: {\n isOpen: false,\n },\n});\n\nexport type AccordionItemVariants = RecipeVariantProps<\n typeof accordionItemRecipe\n>;\n","import {use, useCallback, useState} from 'react';\nimport {AccordionContext} from './AccordionContext';\n\nexport interface CollapsibleConfig {\n isDefaultOpen?: boolean;\n isOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n}\n\nexport interface UseCollapsibleOptions {\n config?: CollapsibleConfig;\n value?: string;\n}\n\nexport interface UseCollapsibleReturn {\n isOpen: boolean;\n toggle: () => void;\n}\n\nexport function useCollapsible(\n options: UseCollapsibleOptions,\n): UseCollapsibleReturn {\n const {config, value} = options;\n\n const group = use(AccordionContext);\n const isMissingGroupValue = group != null && value == null;\n const isControlledByGroup = group != null && value != null;\n\n if (process.env.NODE_ENV !== 'production') {\n if (isMissingGroupValue) {\n throw new Error(\n 'AccordionItem: `value` prop is required when used inside an Accordion.',\n );\n }\n }\n\n const [internalIsOpen, setInternalIsOpen] = useState(() => {\n if (isControlledByGroup) {\n return true;\n }\n if (config?.isOpen !== undefined) {\n return config.isOpen;\n }\n return config?.isDefaultOpen ?? true;\n });\n\n let isOpen: boolean;\n if (isControlledByGroup) {\n isOpen = group.getIsOpen(value);\n } else if (isMissingGroupValue) {\n isOpen = false;\n } else if (config?.isOpen !== undefined) {\n isOpen = config.isOpen;\n } else {\n isOpen = internalIsOpen;\n }\n\n const configIsOpen = config?.isOpen;\n const onOpenChange = config?.onOpenChange;\n\n // Depend on the primitive config fields rather than the `config` object so\n // the toggle keeps a stable identity across renders (callers commonly build\n // a fresh `config` object each render). Re-checking `group`/`value` inside\n // the callback also gives TypeScript the non-null narrowing it needs.\n const toggle = useCallback(() => {\n if (group != null && value != null) {\n group.toggle(value);\n } else if (group != null) {\n // Inside a group but missing a `value` prop: nothing to toggle.\n return;\n } else if (configIsOpen !== undefined) {\n onOpenChange?.(!configIsOpen);\n } else {\n setInternalIsOpen(prev => !prev);\n onOpenChange?.(!isOpen);\n }\n }, [group, value, configIsOpen, onOpenChange, isOpen]);\n\n return {isOpen, toggle};\n}\n","import {ChevronDown} from 'lucide-react';\nimport {useId, type CSSProperties, type ReactNode, type Ref} from 'react';\nimport {cx} from '../../internal/cx';\nimport {Icon} from '../Icon';\nimport {accordionItemRecipe} from './AccordionItem.recipe';\nimport {useCollapsible} from './useCollapsible';\n\n/**\n * A single expandable section within an `Accordion`, or a standalone\n * collapsible panel when used outside of an `Accordion` context. Prefer\n * the `Collapsible` wrapper for standalone usage.\n */\nexport interface AccordionItemProps {\n /**\n * Content revealed when the item is open.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Whether the item is open on initial render. Ignored when `isOpen` is\n * provided or the item is inside an `Accordion`. Defaults to `true`.\n */\n isDefaultOpen?: boolean;\n /**\n * Whether the trigger is disabled. Prevents toggling and applies disabled\n * styling.\n */\n isDisabled?: boolean;\n /**\n * Controls the open state externally. When set, the component becomes\n * controlled and `onOpenChange` should be provided. Ignored when the\n * item is inside an `Accordion`.\n */\n isOpen?: boolean;\n /**\n * Called when the open state changes from user interaction.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * Content rendered as the clickable trigger. Must be phrasing content\n * (text, `<span>`, `<strong>`, icons, etc.) since it is placed inside a\n * `<button>` element.\n */\n trigger: ReactNode;\n /**\n * Unique identifier used by a parent `Accordion` to track which items\n * are open. Required when used inside an `Accordion`, ignored otherwise.\n */\n value?: string;\n}\n\nexport function AccordionItem({\n trigger,\n children,\n isDefaultOpen,\n isDisabled = false,\n isOpen: controlledIsOpen,\n onOpenChange,\n value,\n ref,\n className,\n 'data-testid': dataTestId,\n style,\n}: AccordionItemProps): React.JSX.Element {\n const collapsibleConfig =\n controlledIsOpen !== undefined\n ? {isOpen: controlledIsOpen, onOpenChange}\n : {isDefaultOpen: isDefaultOpen ?? true, onOpenChange};\n\n const {isOpen, toggle} = useCollapsible({\n config: collapsibleConfig,\n value,\n });\n\n const id = useId();\n const triggerId = `${id}-trigger`;\n const panelId = `${id}-panel`;\n\n const classes = accordionItemRecipe({isOpen});\n\n return (\n <div\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <button\n aria-controls={panelId}\n aria-expanded={isOpen}\n className={classes.trigger}\n disabled={isDisabled}\n id={triggerId}\n onClick={toggle}\n type=\"button\">\n {trigger}\n <span className={classes.chevron}>\n <Icon icon={ChevronDown} size=\"md\" />\n </span>\n </button>\n <div\n aria-labelledby={triggerId}\n className={classes.panel}\n id={panelId}\n role=\"region\"\n style={{visibility: isOpen ? undefined : 'hidden'}}>\n <div className={classes.panelInner}>{children}</div>\n </div>\n </div>\n );\n}\n\nAccordionItem.displayName = 'AccordionItem';\n","import type {CSSProperties, ReactNode, Ref} from 'react';\nimport {AccordionItem} from './AccordionItem';\n\n/**\n * A standalone disclosure widget that toggles the visibility of a content\n * panel. Use `Collapsible` for individual expand/collapse sections. For\n * coordinated groups where only one (or a subset) can be open at a time,\n * use `Accordion` with `AccordionItem` instead.\n */\nexport interface CollapsibleProps {\n /**\n * Content revealed when the collapsible is open.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Whether the collapsible is open on initial render. Ignored when `isOpen`\n * is provided. Defaults to `true`.\n */\n isDefaultOpen?: boolean;\n /**\n * Whether the trigger is disabled. Prevents toggling and applies disabled\n * styling.\n */\n isDisabled?: boolean;\n /**\n * Controls the open state externally. When set, the component becomes\n * controlled and `onOpenChange` should be provided to handle toggling.\n */\n isOpen?: boolean;\n /**\n * Called when the open state changes, either from a user click on the\n * trigger or from a keyboard interaction.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * Content rendered as the clickable trigger that toggles the panel. Must be\n * phrasing content (text, `<span>`, `<strong>`, icons, etc.) since it is\n * placed inside a `<button>` element.\n */\n trigger: ReactNode;\n}\n\nexport function Collapsible({\n className,\n 'data-testid': dataTestId,\n ref,\n style,\n ...props\n}: CollapsibleProps): React.JSX.Element {\n return (\n <AccordionItem\n {...props}\n className={className}\n data-testid={dataTestId}\n ref={ref}\n style={style}\n />\n );\n}\n\nCollapsible.displayName = 'Collapsible';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/Accordion/AccordionContext.tsx","../src/components/Accordion/Accordion.tsx","../src/components/Accordion/AccordionItem.recipe.ts","../src/components/Accordion/useCollapsible.ts","../src/components/Accordion/AccordionItem.tsx","../src/components/Accordion/Collapsible.tsx"],"names":["useState","useCallback","jsx"],"mappings":"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","file":"chunk-VFGSNR35.js","sourcesContent":["import {createContext} from 'react';\n\nexport interface AccordionContextValue {\n getIsOpen: (value: string) => boolean;\n toggle: (value: string) => void;\n}\n\nexport const AccordionContext = createContext<AccordionContextValue | null>(\n null,\n);\nAccordionContext.displayName = 'AccordionContext';\n","import {\n useCallback,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {AccordionContext, type AccordionContextValue} from './AccordionContext';\n\n/**\n * A container that coordinates multiple `AccordionItem` children so that\n * one (`type=\"single\"`) or several (`type=\"multiple\"`) can be open at a\n * time. For a standalone disclosure widget, use `Collapsible` instead.\n */\ninterface AccordionBaseProps {\n /**\n * Accessible label for the accordion group. Provide either `aria-label`\n * or `aria-labelledby`, not both.\n */\n 'aria-label'?: string;\n /**\n * ID of an element that labels the accordion group. Provide either\n * `aria-label` or `aria-labelledby`, not both.\n */\n 'aria-labelledby'?: string;\n /**\n * One or more `AccordionItem` elements.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n}\n\nexport type AccordionProps =\n | (AccordionBaseProps & {\n /**\n * Item value that is open on initial render, or `null` for all\n * closed. Ignored when `value` is provided.\n */\n defaultValue?: string | null;\n /**\n * Called when the open item changes. Receives the item value string,\n * or `null` when all items are closed.\n */\n onChange?: (value: string | null) => void;\n /**\n * Only one item can be open at a time. This is the default.\n */\n type?: 'single';\n /**\n * Controls which item is open externally. Pass `null` to close all\n * items. When set, the component becomes controlled and `onChange`\n * should be provided.\n */\n value?: string | null;\n })\n | (AccordionBaseProps & {\n /**\n * Item values that are open on initial render. Ignored when `value` is\n * provided.\n */\n defaultValue?: string[];\n /**\n * Called when the set of open items changes. Receives an array of\n * open item values.\n */\n onChange?: (value: string[]) => void;\n /**\n * Multiple items can be open simultaneously.\n */\n type: 'multiple';\n /**\n * Controls which items are open externally. When set, the component\n * becomes controlled and `onChange` should be provided. Memoize array\n * values to avoid unnecessary re-renders.\n */\n value?: string[];\n });\n\nfunction normalizeToSet(\n value: string | string[] | null | undefined,\n): ReadonlySet<string> {\n if (value == null) {\n return new Set();\n }\n return new Set(Array.isArray(value) ? value : [value]);\n}\n\nconst styles = {\n root: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '3',\n }),\n};\n\nexport function Accordion({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n type = 'single',\n defaultValue,\n value: controlledValue,\n onChange,\n children,\n className,\n 'data-testid': dataTestId,\n ref,\n style,\n}: AccordionProps): React.JSX.Element {\n const isControlled = controlledValue !== undefined;\n const [internalValue, setInternalValue] = useState<ReadonlySet<string>>(() =>\n normalizeToSet(defaultValue),\n );\n\n // Dev-only: warn when a controlled `value` array is recreated each render\n // with the same contents, which defeats the `openValues` memo and forces\n // unnecessary re-renders. These refs are read/written during render purely\n // for the diagnostic — they never affect render output — and the whole\n // block is inert in production.\n /* eslint-disable @eslint-react/refs -- diagnostic-only ref use, does not affect render output */\n const prevControlledArrayRef = useRef<ReadonlyArray<string> | undefined>(\n undefined,\n );\n const hasWarnedUnstableValueRef = useRef(false);\n if (process.env.NODE_ENV !== 'production') {\n if (Array.isArray(controlledValue)) {\n const prev = prevControlledArrayRef.current;\n if (\n !hasWarnedUnstableValueRef.current &&\n prev !== undefined &&\n prev !== controlledValue &&\n prev.length === controlledValue.length &&\n prev.every((item, i) => item === controlledValue[i])\n ) {\n hasWarnedUnstableValueRef.current = true;\n console.warn(\n 'Accordion: the `value` array changed identity between renders but ' +\n 'contains the same items. Memoize it (e.g. with `useMemo`) to ' +\n 'avoid unnecessary re-renders of the accordion items.',\n );\n }\n prevControlledArrayRef.current = controlledValue;\n }\n }\n /* eslint-enable @eslint-react/refs */\n\n const openValues = useMemo(\n () => (isControlled ? normalizeToSet(controlledValue) : internalValue),\n [isControlled, controlledValue, internalValue],\n );\n\n const getIsOpen = useCallback(\n (itemValue: string) => openValues.has(itemValue),\n [openValues],\n );\n\n const toggle = useCallback(\n (itemValue: string) => {\n let nextValues: ReadonlySet<string>;\n\n if (type === 'single') {\n nextValues = openValues.has(itemValue)\n ? new Set()\n : new Set([itemValue]);\n } else {\n const next = new Set(openValues);\n if (next.has(itemValue)) {\n next.delete(itemValue);\n } else {\n next.add(itemValue);\n }\n nextValues = next;\n }\n\n if (!isControlled) {\n setInternalValue(nextValues);\n }\n\n if (onChange) {\n const arr = [...nextValues];\n if (type === 'single') {\n (onChange as (value: string | null) => void)(arr[0] ?? null);\n } else {\n (onChange as (value: string[]) => void)(arr);\n }\n }\n },\n [type, openValues, isControlled, onChange],\n );\n\n const contextValue = useMemo<AccordionContextValue>(\n () => ({getIsOpen, toggle}),\n [getIsOpen, toggle],\n );\n\n return (\n <AccordionContext value={contextValue}>\n <div\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n className={cx(styles.root, className)}\n data-testid={dataTestId}\n ref={ref}\n role=\"group\"\n style={style}>\n {children}\n </div>\n </AccordionContext>\n );\n}\n\nAccordion.displayName = 'Accordion';\n","import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const accordionItemRecipe = sva({\n slots: ['root', 'trigger', 'chevron', 'panel', 'panelInner'],\n base: {\n root: {\n w: '100%',\n },\n trigger: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n w: '100%',\n cursor: 'pointer',\n fontFamily: 'body',\n fontSize: 'lg',\n fontWeight: 'semibold',\n color: 'fg',\n textAlign: 'start',\n py: 0,\n _disabled: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n borderRadius: 'sm',\n },\n },\n chevron: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n transitionProperty: 'transform',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n color: 'fg.muted',\n },\n panel: {\n display: 'grid',\n gridTemplateRows: '1fr',\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 panelInner: {\n overflow: 'hidden',\n minH: 0,\n pt: '1',\n },\n },\n variants: {\n isOpen: {\n true: {\n chevron: {transform: 'rotate(180deg)'},\n },\n false: {\n panel: {gridTemplateRows: '0fr'},\n },\n },\n },\n defaultVariants: {\n isOpen: false,\n },\n});\n\nexport type AccordionItemVariants = RecipeVariantProps<\n typeof accordionItemRecipe\n>;\n","import {use, useCallback, useState} from 'react';\nimport {AccordionContext} from './AccordionContext';\n\nexport interface CollapsibleConfig {\n isDefaultOpen?: boolean;\n isOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n}\n\nexport interface UseCollapsibleOptions {\n config?: CollapsibleConfig;\n value?: string;\n}\n\nexport interface UseCollapsibleReturn {\n isOpen: boolean;\n toggle: () => void;\n}\n\nexport function useCollapsible(\n options: UseCollapsibleOptions,\n): UseCollapsibleReturn {\n const {config, value} = options;\n\n const group = use(AccordionContext);\n const isMissingGroupValue = group != null && value == null;\n const isControlledByGroup = group != null && value != null;\n\n if (process.env.NODE_ENV !== 'production') {\n if (isMissingGroupValue) {\n throw new Error(\n 'AccordionItem: `value` prop is required when used inside an Accordion.',\n );\n }\n }\n\n const [internalIsOpen, setInternalIsOpen] = useState(() => {\n if (isControlledByGroup) {\n return true;\n }\n if (config?.isOpen !== undefined) {\n return config.isOpen;\n }\n return config?.isDefaultOpen ?? true;\n });\n\n let isOpen: boolean;\n if (isControlledByGroup) {\n isOpen = group.getIsOpen(value);\n } else if (isMissingGroupValue) {\n isOpen = false;\n } else if (config?.isOpen !== undefined) {\n isOpen = config.isOpen;\n } else {\n isOpen = internalIsOpen;\n }\n\n const configIsOpen = config?.isOpen;\n const onOpenChange = config?.onOpenChange;\n\n // Depend on the primitive config fields rather than the `config` object so\n // the toggle keeps a stable identity across renders (callers commonly build\n // a fresh `config` object each render). Re-checking `group`/`value` inside\n // the callback also gives TypeScript the non-null narrowing it needs.\n const toggle = useCallback(() => {\n if (group != null && value != null) {\n group.toggle(value);\n } else if (group != null) {\n // Inside a group but missing a `value` prop: nothing to toggle.\n return;\n } else if (configIsOpen !== undefined) {\n onOpenChange?.(!configIsOpen);\n } else {\n setInternalIsOpen(prev => !prev);\n onOpenChange?.(!isOpen);\n }\n }, [group, value, configIsOpen, onOpenChange, isOpen]);\n\n return {isOpen, toggle};\n}\n","import {ChevronDown} from 'lucide-react';\nimport {useId, type CSSProperties, type ReactNode, type Ref} from 'react';\nimport {cx} from '../../internal/cx';\nimport {Icon} from '../Icon';\nimport {accordionItemRecipe} from './AccordionItem.recipe';\nimport {useCollapsible} from './useCollapsible';\n\n/**\n * A single expandable section within an `Accordion`, or a standalone\n * collapsible panel when used outside of an `Accordion` context. Prefer\n * the `Collapsible` wrapper for standalone usage.\n */\nexport interface AccordionItemProps {\n /**\n * Content revealed when the item is open.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Whether the item is open on initial render. Ignored when `isOpen` is\n * provided or the item is inside an `Accordion`. Defaults to `true`.\n */\n isDefaultOpen?: boolean;\n /**\n * Whether the trigger is disabled. Prevents toggling and applies disabled\n * styling.\n */\n isDisabled?: boolean;\n /**\n * Controls the open state externally. When set, the component becomes\n * controlled and `onOpenChange` should be provided. Ignored when the\n * item is inside an `Accordion`.\n */\n isOpen?: boolean;\n /**\n * Called when the open state changes from user interaction.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * Content rendered as the clickable trigger. Must be phrasing content\n * (text, `<span>`, `<strong>`, icons, etc.) since it is placed inside a\n * `<button>` element.\n */\n trigger: ReactNode;\n /**\n * Unique identifier used by a parent `Accordion` to track which items\n * are open. Required when used inside an `Accordion`, ignored otherwise.\n */\n value?: string;\n}\n\nexport function AccordionItem({\n trigger,\n children,\n isDefaultOpen,\n isDisabled = false,\n isOpen: controlledIsOpen,\n onOpenChange,\n value,\n ref,\n className,\n 'data-testid': dataTestId,\n style,\n}: AccordionItemProps): React.JSX.Element {\n const collapsibleConfig =\n controlledIsOpen !== undefined\n ? {isOpen: controlledIsOpen, onOpenChange}\n : {isDefaultOpen: isDefaultOpen ?? true, onOpenChange};\n\n const {isOpen, toggle} = useCollapsible({\n config: collapsibleConfig,\n value,\n });\n\n const id = useId();\n const triggerId = `${id}-trigger`;\n const panelId = `${id}-panel`;\n\n const classes = accordionItemRecipe({isOpen});\n\n return (\n <div\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <button\n aria-controls={panelId}\n aria-expanded={isOpen}\n className={classes.trigger}\n disabled={isDisabled}\n id={triggerId}\n onClick={toggle}\n type=\"button\">\n {trigger}\n <span className={classes.chevron}>\n <Icon icon={ChevronDown} size=\"md\" />\n </span>\n </button>\n <div\n aria-labelledby={triggerId}\n className={classes.panel}\n id={panelId}\n role=\"region\"\n style={{visibility: isOpen ? undefined : 'hidden'}}>\n <div className={classes.panelInner}>{children}</div>\n </div>\n </div>\n );\n}\n\nAccordionItem.displayName = 'AccordionItem';\n","import type {CSSProperties, ReactNode, Ref} from 'react';\nimport {AccordionItem} from './AccordionItem';\n\n/**\n * A standalone disclosure widget that toggles the visibility of a content\n * panel. Use `Collapsible` for individual expand/collapse sections. For\n * coordinated groups where only one (or a subset) can be open at a time,\n * use `Accordion` with `AccordionItem` instead.\n */\nexport interface CollapsibleProps {\n /**\n * Content revealed when the collapsible is open.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Whether the collapsible is open on initial render. Ignored when `isOpen`\n * is provided. Defaults to `true`.\n */\n isDefaultOpen?: boolean;\n /**\n * Whether the trigger is disabled. Prevents toggling and applies disabled\n * styling.\n */\n isDisabled?: boolean;\n /**\n * Controls the open state externally. When set, the component becomes\n * controlled and `onOpenChange` should be provided to handle toggling.\n */\n isOpen?: boolean;\n /**\n * Called when the open state changes, either from a user click on the\n * trigger or from a keyboard interaction.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * Content rendered as the clickable trigger that toggles the panel. Must be\n * phrasing content (text, `<span>`, `<strong>`, icons, etc.) since it is\n * placed inside a `<button>` element.\n */\n trigger: ReactNode;\n}\n\nexport function Collapsible({\n className,\n 'data-testid': dataTestId,\n ref,\n style,\n ...props\n}: CollapsibleProps): React.JSX.Element {\n return (\n <AccordionItem\n {...props}\n className={className}\n data-testid={dataTestId}\n ref={ref}\n style={style}\n />\n );\n}\n\nCollapsible.displayName = 'Collapsible';\n"]}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkGYVWTH3U_cjs = require('./chunk-GYVWTH3U.cjs');
|
|
4
4
|
var chunk4TIAKZ4Q_cjs = require('./chunk-4TIAKZ4Q.cjs');
|
|
5
|
-
var
|
|
5
|
+
var chunkZ6RT3WPE_cjs = require('./chunk-Z6RT3WPE.cjs');
|
|
6
6
|
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
7
7
|
var lucideReact = require('lucide-react');
|
|
8
8
|
var react = require('react');
|
|
9
9
|
var jsxRuntime = require('react/jsx-runtime');
|
|
10
10
|
|
|
11
11
|
// src/components/Rating/Rating.recipe.ts
|
|
12
|
-
var ratingRecipe =
|
|
12
|
+
var ratingRecipe = chunkZ6RT3WPE_cjs.sva({
|
|
13
13
|
slots: ["root", "star", "input"],
|
|
14
14
|
base: {
|
|
15
15
|
root: {
|
|
@@ -171,7 +171,7 @@ function Rating({
|
|
|
171
171
|
value: starValue
|
|
172
172
|
}
|
|
173
173
|
),
|
|
174
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
174
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkGYVWTH3U_cjs.VisuallyHidden, { children: [
|
|
175
175
|
starValue,
|
|
176
176
|
" ",
|
|
177
177
|
starValue === 1 ? "star" : "stars"
|
|
@@ -197,5 +197,5 @@ function Rating({
|
|
|
197
197
|
Rating.displayName = "Rating";
|
|
198
198
|
|
|
199
199
|
exports.Rating = Rating;
|
|
200
|
-
//# sourceMappingURL=chunk-
|
|
201
|
-
//# sourceMappingURL=chunk-
|
|
200
|
+
//# sourceMappingURL=chunk-VGHNBMEJ.cjs.map
|
|
201
|
+
//# sourceMappingURL=chunk-VGHNBMEJ.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Rating/Rating.recipe.ts","../src/components/Rating/Rating.tsx"],"names":["sva","jsx","Icon","Star","useId","useState","cx","jsxs","VisuallyHidden"],"mappings":"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","file":"chunk-KRZ57O2J.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const ratingRecipe = sva({\n slots: ['root', 'star', 'input'],\n base: {\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '0.5',\n },\n star: {\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n p: 0,\n m: 0,\n borderWidth: 0,\n bg: 'transparent',\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n borderRadius: 'sm',\n },\n },\n input: {\n position: 'absolute',\n w: '1px',\n h: '1px',\n p: 0,\n m: '-1px',\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n borderWidth: 0,\n },\n },\n variants: {\n isDisabled: {\n true: {\n root: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n star: {\n cursor: 'not-allowed',\n },\n },\n },\n isReadOnly: {\n true: {\n star: {\n cursor: 'default',\n },\n },\n },\n },\n});\n\nexport type RatingVariants = RecipeVariantProps<typeof ratingRecipe>;\n","import {Star} from 'lucide-react';\nimport {\n useState,\n useId,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {VisuallyHidden} from '../../internal/VisuallyHidden';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconColor, type IconSize} from '../Icon';\nimport {ratingRecipe} from './Rating.recipe';\n\nexport interface RatingProps {\n /**\n * Additional CSS class names applied to the rating root.\n */\n className?: string;\n /**\n * Number of stars to display.\n * @default 5\n */\n count?: number;\n /**\n * Test ID applied to the rating root.\n */\n 'data-testid'?: string;\n /**\n * Color of unfilled stars.\n * @default 'disabled'\n */\n emptyColor?: IconColor;\n /**\n * Color of filled stars.\n * @default 'yellow'\n */\n filledColor?: IconColor;\n /**\n * Whether the rating is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether the rating is read-only.\n * @default false\n */\n isReadOnly?: boolean;\n /**\n * Accessible label for the rating group.\n * @default 'Rating'\n */\n label?: string;\n /**\n * Called when the selected rating changes.\n */\n onChange?: (value: number) => void;\n /**\n * Ref forwarded to the rating root.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Size of the star icons.\n * @default 'md'\n */\n size?: IconSize;\n /**\n * Inline styles applied to the rating root.\n */\n style?: CSSProperties;\n /**\n * Current rating value.\n */\n value: number;\n}\n\nfunction StarIcon({\n color,\n isFilled,\n size,\n}: {\n color: IconColor;\n isFilled: boolean;\n size: IconSize;\n}): ReactNode {\n return (\n <Icon\n color={color}\n fill={isFilled ? 'currentColor' : 'none'}\n icon={Star}\n size={size}\n />\n );\n}\n\n/**\n * Star-based rating control supporting read-only and interactive modes.\n */\nexport function Rating({\n value: valueFromProps,\n onChange,\n count = 5,\n emptyColor = 'disabled',\n filledColor = 'yellow',\n size = 'md',\n isReadOnly = false,\n isDisabled = false,\n label = 'Rating',\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: RatingProps): React.JSX.Element {\n if (process.env.NODE_ENV !== 'production') {\n if (!Number.isInteger(count) || count < 1) {\n throw new Error(\n `Rating: count must be a positive integer, received ${count}.`,\n );\n }\n\n if (\n valueFromProps < 0 ||\n valueFromProps > count ||\n !Number.isInteger(valueFromProps)\n ) {\n throw new Error(\n `Rating: value must be an integer in [0, ${count}], received ${valueFromProps}.`,\n );\n }\n }\n\n const value = Math.max(0, Math.min(count, Math.round(valueFromProps)));\n const groupId = useId();\n const [hoverValue, setHoverValue] = useState<number | null>(null);\n const isInteractive = !isReadOnly && !isDisabled && onChange != null;\n const displayValue = isInteractive ? (hoverValue ?? value) : value;\n const classes = ratingRecipe({\n isDisabled: isDisabled || undefined,\n isReadOnly: isReadOnly || undefined,\n });\n\n if (!isInteractive) {\n return (\n <div\n aria-label={`${label}: ${value} out of ${count}`}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n role=\"img\"\n style={style}>\n {Array.from({length: count}, (_, i) => (\n <span className={classes.star} key={i}>\n <StarIcon\n color={i < value ? filledColor : emptyColor}\n isFilled={i < value}\n size={size}\n />\n </span>\n ))}\n </div>\n );\n }\n\n return (\n // eslint-disable-next-line jsx-a11y-x/interactive-supports-focus -- focus is managed by the radio inputs inside\n <div\n aria-label={label}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n onMouseLeave={() => setHoverValue(null)}\n ref={ref}\n role=\"radiogroup\"\n style={style}>\n {Array.from({length: count}, (_, i) => {\n const starValue = i + 1;\n return (\n // eslint-disable-next-line jsx-a11y-x/no-noninteractive-element-interactions -- label wraps its radio input\n <label\n className={classes.star}\n key={i}\n onMouseEnter={() => setHoverValue(starValue)}>\n <input\n checked={value === starValue}\n className={classes.input}\n name={groupId}\n onChange={() => onChange(starValue)}\n type=\"radio\"\n value={starValue}\n />\n <VisuallyHidden>\n {starValue} {starValue === 1 ? 'star' : 'stars'}\n </VisuallyHidden>\n <StarIcon\n color={i < displayValue ? filledColor : emptyColor}\n isFilled={i < displayValue}\n size={size}\n />\n </label>\n );\n })}\n </div>\n );\n}\n\nRating.displayName = 'Rating';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/Rating/Rating.recipe.ts","../src/components/Rating/Rating.tsx"],"names":["sva","jsx","Icon","Star","useId","useState","cx","jsxs","VisuallyHidden"],"mappings":"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","file":"chunk-VGHNBMEJ.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const ratingRecipe = sva({\n slots: ['root', 'star', 'input'],\n base: {\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '0.5',\n },\n star: {\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n p: 0,\n m: 0,\n borderWidth: 0,\n bg: 'transparent',\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n borderRadius: 'sm',\n },\n },\n input: {\n position: 'absolute',\n w: '1px',\n h: '1px',\n p: 0,\n m: '-1px',\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n borderWidth: 0,\n },\n },\n variants: {\n isDisabled: {\n true: {\n root: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n star: {\n cursor: 'not-allowed',\n },\n },\n },\n isReadOnly: {\n true: {\n star: {\n cursor: 'default',\n },\n },\n },\n },\n});\n\nexport type RatingVariants = RecipeVariantProps<typeof ratingRecipe>;\n","import {Star} from 'lucide-react';\nimport {\n useState,\n useId,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {VisuallyHidden} from '../../internal/VisuallyHidden';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconColor, type IconSize} from '../Icon';\nimport {ratingRecipe} from './Rating.recipe';\n\nexport interface RatingProps {\n /**\n * Additional CSS class names applied to the rating root.\n */\n className?: string;\n /**\n * Number of stars to display.\n * @default 5\n */\n count?: number;\n /**\n * Test ID applied to the rating root.\n */\n 'data-testid'?: string;\n /**\n * Color of unfilled stars.\n * @default 'disabled'\n */\n emptyColor?: IconColor;\n /**\n * Color of filled stars.\n * @default 'yellow'\n */\n filledColor?: IconColor;\n /**\n * Whether the rating is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether the rating is read-only.\n * @default false\n */\n isReadOnly?: boolean;\n /**\n * Accessible label for the rating group.\n * @default 'Rating'\n */\n label?: string;\n /**\n * Called when the selected rating changes.\n */\n onChange?: (value: number) => void;\n /**\n * Ref forwarded to the rating root.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Size of the star icons.\n * @default 'md'\n */\n size?: IconSize;\n /**\n * Inline styles applied to the rating root.\n */\n style?: CSSProperties;\n /**\n * Current rating value.\n */\n value: number;\n}\n\nfunction StarIcon({\n color,\n isFilled,\n size,\n}: {\n color: IconColor;\n isFilled: boolean;\n size: IconSize;\n}): ReactNode {\n return (\n <Icon\n color={color}\n fill={isFilled ? 'currentColor' : 'none'}\n icon={Star}\n size={size}\n />\n );\n}\n\n/**\n * Star-based rating control supporting read-only and interactive modes.\n */\nexport function Rating({\n value: valueFromProps,\n onChange,\n count = 5,\n emptyColor = 'disabled',\n filledColor = 'yellow',\n size = 'md',\n isReadOnly = false,\n isDisabled = false,\n label = 'Rating',\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: RatingProps): React.JSX.Element {\n if (process.env.NODE_ENV !== 'production') {\n if (!Number.isInteger(count) || count < 1) {\n throw new Error(\n `Rating: count must be a positive integer, received ${count}.`,\n );\n }\n\n if (\n valueFromProps < 0 ||\n valueFromProps > count ||\n !Number.isInteger(valueFromProps)\n ) {\n throw new Error(\n `Rating: value must be an integer in [0, ${count}], received ${valueFromProps}.`,\n );\n }\n }\n\n const value = Math.max(0, Math.min(count, Math.round(valueFromProps)));\n const groupId = useId();\n const [hoverValue, setHoverValue] = useState<number | null>(null);\n const isInteractive = !isReadOnly && !isDisabled && onChange != null;\n const displayValue = isInteractive ? (hoverValue ?? value) : value;\n const classes = ratingRecipe({\n isDisabled: isDisabled || undefined,\n isReadOnly: isReadOnly || undefined,\n });\n\n if (!isInteractive) {\n return (\n <div\n aria-label={`${label}: ${value} out of ${count}`}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n role=\"img\"\n style={style}>\n {Array.from({length: count}, (_, i) => (\n <span className={classes.star} key={i}>\n <StarIcon\n color={i < value ? filledColor : emptyColor}\n isFilled={i < value}\n size={size}\n />\n </span>\n ))}\n </div>\n );\n }\n\n return (\n // eslint-disable-next-line jsx-a11y-x/interactive-supports-focus -- focus is managed by the radio inputs inside\n <div\n aria-label={label}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n onMouseLeave={() => setHoverValue(null)}\n ref={ref}\n role=\"radiogroup\"\n style={style}>\n {Array.from({length: count}, (_, i) => {\n const starValue = i + 1;\n return (\n // eslint-disable-next-line jsx-a11y-x/no-noninteractive-element-interactions -- label wraps its radio input\n <label\n className={classes.star}\n key={i}\n onMouseEnter={() => setHoverValue(starValue)}>\n <input\n checked={value === starValue}\n className={classes.input}\n name={groupId}\n onChange={() => onChange(starValue)}\n type=\"radio\"\n value={starValue}\n />\n <VisuallyHidden>\n {starValue} {starValue === 1 ? 'star' : 'stars'}\n </VisuallyHidden>\n <StarIcon\n color={i < displayValue ? filledColor : emptyColor}\n isFilled={i < displayValue}\n size={size}\n />\n </label>\n );\n })}\n </div>\n );\n}\n\nRating.displayName = 'Rating';\n"]}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkLUQVSNQL_cjs = require('./chunk-LUQVSNQL.cjs');
|
|
4
4
|
var chunkCK3UJQRI_cjs = require('./chunk-CK3UJQRI.cjs');
|
|
5
5
|
var chunkVXBVSYPA_cjs = require('./chunk-VXBVSYPA.cjs');
|
|
6
|
-
var
|
|
6
|
+
var chunkYY6KJO5Z_cjs = require('./chunk-YY6KJO5Z.cjs');
|
|
7
7
|
var chunk2P6D43V2_cjs = require('./chunk-2P6D43V2.cjs');
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
8
|
+
var chunkG2WW52GO_cjs = require('./chunk-G2WW52GO.cjs');
|
|
9
|
+
var chunkQOKEU3DC_cjs = require('./chunk-QOKEU3DC.cjs');
|
|
10
|
+
var chunkSBS7U7CN_cjs = require('./chunk-SBS7U7CN.cjs');
|
|
11
11
|
var chunk6SHL7FYO_cjs = require('./chunk-6SHL7FYO.cjs');
|
|
12
12
|
var chunkQAO6QMNQ_cjs = require('./chunk-QAO6QMNQ.cjs');
|
|
13
|
-
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
14
13
|
var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
|
|
14
|
+
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
15
15
|
var lucideReact = require('lucide-react');
|
|
16
16
|
var react = require('react');
|
|
17
17
|
var jsxRuntime = require('react/jsx-runtime');
|
|
@@ -148,7 +148,7 @@ function DateInput({
|
|
|
148
148
|
const [isOpen, setIsOpen] = react.useState(false);
|
|
149
149
|
const [pendingInput, setPendingInput] = react.useState(null);
|
|
150
150
|
const displayValue = pendingInput ?? formatDate(value);
|
|
151
|
-
const necessity =
|
|
151
|
+
const necessity = chunkYY6KJO5Z_cjs.getNecessity(isOptional, isRequired);
|
|
152
152
|
const handleCalendarChange = react.useCallback(
|
|
153
153
|
(nextValue) => {
|
|
154
154
|
onChange(nextValue);
|
|
@@ -205,7 +205,7 @@ function DateInput({
|
|
|
205
205
|
inputRef.current?.focus();
|
|
206
206
|
}, [onChange]);
|
|
207
207
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
208
|
-
|
|
208
|
+
chunkYY6KJO5Z_cjs.Field,
|
|
209
209
|
{
|
|
210
210
|
className,
|
|
211
211
|
description,
|
|
@@ -233,10 +233,10 @@ function DateInput({
|
|
|
233
233
|
ref: wrapperRef,
|
|
234
234
|
children: [
|
|
235
235
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
236
|
-
|
|
236
|
+
chunkG2WW52GO_cjs.Popover,
|
|
237
237
|
{
|
|
238
238
|
content: /* @__PURE__ */ jsxRuntime.jsx(
|
|
239
|
-
|
|
239
|
+
chunkLUQVSNQL_cjs.Calendar,
|
|
240
240
|
{
|
|
241
241
|
getIsDateDisabled,
|
|
242
242
|
max,
|
|
@@ -254,7 +254,7 @@ function DateInput({
|
|
|
254
254
|
onOpenChange: setIsOpen,
|
|
255
255
|
padding: 3,
|
|
256
256
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
257
|
-
|
|
257
|
+
chunkQOKEU3DC_cjs.Button,
|
|
258
258
|
{
|
|
259
259
|
icon: lucideReact.CalendarIcon,
|
|
260
260
|
isDisabled,
|
|
@@ -288,7 +288,7 @@ function DateInput({
|
|
|
288
288
|
}
|
|
289
289
|
),
|
|
290
290
|
hasClear && value != null && !isDisabled && !isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
291
|
-
|
|
291
|
+
chunkQOKEU3DC_cjs.Button,
|
|
292
292
|
{
|
|
293
293
|
icon: lucideReact.X,
|
|
294
294
|
isIconOnly: true,
|
|
@@ -298,7 +298,7 @@ function DateInput({
|
|
|
298
298
|
variant: "ghost"
|
|
299
299
|
}
|
|
300
300
|
) : null,
|
|
301
|
-
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
301
|
+
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkSBS7U7CN_cjs.Spinner, { size: "sm" }) : null,
|
|
302
302
|
status != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunkVXBVSYPA_cjs.inputStyles.iconSlot, children: chunk2P6D43V2_cjs.getStatusIcon(status.type) }) : null
|
|
303
303
|
]
|
|
304
304
|
}
|
|
@@ -309,5 +309,5 @@ function DateInput({
|
|
|
309
309
|
DateInput.displayName = "DateInput";
|
|
310
310
|
|
|
311
311
|
exports.DateInput = DateInput;
|
|
312
|
-
//# sourceMappingURL=chunk-
|
|
313
|
-
//# sourceMappingURL=chunk-
|
|
312
|
+
//# sourceMappingURL=chunk-VHKA25IV.cjs.map
|
|
313
|
+
//# sourceMappingURL=chunk-VHKA25IV.cjs.map
|