silver-ui 0.7.2 → 0.8.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 +14 -4
- package/dist/{chunk-KEPCKSDE.js → chunk-2AY74YXP.js} +3 -2
- package/dist/chunk-2AY74YXP.js.map +1 -0
- package/dist/{chunk-PGBYMBGH.js → chunk-2FR4VA32.js} +18 -17
- package/dist/chunk-2FR4VA32.js.map +1 -0
- package/dist/{chunk-OUUG4RHO.js → chunk-2I6BJICE.js} +7 -6
- package/dist/chunk-2I6BJICE.js.map +1 -0
- package/dist/{chunk-FUU3I22W.js → chunk-35MIAFP2.js} +4 -3
- package/dist/{chunk-FUU3I22W.js.map → chunk-35MIAFP2.js.map} +1 -1
- package/dist/{chunk-5FQKELP6.js → chunk-3IX2FJWH.js} +3 -2
- package/dist/chunk-3IX2FJWH.js.map +1 -0
- package/dist/{chunk-H7LOOHWU.cjs → chunk-3JCYTBXI.cjs} +3 -2
- package/dist/chunk-3JCYTBXI.cjs.map +1 -0
- package/dist/{chunk-FTNEAX24.js → chunk-3MNRY6XK.js} +5 -4
- package/dist/chunk-3MNRY6XK.js.map +1 -0
- package/dist/{chunk-LTHPJRFK.cjs → chunk-3PHJWXBO.cjs} +10 -9
- package/dist/{chunk-LTHPJRFK.cjs.map → chunk-3PHJWXBO.cjs.map} +1 -1
- package/dist/{chunk-3W3ST5Y3.cjs → chunk-3USKXV4M.cjs} +7 -6
- package/dist/chunk-3USKXV4M.cjs.map +1 -0
- package/dist/{chunk-S4IHNNA2.js → chunk-3UYPIVBY.js} +3 -2
- package/dist/{chunk-S4IHNNA2.js.map → chunk-3UYPIVBY.js.map} +1 -1
- package/dist/{chunk-3PCXFOOS.js → chunk-42KJXH3P.js} +7 -6
- package/dist/chunk-42KJXH3P.js.map +1 -0
- package/dist/{chunk-XUCLNECV.js → chunk-446LQC5C.js} +4 -3
- package/dist/chunk-446LQC5C.js.map +1 -0
- package/dist/{chunk-CQYBC3RJ.cjs → chunk-4GT65SRC.cjs} +10 -9
- package/dist/chunk-4GT65SRC.cjs.map +1 -0
- package/dist/{chunk-MN2NCSQQ.js → chunk-4MX4DKWA.js} +3 -2
- package/dist/{chunk-MN2NCSQQ.js.map → chunk-4MX4DKWA.js.map} +1 -1
- package/dist/{chunk-6KGF66TR.js → chunk-57GO7S77.js} +4 -3
- package/dist/{chunk-6KGF66TR.js.map → chunk-57GO7S77.js.map} +1 -1
- package/dist/{chunk-RLIBY7XB.cjs → chunk-5AUBRSYO.cjs} +3 -2
- package/dist/chunk-5AUBRSYO.cjs.map +1 -0
- package/dist/{chunk-3PEK2Q54.cjs → chunk-5FNYOPUL.cjs} +3 -2
- package/dist/chunk-5FNYOPUL.cjs.map +1 -0
- package/dist/{chunk-YQIDUJW2.cjs → chunk-5HMAMGEL.cjs} +6 -5
- package/dist/{chunk-YQIDUJW2.cjs.map → chunk-5HMAMGEL.cjs.map} +1 -1
- package/dist/{chunk-Y2GYPMLW.cjs → chunk-5OHIMYY7.cjs} +6 -5
- package/dist/{chunk-Y2GYPMLW.cjs.map → chunk-5OHIMYY7.cjs.map} +1 -1
- package/dist/{chunk-6SKIBUCY.js → chunk-5PW34XKA.js} +5 -4
- package/dist/chunk-5PW34XKA.js.map +1 -0
- package/dist/{chunk-OCYZKZ24.cjs → chunk-6VY3VM5W.cjs} +4 -4
- package/dist/{chunk-OCYZKZ24.cjs.map → chunk-6VY3VM5W.cjs.map} +1 -1
- package/dist/{chunk-QQCEGAUQ.cjs → chunk-6WMG7TU2.cjs} +12 -11
- package/dist/chunk-6WMG7TU2.cjs.map +1 -0
- package/dist/{chunk-AC4E3WQA.cjs → chunk-7275FFQA.cjs} +13 -12
- package/dist/chunk-7275FFQA.cjs.map +1 -0
- package/dist/{chunk-YAQB3UMC.js → chunk-74B6CLZK.js} +5 -4
- package/dist/{chunk-YAQB3UMC.js.map → chunk-74B6CLZK.js.map} +1 -1
- package/dist/{chunk-VCM4MR7N.cjs → chunk-7IBLSZ7G.cjs} +53 -52
- package/dist/{chunk-VCM4MR7N.cjs.map → chunk-7IBLSZ7G.cjs.map} +1 -1
- package/dist/{chunk-GJZAGTPV.cjs → chunk-7KUEWO4T.cjs} +6 -5
- package/dist/chunk-7KUEWO4T.cjs.map +1 -0
- package/dist/{chunk-X2P5SPGB.js → chunk-7SGBGPZW.js} +3 -3
- package/dist/{chunk-X2P5SPGB.js.map → chunk-7SGBGPZW.js.map} +1 -1
- package/dist/{chunk-UNS7OCEA.cjs → chunk-7SUCVCOC.cjs} +6 -5
- package/dist/{chunk-UNS7OCEA.cjs.map → chunk-7SUCVCOC.cjs.map} +1 -1
- package/dist/{chunk-HPNY32G6.js → chunk-7TYZLVLZ.js} +3 -2
- package/dist/{chunk-HPNY32G6.js.map → chunk-7TYZLVLZ.js.map} +1 -1
- package/dist/{chunk-GA77PPVL.cjs → chunk-A36BE56K.cjs} +8 -7
- package/dist/{chunk-GA77PPVL.cjs.map → chunk-A36BE56K.cjs.map} +1 -1
- package/dist/{chunk-ESWYWWY2.js → chunk-A377P2JF.js} +5 -4
- package/dist/chunk-A377P2JF.js.map +1 -0
- package/dist/{chunk-5RFHYDQY.js → chunk-AUXMMTKN.js} +3 -2
- package/dist/chunk-AUXMMTKN.js.map +1 -0
- package/dist/{chunk-6SMVH3ON.cjs → chunk-B333LIQQ.cjs} +9 -8
- package/dist/chunk-B333LIQQ.cjs.map +1 -0
- package/dist/{chunk-NGNVNRAZ.cjs → chunk-BMJ4AK5X.cjs} +18 -17
- package/dist/chunk-BMJ4AK5X.cjs.map +1 -0
- package/dist/{chunk-KLPVBJGZ.cjs → chunk-BSOYEVZW.cjs} +6 -5
- package/dist/{chunk-KLPVBJGZ.cjs.map → chunk-BSOYEVZW.cjs.map} +1 -1
- package/dist/{chunk-PG4CZRTU.js → chunk-CRYF4JDH.js} +3 -2
- package/dist/chunk-CRYF4JDH.js.map +1 -0
- package/dist/{chunk-GKYGZWSQ.js → chunk-CTXAQNQI.js} +6 -5
- package/dist/{chunk-GKYGZWSQ.js.map → chunk-CTXAQNQI.js.map} +1 -1
- package/dist/{chunk-HEF53COU.js → chunk-CWDZJH7A.js} +4 -3
- package/dist/{chunk-HEF53COU.js.map → chunk-CWDZJH7A.js.map} +1 -1
- package/dist/{chunk-EZFQCREN.cjs → chunk-CZAKWWZE.cjs} +10 -9
- package/dist/chunk-CZAKWWZE.cjs.map +1 -0
- package/dist/{chunk-UJDHRILS.cjs → chunk-D2JOFRA3.cjs} +7 -6
- package/dist/chunk-D2JOFRA3.cjs.map +1 -0
- package/dist/{chunk-BUYZZOOU.js → chunk-D57CFXDZ.js} +3 -2
- package/dist/{chunk-BUYZZOOU.js.map → chunk-D57CFXDZ.js.map} +1 -1
- package/dist/{chunk-IU2YRN35.cjs → chunk-DUZBTPSH.cjs} +3 -2
- package/dist/{chunk-IU2YRN35.cjs.map → chunk-DUZBTPSH.cjs.map} +1 -1
- package/dist/{chunk-FHUOUARL.js → chunk-DXUFYSNR.js} +5 -4
- package/dist/{chunk-FHUOUARL.js.map → chunk-DXUFYSNR.js.map} +1 -1
- package/dist/{chunk-AXTX3IOR.js → chunk-DZYO3YLL.js} +4 -3
- package/dist/{chunk-AXTX3IOR.js.map → chunk-DZYO3YLL.js.map} +1 -1
- package/dist/{chunk-VK7DXUGH.cjs → chunk-E5TRE2YG.cjs} +3 -2
- package/dist/chunk-E5TRE2YG.cjs.map +1 -0
- package/dist/{chunk-ARUOMLOJ.cjs → chunk-ECVWXA4H.cjs} +3 -2
- package/dist/chunk-ECVWXA4H.cjs.map +1 -0
- package/dist/{chunk-NYTSAO5I.cjs → chunk-EFYWVWSL.cjs} +3 -2
- package/dist/{chunk-NYTSAO5I.cjs.map → chunk-EFYWVWSL.cjs.map} +1 -1
- package/dist/{chunk-OPBELSKN.js → chunk-ENBVF5OB.js} +8 -7
- package/dist/chunk-ENBVF5OB.js.map +1 -0
- package/dist/{chunk-CKDB7QNT.cjs → chunk-EPQKIFGY.cjs} +10 -9
- package/dist/{chunk-CKDB7QNT.cjs.map → chunk-EPQKIFGY.cjs.map} +1 -1
- package/dist/{chunk-VWG54F6X.cjs → chunk-FE3ZOSFJ.cjs} +9 -8
- package/dist/{chunk-VWG54F6X.cjs.map → chunk-FE3ZOSFJ.cjs.map} +1 -1
- package/dist/{chunk-O3UT5D57.js → chunk-FL53ZLSY.js} +15 -14
- package/dist/{chunk-O3UT5D57.js.map → chunk-FL53ZLSY.js.map} +1 -1
- package/dist/{chunk-6KG76KUZ.js → chunk-FP6EP2CX.js} +4 -3
- package/dist/{chunk-6KG76KUZ.js.map → chunk-FP6EP2CX.js.map} +1 -1
- package/dist/{chunk-KWZMXX4F.js → chunk-FPKXEI3W.js} +4 -3
- package/dist/chunk-FPKXEI3W.js.map +1 -0
- package/dist/{chunk-4MIIXRZN.cjs → chunk-G2RX3FZ7.cjs} +21 -20
- package/dist/chunk-G2RX3FZ7.cjs.map +1 -0
- package/dist/{chunk-6SFMORQF.cjs → chunk-GIGV6XFT.cjs} +8 -7
- package/dist/chunk-GIGV6XFT.cjs.map +1 -0
- package/dist/{chunk-UW3KCCBT.cjs → chunk-GIOMLAL2.cjs} +5 -4
- package/dist/{chunk-UW3KCCBT.cjs.map → chunk-GIOMLAL2.cjs.map} +1 -1
- package/dist/{chunk-5MCI3ILK.cjs → chunk-GKYJZNJQ.cjs} +44 -43
- package/dist/{chunk-5MCI3ILK.cjs.map → chunk-GKYJZNJQ.cjs.map} +1 -1
- package/dist/{chunk-5K3C3INR.cjs → chunk-GOAIWDHB.cjs} +11 -10
- package/dist/chunk-GOAIWDHB.cjs.map +1 -0
- package/dist/{chunk-O4PO6AMS.cjs → chunk-HAUMZ357.cjs} +3 -2
- package/dist/{chunk-O4PO6AMS.cjs.map → chunk-HAUMZ357.cjs.map} +1 -1
- package/dist/{chunk-RX2FXCIH.cjs → chunk-HIFJC2HY.cjs} +8 -8
- package/dist/{chunk-RX2FXCIH.cjs.map → chunk-HIFJC2HY.cjs.map} +1 -1
- package/dist/{chunk-ACGPBJIS.js → chunk-HRXPB4YH.js} +6 -5
- package/dist/chunk-HRXPB4YH.js.map +1 -0
- package/dist/{chunk-QM7NQK2K.js → chunk-I2X76NIY.js} +5 -4
- package/dist/{chunk-QM7NQK2K.js.map → chunk-I2X76NIY.js.map} +1 -1
- package/dist/{chunk-BF2DUOC3.cjs → chunk-IA4TPVHR.cjs} +15 -14
- package/dist/{chunk-BF2DUOC3.cjs.map → chunk-IA4TPVHR.cjs.map} +1 -1
- package/dist/{chunk-JIF5TZHC.cjs → chunk-IFRIXTF5.cjs} +3 -2
- package/dist/chunk-IFRIXTF5.cjs.map +1 -0
- package/dist/{chunk-JMVYWHJ7.js → chunk-IJWWTBJ6.js} +5 -4
- package/dist/chunk-IJWWTBJ6.js.map +1 -0
- package/dist/{chunk-JTPVAZE6.cjs → chunk-IVDCRMY3.cjs} +12 -11
- package/dist/{chunk-JTPVAZE6.cjs.map → chunk-IVDCRMY3.cjs.map} +1 -1
- package/dist/{chunk-Q6YOSQAM.js → chunk-J52N3BTJ.js} +8 -7
- package/dist/chunk-J52N3BTJ.js.map +1 -0
- package/dist/{chunk-HENIVDYQ.cjs → chunk-J6XNDFK7.cjs} +15 -14
- package/dist/chunk-J6XNDFK7.cjs.map +1 -0
- package/dist/{chunk-3NIDAKCF.cjs → chunk-J6XRX6DD.cjs} +3 -2
- package/dist/chunk-J6XRX6DD.cjs.map +1 -0
- package/dist/{chunk-HC57X3U4.js → chunk-JASZ7XTT.js} +6 -5
- package/dist/chunk-JASZ7XTT.js.map +1 -0
- package/dist/{chunk-EBV3EX3J.js → chunk-JJ32AVLU.js} +8 -7
- package/dist/chunk-JJ32AVLU.js.map +1 -0
- package/dist/{chunk-2N3PIXZ5.cjs → chunk-JLDYPQIB.cjs} +8 -7
- package/dist/chunk-JLDYPQIB.cjs.map +1 -0
- package/dist/{chunk-NSWKBWPP.js → chunk-JQHJJAX3.js} +6 -5
- package/dist/{chunk-NSWKBWPP.js.map → chunk-JQHJJAX3.js.map} +1 -1
- package/dist/{chunk-ZDZ7FW6V.cjs → chunk-K2KOXVGA.cjs} +10 -9
- package/dist/chunk-K2KOXVGA.cjs.map +1 -0
- package/dist/{chunk-GQ73VKKN.js → chunk-K57TGBAB.js} +9 -8
- package/dist/{chunk-GQ73VKKN.js.map → chunk-K57TGBAB.js.map} +1 -1
- package/dist/{chunk-BYV7NXC5.cjs → chunk-KGLCG2W5.cjs} +8 -7
- package/dist/chunk-KGLCG2W5.cjs.map +1 -0
- package/dist/{chunk-DTNIUZ3C.cjs → chunk-KGVNCMUT.cjs} +8 -7
- package/dist/{chunk-DTNIUZ3C.cjs.map → chunk-KGVNCMUT.cjs.map} +1 -1
- package/dist/{chunk-V5XVXQWE.js → chunk-KJRFBFBP.js} +6 -5
- package/dist/{chunk-V5XVXQWE.js.map → chunk-KJRFBFBP.js.map} +1 -1
- package/dist/{chunk-6ZPHID26.cjs → chunk-KNXDDKGK.cjs} +10 -9
- package/dist/chunk-KNXDDKGK.cjs.map +1 -0
- package/dist/{chunk-5GSRIOXE.js → chunk-KPAOAYDY.js} +5 -4
- package/dist/{chunk-5GSRIOXE.js.map → chunk-KPAOAYDY.js.map} +1 -1
- package/dist/{chunk-L747HIHG.js → chunk-KSDY2S25.js} +5 -4
- package/dist/chunk-KSDY2S25.js.map +1 -0
- package/dist/{chunk-BIKVMVWF.js → chunk-LHQM533G.js} +3 -2
- package/dist/{chunk-BIKVMVWF.js.map → chunk-LHQM533G.js.map} +1 -1
- package/dist/{chunk-KVJ27734.cjs → chunk-LIDE7FVO.cjs} +5 -4
- package/dist/{chunk-KVJ27734.cjs.map → chunk-LIDE7FVO.cjs.map} +1 -1
- package/dist/{chunk-EIJSWHG7.js → chunk-LT4P67TG.js} +6 -5
- package/dist/{chunk-EIJSWHG7.js.map → chunk-LT4P67TG.js.map} +1 -1
- package/dist/{chunk-D7TT4HUI.cjs → chunk-LT7DJ7FN.cjs} +17 -16
- package/dist/{chunk-D7TT4HUI.cjs.map → chunk-LT7DJ7FN.cjs.map} +1 -1
- package/dist/{chunk-GLFWSLJB.cjs → chunk-M3DVXO4U.cjs} +11 -10
- package/dist/{chunk-GLFWSLJB.cjs.map → chunk-M3DVXO4U.cjs.map} +1 -1
- package/dist/{chunk-YQVWDHP4.cjs → chunk-M7ADKAJB.cjs} +8 -7
- package/dist/{chunk-YQVWDHP4.cjs.map → chunk-M7ADKAJB.cjs.map} +1 -1
- package/dist/{chunk-BQWUTDTN.js → chunk-MCCOQSSC.js} +3 -2
- package/dist/{chunk-BQWUTDTN.js.map → chunk-MCCOQSSC.js.map} +1 -1
- package/dist/{chunk-ZW2ZOEYM.cjs → chunk-MCVMBH7P.cjs} +11 -10
- package/dist/chunk-MCVMBH7P.cjs.map +1 -0
- package/dist/{chunk-PK3NJSHQ.js → chunk-MNQFCWT7.js} +8 -7
- package/dist/{chunk-PK3NJSHQ.js.map → chunk-MNQFCWT7.js.map} +1 -1
- package/dist/{chunk-5HPXPF3F.js → chunk-MQUO663S.js} +6 -5
- package/dist/chunk-MQUO663S.js.map +1 -0
- package/dist/{chunk-6OWEKKOC.js → chunk-N26PQY3D.js} +6 -5
- package/dist/chunk-N26PQY3D.js.map +1 -0
- package/dist/{chunk-KLCEDPJ4.cjs → chunk-NKQAHJBB.cjs} +19 -18
- package/dist/chunk-NKQAHJBB.cjs.map +1 -0
- package/dist/{chunk-J242UTPO.cjs → chunk-NQD46M2L.cjs} +12 -11
- package/dist/chunk-NQD46M2L.cjs.map +1 -0
- package/dist/{chunk-56PY2CD7.js → chunk-NSA33LOE.js} +6 -5
- package/dist/chunk-NSA33LOE.js.map +1 -0
- package/dist/{chunk-KVEXSDEM.js → chunk-OI4GH7DO.js} +5 -4
- package/dist/{chunk-KVEXSDEM.js.map → chunk-OI4GH7DO.js.map} +1 -1
- package/dist/{chunk-AKAXQ4RL.js → chunk-OLJIILEI.js} +4 -3
- package/dist/{chunk-AKAXQ4RL.js.map → chunk-OLJIILEI.js.map} +1 -1
- package/dist/{chunk-S4WWBV4N.js → chunk-ONOKHFK3.js} +6 -5
- package/dist/chunk-ONOKHFK3.js.map +1 -0
- package/dist/{chunk-BSXUNRET.cjs → chunk-ONRLHP46.cjs} +3 -2
- package/dist/chunk-ONRLHP46.cjs.map +1 -0
- package/dist/{chunk-NYOZQE6P.js → chunk-OQL6XRT7.js} +6 -5
- package/dist/chunk-OQL6XRT7.js.map +1 -0
- package/dist/{chunk-WLWSQKWI.js → chunk-ORBYW3LT.js} +9 -8
- package/dist/{chunk-WLWSQKWI.js.map → chunk-ORBYW3LT.js.map} +1 -1
- package/dist/{chunk-5UGHDUMO.js → chunk-OXBBLHTC.js} +3 -2
- package/dist/chunk-OXBBLHTC.js.map +1 -0
- package/dist/{chunk-HN4W6TM6.cjs → chunk-PB7LE5VJ.cjs} +10 -9
- package/dist/chunk-PB7LE5VJ.cjs.map +1 -0
- package/dist/{chunk-N6C37HXD.js → chunk-PER4RJRF.js} +8 -7
- package/dist/chunk-PER4RJRF.js.map +1 -0
- package/dist/{chunk-PQXPYN23.js → chunk-PLQDNBCW.js} +8 -7
- package/dist/chunk-PLQDNBCW.js.map +1 -0
- package/dist/{chunk-DE7JLNSO.js → chunk-PTDBPRZD.js} +3 -2
- package/dist/chunk-PTDBPRZD.js.map +1 -0
- package/dist/{chunk-USEA7DB5.js → chunk-PZBY3JI7.js} +4 -4
- package/dist/{chunk-USEA7DB5.js.map → chunk-PZBY3JI7.js.map} +1 -1
- package/dist/{chunk-PZHRFASW.js → chunk-Q4UI2MP4.js} +3 -2
- package/dist/chunk-Q4UI2MP4.js.map +1 -0
- package/dist/{chunk-I2DXEPDF.js → chunk-Q4UMGL6Z.js} +7 -6
- package/dist/chunk-Q4UMGL6Z.js.map +1 -0
- package/dist/{chunk-BPAZTKMC.cjs → chunk-QEYGPANV.cjs} +11 -10
- package/dist/{chunk-BPAZTKMC.cjs.map → chunk-QEYGPANV.cjs.map} +1 -1
- package/dist/{chunk-FQSVY4QB.js → chunk-QMFPPGSZ.js} +4 -3
- package/dist/chunk-QMFPPGSZ.js.map +1 -0
- package/dist/{chunk-2AOR4EVA.cjs → chunk-QTR5LIUW.cjs} +9 -8
- package/dist/chunk-QTR5LIUW.cjs.map +1 -0
- package/dist/{chunk-LBOWHXOF.js → chunk-R3B46QJO.js} +5 -4
- package/dist/chunk-R3B46QJO.js.map +1 -0
- package/dist/{chunk-EEOUWM2F.cjs → chunk-RCRUFF6F.cjs} +5 -4
- package/dist/{chunk-EEOUWM2F.cjs.map → chunk-RCRUFF6F.cjs.map} +1 -1
- package/dist/{chunk-AO4RVSCG.js → chunk-RZ52RCTU.js} +6 -5
- package/dist/{chunk-AO4RVSCG.js.map → chunk-RZ52RCTU.js.map} +1 -1
- package/dist/{chunk-54B36CSW.js → chunk-S3UQUP3Q.js} +6 -5
- package/dist/{chunk-54B36CSW.js.map → chunk-S3UQUP3Q.js.map} +1 -1
- package/dist/{chunk-WOVSJHY6.cjs → chunk-S5FJ3FHH.cjs} +15 -14
- package/dist/chunk-S5FJ3FHH.cjs.map +1 -0
- package/dist/{chunk-TACO5IWI.cjs → chunk-SEELGNIC.cjs} +20 -19
- package/dist/chunk-SEELGNIC.cjs.map +1 -0
- package/dist/{chunk-JWMS6LHN.cjs → chunk-SG2ZHIDQ.cjs} +9 -8
- package/dist/{chunk-JWMS6LHN.cjs.map → chunk-SG2ZHIDQ.cjs.map} +1 -1
- package/dist/{chunk-WTCH3QCQ.js → chunk-SHJNMFEV.js} +3 -2
- package/dist/chunk-SHJNMFEV.js.map +1 -0
- package/dist/{chunk-DDMUYVSV.cjs → chunk-SQUWNP5G.cjs} +17 -16
- package/dist/{chunk-DDMUYVSV.cjs.map → chunk-SQUWNP5G.cjs.map} +1 -1
- package/dist/{chunk-E6AKSBSP.js → chunk-SXLGTRY7.js} +7 -6
- package/dist/{chunk-E6AKSBSP.js.map → chunk-SXLGTRY7.js.map} +1 -1
- package/dist/{chunk-PYN75QAG.js → chunk-TS3FMP6Z.js} +4 -3
- package/dist/chunk-TS3FMP6Z.js.map +1 -0
- package/dist/{chunk-QB2BSOM4.cjs → chunk-TT65RNBY.cjs} +3 -2
- package/dist/{chunk-QB2BSOM4.cjs.map → chunk-TT65RNBY.cjs.map} +1 -1
- package/dist/{chunk-GTZQT6MK.js → chunk-TUUYGOLQ.js} +6 -5
- package/dist/chunk-TUUYGOLQ.js.map +1 -0
- package/dist/{chunk-BNGYGCT2.js → chunk-UCSMB46R.js} +4 -3
- package/dist/{chunk-BNGYGCT2.js.map → chunk-UCSMB46R.js.map} +1 -1
- package/dist/{chunk-UUVI3TYW.js → chunk-USZQJXPE.js} +8 -7
- package/dist/chunk-USZQJXPE.js.map +1 -0
- package/dist/{chunk-CWZCBYVZ.cjs → chunk-UTUX5WM7.cjs} +14 -13
- package/dist/chunk-UTUX5WM7.cjs.map +1 -0
- package/dist/{chunk-BBLAZNCC.js → chunk-UUNVNLQN.js} +9 -8
- package/dist/chunk-UUNVNLQN.js.map +1 -0
- package/dist/{chunk-PXTTIAC4.cjs → chunk-VCEPRU6Y.cjs} +9 -8
- package/dist/chunk-VCEPRU6Y.cjs.map +1 -0
- package/dist/{chunk-63QPCV4F.cjs → chunk-VISYC2ZD.cjs} +38 -37
- package/dist/chunk-VISYC2ZD.cjs.map +1 -0
- package/dist/{chunk-DVCDAKPK.cjs → chunk-VSTO7LZJ.cjs} +7 -6
- package/dist/chunk-VSTO7LZJ.cjs.map +1 -0
- package/dist/{chunk-CPDWUT2H.cjs → chunk-W6UBDEMN.cjs} +3 -2
- package/dist/{chunk-CPDWUT2H.cjs.map → chunk-W6UBDEMN.cjs.map} +1 -1
- package/dist/{chunk-DXUFDJHA.cjs → chunk-WBVSDRWB.cjs} +11 -10
- package/dist/{chunk-DXUFDJHA.cjs.map → chunk-WBVSDRWB.cjs.map} +1 -1
- package/dist/{chunk-U7QJJ3NR.cjs → chunk-WPP3FZLW.cjs} +9 -8
- package/dist/{chunk-U7QJJ3NR.cjs.map → chunk-WPP3FZLW.cjs.map} +1 -1
- package/dist/{chunk-6R2UZNVE.js → chunk-WQU2M64E.js} +7 -6
- package/dist/chunk-WQU2M64E.js.map +1 -0
- package/dist/{chunk-YGESCFX2.js → chunk-WZGS7FX6.js} +4 -3
- package/dist/chunk-WZGS7FX6.js.map +1 -0
- package/dist/{chunk-MDQSVB2Y.js → chunk-XBQKPRWG.js} +3 -2
- package/dist/chunk-XBQKPRWG.js.map +1 -0
- package/dist/{chunk-MYSLJWCW.cjs → chunk-XOJ5HGIP.cjs} +11 -10
- package/dist/chunk-XOJ5HGIP.cjs.map +1 -0
- package/dist/{chunk-CVT7JW6C.cjs → chunk-XY5GXS62.cjs} +5 -4
- package/dist/{chunk-CVT7JW6C.cjs.map → chunk-XY5GXS62.cjs.map} +1 -1
- package/dist/{chunk-PKZSJX53.cjs → chunk-Y3TUHGI2.cjs} +3 -2
- package/dist/chunk-Y3TUHGI2.cjs.map +1 -0
- package/dist/{chunk-WG4NNC3P.js → chunk-YKUNVCXP.js} +6 -5
- package/dist/{chunk-WG4NNC3P.js.map → chunk-YKUNVCXP.js.map} +1 -1
- package/dist/{chunk-BKKLUIIU.js → chunk-YNGDGY2J.js} +3 -2
- package/dist/chunk-YNGDGY2J.js.map +1 -0
- package/dist/{chunk-2K4I2MB3.cjs → chunk-YPTBGFPT.cjs} +3 -2
- package/dist/{chunk-2K4I2MB3.cjs.map → chunk-YPTBGFPT.cjs.map} +1 -1
- package/dist/{chunk-LWB2CTX6.cjs → chunk-YSLDYF2F.cjs} +5 -4
- package/dist/{chunk-LWB2CTX6.cjs.map → chunk-YSLDYF2F.cjs.map} +1 -1
- package/dist/{chunk-MJHEPDDX.cjs → chunk-YV4AL52O.cjs} +21 -20
- package/dist/chunk-YV4AL52O.cjs.map +1 -0
- package/dist/{chunk-IREOTHD3.cjs → chunk-Z2KSHRDD.cjs} +6 -5
- package/dist/chunk-Z2KSHRDD.cjs.map +1 -0
- package/dist/{chunk-VPWNRWNO.cjs → chunk-Z5EY2GRO.cjs} +3 -2
- package/dist/chunk-Z5EY2GRO.cjs.map +1 -0
- package/dist/{chunk-TP6RGZ6A.js → chunk-ZEBWF24G.js} +14 -13
- package/dist/{chunk-TP6RGZ6A.js.map → chunk-ZEBWF24G.js.map} +1 -1
- package/dist/{chunk-NIKT7XSO.js → chunk-ZF522WPX.js} +7 -6
- package/dist/chunk-ZF522WPX.js.map +1 -0
- package/dist/{chunk-OX2FNKIV.cjs → chunk-ZKSEIA5Q.cjs} +11 -10
- package/dist/{chunk-OX2FNKIV.cjs.map → chunk-ZKSEIA5Q.cjs.map} +1 -1
- package/dist/{chunk-D3CHBU46.js → chunk-ZLJOIPTJ.js} +4 -3
- package/dist/{chunk-D3CHBU46.js.map → chunk-ZLJOIPTJ.js.map} +1 -1
- package/dist/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionContext.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionItem.d.ts.map +1 -1
- package/dist/components/Accordion/index.cjs +4 -4
- package/dist/components/Accordion/index.js +1 -1
- package/dist/components/Accordion/useAccordionDevWarning.d.ts.map +1 -1
- package/dist/components/Accordion/useCollapsible.d.ts.map +1 -1
- package/dist/components/Alert/Alert.d.ts.map +1 -1
- package/dist/components/Alert/index.cjs +10 -10
- package/dist/components/Alert/index.js +9 -9
- package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -1
- package/dist/components/AlertDialog/index.cjs +16 -16
- package/dist/components/AlertDialog/index.js +14 -14
- package/dist/components/AlertDialog/useAlertDialog.d.ts.map +1 -1
- package/dist/components/AppShell/AppShell.d.ts.map +1 -1
- package/dist/components/AppShell/AppShellMobileContext.d.ts.map +1 -1
- package/dist/components/AppShell/index.cjs +21 -21
- package/dist/components/AppShell/index.js +18 -18
- package/dist/components/AppShell/useSlotPresence.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts.map +1 -1
- package/dist/components/AutocompleteInput/index.cjs +17 -17
- package/dist/components/AutocompleteInput/index.js +13 -13
- package/dist/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/components/Avatar/AvatarSizeContext.d.ts.map +1 -1
- package/dist/components/Avatar/AvatarStatusDot.d.ts.map +1 -1
- package/dist/components/Avatar/index.cjs +4 -4
- package/dist/components/Avatar/index.js +1 -1
- package/dist/components/AvatarGroup/AvatarGroup.d.ts.map +1 -1
- package/dist/components/AvatarGroup/AvatarGroupContext.d.ts.map +1 -1
- package/dist/components/AvatarGroup/AvatarGroupOverflow.d.ts.map +1 -1
- package/dist/components/AvatarGroup/index.cjs +4 -4
- package/dist/components/AvatarGroup/index.js +2 -2
- package/dist/components/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/BreadcrumbsContext.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/index.cjs +5 -5
- package/dist/components/Breadcrumbs/index.js +2 -2
- package/dist/components/Button/Button.d.ts.map +1 -1
- package/dist/components/Button/index.cjs +9 -9
- package/dist/components/Button/index.js +8 -8
- 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.js +2 -2
- package/dist/components/Calendar/Calendar.d.ts.map +1 -1
- package/dist/components/Calendar/index.cjs +10 -10
- package/dist/components/Calendar/index.js +9 -9
- package/dist/components/CheckboxGroup/CheckboxGroup.d.ts.map +1 -1
- package/dist/components/CheckboxGroup/CheckboxGroupContext.d.ts.map +1 -1
- package/dist/components/CheckboxGroup/CheckboxGroupItem.d.ts.map +1 -1
- package/dist/components/CheckboxGroup/index.cjs +12 -12
- package/dist/components/CheckboxGroup/index.js +10 -10
- package/dist/components/CheckboxInput/CheckboxInput.d.ts.map +1 -1
- package/dist/components/CheckboxInput/index.cjs +9 -9
- package/dist/components/CheckboxInput/index.js +8 -8
- package/dist/components/CodeBlock/index.cjs +11 -11
- package/dist/components/CodeBlock/index.js +10 -10
- package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/components/ContextMenu/index.cjs +15 -15
- package/dist/components/ContextMenu/index.js +13 -13
- package/dist/components/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/DateInput/index.cjs +13 -13
- package/dist/components/DateInput/index.js +12 -12
- package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/components/DateRangeInput/index.cjs +13 -13
- package/dist/components/DateRangeInput/index.js +12 -12
- package/dist/components/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/components/DateTimeInput/index.cjs +15 -15
- package/dist/components/DateTimeInput/index.js +14 -14
- package/dist/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/components/Dialog/DialogContext.d.ts.map +1 -1
- package/dist/components/Dialog/index.cjs +8 -8
- package/dist/components/Dialog/index.js +4 -4
- package/dist/components/Dialog/useDialog.d.ts.map +1 -1
- package/dist/components/Divider/Divider.d.ts.map +1 -1
- package/dist/components/Divider/index.cjs +2 -2
- package/dist/components/Divider/index.js +1 -1
- package/dist/components/Drawer/Drawer.d.ts.map +1 -1
- package/dist/components/Drawer/index.cjs +5 -5
- package/dist/components/Drawer/index.js +3 -3
- 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 +16 -16
- package/dist/components/DropdownMenu/index.js +12 -12
- package/dist/components/DropdownMenu/menuUtils.d.ts.map +1 -1
- package/dist/components/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/components/EmptyState/index.cjs +5 -5
- package/dist/components/EmptyState/index.js +4 -4
- package/dist/components/Field/index.cjs +6 -6
- package/dist/components/Field/index.js +4 -4
- package/dist/components/FileInput/FileInput.d.ts.map +1 -1
- package/dist/components/FileInput/index.cjs +11 -11
- package/dist/components/FileInput/index.js +10 -10
- package/dist/components/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/components/HoverCard/index.cjs +4 -4
- package/dist/components/HoverCard/index.js +2 -2
- package/dist/components/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/components/InputGroup/InputGroup.d.ts.map +1 -1
- package/dist/components/InputGroup/InputGroupContext.d.ts.map +1 -1
- package/dist/components/InputGroup/index.cjs +9 -9
- package/dist/components/InputGroup/index.js +5 -5
- package/dist/components/Item/Item.d.ts.map +1 -1
- package/dist/components/Item/index.cjs +7 -7
- package/dist/components/Item/index.js +6 -6
- package/dist/components/Kbd/Kbd.d.ts.map +1 -1
- package/dist/components/Kbd/index.cjs +2 -2
- package/dist/components/Kbd/index.js +1 -1
- package/dist/components/Layout/Layout.d.ts.map +1 -1
- package/dist/components/Layout/LayoutContext.d.ts.map +1 -1
- package/dist/components/Layout/LayoutFooter.d.ts.map +1 -1
- package/dist/components/Layout/LayoutHeader.d.ts.map +1 -1
- package/dist/components/Layout/LayoutPanel.d.ts.map +1 -1
- package/dist/components/Layout/index.cjs +15 -15
- package/dist/components/Layout/index.js +10 -10
- package/dist/components/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/components/Lightbox/index.cjs +12 -12
- package/dist/components/Lightbox/index.js +10 -10
- package/dist/components/Lightbox/useLightbox.d.ts.map +1 -1
- package/dist/components/Link/Link.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 +8 -8
- package/dist/components/Link/index.js +5 -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/ListContext.d.ts.map +1 -1
- package/dist/components/List/ListItem.d.ts.map +1 -1
- package/dist/components/List/index.cjs +9 -9
- package/dist/components/List/index.js +7 -7
- package/dist/components/MetadataList/MetadataList.d.ts.map +1 -1
- package/dist/components/MetadataList/MetadataListContext.d.ts.map +1 -1
- package/dist/components/MetadataList/MetadataListItem.d.ts.map +1 -1
- package/dist/components/MetadataList/index.cjs +6 -6
- package/dist/components/MetadataList/index.js +4 -4
- package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/dist/components/MultiSelect/index.cjs +13 -13
- package/dist/components/MultiSelect/index.js +12 -12
- package/dist/components/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/components/NumberInput/index.cjs +12 -12
- package/dist/components/NumberInput/index.js +11 -11
- package/dist/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/components/Pagination/index.cjs +10 -10
- package/dist/components/Pagination/index.js +9 -9
- package/dist/components/PasswordInput/PasswordInput.d.ts.map +1 -1
- package/dist/components/PasswordInput/index.cjs +13 -13
- package/dist/components/PasswordInput/index.js +12 -12
- package/dist/components/Popover/Popover.d.ts.map +1 -1
- package/dist/components/Popover/index.cjs +11 -11
- package/dist/components/Popover/index.js +9 -9
- package/dist/components/Popover/usePopover.d.ts.map +1 -1
- package/dist/components/Progress/Progress.d.ts.map +1 -1
- package/dist/components/Progress/index.cjs +2 -2
- package/dist/components/Progress/index.js +1 -1
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroupContext.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroupItem.d.ts.map +1 -1
- package/dist/components/RadioGroup/index.cjs +10 -10
- package/dist/components/RadioGroup/index.js +8 -8
- package/dist/components/Rating/Rating.d.ts.map +1 -1
- package/dist/components/Rating/index.cjs +2 -2
- package/dist/components/Rating/index.js +1 -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/MonthlyView.d.ts.map +1 -1
- package/dist/components/Schedule/Schedule.d.ts.map +1 -1
- package/dist/components/Schedule/TimeGridView.d.ts.map +1 -1
- package/dist/components/Schedule/WeeklyView.d.ts.map +1 -1
- package/dist/components/Schedule/context.d.ts.map +1 -1
- package/dist/components/Schedule/index.cjs +34 -34
- package/dist/components/Schedule/index.js +19 -19
- package/dist/components/Schedule/plugins/EventMovePlugin.d.ts.map +1 -1
- package/dist/components/Schedule/plugins/EventPopoverPlugin.d.ts.map +1 -1
- package/dist/components/Schedule/plugins/EventResizePlugin.d.ts.map +1 -1
- package/dist/components/Schedule/plugins/PaginationPlugin.d.ts.map +1 -1
- package/dist/components/Schedule/plugins/ScheduleEventPopoverContent.d.ts.map +1 -1
- package/dist/components/Schedule/plugins/ViewSelectorPlugin.d.ts.map +1 -1
- package/dist/components/Schedule/shared.d.ts.map +1 -1
- package/dist/components/Schedule/useCurrentTime.d.ts.map +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/SearchFilterInputFilterEditor.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInputTag.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/SearchFilterInputValueEditor.d.ts.map +1 -1
- package/dist/components/SearchFilterInput/index.cjs +32 -32
- package/dist/components/SearchFilterInput/index.js +24 -24
- package/dist/components/SearchFilterInput/internalConfig.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/SegmentedControlContext.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
- package/dist/components/SegmentedControl/index.cjs +3 -3
- package/dist/components/SegmentedControl/index.js +1 -1
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/Select/index.cjs +15 -15
- package/dist/components/Select/index.js +13 -13
- package/dist/components/SideNav/SideNav.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavContext.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavHeading.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/components/SideNav/SideNavSection.d.ts.map +1 -1
- package/dist/components/SideNav/index.cjs +19 -19
- package/dist/components/SideNav/index.js +13 -13
- package/dist/components/SideNav/internal/SideNavCollapseButton.d.ts.map +1 -1
- package/dist/components/Slider/Slider.d.ts.map +1 -1
- package/dist/components/Slider/index.cjs +6 -6
- package/dist/components/Slider/index.js +5 -5
- package/dist/components/Spinner/index.cjs +5 -5
- package/dist/components/Spinner/index.js +4 -4
- package/dist/components/SplitButton/SplitButton.d.ts.map +1 -1
- package/dist/components/SplitButton/index.cjs +15 -15
- package/dist/components/SplitButton/index.js +14 -14
- package/dist/components/Stepper/Stepper.d.ts.map +1 -1
- package/dist/components/Stepper/index.cjs +5 -5
- package/dist/components/Stepper/index.js +4 -4
- package/dist/components/Stepper/internal/Step.d.ts.map +1 -1
- package/dist/components/Switch/Switch.d.ts.map +1 -1
- package/dist/components/Switch/index.cjs +6 -6
- package/dist/components/Switch/index.js +5 -5
- package/dist/components/Table/Table.d.ts.map +1 -1
- 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/index.cjs +54 -54
- package/dist/components/Table/index.js +28 -28
- package/dist/components/Table/plugins/columnResize/useTableColumnResize.d.ts.map +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/useTableFilterState.d.ts.map +1 -1
- package/dist/components/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
- package/dist/components/Table/plugins/pagination/useTablePagination.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/useTableSortable.d.ts.map +1 -1
- package/dist/components/Table/plugins/sortable/useTableSortableState.d.ts.map +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/Tabs.d.ts.map +1 -1
- package/dist/components/Tabs/TabsContext.d.ts.map +1 -1
- package/dist/components/Tabs/index.cjs +15 -15
- package/dist/components/Tabs/index.js +10 -10
- package/dist/components/Tag/Tag.d.ts.map +1 -1
- package/dist/components/Tag/index.cjs +7 -7
- package/dist/components/Tag/index.js +6 -6
- package/dist/components/TagsInput/TagsInput.d.ts.map +1 -1
- package/dist/components/TagsInput/index.cjs +15 -15
- package/dist/components/TagsInput/index.js +14 -14
- package/dist/components/Text/Heading.d.ts.map +1 -1
- package/dist/components/Text/Text.d.ts.map +1 -1
- package/dist/components/Text/index.cjs +5 -5
- package/dist/components/Text/index.js +3 -3
- package/dist/components/Text/useTruncation.d.ts.map +1 -1
- package/dist/components/TextArea/TextArea.d.ts.map +1 -1
- package/dist/components/TextArea/index.cjs +7 -7
- package/dist/components/TextArea/index.js +6 -6
- package/dist/components/TextInput/TextInput.d.ts.map +1 -1
- package/dist/components/TextInput/index.cjs +12 -12
- package/dist/components/TextInput/index.js +11 -11
- package/dist/components/Theme/Theme.d.ts.map +1 -1
- package/dist/components/Theme/index.cjs +2 -2
- package/dist/components/Theme/index.js +1 -1
- package/dist/components/Thumbnail/Thumbnail.d.ts.map +1 -1
- package/dist/components/Thumbnail/index.cjs +10 -10
- package/dist/components/Thumbnail/index.js +9 -9
- package/dist/components/TimeInput/TimeInput.d.ts.map +1 -1
- package/dist/components/TimeInput/index.cjs +11 -11
- package/dist/components/TimeInput/index.js +10 -10
- package/dist/components/Toast/Toast.d.ts.map +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 +12 -12
- package/dist/components/Toast/index.js +9 -9
- package/dist/components/Toast/useToast.d.ts.map +1 -1
- package/dist/components/ToggleButton/ToggleButton.d.ts.map +1 -1
- package/dist/components/ToggleButton/ToggleButtonGroup.d.ts.map +1 -1
- package/dist/components/ToggleButton/index.cjs +7 -7
- package/dist/components/ToggleButton/index.js +5 -5
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip/index.cjs +4 -4
- 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/TopNavContext.d.ts.map +1 -1
- package/dist/components/TopNav/TopNavHeading.d.ts.map +1 -1
- package/dist/components/TopNav/TopNavItem.d.ts.map +1 -1
- package/dist/components/TopNav/index.cjs +18 -18
- package/dist/components/TopNav/index.js +13 -13
- package/dist/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/components/TreeView/TreeViewItem.d.ts.map +1 -1
- package/dist/components/TreeView/index.cjs +3 -3
- package/dist/components/TreeView/index.js +2 -2
- package/dist/index.cjs +246 -246
- package/dist/index.js +76 -76
- package/dist/internal/ActionElement.d.ts.map +1 -1
- package/dist/internal/HoverLayerTrigger.d.ts.map +1 -1
- package/dist/internal/MobileNav/MobileNav.d.ts.map +1 -1
- package/dist/internal/MobileNav/MobileNavToggle.d.ts.map +1 -1
- package/dist/internal/OverflowList.d.ts.map +1 -1
- package/dist/internal/linkAccessibility.d.ts.map +1 -1
- package/dist/internal/useBackdropDismiss.d.ts.map +1 -1
- package/dist/internal/useConstant.d.ts.map +1 -1
- package/dist/internal/useFocusTrap.d.ts.map +1 -1
- package/dist/internal/useGridFocus.d.ts.map +1 -1
- package/dist/internal/useHoverLayer.d.ts.map +1 -1
- package/dist/internal/useLatest.d.ts.map +1 -1
- package/dist/internal/useLayer.d.ts.map +1 -1
- package/dist/internal/useListboxNavigation.d.ts.map +1 -1
- package/dist/internal/useMediaQuery.d.ts.map +1 -1
- package/dist/internal/useScrollLock.d.ts.map +1 -1
- package/dist/internal/useSelectListbox.d.ts.map +1 -1
- package/dist/internal/useShallowEqualMemo.d.ts.map +1 -1
- package/package.json +3 -2
- package/dist/chunk-2AOR4EVA.cjs.map +0 -1
- package/dist/chunk-2N3PIXZ5.cjs.map +0 -1
- package/dist/chunk-3NIDAKCF.cjs.map +0 -1
- package/dist/chunk-3PCXFOOS.js.map +0 -1
- package/dist/chunk-3PEK2Q54.cjs.map +0 -1
- package/dist/chunk-3W3ST5Y3.cjs.map +0 -1
- package/dist/chunk-4MIIXRZN.cjs.map +0 -1
- package/dist/chunk-56PY2CD7.js.map +0 -1
- package/dist/chunk-5FQKELP6.js.map +0 -1
- package/dist/chunk-5HPXPF3F.js.map +0 -1
- package/dist/chunk-5K3C3INR.cjs.map +0 -1
- package/dist/chunk-5RFHYDQY.js.map +0 -1
- package/dist/chunk-5UGHDUMO.js.map +0 -1
- package/dist/chunk-63QPCV4F.cjs.map +0 -1
- package/dist/chunk-6OWEKKOC.js.map +0 -1
- package/dist/chunk-6R2UZNVE.js.map +0 -1
- package/dist/chunk-6SFMORQF.cjs.map +0 -1
- package/dist/chunk-6SKIBUCY.js.map +0 -1
- package/dist/chunk-6SMVH3ON.cjs.map +0 -1
- package/dist/chunk-6ZPHID26.cjs.map +0 -1
- package/dist/chunk-AC4E3WQA.cjs.map +0 -1
- package/dist/chunk-ACGPBJIS.js.map +0 -1
- package/dist/chunk-ARUOMLOJ.cjs.map +0 -1
- package/dist/chunk-BBLAZNCC.js.map +0 -1
- package/dist/chunk-BKKLUIIU.js.map +0 -1
- package/dist/chunk-BSXUNRET.cjs.map +0 -1
- package/dist/chunk-BYV7NXC5.cjs.map +0 -1
- package/dist/chunk-CQYBC3RJ.cjs.map +0 -1
- package/dist/chunk-CWZCBYVZ.cjs.map +0 -1
- package/dist/chunk-DE7JLNSO.js.map +0 -1
- package/dist/chunk-DVCDAKPK.cjs.map +0 -1
- package/dist/chunk-EBV3EX3J.js.map +0 -1
- package/dist/chunk-ESWYWWY2.js.map +0 -1
- package/dist/chunk-EZFQCREN.cjs.map +0 -1
- package/dist/chunk-FQSVY4QB.js.map +0 -1
- package/dist/chunk-FTNEAX24.js.map +0 -1
- package/dist/chunk-GJZAGTPV.cjs.map +0 -1
- package/dist/chunk-GTZQT6MK.js.map +0 -1
- package/dist/chunk-H7LOOHWU.cjs.map +0 -1
- package/dist/chunk-HC57X3U4.js.map +0 -1
- package/dist/chunk-HENIVDYQ.cjs.map +0 -1
- package/dist/chunk-HN4W6TM6.cjs.map +0 -1
- package/dist/chunk-I2DXEPDF.js.map +0 -1
- package/dist/chunk-IREOTHD3.cjs.map +0 -1
- package/dist/chunk-J242UTPO.cjs.map +0 -1
- package/dist/chunk-JIF5TZHC.cjs.map +0 -1
- package/dist/chunk-JMVYWHJ7.js.map +0 -1
- package/dist/chunk-KEPCKSDE.js.map +0 -1
- package/dist/chunk-KLCEDPJ4.cjs.map +0 -1
- package/dist/chunk-KWZMXX4F.js.map +0 -1
- package/dist/chunk-L747HIHG.js.map +0 -1
- package/dist/chunk-LBOWHXOF.js.map +0 -1
- package/dist/chunk-MDQSVB2Y.js.map +0 -1
- package/dist/chunk-MJHEPDDX.cjs.map +0 -1
- package/dist/chunk-MYSLJWCW.cjs.map +0 -1
- package/dist/chunk-N6C37HXD.js.map +0 -1
- package/dist/chunk-NGNVNRAZ.cjs.map +0 -1
- package/dist/chunk-NIKT7XSO.js.map +0 -1
- package/dist/chunk-NYOZQE6P.js.map +0 -1
- package/dist/chunk-OPBELSKN.js.map +0 -1
- package/dist/chunk-OUUG4RHO.js.map +0 -1
- package/dist/chunk-PG4CZRTU.js.map +0 -1
- package/dist/chunk-PGBYMBGH.js.map +0 -1
- package/dist/chunk-PKZSJX53.cjs.map +0 -1
- package/dist/chunk-PQXPYN23.js.map +0 -1
- package/dist/chunk-PXTTIAC4.cjs.map +0 -1
- package/dist/chunk-PYN75QAG.js.map +0 -1
- package/dist/chunk-PZHRFASW.js.map +0 -1
- package/dist/chunk-Q6YOSQAM.js.map +0 -1
- package/dist/chunk-QQCEGAUQ.cjs.map +0 -1
- package/dist/chunk-RLIBY7XB.cjs.map +0 -1
- package/dist/chunk-S4WWBV4N.js.map +0 -1
- package/dist/chunk-TACO5IWI.cjs.map +0 -1
- package/dist/chunk-UJDHRILS.cjs.map +0 -1
- package/dist/chunk-UUVI3TYW.js.map +0 -1
- package/dist/chunk-VK7DXUGH.cjs.map +0 -1
- package/dist/chunk-VPWNRWNO.cjs.map +0 -1
- package/dist/chunk-WOVSJHY6.cjs.map +0 -1
- package/dist/chunk-WTCH3QCQ.js.map +0 -1
- package/dist/chunk-XUCLNECV.js.map +0 -1
- package/dist/chunk-YGESCFX2.js.map +0 -1
- package/dist/chunk-ZDZ7FW6V.cjs.map +0 -1
- package/dist/chunk-ZW2ZOEYM.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/MultiSelect/MultiSelect.recipe.ts","../src/components/MultiSelect/MultiSelect.tsx"],"names":[],"mappings":"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","file":"chunk-WLWSQKWI.js","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const multiSelectMenuRecipe = sva({\n slots: [\n 'menu',\n 'search',\n 'option',\n 'optionContent',\n 'checkbox',\n 'iconSlot',\n 'sectionHeading',\n 'divider',\n ],\n base: {\n menu: {\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n maxH: '80',\n overflowY: 'auto',\n p: '1',\n },\n search: {\n w: 'full',\n px: '2',\n py: '1',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border.emphasized',\n borderRadius: 'md',\n fontFamily: 'body',\n outline: 'none',\n _focus: {\n borderColor: 'primary',\n },\n },\n option: {\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n w: 'full',\n px: '2',\n py: '2',\n borderWidth: 0,\n borderRadius: 'md',\n bg: 'transparent',\n color: 'fg',\n cursor: 'pointer',\n fontFamily: 'body',\n textAlign: 'start',\n _hover: {bg: 'bg.subtle'},\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffsetTight',\n },\n '&[aria-disabled=\"true\"]': {\n opacity: 0.55,\n cursor: 'not-allowed',\n pointerEvents: 'none',\n },\n },\n optionContent: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '2',\n minW: 0,\n flex: 1,\n },\n checkbox: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n w: '5',\n h: '5',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'fg.muted',\n borderRadius: 'sm',\n bg: 'bg',\n color: 'fg.onPrimary',\n },\n iconSlot: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n color: 'fg.muted',\n },\n sectionHeading: {\n px: '2',\n py: '1',\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'sm',\n fontWeight: 'semibold',\n },\n divider: {\n h: '1px',\n bg: 'border',\n my: '1',\n },\n },\n variants: {\n isHighlighted: {\n true: {option: {bg: 'bg.subtle'}},\n false: {},\n },\n isSelected: {\n true: {checkbox: {bg: 'primary', borderColor: 'primary'}},\n false: {},\n },\n },\n defaultVariants: {\n isHighlighted: false,\n isSelected: false,\n },\n});\n\nexport type MultiSelectMenuVariants = RecipeVariantProps<\n typeof multiSelectMenuRecipe\n>;\n\nexport const multiSelectTriggerRecipe = sva({\n slots: ['wrapper', 'trigger', 'triggerText', 'badges'],\n base: {\n wrapper: {\n cursor: 'pointer',\n },\n trigger: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: '2',\n flex: 1,\n minW: 0,\n p: 0,\n borderWidth: 0,\n bg: 'transparent',\n color: 'inherit',\n cursor: 'pointer',\n fontFamily: 'body',\n outline: 'none',\n textAlign: 'start',\n _disabled: {\n cursor: 'not-allowed',\n },\n },\n triggerText: {\n flex: 1,\n minW: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n },\n badges: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n overflow: 'hidden',\n },\n },\n variants: {\n isDisabled: {\n true: {wrapper: {cursor: 'not-allowed'}},\n false: {},\n },\n isPlaceholder: {\n true: {triggerText: {color: 'fg.muted'}},\n false: {},\n },\n },\n defaultVariants: {\n isDisabled: false,\n isPlaceholder: false,\n },\n});\n\nexport type MultiSelectTriggerVariants = RecipeVariantProps<\n typeof multiSelectTriggerRecipe\n>;\n","import {Check, ChevronDown, X} from 'lucide-react';\nimport {\n useCallback,\n useMemo,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {Badge} from 'components/Badge';\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} from 'components/Field/inputStyles';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport {\n multiSelectMenuRecipe,\n multiSelectTriggerRecipe,\n} from 'components/MultiSelect/MultiSelect.recipe';\nimport {Popover} from 'components/Popover';\nimport {Spinner} from 'components/Spinner';\nimport {Text} from 'components/Text';\nimport {cx} from 'internal/cx';\nimport {\n renderSelectListboxOptions,\n useSelectListbox,\n type SelectListboxOptionData,\n} from 'internal/useSelectListbox';\n\nexport interface MultiSelectOptionData extends SelectListboxOptionData {\n /**\n * Icon displayed before the label.\n */\n icon?: IconComponent;\n /**\n * Whether the option is disabled.\n */\n isDisabled?: boolean;\n /**\n * Option label. Defaults to `value`.\n */\n label?: string;\n /**\n * Option value.\n */\n value: string;\n}\n\nexport interface MultiSelectDivider {\n /**\n * Discriminator identifying a divider entry.\n */\n type: 'divider';\n}\n\nexport interface MultiSelectSection {\n /**\n * Options within this section.\n */\n options: ReadonlyArray<MultiSelectOptionData>;\n /**\n * Optional heading text for the section.\n */\n title?: string;\n /**\n * Discriminator identifying a section entry.\n */\n type: 'section';\n}\n\nexport type MultiSelectOption =\n | MultiSelectDivider\n | MultiSelectOptionData\n | MultiSelectSection\n | string;\n\nexport type MultiSelectTriggerDisplay = 'count' | 'labels' | 'badges';\n\nexport type MultiSelectProps = {\n /**\n * Custom render function for selectable options.\n */\n children?: (option: MultiSelectOptionData) => ReactNode;\n /**\n * Additional CSS class names applied to the trigger wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the combobox button.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: ReactNode;\n /**\n * Whether to show a clear button when values are selected.\n * @default false\n */\n hasClear?: boolean;\n /**\n * Whether to show search input in the dropdown.\n * @default false\n */\n hasSearch?: boolean;\n /**\n * Whether to show a select-all option.\n * @default false\n */\n hasSelectAll?: boolean;\n /**\n * Whether the selector starts open.\n * @default false\n */\n isDefaultOpen?: boolean;\n /**\n * Whether the selector is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Whether the selector is loading.\n * @default false\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Maximum number of badges before showing an overflow count.\n * @default 3\n */\n maxBadges?: number;\n /**\n * Called when selection changes.\n */\n onChange: (value: string[]) => void;\n /**\n * Options to display.\n */\n options: ReadonlyArray<MultiSelectOption>;\n /**\n * Placeholder shown when no values are selected.\n * @default 'Select...'\n */\n placeholder?: string;\n /**\n * Ref forwarded to the combobox button.\n */\n ref?: Ref<HTMLButtonElement>;\n /**\n * Search input placeholder.\n * @default 'Search...'\n */\n searchPlaceholder?: string;\n /**\n * Select-all option label.\n * @default 'Select all'\n */\n selectAllLabel?: string;\n /**\n * Select size.\n * @default 'md'\n */\n size?: InputSize;\n /**\n * Start icon rendered in the trigger.\n */\n startIcon?: IconComponent;\n /**\n * Validation status displayed below the selector.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the trigger wrapper.\n */\n style?: CSSProperties;\n /**\n * How selected items are summarized in the trigger.\n * @default 'count'\n */\n triggerDisplay?: MultiSelectTriggerDisplay;\n /**\n * Selected option values.\n */\n value: string[];\n} & FieldNecessity;\n\n/**\n * Multi-select dropdown field with checkbox-style options.\n */\nexport function MultiSelect({\n children,\n className,\n 'data-testid': dataTestId,\n description,\n hasClear = false,\n hasSearch = false,\n hasSelectAll = false,\n isDefaultOpen = false,\n isDisabled = false,\n isLabelHidden = false,\n isLoading = false,\n isOptional,\n isRequired,\n label,\n labelIcon,\n labelTooltip,\n maxBadges = 3,\n onChange,\n options,\n placeholder = 'Select...',\n ref,\n searchPlaceholder = 'Search...',\n selectAllLabel = 'Select all',\n size = 'md',\n startIcon,\n status,\n style,\n triggerDisplay = 'count',\n value,\n}: MultiSelectProps): React.JSX.Element {\n const selectedValues = useMemo(() => new Set(value), [value]);\n\n const toggleValue = useCallback(\n (option: MultiSelectOptionData): boolean => {\n if (option.isDisabled === true) {\n return false;\n }\n\n const nextValues = new Set(value);\n if (nextValues.has(option.value)) {\n nextValues.delete(option.value);\n } else {\n nextValues.add(option.value);\n }\n onChange(Array.from(nextValues));\n return true;\n },\n [onChange, value],\n );\n\n const {\n activeDescendantId,\n describedBy,\n descriptionID,\n filteredValues,\n getOptionId,\n handleKeyboardNavigation,\n handleOptionClick,\n handleOptionMouseEnter,\n highlightedValue,\n inputId,\n isInteractionDisabled,\n isOpen,\n listboxId,\n query,\n selectableOptions,\n setHighlightedValue,\n setIsOpen,\n setQuery,\n statusMessageID,\n triggerRef,\n visibleSelectableOptions,\n } = useSelectListbox({\n description,\n isDefaultOpen,\n isDisabled,\n isHighlightClearedOnCommit: false,\n isLoading,\n onCommitOption: toggleValue,\n options,\n selectedValues,\n status,\n });\n\n const selectedOptions = useMemo(\n () => selectableOptions.filter(option => selectedValues.has(option.value)),\n [selectableOptions, selectedValues],\n );\n const enabledVisibleOptions = useMemo(\n () => visibleSelectableOptions.filter(option => option.isDisabled !== true),\n [visibleSelectableOptions],\n );\n const allSelected =\n enabledVisibleOptions.length > 0 &&\n enabledVisibleOptions.every(option => selectedValues.has(option.value));\n\n const toggleAll = useCallback(() => {\n if (allSelected) {\n onChange(\n value.filter(\n optionValue =>\n !enabledVisibleOptions.some(option => option.value === optionValue),\n ),\n );\n return;\n }\n\n const nextValues = new Set(value);\n for (const option of enabledVisibleOptions) {\n nextValues.add(option.value);\n }\n onChange(Array.from(nextValues));\n }, [allSelected, onChange, enabledVisibleOptions, value]);\n\n const menuClasses = multiSelectMenuRecipe();\n const triggerClasses = multiSelectTriggerRecipe({\n isDisabled: isInteractionDisabled,\n isPlaceholder: selectedOptions.length === 0,\n });\n\n const renderTriggerValue = (): ReactNode => {\n if (selectedOptions.length === 0) {\n return <span className={triggerClasses.triggerText}>{placeholder}</span>;\n }\n if (triggerDisplay === 'labels') {\n const labels = selectedOptions.map(\n option => option.label ?? option.value,\n );\n return (\n <span className={triggerClasses.triggerText}>{labels.join(', ')}</span>\n );\n }\n if (triggerDisplay === 'badges') {\n const visible = selectedOptions.slice(0, maxBadges);\n const overflow = selectedOptions.length - visible.length;\n return (\n <span className={triggerClasses.badges}>\n {visible.map(option => (\n <Badge key={option.value} label={option.label ?? option.value} />\n ))}\n {overflow > 0 ? (\n <Text as=\"span\" color=\"secondary\" type=\"supporting\">\n +{overflow}\n </Text>\n ) : null}\n </span>\n );\n }\n return (\n <span className={triggerClasses.triggerText}>\n {selectedOptions.length} selected\n </span>\n );\n };\n\n const renderOption = (option: MultiSelectOptionData): ReactNode => {\n if (!filteredValues.has(option.value)) {\n return null;\n }\n const isSelected = selectedValues.has(option.value);\n const isHighlighted = highlightedValue === option.value;\n const optionClasses = multiSelectMenuRecipe({isHighlighted, isSelected});\n return (\n // eslint-disable-next-line jsx-a11y-x/click-events-have-key-events -- keyboard navigation is handled by the combobox input, not individual options\n <div\n aria-disabled={option.isDisabled ?? undefined}\n aria-selected={isSelected}\n className={optionClasses.option}\n data-value={option.value}\n id={getOptionId(option.value)}\n key={option.value}\n onClick={option.isDisabled ? undefined : handleOptionClick}\n onMouseEnter={handleOptionMouseEnter}\n role=\"option\"\n tabIndex={isHighlighted ? 0 : -1}>\n <span aria-hidden=\"true\" className={optionClasses.checkbox}>\n {isSelected ? <Icon icon={Check} size=\"sm\" /> : null}\n </span>\n <span className={optionClasses.optionContent}>\n {children == null ? (\n <>\n {option.icon != null ? (\n <span className={optionClasses.iconSlot}>\n <Icon color=\"secondary\" icon={option.icon} size=\"sm\" />\n </span>\n ) : null}\n {option.label}\n </>\n ) : (\n children(option)\n )}\n </span>\n </div>\n );\n };\n\n const optionNodes = renderSelectListboxOptions({\n dividerClassName: menuClasses.divider ?? '',\n inputId,\n options,\n renderOption,\n sectionHeadingClassName: menuClasses.sectionHeading ?? '',\n });\n\n const selectAllClasses = multiSelectMenuRecipe({isSelected: allSelected});\n\n const menu = (\n <>\n {hasSearch ? (\n <input\n aria-activedescendant={activeDescendantId}\n aria-autocomplete=\"list\"\n aria-controls={listboxId}\n aria-label={`Search ${label}`}\n className={menuClasses.search}\n onChange={event => {\n setQuery(event.target.value);\n setHighlightedValue(null);\n }}\n onKeyDown={handleKeyboardNavigation}\n placeholder={searchPlaceholder}\n type=\"search\"\n value={query}\n />\n ) : null}\n <div\n aria-label={`${label} options`}\n aria-multiselectable=\"true\"\n className={menuClasses.menu}\n id={listboxId}\n role=\"listbox\">\n {hasSelectAll ? (\n // eslint-disable-next-line jsx-a11y-x/click-events-have-key-events -- keyboard navigation is handled by the combobox input, not individual options\n <div\n aria-selected={allSelected}\n className={selectAllClasses.option}\n onClick={toggleAll}\n role=\"option\"\n tabIndex={-1}>\n <span aria-hidden=\"true\" className={selectAllClasses.checkbox}>\n {allSelected ? <Icon icon={Check} size=\"sm\" /> : null}\n </span>\n <span className={selectAllClasses.optionContent}>\n {selectAllLabel}\n </span>\n </div>\n ) : null}\n {optionNodes}\n </div>\n </>\n );\n\n const trigger = (\n // eslint-disable-next-line jsx-a11y-x/click-events-have-key-events, jsx-a11y-x/no-static-element-interactions -- mouse clicks anywhere on the visual input delegate to the inner combobox button; keyboard handling stays on that button.\n <div\n className={cx(\n inputRecipe({\n size,\n status: status?.type,\n isDisabled,\n }),\n triggerClasses.wrapper,\n )}\n onClick={() => {\n if (!isInteractionDisabled) {\n setIsOpen(currentIsOpen => !currentIsOpen);\n }\n }}\n ref={triggerRef}>\n {startIcon != null ? (\n <span className={menuClasses.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <button\n aria-activedescendant={activeDescendantId}\n aria-busy={isLoading || undefined}\n aria-controls={listboxId}\n aria-describedby={describedBy}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n aria-invalid={status?.type === 'error' || undefined}\n className={triggerClasses.trigger}\n data-testid={dataTestId}\n disabled={isInteractionDisabled}\n id={inputId}\n onKeyDown={handleKeyboardNavigation}\n ref={ref}\n role=\"combobox\"\n type=\"button\">\n {renderTriggerValue()}\n </button>\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {hasClear && value.length > 0 && !isDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={event => {\n event.stopPropagation();\n onChange([]);\n }}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n <span className={menuClasses.iconSlot}>\n <Icon icon={ChevronDown} size=\"sm\" />\n </span>\n </div>\n );\n\n const necessity = getNecessity(isOptional, isRequired);\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 {trigger}\n <Popover\n anchorRef={triggerRef}\n content={menu}\n hasAutoFocus={hasSearch}\n hasCloseButton={false}\n isEnabled={false}\n isOpen={isOpen}\n onOpenChange={setIsOpen}\n />\n </Field>\n );\n}\n\nMultiSelect.displayName = 'MultiSelect';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/MultiSelect/MultiSelect.recipe.ts","../src/components/MultiSelect/MultiSelect.tsx"],"names":[],"mappings":"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","file":"chunk-ORBYW3LT.js","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const multiSelectMenuRecipe = sva({\n slots: [\n 'menu',\n 'search',\n 'option',\n 'optionContent',\n 'checkbox',\n 'iconSlot',\n 'sectionHeading',\n 'divider',\n ],\n base: {\n menu: {\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n maxH: '80',\n overflowY: 'auto',\n p: '1',\n },\n search: {\n w: 'full',\n px: '2',\n py: '1',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border.emphasized',\n borderRadius: 'md',\n fontFamily: 'body',\n outline: 'none',\n _focus: {\n borderColor: 'primary',\n },\n },\n option: {\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n w: 'full',\n px: '2',\n py: '2',\n borderWidth: 0,\n borderRadius: 'md',\n bg: 'transparent',\n color: 'fg',\n cursor: 'pointer',\n fontFamily: 'body',\n textAlign: 'start',\n _hover: {bg: 'bg.subtle'},\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffsetTight',\n },\n '&[aria-disabled=\"true\"]': {\n opacity: 0.55,\n cursor: 'not-allowed',\n pointerEvents: 'none',\n },\n },\n optionContent: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '2',\n minW: 0,\n flex: 1,\n },\n checkbox: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n w: '5',\n h: '5',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'fg.muted',\n borderRadius: 'sm',\n bg: 'bg',\n color: 'fg.onPrimary',\n },\n iconSlot: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n color: 'fg.muted',\n },\n sectionHeading: {\n px: '2',\n py: '1',\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'sm',\n fontWeight: 'semibold',\n },\n divider: {\n h: '1px',\n bg: 'border',\n my: '1',\n },\n },\n variants: {\n isHighlighted: {\n true: {option: {bg: 'bg.subtle'}},\n false: {},\n },\n isSelected: {\n true: {checkbox: {bg: 'primary', borderColor: 'primary'}},\n false: {},\n },\n },\n defaultVariants: {\n isHighlighted: false,\n isSelected: false,\n },\n});\n\nexport type MultiSelectMenuVariants = RecipeVariantProps<\n typeof multiSelectMenuRecipe\n>;\n\nexport const multiSelectTriggerRecipe = sva({\n slots: ['wrapper', 'trigger', 'triggerText', 'badges'],\n base: {\n wrapper: {\n cursor: 'pointer',\n },\n trigger: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: '2',\n flex: 1,\n minW: 0,\n p: 0,\n borderWidth: 0,\n bg: 'transparent',\n color: 'inherit',\n cursor: 'pointer',\n fontFamily: 'body',\n outline: 'none',\n textAlign: 'start',\n _disabled: {\n cursor: 'not-allowed',\n },\n },\n triggerText: {\n flex: 1,\n minW: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n },\n badges: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n overflow: 'hidden',\n },\n },\n variants: {\n isDisabled: {\n true: {wrapper: {cursor: 'not-allowed'}},\n false: {},\n },\n isPlaceholder: {\n true: {triggerText: {color: 'fg.muted'}},\n false: {},\n },\n },\n defaultVariants: {\n isDisabled: false,\n isPlaceholder: false,\n },\n});\n\nexport type MultiSelectTriggerVariants = RecipeVariantProps<\n typeof multiSelectTriggerRecipe\n>;\n","'use client';\n\nimport {Check, ChevronDown, X} from 'lucide-react';\nimport {\n useCallback,\n useMemo,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {Badge} from 'components/Badge';\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} from 'components/Field/inputStyles';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport {\n multiSelectMenuRecipe,\n multiSelectTriggerRecipe,\n} from 'components/MultiSelect/MultiSelect.recipe';\nimport {Popover} from 'components/Popover';\nimport {Spinner} from 'components/Spinner';\nimport {Text} from 'components/Text';\nimport {cx} from 'internal/cx';\nimport {\n renderSelectListboxOptions,\n useSelectListbox,\n type SelectListboxOptionData,\n} from 'internal/useSelectListbox';\n\nexport interface MultiSelectOptionData extends SelectListboxOptionData {\n /**\n * Icon displayed before the label.\n */\n icon?: IconComponent;\n /**\n * Whether the option is disabled.\n */\n isDisabled?: boolean;\n /**\n * Option label. Defaults to `value`.\n */\n label?: string;\n /**\n * Option value.\n */\n value: string;\n}\n\nexport interface MultiSelectDivider {\n /**\n * Discriminator identifying a divider entry.\n */\n type: 'divider';\n}\n\nexport interface MultiSelectSection {\n /**\n * Options within this section.\n */\n options: ReadonlyArray<MultiSelectOptionData>;\n /**\n * Optional heading text for the section.\n */\n title?: string;\n /**\n * Discriminator identifying a section entry.\n */\n type: 'section';\n}\n\nexport type MultiSelectOption =\n | MultiSelectDivider\n | MultiSelectOptionData\n | MultiSelectSection\n | string;\n\nexport type MultiSelectTriggerDisplay = 'count' | 'labels' | 'badges';\n\nexport type MultiSelectProps = {\n /**\n * Custom render function for selectable options.\n */\n children?: (option: MultiSelectOptionData) => ReactNode;\n /**\n * Additional CSS class names applied to the trigger wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the combobox button.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: ReactNode;\n /**\n * Whether to show a clear button when values are selected.\n * @default false\n */\n hasClear?: boolean;\n /**\n * Whether to show search input in the dropdown.\n * @default false\n */\n hasSearch?: boolean;\n /**\n * Whether to show a select-all option.\n * @default false\n */\n hasSelectAll?: boolean;\n /**\n * Whether the selector starts open.\n * @default false\n */\n isDefaultOpen?: boolean;\n /**\n * Whether the selector is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Whether the selector is loading.\n * @default false\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Maximum number of badges before showing an overflow count.\n * @default 3\n */\n maxBadges?: number;\n /**\n * Called when selection changes.\n */\n onChange: (value: string[]) => void;\n /**\n * Options to display.\n */\n options: ReadonlyArray<MultiSelectOption>;\n /**\n * Placeholder shown when no values are selected.\n * @default 'Select...'\n */\n placeholder?: string;\n /**\n * Ref forwarded to the combobox button.\n */\n ref?: Ref<HTMLButtonElement>;\n /**\n * Search input placeholder.\n * @default 'Search...'\n */\n searchPlaceholder?: string;\n /**\n * Select-all option label.\n * @default 'Select all'\n */\n selectAllLabel?: string;\n /**\n * Select size.\n * @default 'md'\n */\n size?: InputSize;\n /**\n * Start icon rendered in the trigger.\n */\n startIcon?: IconComponent;\n /**\n * Validation status displayed below the selector.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the trigger wrapper.\n */\n style?: CSSProperties;\n /**\n * How selected items are summarized in the trigger.\n * @default 'count'\n */\n triggerDisplay?: MultiSelectTriggerDisplay;\n /**\n * Selected option values.\n */\n value: string[];\n} & FieldNecessity;\n\n/**\n * Multi-select dropdown field with checkbox-style options.\n */\nexport function MultiSelect({\n children,\n className,\n 'data-testid': dataTestId,\n description,\n hasClear = false,\n hasSearch = false,\n hasSelectAll = false,\n isDefaultOpen = false,\n isDisabled = false,\n isLabelHidden = false,\n isLoading = false,\n isOptional,\n isRequired,\n label,\n labelIcon,\n labelTooltip,\n maxBadges = 3,\n onChange,\n options,\n placeholder = 'Select...',\n ref,\n searchPlaceholder = 'Search...',\n selectAllLabel = 'Select all',\n size = 'md',\n startIcon,\n status,\n style,\n triggerDisplay = 'count',\n value,\n}: MultiSelectProps): React.JSX.Element {\n const selectedValues = useMemo(() => new Set(value), [value]);\n\n const toggleValue = useCallback(\n (option: MultiSelectOptionData): boolean => {\n if (option.isDisabled === true) {\n return false;\n }\n\n const nextValues = new Set(value);\n if (nextValues.has(option.value)) {\n nextValues.delete(option.value);\n } else {\n nextValues.add(option.value);\n }\n onChange(Array.from(nextValues));\n return true;\n },\n [onChange, value],\n );\n\n const {\n activeDescendantId,\n describedBy,\n descriptionID,\n filteredValues,\n getOptionId,\n handleKeyboardNavigation,\n handleOptionClick,\n handleOptionMouseEnter,\n highlightedValue,\n inputId,\n isInteractionDisabled,\n isOpen,\n listboxId,\n query,\n selectableOptions,\n setHighlightedValue,\n setIsOpen,\n setQuery,\n statusMessageID,\n triggerRef,\n visibleSelectableOptions,\n } = useSelectListbox({\n description,\n isDefaultOpen,\n isDisabled,\n isHighlightClearedOnCommit: false,\n isLoading,\n onCommitOption: toggleValue,\n options,\n selectedValues,\n status,\n });\n\n const selectedOptions = useMemo(\n () => selectableOptions.filter(option => selectedValues.has(option.value)),\n [selectableOptions, selectedValues],\n );\n const enabledVisibleOptions = useMemo(\n () => visibleSelectableOptions.filter(option => option.isDisabled !== true),\n [visibleSelectableOptions],\n );\n const allSelected =\n enabledVisibleOptions.length > 0 &&\n enabledVisibleOptions.every(option => selectedValues.has(option.value));\n\n const toggleAll = useCallback(() => {\n if (allSelected) {\n onChange(\n value.filter(\n optionValue =>\n !enabledVisibleOptions.some(option => option.value === optionValue),\n ),\n );\n return;\n }\n\n const nextValues = new Set(value);\n for (const option of enabledVisibleOptions) {\n nextValues.add(option.value);\n }\n onChange(Array.from(nextValues));\n }, [allSelected, onChange, enabledVisibleOptions, value]);\n\n const menuClasses = multiSelectMenuRecipe();\n const triggerClasses = multiSelectTriggerRecipe({\n isDisabled: isInteractionDisabled,\n isPlaceholder: selectedOptions.length === 0,\n });\n\n const renderTriggerValue = (): ReactNode => {\n if (selectedOptions.length === 0) {\n return <span className={triggerClasses.triggerText}>{placeholder}</span>;\n }\n if (triggerDisplay === 'labels') {\n const labels = selectedOptions.map(\n option => option.label ?? option.value,\n );\n return (\n <span className={triggerClasses.triggerText}>{labels.join(', ')}</span>\n );\n }\n if (triggerDisplay === 'badges') {\n const visible = selectedOptions.slice(0, maxBadges);\n const overflow = selectedOptions.length - visible.length;\n return (\n <span className={triggerClasses.badges}>\n {visible.map(option => (\n <Badge key={option.value} label={option.label ?? option.value} />\n ))}\n {overflow > 0 ? (\n <Text as=\"span\" color=\"secondary\" type=\"supporting\">\n +{overflow}\n </Text>\n ) : null}\n </span>\n );\n }\n return (\n <span className={triggerClasses.triggerText}>\n {selectedOptions.length} selected\n </span>\n );\n };\n\n const renderOption = (option: MultiSelectOptionData): ReactNode => {\n if (!filteredValues.has(option.value)) {\n return null;\n }\n const isSelected = selectedValues.has(option.value);\n const isHighlighted = highlightedValue === option.value;\n const optionClasses = multiSelectMenuRecipe({isHighlighted, isSelected});\n return (\n // eslint-disable-next-line jsx-a11y-x/click-events-have-key-events -- keyboard navigation is handled by the combobox input, not individual options\n <div\n aria-disabled={option.isDisabled ?? undefined}\n aria-selected={isSelected}\n className={optionClasses.option}\n data-value={option.value}\n id={getOptionId(option.value)}\n key={option.value}\n onClick={option.isDisabled ? undefined : handleOptionClick}\n onMouseEnter={handleOptionMouseEnter}\n role=\"option\"\n tabIndex={isHighlighted ? 0 : -1}>\n <span aria-hidden=\"true\" className={optionClasses.checkbox}>\n {isSelected ? <Icon icon={Check} size=\"sm\" /> : null}\n </span>\n <span className={optionClasses.optionContent}>\n {children == null ? (\n <>\n {option.icon != null ? (\n <span className={optionClasses.iconSlot}>\n <Icon color=\"secondary\" icon={option.icon} size=\"sm\" />\n </span>\n ) : null}\n {option.label}\n </>\n ) : (\n children(option)\n )}\n </span>\n </div>\n );\n };\n\n const optionNodes = renderSelectListboxOptions({\n dividerClassName: menuClasses.divider ?? '',\n inputId,\n options,\n renderOption,\n sectionHeadingClassName: menuClasses.sectionHeading ?? '',\n });\n\n const selectAllClasses = multiSelectMenuRecipe({isSelected: allSelected});\n\n const menu = (\n <>\n {hasSearch ? (\n <input\n aria-activedescendant={activeDescendantId}\n aria-autocomplete=\"list\"\n aria-controls={listboxId}\n aria-label={`Search ${label}`}\n className={menuClasses.search}\n onChange={event => {\n setQuery(event.target.value);\n setHighlightedValue(null);\n }}\n onKeyDown={handleKeyboardNavigation}\n placeholder={searchPlaceholder}\n type=\"search\"\n value={query}\n />\n ) : null}\n <div\n aria-label={`${label} options`}\n aria-multiselectable=\"true\"\n className={menuClasses.menu}\n id={listboxId}\n role=\"listbox\">\n {hasSelectAll ? (\n // eslint-disable-next-line jsx-a11y-x/click-events-have-key-events -- keyboard navigation is handled by the combobox input, not individual options\n <div\n aria-selected={allSelected}\n className={selectAllClasses.option}\n onClick={toggleAll}\n role=\"option\"\n tabIndex={-1}>\n <span aria-hidden=\"true\" className={selectAllClasses.checkbox}>\n {allSelected ? <Icon icon={Check} size=\"sm\" /> : null}\n </span>\n <span className={selectAllClasses.optionContent}>\n {selectAllLabel}\n </span>\n </div>\n ) : null}\n {optionNodes}\n </div>\n </>\n );\n\n const trigger = (\n // eslint-disable-next-line jsx-a11y-x/click-events-have-key-events, jsx-a11y-x/no-static-element-interactions -- mouse clicks anywhere on the visual input delegate to the inner combobox button; keyboard handling stays on that button.\n <div\n className={cx(\n inputRecipe({\n size,\n status: status?.type,\n isDisabled,\n }),\n triggerClasses.wrapper,\n )}\n onClick={() => {\n if (!isInteractionDisabled) {\n setIsOpen(currentIsOpen => !currentIsOpen);\n }\n }}\n ref={triggerRef}>\n {startIcon != null ? (\n <span className={menuClasses.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <button\n aria-activedescendant={activeDescendantId}\n aria-busy={isLoading || undefined}\n aria-controls={listboxId}\n aria-describedby={describedBy}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n aria-invalid={status?.type === 'error' || undefined}\n className={triggerClasses.trigger}\n data-testid={dataTestId}\n disabled={isInteractionDisabled}\n id={inputId}\n onKeyDown={handleKeyboardNavigation}\n ref={ref}\n role=\"combobox\"\n type=\"button\">\n {renderTriggerValue()}\n </button>\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {hasClear && value.length > 0 && !isDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={event => {\n event.stopPropagation();\n onChange([]);\n }}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n <span className={menuClasses.iconSlot}>\n <Icon icon={ChevronDown} size=\"sm\" />\n </span>\n </div>\n );\n\n const necessity = getNecessity(isOptional, isRequired);\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 {trigger}\n <Popover\n anchorRef={triggerRef}\n content={menu}\n hasAutoFocus={hasSearch}\n hasCloseButton={false}\n isEnabled={false}\n isOpen={isOpen}\n onOpenChange={setIsOpen}\n />\n </Field>\n );\n}\n\nMultiSelect.displayName = 'MultiSelect';\n"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
'use client';
|
|
1
2
|
import { createContext, use } from 'react';
|
|
2
3
|
|
|
3
4
|
// src/components/ButtonGroup/ButtonGroupContext.ts
|
|
@@ -10,5 +11,5 @@ function useButtonGroup() {
|
|
|
10
11
|
}
|
|
11
12
|
|
|
12
13
|
export { ButtonGroupContext, useButtonGroup };
|
|
13
|
-
//# sourceMappingURL=chunk-
|
|
14
|
-
//# sourceMappingURL=chunk-
|
|
14
|
+
//# sourceMappingURL=chunk-OXBBLHTC.js.map
|
|
15
|
+
//# sourceMappingURL=chunk-OXBBLHTC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ButtonGroup/ButtonGroupContext.ts"],"names":[],"mappings":";;;AAaO,IAAM,kBAAA,GAAqB,aAAA;AAAA,EAChC;AACF;AACA,kBAAA,CAAmB,WAAA,GAAc,oBAAA;AAE1B,SAAS,cAAA,GAAiD;AAC/D,EAAA,OAAO,IAAI,kBAAkB,CAAA;AAC/B","file":"chunk-OXBBLHTC.js","sourcesContent":["'use client';\n\nimport {createContext, use} from 'react';\nimport type {ButtonSize} from 'components/Button/Button';\n\nexport type ButtonGroupOrientation = 'horizontal' | 'vertical';\n\nexport interface ButtonGroupContextValue {\n isDisabled: boolean;\n orientation: ButtonGroupOrientation;\n size: ButtonSize;\n}\n\nexport const ButtonGroupContext = createContext<ButtonGroupContextValue | null>(\n null,\n);\nButtonGroupContext.displayName = 'ButtonGroupContext';\n\nexport function useButtonGroup(): ButtonGroupContextValue | null {\n return use(ButtonGroupContext);\n}\n"]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
'use client';
|
|
1
2
|
'use strict';
|
|
2
3
|
|
|
3
4
|
var chunkVPHB56GK_cjs = require('./chunk-VPHB56GK.cjs');
|
|
4
|
-
var
|
|
5
|
+
var chunkHIFJC2HY_cjs = require('./chunk-HIFJC2HY.cjs');
|
|
5
6
|
var chunkXPHXAZCE_cjs = require('./chunk-XPHXAZCE.cjs');
|
|
6
|
-
var
|
|
7
|
-
var
|
|
7
|
+
var chunkS5FJ3FHH_cjs = require('./chunk-S5FJ3FHH.cjs');
|
|
8
|
+
var chunk6VY3VM5W_cjs = require('./chunk-6VY3VM5W.cjs');
|
|
8
9
|
var chunkQAO6QMNQ_cjs = require('./chunk-QAO6QMNQ.cjs');
|
|
9
10
|
var chunkJ4PIYOWT_cjs = require('./chunk-J4PIYOWT.cjs');
|
|
10
11
|
var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
|
|
@@ -72,9 +73,9 @@ function TimeInput({
|
|
|
72
73
|
const descriptionID = chunkQAO6QMNQ_cjs.isReactNode(description) ? `${inputId}-description` : void 0;
|
|
73
74
|
const statusMessageID = chunkXPHXAZCE_cjs.getStatusMessageID(inputId, status);
|
|
74
75
|
const describedBy = chunkXPHXAZCE_cjs.getDescribedBy(descriptionID, statusMessageID);
|
|
75
|
-
const necessity =
|
|
76
|
+
const necessity = chunkHIFJC2HY_cjs.getNecessity(isOptional, isRequired);
|
|
76
77
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
77
|
-
|
|
78
|
+
chunkHIFJC2HY_cjs.Field,
|
|
78
79
|
{
|
|
79
80
|
className,
|
|
80
81
|
description,
|
|
@@ -125,7 +126,7 @@ function TimeInput({
|
|
|
125
126
|
}
|
|
126
127
|
),
|
|
127
128
|
hasClear && value != null && !isDisabled ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
128
|
-
|
|
129
|
+
chunkS5FJ3FHH_cjs.Button,
|
|
129
130
|
{
|
|
130
131
|
icon: lucideReact.X,
|
|
131
132
|
isIconOnly: true,
|
|
@@ -135,7 +136,7 @@ function TimeInput({
|
|
|
135
136
|
variant: "ghost"
|
|
136
137
|
}
|
|
137
138
|
) : null,
|
|
138
|
-
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
139
|
+
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunk6VY3VM5W_cjs.Spinner, { size: "sm" }) : null,
|
|
139
140
|
status != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunkVPHB56GK_cjs.inputStyles.iconSlot, children: chunkXPHXAZCE_cjs.getStatusIcon(status.type) }) : null
|
|
140
141
|
]
|
|
141
142
|
}
|
|
@@ -146,5 +147,5 @@ function TimeInput({
|
|
|
146
147
|
TimeInput.displayName = "TimeInput";
|
|
147
148
|
|
|
148
149
|
exports.TimeInput = TimeInput;
|
|
149
|
-
//# sourceMappingURL=chunk-
|
|
150
|
-
//# sourceMappingURL=chunk-
|
|
150
|
+
//# sourceMappingURL=chunk-PB7LE5VJ.cjs.map
|
|
151
|
+
//# sourceMappingURL=chunk-PB7LE5VJ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/TimeInput/TimeInput.tsx"],"names":["css","Temporal","useId","isReactNode","getStatusMessageID","getDescribedBy","getNecessity","jsx","Field","jsxs","inputRecipe","inputStyles","Icon","Clock","cx","Button","X","Spinner","getStatusIcon"],"mappings":"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","file":"chunk-PB7LE5VJ.cjs","sourcesContent":["'use client';\n\nimport {Temporal} from '@js-temporal/polyfill';\nimport {Clock, X} from 'lucide-react';\nimport {\n useId,\n type CSSProperties,\n type FocusEvent,\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 {Spinner} from 'components/Spinner';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\nimport {css} from 'styled-system/css';\n\nconst styles = {\n input: css({\n '&::-webkit-calendar-picker-indicator': {\n display: 'none',\n },\n }),\n} as const;\n\nexport type PlainTime = Temporal.PlainTime;\n\nexport type TimeInputProps = {\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 * Whether to focus the input on mount.\n * @default false\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a clear button when a value is set.\n * @default false\n */\n hasClear?: boolean;\n /**\n * Whether the input includes a seconds field.\n * @default false\n */\n hasSeconds?: 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 visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Whether the input is loading.\n * @default false\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Latest allowed time.\n */\n max?: PlainTime;\n /**\n * Earliest allowed time.\n */\n min?: PlainTime;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called when the time value changes.\n */\n onChange: (value: PlainTime | null) => void;\n /**\n * Called when the input gains focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Placeholder text.\n * @default 'Select a time'\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 * Validation status displayed below the input.\n */\n status?: InputStatus;\n /**\n * Step increment in seconds for the time picker.\n */\n step?: number;\n /**\n * Inline styles applied to the input wrapper.\n */\n style?: CSSProperties;\n /**\n * Controlled time value. Pass `null` for an empty input.\n */\n value: PlainTime | null;\n} & FieldNecessity;\n\nfunction toInputString(\n time: PlainTime | null | undefined,\n hasSeconds: boolean,\n): string {\n if (time == null) {\n return '';\n }\n return time.toString({\n smallestUnit: hasSeconds ? 'second' : 'minute',\n });\n}\n\nfunction fromInputString(value: string): PlainTime | null {\n if (value === '') {\n return null;\n }\n try {\n return Temporal.PlainTime.from(value);\n } catch {\n return null;\n }\n}\n\n/**\n * Time picker input field with optional seconds granularity.\n */\nexport function TimeInput({\n label,\n value,\n onBlur,\n onChange,\n onFocus,\n hasSeconds = false,\n hasClear = false,\n hasAutoFocus = false,\n min,\n max,\n step,\n size = 'md',\n description,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isLoading = false,\n htmlName,\n status,\n labelIcon,\n labelTooltip,\n placeholder = 'Select a time',\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: TimeInputProps): 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\n const necessity = getNecessity(isOptional, isRequired);\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 <div\n className={inputRecipe({\n size,\n status: status?.type,\n isDisabled,\n })}>\n <span className={inputStyles.iconSlot}>\n <Icon icon={Clock} size=\"sm\" />\n </span>\n <input\n aria-busy={isLoading || undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || undefined}\n aria-required={isRequired ?? undefined}\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={cx(inputStyles.control, styles.input)}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={isDisabled}\n id={inputId}\n max={toInputString(max, hasSeconds)}\n min={toInputString(min, hasSeconds)}\n name={htmlName}\n onBlur={onBlur}\n onChange={event => onChange(fromInputString(event.target.value))}\n onFocus={onFocus}\n placeholder={placeholder}\n ref={ref}\n step={step ?? (hasSeconds ? 1 : 60)}\n type=\"time\"\n value={toInputString(value, hasSeconds)}\n />\n {hasClear && value != null && !isDisabled ? (\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 {isLoading ? <Spinner size=\"sm\" /> : null}\n {status != null ? (\n <span className={inputStyles.iconSlot}>\n {getStatusIcon(status.type)}\n </span>\n ) : null}\n </div>\n </Field>\n );\n}\n\nTimeInput.displayName = 'TimeInput';\n"]}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
'use client';
|
|
2
|
+
import { useAppShellMobile, MobileNavToggle, MobileNav } from './chunk-3MNRY6XK.js';
|
|
3
|
+
import { Divider } from './chunk-MCCOQSSC.js';
|
|
4
|
+
import { useRel, getAriaLabel } from './chunk-3IX2FJWH.js';
|
|
4
5
|
import { VisuallyHidden } from './chunk-V2V5TTTL.js';
|
|
5
|
-
import { Text } from './chunk-
|
|
6
|
-
import { useLinkComponent, ActionElement } from './chunk-
|
|
6
|
+
import { Text } from './chunk-KPAOAYDY.js';
|
|
7
|
+
import { useLinkComponent, ActionElement } from './chunk-CRYF4JDH.js';
|
|
7
8
|
import { isReactNode } from './chunk-2PSZAWLC.js';
|
|
8
9
|
import { Icon } from './chunk-IUW777WZ.js';
|
|
9
10
|
import { sva } from './chunk-IAVZKGZS.js';
|
|
@@ -399,5 +400,5 @@ function TopNavItem({
|
|
|
399
400
|
TopNavItem.displayName = "TopNavItem";
|
|
400
401
|
|
|
401
402
|
export { TopNav, TopNavHeading, TopNavItem, TopNavMobileContentContext, TopNavRenderContext };
|
|
402
|
-
//# sourceMappingURL=chunk-
|
|
403
|
-
//# sourceMappingURL=chunk-
|
|
403
|
+
//# sourceMappingURL=chunk-PER4RJRF.js.map
|
|
404
|
+
//# sourceMappingURL=chunk-PER4RJRF.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/TopNav/TopNav.recipe.ts","../src/components/TopNav/TopNavContext.ts","../src/components/TopNav/TopNav.tsx","../src/components/TopNav/TopNavHeading.recipe.ts","../src/components/TopNav/TopNavHeading.tsx","../src/components/TopNav/TopNavItem.recipe.ts","../src/components/TopNav/TopNavItem.tsx"],"names":["classes","jsxs","jsx"],"mappings":"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","file":"chunk-PER4RJRF.js","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const topNavRecipe = sva({\n slots: [\n 'root',\n 'leftSection',\n 'heading',\n 'startContent',\n 'centerContent',\n 'rightSection',\n 'endContent',\n 'mobileEnd',\n 'drawerItems',\n 'drawerDivider',\n ],\n base: {\n root: {\n alignItems: 'center',\n w: '100%',\n p: '2',\n },\n leftSection: {\n display: 'flex',\n alignItems: 'center',\n gap: '4',\n flex: '1 1 0%',\n minW: 0,\n },\n heading: {\n display: 'flex',\n alignItems: 'center',\n flexShrink: 0,\n },\n startContent: {\n display: 'flex',\n alignItems: 'center',\n gap: '1',\n },\n centerContent: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n gap: '1',\n },\n rightSection: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n gap: '1',\n },\n endContent: {\n display: 'flex',\n alignItems: 'center',\n gap: '1',\n flexShrink: 0,\n ms: 'auto',\n },\n mobileEnd: {\n display: 'flex',\n alignItems: 'center',\n gap: '1',\n ms: 'auto',\n },\n drawerItems: {\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n },\n drawerDivider: {\n my: '2',\n },\n },\n variants: {\n layout: {\n flex: {\n root: {display: 'flex'},\n },\n grid: {\n root: {display: 'grid', gridTemplateColumns: '1fr auto 1fr'},\n },\n mobile: {\n root: {display: 'flex'},\n },\n },\n },\n defaultVariants: {\n layout: 'flex',\n },\n});\n\nexport type TopNavVariants = RecipeVariantProps<typeof topNavRecipe>;\n","'use client';\n\nimport {createContext, use, type ReactNode} from 'react';\n\nexport type TopNavRenderMode = 'default' | 'mobile-bar' | 'drawer';\n\nexport const TopNavRenderContext = createContext<TopNavRenderMode>('default');\nTopNavRenderContext.displayName = 'TopNavRenderContext';\nexport const TopNavMobileContentContext = createContext<ReactNode>(null);\nTopNavMobileContentContext.displayName = 'TopNavMobileContentContext';\n\nexport function useTopNavRenderMode(): TopNavRenderMode {\n return use(TopNavRenderContext);\n}\n\nexport function useTopNavMobileContent(): ReactNode {\n return use(TopNavMobileContentContext);\n}\n","'use client';\n\nimport type {CSSProperties, ReactNode, Ref} from 'react';\nimport {useAppShellMobile} from 'components/AppShell/AppShellMobileContext';\nimport {Divider} from 'components/Divider';\nimport {topNavRecipe} from 'components/TopNav/TopNav.recipe';\nimport {\n useTopNavMobileContent,\n useTopNavRenderMode,\n} from 'components/TopNav/TopNavContext';\nimport {MobileNav, MobileNavToggle} from 'internal/MobileNav';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\n\nexport interface TopNavProps {\n /**\n * Content rendered in the center section of the navigation bar.\n */\n centerContent?: ReactNode;\n /**\n * Shorthand for `startContent`. Rendered in the start section when\n * `startContent` is not provided.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the nav element.\n */\n className?: string;\n /**\n * Test ID applied to the nav element.\n */\n 'data-testid'?: string;\n /**\n * Content rendered in the end (right) section of the navigation bar.\n */\n endContent?: ReactNode;\n /**\n * Branding or title content rendered at the start of the bar.\n */\n heading?: ReactNode;\n /**\n * Accessible label for the navigation landmark.\n * @default 'Top navigation'\n */\n label?: string;\n /**\n * Ref forwarded to the nav element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Content rendered in the start (left) section after the heading.\n */\n startContent?: ReactNode;\n /**\n * Inline styles applied to the nav element.\n */\n style?: CSSProperties;\n}\n\n/**\n * Horizontal top navigation bar with heading, start, center, and end\n * content slots. Adapts to mobile layouts when rendered inside AppShell.\n */\nexport function TopNav({\n centerContent,\n children,\n className,\n 'data-testid': dataTestId,\n endContent,\n heading,\n label = 'Top navigation',\n ref,\n startContent,\n style,\n}: TopNavProps): React.JSX.Element | null {\n const renderMode = useTopNavRenderMode();\n const mobileContent = useTopNavMobileContent();\n const {hasAutoToggle} = useAppShellMobile();\n const resolvedStartContent = startContent ?? children;\n\n if (process.env.NODE_ENV !== 'production') {\n if (isReactNode(startContent) && isReactNode(children)) {\n console.warn(\n 'TopNav: both `startContent` and `children` were provided. ' +\n '`startContent` takes precedence and `children` is ignored. ' +\n 'Provide only one.',\n );\n }\n }\n\n const hasCenterContent = isReactNode(centerContent);\n const hasCollapsibleContent =\n isReactNode(resolvedStartContent) || isReactNode(centerContent);\n const hasMobileDrawerContent =\n hasCollapsibleContent || isReactNode(mobileContent);\n\n if (renderMode === 'mobile-bar') {\n const classes = topNavRecipe({layout: 'mobile'});\n return (\n <nav\n aria-label={label}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {isReactNode(heading) ? (\n <div className={classes.heading}>{heading}</div>\n ) : null}\n <div className={classes.mobileEnd}>\n {endContent}\n {hasMobileDrawerContent && hasAutoToggle ? <MobileNavToggle /> : null}\n </div>\n </nav>\n );\n }\n\n if (renderMode === 'drawer') {\n if (!hasCollapsibleContent && !isReactNode(mobileContent)) {\n return null;\n }\n\n const classes = topNavRecipe();\n return (\n <MobileNav header={heading}>\n {hasCollapsibleContent ? (\n <div className={classes.drawerItems}>\n {resolvedStartContent}\n {centerContent}\n </div>\n ) : null}\n {hasCollapsibleContent && isReactNode(mobileContent) ? (\n <div className={classes.drawerDivider}>\n <Divider />\n </div>\n ) : null}\n {mobileContent}\n </MobileNav>\n );\n }\n\n const classes = topNavRecipe({layout: hasCenterContent ? 'grid' : 'flex'});\n return (\n <nav\n aria-label={label}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <div className={classes.leftSection}>\n {isReactNode(heading) ? (\n <div className={classes.heading}>{heading}</div>\n ) : null}\n {isReactNode(resolvedStartContent) ? (\n <div className={classes.startContent}>{resolvedStartContent}</div>\n ) : null}\n </div>\n {hasCenterContent ? (\n <div className={classes.centerContent}>{centerContent}</div>\n ) : null}\n {hasCenterContent ? (\n <div className={classes.rightSection}>{endContent}</div>\n ) : isReactNode(endContent) ? (\n <div className={classes.endContent}>{endContent}</div>\n ) : null}\n </nav>\n );\n}\n\nTopNav.displayName = 'TopNav';\n","import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const topNavHeadingRecipe = sva({\n slots: ['root', 'logo', 'text', 'endContent'],\n base: {\n root: {\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n minH: '8',\n px: '2',\n color: 'fg',\n textDecoration: 'none',\n },\n logo: {\n flexShrink: 0,\n display: 'inline-flex',\n alignItems: 'center',\n },\n text: {\n display: 'flex',\n flexDirection: 'column',\n minW: 0,\n },\n endContent: {\n ms: 'auto',\n flexShrink: 0,\n },\n },\n});\n\nexport type TopNavHeadingVariants = RecipeVariantProps<\n typeof topNavHeadingRecipe\n>;\n","/* eslint-disable @eslint-react/static-components -- intentional polymorphism via as prop */\n'use client';\n\nimport type {CSSProperties, ReactNode, Ref} from 'react';\nimport {useLinkComponent} from 'components/Link';\nimport type {LinkComponent} from 'components/Link';\nimport {Text} from 'components/Text';\nimport {topNavHeadingRecipe} from 'components/TopNav/TopNavHeading.recipe';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\n\nexport interface TopNavHeadingProps {\n /**\n * Accessible label for the heading link. Use when `heading` text is absent\n * (e.g., logo-only headings) to ensure the link has an accessible name.\n */\n 'aria-label'?: string;\n as?: LinkComponent;\n className?: string;\n 'data-testid'?: string;\n headerEndContent?: ReactNode;\n heading?: string;\n headingHref?: string;\n href?: string;\n logo?: ReactNode;\n ref?: Ref<HTMLElement>;\n style?: CSSProperties;\n subheading?: string;\n superheading?: string;\n}\n\nexport function TopNavHeading({\n 'aria-label': ariaLabel,\n as,\n className,\n 'data-testid': dataTestId,\n headerEndContent,\n heading,\n headingHref,\n href,\n logo,\n ref,\n style,\n subheading,\n superheading,\n}: TopNavHeadingProps): React.JSX.Element {\n const LinkComponent = useLinkComponent(as);\n const resolvedHref = headingHref ?? href;\n const Element = resolvedHref != null ? LinkComponent : 'div';\n const classes = topNavHeadingRecipe();\n\n return (\n <Element\n aria-label={ariaLabel}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n href={resolvedHref}\n ref={ref as Ref<HTMLAnchorElement & HTMLDivElement>}\n style={style}\n to={Element === 'a' ? undefined : resolvedHref}>\n {isReactNode(logo) ? <span className={classes.logo}>{logo}</span> : null}\n <span className={classes.text}>\n {superheading != null ? (\n <Text color=\"secondary\" type=\"supporting\">\n {superheading}\n </Text>\n ) : null}\n {heading != null ? (\n <Text type=\"large\" weight=\"semibold\">\n {heading}\n </Text>\n ) : null}\n {subheading != null ? (\n <Text color=\"secondary\" type=\"supporting\">\n {subheading}\n </Text>\n ) : null}\n </span>\n {isReactNode(headerEndContent) ? (\n <span className={classes.endContent}>{headerEndContent}</span>\n ) : null}\n </Element>\n );\n}\n\nTopNavHeading.displayName = 'TopNavHeading';\n","import {cva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const topNavItemRecipe = cva({\n base: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '2',\n minH: '8',\n px: '3',\n py: '1.5',\n borderRadius: 'md',\n color: 'fg.muted',\n textDecoration: 'none',\n fontFamily: 'body',\n fontSize: 'md',\n fontWeight: 'medium',\n cursor: 'pointer',\n _hover: {bg: 'bg.hover'},\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n },\n variants: {\n isSelected: {\n true: {\n bg: 'bg.hover',\n color: 'fg',\n fontWeight: 'semibold',\n },\n false: {},\n },\n isDisabled: {\n true: {\n opacity: 0.5,\n cursor: 'not-allowed',\n pointerEvents: 'none',\n },\n false: {},\n },\n isIconOnly: {\n true: {\n px: '2',\n aspectRatio: 'square',\n },\n false: {},\n },\n isDrawer: {\n true: {\n display: 'flex',\n w: '100%',\n },\n false: {},\n },\n },\n defaultVariants: {\n isSelected: false,\n isDisabled: false,\n isIconOnly: false,\n isDrawer: false,\n },\n});\n\nexport type TopNavItemVariants = RecipeVariantProps<typeof topNavItemRecipe>;\n","'use client';\n\nimport type {CSSProperties, MouseEventHandler, ReactNode, Ref} from 'react';\nimport {useAppShellMobile} from 'components/AppShell/AppShellMobileContext';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport type {LinkComponent} from 'components/Link';\nimport {Text} from 'components/Text';\nimport {useTopNavRenderMode} from 'components/TopNav/TopNavContext';\nimport {topNavItemRecipe} from 'components/TopNav/TopNavItem.recipe';\nimport {VisuallyHidden} from 'internal';\nimport {ActionElement} from 'internal/ActionElement';\nimport {cx} from 'internal/cx';\nimport {getAriaLabel, useRel} from 'internal/linkAccessibility';\n\nexport interface TopNavItemProps {\n /**\n * Custom link component used for routing.\n */\n as?: LinkComponent;\n /**\n * Custom label content. Falls back to the `label` prop text.\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the item.\n */\n className?: string;\n /**\n * Test ID applied to the item.\n */\n 'data-testid'?: string;\n /**\n * Link destination. When set, the item renders as a link. When omitted,\n * the item renders as a button driven by `onClick`.\n */\n href?: string;\n /**\n * Icon rendered before the label.\n */\n icon?: IconComponent;\n /**\n * Whether the item is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether only the icon is visible (label used for accessibility).\n * @default false\n */\n isIconOnly?: boolean;\n /**\n * Whether the item is currently selected.\n * @default false\n */\n isSelected?: boolean;\n /**\n * Accessible item label, also used as visible text when children are omitted.\n */\n label: string;\n /**\n * Click handler called when the item is clicked.\n */\n onClick?: MouseEventHandler<HTMLElement>;\n /**\n * Ref forwarded to the anchor or button element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * The `rel` attribute for the anchor element. `noopener noreferrer` are\n * added automatically for `target=\"_blank\"`. Ignored when rendering as a\n * button (no `href`).\n */\n rel?: string;\n /**\n * Inline styles applied to the item.\n */\n style?: CSSProperties;\n /**\n * The `target` attribute for the anchor element. Ignored when rendering as\n * a button (no `href`).\n */\n target?: string;\n}\n\n/**\n * A single navigation item inside a TopNav. Renders as a link when `href`\n * is provided, or a button driven by `onClick` otherwise. Supports icons,\n * selected state, and adapts to drawer layout on mobile.\n */\nexport function TopNavItem({\n as,\n children,\n className,\n 'data-testid': dataTestId,\n href,\n icon,\n isDisabled = false,\n isIconOnly = false,\n isSelected = false,\n label,\n onClick,\n ref,\n rel,\n style,\n target,\n}: TopNavItemProps): React.JSX.Element {\n const renderMode = useTopNavRenderMode();\n const {closeMobileNav} = useAppShellMobile();\n const isDrawer = renderMode === 'drawer';\n const opensInNewTab = target === '_blank';\n const linkRel = useRel({target, rel});\n const labelContent = children ?? (\n <Text color=\"inherit\" size=\"md\" type=\"body\" weight=\"inherit\">\n {label}\n </Text>\n );\n\n const handleClick: MouseEventHandler<HTMLElement> = event => {\n if (isDisabled) {\n event.preventDefault();\n return;\n }\n\n onClick?.(event);\n\n if (isDrawer) {\n closeMobileNav();\n }\n };\n\n const className_ = cx(\n topNavItemRecipe({isSelected, isDisabled, isIconOnly, isDrawer}),\n className,\n );\n\n const content = (\n <>\n {icon != null ? (\n <Icon aria-hidden=\"true\" color=\"inherit\" icon={icon} size=\"md\" />\n ) : null}\n {!isIconOnly ? labelContent : null}\n </>\n );\n\n return (\n <ActionElement\n aria-current={isSelected ? 'page' : undefined}\n aria-disabled={href != null && isDisabled ? true : undefined}\n aria-label={isIconOnly ? getAriaLabel(label, opensInNewTab) : undefined}\n as={as}\n className={className_}\n data-testid={dataTestId}\n href={href}\n isDisabled={href == null ? isDisabled : undefined}\n isLink={href != null}\n onClick={handleClick}\n ref={ref}\n rel={href != null ? linkRel : undefined}\n style={style}\n tabIndex={href != null && isDisabled ? -1 : undefined}\n target={href != null ? target : undefined}>\n {content}\n {opensInNewTab && !isIconOnly ? (\n <>\n {' '}\n <VisuallyHidden>(opens in new tab)</VisuallyHidden>\n </>\n ) : null}\n </ActionElement>\n );\n}\n\nTopNavItem.displayName = 'TopNavItem';\n"]}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
'use client';
|
|
2
|
+
import { Item } from './chunk-CTXAQNQI.js';
|
|
3
|
+
import { Divider } from './chunk-MCCOQSSC.js';
|
|
4
|
+
import { Popover } from './chunk-TUUYGOLQ.js';
|
|
5
|
+
import { Button } from './chunk-JJ32AVLU.js';
|
|
6
|
+
import { Text } from './chunk-KPAOAYDY.js';
|
|
6
7
|
import { isReactNode } from './chunk-2PSZAWLC.js';
|
|
7
8
|
import { Icon } from './chunk-IUW777WZ.js';
|
|
8
9
|
import { sva } from './chunk-IAVZKGZS.js';
|
|
@@ -358,5 +359,5 @@ function DropdownMenu({
|
|
|
358
359
|
DropdownMenu.displayName = "DropdownMenu";
|
|
359
360
|
|
|
360
361
|
export { DropdownMenu, DropdownMenuContext, DropdownMenuItem, formatMenuWidth, renderMenuItems, useDropdownMenuContext, useMenuKeyboard };
|
|
361
|
-
//# sourceMappingURL=chunk-
|
|
362
|
-
//# sourceMappingURL=chunk-
|
|
362
|
+
//# sourceMappingURL=chunk-PLQDNBCW.js.map
|
|
363
|
+
//# sourceMappingURL=chunk-PLQDNBCW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/DropdownMenu/DropdownMenuContext.ts","../src/components/DropdownMenu/DropdownMenuItem.recipe.ts","../src/components/DropdownMenu/DropdownMenuItem.tsx","../src/components/DropdownMenu/menuUtils.tsx","../src/components/DropdownMenu/DropdownMenu.tsx"],"names":["jsx","useCallback","jsxs"],"mappings":"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","file":"chunk-PLQDNBCW.js","sourcesContent":["'use client';\n\nimport {createContext, use} from 'react';\nimport type {ButtonSize} from 'components/Button';\n\nexport interface DropdownMenuContextValue {\n closeMenu: () => void;\n menuSize: ButtonSize;\n}\n\nexport const DropdownMenuContext =\n createContext<DropdownMenuContextValue | null>(null);\n\nDropdownMenuContext.displayName = 'DropdownMenuContext';\n\nexport function useDropdownMenuContext(): DropdownMenuContextValue | null {\n return use(DropdownMenuContext);\n}\n","import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const dropdownMenuItemRecipe = sva({\n slots: ['root', 'icon'],\n base: {\n root: {\n display: 'block',\n w: 'full',\n borderRadius: 'md',\n color: 'fg',\n cursor: 'pointer',\n fontFamily: 'body',\n textAlign: 'start',\n _hover: {bg: 'bg.subtle'},\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffsetTight',\n },\n _disabled: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n },\n icon: {\n display: 'inline-flex',\n flexShrink: 0,\n color: 'fg.muted',\n },\n },\n variants: {\n size: {\n sm: {\n root: {\n minH: 'component.sm',\n '& > *': {py: '0.5', px: '1.5', gap: '1.5'},\n },\n },\n md: {\n root: {minH: 'component.md', '& > *': {py: '1.5', px: '2'}},\n },\n lg: {\n root: {\n minH: 'component.lg',\n '& > *': {py: '2.5', px: '2.5', gap: '2.5'},\n },\n },\n },\n },\n defaultVariants: {\n size: 'md',\n },\n});\n\nexport type DropdownMenuItemVariants = RecipeVariantProps<\n typeof dropdownMenuItemRecipe\n>;\n","'use client';\n\nimport type {CSSProperties, ReactNode, Ref} from 'react';\nimport {useDropdownMenuContext} from 'components/DropdownMenu/DropdownMenuContext';\nimport {dropdownMenuItemRecipe} from 'components/DropdownMenu/DropdownMenuItem.recipe';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport {Item} from 'components/Item';\nimport {cx} from 'internal/cx';\n\nexport interface DropdownMenuItemProps {\n /**\n * Additional CSS class names applied to the item.\n */\n className?: string;\n /**\n * Test ID applied to the item.\n */\n 'data-testid'?: string;\n /**\n * Supporting text shown below the label.\n */\n description?: ReactNode;\n /**\n * Trailing content.\n */\n endContent?: ReactNode;\n /**\n * Icon rendered before the label.\n */\n icon?: IconComponent;\n /**\n * Whether the item is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Item label.\n */\n label: string;\n /**\n * Called when the item is selected.\n */\n onClick?: () => void;\n /**\n * Ref forwarded to the item button.\n */\n ref?: Ref<HTMLButtonElement>;\n /**\n * Inline styles applied to the item.\n */\n style?: CSSProperties;\n}\n\n/**\n * Action item inside a `DropdownMenu`.\n */\nexport function DropdownMenuItem({\n className,\n 'data-testid': dataTestId,\n description,\n endContent,\n icon,\n isDisabled = false,\n label,\n onClick,\n ref,\n style,\n}: DropdownMenuItemProps): React.JSX.Element {\n const context = useDropdownMenuContext();\n const menuSize = context?.menuSize ?? 'md';\n const classes = dropdownMenuItemRecipe({size: menuSize});\n\n return (\n <button\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n disabled={isDisabled}\n onClick={() => {\n onClick?.();\n context?.closeMenu();\n }}\n ref={ref}\n role=\"menuitem\"\n style={style}\n type=\"button\">\n <Item\n as=\"span\"\n description={description}\n endContent={endContent}\n label={label}\n startContent={\n icon != null ? (\n <span className={classes.icon}>\n <Icon color=\"secondary\" icon={icon} size=\"sm\" />\n </span>\n ) : null\n }\n />\n </button>\n );\n}\n\nDropdownMenuItem.displayName = 'DropdownMenuItem';\n","/* eslint-disable @eslint-react/no-array-index-key */\n'use client';\nimport {useCallback, type KeyboardEvent, type ReactNode} from 'react';\nimport {Divider} from 'components/Divider';\nimport {DropdownMenuItem} from 'components/DropdownMenu/DropdownMenuItem';\nimport type {DropdownMenuOption} from 'components/DropdownMenu/types';\nimport {Text} from 'components/Text';\nimport {css} from 'styled-system/css';\n\nconst menuStyles = {\n section: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n }),\n heading: css({\n px: '2',\n py: '1',\n userSelect: 'none',\n }),\n divider: css({\n my: '1',\n }),\n} as const;\n\nexport function formatMenuWidth(\n value: number | string | undefined,\n): string | undefined {\n if (value == null) {\n return undefined;\n }\n return typeof value === 'number' ? `${value}px` : value;\n}\n\nexport function renderMenuItems(\n items: ReadonlyArray<DropdownMenuOption>,\n): ReactNode {\n return items.map((item, index) => {\n if ('type' in item && item.type === 'divider') {\n return (\n <Divider className={menuStyles.divider} key={`divider-${index}`} />\n );\n }\n\n if ('type' in item) {\n return (\n <div\n aria-label={item.title}\n className={menuStyles.section}\n key={`section-${item.title ?? index}`}\n role=\"group\">\n {item.title != null ? (\n <Text\n as=\"span\"\n className={menuStyles.heading}\n color=\"secondary\"\n type=\"supporting\">\n {item.title}\n </Text>\n ) : null}\n {item.items.map(sectionItem => (\n <DropdownMenuItem\n description={sectionItem.description}\n icon={sectionItem.icon}\n isDisabled={sectionItem.isDisabled}\n key={sectionItem.label}\n label={sectionItem.label}\n onClick={sectionItem.onClick}\n />\n ))}\n </div>\n );\n }\n\n return (\n <DropdownMenuItem\n description={item.description}\n icon={item.icon}\n isDisabled={item.isDisabled}\n key={item.label}\n label={item.label}\n onClick={item.onClick}\n />\n );\n });\n}\n\nexport function useMenuKeyboard(\n menuRef: React.RefObject<HTMLElement | null>,\n onClose: () => void,\n): (event: KeyboardEvent<HTMLElement>) => void {\n const getMenuItems = useCallback(() => {\n if (menuRef.current == null) {\n return [];\n }\n return Array.from(\n menuRef.current.querySelectorAll<HTMLElement>(\n '[role=\"menuitem\"]:not(:disabled):not([aria-disabled=\"true\"])',\n ),\n );\n }, [menuRef]);\n\n return useCallback(\n (event: KeyboardEvent<HTMLElement>) => {\n const menuItems = getMenuItems();\n if (menuItems.length === 0) {\n return;\n }\n const currentIndex = menuItems.findIndex(\n item => item === document.activeElement,\n );\n let nextIndex: number;\n\n switch (event.key) {\n case 'ArrowDown':\n nextIndex =\n currentIndex === -1 ? 0 : (currentIndex + 1) % menuItems.length;\n break;\n case 'ArrowUp':\n nextIndex =\n currentIndex === -1\n ? menuItems.length - 1\n : (currentIndex - 1 + menuItems.length) % menuItems.length;\n break;\n case 'Home':\n nextIndex = 0;\n break;\n case 'End':\n nextIndex = menuItems.length - 1;\n break;\n case 'Escape':\n event.preventDefault();\n onClose();\n return;\n case 'Enter':\n case ' ':\n if (document.activeElement instanceof HTMLElement) {\n event.preventDefault();\n document.activeElement.click();\n }\n return;\n default:\n if (event.key.length === 1) {\n const char = event.key.toLowerCase();\n const startIndex = currentIndex === -1 ? 0 : currentIndex + 1;\n for (let i = 0; i < menuItems.length; i++) {\n const index = (startIndex + i) % menuItems.length;\n const label = menuItems[index].textContent.trim().toLowerCase();\n if (label.startsWith(char)) {\n event.preventDefault();\n menuItems[index].focus();\n return;\n }\n }\n }\n return;\n }\n\n event.preventDefault();\n menuItems[nextIndex]?.focus();\n },\n [getMenuItems, onClose],\n );\n}\n","'use client';\n\nimport {ChevronDown} from 'lucide-react';\nimport {\n useCallback,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {Button, type ButtonProps, type ButtonSize} from 'components/Button';\nimport {DropdownMenuContext} from 'components/DropdownMenu/DropdownMenuContext';\nimport {\n formatMenuWidth,\n renderMenuItems,\n useMenuKeyboard,\n} from 'components/DropdownMenu/menuUtils';\nimport type {DropdownMenuOption} from 'components/DropdownMenu/types';\nimport {Icon} from 'components/Icon';\nimport {Popover} from 'components/Popover';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\nimport {css} from 'styled-system/css';\n\nexport type {\n DropdownMenuDivider,\n DropdownMenuItemData,\n DropdownMenuOption,\n DropdownMenuSection,\n} from 'components/DropdownMenu/types';\n\ntype DistributiveOmit<T, K extends PropertyKey> = T extends unknown\n ? Omit<T, K>\n : never;\n\nexport type DropdownMenuButtonProps = DistributiveOmit<ButtonProps, 'onClick'>;\n\nexport interface DropdownMenuProps {\n /**\n * Trigger button props.\n */\n button?: DropdownMenuButtonProps;\n /**\n * Compound menu content (alternative to `items`).\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the menu surface.\n */\n className?: string;\n /**\n * Test ID applied to the trigger button.\n */\n 'data-testid'?: string;\n /**\n * Whether to auto-focus the first menu item on open.\n * @default true\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a chevron on the trigger button.\n * @default true\n */\n hasChevron?: boolean;\n /**\n * Controlled open state.\n */\n isMenuOpen?: boolean;\n /**\n * Data-driven menu items.\n */\n items?: ReadonlyArray<DropdownMenuOption>;\n /**\n * Width of the menu surface.\n */\n menuWidth?: number | string;\n /**\n * Click handler for the trigger button.\n */\n onClick?: () => void;\n /**\n * Called when the menu open state changes.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Ref forwarded to the trigger button.\n */\n ref?: Ref<HTMLButtonElement>;\n /**\n * Inline styles applied to the menu surface.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n menu: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n maxH: '80',\n overflowY: 'auto',\n p: '1',\n }),\n} as const;\n\nconst defaultButton = {label: 'Menu'} satisfies DropdownMenuButtonProps;\n\n/**\n * Button-triggered menu for grouped actions.\n */\nexport function DropdownMenu({\n button = defaultButton,\n children,\n className,\n 'data-testid': dataTestId,\n hasAutoFocus = true,\n hasChevron = true,\n isMenuOpen,\n items,\n menuWidth,\n onClick,\n onOpenChange,\n ref,\n style,\n}: DropdownMenuProps): React.JSX.Element {\n const [internalOpen, setInternalOpen] = useState(false);\n const isControlled = isMenuOpen !== undefined;\n const isOpen = isControlled ? isMenuOpen : internalOpen;\n const menuSize: ButtonSize = button.size ?? 'md';\n const menuRef = useRef<HTMLDivElement>(null);\n\n if (process.env.NODE_ENV !== 'production') {\n if (items != null && isReactNode(children)) {\n throw new Error(\n 'DropdownMenu: pass either `items` or `children`, not both.',\n );\n }\n if (items == null && !isReactNode(children)) {\n throw new Error('DropdownMenu: provide either `items` or `children`.');\n }\n }\n\n const hide = useCallback(() => {\n if (isControlled) {\n onOpenChange?.(false);\n } else {\n setInternalOpen(false);\n }\n }, [isControlled, onOpenChange]);\n\n const handleMenuKeyDown = useMenuKeyboard(menuRef, hide);\n\n const contextValue = useMemo(\n () => ({\n closeMenu: hide,\n menuSize,\n }),\n [hide, menuSize],\n );\n\n const menuNode = useMemo(\n (): ReactNode => (items == null ? children : renderMenuItems(items)),\n [items, children],\n );\n\n return (\n <Popover\n content={\n <DropdownMenuContext value={contextValue}>\n {/* eslint-disable-next-line jsx-a11y-x/no-static-element-interactions -- keyboard handler captures events for the parent role=\"menu\" element */}\n <div\n className={cx(styles.menu, className)}\n onKeyDown={handleMenuKeyDown}\n ref={menuRef}\n tabIndex={-1}>\n {menuNode}\n </div>\n </DropdownMenuContext>\n }\n hasAutoFocus={hasAutoFocus}\n hasCloseButton={false}\n isOpen={isOpen}\n onOpenChange={(isNextOpen: boolean): void => {\n if (isControlled) {\n onOpenChange?.(isNextOpen);\n } else {\n setInternalOpen(isNextOpen);\n }\n }}\n role=\"menu\"\n style={{width: formatMenuWidth(menuWidth), ...style}}>\n <Button\n {...button}\n data-testid={dataTestId}\n endContent={\n <>\n {button.endContent}\n {hasChevron ? <Icon icon={ChevronDown} size=\"sm\" /> : null}\n </>\n }\n onClick={onClick}\n ref={ref}\n />\n </Popover>\n );\n}\n\nDropdownMenu.displayName = 'DropdownMenu';\n"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
'use client';
|
|
1
2
|
import { cx } from './chunk-PPNETWIP.js';
|
|
2
3
|
import { useId, createElement, Fragment } from 'react';
|
|
3
4
|
|
|
@@ -265,5 +266,5 @@ function Theme({
|
|
|
265
266
|
Theme.displayName = "Theme";
|
|
266
267
|
|
|
267
268
|
export { Theme };
|
|
268
|
-
//# sourceMappingURL=chunk-
|
|
269
|
-
//# sourceMappingURL=chunk-
|
|
269
|
+
//# sourceMappingURL=chunk-PTDBPRZD.js.map
|
|
270
|
+
//# sourceMappingURL=chunk-PTDBPRZD.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Theme/Theme.tsx"],"names":[],"mappings":"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","file":"chunk-PTDBPRZD.js","sourcesContent":["'use client';\n\nimport {\n Fragment,\n createElement,\n useId,\n type CSSProperties,\n type ElementType,\n type HTMLAttributes,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from 'internal/cx';\n\nexport type ThemeMode = 'dark' | 'light' | 'system';\n\nexport type ThemePaletteName =\n | 'blue'\n | 'cyan'\n | 'gray'\n | 'green'\n | 'orange'\n | 'pink'\n | 'purple'\n | 'red'\n | 'teal'\n | 'yellow';\n\nexport type ThemePaletteStep =\n | 50\n | 100\n | 200\n | 300\n | 400\n | 500\n | 600\n | 700\n | 800\n | 900;\n\nexport type ThemePaletteReference =\n | `${ThemePaletteName}.${ThemePaletteStep}`\n | `${ThemePaletteName}-${ThemePaletteStep}`;\n\nexport type ThemeColorValue = ThemePaletteReference | (string & {});\ntype ThemeCssVariableName = `--silver-${string}`;\ntype ThemeCssVariables = Partial<Record<ThemeCssVariableName, string>>;\n\nexport interface ThemeColorTokens {\n bg?: ThemeColorValue;\n bgGhostActive?: ThemeColorValue;\n bgGhostHover?: ThemeColorValue;\n bgHover?: ThemeColorValue;\n bgSelected?: ThemeColorValue;\n bgSubtle?: ThemeColorValue;\n border?: ThemeColorValue;\n borderEmphasized?: ThemeColorValue;\n destructive?: ThemeColorValue;\n destructiveActive?: ThemeColorValue;\n destructiveFg?: ThemeColorValue;\n destructiveHover?: ThemeColorValue;\n fg?: ThemeColorValue;\n fgDisabled?: ThemeColorValue;\n fgMuted?: ThemeColorValue;\n fgOnPrimary?: ThemeColorValue;\n iconAccent?: ThemeColorValue;\n iconBlue?: ThemeColorValue;\n iconCyan?: ThemeColorValue;\n iconDisabled?: ThemeColorValue;\n iconError?: ThemeColorValue;\n iconGray?: ThemeColorValue;\n iconGreen?: ThemeColorValue;\n iconInfo?: ThemeColorValue;\n iconOrange?: ThemeColorValue;\n iconPink?: ThemeColorValue;\n iconPrimary?: ThemeColorValue;\n iconPurple?: ThemeColorValue;\n iconRed?: ThemeColorValue;\n iconSecondary?: ThemeColorValue;\n iconSuccess?: ThemeColorValue;\n iconTeal?: ThemeColorValue;\n iconTertiary?: ThemeColorValue;\n iconWarning?: ThemeColorValue;\n iconYellow?: ThemeColorValue;\n overlayScrim?: ThemeColorValue;\n overlayScrimStrong?: ThemeColorValue;\n overlayScrimSubtle?: ThemeColorValue;\n presenceError?: ThemeColorValue;\n presenceNeutral?: ThemeColorValue;\n presenceSuccess?: ThemeColorValue;\n primary?: ThemeColorValue;\n primaryActive?: ThemeColorValue;\n primaryHover?: ThemeColorValue;\n primarySubtle?: ThemeColorValue;\n skeleton?: ThemeColorValue;\n skeletonShimmer?: ThemeColorValue;\n statusDisabledSolid?: ThemeColorValue;\n statusDisabledSolidFg?: ThemeColorValue;\n statusErrorBorder?: ThemeColorValue;\n statusErrorBorderHover?: ThemeColorValue;\n statusErrorFg?: ThemeColorValue;\n statusErrorSolid?: ThemeColorValue;\n statusErrorSolidFg?: ThemeColorValue;\n statusInfoFg?: ThemeColorValue;\n statusInfoSolid?: ThemeColorValue;\n statusInfoSolidFg?: ThemeColorValue;\n statusNeutralSolid?: ThemeColorValue;\n statusNeutralSolidFg?: ThemeColorValue;\n statusSuccessBorder?: ThemeColorValue;\n statusSuccessBorderHover?: ThemeColorValue;\n statusSuccessFg?: ThemeColorValue;\n statusSuccessSolid?: ThemeColorValue;\n statusSuccessSolidFg?: ThemeColorValue;\n statusWarningBorder?: ThemeColorValue;\n statusWarningBorderHover?: ThemeColorValue;\n statusWarningFg?: ThemeColorValue;\n statusWarningSolid?: ThemeColorValue;\n statusWarningSolidFg?: ThemeColorValue;\n surfaceBlue?: ThemeColorValue;\n surfaceBlueAccent?: ThemeColorValue;\n surfaceBlueFg?: ThemeColorValue;\n surfaceBlueHover?: ThemeColorValue;\n surfaceCyan?: ThemeColorValue;\n surfaceCyanAccent?: ThemeColorValue;\n surfaceCyanFg?: ThemeColorValue;\n surfaceCyanHover?: ThemeColorValue;\n surfaceGray?: ThemeColorValue;\n surfaceGrayAccent?: ThemeColorValue;\n surfaceGrayFg?: ThemeColorValue;\n surfaceGrayHover?: ThemeColorValue;\n surfaceGreen?: ThemeColorValue;\n surfaceGreenAccent?: ThemeColorValue;\n surfaceGreenFg?: ThemeColorValue;\n surfaceGreenHover?: ThemeColorValue;\n surfaceOrange?: ThemeColorValue;\n surfaceOrangeAccent?: ThemeColorValue;\n surfaceOrangeFg?: ThemeColorValue;\n surfaceOrangeHover?: ThemeColorValue;\n surfacePink?: ThemeColorValue;\n surfacePinkAccent?: ThemeColorValue;\n surfacePinkFg?: ThemeColorValue;\n surfacePinkHover?: ThemeColorValue;\n surfacePurple?: ThemeColorValue;\n surfacePurpleAccent?: ThemeColorValue;\n surfacePurpleFg?: ThemeColorValue;\n surfacePurpleHover?: ThemeColorValue;\n surfaceRed?: ThemeColorValue;\n surfaceRedAccent?: ThemeColorValue;\n surfaceRedFg?: ThemeColorValue;\n surfaceRedHover?: ThemeColorValue;\n surfaceTeal?: ThemeColorValue;\n surfaceTealAccent?: ThemeColorValue;\n surfaceTealFg?: ThemeColorValue;\n surfaceTealHover?: ThemeColorValue;\n surfaceYellow?: ThemeColorValue;\n surfaceYellowAccent?: ThemeColorValue;\n surfaceYellowFg?: ThemeColorValue;\n surfaceYellowHover?: ThemeColorValue;\n track?: ThemeColorValue;\n trackDisabled?: ThemeColorValue;\n trackEmphasized?: ThemeColorValue;\n}\n\nexport interface ThemeFontTokens {\n body?: string;\n mono?: string;\n}\n\nexport interface ThemeFontSizeTokens {\n componentLg?: string;\n componentMd?: string;\n componentSm?: string;\n iconLg?: string;\n iconMd?: string;\n iconSm?: string;\n}\n\nexport interface ThemeRadiusTokens {\n componentLg?: string;\n componentMd?: string;\n componentSm?: string;\n lg?: string;\n md?: string;\n sm?: string;\n}\n\nexport interface ThemeShadowTokens {\n focus?: string;\n focusError?: string;\n focusSuccess?: string;\n focusWarning?: string;\n}\n\nexport interface ThemeSizeTokens {\n componentLg?: string;\n componentMd?: string;\n componentSm?: string;\n iconLg?: string;\n iconMd?: string;\n iconSm?: string;\n}\n\nexport interface ThemeSpacingTokens {\n componentLg?: string;\n componentMd?: string;\n componentSm?: string;\n focusOffset?: string;\n focusOffsetLoose?: string;\n focusOffsetTight?: string;\n}\n\nexport interface ThemeTokens {\n colors?: ThemeColorTokens;\n fonts?: ThemeFontTokens;\n fontSizes?: ThemeFontSizeTokens;\n radii?: ThemeRadiusTokens;\n shadows?: ThemeShadowTokens;\n sizes?: ThemeSizeTokens;\n spacing?: ThemeSpacingTokens;\n}\n\nexport interface ThemeModeTokens {\n dark?: ThemeTokens;\n light?: ThemeTokens;\n}\n\nexport interface ThemeProps extends HTMLAttributes<HTMLElement> {\n /**\n * HTML element type to render.\n * @default 'div'\n */\n as?: ElementType;\n /**\n * Theme content.\n */\n children?: ReactNode;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Theme mode. System mode omits data-theme and follows existing CSS/media\n * query behavior.\n * @default 'system'\n */\n mode?: ThemeMode;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Friendly token overrides mapped to Silver CSS custom properties.\n */\n themes?: ThemeModeTokens;\n /**\n * Friendly token overrides applied in every mode.\n */\n tokens?: ThemeTokens;\n}\n\nconst colorTokenVariables: Record<\n keyof ThemeColorTokens,\n ThemeCssVariableName\n> = {\n bg: '--silver-colors-bg',\n bgGhostActive: '--silver-colors-bg-ghost-active',\n bgGhostHover: '--silver-colors-bg-ghost-hover',\n bgHover: '--silver-colors-bg-hover',\n bgSelected: '--silver-colors-bg-selected',\n bgSubtle: '--silver-colors-bg-subtle',\n border: '--silver-colors-border',\n borderEmphasized: '--silver-colors-border-emphasized',\n destructive: '--silver-colors-destructive',\n destructiveActive: '--silver-colors-destructive-active',\n destructiveFg: '--silver-colors-destructive-fg',\n destructiveHover: '--silver-colors-destructive-hover',\n fg: '--silver-colors-fg',\n fgDisabled: '--silver-colors-fg-disabled',\n fgMuted: '--silver-colors-fg-muted',\n fgOnPrimary: '--silver-colors-fg-on-primary',\n primary: '--silver-colors-primary',\n primaryActive: '--silver-colors-primary-active',\n primaryHover: '--silver-colors-primary-hover',\n primarySubtle: '--silver-colors-primary-subtle',\n iconAccent: '--silver-colors-icon-accent',\n iconBlue: '--silver-colors-icon-blue',\n iconCyan: '--silver-colors-icon-cyan',\n iconDisabled: '--silver-colors-icon-disabled',\n iconError: '--silver-colors-icon-error',\n iconGray: '--silver-colors-icon-gray',\n iconGreen: '--silver-colors-icon-green',\n iconInfo: '--silver-colors-icon-info',\n iconOrange: '--silver-colors-icon-orange',\n iconPink: '--silver-colors-icon-pink',\n iconPrimary: '--silver-colors-icon-primary',\n iconPurple: '--silver-colors-icon-purple',\n iconRed: '--silver-colors-icon-red',\n iconSecondary: '--silver-colors-icon-secondary',\n iconSuccess: '--silver-colors-icon-success',\n iconTeal: '--silver-colors-icon-teal',\n iconTertiary: '--silver-colors-icon-tertiary',\n iconWarning: '--silver-colors-icon-warning',\n iconYellow: '--silver-colors-icon-yellow',\n overlayScrim: '--silver-colors-overlay-scrim',\n overlayScrimStrong: '--silver-colors-overlay-scrim-strong',\n overlayScrimSubtle: '--silver-colors-overlay-scrim-subtle',\n presenceError: '--silver-colors-presence-error',\n presenceNeutral: '--silver-colors-presence-neutral',\n presenceSuccess: '--silver-colors-presence-success',\n skeleton: '--silver-colors-skeleton',\n skeletonShimmer: '--silver-colors-skeleton-shimmer',\n statusDisabledSolid: '--silver-colors-status-disabled-solid',\n statusDisabledSolidFg: '--silver-colors-status-disabled-solid-fg',\n statusErrorBorder: '--silver-colors-status-error-border',\n statusErrorBorderHover: '--silver-colors-status-error-border-hover',\n statusErrorFg: '--silver-colors-status-error-fg',\n statusErrorSolid: '--silver-colors-status-error-solid',\n statusErrorSolidFg: '--silver-colors-status-error-solid-fg',\n statusInfoFg: '--silver-colors-status-info-fg',\n statusInfoSolid: '--silver-colors-status-info-solid',\n statusInfoSolidFg: '--silver-colors-status-info-solid-fg',\n statusNeutralSolid: '--silver-colors-status-neutral-solid',\n statusNeutralSolidFg: '--silver-colors-status-neutral-solid-fg',\n statusSuccessBorder: '--silver-colors-status-success-border',\n statusSuccessBorderHover: '--silver-colors-status-success-border-hover',\n statusSuccessFg: '--silver-colors-status-success-fg',\n statusSuccessSolid: '--silver-colors-status-success-solid',\n statusSuccessSolidFg: '--silver-colors-status-success-solid-fg',\n statusWarningBorder: '--silver-colors-status-warning-border',\n statusWarningBorderHover: '--silver-colors-status-warning-border-hover',\n statusWarningFg: '--silver-colors-status-warning-fg',\n statusWarningSolid: '--silver-colors-status-warning-solid',\n statusWarningSolidFg: '--silver-colors-status-warning-solid-fg',\n surfaceBlue: '--silver-colors-surface-blue',\n surfaceBlueAccent: '--silver-colors-surface-blue-accent',\n surfaceBlueFg: '--silver-colors-surface-blue-fg',\n surfaceBlueHover: '--silver-colors-surface-blue-hover',\n surfaceCyan: '--silver-colors-surface-cyan',\n surfaceCyanAccent: '--silver-colors-surface-cyan-accent',\n surfaceCyanFg: '--silver-colors-surface-cyan-fg',\n surfaceCyanHover: '--silver-colors-surface-cyan-hover',\n surfaceGray: '--silver-colors-surface-gray',\n surfaceGrayAccent: '--silver-colors-surface-gray-accent',\n surfaceGrayFg: '--silver-colors-surface-gray-fg',\n surfaceGrayHover: '--silver-colors-surface-gray-hover',\n surfaceGreen: '--silver-colors-surface-green',\n surfaceGreenAccent: '--silver-colors-surface-green-accent',\n surfaceGreenFg: '--silver-colors-surface-green-fg',\n surfaceGreenHover: '--silver-colors-surface-green-hover',\n surfaceOrange: '--silver-colors-surface-orange',\n surfaceOrangeAccent: '--silver-colors-surface-orange-accent',\n surfaceOrangeFg: '--silver-colors-surface-orange-fg',\n surfaceOrangeHover: '--silver-colors-surface-orange-hover',\n surfacePink: '--silver-colors-surface-pink',\n surfacePinkAccent: '--silver-colors-surface-pink-accent',\n surfacePinkFg: '--silver-colors-surface-pink-fg',\n surfacePinkHover: '--silver-colors-surface-pink-hover',\n surfacePurple: '--silver-colors-surface-purple',\n surfacePurpleAccent: '--silver-colors-surface-purple-accent',\n surfacePurpleFg: '--silver-colors-surface-purple-fg',\n surfacePurpleHover: '--silver-colors-surface-purple-hover',\n surfaceRed: '--silver-colors-surface-red',\n surfaceRedAccent: '--silver-colors-surface-red-accent',\n surfaceRedFg: '--silver-colors-surface-red-fg',\n surfaceRedHover: '--silver-colors-surface-red-hover',\n surfaceTeal: '--silver-colors-surface-teal',\n surfaceTealAccent: '--silver-colors-surface-teal-accent',\n surfaceTealFg: '--silver-colors-surface-teal-fg',\n surfaceTealHover: '--silver-colors-surface-teal-hover',\n surfaceYellow: '--silver-colors-surface-yellow',\n surfaceYellowAccent: '--silver-colors-surface-yellow-accent',\n surfaceYellowFg: '--silver-colors-surface-yellow-fg',\n surfaceYellowHover: '--silver-colors-surface-yellow-hover',\n track: '--silver-colors-track',\n trackDisabled: '--silver-colors-track-disabled',\n trackEmphasized: '--silver-colors-track-emphasized',\n};\n\nconst fontTokenVariables: Record<keyof ThemeFontTokens, ThemeCssVariableName> =\n {\n body: '--silver-fonts-body',\n mono: '--silver-fonts-mono',\n };\n\nconst fontSizeTokenVariables: Record<\n keyof ThemeFontSizeTokens,\n ThemeCssVariableName\n> = {\n componentLg: '--silver-font-sizes-component-lg',\n componentMd: '--silver-font-sizes-component-md',\n componentSm: '--silver-font-sizes-component-sm',\n iconLg: '--silver-font-sizes-icon-lg',\n iconMd: '--silver-font-sizes-icon-md',\n iconSm: '--silver-font-sizes-icon-sm',\n};\n\nconst radiusTokenVariables: Record<\n keyof ThemeRadiusTokens,\n ThemeCssVariableName\n> = {\n componentLg: '--silver-radii-component-lg',\n componentMd: '--silver-radii-component-md',\n componentSm: '--silver-radii-component-sm',\n lg: '--silver-radii-lg',\n md: '--silver-radii-md',\n sm: '--silver-radii-sm',\n};\n\nconst shadowTokenVariables: Record<\n keyof ThemeShadowTokens,\n ThemeCssVariableName\n> = {\n focus: '--silver-shadows-focus',\n focusError: '--silver-shadows-focus-error',\n focusSuccess: '--silver-shadows-focus-success',\n focusWarning: '--silver-shadows-focus-warning',\n};\n\nconst sizeTokenVariables: Record<keyof ThemeSizeTokens, ThemeCssVariableName> =\n {\n componentLg: '--silver-sizes-component-lg',\n componentMd: '--silver-sizes-component-md',\n componentSm: '--silver-sizes-component-sm',\n iconLg: '--silver-sizes-icon-lg',\n iconMd: '--silver-sizes-icon-md',\n iconSm: '--silver-sizes-icon-sm',\n };\n\nconst spacingTokenVariables: Record<\n keyof ThemeSpacingTokens,\n ThemeCssVariableName\n> = {\n componentLg: '--silver-spacing-component-lg',\n componentMd: '--silver-spacing-component-md',\n componentSm: '--silver-spacing-component-sm',\n focusOffset: '--silver-spacing-focus-offset',\n focusOffsetLoose: '--silver-spacing-focus-offset-loose',\n focusOffsetTight: '--silver-spacing-focus-offset-tight',\n};\n\nconst paletteReferencePattern =\n /^(blue|cyan|gray|green|orange|pink|purple|red|teal|yellow)[.-](50|100|200|300|400|500|600|700|800|900)$/;\n\nfunction resolveThemeColorValue(value: ThemeColorValue): string {\n const match = paletteReferencePattern.exec(value);\n\n if (match == null) {\n return value;\n }\n\n const [, paletteName, paletteStep] = match;\n return `var(--silver-colors-${paletteName}-${paletteStep})`;\n}\n\nfunction assignTokenVariables<TTokenName extends string>(\n style: ThemeCssVariables,\n tokens: Partial<Record<TTokenName, string>> | undefined,\n variables: Record<TTokenName, ThemeCssVariableName>,\n resolveValue: (value: string) => string = value => value,\n): void {\n if (tokens == null) {\n return;\n }\n\n for (const tokenName of Object.keys(variables) as TTokenName[]) {\n const value = tokens[tokenName];\n\n if (value != null) {\n style[variables[tokenName]] = resolveValue(value);\n }\n }\n}\n\nfunction createThemeStyle(\n tokens: ThemeTokens | undefined,\n style: CSSProperties | undefined,\n): CSSProperties {\n return {\n ...createThemeVariables(tokens),\n ...style,\n };\n}\n\nfunction createThemeVariables(\n tokens: ThemeTokens | undefined,\n): ThemeCssVariables {\n const themeStyle: ThemeCssVariables = {};\n\n assignTokenVariables(\n themeStyle,\n tokens?.colors,\n colorTokenVariables,\n resolveThemeColorValue,\n );\n assignTokenVariables(themeStyle, tokens?.fontSizes, fontSizeTokenVariables);\n assignTokenVariables(themeStyle, tokens?.fonts, fontTokenVariables);\n assignTokenVariables(themeStyle, tokens?.radii, radiusTokenVariables);\n assignTokenVariables(themeStyle, tokens?.shadows, shadowTokenVariables);\n assignTokenVariables(themeStyle, tokens?.sizes, sizeTokenVariables);\n assignTokenVariables(themeStyle, tokens?.spacing, spacingTokenVariables);\n\n return themeStyle;\n}\n\nfunction sanitizeThemeClassName(id: string): string {\n return `silver-theme-${id.replace(/[^a-zA-Z0-9_-]/g, '')}`;\n}\n\nfunction serializeThemeVariables(variables: ThemeCssVariables): string {\n return Object.entries(variables)\n .map(\n ([name, value]) =>\n `${name}: ${String(value).replace(/<\\/style/gi, '<\\\\/style')};`,\n )\n .join('');\n}\n\nfunction createThemeCss(\n className: string,\n tokens: ThemeModeTokens,\n mode: ThemeMode,\n): string | undefined {\n const baseTokens =\n mode === 'dark'\n ? (tokens.dark ?? tokens.light)\n : (tokens.light ?? tokens.dark);\n\n if (baseTokens == null) {\n return undefined;\n }\n\n const selector = `.${className}`;\n const baseCss = `${selector}{${serializeThemeVariables(createThemeVariables(baseTokens))}}`;\n\n if (mode !== 'system' || tokens.dark == null) {\n return baseCss;\n }\n\n const darkVariables = serializeThemeVariables(\n createThemeVariables(tokens.dark),\n );\n const darkSelector = `.${className}[data-theme=\"dark\"],[data-theme=\"dark\"] .${className}`;\n const darkCss = `${darkSelector}{${darkVariables}}`;\n\n return `${baseCss}@media (prefers-color-scheme: dark){${selector}{${darkVariables}}}${darkCss}`;\n}\n\n/**\n * Scoped Silver UI theme provider backed by CSS custom properties.\n */\nexport function Theme({\n as: Element = 'div',\n children,\n className,\n 'data-testid': dataTestId,\n mode = 'system',\n ref,\n style,\n themes,\n tokens,\n ...htmlProps\n}: ThemeProps): React.JSX.Element {\n const themeId = useId();\n const themeClassName =\n themes == null ? undefined : sanitizeThemeClassName(themeId);\n const themeCss =\n themes != null && themeClassName != null\n ? createThemeCss(themeClassName, themes, mode)\n : undefined;\n const themeStyle = createThemeStyle(tokens, style);\n\n return createElement(\n Element,\n {\n ...htmlProps,\n className: cx(themeClassName, className),\n 'data-testid': dataTestId,\n 'data-theme': mode === 'system' ? undefined : mode,\n ref,\n style: themeStyle,\n },\n themeCss == null\n ? children\n : createElement(\n Fragment,\n null,\n createElement(\n 'style',\n dataTestId == null ? null : {'data-testid': `${dataTestId}-styles`},\n themeCss,\n ),\n children,\n ),\n );\n}\n\nTheme.displayName = 'Theme';\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { fieldRecipe } from './chunk-U7ALNPFJ.js';
|
|
2
2
|
import { VisuallyHidden } from './chunk-V2V5TTTL.js';
|
|
3
|
-
import { Text } from './chunk-
|
|
4
|
-
import { Tooltip } from './chunk-
|
|
3
|
+
import { Text } from './chunk-KPAOAYDY.js';
|
|
4
|
+
import { Tooltip } from './chunk-FPKXEI3W.js';
|
|
5
5
|
import { isReactNode } from './chunk-2PSZAWLC.js';
|
|
6
6
|
import { Icon } from './chunk-IUW777WZ.js';
|
|
7
7
|
import { cx } from './chunk-PPNETWIP.js';
|
|
@@ -112,5 +112,5 @@ function Field({
|
|
|
112
112
|
Field.displayName = "Field";
|
|
113
113
|
|
|
114
114
|
export { Field, getNecessity };
|
|
115
|
-
//# sourceMappingURL=chunk-
|
|
116
|
-
//# sourceMappingURL=chunk-
|
|
115
|
+
//# sourceMappingURL=chunk-PZBY3JI7.js.map
|
|
116
|
+
//# sourceMappingURL=chunk-PZBY3JI7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Field/Field.tsx"],"names":[],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/components/Field/Field.tsx"],"names":[],"mappings":"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","file":"chunk-PZBY3JI7.js","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"]}
|