silver-ui 0.4.0 → 0.6.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/README.md +1 -65
- package/dist/{chunk-JYVYCU22.cjs → chunk-27EAV2GT.cjs} +2 -2
- package/dist/chunk-27EAV2GT.cjs.map +1 -0
- package/dist/{chunk-SR5VVJ5Y.cjs → chunk-2K4I2MB3.cjs} +5 -5
- package/dist/{chunk-SR5VVJ5Y.cjs.map → chunk-2K4I2MB3.cjs.map} +1 -1
- package/dist/{chunk-GYVWTH3U.cjs → chunk-2MXK2SDR.cjs} +2 -2
- package/dist/chunk-2MXK2SDR.cjs.map +1 -0
- package/dist/{chunk-AP7BDTTF.js → chunk-2SN3KVWF.js} +5 -5
- package/dist/chunk-2SN3KVWF.js.map +1 -0
- package/dist/{chunk-SCGXGVNN.cjs → chunk-3IDT3PZC.cjs} +18 -18
- package/dist/{chunk-SCGXGVNN.cjs.map → chunk-3IDT3PZC.cjs.map} +1 -1
- package/dist/chunk-3NIDAKCF.cjs +38 -0
- package/dist/chunk-3NIDAKCF.cjs.map +1 -0
- package/dist/chunk-3PEK2Q54.cjs +31 -0
- package/dist/chunk-3PEK2Q54.cjs.map +1 -0
- package/dist/{chunk-ZTWBG2XY.cjs → chunk-3W3ST5Y3.cjs} +6 -6
- package/dist/chunk-3W3ST5Y3.cjs.map +1 -0
- package/dist/{chunk-J3DNWPXJ.js → chunk-4426KMA7.js} +2 -2
- package/dist/{chunk-J3DNWPXJ.js.map → chunk-4426KMA7.js.map} +1 -1
- package/dist/{chunk-L6VSBBPP.js → chunk-45OSUS5A.js} +176 -102
- package/dist/chunk-45OSUS5A.js.map +1 -0
- package/dist/{chunk-FMLIYHDP.js → chunk-4EUUZQAM.js} +5 -5
- package/dist/chunk-4EUUZQAM.js.map +1 -0
- package/dist/{chunk-VUCMGGU5.js → chunk-4JJFQZVY.js} +129 -121
- package/dist/chunk-4JJFQZVY.js.map +1 -0
- package/dist/{chunk-3JPUXC5U.js → chunk-56PY2CD7.js} +17 -44
- package/dist/chunk-56PY2CD7.js.map +1 -0
- package/dist/chunk-5FQKELP6.js +28 -0
- package/dist/chunk-5FQKELP6.js.map +1 -0
- package/dist/{chunk-M4JUQCKP.js → chunk-5FTIATD6.js} +2 -2
- package/dist/{chunk-M4JUQCKP.js.map → chunk-5FTIATD6.js.map} +1 -1
- package/dist/{chunk-QSEDH7T2.js → chunk-5HPXUDX6.js} +3 -6
- package/dist/chunk-5HPXUDX6.js.map +1 -0
- package/dist/chunk-5JROXZBG.cjs +491 -0
- package/dist/chunk-5JROXZBG.cjs.map +1 -0
- package/dist/{chunk-FNZOICR4.cjs → chunk-5K3C3INR.cjs} +29 -58
- package/dist/chunk-5K3C3INR.cjs.map +1 -0
- package/dist/{chunk-N2TNBDQI.js → chunk-5RFHYDQY.js} +17 -12
- package/dist/chunk-5RFHYDQY.js.map +1 -0
- package/dist/{chunk-Z4TZAJS3.js → chunk-5UGHDUMO.js} +2 -2
- package/dist/chunk-5UGHDUMO.js.map +1 -0
- package/dist/{chunk-2XAA3CM5.js → chunk-5ZU7FY4O.js} +2 -2
- package/dist/chunk-5ZU7FY4O.js.map +1 -0
- package/dist/{chunk-NHXJVSZZ.cjs → chunk-62SQBQA4.cjs} +2 -2
- package/dist/chunk-62SQBQA4.cjs.map +1 -0
- package/dist/{chunk-BULJWVPU.cjs → chunk-6FC5YF2O.cjs} +19 -19
- package/dist/{chunk-BULJWVPU.cjs.map → chunk-6FC5YF2O.cjs.map} +1 -1
- package/dist/{chunk-2N6FOSNM.js → chunk-6I5QWA6A.js} +210 -172
- package/dist/chunk-6I5QWA6A.js.map +1 -0
- package/dist/chunk-6ZV7HGZT.cjs +169 -0
- package/dist/chunk-6ZV7HGZT.cjs.map +1 -0
- package/dist/{chunk-GL7PSN7H.cjs → chunk-7EE6DCRP.cjs} +29 -23
- package/dist/chunk-7EE6DCRP.cjs.map +1 -0
- package/dist/{chunk-6XWXBXYE.js → chunk-7TJ2O56S.js} +8 -10
- package/dist/chunk-7TJ2O56S.js.map +1 -0
- package/dist/chunk-A2AC6WL5.cjs +4 -0
- package/dist/chunk-A2AC6WL5.cjs.map +1 -0
- package/dist/{chunk-TBOQTPRO.cjs → chunk-AFJEAYR4.cjs} +91 -57
- package/dist/chunk-AFJEAYR4.cjs.map +1 -0
- package/dist/chunk-AFXU6XIS.js +3 -0
- package/dist/chunk-AFXU6XIS.js.map +1 -0
- package/dist/{chunk-PIZMCOKL.js → chunk-AKAXQ4RL.js} +276 -246
- package/dist/chunk-AKAXQ4RL.js.map +1 -0
- package/dist/{chunk-O2WICOUK.cjs → chunk-ARUOMLOJ.cjs} +24 -20
- package/dist/chunk-ARUOMLOJ.cjs.map +1 -0
- package/dist/{chunk-3OIUA2NY.js → chunk-ATK3F3MC.js} +5 -5
- package/dist/{chunk-3OIUA2NY.js.map → chunk-ATK3F3MC.js.map} +1 -1
- package/dist/{chunk-6ONAGCCZ.js → chunk-B5QX6KGJ.js} +113 -105
- package/dist/chunk-B5QX6KGJ.js.map +1 -0
- package/dist/{chunk-52WQDDWQ.js → chunk-BDFNEQR3.js} +50 -50
- package/dist/chunk-BDFNEQR3.js.map +1 -0
- package/dist/{chunk-JDAJ2HJQ.js → chunk-BGLT7XH6.js} +9 -9
- package/dist/chunk-BGLT7XH6.js.map +1 -0
- package/dist/{chunk-FDUO2HVX.js → chunk-BIKVMVWF.js} +2 -2
- package/dist/{chunk-FDUO2HVX.js.map → chunk-BIKVMVWF.js.map} +1 -1
- package/dist/{chunk-UUVLEOSD.js → chunk-BNGYGCT2.js} +9 -9
- package/dist/chunk-BNGYGCT2.js.map +1 -0
- package/dist/{chunk-W2Q4PQ6I.js → chunk-BQWUTDTN.js} +2 -2
- package/dist/{chunk-W2Q4PQ6I.js.map → chunk-BQWUTDTN.js.map} +1 -1
- package/dist/{chunk-E2A3GJSN.cjs → chunk-BSXUNRET.cjs} +11 -12
- package/dist/chunk-BSXUNRET.cjs.map +1 -0
- package/dist/chunk-BUYZZOOU.js +56 -0
- package/dist/chunk-BUYZZOOU.js.map +1 -0
- package/dist/{chunk-NFABMGNH.js → chunk-C6EWA3H2.js} +8 -8
- package/dist/chunk-C6EWA3H2.js.map +1 -0
- package/dist/{chunk-YWGYN6YV.cjs → chunk-CABYRYVA.cjs} +171 -153
- package/dist/chunk-CABYRYVA.cjs.map +1 -0
- package/dist/{chunk-5D2OR64D.cjs → chunk-CNDUYO7I.cjs} +7 -15
- package/dist/chunk-CNDUYO7I.cjs.map +1 -0
- package/dist/chunk-CPDWUT2H.cjs +59 -0
- package/dist/chunk-CPDWUT2H.cjs.map +1 -0
- package/dist/{chunk-C6EYCIKJ.cjs → chunk-CVT7JW6C.cjs} +276 -246
- package/dist/chunk-CVT7JW6C.cjs.map +1 -0
- package/dist/chunk-CZUMVOPH.js +3525 -0
- package/dist/chunk-CZUMVOPH.js.map +1 -0
- package/dist/{chunk-4CVDLMD6.js → chunk-D3CHBU46.js} +3 -3
- package/dist/{chunk-4CVDLMD6.js.map → chunk-D3CHBU46.js.map} +1 -1
- package/dist/{chunk-U6NH54YD.js → chunk-DAO4UXR4.js} +166 -148
- package/dist/chunk-DAO4UXR4.js.map +1 -0
- package/dist/{chunk-RDNMAV5B.js → chunk-DE7JLNSO.js} +2 -2
- package/dist/chunk-DE7JLNSO.js.map +1 -0
- package/dist/{chunk-TF7XVTSP.cjs → chunk-DFEAB7Z3.cjs} +15 -15
- package/dist/chunk-DFEAB7Z3.cjs.map +1 -0
- package/dist/{chunk-BLRWA445.cjs → chunk-DK6USFZP.cjs} +27 -27
- package/dist/chunk-DK6USFZP.cjs.map +1 -0
- package/dist/{chunk-JKERY7QF.cjs → chunk-DLIYUFTS.cjs} +2 -2
- package/dist/{chunk-JKERY7QF.cjs.map → chunk-DLIYUFTS.cjs.map} +1 -1
- package/dist/{chunk-JIVYPJKO.js → chunk-DPSAPA6B.js} +6 -6
- package/dist/chunk-DPSAPA6B.js.map +1 -0
- package/dist/{chunk-YAWVGZRC.js → chunk-DWZR2AGT.js} +6 -6
- package/dist/{chunk-YAWVGZRC.js.map → chunk-DWZR2AGT.js.map} +1 -1
- package/dist/{chunk-FB245S6T.cjs → chunk-DXUFDJHA.cjs} +17 -18
- package/dist/chunk-DXUFDJHA.cjs.map +1 -0
- package/dist/{chunk-G3KKLGZU.cjs → chunk-DYMZ4DLN.cjs} +8 -8
- package/dist/chunk-DYMZ4DLN.cjs.map +1 -0
- package/dist/{chunk-M2MC3E27.cjs → chunk-EEOUWM2F.cjs} +10 -10
- package/dist/chunk-EEOUWM2F.cjs.map +1 -0
- package/dist/{chunk-AFI4V7LI.js → chunk-EIJSWHG7.js} +11 -12
- package/dist/chunk-EIJSWHG7.js.map +1 -0
- package/dist/{chunk-PUVBNGCF.js → chunk-EIT2QSCA.js} +2 -2
- package/dist/{chunk-PUVBNGCF.js.map → chunk-EIT2QSCA.js.map} +1 -1
- package/dist/{chunk-YVHWOKR7.cjs → chunk-ENVDR66N.cjs} +314 -324
- package/dist/chunk-ENVDR66N.cjs.map +1 -0
- package/dist/chunk-ERVWZILR.js +321 -0
- package/dist/chunk-ERVWZILR.js.map +1 -0
- package/dist/{chunk-2A3V6OR7.cjs → chunk-EVCQCZMM.cjs} +5 -5
- package/dist/{chunk-2A3V6OR7.cjs.map → chunk-EVCQCZMM.cjs.map} +1 -1
- package/dist/{chunk-GC5VUTUR.cjs → chunk-EZFQCREN.cjs} +17 -44
- package/dist/chunk-EZFQCREN.cjs.map +1 -0
- package/dist/{chunk-FP5E5BUM.js → chunk-FIOCTAXT.js} +4 -4
- package/dist/chunk-FIOCTAXT.js.map +1 -0
- package/dist/{chunk-AWDIKDX5.cjs → chunk-FLDTPAG4.cjs} +11 -11
- package/dist/{chunk-AWDIKDX5.cjs.map → chunk-FLDTPAG4.cjs.map} +1 -1
- package/dist/{chunk-S7INL5NI.js → chunk-FQN22DO5.js} +10 -10
- package/dist/chunk-FQN22DO5.js.map +1 -0
- package/dist/{chunk-AJ6X62AI.js → chunk-FQSVY4QB.js} +3 -3
- package/dist/chunk-FQSVY4QB.js.map +1 -0
- package/dist/{chunk-3ZV3EGGK.cjs → chunk-FWBYCTUB.cjs} +24 -24
- package/dist/chunk-FWBYCTUB.cjs.map +1 -0
- package/dist/{chunk-WBQNPBXR.js → chunk-G5PU2EL2.js} +5 -5
- package/dist/{chunk-WBQNPBXR.js.map → chunk-G5PU2EL2.js.map} +1 -1
- package/dist/{chunk-WOIWI2UO.js → chunk-G6HS52US.js} +3 -3
- package/dist/chunk-G6HS52US.js.map +1 -0
- package/dist/chunk-GA77PPVL.cjs +217 -0
- package/dist/chunk-GA77PPVL.cjs.map +1 -0
- package/dist/chunk-GJKRSQEA.cjs +3541 -0
- package/dist/chunk-GJKRSQEA.cjs.map +1 -0
- package/dist/{chunk-7CCXHH6Y.cjs → chunk-GJZAGTPV.cjs} +7 -7
- package/dist/chunk-GJZAGTPV.cjs.map +1 -0
- package/dist/{chunk-SBS7U7CN.cjs → chunk-GU65FGY6.cjs} +4 -4
- package/dist/{chunk-SBS7U7CN.cjs.map → chunk-GU65FGY6.cjs.map} +1 -1
- package/dist/{chunk-K3XHXWBW.js → chunk-GUUCIG7U.js} +9 -9
- package/dist/{chunk-K3XHXWBW.js.map → chunk-GUUCIG7U.js.map} +1 -1
- package/dist/{chunk-RQ5BMSGU.js → chunk-H2EMKCWT.js} +3 -3
- package/dist/{chunk-RQ5BMSGU.js.map → chunk-H2EMKCWT.js.map} +1 -1
- package/dist/{chunk-JTFNNEWR.cjs → chunk-H5VMHDRD.cjs} +8 -10
- package/dist/chunk-H5VMHDRD.cjs.map +1 -0
- package/dist/{chunk-AHVHLNHU.cjs → chunk-H7VK36SZ.cjs} +213 -175
- package/dist/chunk-H7VK36SZ.cjs.map +1 -0
- package/dist/{chunk-YYNWZRXZ.js → chunk-HKGFMJFK.js} +491 -431
- package/dist/chunk-HKGFMJFK.js.map +1 -0
- package/dist/{chunk-2LABTS4P.js → chunk-HMJINNXZ.js} +24 -35
- package/dist/chunk-HMJINNXZ.js.map +1 -0
- package/dist/{chunk-WY5BOT7O.js → chunk-HPNY32G6.js} +4 -4
- package/dist/{chunk-WY5BOT7O.js.map → chunk-HPNY32G6.js.map} +1 -1
- package/dist/{chunk-IA5GII7N.cjs → chunk-HPOURAKV.cjs} +264 -218
- package/dist/chunk-HPOURAKV.cjs.map +1 -0
- package/dist/{chunk-LUQVSNQL.cjs → chunk-INQ34SVW.cjs} +141 -133
- package/dist/chunk-INQ34SVW.cjs.map +1 -0
- package/dist/{chunk-5YS43PSQ.cjs → chunk-IREOTHD3.cjs} +8 -8
- package/dist/chunk-IREOTHD3.cjs.map +1 -0
- package/dist/chunk-ISWZQUVA.cjs +409 -0
- package/dist/chunk-ISWZQUVA.cjs.map +1 -0
- package/dist/{chunk-XXBA3KSH.cjs → chunk-IU2YRN35.cjs} +112 -112
- package/dist/chunk-IU2YRN35.cjs.map +1 -0
- package/dist/{chunk-7T3SWOY7.js → chunk-IUW777WZ.js} +2 -2
- package/dist/{chunk-7T3SWOY7.js.map → chunk-IUW777WZ.js.map} +1 -1
- package/dist/{chunk-ZFBQ4R7M.cjs → chunk-J4LJXCXB.cjs} +15 -15
- package/dist/chunk-J4LJXCXB.cjs.map +1 -0
- package/dist/{chunk-4TIAKZ4Q.cjs → chunk-J4PIYOWT.cjs} +2 -2
- package/dist/{chunk-4TIAKZ4Q.cjs.map → chunk-J4PIYOWT.cjs.map} +1 -1
- package/dist/{chunk-LNT2IFOA.js → chunk-JC66FRQX.js} +3 -3
- package/dist/chunk-JC66FRQX.js.map +1 -0
- package/dist/{chunk-ZAX2UJBC.js → chunk-JHMUMJF3.js} +37 -28
- package/dist/chunk-JHMUMJF3.js.map +1 -0
- package/dist/{chunk-O32BKXTR.cjs → chunk-JIF5TZHC.cjs} +2 -2
- package/dist/chunk-JIF5TZHC.cjs.map +1 -0
- package/dist/{chunk-CK3UJQRI.cjs → chunk-JK4YAQ2N.cjs} +2 -6
- package/dist/chunk-JK4YAQ2N.cjs.map +1 -0
- package/dist/{chunk-G2U2W422.js → chunk-JR353MN5.js} +8 -8
- package/dist/chunk-JR353MN5.js.map +1 -0
- package/dist/{chunk-WGCGHFXE.cjs → chunk-JV4Y6HNP.cjs} +2 -2
- package/dist/{chunk-WGCGHFXE.cjs.map → chunk-JV4Y6HNP.cjs.map} +1 -1
- package/dist/{chunk-PIOMR4X2.js → chunk-K2V3IOAX.js} +4 -4
- package/dist/{chunk-PIOMR4X2.js.map → chunk-K2V3IOAX.js.map} +1 -1
- package/dist/{chunk-4H7X5FGX.js → chunk-K2WT7A64.js} +239 -274
- package/dist/chunk-K2WT7A64.js.map +1 -0
- package/dist/{chunk-SBOXHIES.js → chunk-KCI4I42U.js} +11 -11
- package/dist/chunk-KCI4I42U.js.map +1 -0
- package/dist/{chunk-HINS4GY6.js → chunk-KEPCKSDE.js} +168 -146
- package/dist/chunk-KEPCKSDE.js.map +1 -0
- package/dist/{chunk-LY6Z6A54.js → chunk-KG7RHDVX.js} +18 -12
- package/dist/chunk-KG7RHDVX.js.map +1 -0
- package/dist/{chunk-PYPXJC35.cjs → chunk-KUXFEAT4.cjs} +4 -4
- package/dist/{chunk-PYPXJC35.cjs.map → chunk-KUXFEAT4.cjs.map} +1 -1
- package/dist/chunk-KVEXSDEM.js +214 -0
- package/dist/chunk-KVEXSDEM.js.map +1 -0
- package/dist/{chunk-276LEL3G.cjs → chunk-KVJ27734.cjs} +4 -4
- package/dist/{chunk-276LEL3G.cjs.map → chunk-KVJ27734.cjs.map} +1 -1
- package/dist/{chunk-3CJC4QE6.js → chunk-KWZMXX4F.js} +5 -5
- package/dist/chunk-KWZMXX4F.js.map +1 -0
- package/dist/{chunk-SOCSUNIM.js → chunk-LDYUVGD4.js} +303 -313
- package/dist/chunk-LDYUVGD4.js.map +1 -0
- package/dist/{chunk-HNZWPIJE.js → chunk-LF6I2B7G.js} +215 -197
- package/dist/chunk-LF6I2B7G.js.map +1 -0
- package/dist/{chunk-W3C6QQF7.js → chunk-LLSWAAFH.js} +4 -4
- package/dist/chunk-LLSWAAFH.js.map +1 -0
- package/dist/{chunk-J5IRFGUP.js → chunk-M64WMYYV.js} +256 -210
- package/dist/chunk-M64WMYYV.js.map +1 -0
- package/dist/{chunk-VFGSNR35.js → chunk-MDQSVB2Y.js} +24 -20
- package/dist/chunk-MDQSVB2Y.js.map +1 -0
- package/dist/{chunk-M26XECB2.cjs → chunk-MHAXS4GO.cjs} +17 -19
- package/dist/chunk-MHAXS4GO.cjs.map +1 -0
- package/dist/{chunk-KXIILLQD.cjs → chunk-MHEPDHL5.cjs} +18 -18
- package/dist/chunk-MHEPDHL5.cjs.map +1 -0
- package/dist/{chunk-BCCPNGUV.js → chunk-MN2NCSQQ.js} +3 -3
- package/dist/{chunk-BCCPNGUV.js.map → chunk-MN2NCSQQ.js.map} +1 -1
- package/dist/{chunk-PQEFVHJZ.cjs → chunk-NFEL5GNX.cjs} +16 -15
- package/dist/chunk-NFEL5GNX.cjs.map +1 -0
- package/dist/{chunk-FDZQPWFZ.cjs → chunk-NG2H3PYA.cjs} +17 -17
- package/dist/chunk-NG2H3PYA.cjs.map +1 -0
- package/dist/{chunk-7U7JMRVF.cjs → chunk-NW36BN7N.cjs} +61 -61
- package/dist/chunk-NW36BN7N.cjs.map +1 -0
- package/dist/{chunk-QRFDPG34.js → chunk-NXTDP6AX.js} +12 -14
- package/dist/chunk-NXTDP6AX.js.map +1 -0
- package/dist/{chunk-VGHNBMEJ.cjs → chunk-NYTSAO5I.cjs} +6 -6
- package/dist/{chunk-VGHNBMEJ.cjs.map → chunk-NYTSAO5I.cjs.map} +1 -1
- package/dist/{chunk-YO3MBGBP.cjs → chunk-O4PO6AMS.cjs} +2 -2
- package/dist/{chunk-YO3MBGBP.cjs.map → chunk-O4PO6AMS.cjs.map} +1 -1
- package/dist/{chunk-BUESV4DR.cjs → chunk-P5LMEANN.cjs} +7 -7
- package/dist/{chunk-BUESV4DR.cjs.map → chunk-P5LMEANN.cjs.map} +1 -1
- package/dist/{chunk-NI55JEYL.js → chunk-P7TSM63O.js} +3 -3
- package/dist/{chunk-NI55JEYL.js.map → chunk-P7TSM63O.js.map} +1 -1
- package/dist/chunk-PG4CZRTU.js +77 -0
- package/dist/chunk-PG4CZRTU.js.map +1 -0
- package/dist/{chunk-XLKXFJMU.cjs → chunk-PHFJBQXU.cjs} +8 -8
- package/dist/chunk-PHFJBQXU.cjs.map +1 -0
- package/dist/{chunk-2OXKEUKG.cjs → chunk-PKZSJX53.cjs} +2 -2
- package/dist/chunk-PKZSJX53.cjs.map +1 -0
- package/dist/{chunk-J4OEETYQ.cjs → chunk-PNM7MPUX.cjs} +13 -13
- package/dist/{chunk-J4OEETYQ.cjs.map → chunk-PNM7MPUX.cjs.map} +1 -1
- package/dist/{chunk-TKTLWX2V.js → chunk-PU4PBI3H.js} +8 -8
- package/dist/{chunk-TKTLWX2V.js.map → chunk-PU4PBI3H.js.map} +1 -1
- package/dist/{chunk-LO5NZY7N.cjs → chunk-PYJX2SBC.cjs} +6 -6
- package/dist/chunk-PYJX2SBC.cjs.map +1 -0
- package/dist/{chunk-D3LZQ5QS.js → chunk-PYN75QAG.js} +6 -6
- package/dist/chunk-PYN75QAG.js.map +1 -0
- package/dist/chunk-PZHRFASW.js +36 -0
- package/dist/chunk-PZHRFASW.js.map +1 -0
- package/dist/{chunk-DP7VC4FW.cjs → chunk-QB2BSOM4.cjs} +2 -2
- package/dist/{chunk-DP7VC4FW.cjs.map → chunk-QB2BSOM4.cjs.map} +1 -1
- package/dist/{chunk-6ULCJ3XZ.js → chunk-QHXI2QDK.js} +3 -3
- package/dist/{chunk-6ULCJ3XZ.js.map → chunk-QHXI2QDK.js.map} +1 -1
- package/dist/{chunk-C732WXKS.cjs → chunk-QTOFQB26.cjs} +17 -17
- package/dist/chunk-QTOFQB26.cjs.map +1 -0
- package/dist/{chunk-TQA3BI7M.cjs → chunk-QYZXTIB2.cjs} +4 -4
- package/dist/{chunk-TQA3BI7M.cjs.map → chunk-QYZXTIB2.cjs.map} +1 -1
- package/dist/{chunk-YY6KJO5Z.cjs → chunk-R3ZS6FU6.cjs} +12 -12
- package/dist/chunk-R3ZS6FU6.cjs.map +1 -0
- package/dist/{chunk-G2WW52GO.cjs → chunk-RAMDISDK.cjs} +40 -31
- package/dist/chunk-RAMDISDK.cjs.map +1 -0
- package/dist/{chunk-SSOAZZNR.cjs → chunk-RLIBY7XB.cjs} +19 -14
- package/dist/chunk-RLIBY7XB.cjs.map +1 -0
- package/dist/chunk-RU7JPU7V.js +389 -0
- package/dist/chunk-RU7JPU7V.js.map +1 -0
- package/dist/{chunk-SSAYBCAD.js → chunk-RXKDRZF3.js} +5 -13
- package/dist/chunk-RXKDRZF3.js.map +1 -0
- package/dist/{chunk-VQ7U3ASC.js → chunk-S4IHNNA2.js} +111 -111
- package/dist/chunk-S4IHNNA2.js.map +1 -0
- package/dist/{chunk-MI5QU37D.js → chunk-S4WWBV4N.js} +24 -50
- package/dist/chunk-S4WWBV4N.js.map +1 -0
- package/dist/{chunk-RLOGQBFD.js → chunk-SEDUAMDW.js} +6 -6
- package/dist/chunk-SEDUAMDW.js.map +1 -0
- package/dist/{chunk-SUH62Z64.js → chunk-SHARVIUI.js} +2 -2
- package/dist/chunk-SHARVIUI.js.map +1 -0
- package/dist/chunk-SKZNSOB7.cjs +323 -0
- package/dist/chunk-SKZNSOB7.cjs.map +1 -0
- package/dist/{chunk-ZEA2VYX4.js → chunk-SZ27SCE2.js} +2 -2
- package/dist/{chunk-ZEA2VYX4.js.map → chunk-SZ27SCE2.js.map} +1 -1
- package/dist/{chunk-H2CZ6IE5.cjs → chunk-TNYAYXKC.cjs} +509 -451
- package/dist/chunk-TNYAYXKC.cjs.map +1 -0
- package/dist/{chunk-DXPQRAGI.js → chunk-TQDJVPHP.js} +3 -3
- package/dist/{chunk-DXPQRAGI.js.map → chunk-TQDJVPHP.js.map} +1 -1
- package/dist/{chunk-JSINCF2R.cjs → chunk-TVWU4XBL.cjs} +12 -12
- package/dist/{chunk-JSINCF2R.cjs.map → chunk-TVWU4XBL.cjs.map} +1 -1
- package/dist/{chunk-OBWWRRL6.cjs → chunk-U4L75VA4.cjs} +167 -159
- package/dist/chunk-U4L75VA4.cjs.map +1 -0
- package/dist/{chunk-X574M2JB.cjs → chunk-U5HW5P7Q.cjs} +13 -13
- package/dist/chunk-U5HW5P7Q.cjs.map +1 -0
- package/dist/{chunk-KDR5DCYL.cjs → chunk-UMS46KF4.cjs} +10 -10
- package/dist/{chunk-KDR5DCYL.cjs.map → chunk-UMS46KF4.cjs.map} +1 -1
- package/dist/{chunk-BSAZRW6T.js → chunk-UT45YVPI.js} +22 -15
- package/dist/chunk-UT45YVPI.js.map +1 -0
- package/dist/{chunk-LQIZSE3O.js → chunk-UYZQGHFI.js} +11 -11
- package/dist/chunk-UYZQGHFI.js.map +1 -0
- package/dist/{chunk-TPB53MHV.cjs → chunk-UZGPFPIV.cjs} +224 -206
- package/dist/chunk-UZGPFPIV.cjs.map +1 -0
- package/dist/{chunk-7BSFKG7N.js → chunk-V2V5TTTL.js} +2 -2
- package/dist/chunk-V2V5TTTL.js.map +1 -0
- package/dist/{chunk-IUUQXCDE.js → chunk-VJXSJXEX.js} +2 -2
- package/dist/{chunk-IUUQXCDE.js.map → chunk-VJXSJXEX.js.map} +1 -1
- package/dist/{chunk-JJ324PSZ.cjs → chunk-VK7DXUGH.cjs} +168 -145
- package/dist/chunk-VK7DXUGH.cjs.map +1 -0
- package/dist/{chunk-I45346RZ.cjs → chunk-VOOD6CXJ.cjs} +2 -2
- package/dist/{chunk-I45346RZ.cjs.map → chunk-VOOD6CXJ.cjs.map} +1 -1
- package/dist/chunk-VPWNRWNO.cjs +81 -0
- package/dist/chunk-VPWNRWNO.cjs.map +1 -0
- package/dist/{chunk-QATCDVZ6.cjs → chunk-VREW3BK6.cjs} +182 -108
- package/dist/chunk-VREW3BK6.cjs.map +1 -0
- package/dist/{chunk-DIRVAHOF.cjs → chunk-VRQ66IBW.cjs} +8 -8
- package/dist/chunk-VRQ66IBW.cjs.map +1 -0
- package/dist/chunk-VW52NVGM.cjs +391 -0
- package/dist/chunk-VW52NVGM.cjs.map +1 -0
- package/dist/{chunk-QOKEU3DC.cjs → chunk-VXOIOPGZ.cjs} +30 -41
- package/dist/chunk-VXOIOPGZ.cjs.map +1 -0
- package/dist/chunk-WAWHHXSR.js +166 -0
- package/dist/chunk-WAWHHXSR.js.map +1 -0
- package/dist/{chunk-2RKMG2TC.js → chunk-WEXTGWRE.js} +176 -140
- package/dist/chunk-WEXTGWRE.js.map +1 -0
- package/dist/{chunk-ILEKDNP7.js → chunk-WHDDBOJN.js} +7 -7
- package/dist/{chunk-ILEKDNP7.js.map → chunk-WHDDBOJN.js.map} +1 -1
- package/dist/{chunk-QVNDZZS6.cjs → chunk-WINDLDH3.cjs} +9 -9
- package/dist/chunk-WINDLDH3.cjs.map +1 -0
- package/dist/{chunk-DWUEPOYH.js → chunk-WM7NEOME.js} +8 -8
- package/dist/chunk-WM7NEOME.js.map +1 -0
- package/dist/{chunk-ZQUPAIBS.js → chunk-WTCH3QCQ.js} +10 -11
- package/dist/chunk-WTCH3QCQ.js.map +1 -0
- package/dist/{chunk-K4ZJNQTX.cjs → chunk-X34F4ZV6.cjs} +2 -2
- package/dist/{chunk-K4ZJNQTX.cjs.map → chunk-X34F4ZV6.cjs.map} +1 -1
- package/dist/{chunk-2P6D43V2.cjs → chunk-XPHXAZCE.cjs} +6 -6
- package/dist/chunk-XPHXAZCE.cjs.map +1 -0
- package/dist/{chunk-WBGFFP3G.js → chunk-XTLNUYCK.js} +90 -56
- package/dist/chunk-XTLNUYCK.js.map +1 -0
- package/dist/{chunk-ZN7CULIL.cjs → chunk-ZPOXH42B.cjs} +2 -2
- package/dist/{chunk-ZN7CULIL.cjs.map → chunk-ZPOXH42B.cjs.map} +1 -1
- package/dist/{chunk-EBDODJ5X.js → chunk-ZSB43DEI.js} +8 -7
- package/dist/chunk-ZSB43DEI.js.map +1 -0
- package/dist/{chunk-VHKA25IV.cjs → chunk-ZUAWNT66.cjs} +36 -29
- package/dist/chunk-ZUAWNT66.cjs.map +1 -0
- package/dist/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/components/Accordion/index.cjs +5 -5
- package/dist/components/Accordion/index.d.ts +2 -2
- package/dist/components/Accordion/index.d.ts.map +1 -1
- package/dist/components/Accordion/index.js +2 -2
- package/dist/components/Accordion/useAccordionDevWarning.d.ts +8 -0
- package/dist/components/Accordion/useAccordionDevWarning.d.ts.map +1 -0
- package/dist/components/Alert/Alert.d.ts +2 -11
- package/dist/components/Alert/Alert.d.ts.map +1 -1
- package/dist/components/Alert/Alert.recipe.d.ts +1 -1
- package/dist/components/Alert/Alert.types.d.ts +3 -0
- package/dist/components/Alert/Alert.types.d.ts.map +1 -0
- package/dist/components/Alert/index.cjs +13 -11
- package/dist/components/Alert/index.d.ts.map +1 -1
- package/dist/components/Alert/index.js +12 -10
- package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -1
- package/dist/components/AlertDialog/index.cjs +18 -14
- package/dist/components/AlertDialog/index.d.ts.map +1 -1
- package/dist/components/AlertDialog/index.js +16 -12
- package/dist/components/AlertDialog/useAlertDialog.d.ts.map +1 -1
- package/dist/components/AppShell/AppShell.d.ts.map +1 -1
- package/dist/components/AppShell/index.cjs +23 -19
- package/dist/components/AppShell/index.d.ts.map +1 -1
- package/dist/components/AppShell/index.js +20 -16
- package/dist/components/AspectRatio/index.cjs +2 -2
- package/dist/components/AspectRatio/index.d.ts +1 -1
- package/dist/components/AspectRatio/index.d.ts.map +1 -1
- package/dist/components/AspectRatio/index.js +1 -1
- package/dist/components/AutocompleteInput/AutocompleteInput.d.ts +1 -1
- package/dist/components/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/AutocompleteInput.recipe.d.ts +1 -1
- package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts +1 -1
- package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/index.cjs +21 -19
- package/dist/components/AutocompleteInput/index.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/index.js +17 -15
- package/dist/components/Avatar/Avatar.recipe.d.ts +1 -1
- package/dist/components/Avatar/index.cjs +5 -5
- package/dist/components/Avatar/index.d.ts.map +1 -1
- package/dist/components/Avatar/index.js +2 -2
- package/dist/components/AvatarGroup/AvatarGroup.d.ts.map +1 -1
- package/dist/components/AvatarGroup/AvatarGroupContext.d.ts.map +1 -1
- package/dist/components/AvatarGroup/index.cjs +5 -5
- package/dist/components/AvatarGroup/index.d.ts +1 -1
- package/dist/components/AvatarGroup/index.d.ts.map +1 -1
- package/dist/components/AvatarGroup/index.js +3 -3
- package/dist/components/Badge/Badge.d.ts.map +1 -1
- package/dist/components/Badge/index.cjs +3 -3
- package/dist/components/Badge/index.d.ts +1 -1
- package/dist/components/Badge/index.d.ts.map +1 -1
- package/dist/components/Badge/index.js +2 -2
- package/dist/components/Blockquote/Blockquote.recipe.d.ts +1 -1
- package/dist/components/Blockquote/index.cjs +2 -2
- package/dist/components/Blockquote/index.d.ts +1 -1
- package/dist/components/Blockquote/index.d.ts.map +1 -1
- package/dist/components/Blockquote/index.js +1 -1
- package/dist/components/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/BreadcrumbItem.recipe.d.ts +1 -1
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/Breadcrumbs.recipe.d.ts +1 -1
- package/dist/components/Breadcrumbs/index.cjs +6 -11
- package/dist/components/Breadcrumbs/index.d.ts +2 -2
- package/dist/components/Breadcrumbs/index.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/index.js +3 -8
- package/dist/components/Button/Button.d.ts +7 -7
- package/dist/components/Button/Button.d.ts.map +1 -1
- package/dist/components/Button/Button.recipe.d.ts +1 -1
- package/dist/components/Button/Button.types.d.ts +3 -0
- package/dist/components/Button/Button.types.d.ts.map +1 -0
- package/dist/components/Button/index.cjs +12 -10
- package/dist/components/Button/index.d.ts +1 -1
- package/dist/components/Button/index.d.ts.map +1 -1
- package/dist/components/Button/index.js +11 -9
- package/dist/components/ButtonGroup/ButtonGroup.d.ts.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroupContext.d.ts.map +1 -1
- package/dist/components/ButtonGroup/index.cjs +3 -3
- package/dist/components/ButtonGroup/index.d.ts +1 -1
- package/dist/components/ButtonGroup/index.d.ts.map +1 -1
- package/dist/components/ButtonGroup/index.js +2 -2
- package/dist/components/Calendar/Calendar.d.ts +16 -3
- package/dist/components/Calendar/Calendar.d.ts.map +1 -1
- package/dist/components/Calendar/Calendar.recipe.d.ts +1 -1
- package/dist/components/Calendar/index.cjs +14 -12
- package/dist/components/Calendar/index.d.ts.map +1 -1
- package/dist/components/Calendar/index.js +13 -11
- package/dist/components/Card/Card.d.ts.map +1 -1
- package/dist/components/Card/index.cjs +2 -2
- package/dist/components/Card/index.d.ts +1 -1
- package/dist/components/Card/index.d.ts.map +1 -1
- package/dist/components/Card/index.js +1 -1
- package/dist/components/Center/Center.d.ts.map +1 -1
- package/dist/components/Center/index.cjs +2 -2
- package/dist/components/Center/index.d.ts +1 -1
- package/dist/components/Center/index.d.ts.map +1 -1
- package/dist/components/Center/index.js +1 -1
- package/dist/components/CheckboxInput/CheckboxInput.d.ts.map +1 -1
- package/dist/components/CheckboxInput/CheckboxInput.recipe.d.ts +1 -1
- package/dist/components/CheckboxInput/index.cjs +12 -11
- package/dist/components/CheckboxInput/index.d.ts.map +1 -1
- package/dist/components/CheckboxInput/index.js +11 -10
- package/dist/components/CodeBlock/CodeBlock.d.ts.map +1 -1
- package/dist/components/CodeBlock/CodeBlock.recipe.d.ts +1 -1
- package/dist/components/CodeBlock/index.cjs +15 -13
- package/dist/components/CodeBlock/index.d.ts.map +1 -1
- package/dist/components/CodeBlock/index.js +14 -12
- package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/components/ContextMenu/index.cjs +18 -17
- package/dist/components/ContextMenu/index.d.ts.map +1 -1
- package/dist/components/ContextMenu/index.js +16 -15
- package/dist/components/DateInput/DateInput.d.ts +7 -5
- package/dist/components/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/DateInput/index.cjs +19 -17
- package/dist/components/DateInput/index.d.ts +1 -1
- package/dist/components/DateInput/index.d.ts.map +1 -1
- package/dist/components/DateInput/index.js +18 -16
- package/dist/components/DateRangeInput/DateRangeInput.d.ts +5 -5
- package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/components/DateRangeInput/index.cjs +19 -17
- package/dist/components/DateRangeInput/index.d.ts.map +1 -1
- package/dist/components/DateRangeInput/index.js +18 -16
- package/dist/components/DateTimeInput/DateTimeInput.d.ts +4 -4
- package/dist/components/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/components/DateTimeInput/index.cjs +21 -19
- package/dist/components/DateTimeInput/index.d.ts.map +1 -1
- package/dist/components/DateTimeInput/index.js +20 -18
- package/dist/components/Dialog/Dialog.d.ts +2 -4
- package/dist/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/components/Dialog/index.cjs +5 -3
- package/dist/components/Dialog/index.d.ts +1 -1
- package/dist/components/Dialog/index.d.ts.map +1 -1
- package/dist/components/Dialog/index.js +3 -1
- package/dist/components/Dialog/useDialog.d.ts.map +1 -1
- package/dist/components/Divider/Divider.recipe.d.ts +1 -1
- package/dist/components/Divider/index.cjs +2 -2
- package/dist/components/Divider/index.d.ts.map +1 -1
- package/dist/components/Divider/index.js +1 -1
- package/dist/components/Drawer/Drawer.d.ts +10 -2
- package/dist/components/Drawer/Drawer.d.ts.map +1 -1
- package/dist/components/Drawer/Drawer.recipe.d.ts +63 -0
- package/dist/components/Drawer/Drawer.recipe.d.ts.map +1 -0
- package/dist/components/Drawer/index.cjs +7 -3
- package/dist/components/Drawer/index.d.ts +2 -2
- package/dist/components/Drawer/index.d.ts.map +1 -1
- package/dist/components/Drawer/index.js +5 -1
- package/dist/components/Drawer/useDrawer.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuContext.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
- package/dist/components/DropdownMenu/index.cjs +19 -18
- package/dist/components/DropdownMenu/index.d.ts +1 -1
- package/dist/components/DropdownMenu/index.d.ts.map +1 -1
- package/dist/components/DropdownMenu/index.js +15 -14
- package/dist/components/DropdownMenu/menuUtils.d.ts.map +1 -1
- package/dist/components/DropdownMenu/types.d.ts.map +1 -1
- package/dist/components/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/components/EmptyState/EmptyState.recipe.d.ts +1 -1
- package/dist/components/EmptyState/index.cjs +5 -5
- package/dist/components/EmptyState/index.d.ts +1 -1
- package/dist/components/EmptyState/index.d.ts.map +1 -1
- package/dist/components/EmptyState/index.js +4 -4
- package/dist/components/Field/Field.d.ts +1 -1
- package/dist/components/Field/Field.d.ts.map +1 -1
- package/dist/components/Field/Field.recipe.d.ts +1 -1
- package/dist/components/Field/index.cjs +8 -8
- package/dist/components/Field/index.d.ts +1 -1
- package/dist/components/Field/index.d.ts.map +1 -1
- package/dist/components/Field/index.js +6 -6
- package/dist/components/Field/inputUtils.d.ts.map +1 -1
- package/dist/components/FileInput/FileInput.d.ts.map +1 -1
- package/dist/components/FileInput/FileInput.recipe.d.ts +66 -0
- package/dist/components/FileInput/FileInput.recipe.d.ts.map +1 -0
- package/dist/components/FileInput/index.cjs +15 -14
- package/dist/components/FileInput/index.d.ts +1 -1
- package/dist/components/FileInput/index.d.ts.map +1 -1
- package/dist/components/FileInput/index.js +14 -13
- package/dist/components/HoverCard/HoverCard.d.ts +7 -7
- package/dist/components/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/components/HoverCard/index.cjs +4 -4
- package/dist/components/HoverCard/index.d.ts.map +1 -1
- package/dist/components/HoverCard/index.js +2 -2
- package/dist/components/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/components/Icon/index.cjs +2 -2
- package/dist/components/Icon/index.d.ts.map +1 -1
- package/dist/components/Icon/index.js +1 -1
- package/dist/components/InputGroup/InputGroup.d.ts.map +1 -1
- package/dist/components/InputGroup/InputGroup.recipe.d.ts +1 -1
- package/dist/components/InputGroup/InputGroup.recipe.d.ts.map +1 -1
- package/dist/components/InputGroup/InputGroupContext.d.ts.map +1 -1
- package/dist/components/InputGroup/InputGroupText.d.ts.map +1 -1
- package/dist/components/InputGroup/index.cjs +11 -11
- package/dist/components/InputGroup/index.d.ts +2 -2
- package/dist/components/InputGroup/index.d.ts.map +1 -1
- package/dist/components/InputGroup/index.js +7 -7
- package/dist/components/Item/Item.d.ts +1 -1
- package/dist/components/Item/Item.d.ts.map +1 -1
- package/dist/components/Item/Item.recipe.d.ts +75 -0
- package/dist/components/Item/Item.recipe.d.ts.map +1 -0
- package/dist/components/Item/index.cjs +8 -8
- package/dist/components/Item/index.d.ts +1 -1
- package/dist/components/Item/index.d.ts.map +1 -1
- package/dist/components/Item/index.js +7 -7
- package/dist/components/Kbd/Kbd.recipe.d.ts +1 -1
- package/dist/components/Kbd/index.cjs +2 -2
- package/dist/components/Kbd/index.d.ts.map +1 -1
- package/dist/components/Kbd/index.js +1 -1
- package/dist/components/Layout/Layout.d.ts +1 -1
- package/dist/components/Layout/Layout.d.ts.map +1 -1
- package/dist/components/Layout/Layout.recipe.d.ts +118 -16
- package/dist/components/Layout/Layout.recipe.d.ts.map +1 -1
- package/dist/components/Layout/LayoutContent.d.ts.map +1 -1
- package/dist/components/Layout/LayoutContext.d.ts +0 -7
- package/dist/components/Layout/LayoutContext.d.ts.map +1 -1
- package/dist/components/Layout/LayoutFooter.d.ts +1 -1
- package/dist/components/Layout/LayoutFooter.d.ts.map +1 -1
- package/dist/components/Layout/LayoutHeader.d.ts +6 -1
- package/dist/components/Layout/LayoutHeader.d.ts.map +1 -1
- package/dist/components/Layout/LayoutPanel.d.ts.map +1 -1
- package/dist/components/Layout/index.cjs +17 -15
- package/dist/components/Layout/index.d.ts +4 -4
- package/dist/components/Layout/index.d.ts.map +1 -1
- package/dist/components/Layout/index.js +12 -10
- package/dist/components/Layout/types.d.ts +4 -2
- package/dist/components/Layout/types.d.ts.map +1 -1
- package/dist/components/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/components/Lightbox/Lightbox.recipe.d.ts +43 -0
- package/dist/components/Lightbox/Lightbox.recipe.d.ts.map +1 -0
- package/dist/components/Lightbox/index.cjs +15 -12
- package/dist/components/Lightbox/index.d.ts.map +1 -1
- package/dist/components/Lightbox/index.js +13 -10
- package/dist/components/Lightbox/useLightbox.d.ts.map +1 -1
- package/dist/components/Link/Link.d.ts +5 -6
- package/dist/components/Link/Link.d.ts.map +1 -1
- package/dist/components/Link/Link.recipe.d.ts.map +1 -1
- package/dist/components/Link/LinkContext.d.ts.map +1 -1
- package/dist/components/Link/LinkProvider.d.ts.map +1 -1
- package/dist/components/Link/index.cjs +11 -8
- package/dist/components/Link/index.d.ts +1 -1
- package/dist/components/Link/index.d.ts.map +1 -1
- package/dist/components/Link/index.js +8 -5
- package/dist/components/Link/useLinkComponent.d.ts.map +1 -1
- package/dist/components/List/List.d.ts.map +1 -1
- package/dist/components/List/List.recipe.d.ts +1 -1
- package/dist/components/List/index.cjs +9 -10
- package/dist/components/List/index.d.ts.map +1 -1
- package/dist/components/List/index.js +7 -8
- package/dist/components/MetadataList/MetadataList.d.ts.map +1 -1
- package/dist/components/MetadataList/MetadataList.recipe.d.ts +37 -0
- package/dist/components/MetadataList/MetadataList.recipe.d.ts.map +1 -0
- package/dist/components/MetadataList/MetadataListItem.d.ts +6 -1
- package/dist/components/MetadataList/MetadataListItem.d.ts.map +1 -1
- package/dist/components/MetadataList/index.cjs +11 -7
- package/dist/components/MetadataList/index.d.ts +1 -1
- package/dist/components/MetadataList/index.d.ts.map +1 -1
- package/dist/components/MetadataList/index.js +9 -5
- package/dist/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/dist/components/MultiSelect/MultiSelect.recipe.d.ts +41 -0
- package/dist/components/MultiSelect/MultiSelect.recipe.d.ts.map +1 -0
- package/dist/components/MultiSelect/index.cjs +18 -17
- package/dist/components/MultiSelect/index.d.ts.map +1 -1
- package/dist/components/MultiSelect/index.js +17 -16
- package/dist/components/NavIcon/index.cjs +2 -2
- package/dist/components/NavIcon/index.d.ts.map +1 -1
- package/dist/components/NavIcon/index.js +1 -1
- package/dist/components/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/components/NumberInput/index.cjs +16 -14
- package/dist/components/NumberInput/index.d.ts +1 -1
- package/dist/components/NumberInput/index.d.ts.map +1 -1
- package/dist/components/NumberInput/index.js +15 -13
- package/dist/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/components/Pagination/index.cjs +13 -11
- package/dist/components/Pagination/index.d.ts.map +1 -1
- package/dist/components/Pagination/index.js +12 -10
- package/dist/components/PasswordInput/PasswordInput.d.ts.map +1 -1
- package/dist/components/PasswordInput/index.cjs +17 -15
- package/dist/components/PasswordInput/index.d.ts +1 -1
- package/dist/components/PasswordInput/index.d.ts.map +1 -1
- package/dist/components/PasswordInput/index.js +16 -14
- package/dist/components/Popover/Popover.d.ts +21 -3
- package/dist/components/Popover/Popover.d.ts.map +1 -1
- package/dist/components/Popover/index.cjs +14 -13
- package/dist/components/Popover/index.d.ts.map +1 -1
- package/dist/components/Popover/index.js +12 -11
- package/dist/components/Popover/usePopover.d.ts +72 -2
- package/dist/components/Popover/usePopover.d.ts.map +1 -1
- package/dist/components/Progress/Progress.recipe.d.ts +1 -1
- package/dist/components/Progress/index.cjs +3 -3
- package/dist/components/Progress/index.d.ts +1 -1
- package/dist/components/Progress/index.d.ts.map +1 -1
- package/dist/components/Progress/index.js +2 -2
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.recipe.d.ts +1 -1
- package/dist/components/RadioGroup/index.cjs +13 -12
- package/dist/components/RadioGroup/index.d.ts +1 -1
- package/dist/components/RadioGroup/index.d.ts.map +1 -1
- package/dist/components/RadioGroup/index.js +11 -10
- package/dist/components/Rating/Rating.d.ts.map +1 -1
- package/dist/components/Rating/Rating.recipe.d.ts +1 -1
- package/dist/components/Rating/index.cjs +4 -4
- package/dist/components/Rating/index.d.ts.map +1 -1
- package/dist/components/Rating/index.js +3 -3
- package/dist/components/Schedule/CalendarEvent.d.ts +20 -6
- package/dist/components/Schedule/CalendarEvent.d.ts.map +1 -1
- package/dist/components/Schedule/DayView.d.ts +7 -1
- package/dist/components/Schedule/DayView.d.ts.map +1 -1
- package/dist/components/Schedule/ListView.d.ts.map +1 -1
- package/dist/components/Schedule/ListView.recipe.d.ts +56 -0
- package/dist/components/Schedule/ListView.recipe.d.ts.map +1 -0
- package/dist/components/Schedule/MonthlyView.d.ts +12 -1
- package/dist/components/Schedule/MonthlyView.d.ts.map +1 -1
- package/dist/components/Schedule/MonthlyView.recipe.d.ts +47 -0
- package/dist/components/Schedule/MonthlyView.recipe.d.ts.map +1 -0
- package/dist/components/Schedule/Schedule.d.ts +2 -6
- package/dist/components/Schedule/Schedule.d.ts.map +1 -1
- package/dist/components/Schedule/Schedule.recipe.d.ts +8 -0
- package/dist/components/Schedule/Schedule.recipe.d.ts.map +1 -0
- package/dist/components/Schedule/ScheduleEvent.recipe.d.ts +208 -0
- package/dist/components/Schedule/ScheduleEvent.recipe.d.ts.map +1 -0
- package/dist/components/Schedule/TimeGridView.d.ts +7 -1
- package/dist/components/Schedule/TimeGridView.d.ts.map +1 -1
- package/dist/components/Schedule/TimeGridView.recipe.d.ts +43 -0
- package/dist/components/Schedule/TimeGridView.recipe.d.ts.map +1 -0
- package/dist/components/Schedule/WeeklyView.d.ts +7 -1
- package/dist/components/Schedule/WeeklyView.d.ts.map +1 -1
- package/dist/components/Schedule/context.d.ts +4 -8
- package/dist/components/Schedule/context.d.ts.map +1 -1
- package/dist/components/Schedule/dateMath.d.ts +1 -1
- package/dist/components/Schedule/dateMath.d.ts.map +1 -1
- package/dist/components/Schedule/index.cjs +50 -27
- package/dist/components/Schedule/index.d.ts +8 -4
- package/dist/components/Schedule/index.d.ts.map +1 -1
- package/dist/components/Schedule/index.js +23 -16
- package/dist/components/Schedule/plugins/EventMovePlugin.d.ts +23 -0
- package/dist/components/Schedule/plugins/EventMovePlugin.d.ts.map +1 -0
- package/dist/components/Schedule/plugins/EventPopoverPlugin.d.ts +31 -0
- package/dist/components/Schedule/plugins/EventPopoverPlugin.d.ts.map +1 -0
- package/dist/components/Schedule/plugins/EventResizePlugin.d.ts +24 -0
- package/dist/components/Schedule/plugins/EventResizePlugin.d.ts.map +1 -0
- package/dist/components/Schedule/plugins/PaginationPlugin.d.ts +3 -3
- package/dist/components/Schedule/plugins/PaginationPlugin.d.ts.map +1 -1
- package/dist/components/Schedule/plugins/ScheduleEventPopoverContent.d.ts +39 -0
- package/dist/components/Schedule/plugins/ScheduleEventPopoverContent.d.ts.map +1 -0
- package/dist/components/Schedule/plugins/ViewSelectorPlugin.d.ts.map +1 -1
- package/dist/components/Schedule/plugins/index.d.ts +4 -0
- package/dist/components/Schedule/plugins/index.d.ts.map +1 -1
- package/dist/components/Schedule/scheduleZonedInstant.d.ts +17 -0
- package/dist/components/Schedule/scheduleZonedInstant.d.ts.map +1 -0
- package/dist/components/Schedule/shared.d.ts +68 -22
- package/dist/components/Schedule/shared.d.ts.map +1 -1
- package/dist/components/Schedule/types.d.ts +55 -8
- package/dist/components/Schedule/types.d.ts.map +1 -1
- package/dist/components/Schedule/useCurrentTime.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInput.d.ts +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInput.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInputEditPopover.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInputEditPopover.recipe.d.ts +4 -0
- package/dist/components/SearchFilterInput/SearchFilterInputEditPopover.recipe.d.ts.map +1 -0
- package/dist/components/SearchFilterInput/SearchFilterInputFilterEditor.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInputTag.d.ts +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInputTag.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInputValueEditor.d.ts +1 -2
- package/dist/components/SearchFilterInput/SearchFilterInputValueEditor.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/formatFilterValue.d.ts +1 -2
- package/dist/components/SearchFilterInput/formatFilterValue.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/index.cjs +39 -36
- package/dist/components/SearchFilterInput/index.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/index.js +31 -28
- package/dist/components/SearchFilterInput/internalConfig.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/types.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/useSearchFilterInputConfig.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/useSearchFilterInputSource.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.recipe.d.ts +73 -0
- package/dist/components/SegmentedControl/SegmentedControl.recipe.d.ts.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
- package/dist/components/SegmentedControl/index.cjs +6 -5
- package/dist/components/SegmentedControl/index.d.ts +1 -1
- package/dist/components/SegmentedControl/index.d.ts.map +1 -1
- package/dist/components/SegmentedControl/index.js +4 -3
- package/dist/components/Select/Select.d.ts +1 -1
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/Select/Select.recipe.d.ts +1 -1
- package/dist/components/Select/SelectOption.d.ts.map +1 -1
- package/dist/components/Select/index.cjs +19 -18
- package/dist/components/Select/index.d.ts +1 -1
- package/dist/components/Select/index.d.ts.map +1 -1
- package/dist/components/Select/index.js +17 -16
- package/dist/components/SideNav/SideNav.d.ts.map +1 -1
- package/dist/components/SideNav/SideNav.recipe.d.ts +26 -7
- package/dist/components/SideNav/SideNav.recipe.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavHeading.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavItem.recipe.d.ts +51 -0
- package/dist/components/SideNav/SideNavItem.recipe.d.ts.map +1 -0
- package/dist/components/SideNav/SideNavSection.d.ts.map +1 -1
- package/dist/components/SideNav/index.cjs +22 -18
- package/dist/components/SideNav/index.d.ts +3 -3
- package/dist/components/SideNav/index.d.ts.map +1 -1
- package/dist/components/SideNav/index.js +16 -12
- package/dist/components/Skeleton/index.cjs +2 -2
- package/dist/components/Skeleton/index.d.ts +1 -1
- package/dist/components/Skeleton/index.d.ts.map +1 -1
- package/dist/components/Skeleton/index.js +1 -1
- package/dist/components/Slider/Slider.d.ts.map +1 -1
- package/dist/components/Slider/Slider.recipe.d.ts +1 -1
- package/dist/components/Slider/index.cjs +8 -8
- package/dist/components/Slider/index.d.ts.map +1 -1
- package/dist/components/Slider/index.js +7 -7
- package/dist/components/Spinner/Spinner.d.ts +1 -4
- package/dist/components/Spinner/Spinner.d.ts.map +1 -1
- package/dist/components/Spinner/Spinner.types.d.ts +3 -0
- package/dist/components/Spinner/Spinner.types.d.ts.map +1 -0
- package/dist/components/Spinner/index.cjs +5 -5
- package/dist/components/Spinner/index.d.ts.map +1 -1
- package/dist/components/Spinner/index.js +4 -4
- package/dist/components/SplitButton/SplitButton.d.ts.map +1 -1
- package/dist/components/SplitButton/index.cjs +18 -17
- package/dist/components/SplitButton/index.d.ts +1 -1
- package/dist/components/SplitButton/index.d.ts.map +1 -1
- package/dist/components/SplitButton/index.js +17 -16
- package/dist/components/Stack/HStack.d.ts.map +1 -1
- package/dist/components/Stack/VStack.d.ts.map +1 -1
- package/dist/components/Stack/index.cjs +3 -3
- package/dist/components/Stack/index.d.ts.map +1 -1
- package/dist/components/Stack/index.js +1 -1
- package/dist/components/Stack/internal/Stack.d.ts.map +1 -1
- package/dist/components/Stepper/Stepper.d.ts +55 -11
- package/dist/components/Stepper/Stepper.d.ts.map +1 -1
- package/dist/components/Stepper/index.cjs +7 -14
- package/dist/components/Stepper/index.d.ts +2 -3
- package/dist/components/Stepper/index.d.ts.map +1 -1
- package/dist/components/Stepper/index.js +6 -5
- package/dist/components/Stepper/internal/Step.d.ts +36 -0
- package/dist/components/Stepper/internal/Step.d.ts.map +1 -0
- package/dist/components/Stepper/internal/Step.recipe.d.ts +164 -0
- package/dist/components/Stepper/internal/Step.recipe.d.ts.map +1 -0
- package/dist/components/Switch/Switch.d.ts.map +1 -1
- package/dist/components/Switch/Switch.recipe.d.ts +1 -1
- package/dist/components/Switch/index.cjs +9 -9
- package/dist/components/Switch/index.d.ts.map +1 -1
- package/dist/components/Switch/index.js +8 -8
- package/dist/components/Table/Table.d.ts +45 -3
- package/dist/components/Table/Table.d.ts.map +1 -1
- package/dist/components/Table/Table.recipe.d.ts +156 -0
- package/dist/components/Table/Table.recipe.d.ts.map +1 -0
- package/dist/components/Table/TableCell.d.ts.map +1 -1
- package/dist/components/Table/TableContext.d.ts.map +1 -1
- package/dist/components/Table/TableHeaderCell.d.ts.map +1 -1
- package/dist/components/Table/TableRow.d.ts.map +1 -1
- package/dist/components/Table/columnUtils.d.ts.map +1 -1
- package/dist/components/Table/index.cjs +61 -66
- package/dist/components/Table/index.d.ts +2 -4
- package/dist/components/Table/index.d.ts.map +1 -1
- package/dist/components/Table/index.js +35 -32
- package/dist/components/Table/plugins/columnResize/index.d.ts.map +1 -1
- package/dist/components/Table/plugins/columnResize/useTableColumnResize.d.ts.map +1 -1
- package/dist/components/Table/plugins/columnSettings/index.d.ts.map +1 -1
- package/dist/components/Table/plugins/columnSettings/useTableColumnSettings.d.ts +1 -1
- package/dist/components/Table/plugins/columnSettings/useTableColumnSettings.d.ts.map +1 -1
- package/dist/components/Table/plugins/columnSettings/useTableColumnSettingsState.d.ts.map +1 -1
- package/dist/components/Table/plugins/filtering/index.d.ts.map +1 -1
- package/dist/components/Table/plugins/filtering/useTableFilterState.d.ts.map +1 -1
- package/dist/components/Table/plugins/filtering/useTableFiltering.d.ts +1 -1
- package/dist/components/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
- package/dist/components/Table/plugins/pagination/index.d.ts +1 -1
- package/dist/components/Table/plugins/pagination/index.d.ts.map +1 -1
- package/dist/components/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
- package/dist/components/Table/plugins/selection/index.d.ts.map +1 -1
- package/dist/components/Table/plugins/selection/useTableSelection.d.ts.map +1 -1
- package/dist/components/Table/plugins/selection/useTableSelectionState.d.ts.map +1 -1
- package/dist/components/Table/plugins/sortable/index.d.ts.map +1 -1
- package/dist/components/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
- package/dist/components/Table/plugins/sortable/useTableSortableState.d.ts.map +1 -1
- package/dist/components/Table/types.d.ts +1 -18
- package/dist/components/Table/types.d.ts.map +1 -1
- package/dist/components/Table/useBaseTablePlugins.d.ts +1 -1
- package/dist/components/Table/useBaseTablePlugins.d.ts.map +1 -1
- package/dist/components/Tabs/Tab.d.ts.map +1 -1
- package/dist/components/Tabs/TabMenu.d.ts.map +1 -1
- package/dist/components/Tabs/TabMenu.recipe.d.ts +21 -0
- package/dist/components/Tabs/TabMenu.recipe.d.ts.map +1 -0
- package/dist/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/components/Tabs/Tabs.recipe.d.ts +65 -0
- package/dist/components/Tabs/Tabs.recipe.d.ts.map +1 -0
- package/dist/components/Tabs/index.cjs +18 -17
- package/dist/components/Tabs/index.d.ts +1 -1
- package/dist/components/Tabs/index.d.ts.map +1 -1
- package/dist/components/Tabs/index.js +13 -12
- package/dist/components/Tag/Tag.d.ts.map +1 -1
- package/dist/components/Tag/Tag.recipe.d.ts +1 -1
- package/dist/components/Tag/index.cjs +10 -7
- package/dist/components/Tag/index.d.ts +1 -1
- package/dist/components/Tag/index.d.ts.map +1 -1
- package/dist/components/Tag/index.js +9 -6
- package/dist/components/TagsInput/TagsInput.d.ts +49 -7
- package/dist/components/TagsInput/TagsInput.d.ts.map +1 -1
- package/dist/components/TagsInput/TagsInput.recipe.d.ts +45 -0
- package/dist/components/TagsInput/TagsInput.recipe.d.ts.map +1 -0
- package/dist/components/TagsInput/index.cjs +19 -17
- package/dist/components/TagsInput/index.d.ts.map +1 -1
- package/dist/components/TagsInput/index.js +18 -16
- package/dist/components/Text/Heading.d.ts +6 -6
- package/dist/components/Text/Heading.d.ts.map +1 -1
- package/dist/components/Text/Text.d.ts +5 -5
- package/dist/components/Text/Text.d.ts.map +1 -1
- package/dist/components/Text/index.cjs +5 -5
- package/dist/components/Text/index.d.ts.map +1 -1
- package/dist/components/Text/index.js +3 -3
- package/dist/components/TextArea/TextArea.d.ts.map +1 -1
- package/dist/components/TextArea/index.cjs +10 -10
- package/dist/components/TextArea/index.d.ts.map +1 -1
- package/dist/components/TextArea/index.js +9 -9
- package/dist/components/TextInput/TextInput.d.ts +5 -0
- package/dist/components/TextInput/TextInput.d.ts.map +1 -1
- package/dist/components/TextInput/index.cjs +16 -14
- package/dist/components/TextInput/index.d.ts +1 -1
- package/dist/components/TextInput/index.d.ts.map +1 -1
- package/dist/components/TextInput/index.js +15 -13
- package/dist/components/Theme/index.cjs +2 -2
- package/dist/components/Theme/index.d.ts.map +1 -1
- package/dist/components/Theme/index.js +1 -1
- package/dist/components/Thumbnail/Thumbnail.recipe.d.ts +1 -1
- package/dist/components/Thumbnail/index.cjs +14 -12
- package/dist/components/Thumbnail/index.d.ts.map +1 -1
- package/dist/components/Thumbnail/index.js +13 -11
- package/dist/components/TimeInput/TimeInput.d.ts +3 -3
- package/dist/components/TimeInput/TimeInput.d.ts.map +1 -1
- package/dist/components/TimeInput/index.cjs +15 -13
- package/dist/components/TimeInput/index.d.ts +1 -1
- package/dist/components/TimeInput/index.d.ts.map +1 -1
- package/dist/components/TimeInput/index.js +14 -12
- package/dist/components/Toast/Toast.d.ts +1 -1
- package/dist/components/Toast/Toast.d.ts.map +1 -1
- package/dist/components/Toast/Toast.recipe.d.ts +1 -1
- package/dist/components/Toast/ToastContext.d.ts.map +1 -1
- package/dist/components/Toast/ToastViewport.d.ts.map +1 -1
- package/dist/components/Toast/index.cjs +15 -13
- package/dist/components/Toast/index.d.ts.map +1 -1
- package/dist/components/Toast/index.js +12 -10
- package/dist/components/Toast/useToast.d.ts.map +1 -1
- package/dist/components/ToggleButton/ToggleButton.d.ts +2 -6
- package/dist/components/ToggleButton/ToggleButton.d.ts.map +1 -1
- package/dist/components/ToggleButton/ToggleButton.recipe.d.ts +20 -0
- package/dist/components/ToggleButton/ToggleButton.recipe.d.ts.map +1 -0
- package/dist/components/ToggleButton/ToggleButtonGroup.d.ts.map +1 -1
- package/dist/components/ToggleButton/index.cjs +8 -8
- package/dist/components/ToggleButton/index.d.ts +1 -1
- package/dist/components/ToggleButton/index.d.ts.map +1 -1
- package/dist/components/ToggleButton/index.js +6 -6
- package/dist/components/Tooltip/Tooltip.d.ts +7 -7
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip/index.cjs +4 -4
- package/dist/components/Tooltip/index.d.ts +1 -1
- package/dist/components/Tooltip/index.d.ts.map +1 -1
- package/dist/components/Tooltip/index.js +2 -2
- package/dist/components/Tooltip/useTooltip.d.ts.map +1 -1
- package/dist/components/TopNav/TopNav.d.ts.map +1 -1
- package/dist/components/TopNav/TopNav.recipe.d.ts +11 -5
- package/dist/components/TopNav/TopNav.recipe.d.ts.map +1 -1
- package/dist/components/TopNav/TopNavContext.d.ts +0 -2
- package/dist/components/TopNav/TopNavContext.d.ts.map +1 -1
- package/dist/components/TopNav/TopNavHeading.d.ts.map +1 -1
- package/dist/components/TopNav/TopNavHeading.recipe.d.ts +4 -0
- package/dist/components/TopNav/TopNavHeading.recipe.d.ts.map +1 -0
- package/dist/components/TopNav/TopNavItem.d.ts +13 -8
- package/dist/components/TopNav/TopNavItem.d.ts.map +1 -1
- package/dist/components/TopNav/index.cjs +21 -21
- package/dist/components/TopNav/index.d.ts +2 -2
- package/dist/components/TopNav/index.d.ts.map +1 -1
- package/dist/components/TopNav/index.js +16 -12
- package/dist/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/components/TreeView/TreeView.recipe.d.ts +4 -0
- package/dist/components/TreeView/TreeView.recipe.d.ts.map +1 -0
- package/dist/components/TreeView/TreeViewBranches.d.ts.map +1 -1
- package/dist/components/TreeView/TreeViewBranches.recipe.d.ts +4 -0
- package/dist/components/TreeView/TreeViewBranches.recipe.d.ts.map +1 -0
- package/dist/components/TreeView/TreeViewItem.d.ts +1 -5
- package/dist/components/TreeView/TreeViewItem.d.ts.map +1 -1
- package/dist/components/TreeView/TreeViewItem.recipe.d.ts +84 -0
- package/dist/components/TreeView/TreeViewItem.recipe.d.ts.map +1 -0
- package/dist/components/TreeView/index.cjs +5 -3
- package/dist/components/TreeView/index.d.ts +1 -1
- package/dist/components/TreeView/index.d.ts.map +1 -1
- package/dist/components/TreeView/index.js +4 -2
- package/dist/index.cjs +290 -289
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +88 -83
- package/dist/index.js.map +1 -1
- package/dist/internal/ActionElement.d.ts +45 -0
- package/dist/internal/ActionElement.d.ts.map +1 -0
- package/dist/internal/HoverLayerTrigger.d.ts +3 -4
- package/dist/internal/HoverLayerTrigger.d.ts.map +1 -1
- package/dist/internal/MobileNav/MobileNav.d.ts.map +1 -1
- package/dist/internal/MobileNav/index.d.ts +2 -2
- package/dist/internal/MobileNav/index.d.ts.map +1 -1
- package/dist/internal/dismissBehavior.d.ts +18 -0
- package/dist/internal/dismissBehavior.d.ts.map +1 -0
- package/dist/internal/index.d.ts +1 -1
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/parseDateInput.d.ts.map +1 -1
- package/dist/internal/plainDate.d.ts.map +1 -1
- package/dist/internal/shallowEqual.d.ts +7 -0
- package/dist/internal/shallowEqual.d.ts.map +1 -0
- package/dist/internal/useBackdropDismiss.d.ts +16 -0
- package/dist/internal/useBackdropDismiss.d.ts.map +1 -0
- package/dist/internal/useConstant.d.ts +8 -0
- package/dist/internal/useConstant.d.ts.map +1 -0
- package/dist/internal/useHoverLayer.d.ts.map +1 -1
- package/dist/internal/useLatest.d.ts +5 -0
- package/dist/internal/useLatest.d.ts.map +1 -0
- package/dist/internal/useLayer.d.ts +67 -2
- package/dist/internal/useLayer.d.ts.map +1 -1
- package/dist/internal/useScrollLock.d.ts +8 -0
- package/dist/internal/useScrollLock.d.ts.map +1 -0
- package/dist/internal/useSelectListbox.d.ts +5 -5
- package/dist/internal/useSelectListbox.d.ts.map +1 -1
- package/dist/internal/useShallowEqualMemo.d.ts +13 -0
- package/dist/internal/useShallowEqualMemo.d.ts.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/themes/presets.d.ts.map +1 -1
- package/package.json +3 -2
- package/dist/chunk-2LABTS4P.js.map +0 -1
- package/dist/chunk-2N6FOSNM.js.map +0 -1
- package/dist/chunk-2OXKEUKG.cjs.map +0 -1
- package/dist/chunk-2P6D43V2.cjs.map +0 -1
- package/dist/chunk-2RKMG2TC.js.map +0 -1
- package/dist/chunk-2XAA3CM5.js.map +0 -1
- package/dist/chunk-3CJC4QE6.js.map +0 -1
- package/dist/chunk-3JPUXC5U.js.map +0 -1
- package/dist/chunk-3ZV3EGGK.cjs.map +0 -1
- package/dist/chunk-4H7X5FGX.js.map +0 -1
- package/dist/chunk-52WQDDWQ.js.map +0 -1
- package/dist/chunk-5D2OR64D.cjs.map +0 -1
- package/dist/chunk-5PX76QOL.cjs +0 -203
- package/dist/chunk-5PX76QOL.cjs.map +0 -1
- package/dist/chunk-5YS43PSQ.cjs.map +0 -1
- package/dist/chunk-6ONAGCCZ.js.map +0 -1
- package/dist/chunk-6XWXBXYE.js.map +0 -1
- package/dist/chunk-7BSFKG7N.js.map +0 -1
- package/dist/chunk-7CCXHH6Y.cjs.map +0 -1
- package/dist/chunk-7U7JMRVF.cjs.map +0 -1
- package/dist/chunk-AFI4V7LI.js.map +0 -1
- package/dist/chunk-AHVHLNHU.cjs.map +0 -1
- package/dist/chunk-AJ6X62AI.js.map +0 -1
- package/dist/chunk-AP7BDTTF.js.map +0 -1
- package/dist/chunk-BLRWA445.cjs.map +0 -1
- package/dist/chunk-BSAZRW6T.js.map +0 -1
- package/dist/chunk-C6EYCIKJ.cjs.map +0 -1
- package/dist/chunk-C732WXKS.cjs.map +0 -1
- package/dist/chunk-CGYZ6QWY.js +0 -142
- package/dist/chunk-CGYZ6QWY.js.map +0 -1
- package/dist/chunk-CK3UJQRI.cjs.map +0 -1
- package/dist/chunk-CKTXDIH4.cjs +0 -2029
- package/dist/chunk-CKTXDIH4.cjs.map +0 -1
- package/dist/chunk-D3LZQ5QS.js.map +0 -1
- package/dist/chunk-DIRVAHOF.cjs.map +0 -1
- package/dist/chunk-DVGLYE3G.cjs +0 -287
- package/dist/chunk-DVGLYE3G.cjs.map +0 -1
- package/dist/chunk-DWUEPOYH.js.map +0 -1
- package/dist/chunk-E2A3GJSN.cjs.map +0 -1
- package/dist/chunk-EALKX3ST.cjs +0 -526
- package/dist/chunk-EALKX3ST.cjs.map +0 -1
- package/dist/chunk-EBDODJ5X.js.map +0 -1
- package/dist/chunk-FB245S6T.cjs.map +0 -1
- package/dist/chunk-FDZQPWFZ.cjs.map +0 -1
- package/dist/chunk-FMLIYHDP.js.map +0 -1
- package/dist/chunk-FNOUX5T2.cjs +0 -145
- package/dist/chunk-FNOUX5T2.cjs.map +0 -1
- package/dist/chunk-FNZOICR4.cjs.map +0 -1
- package/dist/chunk-FP5E5BUM.js.map +0 -1
- package/dist/chunk-G2U2W422.js.map +0 -1
- package/dist/chunk-G2WW52GO.cjs.map +0 -1
- package/dist/chunk-G3KKLGZU.cjs.map +0 -1
- package/dist/chunk-GC5VUTUR.cjs.map +0 -1
- package/dist/chunk-GL7PSN7H.cjs.map +0 -1
- package/dist/chunk-GYVWTH3U.cjs.map +0 -1
- package/dist/chunk-H2CZ6IE5.cjs.map +0 -1
- package/dist/chunk-H7HQYBPH.js +0 -2017
- package/dist/chunk-H7HQYBPH.js.map +0 -1
- package/dist/chunk-HINS4GY6.js.map +0 -1
- package/dist/chunk-HNZWPIJE.js.map +0 -1
- package/dist/chunk-IA5GII7N.cjs.map +0 -1
- package/dist/chunk-J5IRFGUP.js.map +0 -1
- package/dist/chunk-JDAJ2HJQ.js.map +0 -1
- package/dist/chunk-JIVYPJKO.js.map +0 -1
- package/dist/chunk-JJ324PSZ.cjs.map +0 -1
- package/dist/chunk-JTFNNEWR.cjs.map +0 -1
- package/dist/chunk-JYVYCU22.cjs.map +0 -1
- package/dist/chunk-KXIILLQD.cjs.map +0 -1
- package/dist/chunk-L6VSBBPP.js.map +0 -1
- package/dist/chunk-LNT2IFOA.js.map +0 -1
- package/dist/chunk-LO5NZY7N.cjs.map +0 -1
- package/dist/chunk-LQIZSE3O.js.map +0 -1
- package/dist/chunk-LUQVSNQL.cjs.map +0 -1
- package/dist/chunk-LY6Z6A54.js.map +0 -1
- package/dist/chunk-M26XECB2.cjs.map +0 -1
- package/dist/chunk-M2MC3E27.cjs.map +0 -1
- package/dist/chunk-MI5QU37D.js.map +0 -1
- package/dist/chunk-N2TNBDQI.js.map +0 -1
- package/dist/chunk-NFABMGNH.js.map +0 -1
- package/dist/chunk-NHXJVSZZ.cjs.map +0 -1
- package/dist/chunk-O2WICOUK.cjs.map +0 -1
- package/dist/chunk-O32BKXTR.cjs.map +0 -1
- package/dist/chunk-OBWWRRL6.cjs.map +0 -1
- package/dist/chunk-PIZMCOKL.js.map +0 -1
- package/dist/chunk-PQEFVHJZ.cjs.map +0 -1
- package/dist/chunk-QATCDVZ6.cjs.map +0 -1
- package/dist/chunk-QOKEU3DC.cjs.map +0 -1
- package/dist/chunk-QRFDPG34.js.map +0 -1
- package/dist/chunk-QSEDH7T2.js.map +0 -1
- package/dist/chunk-QVNDZZS6.cjs.map +0 -1
- package/dist/chunk-QY6OMQW6.js +0 -285
- package/dist/chunk-QY6OMQW6.js.map +0 -1
- package/dist/chunk-R6CMJMIJ.js +0 -200
- package/dist/chunk-R6CMJMIJ.js.map +0 -1
- package/dist/chunk-RDNMAV5B.js.map +0 -1
- package/dist/chunk-RLOGQBFD.js.map +0 -1
- package/dist/chunk-S7INL5NI.js.map +0 -1
- package/dist/chunk-SBOXHIES.js.map +0 -1
- package/dist/chunk-SOCSUNIM.js.map +0 -1
- package/dist/chunk-SSAYBCAD.js.map +0 -1
- package/dist/chunk-SSOAZZNR.cjs.map +0 -1
- package/dist/chunk-SUH62Z64.js.map +0 -1
- package/dist/chunk-TBOQTPRO.cjs.map +0 -1
- package/dist/chunk-TF7XVTSP.cjs.map +0 -1
- package/dist/chunk-TPB53MHV.cjs.map +0 -1
- package/dist/chunk-U6NH54YD.js.map +0 -1
- package/dist/chunk-UKW2C5RN.js +0 -450
- package/dist/chunk-UKW2C5RN.js.map +0 -1
- package/dist/chunk-UUVLEOSD.js.map +0 -1
- package/dist/chunk-VFGSNR35.js.map +0 -1
- package/dist/chunk-VHKA25IV.cjs.map +0 -1
- package/dist/chunk-VK4O6W2K.cjs +0 -454
- package/dist/chunk-VK4O6W2K.cjs.map +0 -1
- package/dist/chunk-VQ7U3ASC.js.map +0 -1
- package/dist/chunk-VUCMGGU5.js.map +0 -1
- package/dist/chunk-W3C6QQF7.js.map +0 -1
- package/dist/chunk-WBGFFP3G.js.map +0 -1
- package/dist/chunk-WOIWI2UO.js.map +0 -1
- package/dist/chunk-X574M2JB.cjs.map +0 -1
- package/dist/chunk-XLKXFJMU.cjs.map +0 -1
- package/dist/chunk-XXBA3KSH.cjs.map +0 -1
- package/dist/chunk-YHBYVERE.cjs +0 -374
- package/dist/chunk-YHBYVERE.cjs.map +0 -1
- package/dist/chunk-YVHWOKR7.cjs.map +0 -1
- package/dist/chunk-YWGYN6YV.cjs.map +0 -1
- package/dist/chunk-YY6KJO5Z.cjs.map +0 -1
- package/dist/chunk-YYNWZRXZ.js.map +0 -1
- package/dist/chunk-Z4TZAJS3.js.map +0 -1
- package/dist/chunk-ZAX2UJBC.js.map +0 -1
- package/dist/chunk-ZFBQ4R7M.cjs.map +0 -1
- package/dist/chunk-ZQUPAIBS.js.map +0 -1
- package/dist/chunk-ZTWBG2XY.cjs.map +0 -1
- package/dist/components/Schedule/zonedDateTime.d.ts +0 -14
- package/dist/components/Schedule/zonedDateTime.d.ts.map +0 -1
- package/dist/components/Stepper/Step.d.ts +0 -62
- package/dist/components/Stepper/Step.d.ts.map +0 -1
- package/dist/components/Stepper/Step.recipe.d.ts +0 -95
- package/dist/components/Stepper/Step.recipe.d.ts.map +0 -1
- package/dist/components/Stepper/StepperContext.d.ts +0 -10
- package/dist/components/Stepper/StepperContext.d.ts.map +0 -1
- package/dist/components/Table/BaseTable.d.ts +0 -6
- package/dist/components/Table/BaseTable.d.ts.map +0 -1
- package/dist/theme/generate-color-scale.d.ts +0 -6
- package/dist/theme/generate-color-scale.d.ts.map +0 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkPYJX2SBC_cjs = require('./chunk-PYJX2SBC.cjs');
|
|
4
4
|
var chunkVXBVSYPA_cjs = require('./chunk-VXBVSYPA.cjs');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
var
|
|
5
|
+
var chunkR3ZS6FU6_cjs = require('./chunk-R3ZS6FU6.cjs');
|
|
6
|
+
var chunkXPHXAZCE_cjs = require('./chunk-XPHXAZCE.cjs');
|
|
7
|
+
var chunkVXOIOPGZ_cjs = require('./chunk-VXOIOPGZ.cjs');
|
|
8
|
+
var chunkGU65FGY6_cjs = require('./chunk-GU65FGY6.cjs');
|
|
9
9
|
var chunkQAO6QMNQ_cjs = require('./chunk-QAO6QMNQ.cjs');
|
|
10
|
-
var
|
|
10
|
+
var chunkJ4PIYOWT_cjs = require('./chunk-J4PIYOWT.cjs');
|
|
11
11
|
var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
|
|
12
12
|
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
13
13
|
var lucideReact = require('lucide-react');
|
|
@@ -82,9 +82,9 @@ function NumberInput({
|
|
|
82
82
|
}) {
|
|
83
83
|
const inputId = react.useId();
|
|
84
84
|
const descriptionID = chunkQAO6QMNQ_cjs.isReactNode(description) ? `${inputId}-description` : void 0;
|
|
85
|
-
const statusMessageID =
|
|
86
|
-
const describedBy =
|
|
87
|
-
const inputGroup =
|
|
85
|
+
const statusMessageID = chunkXPHXAZCE_cjs.getStatusMessageID(inputId, status);
|
|
86
|
+
const describedBy = chunkXPHXAZCE_cjs.getDescribedBy(descriptionID, statusMessageID);
|
|
87
|
+
const inputGroup = chunkPYJX2SBC_cjs.useInputGroup();
|
|
88
88
|
const effectiveDisabled = isDisabled || inputGroup?.isDisabled === true;
|
|
89
89
|
const size = inputGroup?.size ?? sizeProp;
|
|
90
90
|
const effectiveStatusType = status?.type ?? inputGroup?.statusType;
|
|
@@ -95,7 +95,7 @@ function NumberInput({
|
|
|
95
95
|
}
|
|
96
96
|
return value == null ? "" : String(value);
|
|
97
97
|
}, [pendingInput, value]);
|
|
98
|
-
const necessity =
|
|
98
|
+
const necessity = chunkR3ZS6FU6_cjs.getNecessity(isOptional, isRequired);
|
|
99
99
|
const inputWrapper = /* @__PURE__ */ jsxRuntime.jsxs(
|
|
100
100
|
"div",
|
|
101
101
|
{
|
|
@@ -109,7 +109,7 @@ function NumberInput({
|
|
|
109
109
|
),
|
|
110
110
|
style: inputGroup != null ? style : void 0,
|
|
111
111
|
children: [
|
|
112
|
-
startIcon != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunkVXBVSYPA_cjs.inputStyles.iconSlot, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
112
|
+
startIcon != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunkVXBVSYPA_cjs.inputStyles.iconSlot, children: /* @__PURE__ */ jsxRuntime.jsx(chunkJ4PIYOWT_cjs.Icon, { color: "secondary", icon: startIcon, size: "sm" }) }) : null,
|
|
113
113
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
114
114
|
"input",
|
|
115
115
|
{
|
|
@@ -169,7 +169,7 @@ function NumberInput({
|
|
|
169
169
|
),
|
|
170
170
|
units != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles.units, children: units }) : null,
|
|
171
171
|
hasClear === true && value != null && !effectiveDisabled ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
172
|
-
|
|
172
|
+
chunkVXOIOPGZ_cjs.Button,
|
|
173
173
|
{
|
|
174
174
|
icon: lucideReact.X,
|
|
175
175
|
isIconOnly: true,
|
|
@@ -180,8 +180,8 @@ function NumberInput({
|
|
|
180
180
|
}
|
|
181
181
|
) : null,
|
|
182
182
|
endContent,
|
|
183
|
-
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
184
|
-
status != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunkVXBVSYPA_cjs.inputStyles.iconSlot, children:
|
|
183
|
+
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkGU65FGY6_cjs.Spinner, { size: "sm" }) : null,
|
|
184
|
+
status != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunkVXBVSYPA_cjs.inputStyles.iconSlot, children: chunkXPHXAZCE_cjs.getStatusIcon(status.type) }) : null
|
|
185
185
|
]
|
|
186
186
|
}
|
|
187
187
|
);
|
|
@@ -189,7 +189,7 @@ function NumberInput({
|
|
|
189
189
|
return inputWrapper;
|
|
190
190
|
}
|
|
191
191
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
192
|
-
|
|
192
|
+
chunkR3ZS6FU6_cjs.Field,
|
|
193
193
|
{
|
|
194
194
|
className,
|
|
195
195
|
description,
|
|
@@ -210,5 +210,5 @@ function NumberInput({
|
|
|
210
210
|
NumberInput.displayName = "NumberInput";
|
|
211
211
|
|
|
212
212
|
exports.NumberInput = NumberInput;
|
|
213
|
-
//# sourceMappingURL=chunk-
|
|
214
|
-
//# sourceMappingURL=chunk-
|
|
213
|
+
//# sourceMappingURL=chunk-QTOFQB26.cjs.map
|
|
214
|
+
//# sourceMappingURL=chunk-QTOFQB26.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/NumberInput/NumberInput.tsx"],"names":["css","useId","isReactNode","getStatusMessageID","getDescribedBy","useInputGroup","useState","useMemo","getNecessity","jsxs","cx","inputRecipe","jsx","inputStyles","Icon","Button","X","Spinner","getStatusIcon","Field"],"mappings":"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","file":"chunk-QTOFQB26.cjs","sourcesContent":["import {X} from 'lucide-react';\nimport {\n useId,\n useMemo,\n useState,\n type ChangeEvent,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {Button} from 'components/Button';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from 'components/Field';\nimport {inputRecipe, inputStyles} from 'components/Field/inputStyles';\nimport {\n getDescribedBy,\n getStatusIcon,\n getStatusMessageID,\n} from 'components/Field/inputUtils';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport {useInputGroup} from 'components/InputGroup';\nimport {Spinner} from 'components/Spinner';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\nimport {css} from 'styled-system/css';\n\ntype NumberInputBaseProps = {\n /**\n * HTML autocomplete attribute value.\n */\n autoComplete?: string;\n /**\n * Additional CSS class names applied to the input wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: ReactNode;\n /**\n * Content rendered after the input, before the status icon.\n */\n endContent?: ReactNode;\n /**\n * Whether to focus the input on mount.\n * @default false\n */\n hasAutoFocus?: boolean;\n /**\n * HTML name attribute.\n */\n htmlName?: string;\n /**\n * Whether the input is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to restrict input to integer values only.\n * @default false\n */\n isIntegerOnly?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Whether the input is in a loading state.\n * @default false\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon rendered beside the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Maximum allowed value.\n */\n max?: number | null;\n /**\n * Minimum allowed value.\n */\n min?: number | null;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called when Enter is pressed.\n */\n onEnter?: () => void;\n /**\n * Called when the input receives focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Keyboard event handler for the input.\n */\n onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;\n /**\n * Placeholder text.\n */\n placeholder?: string;\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Visual size.\n * @default 'md'\n */\n size?: InputSize;\n /**\n * Icon shown before the input.\n */\n startIcon?: IconComponent;\n /**\n * Validation status displayed below the input.\n */\n status?: InputStatus;\n /**\n * Step increment for the number input.\n */\n step?: number | null;\n /**\n * Inline styles applied to the input wrapper.\n */\n style?: CSSProperties;\n /**\n * Unit label displayed after the input value.\n */\n units?: string | null;\n /**\n * Controlled numeric value.\n */\n value: number | null;\n} & FieldNecessity;\n\ntype NumberInputNonClearableProps = NumberInputBaseProps & {\n /**\n * Whether to show a clear button.\n */\n hasClear?: false;\n /**\n * Called when the numeric value changes.\n */\n onChange: (value: number) => void;\n};\n\ntype NumberInputClearableProps = NumberInputBaseProps & {\n /**\n * Whether to show a clear button.\n */\n hasClear: true;\n /**\n * Called when the numeric value changes or is cleared.\n */\n onChange: (value: number | null) => void;\n};\n\nexport type NumberInputProps =\n | NumberInputClearableProps\n | NumberInputNonClearableProps;\n\nconst styles = {\n units: css({\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'sm',\n }),\n} as const;\n\nfunction parseNumberInput(\n input: string,\n options: {isIntegerOnly: boolean},\n): number | null {\n const trimmed = input.trim();\n if (trimmed === '' || trimmed === '-') {\n return null;\n }\n const number = Number(trimmed);\n if (!Number.isFinite(number)) {\n return null;\n }\n if (options.isIntegerOnly && !Number.isInteger(number)) {\n return null;\n }\n return number;\n}\n\nfunction clampValue(\n value: number,\n min?: number | null,\n max?: number | null,\n): number {\n let clamped = value;\n if (min != null && clamped < min) {\n clamped = min;\n }\n if (max != null && clamped > max) {\n clamped = max;\n }\n return clamped;\n}\n\n/**\n * Numeric input field with optional min/max bounds and step control.\n */\nexport function NumberInput({\n label,\n value,\n onChange,\n size: sizeProp = 'md',\n description,\n endContent,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isIntegerOnly = false,\n isLoading = false,\n hasClear,\n hasAutoFocus = false,\n htmlName,\n autoComplete,\n min,\n max,\n step,\n units,\n status,\n labelIcon,\n labelTooltip,\n startIcon,\n placeholder,\n onFocus,\n onBlur,\n onEnter,\n onKeyDown,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: NumberInputProps): React.JSX.Element {\n const inputId = useId();\n const descriptionID = isReactNode(description)\n ? `${inputId}-description`\n : undefined;\n const statusMessageID = getStatusMessageID(inputId, status);\n const describedBy = getDescribedBy(descriptionID, statusMessageID);\n const inputGroup = useInputGroup();\n const effectiveDisabled = isDisabled || inputGroup?.isDisabled === true;\n const size = inputGroup?.size ?? sizeProp;\n const effectiveStatusType = status?.type ?? inputGroup?.statusType;\n const [pendingInput, setPendingInput] = useState<string | null>(null);\n const displayValue = useMemo(() => {\n if (pendingInput != null) {\n return pendingInput;\n }\n return value == null ? '' : String(value);\n }, [pendingInput, value]);\n\n const necessity = getNecessity(isOptional, isRequired);\n\n const inputWrapper = (\n <div\n className={cx(\n inputRecipe({\n size,\n status: effectiveStatusType,\n isDisabled: effectiveDisabled,\n }),\n inputGroup != null ? className : undefined,\n )}\n style={inputGroup != null ? style : undefined}>\n {startIcon != null ? (\n <span className={inputStyles.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <input\n aria-busy={isLoading || undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || undefined}\n aria-label={inputGroup != null ? label : undefined}\n aria-required={isRequired ?? undefined}\n autoComplete={autoComplete}\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={inputStyles.control}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={effectiveDisabled}\n id={inputId}\n max={max ?? undefined}\n min={min ?? undefined}\n name={htmlName}\n onBlur={event => {\n if (pendingInput != null) {\n const parsed = parseNumberInput(pendingInput, {isIntegerOnly});\n if (parsed != null) {\n const clamped = clampValue(parsed, min, max);\n if (clamped !== value) {\n onChange(clamped);\n }\n }\n setPendingInput(null);\n }\n onBlur?.(event);\n }}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n const nextValue = event.target.value;\n setPendingInput(nextValue);\n const parsed = parseNumberInput(nextValue, {isIntegerOnly});\n if (parsed != null) {\n const clamped = clampValue(parsed, min, max);\n if (clamped !== value) {\n onChange(clamped);\n }\n }\n }}\n onFocus={onFocus}\n onKeyDown={event => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n onEnter?.();\n }\n onKeyDown?.(event);\n }}\n placeholder={placeholder}\n ref={ref}\n required={isRequired ?? undefined}\n step={step ?? undefined}\n type=\"number\"\n value={displayValue}\n />\n {units != null ? <span className={styles.units}>{units}</span> : null}\n {hasClear === true && value != null && !effectiveDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={() => onChange(null)}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n {endContent}\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {status != null ? (\n <span className={inputStyles.iconSlot}>\n {getStatusIcon(status.type)}\n </span>\n ) : null}\n </div>\n );\n\n if (inputGroup != null) {\n return inputWrapper;\n }\n\n return (\n <Field\n className={className}\n description={description}\n descriptionID={descriptionID}\n inputId={inputId}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n {...necessity}\n label={label}\n labelIcon={labelIcon}\n labelTooltip={labelTooltip}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n style={style}>\n {inputWrapper}\n </Field>\n );\n}\n\nNumberInput.displayName = 'NumberInput';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkSKZNSOB7_cjs = require('./chunk-SKZNSOB7.cjs');
|
|
4
4
|
var chunkQAO6QMNQ_cjs = require('./chunk-QAO6QMNQ.cjs');
|
|
5
5
|
var chunkZ6RT3WPE_cjs = require('./chunk-Z6RT3WPE.cjs');
|
|
6
6
|
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
@@ -187,7 +187,7 @@ function ListItem({
|
|
|
187
187
|
const hasMarkers = listStyle !== "none";
|
|
188
188
|
const classes = listItemRecipe({ hasCounter, hasDividers });
|
|
189
189
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
190
|
-
|
|
190
|
+
chunkSKZNSOB7_cjs.Item,
|
|
191
191
|
{
|
|
192
192
|
as: "li",
|
|
193
193
|
className: chunkSPDVNY2Z_cjs.cx(classes.item, className),
|
|
@@ -212,5 +212,5 @@ ListItem.displayName = "ListItem";
|
|
|
212
212
|
|
|
213
213
|
exports.List = List;
|
|
214
214
|
exports.ListItem = ListItem;
|
|
215
|
-
//# sourceMappingURL=chunk-
|
|
216
|
-
//# sourceMappingURL=chunk-
|
|
215
|
+
//# sourceMappingURL=chunk-QYZXTIB2.cjs.map
|
|
216
|
+
//# sourceMappingURL=chunk-QYZXTIB2.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/List/List.recipe.ts","../src/components/List/ListContext.tsx","../src/components/List/List.tsx","../src/components/List/ListItem.tsx"],"names":["sva","createContext","useId","useMemo","jsx","isReactNode","cx","jsxs","use","Item"],"mappings":"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","file":"chunk-TQA3BI7M.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nconst markerSize = '6px';\n\nexport const listRecipe = sva({\n slots: ['root', 'header', 'list'],\n base: {\n root: {\n display: 'flex',\n flexDirection: 'column',\n },\n header: {\n mb: '2',\n },\n list: {\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n m: 0,\n p: 0,\n listStyleType: 'none',\n },\n },\n variants: {\n hasDividers: {\n true: {list: {gap: 0}},\n },\n hasCounter: {\n true: {list: {counterReset: 'silver-list'}},\n },\n },\n defaultVariants: {\n hasDividers: false,\n hasCounter: false,\n },\n});\n\nexport type ListVariants = RecipeVariantProps<typeof listRecipe>;\n\nexport const listItemRecipe = sva({\n slots: ['item', 'markerContainer', 'dot', 'circle', 'number'],\n base: {\n item: {},\n markerContainer: {\n alignSelf: 'baseline',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n w: '4',\n mt: `calc((1em * 1.5 - ${markerSize}) / 2)`,\n },\n dot: {\n w: markerSize,\n h: markerSize,\n borderRadius: 'full',\n bg: 'fg',\n },\n circle: {\n w: markerSize,\n h: markerSize,\n borderRadius: 'full',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'fg',\n bg: 'transparent',\n },\n number: {\n alignSelf: 'baseline',\n flexShrink: 0,\n color: 'fg',\n fontFamily: 'body',\n fontSize: 'md',\n lineHeight: '1.5',\n w: '4',\n _before: {\n content: 'counter(silver-list) \".\"',\n },\n },\n },\n variants: {\n hasCounter: {\n true: {\n item: {counterIncrement: 'silver-list'},\n },\n },\n hasDividers: {\n true: {\n item: {\n borderBlockEndWidth: 'default',\n borderBlockEndStyle: 'solid',\n borderBlockEndColor: 'border',\n borderRadius: 0,\n _last: {\n borderBlockEndWidth: 0,\n },\n },\n },\n },\n },\n defaultVariants: {\n hasCounter: false,\n hasDividers: false,\n },\n});\n\nexport type ListItemVariants = RecipeVariantProps<typeof listItemRecipe>;\n","import {createContext} from 'react';\n\nexport type ListStyle = 'none' | 'disc' | 'decimal' | 'circle';\n\nexport interface ListContextValue {\n hasDividers: boolean;\n listStyle: ListStyle;\n}\n\nexport const ListContext = createContext<ListContextValue | null>(null);\nListContext.displayName = 'ListContext';\n","import {\n useId,\n useMemo,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {listRecipe} from './List.recipe';\nimport {ListContext, type ListStyle} from './ListContext';\n\nexport type {ListStyle};\n\nexport interface ListProps {\n /**\n * List items.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the list element.\n */\n className?: string;\n /**\n * Test ID applied to the list element.\n */\n 'data-testid'?: string;\n /**\n * Whether to show dividers between list items.\n * @default false\n */\n hasDividers?: boolean;\n /**\n * Header content rendered above and associated with the list.\n */\n header?: ReactNode;\n /**\n * List marker style. `decimal` renders an ordered list.\n * @default 'none'\n */\n listStyle?: ListStyle;\n /**\n * Ref forwarded to the list element.\n */\n ref?: Ref<HTMLUListElement | HTMLOListElement>;\n /**\n * Starting number for ordered lists.\n * @default 1\n */\n start?: number;\n /**\n * Inline styles applied to the list element.\n */\n style?: CSSProperties;\n}\n\n/**\n * Semantic vertical list container with optional dividers, markers, and header.\n */\nexport function List({\n children,\n className,\n 'data-testid': dataTestId,\n hasDividers = false,\n header,\n listStyle = 'none',\n ref,\n start,\n style,\n}: ListProps): React.JSX.Element {\n const headerId = useId();\n const isOrdered = listStyle === 'decimal';\n const hasCounter = isOrdered;\n const Component = isOrdered ? 'ol' : 'ul';\n const counterReset =\n hasCounter && start != null && start !== 1\n ? `silver-list ${start - 1}`\n : undefined;\n const contextValue = useMemo(\n () => ({hasDividers, listStyle}),\n [hasDividers, listStyle],\n );\n\n const classes = listRecipe({hasDividers, hasCounter});\n\n const listElement = (\n <Component\n aria-labelledby={isReactNode(header) ? headerId : undefined}\n className={cx(classes.list, className)}\n data-testid={dataTestId}\n ref={ref as Ref<HTMLUListElement & HTMLOListElement>}\n role={listStyle === 'none' && !isOrdered ? 'list' : undefined}\n start={isOrdered ? start : undefined}\n style={{counterReset, ...style}}>\n {children}\n </Component>\n );\n\n return (\n <ListContext value={contextValue}>\n {!isReactNode(header) ? (\n listElement\n ) : (\n <div className={classes.root}>\n <div className={classes.header} id={headerId}>\n {header}\n </div>\n {listElement}\n </div>\n )}\n </ListContext>\n );\n}\n\nList.displayName = 'List';\n","import {\n use,\n type CSSProperties,\n type MouseEventHandler,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport {Item} from '../Item';\nimport {listItemRecipe} from './List.recipe';\nimport {ListContext, type ListStyle} from './ListContext';\n\nexport interface ListItemProps {\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 * Supporting text shown below the label.\n */\n description?: ReactNode;\n /**\n * Trailing content rendered after the label area.\n */\n endContent?: ReactNode;\n /**\n * Link URL. When set, the content area renders as a link.\n */\n href?: string;\n /**\n * Whether the item is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether the item is selected.\n * @default false\n */\n isSelected?: boolean;\n /**\n * Primary item label.\n */\n label: ReactNode;\n /**\n * Click handler for interactive items.\n */\n onClick?: MouseEventHandler<HTMLElement>;\n /**\n * Ref forwarded to the list item.\n */\n ref?: Ref<HTMLLIElement>;\n /**\n * Link relationship.\n */\n rel?: string;\n /**\n * Content rendered before the label area.\n */\n startContent?: ReactNode;\n /**\n * Inline styles applied to the list item.\n */\n style?: CSSProperties;\n /**\n * Link target.\n */\n target?: string;\n}\n\ntype MarkerClasses = ReturnType<typeof listItemRecipe>;\n\nfunction Marker({\n classes,\n listStyle,\n}: {\n classes: MarkerClasses;\n listStyle: ListStyle;\n}): React.JSX.Element | null {\n if (listStyle === 'disc') {\n return (\n <span className={classes.markerContainer}>\n <span className={classes.dot} />\n </span>\n );\n }\n\n if (listStyle === 'circle') {\n return (\n <span className={classes.markerContainer}>\n <span className={classes.circle} />\n </span>\n );\n }\n\n if (listStyle === 'decimal') {\n return <span className={classes.number} />;\n }\n\n return null;\n}\n\n/**\n * Structured list item built on the shared `Item` primitive.\n */\nexport function ListItem({\n className,\n 'data-testid': dataTestId,\n description,\n endContent,\n href,\n isDisabled = false,\n isSelected = false,\n label,\n onClick,\n ref,\n rel,\n startContent,\n style,\n target,\n}: ListItemProps): React.JSX.Element {\n const context = use(ListContext);\n const hasDividers = context?.hasDividers ?? false;\n const listStyle = context?.listStyle ?? 'none';\n const hasCounter = listStyle === 'decimal';\n const hasMarkers = listStyle !== 'none';\n const classes = listItemRecipe({hasCounter, hasDividers});\n\n return (\n <Item\n as=\"li\"\n className={cx(classes.item, className)}\n data-testid={dataTestId}\n description={description}\n endContent={endContent}\n href={href}\n isDisabled={isDisabled}\n isSelected={isSelected}\n label={label}\n leadingContent={\n hasMarkers ? (\n <Marker classes={classes} listStyle={listStyle} />\n ) : undefined\n }\n onClick={onClick}\n ref={ref}\n rel={rel}\n startContent={startContent}\n style={style}\n target={target}\n />\n );\n}\n\nListItem.displayName = 'ListItem';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/List/List.recipe.ts","../src/components/List/ListContext.tsx","../src/components/List/List.tsx","../src/components/List/ListItem.tsx"],"names":["sva","createContext","useId","useMemo","jsx","isReactNode","cx","jsxs","use","Item"],"mappings":";;;;;;;;;;AAEA,IAAM,UAAA,GAAa,KAAA;AAEZ,IAAM,aAAaA,qBAAA,CAAI;AAAA,EAC5B,KAAA,EAAO,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAM,CAAA;AAAA,EAChC,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,MACJ,OAAA,EAAS,MAAA;AAAA,MACT,aAAA,EAAe;AAAA,KACjB;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,EAAA,EAAI;AAAA,KACN;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,OAAA,EAAS,MAAA;AAAA,MACT,aAAA,EAAe,QAAA;AAAA,MACf,GAAA,EAAK,KAAA;AAAA,MACL,CAAA,EAAG,CAAA;AAAA,MACH,CAAA,EAAG,CAAA;AAAA,MACH,aAAA,EAAe;AAAA;AACjB,GACF;AAAA,EACA,QAAA,EAAU;AAAA,IACR,WAAA,EAAa;AAAA,MACX,MAAM,EAAC,IAAA,EAAM,EAAC,GAAA,EAAK,GAAC;AAAC,KACvB;AAAA,IACA,UAAA,EAAY;AAAA,MACV,MAAM,EAAC,IAAA,EAAM,EAAC,YAAA,EAAc,eAAa;AAAC;AAC5C,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,WAAA,EAAa,KAAA;AAAA,IACb,UAAA,EAAY;AAAA;AAEhB,CAAC,CAAA;AAIM,IAAM,iBAAiBA,qBAAA,CAAI;AAAA,EAChC,OAAO,CAAC,MAAA,EAAQ,iBAAA,EAAmB,KAAA,EAAO,UAAU,QAAQ,CAAA;AAAA,EAC5D,IAAA,EAAM;AAAA,IACJ,MAAM,EAAC;AAAA,IACP,eAAA,EAAiB;AAAA,MACf,SAAA,EAAW,UAAA;AAAA,MACX,OAAA,EAAS,MAAA;AAAA,MACT,UAAA,EAAY,QAAA;AAAA,MACZ,cAAA,EAAgB,QAAA;AAAA,MAChB,UAAA,EAAY,CAAA;AAAA,MACZ,CAAA,EAAG,GAAA;AAAA,MACH,EAAA,EAAI,qBAAqB,UAAU,CAAA,MAAA;AAAA,KACrC;AAAA,IACA,GAAA,EAAK;AAAA,MACH,CAAA,EAAG,UAAA;AAAA,MACH,CAAA,EAAG,UAAA;AAAA,MACH,YAAA,EAAc,MAAA;AAAA,MACd,EAAA,EAAI;AAAA,KACN;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,CAAA,EAAG,UAAA;AAAA,MACH,CAAA,EAAG,UAAA;AAAA,MACH,YAAA,EAAc,MAAA;AAAA,MACd,WAAA,EAAa,SAAA;AAAA,MACb,WAAA,EAAa,OAAA;AAAA,MACb,WAAA,EAAa,IAAA;AAAA,MACb,EAAA,EAAI;AAAA,KACN;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,SAAA,EAAW,UAAA;AAAA,MACX,UAAA,EAAY,CAAA;AAAA,MACZ,KAAA,EAAO,IAAA;AAAA,MACP,UAAA,EAAY,MAAA;AAAA,MACZ,QAAA,EAAU,IAAA;AAAA,MACV,UAAA,EAAY,KAAA;AAAA,MACZ,CAAA,EAAG,GAAA;AAAA,MACH,OAAA,EAAS;AAAA,QACP,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA,EACA,QAAA,EAAU;AAAA,IACR,UAAA,EAAY;AAAA,MACV,IAAA,EAAM;AAAA,QACJ,IAAA,EAAM,EAAC,gBAAA,EAAkB,aAAA;AAAa;AACxC,KACF;AAAA,IACA,WAAA,EAAa;AAAA,MACX,IAAA,EAAM;AAAA,QACJ,IAAA,EAAM;AAAA,UACJ,mBAAA,EAAqB,SAAA;AAAA,UACrB,mBAAA,EAAqB,OAAA;AAAA,UACrB,mBAAA,EAAqB,QAAA;AAAA,UACrB,YAAA,EAAc,CAAA;AAAA,UACd,KAAA,EAAO;AAAA,YACL,mBAAA,EAAqB;AAAA;AACvB;AACF;AACF;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,UAAA,EAAY,KAAA;AAAA,IACZ,WAAA,EAAa;AAAA;AAEjB,CAAC,CAAA;AC/FM,IAAM,WAAA,GAAcC,oBAAuC,IAAI,CAAA;AACtE,WAAA,CAAY,WAAA,GAAc,aAAA;ACiDnB,SAAS,IAAA,CAAK;AAAA,EACnB,QAAA;AAAA,EACA,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,WAAA,GAAc,KAAA;AAAA,EACd,MAAA;AAAA,EACA,SAAA,GAAY,MAAA;AAAA,EACZ,GAAA;AAAA,EACA,KAAA;AAAA,EACA;AACF,CAAA,EAAiC;AAC/B,EAAA,MAAM,WAAWC,WAAA,EAAM;AACvB,EAAA,MAAM,YAAY,SAAA,KAAc,SAAA;AAChC,EAAA,MAAM,UAAA,GAAa,SAAA;AACnB,EAAA,MAAM,SAAA,GAAY,YAAY,IAAA,GAAO,IAAA;AACrC,EAAA,MAAM,YAAA,GACJ,cAAc,KAAA,IAAS,IAAA,IAAQ,UAAU,CAAA,GACrC,CAAA,YAAA,EAAe,KAAA,GAAQ,CAAC,CAAA,CAAA,GACxB,MAAA;AACN,EAAA,MAAM,YAAA,GAAeC,aAAA;AAAA,IACnB,OAAO,EAAC,WAAA,EAAa,SAAA,EAAS,CAAA;AAAA,IAC9B,CAAC,aAAa,SAAS;AAAA,GACzB;AAEA,EAAA,MAAM,OAAA,GAAU,UAAA,CAAW,EAAC,WAAA,EAAa,YAAW,CAAA;AAEpD,EAAA,MAAM,WAAA,mBACJC,cAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,iBAAA,EAAiBC,6BAAA,CAAY,MAAM,CAAA,GAAI,QAAA,GAAW,MAAA;AAAA,MAClD,SAAA,EAAWC,oBAAA,CAAG,OAAA,CAAQ,IAAA,EAAM,SAAS,CAAA;AAAA,MACrC,aAAA,EAAa,UAAA;AAAA,MACb,GAAA;AAAA,MACA,IAAA,EAAM,SAAA,KAAc,MAAA,IAAU,CAAC,YAAY,MAAA,GAAS,MAAA;AAAA,MACpD,KAAA,EAAO,YAAY,KAAA,GAAQ,MAAA;AAAA,MAC3B,KAAA,EAAO,EAAC,YAAA,EAAc,GAAG,KAAA,EAAK;AAAA,MAC7B;AAAA;AAAA,GACH;AAGF,EAAA,uBACEF,cAAA,CAAC,WAAA,EAAA,EAAY,KAAA,EAAO,YAAA,EACjB,QAAA,EAAA,CAACC,6BAAA,CAAY,MAAM,CAAA,GAClB,WAAA,mBAEAE,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,QAAQ,IAAA,EACtB,QAAA,EAAA;AAAA,oBAAAH,cAAA,CAAC,SAAI,SAAA,EAAW,OAAA,CAAQ,MAAA,EAAQ,EAAA,EAAI,UACjC,QAAA,EAAA,MAAA,EACH,CAAA;AAAA,IACC;AAAA,GAAA,EACH,CAAA,EAEJ,CAAA;AAEJ;AAEA,IAAA,CAAK,WAAA,GAAc,MAAA;ACvCnB,SAAS,MAAA,CAAO;AAAA,EACd,OAAA;AAAA,EACA;AACF,CAAA,EAG6B;AAC3B,EAAA,IAAI,cAAc,MAAA,EAAQ;AACxB,IAAA,uBACEA,cAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,OAAA,CAAQ,eAAA,EACvB,QAAA,kBAAAA,cAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,OAAA,CAAQ,GAAA,EAAK,CAAA,EAChC,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,cAAc,QAAA,EAAU;AAC1B,IAAA,uBACEA,cAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,OAAA,CAAQ,eAAA,EACvB,QAAA,kBAAAA,cAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,OAAA,CAAQ,MAAA,EAAQ,CAAA,EACnC,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,cAAc,SAAA,EAAW;AAC3B,IAAA,uBAAOA,cAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,QAAQ,MAAA,EAAQ,CAAA;AAAA,EAC1C;AAEA,EAAA,OAAO,IAAA;AACT;AAKO,SAAS,QAAA,CAAS;AAAA,EACvB,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,WAAA;AAAA,EACA,UAAA;AAAA,EACA,IAAA;AAAA,EACA,UAAA,GAAa,KAAA;AAAA,EACb,UAAA,GAAa,KAAA;AAAA,EACb,KAAA;AAAA,EACA,OAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,YAAA;AAAA,EACA,KAAA;AAAA,EACA;AACF,CAAA,EAAqC;AACnC,EAAA,MAAM,OAAA,GAAUI,UAAI,WAAW,CAAA;AAC/B,EAAA,MAAM,WAAA,GAAc,SAAS,WAAA,IAAe,KAAA;AAC5C,EAAA,MAAM,SAAA,GAAY,SAAS,SAAA,IAAa,MAAA;AACxC,EAAA,MAAM,aAAa,SAAA,KAAc,SAAA;AACjC,EAAA,MAAM,aAAa,SAAA,KAAc,MAAA;AACjC,EAAA,MAAM,OAAA,GAAU,cAAA,CAAe,EAAC,UAAA,EAAY,aAAY,CAAA;AAExD,EAAA,uBACEJ,cAAAA;AAAA,IAACK,sBAAA;AAAA,IAAA;AAAA,MACC,EAAA,EAAG,IAAA;AAAA,MACH,SAAA,EAAWH,oBAAA,CAAG,OAAA,CAAQ,IAAA,EAAM,SAAS,CAAA;AAAA,MACrC,aAAA,EAAa,UAAA;AAAA,MACb,WAAA;AAAA,MACA,UAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA;AAAA,MACA,UAAA;AAAA,MACA,KAAA;AAAA,MACA,gBACE,UAAA,mBACEF,eAAC,MAAA,EAAA,EAAO,OAAA,EAAkB,WAAsB,CAAA,GAC9C,MAAA;AAAA,MAEN,OAAA;AAAA,MACA,GAAA;AAAA,MACA,GAAA;AAAA,MACA,YAAA;AAAA,MACA,KAAA;AAAA,MACA;AAAA;AAAA,GACF;AAEJ;AAEA,QAAA,CAAS,WAAA,GAAc,UAAA","file":"chunk-QYZXTIB2.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nconst markerSize = '6px';\n\nexport const listRecipe = sva({\n slots: ['root', 'header', 'list'],\n base: {\n root: {\n display: 'flex',\n flexDirection: 'column',\n },\n header: {\n mb: '2',\n },\n list: {\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n m: 0,\n p: 0,\n listStyleType: 'none',\n },\n },\n variants: {\n hasDividers: {\n true: {list: {gap: 0}},\n },\n hasCounter: {\n true: {list: {counterReset: 'silver-list'}},\n },\n },\n defaultVariants: {\n hasDividers: false,\n hasCounter: false,\n },\n});\n\nexport type ListVariants = RecipeVariantProps<typeof listRecipe>;\n\nexport const listItemRecipe = sva({\n slots: ['item', 'markerContainer', 'dot', 'circle', 'number'],\n base: {\n item: {},\n markerContainer: {\n alignSelf: 'baseline',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n w: '4',\n mt: `calc((1em * 1.5 - ${markerSize}) / 2)`,\n },\n dot: {\n w: markerSize,\n h: markerSize,\n borderRadius: 'full',\n bg: 'fg',\n },\n circle: {\n w: markerSize,\n h: markerSize,\n borderRadius: 'full',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'fg',\n bg: 'transparent',\n },\n number: {\n alignSelf: 'baseline',\n flexShrink: 0,\n color: 'fg',\n fontFamily: 'body',\n fontSize: 'md',\n lineHeight: '1.5',\n w: '4',\n _before: {\n content: 'counter(silver-list) \".\"',\n },\n },\n },\n variants: {\n hasCounter: {\n true: {\n item: {counterIncrement: 'silver-list'},\n },\n },\n hasDividers: {\n true: {\n item: {\n borderBlockEndWidth: 'default',\n borderBlockEndStyle: 'solid',\n borderBlockEndColor: 'border',\n borderRadius: 0,\n _last: {\n borderBlockEndWidth: 0,\n },\n },\n },\n },\n },\n defaultVariants: {\n hasCounter: false,\n hasDividers: false,\n },\n});\n\nexport type ListItemVariants = RecipeVariantProps<typeof listItemRecipe>;\n","import {createContext} from 'react';\n\nexport type ListStyle = 'none' | 'disc' | 'decimal' | 'circle';\n\nexport interface ListContextValue {\n hasDividers: boolean;\n listStyle: ListStyle;\n}\n\nexport const ListContext = createContext<ListContextValue | null>(null);\nListContext.displayName = 'ListContext';\n","import {\n useId,\n useMemo,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {listRecipe} from 'components/List/List.recipe';\nimport {ListContext, type ListStyle} from 'components/List/ListContext';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\n\nexport type {ListStyle};\n\nexport interface ListProps {\n /**\n * List items.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the list element.\n */\n className?: string;\n /**\n * Test ID applied to the list element.\n */\n 'data-testid'?: string;\n /**\n * Whether to show dividers between list items.\n * @default false\n */\n hasDividers?: boolean;\n /**\n * Header content rendered above and associated with the list.\n */\n header?: ReactNode;\n /**\n * List marker style. `decimal` renders an ordered list.\n * @default 'none'\n */\n listStyle?: ListStyle;\n /**\n * Ref forwarded to the list element.\n */\n ref?: Ref<HTMLUListElement | HTMLOListElement>;\n /**\n * Starting number for ordered lists.\n * @default 1\n */\n start?: number;\n /**\n * Inline styles applied to the list element.\n */\n style?: CSSProperties;\n}\n\n/**\n * Semantic vertical list container with optional dividers, markers, and header.\n */\nexport function List({\n children,\n className,\n 'data-testid': dataTestId,\n hasDividers = false,\n header,\n listStyle = 'none',\n ref,\n start,\n style,\n}: ListProps): React.JSX.Element {\n const headerId = useId();\n const isOrdered = listStyle === 'decimal';\n const hasCounter = isOrdered;\n const Component = isOrdered ? 'ol' : 'ul';\n const counterReset =\n hasCounter && start != null && start !== 1\n ? `silver-list ${start - 1}`\n : undefined;\n const contextValue = useMemo(\n () => ({hasDividers, listStyle}),\n [hasDividers, listStyle],\n );\n\n const classes = listRecipe({hasDividers, hasCounter});\n\n const listElement = (\n <Component\n aria-labelledby={isReactNode(header) ? headerId : undefined}\n className={cx(classes.list, className)}\n data-testid={dataTestId}\n ref={ref as Ref<HTMLUListElement & HTMLOListElement>}\n role={listStyle === 'none' && !isOrdered ? 'list' : undefined}\n start={isOrdered ? start : undefined}\n style={{counterReset, ...style}}>\n {children}\n </Component>\n );\n\n return (\n <ListContext value={contextValue}>\n {!isReactNode(header) ? (\n listElement\n ) : (\n <div className={classes.root}>\n <div className={classes.header} id={headerId}>\n {header}\n </div>\n {listElement}\n </div>\n )}\n </ListContext>\n );\n}\n\nList.displayName = 'List';\n","import {\n use,\n type CSSProperties,\n type MouseEventHandler,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {Item} from 'components/Item';\nimport {listItemRecipe} from 'components/List/List.recipe';\nimport {ListContext, type ListStyle} from 'components/List/ListContext';\nimport {cx} from 'internal/cx';\n\nexport interface ListItemProps {\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 * Supporting text shown below the label.\n */\n description?: ReactNode;\n /**\n * Trailing content rendered after the label area.\n */\n endContent?: ReactNode;\n /**\n * Link URL. When set, the content area renders as a link.\n */\n href?: string;\n /**\n * Whether the item is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether the item is selected.\n * @default false\n */\n isSelected?: boolean;\n /**\n * Primary item label.\n */\n label: ReactNode;\n /**\n * Click handler for interactive items.\n */\n onClick?: MouseEventHandler<HTMLElement>;\n /**\n * Ref forwarded to the list item.\n */\n ref?: Ref<HTMLLIElement>;\n /**\n * Link relationship.\n */\n rel?: string;\n /**\n * Content rendered before the label area.\n */\n startContent?: ReactNode;\n /**\n * Inline styles applied to the list item.\n */\n style?: CSSProperties;\n /**\n * Link target.\n */\n target?: string;\n}\n\ntype MarkerClasses = ReturnType<typeof listItemRecipe>;\n\nfunction Marker({\n classes,\n listStyle,\n}: {\n classes: MarkerClasses;\n listStyle: ListStyle;\n}): React.JSX.Element | null {\n if (listStyle === 'disc') {\n return (\n <span className={classes.markerContainer}>\n <span className={classes.dot} />\n </span>\n );\n }\n\n if (listStyle === 'circle') {\n return (\n <span className={classes.markerContainer}>\n <span className={classes.circle} />\n </span>\n );\n }\n\n if (listStyle === 'decimal') {\n return <span className={classes.number} />;\n }\n\n return null;\n}\n\n/**\n * Structured list item built on the shared `Item` primitive.\n */\nexport function ListItem({\n className,\n 'data-testid': dataTestId,\n description,\n endContent,\n href,\n isDisabled = false,\n isSelected = false,\n label,\n onClick,\n ref,\n rel,\n startContent,\n style,\n target,\n}: ListItemProps): React.JSX.Element {\n const context = use(ListContext);\n const hasDividers = context?.hasDividers ?? false;\n const listStyle = context?.listStyle ?? 'none';\n const hasCounter = listStyle === 'decimal';\n const hasMarkers = listStyle !== 'none';\n const classes = listItemRecipe({hasCounter, hasDividers});\n\n return (\n <Item\n as=\"li\"\n className={cx(classes.item, className)}\n data-testid={dataTestId}\n description={description}\n endContent={endContent}\n href={href}\n isDisabled={isDisabled}\n isSelected={isSelected}\n label={label}\n leadingContent={\n hasMarkers ? (\n <Marker classes={classes} listStyle={listStyle} />\n ) : undefined\n }\n onClick={onClick}\n ref={ref}\n rel={rel}\n startContent={startContent}\n style={style}\n target={target}\n />\n );\n}\n\nListItem.displayName = 'ListItem';\n"]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chunkXLNRO3S6_cjs = require('./chunk-XLNRO3S6.cjs');
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
4
|
+
var chunk2MXK2SDR_cjs = require('./chunk-2MXK2SDR.cjs');
|
|
5
|
+
var chunkMHAXS4GO_cjs = require('./chunk-MHAXS4GO.cjs');
|
|
6
|
+
var chunkGJZAGTPV_cjs = require('./chunk-GJZAGTPV.cjs');
|
|
7
7
|
var chunkQAO6QMNQ_cjs = require('./chunk-QAO6QMNQ.cjs');
|
|
8
|
-
var
|
|
8
|
+
var chunkJ4PIYOWT_cjs = require('./chunk-J4PIYOWT.cjs');
|
|
9
9
|
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
10
10
|
var lucideReact = require('lucide-react');
|
|
11
11
|
var jsxRuntime = require('react/jsx-runtime');
|
|
@@ -55,18 +55,18 @@ function Field({
|
|
|
55
55
|
...LabelComponent === "label" ? { htmlFor: inputId } : void 0,
|
|
56
56
|
id: labelId,
|
|
57
57
|
children: [
|
|
58
|
-
labelIcon != null ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
59
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
60
|
-
statusText != null ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
58
|
+
labelIcon != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkJ4PIYOWT_cjs.Icon, { color: "secondary", icon: labelIcon, size: "sm" }) : null,
|
|
59
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkMHAXS4GO_cjs.Text, { as: "span", color: "inherit", type: "label", children: label }),
|
|
60
|
+
statusText != null ? /* @__PURE__ */ jsxRuntime.jsxs(chunkMHAXS4GO_cjs.Text, { as: "span", className: classes.indicator, type: "supporting", children: [
|
|
61
61
|
/* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", children: " \xB7 " }),
|
|
62
62
|
statusText
|
|
63
63
|
] }) : null,
|
|
64
|
-
chunkQAO6QMNQ_cjs.isReactNode(labelTooltip) ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
64
|
+
chunkQAO6QMNQ_cjs.isReactNode(labelTooltip) ? /* @__PURE__ */ jsxRuntime.jsx(chunkGJZAGTPV_cjs.Tooltip, { content: labelTooltip, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: classes.tooltipIcon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkJ4PIYOWT_cjs.Icon, { icon: lucideReact.Info, size: "sm" }) }) }) : null
|
|
65
65
|
]
|
|
66
66
|
}
|
|
67
67
|
);
|
|
68
68
|
const descriptionNode = chunkQAO6QMNQ_cjs.isReactNode(description) ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
69
|
-
|
|
69
|
+
chunkMHAXS4GO_cjs.Text,
|
|
70
70
|
{
|
|
71
71
|
as: "span",
|
|
72
72
|
color: "secondary",
|
|
@@ -93,7 +93,7 @@ function Field({
|
|
|
93
93
|
ref,
|
|
94
94
|
style,
|
|
95
95
|
children: [
|
|
96
|
-
isLabelHidden ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
96
|
+
isLabelHidden ? /* @__PURE__ */ jsxRuntime.jsxs(chunk2MXK2SDR_cjs.VisuallyHidden, { children: [
|
|
97
97
|
labelNode,
|
|
98
98
|
descriptionNode
|
|
99
99
|
] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -115,5 +115,5 @@ Field.displayName = "Field";
|
|
|
115
115
|
|
|
116
116
|
exports.Field = Field;
|
|
117
117
|
exports.getNecessity = getNecessity;
|
|
118
|
-
//# sourceMappingURL=chunk-
|
|
119
|
-
//# sourceMappingURL=chunk-
|
|
118
|
+
//# sourceMappingURL=chunk-R3ZS6FU6.cjs.map
|
|
119
|
+
//# sourceMappingURL=chunk-R3ZS6FU6.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Field/Field.tsx"],"names":["isReactNode","fieldRecipe","jsxs","Icon","jsx","Text","Tooltip","Info","cx","VisuallyHidden","Fragment"],"mappings":"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","file":"chunk-R3ZS6FU6.cjs","sourcesContent":["import {Info} from 'lucide-react';\nimport type {CSSProperties, ReactNode, Ref} from 'react';\nimport {fieldRecipe} from 'components/Field/Field.recipe';\nimport type {InputStatusType} from 'components/Field/types';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport {Text} from 'components/Text';\nimport {Tooltip} from 'components/Tooltip';\nimport {VisuallyHidden} from 'internal/VisuallyHidden';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\n\nexport type FieldStatusVariant = 'attached' | 'detached';\n\nexport interface FieldStatus {\n /**\n * Optional status text displayed below the input.\n */\n message?: string;\n /**\n * Status message ID used by `aria-describedby`.\n */\n messageID?: string;\n /**\n * Validation state for the field.\n */\n type: InputStatusType;\n}\n\ninterface FieldBaseProps {\n /**\n * The form control rendered inside the field.\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 * Supporting text rendered between the label and control.\n */\n description?: ReactNode;\n /**\n * ID for the description element.\n */\n descriptionID?: string;\n /**\n * ID of the associated control.\n */\n inputId: string;\n /**\n * Whether the associated control is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label and description.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Field label text.\n */\n label: string;\n /**\n * HTML element used for the label. Use 'span' for group controls\n * (e.g., radiogroup) where `htmlFor` cannot target a labelable element.\n * @default 'label'\n */\n labelAs?: 'label' | 'span';\n /**\n * Optional icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * ID applied to the label element, useful for `aria-labelledby`.\n */\n labelId?: string;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Validation status displayed below the control.\n */\n status?: FieldStatus;\n /**\n * How the status message is positioned.\n * @default 'attached'\n */\n statusVariant?: FieldStatusVariant;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n}\n\n/**\n * Controls whether a field displays an \"Optional\" or \"Required\" indicator.\n * The two options are mutually exclusive — a field cannot be both optional\n * and required at the same time. TypeScript enforces this at the type level.\n */\nexport type FieldNecessity =\n | {isOptional?: false; isRequired?: false}\n | {isOptional: true; isRequired?: false}\n | {isOptional?: false; isRequired: true};\n\nexport type FieldProps = FieldBaseProps & FieldNecessity;\n\n/**\n * Narrows individually-typed `isOptional`/`isRequired` values back into\n * a valid `FieldNecessity` union member. Useful when forwarding necessity\n * props that were destructured from a component's own props (which widens\n * the discriminated union to `boolean | undefined`).\n */\nexport function getNecessity(\n isOptional: boolean | undefined,\n isRequired: boolean | undefined,\n): FieldNecessity {\n if (isOptional === true) {\n return {isOptional: true};\n }\n if (isRequired === true) {\n return {isRequired: true};\n }\n return {};\n}\n\n/**\n * A form field wrapper that renders a label, description, control slot, and validation status.\n */\nexport function Field({\n children,\n label,\n isLabelHidden = false,\n description,\n inputId,\n descriptionID,\n isOptional = false,\n isRequired = false,\n isDisabled = false,\n labelAs: LabelComponent = 'label',\n labelIcon,\n labelId,\n labelTooltip,\n status,\n statusVariant = 'attached',\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: FieldProps): React.JSX.Element {\n const resolvedDescriptionID =\n descriptionID ??\n (isReactNode(description) ? `${inputId}-description` : undefined);\n const resolvedStatusID =\n status?.messageID ??\n (status?.message != null ? `${inputId}-status` : undefined);\n const statusText = isOptional ? 'Optional' : isRequired ? 'Required' : null;\n const classes = fieldRecipe({\n isDisabled,\n statusType: status?.type,\n statusVariant,\n });\n const labelNode = (\n <LabelComponent\n className={classes.label}\n {...(LabelComponent === 'label' ? {htmlFor: inputId} : undefined)}\n id={labelId}>\n {labelIcon != null ? (\n <Icon color=\"secondary\" icon={labelIcon} size=\"sm\" />\n ) : null}\n <Text as=\"span\" color=\"inherit\" type=\"label\">\n {label}\n </Text>\n {statusText != null ? (\n <Text as=\"span\" className={classes.indicator} type=\"supporting\">\n <span aria-hidden=\"true\"> · </span>\n {statusText}\n </Text>\n ) : null}\n {isReactNode(labelTooltip) ? (\n <Tooltip content={labelTooltip}>\n <span className={classes.tooltipIcon}>\n <Icon icon={Info} size=\"sm\" />\n </span>\n </Tooltip>\n ) : null}\n </LabelComponent>\n );\n const descriptionNode = isReactNode(description) ? (\n <Text\n as=\"span\"\n color=\"secondary\"\n id={resolvedDescriptionID}\n type=\"supporting\">\n {description}\n </Text>\n ) : null;\n const statusNode =\n status?.message != null ? (\n <div\n aria-live={status.type === 'error' ? 'assertive' : 'polite'}\n className={classes.status}\n id={resolvedStatusID}\n role={status.type === 'error' ? 'alert' : 'status'}>\n {status.message}\n </div>\n ) : null;\n\n return (\n <div\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {isLabelHidden ? (\n <VisuallyHidden>\n {labelNode}\n {descriptionNode}\n </VisuallyHidden>\n ) : (\n <>\n {labelNode}\n {descriptionNode}\n </>\n )}\n {statusVariant === 'attached' ? (\n <div className={classes.inputWrapper}>\n {children}\n {statusNode}\n </div>\n ) : (\n <>\n {children}\n {statusNode}\n </>\n )}\n </div>\n );\n}\n\nField.displayName = 'Field';\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
3
|
+
var chunkVXOIOPGZ_cjs = require('./chunk-VXOIOPGZ.cjs');
|
|
4
|
+
var chunk2MXK2SDR_cjs = require('./chunk-2MXK2SDR.cjs');
|
|
5
|
+
var chunkMHAXS4GO_cjs = require('./chunk-MHAXS4GO.cjs');
|
|
6
|
+
var chunkVK7DXUGH_cjs = require('./chunk-VK7DXUGH.cjs');
|
|
7
7
|
var chunkQAO6QMNQ_cjs = require('./chunk-QAO6QMNQ.cjs');
|
|
8
8
|
var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
|
|
9
9
|
var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
|
|
@@ -79,28 +79,35 @@ var styles = {
|
|
|
79
79
|
borderWidth: "default",
|
|
80
80
|
borderStyle: "solid",
|
|
81
81
|
borderColor: "border"
|
|
82
|
-
}),
|
|
83
|
-
closeButtonWrapper: chunkRU6JG3FS_cjs.css({
|
|
84
|
-
position: "absolute",
|
|
85
|
-
w: "1px",
|
|
86
|
-
h: "1px",
|
|
87
|
-
overflow: "hidden",
|
|
88
|
-
clipPath: "inset(50%)"
|
|
89
82
|
})
|
|
90
83
|
};
|
|
91
84
|
function usePopover({
|
|
92
85
|
onShow,
|
|
93
86
|
onHide,
|
|
94
|
-
|
|
87
|
+
isDismissable = true,
|
|
95
88
|
hasAutoFocus = true,
|
|
96
89
|
hasSurface = true,
|
|
97
90
|
hasCloseButton = true,
|
|
98
91
|
closeButtonLabel = "Close popover",
|
|
99
92
|
label,
|
|
100
|
-
role = "dialog"
|
|
93
|
+
role = "dialog",
|
|
94
|
+
layerId
|
|
101
95
|
} = {}) {
|
|
102
96
|
const skipAutoFocusRef = react.useRef(false);
|
|
103
|
-
const
|
|
97
|
+
const isDismissingRef = react.useRef(false);
|
|
98
|
+
const handleHide = react.useCallback(() => {
|
|
99
|
+
isDismissingRef.current = true;
|
|
100
|
+
requestAnimationFrame(() => {
|
|
101
|
+
isDismissingRef.current = false;
|
|
102
|
+
});
|
|
103
|
+
onHide?.();
|
|
104
|
+
}, [onHide]);
|
|
105
|
+
const layer = chunkVK7DXUGH_cjs.useLayer({
|
|
106
|
+
isDismissable,
|
|
107
|
+
id: layerId,
|
|
108
|
+
onShow,
|
|
109
|
+
onHide: handleHide
|
|
110
|
+
});
|
|
104
111
|
const { containerRef: contentRef, focusFirst } = useFocusTrap({
|
|
105
112
|
isActive: layer.isOpen,
|
|
106
113
|
onEscape: layer.hide
|
|
@@ -122,6 +129,9 @@ function usePopover({
|
|
|
122
129
|
[layer]
|
|
123
130
|
);
|
|
124
131
|
const toggle = react.useCallback(() => {
|
|
132
|
+
if (isDismissingRef.current) {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
125
135
|
if (layer.isOpen) {
|
|
126
136
|
layer.hide();
|
|
127
137
|
return;
|
|
@@ -140,8 +150,8 @@ function usePopover({
|
|
|
140
150
|
role,
|
|
141
151
|
children: [
|
|
142
152
|
children,
|
|
143
|
-
hasCloseButton ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
144
|
-
|
|
153
|
+
hasCloseButton ? /* @__PURE__ */ jsxRuntime.jsx(chunk2MXK2SDR_cjs.VisuallyHidden, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
154
|
+
chunkVXOIOPGZ_cjs.Button,
|
|
145
155
|
{
|
|
146
156
|
icon: lucideReact.X,
|
|
147
157
|
isIconOnly: true,
|
|
@@ -232,11 +242,13 @@ function Popover({
|
|
|
232
242
|
alignment = "start",
|
|
233
243
|
isOpen,
|
|
234
244
|
onOpenChange,
|
|
245
|
+
offsetX,
|
|
246
|
+
offsetY,
|
|
235
247
|
isEnabled = true,
|
|
236
248
|
width,
|
|
237
249
|
label,
|
|
238
250
|
hasCloseButton,
|
|
239
|
-
|
|
251
|
+
isDismissable,
|
|
240
252
|
closeButtonLabel,
|
|
241
253
|
padding,
|
|
242
254
|
ref,
|
|
@@ -244,21 +256,19 @@ function Popover({
|
|
|
244
256
|
className,
|
|
245
257
|
style,
|
|
246
258
|
role,
|
|
259
|
+
id,
|
|
247
260
|
"data-testid": dataTestId
|
|
248
261
|
}) {
|
|
249
262
|
const wrapperRef = react.useRef(null);
|
|
250
263
|
const isControlled = isOpen !== void 0;
|
|
251
|
-
const lastHideTimeRef = react.useRef(0);
|
|
252
264
|
const popover = usePopover({
|
|
253
265
|
closeButtonLabel,
|
|
254
266
|
hasAutoFocus,
|
|
255
267
|
hasCloseButton,
|
|
256
|
-
|
|
268
|
+
isDismissable,
|
|
257
269
|
label,
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
onOpenChange?.(false);
|
|
261
|
-
},
|
|
270
|
+
layerId: id,
|
|
271
|
+
onHide: () => onOpenChange?.(false),
|
|
262
272
|
onShow: () => onOpenChange?.(true),
|
|
263
273
|
role
|
|
264
274
|
});
|
|
@@ -266,9 +276,6 @@ function Popover({
|
|
|
266
276
|
if (!isEnabled) {
|
|
267
277
|
return;
|
|
268
278
|
}
|
|
269
|
-
if (chunkR37R7DEV_cjs.nowMonotonicMilliseconds() - lastHideTimeRef.current < 50) {
|
|
270
|
-
return;
|
|
271
|
-
}
|
|
272
279
|
popover.toggle();
|
|
273
280
|
}, [isEnabled, popover]);
|
|
274
281
|
const handleTriggerKeyDown = react.useCallback(
|
|
@@ -311,7 +318,7 @@ function Popover({
|
|
|
311
318
|
},
|
|
312
319
|
[handleTriggerClick, handleTriggerKeyDown, popover.triggerProps]
|
|
313
320
|
);
|
|
314
|
-
|
|
321
|
+
chunkVK7DXUGH_cjs.useIsomorphicLayoutEffect(() => {
|
|
315
322
|
const anchor = anchorRef?.current ?? wrapperRef.current;
|
|
316
323
|
if (anchor == null) {
|
|
317
324
|
return;
|
|
@@ -329,7 +336,7 @@ function Popover({
|
|
|
329
336
|
detach();
|
|
330
337
|
};
|
|
331
338
|
}, [anchorRef, attachTrigger, isEnabled, popover]);
|
|
332
|
-
|
|
339
|
+
chunkVK7DXUGH_cjs.useIsomorphicLayoutEffect(() => {
|
|
333
340
|
if (!isControlled) {
|
|
334
341
|
return;
|
|
335
342
|
}
|
|
@@ -340,7 +347,7 @@ function Popover({
|
|
|
340
347
|
}
|
|
341
348
|
}, [isControlled, isOpen, popover]);
|
|
342
349
|
const widthStyle = width == null ? void 0 : { width: typeof width === "number" ? `${width}px` : width };
|
|
343
|
-
const paddingStyle = padding != null && padding !== 0 ? { padding:
|
|
350
|
+
const paddingStyle = padding != null && padding !== 0 ? { padding: chunkMHAXS4GO_cjs.token(`spacing.${padding}`) } : void 0;
|
|
344
351
|
const popoverContent = popover.render(
|
|
345
352
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
346
353
|
"div",
|
|
@@ -355,6 +362,8 @@ function Popover({
|
|
|
355
362
|
{
|
|
356
363
|
placement,
|
|
357
364
|
alignment,
|
|
365
|
+
offsetX,
|
|
366
|
+
offsetY,
|
|
358
367
|
className: styles2.gap[placement],
|
|
359
368
|
style: { minWidth: "anchor-size(width)" }
|
|
360
369
|
}
|
|
@@ -371,5 +380,5 @@ Popover.displayName = "Popover";
|
|
|
371
380
|
|
|
372
381
|
exports.Popover = Popover;
|
|
373
382
|
exports.usePopover = usePopover;
|
|
374
|
-
//# sourceMappingURL=chunk-
|
|
375
|
-
//# sourceMappingURL=chunk-
|
|
383
|
+
//# sourceMappingURL=chunk-RAMDISDK.cjs.map
|
|
384
|
+
//# sourceMappingURL=chunk-RAMDISDK.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/internal/useFocusTrap.ts","../src/components/Popover/usePopover.tsx","../src/components/Popover/Popover.tsx"],"names":["useRef","useCallback","useEffect","css","useLayer","jsxs","VisuallyHidden","jsx","Button","X","useMemo","styles","useIsomorphicLayoutEffect","token","cx","isReactNode","Fragment"],"mappings":"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","file":"chunk-RAMDISDK.cjs","sourcesContent":["import {useCallback, useEffect, useRef} from 'react';\n\nconst FOCUSABLE_SELECTOR =\n 'button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"]):not([disabled])';\n\nexport interface UseFocusTrapOptions {\n isActive: boolean;\n onEscape?: () => void;\n}\n\nexport interface UseFocusTrapReturn<T extends HTMLElement = HTMLElement> {\n containerRef: React.RefObject<T | null>;\n focusFirst: () => void;\n}\n\nfunction getFocusableElements(container: HTMLElement): HTMLElement[] {\n return Array.from(\n container.querySelectorAll<HTMLElement>(FOCUSABLE_SELECTOR),\n );\n}\n\nfunction focusFirstDescendant(container: HTMLElement): void {\n getFocusableElements(container)[0]?.focus();\n}\n\nfunction focusLastDescendant(container: HTMLElement): void {\n const elements = getFocusableElements(container);\n elements.at(-1)?.focus();\n}\n\nexport function useFocusTrap<T extends HTMLElement = HTMLElement>({\n isActive,\n onEscape,\n}: UseFocusTrapOptions): UseFocusTrapReturn<T> {\n const containerRef = useRef<T>(null);\n\n const focusFirst = useCallback(() => {\n if (containerRef.current != null) {\n focusFirstDescendant(containerRef.current);\n }\n }, []);\n\n useEffect(() => {\n if (!isActive) {\n return;\n }\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const container = containerRef.current;\n if (container == null) {\n return;\n }\n\n if (event.key === 'Escape') {\n event.preventDefault();\n onEscape?.();\n return;\n }\n\n if (event.key !== 'Tab') {\n return;\n }\n\n const focusable = getFocusableElements(container);\n if (focusable.length === 0) {\n return;\n }\n\n const first = focusable[0];\n const last = focusable.at(-1);\n if (event.shiftKey && document.activeElement === first) {\n event.preventDefault();\n focusLastDescendant(container);\n } else if (!event.shiftKey && document.activeElement === last) {\n event.preventDefault();\n focusFirstDescendant(container);\n }\n };\n\n document.addEventListener('keydown', handleKeyDown);\n return () => document.removeEventListener('keydown', handleKeyDown);\n }, [isActive, onEscape]);\n\n return {containerRef, focusFirst};\n}\n","import {X} from 'lucide-react';\nimport {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n type ReactNode,\n type RefCallback,\n} from 'react';\nimport {Button} from 'components/Button';\nimport {VisuallyHidden} from 'internal';\nimport {useFocusTrap} from 'internal/useFocusTrap';\nimport {useLayer, type ContextRenderProps} from 'internal/useLayer';\nimport {css} from 'styled-system/css';\n\nexport type {LayerAlignment, LayerPlacement} from 'internal/useLayer';\n\nexport interface UsePopoverOptions {\n /**\n * Accessible label for the close button rendered when `hasCloseButton` is\n * `true`. Defaults to `'Close popover'`.\n */\n closeButtonLabel?: string;\n /**\n * When `true`, focus moves to the first focusable element inside the popover\n * when it opens. Defaults to `true`.\n */\n hasAutoFocus?: boolean;\n /**\n * When `true`, renders a visually hidden close button inside the popover so\n * assistive technology users can dismiss it. Defaults to `true`.\n */\n hasCloseButton?: boolean;\n /**\n * When `true`, wraps the content in a styled surface (background, border,\n * shadow). Set to `false` to render unstyled content. Defaults to `true`.\n */\n hasSurface?: boolean;\n /**\n * When `true`, the popover can be dismissed by clicking outside or pressing\n * Escape. Defaults to `true`.\n */\n isDismissable?: boolean;\n /**\n * Accessible label applied to the popover content via `aria-label`.\n */\n label?: string;\n /**\n * Id applied to the underlying layer element. Falls back to a generated id.\n * Supply this when another element needs a stable `aria-controls` reference\n * to the popover.\n */\n layerId?: string;\n /**\n * Called after the popover is hidden, including via light dismiss.\n */\n onHide?: () => void;\n /**\n * Called after the popover is shown.\n */\n onShow?: () => void;\n /**\n * ARIA role for the popover content. Defaults to `'dialog'`; use `'menu'` for\n * menu-style popovers.\n */\n role?: 'dialog' | 'menu';\n}\n\nexport interface UsePopoverReturn {\n /**\n * CSS anchor name tying the popover content to the trigger for positioning.\n */\n anchorId: string;\n /**\n * Ref attached to the popover content element.\n */\n contentRef: React.RefObject<HTMLDivElement | null>;\n /**\n * Hides the popover.\n */\n hide: () => void;\n /**\n * Id of the underlying layer element, matching `triggerProps['aria-controls']`.\n */\n id: string;\n /**\n * Whether the popover is currently open.\n */\n isOpen: boolean;\n /**\n * Renders the given children inside the popover layer.\n */\n render: (children: ReactNode, props?: ContextRenderProps) => ReactNode;\n /**\n * Shows the popover. Pass `isAutoFocusSkipped` to suppress moving focus into\n * the content for this open.\n */\n show: (options?: {isAutoFocusSkipped?: boolean}) => void;\n /**\n * Toggles the popover between open and closed.\n */\n toggle: () => void;\n /**\n * ARIA props to spread onto the trigger element.\n */\n triggerProps: {\n 'aria-controls': string;\n 'aria-expanded': boolean;\n 'aria-haspopup': 'dialog' | 'menu';\n };\n /**\n * Ref callback to attach to the trigger element for anchor positioning.\n */\n triggerRef: RefCallback<HTMLElement>;\n}\n\nconst styles = {\n surface: css({\n position: 'relative',\n bg: 'bg',\n borderRadius: 'md',\n boxShadow: 'lg',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border',\n }),\n} as const;\n\nexport function usePopover({\n onShow,\n onHide,\n isDismissable = true,\n hasAutoFocus = true,\n hasSurface = true,\n hasCloseButton = true,\n closeButtonLabel = 'Close popover',\n label,\n role = 'dialog',\n layerId,\n}: UsePopoverOptions = {}): UsePopoverReturn {\n const skipAutoFocusRef = useRef(false);\n // Guards against a light-dismiss close immediately re-opening the popover.\n // When the trigger is clicked while the popover is open, the browser's native\n // light dismiss closes it (firing `onHide`) *before* the trigger's own click\n // handler runs `toggle()` — which would otherwise re-open it. The flag is\n // cleared on the next animation frame: the browser never paints mid-gesture,\n // so it is reliably still set when the spurious click arrives, yet cleared\n // before any genuine later click.\n const isDismissingRef = useRef(false);\n\n const handleHide = useCallback(() => {\n isDismissingRef.current = true;\n requestAnimationFrame(() => {\n isDismissingRef.current = false;\n });\n onHide?.();\n }, [onHide]);\n\n const layer = useLayer({\n isDismissable,\n id: layerId,\n onShow,\n onHide: handleHide,\n });\n const {containerRef: contentRef, focusFirst} = useFocusTrap<HTMLDivElement>({\n isActive: layer.isOpen,\n onEscape: layer.hide,\n });\n\n useEffect(() => {\n if (!layer.isOpen) {\n skipAutoFocusRef.current = false;\n return;\n }\n\n if (hasAutoFocus && !skipAutoFocusRef.current) {\n requestAnimationFrame(() => focusFirst());\n }\n }, [focusFirst, hasAutoFocus, layer.isOpen]);\n\n const show = useCallback(\n (options?: {isAutoFocusSkipped?: boolean}) => {\n skipAutoFocusRef.current = options?.isAutoFocusSkipped ?? false;\n layer.show();\n },\n [layer],\n );\n\n const toggle = useCallback(() => {\n if (isDismissingRef.current) {\n return;\n }\n\n if (layer.isOpen) {\n layer.hide();\n return;\n }\n\n show();\n }, [layer, show]);\n\n const render = useCallback(\n (children: ReactNode, props?: ContextRenderProps): ReactNode => {\n return layer.render(\n <div\n aria-label={label}\n className={hasSurface ? styles.surface : undefined}\n ref={contentRef}\n role={role}>\n {children}\n {hasCloseButton ? (\n <VisuallyHidden>\n <Button\n icon={X}\n isIconOnly\n label={closeButtonLabel}\n onClick={layer.hide}\n size=\"sm\"\n variant=\"ghost\"\n />\n </VisuallyHidden>\n ) : null}\n </div>,\n {\n ...props,\n className: props?.className,\n },\n );\n },\n [\n closeButtonLabel,\n contentRef,\n hasCloseButton,\n hasSurface,\n label,\n layer,\n role,\n ],\n );\n\n const triggerProps = useMemo(\n () => ({\n 'aria-controls': layer.id,\n 'aria-expanded': layer.isOpen,\n 'aria-haspopup': role,\n }),\n [layer.id, layer.isOpen, role],\n );\n\n return useMemo(\n () => ({\n anchorId: layer.anchorId,\n contentRef,\n hide: layer.hide,\n id: layer.id,\n isOpen: layer.isOpen,\n render,\n show,\n toggle,\n triggerProps,\n triggerRef: layer.ref,\n }),\n [\n contentRef,\n layer.anchorId,\n layer.hide,\n layer.id,\n layer.isOpen,\n layer.ref,\n render,\n show,\n toggle,\n triggerProps,\n ],\n );\n}\n","import {\n useCallback,\n useRef,\n type CSSProperties,\n type ReactNode,\n type Ref,\n type RefObject,\n} from 'react';\nimport {usePopover} from 'components/Popover/usePopover';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\nimport type {SpacingToken} from 'internal/spacingTokens';\nimport {useIsomorphicLayoutEffect} from 'internal/useIsomorphicLayoutEffect';\nimport type {LayerAlignment, LayerPlacement} from 'internal/useLayer';\nimport {css} from 'styled-system/css';\nimport {token} from 'styled-system/tokens';\n\nexport interface PopoverProps {\n /**\n * Alignment along the placement axis.\n * @default 'start'\n */\n alignment?: LayerAlignment;\n /**\n * External trigger element. When provided without children, Popover attaches\n * click and ARIA behavior directly to this element.\n */\n anchorRef?: RefObject<HTMLElement | null>;\n /**\n * Trigger content. Must contain a `<button>` or `[role=\"button\"]`.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the popover content.\n */\n className?: string;\n /**\n * Label for the hidden close button.\n * @default 'Close popover'\n */\n closeButtonLabel?: string;\n /**\n * Content displayed inside the popover dialog.\n */\n content: ReactNode;\n /**\n * Test ID applied to the popover content.\n */\n 'data-testid'?: string;\n /**\n * Whether to focus the first focusable item after opening.\n * @default true\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to include a keyboard-accessible close button.\n * @default true\n */\n hasCloseButton?: boolean;\n /**\n * Id applied to the popover content element. Falls back to a generated id.\n * Supply this when another element needs a stable `aria-controls` reference\n * to the popover.\n */\n id?: string;\n /**\n * Whether clicking outside or pressing Escape closes the popover.\n * @default true\n */\n isDismissable?: boolean;\n /**\n * Whether trigger interactions open the popover.\n * @default true\n */\n isEnabled?: boolean;\n /**\n * Controlled open state.\n */\n isOpen?: boolean;\n /**\n * Accessible label for the popover dialog.\n */\n label?: string;\n /**\n * Gap in pixels between the popover and its trigger along the inline axis\n * (for `start`/`end` placements). Applied as a logical margin so it stays on\n * the trigger-facing side even when the popover flips.\n */\n offsetX?: number;\n /**\n * Gap in pixels between the popover and its trigger along the block axis (for\n * `above`/`below` placements). Applied as a logical margin so it stays on the\n * trigger-facing side even when the popover flips.\n */\n offsetY?: number;\n /**\n * Callback fired when open state changes.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Inner padding of the popover content.\n * @default 0\n */\n padding?: SpacingToken;\n /**\n * Position relative to the trigger.\n * @default 'below'\n */\n placement?: LayerPlacement;\n /**\n * Ref forwarded to the popover content element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * ARIA role for the floating content.\n * @default 'dialog'\n */\n role?: 'dialog' | 'menu';\n /**\n * Inline styles applied to the popover content.\n */\n style?: CSSProperties;\n /**\n * Width of the popover content.\n */\n width?: number | string;\n}\n\nconst BUTTON_SELECTOR = 'button, [role=\"button\"]';\n\nconst styles = {\n anchor: css({\n display: 'inline-flex',\n }),\n content: css({}),\n gap: {\n above: css({mb: '1'}),\n below: css({mt: '1'}),\n start: css({mr: '1'}),\n end: css({ml: '1'}),\n },\n} as const;\n\nfunction findTriggerButton(element: HTMLElement): HTMLElement | null {\n if (element.matches(BUTTON_SELECTOR)) {\n return element;\n }\n\n return element.querySelector<HTMLElement>(BUTTON_SELECTOR);\n}\n\n/**\n * A click-triggered floating dialog anchored to a trigger element.\n */\nexport function Popover({\n anchorRef,\n children,\n content,\n placement = 'below',\n alignment = 'start',\n isOpen,\n onOpenChange,\n offsetX,\n offsetY,\n isEnabled = true,\n width,\n label,\n hasCloseButton,\n isDismissable,\n closeButtonLabel,\n padding,\n ref,\n hasAutoFocus,\n className,\n style,\n role,\n id,\n 'data-testid': dataTestId,\n}: PopoverProps): React.JSX.Element {\n const wrapperRef = useRef<HTMLDivElement>(null);\n const isControlled = isOpen !== undefined;\n\n const popover = usePopover({\n closeButtonLabel,\n hasAutoFocus,\n hasCloseButton,\n isDismissable,\n label,\n layerId: id,\n onHide: () => onOpenChange?.(false),\n onShow: () => onOpenChange?.(true),\n role,\n });\n\n const handleTriggerClick = useCallback(() => {\n if (!isEnabled) {\n return;\n }\n\n popover.toggle();\n }, [isEnabled, popover]);\n\n const handleTriggerKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n handleTriggerClick();\n }\n },\n [handleTriggerClick],\n );\n\n // ARIA and listeners are applied imperatively because the trigger button can\n // be any element the consumer renders — nested anywhere inside `children`, or\n // an entirely external element via `anchorRef` — so Popover cannot inject\n // props through JSX. This is safe: React only reconciles attributes present\n // in its own virtual DOM, so it never clobbers these imperatively-set ones on\n // re-render. The only dynamic attribute, `aria-expanded`, stays in sync\n // because `popover.triggerProps` is memoized on the open state, so this\n // callback (and the effect below that re-runs it) re-applies the fresh value\n // on every toggle. Keep `triggerProps` in the dep arrays or that sync breaks.\n const attachTrigger = useCallback(\n (button: HTMLElement) => {\n button.setAttribute(\n 'aria-haspopup',\n popover.triggerProps['aria-haspopup'],\n );\n button.setAttribute(\n 'aria-expanded',\n String(popover.triggerProps['aria-expanded']),\n );\n button.setAttribute(\n 'aria-controls',\n popover.triggerProps['aria-controls'],\n );\n button.addEventListener('click', handleTriggerClick);\n\n const needsKeyDown =\n button.tagName !== 'BUTTON' && button.getAttribute('role') === 'button';\n if (needsKeyDown) {\n button.addEventListener('keydown', handleTriggerKeyDown);\n }\n\n return () => {\n button.removeAttribute('aria-haspopup');\n button.removeAttribute('aria-expanded');\n button.removeAttribute('aria-controls');\n button.removeEventListener('click', handleTriggerClick);\n if (needsKeyDown) {\n button.removeEventListener('keydown', handleTriggerKeyDown);\n }\n };\n },\n [handleTriggerClick, handleTriggerKeyDown, popover.triggerProps],\n );\n\n useIsomorphicLayoutEffect(() => {\n const anchor = anchorRef?.current ?? wrapperRef.current;\n if (anchor == null) {\n return;\n }\n\n popover.triggerRef(anchor);\n const trigger = findTriggerButton(anchor);\n if (trigger == null || !isEnabled) {\n return () => {\n popover.triggerRef(null);\n };\n }\n\n const detach = attachTrigger(trigger);\n return () => {\n popover.triggerRef(null);\n detach();\n };\n }, [anchorRef, attachTrigger, isEnabled, popover]);\n\n useIsomorphicLayoutEffect(() => {\n if (!isControlled) {\n return;\n }\n\n if (isOpen === true && !popover.isOpen) {\n popover.show();\n } else if (isOpen === false && popover.isOpen) {\n popover.hide();\n }\n }, [isControlled, isOpen, popover]);\n\n const widthStyle =\n width == null\n ? undefined\n : {width: typeof width === 'number' ? `${width}px` : width};\n\n const paddingStyle =\n padding != null && padding !== 0\n ? {padding: token(`spacing.${padding}`)}\n : undefined;\n\n const popoverContent = popover.render(\n <div\n className={cx(styles.content, className)}\n data-testid={dataTestId}\n ref={ref}\n style={{...paddingStyle, ...widthStyle, ...style}}>\n {content}\n </div>,\n {\n placement,\n alignment,\n offsetX,\n offsetY,\n className: styles.gap[placement],\n style: {minWidth: 'anchor-size(width)'},\n },\n );\n\n if (anchorRef != null && !isReactNode(children)) {\n return <>{popoverContent}</>;\n }\n\n return (\n <>\n <div className={styles.anchor} ref={wrapperRef}>\n {children}\n </div>\n {popoverContent}\n </>\n );\n}\n\nPopover.displayName = 'Popover';\n"]}
|