@zentauri-ui/zentauri-components 1.9.0 → 1.9.2
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 +8 -8
- package/cli/registry.json +0 -1
- package/dist/animations/blur-in.js +3 -2
- package/dist/animations/blur-in.js.map +1 -1
- package/dist/animations/blur-in.mjs +2 -1
- package/dist/animations/blur-in.mjs.map +1 -1
- package/dist/animations/blur-out.js +3 -2
- package/dist/animations/blur-out.js.map +1 -1
- package/dist/animations/blur-out.mjs +2 -1
- package/dist/animations/blur-out.mjs.map +1 -1
- package/dist/animations/bounce.js +3 -2
- package/dist/animations/bounce.js.map +1 -1
- package/dist/animations/bounce.mjs +2 -1
- package/dist/animations/bounce.mjs.map +1 -1
- package/dist/animations/fade-down.js +3 -2
- package/dist/animations/fade-down.js.map +1 -1
- package/dist/animations/fade-down.mjs +2 -1
- package/dist/animations/fade-down.mjs.map +1 -1
- package/dist/animations/fade-in.js +3 -2
- package/dist/animations/fade-in.js.map +1 -1
- package/dist/animations/fade-in.mjs +2 -1
- package/dist/animations/fade-in.mjs.map +1 -1
- package/dist/animations/fade-left.js +3 -2
- package/dist/animations/fade-left.js.map +1 -1
- package/dist/animations/fade-left.mjs +2 -1
- package/dist/animations/fade-left.mjs.map +1 -1
- package/dist/animations/fade-out.js +3 -2
- package/dist/animations/fade-out.js.map +1 -1
- package/dist/animations/fade-out.mjs +2 -1
- package/dist/animations/fade-out.mjs.map +1 -1
- package/dist/animations/fade-right.js +3 -2
- package/dist/animations/fade-right.js.map +1 -1
- package/dist/animations/fade-right.mjs +2 -1
- package/dist/animations/fade-right.mjs.map +1 -1
- package/dist/animations/fade-up.js +3 -2
- package/dist/animations/fade-up.js.map +1 -1
- package/dist/animations/fade-up.mjs +2 -1
- package/dist/animations/fade-up.mjs.map +1 -1
- package/dist/animations/flip-in.js +3 -2
- package/dist/animations/flip-in.js.map +1 -1
- package/dist/animations/flip-in.mjs +2 -1
- package/dist/animations/flip-in.mjs.map +1 -1
- package/dist/animations/flip.js +3 -2
- package/dist/animations/flip.js.map +1 -1
- package/dist/animations/flip.mjs +2 -1
- package/dist/animations/flip.mjs.map +1 -1
- package/dist/animations/float.js +3 -2
- package/dist/animations/float.js.map +1 -1
- package/dist/animations/float.mjs +2 -1
- package/dist/animations/float.mjs.map +1 -1
- package/dist/animations/hover-lift.js +3 -2
- package/dist/animations/hover-lift.js.map +1 -1
- package/dist/animations/hover-lift.mjs +2 -1
- package/dist/animations/hover-lift.mjs.map +1 -1
- package/dist/animations/hover-scale.js +3 -2
- package/dist/animations/hover-scale.js.map +1 -1
- package/dist/animations/hover-scale.mjs +2 -1
- package/dist/animations/hover-scale.mjs.map +1 -1
- package/dist/animations/magnetic.js +3 -2
- package/dist/animations/magnetic.js.map +1 -1
- package/dist/animations/magnetic.mjs +2 -1
- package/dist/animations/magnetic.mjs.map +1 -1
- package/dist/animations/parallax.js +3 -2
- package/dist/animations/parallax.js.map +1 -1
- package/dist/animations/parallax.mjs +2 -1
- package/dist/animations/parallax.mjs.map +1 -1
- package/dist/animations/ping.js +3 -2
- package/dist/animations/ping.js.map +1 -1
- package/dist/animations/ping.mjs +2 -1
- package/dist/animations/ping.mjs.map +1 -1
- package/dist/animations/pop-in.js +3 -2
- package/dist/animations/pop-in.js.map +1 -1
- package/dist/animations/pop-in.mjs +2 -1
- package/dist/animations/pop-in.mjs.map +1 -1
- package/dist/animations/press.js +3 -2
- package/dist/animations/press.js.map +1 -1
- package/dist/animations/press.mjs +2 -1
- package/dist/animations/press.mjs.map +1 -1
- package/dist/animations/progress.js +3 -2
- package/dist/animations/progress.js.map +1 -1
- package/dist/animations/progress.mjs +2 -1
- package/dist/animations/progress.mjs.map +1 -1
- package/dist/animations/pulse.js +3 -2
- package/dist/animations/pulse.js.map +1 -1
- package/dist/animations/pulse.mjs +2 -1
- package/dist/animations/pulse.mjs.map +1 -1
- package/dist/animations/reorder.js +3 -2
- package/dist/animations/reorder.js.map +1 -1
- package/dist/animations/reorder.mjs +2 -1
- package/dist/animations/reorder.mjs.map +1 -1
- package/dist/animations/reveal-blur.js +3 -2
- package/dist/animations/reveal-blur.js.map +1 -1
- package/dist/animations/reveal-blur.mjs +2 -1
- package/dist/animations/reveal-blur.mjs.map +1 -1
- package/dist/animations/reveal-down.js +3 -2
- package/dist/animations/reveal-down.js.map +1 -1
- package/dist/animations/reveal-down.mjs +2 -1
- package/dist/animations/reveal-down.mjs.map +1 -1
- package/dist/animations/reveal-left.js +3 -2
- package/dist/animations/reveal-left.js.map +1 -1
- package/dist/animations/reveal-left.mjs +2 -1
- package/dist/animations/reveal-left.mjs.map +1 -1
- package/dist/animations/reveal-right.js +3 -2
- package/dist/animations/reveal-right.js.map +1 -1
- package/dist/animations/reveal-right.mjs +2 -1
- package/dist/animations/reveal-right.mjs.map +1 -1
- package/dist/animations/reveal-up.js +3 -2
- package/dist/animations/reveal-up.js.map +1 -1
- package/dist/animations/reveal-up.mjs +2 -1
- package/dist/animations/reveal-up.mjs.map +1 -1
- package/dist/animations/rotate-in.js +3 -2
- package/dist/animations/rotate-in.js.map +1 -1
- package/dist/animations/rotate-in.mjs +2 -1
- package/dist/animations/rotate-in.mjs.map +1 -1
- package/dist/animations/scale-in.js +3 -2
- package/dist/animations/scale-in.js.map +1 -1
- package/dist/animations/scale-in.mjs +2 -1
- package/dist/animations/scale-in.mjs.map +1 -1
- package/dist/animations/scale-out.js +3 -2
- package/dist/animations/scale-out.js.map +1 -1
- package/dist/animations/scale-out.mjs +2 -1
- package/dist/animations/scale-out.mjs.map +1 -1
- package/dist/animations/shake.js +3 -2
- package/dist/animations/shake.js.map +1 -1
- package/dist/animations/shake.mjs +2 -1
- package/dist/animations/shake.mjs.map +1 -1
- package/dist/animations/shared/create-motion-animation.d.ts.map +1 -1
- package/dist/animations/skeleton-shimmer.js +3 -2
- package/dist/animations/skeleton-shimmer.js.map +1 -1
- package/dist/animations/skeleton-shimmer.mjs +2 -1
- package/dist/animations/skeleton-shimmer.mjs.map +1 -1
- package/dist/animations/slide-down.js +3 -2
- package/dist/animations/slide-down.js.map +1 -1
- package/dist/animations/slide-down.mjs +2 -1
- package/dist/animations/slide-down.mjs.map +1 -1
- package/dist/animations/slide-left.js +3 -2
- package/dist/animations/slide-left.js.map +1 -1
- package/dist/animations/slide-left.mjs +2 -1
- package/dist/animations/slide-left.mjs.map +1 -1
- package/dist/animations/slide-right.js +3 -2
- package/dist/animations/slide-right.js.map +1 -1
- package/dist/animations/slide-right.mjs +2 -1
- package/dist/animations/slide-right.mjs.map +1 -1
- package/dist/animations/slide-up.js +3 -2
- package/dist/animations/slide-up.js.map +1 -1
- package/dist/animations/slide-up.mjs +2 -1
- package/dist/animations/slide-up.mjs.map +1 -1
- package/dist/animations/spin.js +3 -2
- package/dist/animations/spin.js.map +1 -1
- package/dist/animations/spin.mjs +2 -1
- package/dist/animations/spin.mjs.map +1 -1
- package/dist/animations/text-reveal.js +3 -2
- package/dist/animations/text-reveal.js.map +1 -1
- package/dist/animations/text-reveal.mjs +2 -1
- package/dist/animations/text-reveal.mjs.map +1 -1
- package/dist/animations/text-shimmer.js +3 -2
- package/dist/animations/text-shimmer.js.map +1 -1
- package/dist/animations/text-shimmer.mjs +2 -1
- package/dist/animations/text-shimmer.mjs.map +1 -1
- package/dist/animations/tilt.js +3 -2
- package/dist/animations/tilt.js.map +1 -1
- package/dist/animations/tilt.mjs +2 -1
- package/dist/animations/tilt.mjs.map +1 -1
- package/dist/animations/wiggle.js +3 -2
- package/dist/animations/wiggle.js.map +1 -1
- package/dist/animations/wiggle.mjs +2 -1
- package/dist/animations/wiggle.mjs.map +1 -1
- package/dist/charts/area.js +1 -0
- package/dist/charts/area.js.map +1 -1
- package/dist/charts/area.mjs +1 -0
- package/dist/charts/area.mjs.map +1 -1
- package/dist/charts/bar.js +1 -0
- package/dist/charts/bar.mjs +1 -0
- package/dist/charts/bubble.js +1 -0
- package/dist/charts/bubble.js.map +1 -1
- package/dist/charts/bubble.mjs +1 -0
- package/dist/charts/bubble.mjs.map +1 -1
- package/dist/charts/funnel.js +1 -0
- package/dist/charts/funnel.js.map +1 -1
- package/dist/charts/funnel.mjs +1 -0
- package/dist/charts/funnel.mjs.map +1 -1
- package/dist/charts/line.js +1 -0
- package/dist/charts/line.js.map +1 -1
- package/dist/charts/line.mjs +1 -0
- package/dist/charts/line.mjs.map +1 -1
- package/dist/charts/pie.js +1 -0
- package/dist/charts/pie.js.map +1 -1
- package/dist/charts/pie.mjs +1 -0
- package/dist/charts/pie.mjs.map +1 -1
- package/dist/charts/radar.js +1 -0
- package/dist/charts/radar.js.map +1 -1
- package/dist/charts/radar.mjs +1 -0
- package/dist/charts/radar.mjs.map +1 -1
- package/dist/charts/scatter.js +1 -0
- package/dist/charts/scatter.js.map +1 -1
- package/dist/charts/scatter.mjs +1 -0
- package/dist/charts/scatter.mjs.map +1 -1
- package/dist/charts/stacked-bar.js +1 -0
- package/dist/charts/stacked-bar.js.map +1 -1
- package/dist/charts/stacked-bar.mjs +1 -0
- package/dist/charts/stacked-bar.mjs.map +1 -1
- package/dist/{chunk-VHVQELWF.js → chunk-22I54GJW.js} +27 -211
- package/dist/chunk-22I54GJW.js.map +1 -0
- package/dist/chunk-27PO2FY2.mjs +161 -0
- package/dist/chunk-27PO2FY2.mjs.map +1 -0
- package/dist/chunk-2PWT2MB5.mjs +73 -0
- package/dist/chunk-2PWT2MB5.mjs.map +1 -0
- package/dist/chunk-34OSFCSH.js +212 -0
- package/dist/chunk-34OSFCSH.js.map +1 -0
- package/dist/chunk-37YQUTKG.js +204 -0
- package/dist/chunk-37YQUTKG.js.map +1 -0
- package/dist/chunk-3HSFL4WA.mjs +191 -0
- package/dist/chunk-3HSFL4WA.mjs.map +1 -0
- package/dist/{chunk-LNYCEPW5.js → chunk-3I6XR7KN.js} +30 -75
- package/dist/chunk-3I6XR7KN.js.map +1 -0
- package/dist/chunk-3MK7CWEX.js +54 -0
- package/dist/chunk-3MK7CWEX.js.map +1 -0
- package/dist/chunk-3R6PQUG2.mjs +144 -0
- package/dist/chunk-3R6PQUG2.mjs.map +1 -0
- package/dist/{chunk-BU2MPXPZ.js → chunk-3Z6L24ZK.js} +32 -230
- package/dist/chunk-3Z6L24ZK.js.map +1 -0
- package/dist/chunk-44G3U35C.js +181 -0
- package/dist/chunk-44G3U35C.js.map +1 -0
- package/dist/chunk-456OEGUT.mjs +58 -0
- package/dist/chunk-456OEGUT.mjs.map +1 -0
- package/dist/{chunk-ORFI4BCJ.mjs → chunk-45CGVW7S.js} +54 -205
- package/dist/chunk-45CGVW7S.js.map +1 -0
- package/dist/chunk-4FU6FDUT.mjs +202 -0
- package/dist/chunk-4FU6FDUT.mjs.map +1 -0
- package/dist/chunk-4LVEWKXF.mjs +258 -0
- package/dist/chunk-4LVEWKXF.mjs.map +1 -0
- package/dist/{chunk-3W224B3M.js → chunk-4QLWSXXO.mjs} +24 -210
- package/dist/chunk-4QLWSXXO.mjs.map +1 -0
- package/dist/chunk-4U7CDEN7.mjs +57 -0
- package/dist/chunk-4U7CDEN7.mjs.map +1 -0
- package/dist/{chunk-U3VV22G4.js → chunk-56DECC6D.js} +37 -237
- package/dist/chunk-56DECC6D.js.map +1 -0
- package/dist/chunk-56KZVM5D.mjs +159 -0
- package/dist/chunk-56KZVM5D.mjs.map +1 -0
- package/dist/{chunk-PYUZOVLY.js → chunk-5BSYGFN7.mjs} +24 -162
- package/dist/chunk-5BSYGFN7.mjs.map +1 -0
- package/dist/chunk-5J6QMTES.js +655 -0
- package/dist/chunk-5J6QMTES.js.map +1 -0
- package/dist/chunk-5QSYJHWL.mjs +75 -0
- package/dist/chunk-5QSYJHWL.mjs.map +1 -0
- package/dist/chunk-5R6XJAXQ.mjs +66 -0
- package/dist/chunk-5R6XJAXQ.mjs.map +1 -0
- package/dist/{chunk-OZHETX4J.mjs → chunk-5WWD3TZ2.mjs} +25 -124
- package/dist/chunk-5WWD3TZ2.mjs.map +1 -0
- package/dist/{chunk-H7WDA6U6.mjs → chunk-63UE3BR4.mjs} +24 -73
- package/dist/chunk-63UE3BR4.mjs.map +1 -0
- package/dist/chunk-63YMCBGJ.js +217 -0
- package/dist/chunk-63YMCBGJ.js.map +1 -0
- package/dist/chunk-7GIL24GK.js +354 -0
- package/dist/chunk-7GIL24GK.js.map +1 -0
- package/dist/chunk-7JBQ3ZJN.mjs +250 -0
- package/dist/chunk-7JBQ3ZJN.mjs.map +1 -0
- package/dist/chunk-7LFRU6AW.js +254 -0
- package/dist/chunk-7LFRU6AW.js.map +1 -0
- package/dist/{chunk-HLG2YJFZ.mjs → chunk-7M4TUP4I.js} +30 -191
- package/dist/chunk-7M4TUP4I.js.map +1 -0
- package/dist/chunk-AADGUMYW.js +122 -0
- package/dist/chunk-AADGUMYW.js.map +1 -0
- package/dist/chunk-AQHY4S33.js +19 -0
- package/dist/chunk-AQHY4S33.js.map +1 -0
- package/dist/chunk-ATMCT3A3.mjs +222 -0
- package/dist/chunk-ATMCT3A3.mjs.map +1 -0
- package/dist/chunk-BDBL4XXI.mjs +45 -0
- package/dist/chunk-BDBL4XXI.mjs.map +1 -0
- package/dist/chunk-BTSCPOWZ.mjs +171 -0
- package/dist/chunk-BTSCPOWZ.mjs.map +1 -0
- package/dist/chunk-BZZVO4GL.mjs +414 -0
- package/dist/chunk-BZZVO4GL.mjs.map +1 -0
- package/dist/chunk-C7F6OCGK.mjs +123 -0
- package/dist/chunk-C7F6OCGK.mjs.map +1 -0
- package/dist/{chunk-NFEA5TN2.js → chunk-D4B62J5C.js} +11 -41
- package/dist/chunk-D4B62J5C.js.map +1 -0
- package/dist/{chunk-CSFLMMAT.mjs → chunk-DWDDIG6R.js} +30 -160
- package/dist/chunk-DWDDIG6R.js.map +1 -0
- package/dist/chunk-E7BPOL74.js +155 -0
- package/dist/chunk-E7BPOL74.js.map +1 -0
- package/dist/chunk-EIX26RKN.js +73 -0
- package/dist/chunk-EIX26RKN.js.map +1 -0
- package/dist/chunk-EKBSSKJQ.js +271 -0
- package/dist/chunk-EKBSSKJQ.js.map +1 -0
- package/dist/{chunk-TKVZU56F.mjs → chunk-EP7WTIKH.mjs} +25 -222
- package/dist/chunk-EP7WTIKH.mjs.map +1 -0
- package/dist/{chunk-7OVJXYSS.mjs → chunk-F4BM6LX2.mjs} +2 -2
- package/dist/{chunk-7OVJXYSS.mjs.map → chunk-F4BM6LX2.mjs.map} +1 -1
- package/dist/chunk-F6V74YMW.js +71 -0
- package/dist/chunk-F6V74YMW.js.map +1 -0
- package/dist/chunk-FNNIH7R2.js +70 -0
- package/dist/chunk-FNNIH7R2.js.map +1 -0
- package/dist/{chunk-ZX2IBIZT.js → chunk-FWY22BZZ.js} +46 -4
- package/dist/chunk-FWY22BZZ.js.map +1 -0
- package/dist/chunk-FXDHDQTH.js +79 -0
- package/dist/chunk-FXDHDQTH.js.map +1 -0
- package/dist/chunk-FZET7XQV.js +169 -0
- package/dist/chunk-FZET7XQV.js.map +1 -0
- package/dist/chunk-GDYSB7SB.js +78 -0
- package/dist/chunk-GDYSB7SB.js.map +1 -0
- package/dist/chunk-GPM2PRC5.js +61 -0
- package/dist/chunk-GPM2PRC5.js.map +1 -0
- package/dist/chunk-GVGKISKD.js +170 -0
- package/dist/chunk-GVGKISKD.js.map +1 -0
- package/dist/{chunk-BJSWQQSC.mjs → chunk-I4TGI6U3.mjs} +3 -45
- package/dist/chunk-I4TGI6U3.mjs.map +1 -0
- package/dist/chunk-I55QC57T.js +47 -0
- package/dist/chunk-I55QC57T.js.map +1 -0
- package/dist/chunk-I5TREZO5.js +263 -0
- package/dist/chunk-I5TREZO5.js.map +1 -0
- package/dist/chunk-IPUQBMAB.mjs +205 -0
- package/dist/chunk-IPUQBMAB.mjs.map +1 -0
- package/dist/chunk-IQ6QVIZ3.mjs +69 -0
- package/dist/chunk-IQ6QVIZ3.mjs.map +1 -0
- package/dist/chunk-ISXAUMRW.js +63 -0
- package/dist/chunk-ISXAUMRW.js.map +1 -0
- package/dist/{chunk-3J3FYIG3.js → chunk-IULYVARJ.mjs} +35 -132
- package/dist/chunk-IULYVARJ.mjs.map +1 -0
- package/dist/{chunk-DEZRB6DS.mjs → chunk-IZAQBJKT.mjs} +46 -4
- package/dist/chunk-IZAQBJKT.mjs.map +1 -0
- package/dist/chunk-J5LGTIGS.mjs +9 -0
- package/dist/chunk-J5LGTIGS.mjs.map +1 -0
- package/dist/chunk-J6XKTPP5.js +61 -0
- package/dist/chunk-J6XKTPP5.js.map +1 -0
- package/dist/chunk-JF4BRFOG.mjs +54 -0
- package/dist/chunk-JF4BRFOG.mjs.map +1 -0
- package/dist/{chunk-3F4FF2H4.mjs → chunk-JI3IEKH6.mjs} +24 -205
- package/dist/chunk-JI3IEKH6.mjs.map +1 -0
- package/dist/chunk-JTMRSRYD.js +63 -0
- package/dist/chunk-JTMRSRYD.js.map +1 -0
- package/dist/chunk-KEGOUZL5.js +209 -0
- package/dist/chunk-KEGOUZL5.js.map +1 -0
- package/dist/{chunk-TTTYW3TR.js → chunk-KXNMW4NV.mjs} +24 -170
- package/dist/chunk-KXNMW4NV.mjs.map +1 -0
- package/dist/chunk-L4PDJ6IB.mjs +17 -0
- package/dist/chunk-L4PDJ6IB.mjs.map +1 -0
- package/dist/chunk-L67EJJFN.js +82 -0
- package/dist/chunk-L67EJJFN.js.map +1 -0
- package/dist/{chunk-UY65KX3M.js → chunk-L6AS5AVO.js} +53 -263
- package/dist/chunk-L6AS5AVO.js.map +1 -0
- package/dist/chunk-L6PSW7JE.mjs +206 -0
- package/dist/chunk-L6PSW7JE.mjs.map +1 -0
- package/dist/{chunk-NNZXBL7R.mjs → chunk-LL2UY6CD.mjs} +25 -223
- package/dist/chunk-LL2UY6CD.mjs.map +1 -0
- package/dist/chunk-LLNK24MM.js +67 -0
- package/dist/chunk-LLNK24MM.js.map +1 -0
- package/dist/{chunk-OKCC7E36.js → chunk-LQPKZ5ZD.js} +6 -6
- package/dist/{chunk-OKCC7E36.js.map → chunk-LQPKZ5ZD.js.map} +1 -1
- package/dist/{chunk-HNLQXHSQ.mjs → chunk-LU6VEI4B.js} +34 -205
- package/dist/chunk-LU6VEI4B.js.map +1 -0
- package/dist/chunk-MCYFKM7T.js +62 -0
- package/dist/chunk-MCYFKM7T.js.map +1 -0
- package/dist/chunk-MUKI3OHH.js +215 -0
- package/dist/chunk-MUKI3OHH.js.map +1 -0
- package/dist/chunk-N2RUT33F.mjs +68 -0
- package/dist/chunk-N2RUT33F.mjs.map +1 -0
- package/dist/chunk-NAHHFB2M.js +77 -0
- package/dist/chunk-NAHHFB2M.js.map +1 -0
- package/dist/chunk-NMBSK44H.mjs +44 -0
- package/dist/chunk-NMBSK44H.mjs.map +1 -0
- package/dist/chunk-NVTV3EQB.js +49 -0
- package/dist/chunk-NVTV3EQB.js.map +1 -0
- package/dist/{chunk-NSJ6KGW2.js → chunk-NWMSIYZP.js} +16 -58
- package/dist/chunk-NWMSIYZP.js.map +1 -0
- package/dist/chunk-NXNL64Q7.mjs +112 -0
- package/dist/chunk-NXNL64Q7.mjs.map +1 -0
- package/dist/chunk-O23PJPGM.mjs +251 -0
- package/dist/chunk-O23PJPGM.mjs.map +1 -0
- package/dist/chunk-O6R6OQXI.mjs +204 -0
- package/dist/chunk-O6R6OQXI.mjs.map +1 -0
- package/dist/chunk-ODT5TFIT.mjs +156 -0
- package/dist/chunk-ODT5TFIT.mjs.map +1 -0
- package/dist/{chunk-ECLHBSC6.mjs → chunk-OGMIKRLJ.js} +30 -99
- package/dist/chunk-OGMIKRLJ.js.map +1 -0
- package/dist/chunk-OOBA2MDD.mjs +57 -0
- package/dist/chunk-OOBA2MDD.mjs.map +1 -0
- package/dist/chunk-OPACTZGV.js +231 -0
- package/dist/chunk-OPACTZGV.js.map +1 -0
- package/dist/{chunk-C6NA452Q.mjs → chunk-OPUO55TO.mjs} +3 -3
- package/dist/{chunk-C6NA452Q.mjs.map → chunk-OPUO55TO.mjs.map} +1 -1
- package/dist/{chunk-SSJXWD2M.mjs → chunk-OQCI2IVL.mjs} +47 -260
- package/dist/chunk-OQCI2IVL.mjs.map +1 -0
- package/dist/{chunk-2ZKW2E7B.mjs → chunk-P25NI2HG.js} +41 -126
- package/dist/chunk-P25NI2HG.js.map +1 -0
- package/dist/chunk-P2DQP4J4.js +424 -0
- package/dist/chunk-P2DQP4J4.js.map +1 -0
- package/dist/{chunk-XYEMP4K7.js → chunk-P43A2BPU.mjs} +25 -216
- package/dist/chunk-P43A2BPU.mjs.map +1 -0
- package/dist/chunk-P54PZ72L.mjs +65 -0
- package/dist/chunk-P54PZ72L.mjs.map +1 -0
- package/dist/chunk-PAJYNQR3.mjs +150 -0
- package/dist/chunk-PAJYNQR3.mjs.map +1 -0
- package/dist/chunk-PKXDRTC7.js +264 -0
- package/dist/chunk-PKXDRTC7.js.map +1 -0
- package/dist/chunk-PNAFXOZC.mjs +69 -0
- package/dist/chunk-PNAFXOZC.mjs.map +1 -0
- package/dist/chunk-PUSCPBT2.mjs +46 -0
- package/dist/chunk-PUSCPBT2.mjs.map +1 -0
- package/dist/chunk-PZ5AY32C.js +11 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/{chunk-NMQAHUYA.mjs → chunk-Q2NE2UAO.mjs} +3 -33
- package/dist/chunk-Q2NE2UAO.mjs.map +1 -0
- package/dist/chunk-QDHARZDN.js +129 -0
- package/dist/chunk-QDHARZDN.js.map +1 -0
- package/dist/chunk-QIUVXTLE.mjs +60 -0
- package/dist/chunk-QIUVXTLE.mjs.map +1 -0
- package/dist/chunk-QKZR2UTL.mjs +125 -0
- package/dist/chunk-QKZR2UTL.mjs.map +1 -0
- package/dist/{chunk-EZCYSFML.mjs → chunk-QTFOUK4H.js} +36 -149
- package/dist/chunk-QTFOUK4H.js.map +1 -0
- package/dist/chunk-QW2ZHKPC.mjs +64 -0
- package/dist/chunk-QW2ZHKPC.mjs.map +1 -0
- package/dist/chunk-R2256VSD.js +80 -0
- package/dist/chunk-R2256VSD.js.map +1 -0
- package/dist/chunk-RYJ5WEE3.js +101 -0
- package/dist/chunk-RYJ5WEE3.js.map +1 -0
- package/dist/{chunk-UROKWFPX.mjs → chunk-S4OSJ4ZN.js} +30 -155
- package/dist/chunk-S4OSJ4ZN.js.map +1 -0
- package/dist/{chunk-X3O45MPI.js → chunk-SWU5U5BB.mjs} +45 -217
- package/dist/chunk-SWU5U5BB.mjs.map +1 -0
- package/dist/chunk-SYFTQAZG.mjs +58 -0
- package/dist/chunk-SYFTQAZG.mjs.map +1 -0
- package/dist/{chunk-DFCDLVZA.js → chunk-T5SPR27V.mjs} +24 -166
- package/dist/chunk-T5SPR27V.mjs.map +1 -0
- package/dist/{chunk-IM6KN77X.mjs → chunk-TD4W3AHI.mjs} +47 -253
- package/dist/chunk-TD4W3AHI.mjs.map +1 -0
- package/dist/chunk-TMFXI5FH.mjs +52 -0
- package/dist/chunk-TMFXI5FH.mjs.map +1 -0
- package/dist/{chunk-2F7P4EJQ.js → chunk-UJBXDDHN.mjs} +26 -103
- package/dist/chunk-UJBXDDHN.mjs.map +1 -0
- package/dist/chunk-USLP5NY6.js +69 -0
- package/dist/chunk-USLP5NY6.js.map +1 -0
- package/dist/{chunk-R2JJTREQ.mjs → chunk-UU34Q42Q.js} +28 -202
- package/dist/chunk-UU34Q42Q.js.map +1 -0
- package/dist/chunk-V4FFKIX3.js +166 -0
- package/dist/chunk-V4FFKIX3.js.map +1 -0
- package/dist/{chunk-5565GZ4T.js → chunk-V4U6Q5NL.mjs} +25 -205
- package/dist/chunk-V4U6Q5NL.mjs.map +1 -0
- package/dist/chunk-VIKQGO4W.mjs +636 -0
- package/dist/chunk-VIKQGO4W.mjs.map +1 -0
- package/dist/chunk-VUIWYURS.js +162 -0
- package/dist/chunk-VUIWYURS.js.map +1 -0
- package/dist/chunk-VWHER5XN.js +65 -0
- package/dist/chunk-VWHER5XN.js.map +1 -0
- package/dist/chunk-WBRTXAKP.js +705 -0
- package/dist/chunk-WBRTXAKP.js.map +1 -0
- package/dist/chunk-WN7XWKAS.mjs +52 -0
- package/dist/chunk-WN7XWKAS.mjs.map +1 -0
- package/dist/chunk-X3N4EVF7.mjs +240 -0
- package/dist/chunk-X3N4EVF7.mjs.map +1 -0
- package/dist/chunk-XPHD3X4L.mjs +98 -0
- package/dist/chunk-XPHD3X4L.mjs.map +1 -0
- package/dist/chunk-Y4YQSCNL.js +65 -0
- package/dist/chunk-Y4YQSCNL.js.map +1 -0
- package/dist/chunk-Y73U7C4T.js +238 -0
- package/dist/chunk-Y73U7C4T.js.map +1 -0
- package/dist/{chunk-EIRCCTNA.js → chunk-Y7NRTCAT.js} +31 -128
- package/dist/chunk-Y7NRTCAT.js.map +1 -0
- package/dist/chunk-YDKAE7RM.mjs +62 -0
- package/dist/chunk-YDKAE7RM.mjs.map +1 -0
- package/dist/{chunk-INXWZ4DS.js → chunk-YN4ZS3R2.js} +53 -271
- package/dist/chunk-YN4ZS3R2.js.map +1 -0
- package/dist/chunk-ZCTSXNAE.mjs +221 -0
- package/dist/chunk-ZCTSXNAE.mjs.map +1 -0
- package/dist/chunk-ZFNVFMWG.mjs +703 -0
- package/dist/chunk-ZFNVFMWG.mjs.map +1 -0
- package/dist/{chunk-R5LL56ZO.js → chunk-ZHXYGUMA.js} +2 -2
- package/dist/{chunk-R5LL56ZO.js.map → chunk-ZHXYGUMA.js.map} +1 -1
- package/dist/chunk-ZITS2V53.js +130 -0
- package/dist/chunk-ZITS2V53.js.map +1 -0
- package/dist/chunk-ZY6O6Z2I.mjs +350 -0
- package/dist/chunk-ZY6O6Z2I.mjs.map +1 -0
- package/dist/design-system/accordion.d.ts +42 -0
- package/dist/design-system/accordion.d.ts.map +1 -1
- package/dist/design-system/alert.d.ts +21 -0
- package/dist/design-system/alert.d.ts.map +1 -1
- package/dist/design-system/animated-number.d.ts +21 -0
- package/dist/design-system/animated-number.d.ts.map +1 -1
- package/dist/design-system/avatar.d.ts +21 -0
- package/dist/design-system/avatar.d.ts.map +1 -1
- package/dist/design-system/badge.d.ts +42 -0
- package/dist/design-system/badge.d.ts.map +1 -1
- package/dist/design-system/breadcrumb.d.ts +21 -0
- package/dist/design-system/breadcrumb.d.ts.map +1 -1
- package/dist/design-system/button.d.ts +22 -1
- package/dist/design-system/button.d.ts.map +1 -1
- package/dist/design-system/card.d.ts +21 -0
- package/dist/design-system/card.d.ts.map +1 -1
- package/dist/design-system/checkbox.d.ts +22 -1
- package/dist/design-system/checkbox.d.ts.map +1 -1
- package/dist/design-system/command.d.ts +21 -0
- package/dist/design-system/command.d.ts.map +1 -1
- package/dist/design-system/context-menu.d.ts +21 -0
- package/dist/design-system/context-menu.d.ts.map +1 -1
- package/dist/design-system/copy-button.d.ts +22 -1
- package/dist/design-system/copy-button.d.ts.map +1 -1
- package/dist/design-system/divider.d.ts +21 -0
- package/dist/design-system/divider.d.ts.map +1 -1
- package/dist/design-system/drawer.d.ts +42 -0
- package/dist/design-system/drawer.d.ts.map +1 -1
- package/dist/design-system/dropdown.d.ts +42 -0
- package/dist/design-system/dropdown.d.ts.map +1 -1
- package/dist/design-system/dynamic-stepper.d.ts +98 -5
- package/dist/design-system/dynamic-stepper.d.ts.map +1 -1
- package/dist/design-system/empty-state.d.ts +21 -0
- package/dist/design-system/empty-state.d.ts.map +1 -1
- package/dist/design-system/facade.js +403 -0
- package/dist/design-system/facade.js.map +1 -0
- package/dist/design-system/facade.mjs +401 -0
- package/dist/design-system/facade.mjs.map +1 -0
- package/dist/design-system/file-upload.d.ts +21 -0
- package/dist/design-system/file-upload.d.ts.map +1 -1
- package/dist/design-system/index.d.ts +0 -1
- package/dist/design-system/index.d.ts.map +1 -1
- package/dist/design-system/inputs.d.ts +108 -0
- package/dist/design-system/inputs.d.ts.map +1 -1
- package/dist/design-system/kbd.d.ts +22 -1
- package/dist/design-system/kbd.d.ts.map +1 -1
- package/dist/design-system/marquee.d.ts +21 -0
- package/dist/design-system/marquee.d.ts.map +1 -1
- package/dist/design-system/modal.d.ts +42 -0
- package/dist/design-system/modal.d.ts.map +1 -1
- package/dist/design-system/otp-input.d.ts +21 -0
- package/dist/design-system/otp-input.d.ts.map +1 -1
- package/dist/design-system/pagination.d.ts +21 -0
- package/dist/design-system/pagination.d.ts.map +1 -1
- package/dist/design-system/popover.d.ts +20 -0
- package/dist/design-system/popover.d.ts.map +1 -1
- package/dist/design-system/progress.d.ts +21 -0
- package/dist/design-system/progress.d.ts.map +1 -1
- package/dist/design-system/radio-group.d.ts +21 -0
- package/dist/design-system/radio-group.d.ts.map +1 -1
- package/dist/design-system/rating.d.ts +21 -0
- package/dist/design-system/rating.d.ts.map +1 -1
- package/dist/design-system/scroll-area.d.ts +21 -0
- package/dist/design-system/scroll-area.d.ts.map +1 -1
- package/dist/design-system/select.d.ts +63 -0
- package/dist/design-system/select.d.ts.map +1 -1
- package/dist/design-system/skeleton.d.ts +63 -0
- package/dist/design-system/skeleton.d.ts.map +1 -1
- package/dist/design-system/slider.d.ts +22 -1
- package/dist/design-system/slider.d.ts.map +1 -1
- package/dist/design-system/spinner.d.ts +21 -0
- package/dist/design-system/spinner.d.ts.map +1 -1
- package/dist/design-system/table.d.ts +63 -0
- package/dist/design-system/table.d.ts.map +1 -1
- package/dist/design-system/tabs.d.ts +21 -0
- package/dist/design-system/tabs.d.ts.map +1 -1
- package/dist/design-system/timeline.d.ts +21 -0
- package/dist/design-system/timeline.d.ts.map +1 -1
- package/dist/design-system/toast.d.ts +21 -0
- package/dist/design-system/toast.d.ts.map +1 -1
- package/dist/design-system/toggle.d.ts +30 -0
- package/dist/design-system/toggle.d.ts.map +1 -1
- package/dist/design-system/tokens.js +1 -0
- package/dist/design-system/tokens.mjs +1 -0
- package/dist/design-system/tooltip.d.ts +20 -0
- package/dist/design-system/tooltip.d.ts.map +1 -1
- package/dist/design-system/tree-view.d.ts +42 -0
- package/dist/design-system/tree-view.d.ts.map +1 -1
- package/dist/design-system/typography.d.ts +1 -1
- package/dist/hooks/useBodyScrollLock.js +1 -0
- package/dist/hooks/useBodyScrollLock.mjs +1 -0
- package/dist/hooks/useClickOutside.js +1 -0
- package/dist/hooks/useClickOutside.mjs +1 -0
- package/dist/hooks/useClipboard.js +1 -0
- package/dist/hooks/useClipboard.mjs +1 -0
- package/dist/hooks/useControllableState.js +1 -0
- package/dist/hooks/useControllableState.mjs +1 -0
- package/dist/hooks/useDebouncedValue.js +1 -1
- package/dist/hooks/useDebouncedValue.mjs +1 -1
- package/dist/hooks/useDisclosure.js +1 -0
- package/dist/hooks/useDisclosure.js.map +1 -1
- package/dist/hooks/useDisclosure.mjs +1 -0
- package/dist/hooks/useDisclosure.mjs.map +1 -1
- package/dist/hooks/useDocumentTitle.js +1 -1
- package/dist/hooks/useDocumentTitle.mjs +1 -1
- package/dist/hooks/useDynamicStepper.js +1 -0
- package/dist/hooks/useDynamicStepper.mjs +1 -0
- package/dist/hooks/useFocusManagement.js +1 -0
- package/dist/hooks/useFocusManagement.mjs +1 -0
- package/dist/hooks/useHover.js +1 -1
- package/dist/hooks/useHover.mjs +1 -1
- package/dist/hooks/useInView.js +1 -0
- package/dist/hooks/useInView.js.map +1 -1
- package/dist/hooks/useInView.mjs +1 -0
- package/dist/hooks/useInView.mjs.map +1 -1
- package/dist/hooks/useIntersectionObserver.js +1 -0
- package/dist/hooks/useIntersectionObserver.mjs +1 -0
- package/dist/hooks/useIsMounted.js +1 -1
- package/dist/hooks/useIsMounted.mjs +1 -1
- package/dist/hooks/useIsomorphicLayoutEffect.js +1 -0
- package/dist/hooks/useIsomorphicLayoutEffect.mjs +1 -0
- package/dist/hooks/useLocalStorage.js +1 -1
- package/dist/hooks/useLocalStorage.mjs +1 -1
- package/dist/hooks/useMediaQuery.js +1 -0
- package/dist/hooks/useMediaQuery.mjs +1 -0
- package/dist/hooks/useNetworkStatus.js +1 -1
- package/dist/hooks/useNetworkStatus.mjs +1 -1
- package/dist/hooks/usePageVisibility.js +1 -1
- package/dist/hooks/usePageVisibility.mjs +1 -1
- package/dist/hooks/usePagination.js +1 -0
- package/dist/hooks/usePagination.mjs +1 -0
- package/dist/hooks/usePrefersColorScheme.js +1 -0
- package/dist/hooks/usePrefersColorScheme.js.map +1 -1
- package/dist/hooks/usePrefersColorScheme.mjs +1 -0
- package/dist/hooks/usePrefersColorScheme.mjs.map +1 -1
- package/dist/hooks/usePrefersReducedMotion.js +1 -0
- package/dist/hooks/usePrefersReducedMotion.js.map +1 -1
- package/dist/hooks/usePrefersReducedMotion.mjs +1 -0
- package/dist/hooks/usePrefersReducedMotion.mjs.map +1 -1
- package/dist/hooks/useResizeObserver.js +1 -0
- package/dist/hooks/useResizeObserver.mjs +1 -0
- package/dist/hooks/useSessionStorage.js +1 -1
- package/dist/hooks/useSessionStorage.mjs +1 -1
- package/dist/hooks/useTableFilter.js +1 -1
- package/dist/hooks/useTableFilter.mjs +1 -1
- package/dist/hooks/useTableSort.js +1 -1
- package/dist/hooks/useTableSort.mjs +1 -1
- package/dist/hooks/useThrottledCallback.js +1 -1
- package/dist/hooks/useThrottledCallback.mjs +1 -1
- package/dist/hooks/useToggle.js +1 -1
- package/dist/hooks/useToggle.mjs +1 -1
- package/dist/hooks/useWindowSize.js +1 -1
- package/dist/hooks/useWindowSize.mjs +1 -1
- package/dist/hooks/utils.js +1 -0
- package/dist/hooks/utils.mjs +1 -0
- package/dist/lib/facade.d.ts +53 -0
- package/dist/lib/facade.d.ts.map +1 -0
- package/dist/ui/accordion/animated.js +9 -7
- package/dist/ui/accordion/animated.js.map +1 -1
- package/dist/ui/accordion/animated.mjs +4 -2
- package/dist/ui/accordion/animated.mjs.map +1 -1
- package/dist/ui/accordion/variants.d.ts +2 -2
- package/dist/ui/accordion.js +11 -9
- package/dist/ui/accordion.js.map +1 -1
- package/dist/ui/accordion.mjs +4 -2
- package/dist/ui/accordion.mjs.map +1 -1
- package/dist/ui/alert/animated.js +4 -2
- package/dist/ui/alert/animated.js.map +1 -1
- package/dist/ui/alert/animated.mjs +3 -1
- package/dist/ui/alert/animated.mjs.map +1 -1
- package/dist/ui/alert/variants.d.ts +1 -1
- package/dist/ui/alert.js +12 -10
- package/dist/ui/alert.js.map +1 -1
- package/dist/ui/alert.mjs +4 -2
- package/dist/ui/alert.mjs.map +1 -1
- package/dist/ui/animated-number/variants.d.ts +1 -1
- package/dist/ui/animated-number.js +5 -37
- package/dist/ui/animated-number.js.map +1 -1
- package/dist/ui/animated-number.mjs +2 -34
- package/dist/ui/animated-number.mjs.map +1 -1
- package/dist/ui/avatar/animated.js +7 -5
- package/dist/ui/avatar/animated.js.map +1 -1
- package/dist/ui/avatar/animated.mjs +4 -2
- package/dist/ui/avatar/animated.mjs.map +1 -1
- package/dist/ui/avatar/variants.d.ts +1 -1
- package/dist/ui/avatar.js +11 -9
- package/dist/ui/avatar.js.map +1 -1
- package/dist/ui/avatar.mjs +4 -2
- package/dist/ui/avatar.mjs.map +1 -1
- package/dist/ui/badge/animated.js +4 -2
- package/dist/ui/badge/animated.js.map +1 -1
- package/dist/ui/badge/animated.mjs +3 -1
- package/dist/ui/badge/animated.mjs.map +1 -1
- package/dist/ui/badge/variants.d.ts +22 -1
- package/dist/ui/badge/variants.d.ts.map +1 -1
- package/dist/ui/badge.js +6 -4
- package/dist/ui/badge.js.map +1 -1
- package/dist/ui/badge.mjs +4 -2
- package/dist/ui/badge.mjs.map +1 -1
- package/dist/ui/breadcrumb/variants.d.ts +1 -1
- package/dist/ui/breadcrumb.js +10 -37
- package/dist/ui/breadcrumb.js.map +1 -1
- package/dist/ui/breadcrumb.mjs +2 -29
- package/dist/ui/breadcrumb.mjs.map +1 -1
- package/dist/ui/buttons/animated.js +43 -3
- package/dist/ui/buttons/animated.js.map +1 -1
- package/dist/ui/buttons/animated.mjs +41 -1
- package/dist/ui/buttons/animated.mjs.map +1 -1
- package/dist/ui/buttons/variants.d.ts +1 -1
- package/dist/ui/buttons.js +44 -4
- package/dist/ui/buttons.mjs +42 -2
- package/dist/ui/card/animated.js +9 -7
- package/dist/ui/card/animated.js.map +1 -1
- package/dist/ui/card/animated.mjs +4 -2
- package/dist/ui/card/animated.mjs.map +1 -1
- package/dist/ui/card/variants.d.ts +1 -1
- package/dist/ui/card.js +14 -12
- package/dist/ui/card.js.map +1 -1
- package/dist/ui/card.mjs +4 -2
- package/dist/ui/card.mjs.map +1 -1
- package/dist/ui/checkbox/animated.js +6 -4
- package/dist/ui/checkbox/animated.js.map +1 -1
- package/dist/ui/checkbox/animated.mjs +3 -1
- package/dist/ui/checkbox/animated.mjs.map +1 -1
- package/dist/ui/checkbox/variants.d.ts +1 -1
- package/dist/ui/checkbox.js +10 -8
- package/dist/ui/checkbox.js.map +1 -1
- package/dist/ui/checkbox.mjs +4 -2
- package/dist/ui/checkbox.mjs.map +1 -1
- package/dist/ui/command/animated.js +4 -2
- package/dist/ui/command/animated.js.map +1 -1
- package/dist/ui/command/animated.mjs +3 -1
- package/dist/ui/command/animated.mjs.map +1 -1
- package/dist/ui/command/variants.d.ts +1 -1
- package/dist/ui/command.js +17 -15
- package/dist/ui/command.js.map +1 -1
- package/dist/ui/command.mjs +4 -2
- package/dist/ui/command.mjs.map +1 -1
- package/dist/ui/context-menu/variants.d.ts +1 -1
- package/dist/ui/context-menu.js +9 -38
- package/dist/ui/context-menu.js.map +1 -1
- package/dist/ui/context-menu.mjs +3 -32
- package/dist/ui/context-menu.mjs.map +1 -1
- package/dist/ui/copy-button/animated.js +4 -2
- package/dist/ui/copy-button/animated.js.map +1 -1
- package/dist/ui/copy-button/animated.mjs +3 -1
- package/dist/ui/copy-button/animated.mjs.map +1 -1
- package/dist/ui/copy-button/variants.d.ts +1 -1
- package/dist/ui/copy-button.js +5 -3
- package/dist/ui/copy-button.js.map +1 -1
- package/dist/ui/copy-button.mjs +4 -2
- package/dist/ui/copy-button.mjs.map +1 -1
- package/dist/ui/divider/animated.js +4 -2
- package/dist/ui/divider/animated.js.map +1 -1
- package/dist/ui/divider/animated.mjs +3 -1
- package/dist/ui/divider/animated.mjs.map +1 -1
- package/dist/ui/divider/variants.d.ts +2 -2
- package/dist/ui/divider.js +8 -6
- package/dist/ui/divider.js.map +1 -1
- package/dist/ui/divider.mjs +4 -2
- package/dist/ui/divider.mjs.map +1 -1
- package/dist/ui/drawer/animated.js +13 -11
- package/dist/ui/drawer/animated.js.map +1 -1
- package/dist/ui/drawer/animated.mjs +4 -2
- package/dist/ui/drawer/animated.mjs.map +1 -1
- package/dist/ui/drawer/variants.d.ts +2 -2
- package/dist/ui/drawer.js +13 -11
- package/dist/ui/drawer.mjs +3 -1
- package/dist/ui/dropdown/types.d.ts +2 -1
- package/dist/ui/dropdown/types.d.ts.map +1 -1
- package/dist/ui/dropdown/variants.d.ts +2 -2
- package/dist/ui/dropdown.js +10 -9
- package/dist/ui/dropdown.js.map +1 -1
- package/dist/ui/dropdown.mjs +2 -1
- package/dist/ui/dropdown.mjs.map +1 -1
- package/dist/ui/dynamic-stepper/variants.d.ts +1 -1
- package/dist/ui/dynamic-stepper/variants.d.ts.map +1 -1
- package/dist/ui/dynamic-stepper.js +53 -132
- package/dist/ui/dynamic-stepper.js.map +1 -1
- package/dist/ui/dynamic-stepper.mjs +42 -121
- package/dist/ui/dynamic-stepper.mjs.map +1 -1
- package/dist/ui/empty-state/animated.js +4 -2
- package/dist/ui/empty-state/animated.js.map +1 -1
- package/dist/ui/empty-state/animated.mjs +3 -1
- package/dist/ui/empty-state/animated.mjs.map +1 -1
- package/dist/ui/empty-state/variants.d.ts +1 -1
- package/dist/ui/empty-state.js +12 -10
- package/dist/ui/empty-state.js.map +1 -1
- package/dist/ui/empty-state.mjs +4 -2
- package/dist/ui/empty-state.mjs.map +1 -1
- package/dist/ui/file-upload/variants.d.ts +1 -1
- package/dist/ui/file-upload.js +4 -23
- package/dist/ui/file-upload.js.map +1 -1
- package/dist/ui/file-upload.mjs +2 -21
- package/dist/ui/file-upload.mjs.map +1 -1
- package/dist/ui/inputs/animated.js +5 -3
- package/dist/ui/inputs/animated.js.map +1 -1
- package/dist/ui/inputs/animated.mjs +3 -1
- package/dist/ui/inputs/animated.mjs.map +1 -1
- package/dist/ui/inputs/variants.d.ts +1 -1
- package/dist/ui/inputs/variants.d.ts.map +1 -1
- package/dist/ui/inputs.js +6 -4
- package/dist/ui/inputs.js.map +1 -1
- package/dist/ui/inputs.mjs +4 -2
- package/dist/ui/inputs.mjs.map +1 -1
- package/dist/ui/kbd/animated.js +4 -2
- package/dist/ui/kbd/animated.js.map +1 -1
- package/dist/ui/kbd/animated.mjs +3 -1
- package/dist/ui/kbd/animated.mjs.map +1 -1
- package/dist/ui/kbd/variants.d.ts +1 -1
- package/dist/ui/kbd.js +6 -4
- package/dist/ui/kbd.js.map +1 -1
- package/dist/ui/kbd.mjs +4 -2
- package/dist/ui/kbd.mjs.map +1 -1
- package/dist/ui/marquee/variants.d.ts +1 -1
- package/dist/ui/marquee.js +7 -47
- package/dist/ui/marquee.js.map +1 -1
- package/dist/ui/marquee.mjs +2 -42
- package/dist/ui/marquee.mjs.map +1 -1
- package/dist/ui/modal/animated.js +6 -4
- package/dist/ui/modal/animated.js.map +1 -1
- package/dist/ui/modal/animated.mjs +3 -1
- package/dist/ui/modal/animated.mjs.map +1 -1
- package/dist/ui/modal/variants.d.ts +2 -2
- package/dist/ui/modal.js +14 -12
- package/dist/ui/modal.js.map +1 -1
- package/dist/ui/modal.mjs +4 -2
- package/dist/ui/modal.mjs.map +1 -1
- package/dist/ui/otp-input/variants.d.ts +1 -1
- package/dist/ui/otp-input.js +11 -36
- package/dist/ui/otp-input.js.map +1 -1
- package/dist/ui/otp-input.mjs +2 -27
- package/dist/ui/otp-input.mjs.map +1 -1
- package/dist/ui/pagination/types.d.ts +4 -2
- package/dist/ui/pagination/types.d.ts.map +1 -1
- package/dist/ui/pagination/variants.d.ts +1 -1
- package/dist/ui/pagination.js +49 -74
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pagination.mjs +41 -66
- package/dist/ui/pagination.mjs.map +1 -1
- package/dist/ui/popover/animated.js +6 -4
- package/dist/ui/popover/animated.js.map +1 -1
- package/dist/ui/popover/animated.mjs +3 -1
- package/dist/ui/popover/animated.mjs.map +1 -1
- package/dist/ui/popover/variants.d.ts +1 -1
- package/dist/ui/popover.js +9 -7
- package/dist/ui/popover.mjs +3 -1
- package/dist/ui/progress/animated.js +10 -8
- package/dist/ui/progress/animated.js.map +1 -1
- package/dist/ui/progress/animated.mjs +4 -2
- package/dist/ui/progress/animated.mjs.map +1 -1
- package/dist/ui/progress/variants.d.ts +3 -3
- package/dist/ui/progress.js +11 -9
- package/dist/ui/progress.js.map +1 -1
- package/dist/ui/progress.mjs +4 -2
- package/dist/ui/progress.mjs.map +1 -1
- package/dist/ui/radio-group/animated.js +9 -7
- package/dist/ui/radio-group/animated.js.map +1 -1
- package/dist/ui/radio-group/animated.mjs +3 -1
- package/dist/ui/radio-group/animated.mjs.map +1 -1
- package/dist/ui/radio-group/variants.d.ts +1 -1
- package/dist/ui/radio-group.js +13 -11
- package/dist/ui/radio-group.js.map +1 -1
- package/dist/ui/radio-group.mjs +4 -2
- package/dist/ui/radio-group.mjs.map +1 -1
- package/dist/ui/rating/variants.d.ts +1 -1
- package/dist/ui/rating.js +12 -53
- package/dist/ui/rating.js.map +1 -1
- package/dist/ui/rating.mjs +2 -43
- package/dist/ui/rating.mjs.map +1 -1
- package/dist/ui/scroll-area/variants.d.ts +1 -1
- package/dist/ui/scroll-area.js +8 -41
- package/dist/ui/scroll-area.js.map +1 -1
- package/dist/ui/scroll-area.mjs +2 -35
- package/dist/ui/scroll-area.mjs.map +1 -1
- package/dist/ui/search.js +4 -2
- package/dist/ui/search.js.map +1 -1
- package/dist/ui/search.mjs +3 -1
- package/dist/ui/search.mjs.map +1 -1
- package/dist/ui/select/types.d.ts +2 -1
- package/dist/ui/select/types.d.ts.map +1 -1
- package/dist/ui/select/variants.d.ts +3 -3
- package/dist/ui/select.js +12 -104
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/select.mjs +2 -94
- package/dist/ui/select.mjs.map +1 -1
- package/dist/ui/skeleton/animated.js +10 -8
- package/dist/ui/skeleton/animated.js.map +1 -1
- package/dist/ui/skeleton/animated.mjs +3 -1
- package/dist/ui/skeleton/animated.mjs.map +1 -1
- package/dist/ui/skeleton/variants.d.ts +23 -2
- package/dist/ui/skeleton/variants.d.ts.map +1 -1
- package/dist/ui/skeleton.js +11 -9
- package/dist/ui/skeleton.mjs +3 -1
- package/dist/ui/slider/variants.d.ts +1 -1
- package/dist/ui/slider.js +10 -54
- package/dist/ui/slider.js.map +1 -1
- package/dist/ui/slider.mjs +2 -46
- package/dist/ui/slider.mjs.map +1 -1
- package/dist/ui/spinner/animated/variants.d.ts +1 -1
- package/dist/ui/spinner/animated.js +6 -45
- package/dist/ui/spinner/animated.js.map +1 -1
- package/dist/ui/spinner/animated.mjs +2 -41
- package/dist/ui/spinner/animated.mjs.map +1 -1
- package/dist/ui/table/animated.js +10 -8
- package/dist/ui/table/animated.js.map +1 -1
- package/dist/ui/table/animated.mjs +4 -2
- package/dist/ui/table/animated.mjs.map +1 -1
- package/dist/ui/table/variants.d.ts +3 -3
- package/dist/ui/table.js +16 -14
- package/dist/ui/table.mjs +3 -1
- package/dist/ui/tabs/animated.js +4 -2
- package/dist/ui/tabs/animated.js.map +1 -1
- package/dist/ui/tabs/animated.mjs +3 -1
- package/dist/ui/tabs/animated.mjs.map +1 -1
- package/dist/ui/tabs/types.d.ts +4 -2
- package/dist/ui/tabs/types.d.ts.map +1 -1
- package/dist/ui/tabs/variants.d.ts +1 -1
- package/dist/ui/tabs.js +11 -9
- package/dist/ui/tabs.mjs +3 -1
- package/dist/ui/timeline/animated.js +13 -11
- package/dist/ui/timeline/animated.js.map +1 -1
- package/dist/ui/timeline/animated.mjs +4 -2
- package/dist/ui/timeline/animated.mjs.map +1 -1
- package/dist/ui/timeline/variants.d.ts +1 -1
- package/dist/ui/timeline.js +16 -14
- package/dist/ui/timeline.js.map +1 -1
- package/dist/ui/timeline.mjs +4 -2
- package/dist/ui/timeline.mjs.map +1 -1
- package/dist/ui/toast/animated.js +9 -7
- package/dist/ui/toast/animated.js.map +1 -1
- package/dist/ui/toast/animated.mjs +3 -1
- package/dist/ui/toast/animated.mjs.map +1 -1
- package/dist/ui/toast/variants.d.ts +1 -1
- package/dist/ui/toast.js +14 -12
- package/dist/ui/toast.mjs +3 -1
- package/dist/ui/toggle/animated.js +6 -4
- package/dist/ui/toggle/animated.js.map +1 -1
- package/dist/ui/toggle/animated.mjs +3 -1
- package/dist/ui/toggle/animated.mjs.map +1 -1
- package/dist/ui/toggle/variants.d.ts +2 -2
- package/dist/ui/toggle.js +6 -4
- package/dist/ui/toggle.js.map +1 -1
- package/dist/ui/toggle.mjs +4 -2
- package/dist/ui/toggle.mjs.map +1 -1
- package/dist/ui/tooltip/animated.js +5 -3
- package/dist/ui/tooltip/animated.js.map +1 -1
- package/dist/ui/tooltip/animated.mjs +3 -1
- package/dist/ui/tooltip/animated.mjs.map +1 -1
- package/dist/ui/tooltip/types.d.ts +3 -1
- package/dist/ui/tooltip/types.d.ts.map +1 -1
- package/dist/ui/tooltip/variants.d.ts +1 -1
- package/dist/ui/tooltip.js +9 -7
- package/dist/ui/tooltip.mjs +3 -1
- package/dist/ui/tree-view/animated.js +4 -2
- package/dist/ui/tree-view/animated.js.map +1 -1
- package/dist/ui/tree-view/animated.mjs +3 -1
- package/dist/ui/tree-view/animated.mjs.map +1 -1
- package/dist/ui/tree-view/variants.d.ts +2 -2
- package/dist/ui/tree-view.js +7 -5
- package/dist/ui/tree-view.js.map +1 -1
- package/dist/ui/tree-view.mjs +4 -2
- package/dist/ui/tree-view.mjs.map +1 -1
- package/dist/ui/typography.js +9 -51
- package/dist/ui/typography.js.map +1 -1
- package/dist/ui/typography.mjs +2 -44
- package/dist/ui/typography.mjs.map +1 -1
- package/package.json +24 -18
- package/src/animations/animations.test.tsx +1 -2
- package/src/animations/shared/create-motion-animation.tsx +3 -1
- package/src/design-system/accordion.ts +66 -0
- package/src/design-system/alert.ts +33 -0
- package/src/design-system/animated-number.ts +33 -0
- package/src/design-system/avatar.ts +33 -0
- package/src/design-system/badge.ts +33 -0
- package/src/design-system/breadcrumb.ts +33 -0
- package/src/design-system/button.ts +34 -1
- package/src/design-system/card.ts +33 -0
- package/src/design-system/checkbox.ts +34 -1
- package/src/design-system/command.ts +33 -0
- package/src/design-system/context-menu.ts +21 -0
- package/src/design-system/copy-button.ts +34 -1
- package/src/design-system/divider.ts +33 -0
- package/src/design-system/drawer.ts +66 -0
- package/src/design-system/dropdown.ts +66 -0
- package/src/design-system/dynamic-stepper.ts +8 -23
- package/src/design-system/empty-state.ts +33 -0
- package/src/design-system/file-upload.ts +33 -0
- package/src/design-system/index.ts +0 -1
- package/src/design-system/inputs.ts +171 -0
- package/src/design-system/kbd.ts +34 -1
- package/src/design-system/marquee.ts +33 -0
- package/src/design-system/modal.ts +66 -0
- package/src/design-system/otp-input.ts +33 -0
- package/src/design-system/pagination.ts +33 -0
- package/src/design-system/popover.ts +31 -0
- package/src/design-system/progress.ts +33 -0
- package/src/design-system/radio-group.ts +33 -0
- package/src/design-system/rating.ts +33 -0
- package/src/design-system/scroll-area.ts +33 -0
- package/src/design-system/select.ts +99 -0
- package/src/design-system/skeleton.ts +75 -0
- package/src/design-system/slider.ts +34 -2
- package/src/design-system/spinner.ts +33 -0
- package/src/design-system/table.ts +99 -0
- package/src/design-system/tabs.ts +33 -0
- package/src/design-system/timeline.ts +33 -0
- package/src/design-system/toast.ts +33 -0
- package/src/design-system/toggle.ts +48 -0
- package/src/design-system/tooltip.ts +31 -0
- package/src/design-system/tree-view.ts +66 -0
- package/src/design-system/typography.ts +1 -1
- package/src/lib/facade.test.ts +182 -0
- package/src/lib/facade.ts +805 -0
- package/src/ui/dropdown/types.ts +3 -27
- package/src/ui/inputs/variants.ts +435 -0
- package/src/ui/pagination/types.ts +4 -2
- package/src/ui/select/types.ts +2 -23
- package/src/ui/tabs/types.ts +5 -42
- package/src/ui/tooltip/types.ts +4 -24
- package/dist/chunk-2F7P4EJQ.js.map +0 -1
- package/dist/chunk-2ZKW2E7B.mjs.map +0 -1
- package/dist/chunk-3F4FF2H4.mjs.map +0 -1
- package/dist/chunk-3J3FYIG3.js.map +0 -1
- package/dist/chunk-3W224B3M.js.map +0 -1
- package/dist/chunk-466QDL44.js +0 -77
- package/dist/chunk-466QDL44.js.map +0 -1
- package/dist/chunk-5565GZ4T.js.map +0 -1
- package/dist/chunk-5IJC2OEN.js +0 -124
- package/dist/chunk-5IJC2OEN.js.map +0 -1
- package/dist/chunk-6HPS3ZOP.js +0 -529
- package/dist/chunk-6HPS3ZOP.js.map +0 -1
- package/dist/chunk-7XCUMSCJ.mjs +0 -80
- package/dist/chunk-7XCUMSCJ.mjs.map +0 -1
- package/dist/chunk-BJSWQQSC.mjs.map +0 -1
- package/dist/chunk-BU2MPXPZ.js.map +0 -1
- package/dist/chunk-CIEZFHCO.mjs +0 -75
- package/dist/chunk-CIEZFHCO.mjs.map +0 -1
- package/dist/chunk-CSFLMMAT.mjs.map +0 -1
- package/dist/chunk-DEZRB6DS.mjs.map +0 -1
- package/dist/chunk-DFCDLVZA.js.map +0 -1
- package/dist/chunk-DY7HLVGW.mjs +0 -120
- package/dist/chunk-DY7HLVGW.mjs.map +0 -1
- package/dist/chunk-ECLHBSC6.mjs.map +0 -1
- package/dist/chunk-EIRCCTNA.js.map +0 -1
- package/dist/chunk-EZCYSFML.mjs.map +0 -1
- package/dist/chunk-GRJFGIZC.mjs +0 -417
- package/dist/chunk-GRJFGIZC.mjs.map +0 -1
- package/dist/chunk-H7WDA6U6.mjs.map +0 -1
- package/dist/chunk-HLG2YJFZ.mjs.map +0 -1
- package/dist/chunk-HNLQXHSQ.mjs.map +0 -1
- package/dist/chunk-IL4LH2XX.js +0 -342
- package/dist/chunk-IL4LH2XX.js.map +0 -1
- package/dist/chunk-IM6KN77X.mjs.map +0 -1
- package/dist/chunk-INXWZ4DS.js.map +0 -1
- package/dist/chunk-KVQI5PLL.mjs +0 -399
- package/dist/chunk-KVQI5PLL.mjs.map +0 -1
- package/dist/chunk-LNYCEPW5.js.map +0 -1
- package/dist/chunk-NFEA5TN2.js.map +0 -1
- package/dist/chunk-NMQAHUYA.mjs.map +0 -1
- package/dist/chunk-NNZXBL7R.mjs.map +0 -1
- package/dist/chunk-NRPG2STN.js +0 -401
- package/dist/chunk-NRPG2STN.js.map +0 -1
- package/dist/chunk-NSJ6KGW2.js.map +0 -1
- package/dist/chunk-OL3BJSRC.mjs +0 -328
- package/dist/chunk-OL3BJSRC.mjs.map +0 -1
- package/dist/chunk-ORFI4BCJ.mjs.map +0 -1
- package/dist/chunk-OZHETX4J.mjs.map +0 -1
- package/dist/chunk-PYUZOVLY.js.map +0 -1
- package/dist/chunk-QHEHBC6M.js +0 -421
- package/dist/chunk-QHEHBC6M.js.map +0 -1
- package/dist/chunk-R2JJTREQ.mjs.map +0 -1
- package/dist/chunk-RIHJAEOL.js +0 -107
- package/dist/chunk-RIHJAEOL.js.map +0 -1
- package/dist/chunk-SSJXWD2M.mjs.map +0 -1
- package/dist/chunk-TKVZU56F.mjs.map +0 -1
- package/dist/chunk-TTTYW3TR.js.map +0 -1
- package/dist/chunk-U3VV22G4.js.map +0 -1
- package/dist/chunk-UPZ5XGUD.mjs +0 -100
- package/dist/chunk-UPZ5XGUD.mjs.map +0 -1
- package/dist/chunk-UR7TNW45.mjs +0 -519
- package/dist/chunk-UR7TNW45.mjs.map +0 -1
- package/dist/chunk-UROKWFPX.mjs.map +0 -1
- package/dist/chunk-UY65KX3M.js.map +0 -1
- package/dist/chunk-VHVQELWF.js.map +0 -1
- package/dist/chunk-X3O45MPI.js.map +0 -1
- package/dist/chunk-XYEMP4K7.js.map +0 -1
- package/dist/chunk-ZUT7ZUM7.js +0 -84
- package/dist/chunk-ZUT7ZUM7.js.map +0 -1
- package/dist/chunk-ZX2IBIZT.js.map +0 -1
- package/dist/design-system/stepper.d.ts +0 -42
- package/dist/design-system/stepper.d.ts.map +0 -1
- package/dist/ui/stepper/index.d.ts +0 -4
- package/dist/ui/stepper/index.d.ts.map +0 -1
- package/dist/ui/stepper/stepper.d.ts +0 -28
- package/dist/ui/stepper/stepper.d.ts.map +0 -1
- package/dist/ui/stepper/types.d.ts +0 -25
- package/dist/ui/stepper/types.d.ts.map +0 -1
- package/dist/ui/stepper/variants.d.ts +0 -11
- package/dist/ui/stepper/variants.d.ts.map +0 -1
- package/dist/ui/stepper.js +0 -216
- package/dist/ui/stepper.js.map +0 -1
- package/dist/ui/stepper.mjs +0 -207
- package/dist/ui/stepper.mjs.map +0 -1
- package/src/design-system/stepper.ts +0 -66
- package/src/ui/stepper/index.ts +0 -22
- package/src/ui/stepper/stepper.test.tsx +0 -190
- package/src/ui/stepper/stepper.tsx +0 -171
- package/src/ui/stepper/types.ts +0 -38
- package/src/ui/stepper/variants.ts +0 -40
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/ui/skeleton/animated/animations.ts","../../../src/ui/skeleton/animated/skeleton-animated.tsx"],"names":["jsx","SkeletonBase","motion","useSkeletonAnimation","SkeletonTextBase","SkeletonAvatarBase","cn","jsxs","SkeletonButtonBase"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/ui/skeleton/animated/animations.ts","../../../src/ui/skeleton/animated/skeleton-animated.tsx"],"names":["jsx","SkeletonBase","motion","useSkeletonAnimation","SkeletonTextBase","SkeletonAvatarBase","cn","jsxs","SkeletonButtonBase"],"mappings":";;;;;;;;;;AAEO,IAAM,wBAAA,GAAqD;AAAA,EAChE,MAAM,EAAC;AAAA,EACP,OAAA,EAAS;AAAA,IACP,OAAA,EAAS,EAAE,kBAAA,EAAoB,SAAA,EAAU;AAAA,IACzC,SAAS,EAAE,kBAAA,EAAoB,CAAC,SAAA,EAAW,OAAO,CAAA,EAAE;AAAA,IACpD,YAAY,EAAE,MAAA,EAAQ,UAAU,QAAA,EAAU,IAAA,EAAM,MAAM,QAAA;AAAS,GACjE;AAAA,EACA,KAAA,EAAO;AAAA,IACL,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAE;AAAA,IACtB,SAAS,EAAE,OAAA,EAAS,CAAC,CAAA,EAAG,GAAA,EAAK,CAAC,CAAA,EAAE;AAAA,IAChC,YAAY,EAAE,MAAA,EAAQ,UAAU,QAAA,EAAU,IAAA,EAAM,MAAM,WAAA;AAAY;AAEtE;ACQO,SAAS,iBAAiB,KAAA,EAA8B;AAC7D,EAAA,MAAM,EAAE,SAAA,GAAY,SAAA,EAAU,GAAI,KAAA;AAClC,EAAA,MAAM,WAAA,GAAc,yBAAyB,SAAS,CAAA;AACtD,EAAA,uBACEA,cAAA,CAACC,6BAAA,EAAA,EAAc,GAAG,KAAA,EAAO,EAAA,EAAIC,oBAAO,GAAA,EAAK,OAAA,EAAS,KAAA,EAAQ,GAAG,WAAA,EAAa,CAAA;AAE9E;AAEA,gBAAA,CAAiB,WAAA,GAAc,UAAA;AAExB,SAAS,qBAAqB,KAAA,EAAkC;AACrE,EAAA,MAAM,EAAE,SAAA,GAAY,SAAA,EAAU,GAAI,KAAA;AAClC,EAAA,MAAM,kBAAA,GAAqBC,sCAAqB,SAAS,CAAA;AACzD,EAAA,MAAM,WAAA,GAAc,yBAAyB,kBAAkB,CAAA;AAE/D,EAAA,uBACEH,cAAA;AAAA,IAACI,iCAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,IAAIF,mBAAA,CAAO,GAAA;AAAA,MACX,OAAA,EAAS,KAAA;AAAA,MACR,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,oBAAA,CAAqB,WAAA,GAAc,cAAA;AAE5B,SAAS,uBAAuB,KAAA,EAAoC;AACzE,EAAA,MAAM,EAAE,SAAA,GAAY,SAAA,EAAU,GAAI,KAAA;AAClC,EAAA,MAAM,kBAAA,GAAqBC,sCAAqB,SAAS,CAAA;AACzD,EAAA,MAAM,WAAA,GAAc,yBAAyB,kBAAkB,CAAA;AAC/D,EAAA,uBACEH,cAAA;AAAA,IAACK,mCAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,IAAIH,mBAAA,CAAO,GAAA;AAAA,MACX,OAAA,EAAS,KAAA;AAAA,MACR,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,sBAAA,CAAuB,WAAA,GAAc,gBAAA;AAE9B,SAAS,qBAAqB,KAAA,EAAkC;AACrE,EAAA,MAAM;AAAA,IACJ,SAAA;AAAA,IACA,IAAA;AAAA,IACA,SAAA,GAAY,SAAA;AAAA,IACZ,WAAA;AAAA,IACA,UAAA;AAAA,IACA,IAAA;AAAA,IACA,OAAA;AAAA,IACA;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,uBACEF,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,WAAA,EAAU,eAAA;AAAA,MACV,SAAA,EAAWM,mBAAA,CAAG,iBAAA,EAAmB,SAAS,CAAA;AAAA,MAC1C,WAAA,EAAW,OAAO,IAAA,GAAO,MAAA;AAAA,MAEzB,QAAA,kBAAAC,eAAA;AAAA,QAAC,gBAAA;AAAA,QAAA;AAAA,UACC,OAAA,EAAQ,IAAA;AAAA,UACR,SAAA;AAAA,UACA,WAAA;AAAA,UACA,UAAA;AAAA,UACA,IAAA;AAAA,UACA,IAAA;AAAA,UACA,SAAA,EAAU,yBAAA;AAAA,UAEV,QAAA,EAAA;AAAA,4BAAAA,eAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yBAAA,EACb,QAAA,EAAA;AAAA,8BAAAP,cAAA;AAAA,gBAAC,sBAAA;AAAA,gBAAA;AAAA,kBACC,UAAA;AAAA,kBACA,IAAA;AAAA,kBACA,SAAA;AAAA,kBACA,WAAA;AAAA,kBACA;AAAA;AAAA,eACF;AAAA,8BACAA,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4BAAA,EACb,QAAA,kBAAAA,cAAA;AAAA,gBAAC,oBAAA;AAAA,gBAAA;AAAA,kBACC,KAAA,EAAO,CAAA;AAAA,kBACP,UAAA;AAAA,kBACA,IAAA;AAAA,kBACA,SAAA;AAAA,kBACA;AAAA;AAAA,eACF,EACF;AAAA,aAAA,EACF,CAAA;AAAA,4BACAA,cAAA;AAAA,cAAC,oBAAA;AAAA,cAAA;AAAA,gBACC,KAAA,EAAO,CAAA;AAAA,gBACP,UAAA;AAAA,gBACA,IAAA;AAAA,gBACA,SAAA;AAAA,gBACA;AAAA;AAAA;AACF;AAAA;AAAA;AACF;AAAA,GACF;AAEJ;AAEA,oBAAA,CAAqB,WAAA,GAAc,cAAA;AAE5B,SAAS,uBAAuB,KAAA,EAAoC;AACzE,EAAA,MAAM,EAAE,SAAA,GAAY,SAAA,EAAU,GAAI,KAAA;AAClC,EAAA,MAAM,kBAAA,GAAqBG,sCAAqB,SAAS,CAAA;AACzD,EAAA,MAAM,WAAA,GAAc,yBAAyB,kBAAkB,CAAA;AAC/D,EAAA,uBACEH,cAAA;AAAA,IAACQ,mCAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,IAAIN,mBAAA,CAAO,GAAA;AAAA,MACX,OAAA,EAAS,KAAA;AAAA,MACR,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,sBAAA,CAAuB,WAAA,GAAc,gBAAA","file":"animated.js","sourcesContent":["import type { SkeletonAnimationPresets } from \"./types\";\n\nexport const skeletonAnimationPresets: SkeletonAnimationPresets = {\n none: {},\n shimmer: {\n initial: { backgroundPosition: \"100% 0%\" },\n animate: { backgroundPosition: [\"100% 0%\", \"0% 0%\"] },\n transition: { repeat: Infinity, duration: 1.35, ease: \"linear\" },\n },\n pulse: {\n initial: { opacity: 1 },\n animate: { opacity: [1, 0.5, 1] },\n transition: { repeat: Infinity, duration: 1.35, ease: \"easeInOut\" },\n },\n};\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\n\nimport { cn } from \"../../../lib/utils\";\n\nimport { skeletonAnimationPresets } from \"./animations\";\nimport type {\n SkeletonAnimatedProps,\n SkeletonAvatarAnimatedProps,\n SkeletonButtonAnimatedProps,\n SkeletonCardAnimatedProps,\n SkeletonTextAnimatedProps,\n} from \"./types\";\nimport {\n SkeletonAvatarBase,\n SkeletonBase,\n SkeletonButtonBase,\n SkeletonTextBase,\n useSkeletonAnimation,\n} from \"../skeleton-base\";\n\nexport function SkeletonAnimated(props: SkeletonAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const motionProps = skeletonAnimationPresets[animation];\n return (\n <SkeletonBase {...props} as={motion.div} initial={false} {...motionProps} />\n );\n}\n\nSkeletonAnimated.displayName = \"Skeleton\";\n\nexport function SkeletonTextAnimated(props: SkeletonTextAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const effectiveAnimation = useSkeletonAnimation(animation);\n const motionProps = skeletonAnimationPresets[effectiveAnimation];\n\n return (\n <SkeletonTextBase\n {...props}\n as={motion.div}\n initial={false}\n {...motionProps}\n />\n );\n}\n\nSkeletonTextAnimated.displayName = \"SkeletonText\";\n\nexport function SkeletonAvatarAnimated(props: SkeletonAvatarAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const effectiveAnimation = useSkeletonAnimation(animation);\n const motionProps = skeletonAnimationPresets[effectiveAnimation];\n return (\n <SkeletonAvatarBase\n {...props}\n as={motion.div}\n initial={false}\n {...motionProps}\n />\n );\n}\n\nSkeletonAvatarAnimated.displayName = \"SkeletonAvatar\";\n\nexport function SkeletonCardAnimated(props: SkeletonCardAnimatedProps) {\n const {\n className,\n busy,\n animation = \"shimmer\",\n shimmerTone,\n appearance,\n size,\n rounded,\n ref,\n } = props;\n\n return (\n <div\n ref={ref as never}\n data-slot=\"skeleton-card\"\n className={cn(\"w-full max-w-sm\", className)}\n aria-busy={busy ? true : undefined}\n >\n <SkeletonAnimated\n rounded=\"lg\"\n animation={animation}\n shimmerTone={shimmerTone}\n appearance={appearance}\n size={size}\n busy={busy}\n className=\"flex flex-col gap-4 p-4\"\n >\n <div className=\"flex items-center gap-3\">\n <SkeletonAvatarAnimated\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n rounded={rounded}\n />\n <div className=\"flex flex-1 flex-col gap-2\">\n <SkeletonTextAnimated\n lines={2}\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n />\n </div>\n </div>\n <SkeletonTextAnimated\n lines={4}\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n />\n </SkeletonAnimated>\n </div>\n );\n}\n\nSkeletonCardAnimated.displayName = \"SkeletonCard\";\n\nexport function SkeletonButtonAnimated(props: SkeletonButtonAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const effectiveAnimation = useSkeletonAnimation(animation);\n const motionProps = skeletonAnimationPresets[effectiveAnimation];\n return (\n <SkeletonButtonBase\n {...props}\n as={motion.div}\n initial={false}\n {...motionProps}\n />\n );\n}\n\nSkeletonButtonAnimated.displayName = \"SkeletonButton\";\n"]}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { SkeletonBase, useSkeletonAnimation, SkeletonTextBase, SkeletonAvatarBase, SkeletonButtonBase } from '../../chunk-
|
|
2
|
+
import { SkeletonBase, useSkeletonAnimation, SkeletonTextBase, SkeletonAvatarBase, SkeletonButtonBase } from '../../chunk-BZZVO4GL.mjs';
|
|
3
|
+
import '../../chunk-BTSCPOWZ.mjs';
|
|
3
4
|
import { cn } from '../../chunk-4D54YOL6.mjs';
|
|
5
|
+
import '../../chunk-J5LGTIGS.mjs';
|
|
4
6
|
import { motion } from 'framer-motion';
|
|
5
7
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
6
8
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/ui/skeleton/animated/animations.ts","../../../src/ui/skeleton/animated/skeleton-animated.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/ui/skeleton/animated/animations.ts","../../../src/ui/skeleton/animated/skeleton-animated.tsx"],"names":[],"mappings":"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","file":"animated.mjs","sourcesContent":["import type { SkeletonAnimationPresets } from \"./types\";\n\nexport const skeletonAnimationPresets: SkeletonAnimationPresets = {\n none: {},\n shimmer: {\n initial: { backgroundPosition: \"100% 0%\" },\n animate: { backgroundPosition: [\"100% 0%\", \"0% 0%\"] },\n transition: { repeat: Infinity, duration: 1.35, ease: \"linear\" },\n },\n pulse: {\n initial: { opacity: 1 },\n animate: { opacity: [1, 0.5, 1] },\n transition: { repeat: Infinity, duration: 1.35, ease: \"easeInOut\" },\n },\n};\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\n\nimport { cn } from \"../../../lib/utils\";\n\nimport { skeletonAnimationPresets } from \"./animations\";\nimport type {\n SkeletonAnimatedProps,\n SkeletonAvatarAnimatedProps,\n SkeletonButtonAnimatedProps,\n SkeletonCardAnimatedProps,\n SkeletonTextAnimatedProps,\n} from \"./types\";\nimport {\n SkeletonAvatarBase,\n SkeletonBase,\n SkeletonButtonBase,\n SkeletonTextBase,\n useSkeletonAnimation,\n} from \"../skeleton-base\";\n\nexport function SkeletonAnimated(props: SkeletonAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const motionProps = skeletonAnimationPresets[animation];\n return (\n <SkeletonBase {...props} as={motion.div} initial={false} {...motionProps} />\n );\n}\n\nSkeletonAnimated.displayName = \"Skeleton\";\n\nexport function SkeletonTextAnimated(props: SkeletonTextAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const effectiveAnimation = useSkeletonAnimation(animation);\n const motionProps = skeletonAnimationPresets[effectiveAnimation];\n\n return (\n <SkeletonTextBase\n {...props}\n as={motion.div}\n initial={false}\n {...motionProps}\n />\n );\n}\n\nSkeletonTextAnimated.displayName = \"SkeletonText\";\n\nexport function SkeletonAvatarAnimated(props: SkeletonAvatarAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const effectiveAnimation = useSkeletonAnimation(animation);\n const motionProps = skeletonAnimationPresets[effectiveAnimation];\n return (\n <SkeletonAvatarBase\n {...props}\n as={motion.div}\n initial={false}\n {...motionProps}\n />\n );\n}\n\nSkeletonAvatarAnimated.displayName = \"SkeletonAvatar\";\n\nexport function SkeletonCardAnimated(props: SkeletonCardAnimatedProps) {\n const {\n className,\n busy,\n animation = \"shimmer\",\n shimmerTone,\n appearance,\n size,\n rounded,\n ref,\n } = props;\n\n return (\n <div\n ref={ref as never}\n data-slot=\"skeleton-card\"\n className={cn(\"w-full max-w-sm\", className)}\n aria-busy={busy ? true : undefined}\n >\n <SkeletonAnimated\n rounded=\"lg\"\n animation={animation}\n shimmerTone={shimmerTone}\n appearance={appearance}\n size={size}\n busy={busy}\n className=\"flex flex-col gap-4 p-4\"\n >\n <div className=\"flex items-center gap-3\">\n <SkeletonAvatarAnimated\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n rounded={rounded}\n />\n <div className=\"flex flex-1 flex-col gap-2\">\n <SkeletonTextAnimated\n lines={2}\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n />\n </div>\n </div>\n <SkeletonTextAnimated\n lines={4}\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n />\n </SkeletonAnimated>\n </div>\n );\n}\n\nSkeletonCardAnimated.displayName = \"SkeletonCard\";\n\nexport function SkeletonButtonAnimated(props: SkeletonButtonAnimatedProps) {\n const { animation = \"shimmer\" } = props;\n const effectiveAnimation = useSkeletonAnimation(animation);\n const motionProps = skeletonAnimationPresets[effectiveAnimation];\n return (\n <SkeletonButtonBase\n {...props}\n as={motion.div}\n initial={false}\n {...motionProps}\n />\n );\n}\n\nSkeletonButtonAnimated.displayName = \"SkeletonButton\";\n"]}
|
|
@@ -24,14 +24,35 @@ export declare const skeletonShimmerGradientClasses: {
|
|
|
24
24
|
readonly "gradient-indigo": "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,rgba(129,140,248,0.1),rgba(129,140,248,0.42),rgba(129,140,248,0.1))]";
|
|
25
25
|
readonly "gradient-pink": "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,rgba(244,114,182,0.1),rgba(244,114,182,0.42),rgba(244,114,182,0.1))]";
|
|
26
26
|
readonly "gradient-orange": "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,rgba(251,146,60,0.1),rgba(251,146,60,0.42),rgba(251,146,60,0.1))]";
|
|
27
|
+
readonly blue: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-blue-shimmer-start,#2563eb1a),var(--zui-skeleton-blue-shimmer-mid,#2563eb6b),var(--zui-skeleton-blue-shimmer-end,#2563eb1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-blue-shimmer-start-dark,#3b82f61f),var(--zui-skeleton-blue-shimmer-mid-dark,#3b82f67a),var(--zui-skeleton-blue-shimmer-end-dark,#3b82f61f))]";
|
|
28
|
+
readonly cyan: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-cyan-shimmer-start,#0891b21a),var(--zui-skeleton-cyan-shimmer-mid,#0891b26b),var(--zui-skeleton-cyan-shimmer-end,#0891b21a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-cyan-shimmer-start-dark,#22d3ee1f),var(--zui-skeleton-cyan-shimmer-mid-dark,#22d3ee7a),var(--zui-skeleton-cyan-shimmer-end-dark,#22d3ee1f))]";
|
|
29
|
+
readonly green: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-green-shimmer-start,#16a34a1a),var(--zui-skeleton-green-shimmer-mid,#16a34a6b),var(--zui-skeleton-green-shimmer-end,#16a34a1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-green-shimmer-start-dark,#22c55e1f),var(--zui-skeleton-green-shimmer-mid-dark,#22c55e7a),var(--zui-skeleton-green-shimmer-end-dark,#22c55e1f))]";
|
|
30
|
+
readonly lime: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-lime-shimmer-start,#65a30d1a),var(--zui-skeleton-lime-shimmer-mid,#65a30d6b),var(--zui-skeleton-lime-shimmer-end,#65a30d1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-lime-shimmer-start-dark,#a3e6351f),var(--zui-skeleton-lime-shimmer-mid-dark,#a3e6357a),var(--zui-skeleton-lime-shimmer-end-dark,#a3e6351f))]";
|
|
31
|
+
readonly mint: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-mint-shimmer-start,#10b9811a),var(--zui-skeleton-mint-shimmer-mid,#10b9816b),var(--zui-skeleton-mint-shimmer-end,#10b9811a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-mint-shimmer-start-dark,#6ee7b71f),var(--zui-skeleton-mint-shimmer-mid-dark,#6ee7b77a),var(--zui-skeleton-mint-shimmer-end-dark,#6ee7b71f))]";
|
|
32
|
+
readonly ocean: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-ocean-shimmer-start,#0284c71a),var(--zui-skeleton-ocean-shimmer-mid,#0284c76b),var(--zui-skeleton-ocean-shimmer-end,#0284c71a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-ocean-shimmer-start-dark,#38bdf81f),var(--zui-skeleton-ocean-shimmer-mid-dark,#38bdf87a),var(--zui-skeleton-ocean-shimmer-end-dark,#38bdf81f))]";
|
|
33
|
+
readonly sapphire: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-sapphire-shimmer-start,#1d4ed81a),var(--zui-skeleton-sapphire-shimmer-mid,#1d4ed86b),var(--zui-skeleton-sapphire-shimmer-end,#1d4ed81a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-sapphire-shimmer-start-dark,#60a5fa1f),var(--zui-skeleton-sapphire-shimmer-mid-dark,#60a5fa7a),var(--zui-skeleton-sapphire-shimmer-end-dark,#60a5fa1f))]";
|
|
34
|
+
readonly lavender: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-lavender-shimmer-start,#8b5cf61a),var(--zui-skeleton-lavender-shimmer-mid,#8b5cf66b),var(--zui-skeleton-lavender-shimmer-end,#8b5cf61a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-lavender-shimmer-start-dark,#a78bfa1f),var(--zui-skeleton-lavender-shimmer-mid-dark,#a78bfa7a),var(--zui-skeleton-lavender-shimmer-end-dark,#a78bfa1f))]";
|
|
35
|
+
readonly ruby: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-ruby-shimmer-start,#be123c1a),var(--zui-skeleton-ruby-shimmer-mid,#be123c6b),var(--zui-skeleton-ruby-shimmer-end,#be123c1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-ruby-shimmer-start-dark,#fb71851f),var(--zui-skeleton-ruby-shimmer-mid-dark,#fb71857a),var(--zui-skeleton-ruby-shimmer-end-dark,#fb71851f))]";
|
|
36
|
+
readonly red: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-red-shimmer-start,#dc26261a),var(--zui-skeleton-red-shimmer-mid,#dc26266b),var(--zui-skeleton-red-shimmer-end,#dc26261a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-red-shimmer-start-dark,#ef44441f),var(--zui-skeleton-red-shimmer-mid-dark,#ef44447a),var(--zui-skeleton-red-shimmer-end-dark,#ef44441f))]";
|
|
37
|
+
readonly slate: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-slate-shimmer-start,#4755691a),var(--zui-skeleton-slate-shimmer-mid,#4755696b),var(--zui-skeleton-slate-shimmer-end,#4755691a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-slate-shimmer-start-dark,#64748b1f),var(--zui-skeleton-slate-shimmer-mid-dark,#64748b7a),var(--zui-skeleton-slate-shimmer-end-dark,#64748b1f))]";
|
|
38
|
+
readonly zinc: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-zinc-shimmer-start,#52525b1a),var(--zui-skeleton-zinc-shimmer-mid,#52525b6b),var(--zui-skeleton-zinc-shimmer-end,#52525b1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-zinc-shimmer-start-dark,#71717a1f),var(--zui-skeleton-zinc-shimmer-mid-dark,#71717a7a),var(--zui-skeleton-zinc-shimmer-end-dark,#71717a1f))]";
|
|
39
|
+
readonly stone: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-stone-shimmer-start,#57534e1a),var(--zui-skeleton-stone-shimmer-mid,#57534e6b),var(--zui-skeleton-stone-shimmer-end,#57534e1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-stone-shimmer-start-dark,#78716c1f),var(--zui-skeleton-stone-shimmer-mid-dark,#78716c7a),var(--zui-skeleton-stone-shimmer-end-dark,#78716c1f))]";
|
|
40
|
+
readonly royal: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-royal-shimmer-start,#4338ca1a),var(--zui-skeleton-royal-shimmer-mid,#4338ca6b),var(--zui-skeleton-royal-shimmer-end,#4338ca1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-royal-shimmer-start-dark,#818cf81f),var(--zui-skeleton-royal-shimmer-mid-dark,#818cf87a),var(--zui-skeleton-royal-shimmer-end-dark,#818cf81f))]";
|
|
41
|
+
readonly electric: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-electric-shimmer-start,#0ea5e91a),var(--zui-skeleton-electric-shimmer-mid,#0ea5e96b),var(--zui-skeleton-electric-shimmer-end,#0ea5e91a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-electric-shimmer-start-dark,#38bdf81f),var(--zui-skeleton-electric-shimmer-mid-dark,#38bdf87a),var(--zui-skeleton-electric-shimmer-end-dark,#38bdf81f))]";
|
|
42
|
+
readonly forest: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-forest-shimmer-start,#1665341a),var(--zui-skeleton-forest-shimmer-mid,#1665346b),var(--zui-skeleton-forest-shimmer-end,#1665341a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-forest-shimmer-start-dark,#4ade801f),var(--zui-skeleton-forest-shimmer-mid-dark,#4ade807a),var(--zui-skeleton-forest-shimmer-end-dark,#4ade801f))]";
|
|
43
|
+
readonly sunset: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-sunset-shimmer-start,#ea580c1a),var(--zui-skeleton-sunset-shimmer-mid,#ea580c6b),var(--zui-skeleton-sunset-shimmer-end,#ea580c1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-sunset-shimmer-start-dark,#fb923c1f),var(--zui-skeleton-sunset-shimmer-mid-dark,#fb923c7a),var(--zui-skeleton-sunset-shimmer-end-dark,#fb923c1f))]";
|
|
44
|
+
readonly magenta: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-magenta-shimmer-start,#c026d31a),var(--zui-skeleton-magenta-shimmer-mid,#c026d36b),var(--zui-skeleton-magenta-shimmer-end,#c026d31a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-magenta-shimmer-start-dark,#e879f91f),var(--zui-skeleton-magenta-shimmer-mid-dark,#e879f97a),var(--zui-skeleton-magenta-shimmer-end-dark,#e879f91f))]";
|
|
45
|
+
readonly crimson: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-crimson-shimmer-start,#b91c1c1a),var(--zui-skeleton-crimson-shimmer-mid,#b91c1c6b),var(--zui-skeleton-crimson-shimmer-end,#b91c1c1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-crimson-shimmer-start-dark,#f871711f),var(--zui-skeleton-crimson-shimmer-mid-dark,#f871717a),var(--zui-skeleton-crimson-shimmer-end-dark,#f871711f))]";
|
|
46
|
+
readonly aqua: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-aqua-shimmer-start,#0f766e1a),var(--zui-skeleton-aqua-shimmer-mid,#0f766e6b),var(--zui-skeleton-aqua-shimmer-end,#0f766e1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-aqua-shimmer-start-dark,#2dd4bf1f),var(--zui-skeleton-aqua-shimmer-mid-dark,#2dd4bf7a),var(--zui-skeleton-aqua-shimmer-end-dark,#2dd4bf1f))]";
|
|
47
|
+
readonly plum: "[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%] [background-image:linear-gradient(90deg,var(--zui-skeleton-plum-shimmer-start,#7e22ce1a),var(--zui-skeleton-plum-shimmer-mid,#7e22ce6b),var(--zui-skeleton-plum-shimmer-end,#7e22ce1a))] dark:[background-image:linear-gradient(90deg,var(--zui-skeleton-plum-shimmer-start-dark,#c084fc1f),var(--zui-skeleton-plum-shimmer-mid-dark,#c084fc7a),var(--zui-skeleton-plum-shimmer-end-dark,#c084fc1f))]";
|
|
27
48
|
};
|
|
28
49
|
export type SkeletonShimmerTone = ZuiSkeletonShimmerTone;
|
|
29
50
|
export declare const skeletonVariants: (props?: ({
|
|
30
|
-
appearance?: "default" | "muted" | "sky" | "emerald" | "violet" | "amber" | "rose" | "gray" | "indigo" | "orange" | "pink" | "purple" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "subtle" | null | undefined;
|
|
51
|
+
appearance?: "ruby" | "default" | "muted" | "sky" | "emerald" | "violet" | "amber" | "rose" | "slate" | "gray" | "indigo" | "cyan" | "aqua" | "blue" | "crimson" | "green" | "lavender" | "lime" | "magenta" | "orange" | "pink" | "plum" | "purple" | "red" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "mint" | "ocean" | "sapphire" | "zinc" | "stone" | "royal" | "electric" | "forest" | "sunset" | "subtle" | null | undefined;
|
|
31
52
|
size?: "md" | "sm" | "lg" | null | undefined;
|
|
32
53
|
rounded?: "none" | "md" | "sm" | "lg" | "full" | null | undefined;
|
|
33
54
|
animation?: "none" | "shimmer" | "pulse" | null | undefined;
|
|
34
|
-
shimmerTone?: "default" | "muted" | "sky" | "emerald" | "violet" | "amber" | "rose" | "gray" | "indigo" | "orange" | "pink" | "purple" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "subtle" | null | undefined;
|
|
55
|
+
shimmerTone?: "ruby" | "default" | "muted" | "sky" | "emerald" | "violet" | "amber" | "rose" | "slate" | "gray" | "indigo" | "cyan" | "aqua" | "blue" | "crimson" | "green" | "lavender" | "lime" | "magenta" | "orange" | "pink" | "plum" | "purple" | "red" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "mint" | "ocean" | "sapphire" | "zinc" | "stone" | "royal" | "electric" | "forest" | "sunset" | "subtle" | null | undefined;
|
|
35
56
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
36
57
|
export declare const skeletonTextLineVariants: (props?: ({
|
|
37
58
|
size?: "md" | "sm" | "lg" | null | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/skeleton/variants.ts"],"names":[],"mappings":"AAEA,OAAO,EAUL,KAAK,sBAAsB,EAC5B,MAAM,8BAA8B,CAAC;AAEtC,eAAO,MAAM,8BAA8B
|
|
1
|
+
{"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/skeleton/variants.ts"],"names":[],"mappings":"AAEA,OAAO,EAUL,KAAK,sBAAsB,EAC5B,MAAM,8BAA8B,CAAC;AAEtC,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAoC,CAAC;AAChF,MAAM,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AAEzD,eAAO,MAAM,gBAAgB;;;;;;8EA6I3B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;8EAKnC,CAAC"}
|
package/dist/ui/skeleton.js
CHANGED
|
@@ -1,42 +1,44 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunkP2DQP4J4_js = require('../chunk-P2DQP4J4.js');
|
|
5
|
+
require('../chunk-44G3U35C.js');
|
|
5
6
|
require('../chunk-ZS5756ZC.js');
|
|
7
|
+
require('../chunk-PZ5AY32C.js');
|
|
6
8
|
|
|
7
9
|
|
|
8
10
|
|
|
9
11
|
Object.defineProperty(exports, "Skeleton", {
|
|
10
12
|
enumerable: true,
|
|
11
|
-
get: function () { return
|
|
13
|
+
get: function () { return chunkP2DQP4J4_js.SkeletonBase; }
|
|
12
14
|
});
|
|
13
15
|
Object.defineProperty(exports, "SkeletonAvatar", {
|
|
14
16
|
enumerable: true,
|
|
15
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunkP2DQP4J4_js.SkeletonAvatarBase; }
|
|
16
18
|
});
|
|
17
19
|
Object.defineProperty(exports, "SkeletonButton", {
|
|
18
20
|
enumerable: true,
|
|
19
|
-
get: function () { return
|
|
21
|
+
get: function () { return chunkP2DQP4J4_js.SkeletonButtonBase; }
|
|
20
22
|
});
|
|
21
23
|
Object.defineProperty(exports, "SkeletonCard", {
|
|
22
24
|
enumerable: true,
|
|
23
|
-
get: function () { return
|
|
25
|
+
get: function () { return chunkP2DQP4J4_js.SkeletonCardBase; }
|
|
24
26
|
});
|
|
25
27
|
Object.defineProperty(exports, "SkeletonText", {
|
|
26
28
|
enumerable: true,
|
|
27
|
-
get: function () { return
|
|
29
|
+
get: function () { return chunkP2DQP4J4_js.SkeletonTextBase; }
|
|
28
30
|
});
|
|
29
31
|
Object.defineProperty(exports, "skeletonShimmerGradientClasses", {
|
|
30
32
|
enumerable: true,
|
|
31
|
-
get: function () { return
|
|
33
|
+
get: function () { return chunkP2DQP4J4_js.skeletonShimmerGradientClasses; }
|
|
32
34
|
});
|
|
33
35
|
Object.defineProperty(exports, "skeletonTextLineVariants", {
|
|
34
36
|
enumerable: true,
|
|
35
|
-
get: function () { return
|
|
37
|
+
get: function () { return chunkP2DQP4J4_js.skeletonTextLineVariants; }
|
|
36
38
|
});
|
|
37
39
|
Object.defineProperty(exports, "skeletonVariants", {
|
|
38
40
|
enumerable: true,
|
|
39
|
-
get: function () { return
|
|
41
|
+
get: function () { return chunkP2DQP4J4_js.skeletonVariants; }
|
|
40
42
|
});
|
|
41
43
|
//# sourceMappingURL=skeleton.js.map
|
|
42
44
|
//# sourceMappingURL=skeleton.js.map
|
package/dist/ui/skeleton.mjs
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export { SkeletonBase as Skeleton, SkeletonAvatarBase as SkeletonAvatar, SkeletonButtonBase as SkeletonButton, SkeletonCardBase as SkeletonCard, SkeletonTextBase as SkeletonText, skeletonShimmerGradientClasses, skeletonTextLineVariants, skeletonVariants } from '../chunk-
|
|
2
|
+
export { SkeletonBase as Skeleton, SkeletonAvatarBase as SkeletonAvatar, SkeletonButtonBase as SkeletonButton, SkeletonCardBase as SkeletonCard, SkeletonTextBase as SkeletonText, skeletonShimmerGradientClasses, skeletonTextLineVariants, skeletonVariants } from '../chunk-BZZVO4GL.mjs';
|
|
3
|
+
import '../chunk-BTSCPOWZ.mjs';
|
|
3
4
|
import '../chunk-4D54YOL6.mjs';
|
|
5
|
+
import '../chunk-J5LGTIGS.mjs';
|
|
4
6
|
//# sourceMappingURL=skeleton.mjs.map
|
|
5
7
|
//# sourceMappingURL=skeleton.mjs.map
|
|
@@ -5,7 +5,7 @@ export declare const sliderTrackVariants: (props?: ({
|
|
|
5
5
|
size?: "md" | "sm" | "lg" | null | undefined;
|
|
6
6
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
7
|
export declare const sliderRangeVariants: (props?: ({
|
|
8
|
-
appearance?: "default" | "sky" | "emerald" | "violet" | "amber" | "rose" | "gray" | "indigo" | "orange" | "pink" | "purple" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | null | undefined;
|
|
8
|
+
appearance?: "ruby" | "default" | "sky" | "emerald" | "violet" | "amber" | "rose" | "slate" | "gray" | "indigo" | "cyan" | "aqua" | "blue" | "crimson" | "green" | "lavender" | "lime" | "magenta" | "orange" | "pink" | "plum" | "purple" | "red" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "mint" | "ocean" | "sapphire" | "zinc" | "stone" | "royal" | "electric" | "forest" | "sunset" | null | undefined;
|
|
9
9
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
10
10
|
export declare const sliderThumbVariants: (props?: ({
|
|
11
11
|
size?: "md" | "sm" | "lg" | null | undefined;
|
package/dist/ui/slider.js
CHANGED
|
@@ -1,84 +1,40 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
+
var chunkGDYSB7SB_js = require('../chunk-GDYSB7SB.js');
|
|
4
5
|
var chunkZS5756ZC_js = require('../chunk-ZS5756ZC.js');
|
|
6
|
+
require('../chunk-PZ5AY32C.js');
|
|
5
7
|
var react = require('react');
|
|
6
8
|
var classVarianceAuthority = require('class-variance-authority');
|
|
7
9
|
var jsxRuntime = require('react/jsx-runtime');
|
|
8
10
|
|
|
9
|
-
|
|
10
|
-
var zuiSliderRootBase = "w-full select-none touch-none";
|
|
11
|
-
var zuiSliderRootSizes = {
|
|
12
|
-
sm: "py-2",
|
|
13
|
-
md: "py-2.5",
|
|
14
|
-
lg: "py-3"
|
|
15
|
-
};
|
|
16
|
-
var zuiSliderTrackBase = "relative h-2 w-full shrink-0 overflow-hidden rounded-full bg-[var(--zui-slider-track-bg,#0000001a)] dark:bg-[var(--zui-slider-track-bg-dark,#ffffff1a)]";
|
|
17
|
-
var zuiSliderTrackSizes = {
|
|
18
|
-
sm: "h-1.5",
|
|
19
|
-
md: "h-2",
|
|
20
|
-
lg: "h-2.5"
|
|
21
|
-
};
|
|
22
|
-
var zuiSliderRangeBase = "absolute h-full rounded-full bg-linear-to-r from-[var(--zui-slider-range-from,oklch(60.6%_0.25_292.717))] dark:from-[var(--zui-slider-range-from-dark,oklch(60.6%_0.25_292.717))] to-[var(--zui-slider-range-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-to-dark,oklch(67.3%_0.182_276.935))]";
|
|
23
|
-
var zuiSliderRangeAppearances = {
|
|
24
|
-
default: "from-[var(--zui-slider-range-default-from,oklch(60.6%_0.25_292.717))] dark:from-[var(--zui-slider-range-default-from-dark,oklch(60.6%_0.25_292.717))] to-[var(--zui-slider-range-default-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-default-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
25
|
-
sky: "from-[var(--zui-slider-range-sky-from,oklch(68.5%_0.169_237.323))] dark:from-[var(--zui-slider-range-sky-from-dark,oklch(68.5%_0.169_237.323))] to-[var(--zui-slider-range-sky-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-sky-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
26
|
-
rose: "from-[var(--zui-slider-range-rose-from,oklch(64.5%_0.246_16.439))] dark:from-[var(--zui-slider-range-rose-from-dark,oklch(64.5%_0.246_16.439))] to-[var(--zui-slider-range-rose-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-rose-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
27
|
-
purple: "from-[var(--zui-slider-range-purple-from,oklch(62.7%_0.265_303.9))] dark:from-[var(--zui-slider-range-purple-from-dark,oklch(62.7%_0.265_303.9))] to-[var(--zui-slider-range-purple-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-purple-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
28
|
-
pink: "from-[var(--zui-slider-range-pink-from,oklch(65.6%_0.241_354.308))] dark:from-[var(--zui-slider-range-pink-from-dark,oklch(65.6%_0.241_354.308))] to-[var(--zui-slider-range-pink-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-pink-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
29
|
-
orange: "from-[var(--zui-slider-range-orange-from,oklch(70.5%_0.213_47.604))] dark:from-[var(--zui-slider-range-orange-from-dark,oklch(70.5%_0.213_47.604))] to-[var(--zui-slider-range-orange-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-orange-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
30
|
-
yellow: "from-[var(--zui-slider-range-yellow-from,oklch(79.5%_0.184_86.047))] dark:from-[var(--zui-slider-range-yellow-from-dark,oklch(79.5%_0.184_86.047))] to-[var(--zui-slider-range-yellow-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-yellow-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
31
|
-
teal: "from-[var(--zui-slider-range-teal-from,oklch(70.4%_0.14_182.503))] dark:from-[var(--zui-slider-range-teal-from-dark,oklch(70.4%_0.14_182.503))] to-[var(--zui-slider-range-teal-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-teal-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
32
|
-
indigo: "from-[var(--zui-slider-range-indigo-from,oklch(58.5%_0.233_277.117))] dark:from-[var(--zui-slider-range-indigo-from-dark,oklch(58.5%_0.233_277.117))] to-[var(--zui-slider-range-indigo-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-indigo-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
33
|
-
emerald: "from-[var(--zui-slider-range-emerald-from,oklch(69.6%_0.17_162.48))] dark:from-[var(--zui-slider-range-emerald-from-dark,oklch(69.6%_0.17_162.48))] to-[var(--zui-slider-range-emerald-to,oklch(60%_0.118_184.704))] dark:to-[var(--zui-slider-range-emerald-to-dark,oklch(77.7%_0.152_181.912))]",
|
|
34
|
-
amber: "from-[var(--zui-slider-range-amber-from,oklch(76.9%_0.188_70.08))] dark:from-[var(--zui-slider-range-amber-from-dark,oklch(76.9%_0.188_70.08))] to-[var(--zui-slider-range-amber-to,oklch(64.6%_0.222_41.116))] dark:to-[var(--zui-slider-range-amber-to-dark,oklch(75%_0.183_55.934))]",
|
|
35
|
-
gray: "from-[var(--zui-slider-range-gray-from,oklch(55.1%_0.027_264.364))] dark:from-[var(--zui-slider-range-gray-from-dark,oklch(55.1%_0.027_264.364))] to-[var(--zui-slider-range-gray-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gray-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
36
|
-
violet: "from-[var(--zui-slider-range-violet-from,oklch(60.6%_0.25_292.717))] dark:from-[var(--zui-slider-range-violet-from-dark,oklch(60.6%_0.25_292.717))] to-[var(--zui-slider-range-violet-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-violet-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
37
|
-
"gradient-blue": "from-[var(--zui-slider-range-gradient-blue-from,oklch(62.3%_0.214_259.815))] dark:from-[var(--zui-slider-range-gradient-blue-from-dark,oklch(62.3%_0.214_259.815))] to-[var(--zui-slider-range-gradient-blue-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-blue-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
38
|
-
"gradient-green": "from-[var(--zui-slider-range-gradient-green-from,oklch(72.3%_0.219_149.579))] dark:from-[var(--zui-slider-range-gradient-green-from-dark,oklch(72.3%_0.219_149.579))] to-[var(--zui-slider-range-gradient-green-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-green-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
39
|
-
"gradient-red": "from-[var(--zui-slider-range-gradient-red-from,oklch(63.7%_0.237_25.331))] dark:from-[var(--zui-slider-range-gradient-red-from-dark,oklch(63.7%_0.237_25.331))] to-[var(--zui-slider-range-gradient-red-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-red-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
40
|
-
"gradient-yellow": "from-[var(--zui-slider-range-gradient-yellow-from,oklch(79.5%_0.184_86.047))] dark:from-[var(--zui-slider-range-gradient-yellow-from-dark,oklch(79.5%_0.184_86.047))] to-[var(--zui-slider-range-gradient-yellow-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-yellow-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
41
|
-
"gradient-purple": "from-[var(--zui-slider-range-gradient-purple-from,oklch(62.7%_0.265_303.9))] dark:from-[var(--zui-slider-range-gradient-purple-from-dark,oklch(62.7%_0.265_303.9))] to-[var(--zui-slider-range-gradient-purple-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-purple-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
42
|
-
"gradient-teal": "from-[var(--zui-slider-range-gradient-teal-from,oklch(70.4%_0.14_182.503))] dark:from-[var(--zui-slider-range-gradient-teal-from-dark,oklch(70.4%_0.14_182.503))] to-[var(--zui-slider-range-gradient-teal-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-teal-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
43
|
-
"gradient-indigo": "from-[var(--zui-slider-range-gradient-indigo-from,oklch(58.5%_0.233_277.117))] dark:from-[var(--zui-slider-range-gradient-indigo-from-dark,oklch(58.5%_0.233_277.117))] to-[var(--zui-slider-range-gradient-indigo-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-indigo-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
44
|
-
"gradient-pink": "from-[var(--zui-slider-range-gradient-pink-from,oklch(65.6%_0.241_354.308))] dark:from-[var(--zui-slider-range-gradient-pink-from-dark,oklch(65.6%_0.241_354.308))] to-[var(--zui-slider-range-gradient-pink-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-pink-to-dark,oklch(67.3%_0.182_276.935))]",
|
|
45
|
-
"gradient-orange": "from-[var(--zui-slider-range-gradient-orange-from,oklch(70.5%_0.213_47.604))] dark:from-[var(--zui-slider-range-gradient-orange-from-dark,oklch(70.5%_0.213_47.604))] to-[var(--zui-slider-range-gradient-orange-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-orange-to-dark,oklch(67.3%_0.182_276.935))]"
|
|
46
|
-
};
|
|
47
|
-
var zuiSliderThumbBase = "block size-4 rounded-full border border-[color:var(--zui-slider-thumb-border,#00000033)] dark:border-[color:var(--zui-slider-thumb-border-dark,#ffffff33)] bg-[var(--zui-slider-thumb-bg,#000000)] dark:bg-[var(--zui-slider-thumb-bg-dark,#ffffff)] shadow-md ring-offset-2 ring-offset-[var(--zui-slider-thumb-ring-offset,oklch(98.4%_0.003_247.858))] dark:ring-offset-[var(--zui-slider-thumb-ring-offset-dark,oklch(12.9%_0.042_264.695))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--zui-slider-thumb-ring-focus,#00000066)] dark:focus-visible:ring-[var(--zui-slider-thumb-ring-focus-dark,#ffffff66)] disabled:pointer-events-none disabled:opacity-40";
|
|
48
|
-
var zuiSliderThumbSizes = {
|
|
49
|
-
sm: "size-3.5",
|
|
50
|
-
md: "size-4",
|
|
51
|
-
lg: "size-5"
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
// src/ui/slider/variants.ts
|
|
55
|
-
var sliderRootVariants = classVarianceAuthority.cva(zuiSliderRootBase, {
|
|
11
|
+
var sliderRootVariants = classVarianceAuthority.cva(chunkGDYSB7SB_js.zuiSliderRootBase, {
|
|
56
12
|
variants: {
|
|
57
|
-
size: zuiSliderRootSizes
|
|
13
|
+
size: chunkGDYSB7SB_js.zuiSliderRootSizes
|
|
58
14
|
},
|
|
59
15
|
defaultVariants: {
|
|
60
16
|
size: "md"
|
|
61
17
|
}
|
|
62
18
|
});
|
|
63
|
-
var sliderTrackVariants = classVarianceAuthority.cva(zuiSliderTrackBase, {
|
|
19
|
+
var sliderTrackVariants = classVarianceAuthority.cva(chunkGDYSB7SB_js.zuiSliderTrackBase, {
|
|
64
20
|
variants: {
|
|
65
|
-
size: zuiSliderTrackSizes
|
|
21
|
+
size: chunkGDYSB7SB_js.zuiSliderTrackSizes
|
|
66
22
|
},
|
|
67
23
|
defaultVariants: {
|
|
68
24
|
size: "md"
|
|
69
25
|
}
|
|
70
26
|
});
|
|
71
|
-
var sliderRangeVariants = classVarianceAuthority.cva(zuiSliderRangeBase, {
|
|
27
|
+
var sliderRangeVariants = classVarianceAuthority.cva(chunkGDYSB7SB_js.zuiSliderRangeBase, {
|
|
72
28
|
variants: {
|
|
73
|
-
appearance: zuiSliderRangeAppearances
|
|
29
|
+
appearance: chunkGDYSB7SB_js.zuiSliderRangeAppearances
|
|
74
30
|
},
|
|
75
31
|
defaultVariants: {
|
|
76
32
|
appearance: "default"
|
|
77
33
|
}
|
|
78
34
|
});
|
|
79
|
-
var sliderThumbVariants = classVarianceAuthority.cva(zuiSliderThumbBase, {
|
|
35
|
+
var sliderThumbVariants = classVarianceAuthority.cva(chunkGDYSB7SB_js.zuiSliderThumbBase, {
|
|
80
36
|
variants: {
|
|
81
|
-
size: zuiSliderThumbSizes
|
|
37
|
+
size: chunkGDYSB7SB_js.zuiSliderThumbSizes
|
|
82
38
|
},
|
|
83
39
|
defaultVariants: {
|
|
84
40
|
size: "md"
|
package/dist/ui/slider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/design-system/slider.ts","../../src/ui/slider/variants.ts","../../src/ui/slider/slider.tsx"],"names":["cva","createContext","useContext","useRef","useState","useCallback","useMemo","jsx","cn","lo","hi","jsxs"],"mappings":"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","file":"slider.js","sourcesContent":["export const zuiSliderRootBase = \"w-full select-none touch-none\";\n\nexport const zuiSliderRootSizes = {\n sm: \"py-2\",\n md: \"py-2.5\",\n lg: \"py-3\",\n} as const;\n\nexport const zuiSliderTrackBase =\n \"relative h-2 w-full shrink-0 overflow-hidden rounded-full bg-[var(--zui-slider-track-bg,#0000001a)] dark:bg-[var(--zui-slider-track-bg-dark,#ffffff1a)]\";\n\nexport const zuiSliderTrackSizes = {\n sm: \"h-1.5\",\n md: \"h-2\",\n lg: \"h-2.5\",\n} as const;\n\nexport const zuiSliderRangeBase =\n \"absolute h-full rounded-full bg-linear-to-r from-[var(--zui-slider-range-from,oklch(60.6%_0.25_292.717))] dark:from-[var(--zui-slider-range-from-dark,oklch(60.6%_0.25_292.717))] to-[var(--zui-slider-range-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-to-dark,oklch(67.3%_0.182_276.935))]\";\n\nexport const zuiSliderRangeAppearances = {\n default:\n \"from-[var(--zui-slider-range-default-from,oklch(60.6%_0.25_292.717))] dark:from-[var(--zui-slider-range-default-from-dark,oklch(60.6%_0.25_292.717))] to-[var(--zui-slider-range-default-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-default-to-dark,oklch(67.3%_0.182_276.935))]\",\n sky: \"from-[var(--zui-slider-range-sky-from,oklch(68.5%_0.169_237.323))] dark:from-[var(--zui-slider-range-sky-from-dark,oklch(68.5%_0.169_237.323))] to-[var(--zui-slider-range-sky-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-sky-to-dark,oklch(67.3%_0.182_276.935))]\",\n rose: \"from-[var(--zui-slider-range-rose-from,oklch(64.5%_0.246_16.439))] dark:from-[var(--zui-slider-range-rose-from-dark,oklch(64.5%_0.246_16.439))] to-[var(--zui-slider-range-rose-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-rose-to-dark,oklch(67.3%_0.182_276.935))]\",\n purple:\n \"from-[var(--zui-slider-range-purple-from,oklch(62.7%_0.265_303.9))] dark:from-[var(--zui-slider-range-purple-from-dark,oklch(62.7%_0.265_303.9))] to-[var(--zui-slider-range-purple-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-purple-to-dark,oklch(67.3%_0.182_276.935))]\",\n pink: \"from-[var(--zui-slider-range-pink-from,oklch(65.6%_0.241_354.308))] dark:from-[var(--zui-slider-range-pink-from-dark,oklch(65.6%_0.241_354.308))] to-[var(--zui-slider-range-pink-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-pink-to-dark,oklch(67.3%_0.182_276.935))]\",\n orange:\n \"from-[var(--zui-slider-range-orange-from,oklch(70.5%_0.213_47.604))] dark:from-[var(--zui-slider-range-orange-from-dark,oklch(70.5%_0.213_47.604))] to-[var(--zui-slider-range-orange-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-orange-to-dark,oklch(67.3%_0.182_276.935))]\",\n yellow:\n \"from-[var(--zui-slider-range-yellow-from,oklch(79.5%_0.184_86.047))] dark:from-[var(--zui-slider-range-yellow-from-dark,oklch(79.5%_0.184_86.047))] to-[var(--zui-slider-range-yellow-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-yellow-to-dark,oklch(67.3%_0.182_276.935))]\",\n teal: \"from-[var(--zui-slider-range-teal-from,oklch(70.4%_0.14_182.503))] dark:from-[var(--zui-slider-range-teal-from-dark,oklch(70.4%_0.14_182.503))] to-[var(--zui-slider-range-teal-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-teal-to-dark,oklch(67.3%_0.182_276.935))]\",\n indigo:\n \"from-[var(--zui-slider-range-indigo-from,oklch(58.5%_0.233_277.117))] dark:from-[var(--zui-slider-range-indigo-from-dark,oklch(58.5%_0.233_277.117))] to-[var(--zui-slider-range-indigo-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-indigo-to-dark,oklch(67.3%_0.182_276.935))]\",\n emerald:\n \"from-[var(--zui-slider-range-emerald-from,oklch(69.6%_0.17_162.48))] dark:from-[var(--zui-slider-range-emerald-from-dark,oklch(69.6%_0.17_162.48))] to-[var(--zui-slider-range-emerald-to,oklch(60%_0.118_184.704))] dark:to-[var(--zui-slider-range-emerald-to-dark,oklch(77.7%_0.152_181.912))]\",\n amber:\n \"from-[var(--zui-slider-range-amber-from,oklch(76.9%_0.188_70.08))] dark:from-[var(--zui-slider-range-amber-from-dark,oklch(76.9%_0.188_70.08))] to-[var(--zui-slider-range-amber-to,oklch(64.6%_0.222_41.116))] dark:to-[var(--zui-slider-range-amber-to-dark,oklch(75%_0.183_55.934))]\",\n gray: \"from-[var(--zui-slider-range-gray-from,oklch(55.1%_0.027_264.364))] dark:from-[var(--zui-slider-range-gray-from-dark,oklch(55.1%_0.027_264.364))] to-[var(--zui-slider-range-gray-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gray-to-dark,oklch(67.3%_0.182_276.935))]\",\n violet:\n \"from-[var(--zui-slider-range-violet-from,oklch(60.6%_0.25_292.717))] dark:from-[var(--zui-slider-range-violet-from-dark,oklch(60.6%_0.25_292.717))] to-[var(--zui-slider-range-violet-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-violet-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-blue\":\n \"from-[var(--zui-slider-range-gradient-blue-from,oklch(62.3%_0.214_259.815))] dark:from-[var(--zui-slider-range-gradient-blue-from-dark,oklch(62.3%_0.214_259.815))] to-[var(--zui-slider-range-gradient-blue-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-blue-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-green\":\n \"from-[var(--zui-slider-range-gradient-green-from,oklch(72.3%_0.219_149.579))] dark:from-[var(--zui-slider-range-gradient-green-from-dark,oklch(72.3%_0.219_149.579))] to-[var(--zui-slider-range-gradient-green-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-green-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-red\":\n \"from-[var(--zui-slider-range-gradient-red-from,oklch(63.7%_0.237_25.331))] dark:from-[var(--zui-slider-range-gradient-red-from-dark,oklch(63.7%_0.237_25.331))] to-[var(--zui-slider-range-gradient-red-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-red-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-yellow\":\n \"from-[var(--zui-slider-range-gradient-yellow-from,oklch(79.5%_0.184_86.047))] dark:from-[var(--zui-slider-range-gradient-yellow-from-dark,oklch(79.5%_0.184_86.047))] to-[var(--zui-slider-range-gradient-yellow-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-yellow-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-purple\":\n \"from-[var(--zui-slider-range-gradient-purple-from,oklch(62.7%_0.265_303.9))] dark:from-[var(--zui-slider-range-gradient-purple-from-dark,oklch(62.7%_0.265_303.9))] to-[var(--zui-slider-range-gradient-purple-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-purple-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-teal\":\n \"from-[var(--zui-slider-range-gradient-teal-from,oklch(70.4%_0.14_182.503))] dark:from-[var(--zui-slider-range-gradient-teal-from-dark,oklch(70.4%_0.14_182.503))] to-[var(--zui-slider-range-gradient-teal-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-teal-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-indigo\":\n \"from-[var(--zui-slider-range-gradient-indigo-from,oklch(58.5%_0.233_277.117))] dark:from-[var(--zui-slider-range-gradient-indigo-from-dark,oklch(58.5%_0.233_277.117))] to-[var(--zui-slider-range-gradient-indigo-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-indigo-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-pink\":\n \"from-[var(--zui-slider-range-gradient-pink-from,oklch(65.6%_0.241_354.308))] dark:from-[var(--zui-slider-range-gradient-pink-from-dark,oklch(65.6%_0.241_354.308))] to-[var(--zui-slider-range-gradient-pink-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-pink-to-dark,oklch(67.3%_0.182_276.935))]\",\n \"gradient-orange\":\n \"from-[var(--zui-slider-range-gradient-orange-from,oklch(70.5%_0.213_47.604))] dark:from-[var(--zui-slider-range-gradient-orange-from-dark,oklch(70.5%_0.213_47.604))] to-[var(--zui-slider-range-gradient-orange-to,oklch(51.1%_0.262_276.966))] dark:to-[var(--zui-slider-range-gradient-orange-to-dark,oklch(67.3%_0.182_276.935))]\",\n} as const;\n\nexport const zuiSliderThumbBase =\n \"block size-4 rounded-full border border-[color:var(--zui-slider-thumb-border,#00000033)] dark:border-[color:var(--zui-slider-thumb-border-dark,#ffffff33)] bg-[var(--zui-slider-thumb-bg,#000000)] dark:bg-[var(--zui-slider-thumb-bg-dark,#ffffff)] shadow-md ring-offset-2 ring-offset-[var(--zui-slider-thumb-ring-offset,oklch(98.4%_0.003_247.858))] dark:ring-offset-[var(--zui-slider-thumb-ring-offset-dark,oklch(12.9%_0.042_264.695))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--zui-slider-thumb-ring-focus,#00000066)] dark:focus-visible:ring-[var(--zui-slider-thumb-ring-focus-dark,#ffffff66)] disabled:pointer-events-none disabled:opacity-40\";\n\nexport const zuiSliderThumbSizes = {\n sm: \"size-3.5\",\n md: \"size-4\",\n lg: \"size-5\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiSliderRangeAppearances,\n zuiSliderRangeBase,\n zuiSliderRootBase,\n zuiSliderRootSizes,\n zuiSliderThumbBase,\n zuiSliderThumbSizes,\n zuiSliderTrackBase,\n zuiSliderTrackSizes,\n} from \"../../design-system/slider\";\n\nexport const sliderRootVariants = cva(zuiSliderRootBase, {\n variants: {\n size: zuiSliderRootSizes,\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\nexport const sliderTrackVariants = cva(zuiSliderTrackBase, {\n variants: {\n size: zuiSliderTrackSizes,\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\nexport const sliderRangeVariants = cva(zuiSliderRangeBase, {\n variants: {\n appearance: zuiSliderRangeAppearances,\n },\n defaultVariants: {\n appearance: \"default\",\n },\n});\n\nexport const sliderThumbVariants = cva(zuiSliderThumbBase, {\n variants: {\n size: zuiSliderThumbSizes,\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n","\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useMemo,\n useRef,\n useState,\n type KeyboardEvent as ReactKeyboardEvent,\n type PointerEvent as ReactPointerEvent,\n type Ref,\n type RefObject,\n} from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type {\n RangeSliderProps,\n SliderCtx,\n SliderProps,\n SliderRangeProps,\n SliderThumbProps,\n SliderTrackProps,\n} from \"./types\";\nimport {\n sliderRangeVariants,\n sliderRootVariants,\n sliderThumbVariants,\n sliderTrackVariants,\n} from \"./variants\";\n\n/**\n * Restricts a numeric value to the inclusive interval [min, max].\n *\n * Values below `min` become `min`; values above `max` become `max`.\n * This is used after pointer math and keyboard deltas so the slider\n * never reports values outside the configured domain.\n *\n * Examples (min = 0, max = 100):\n * - clamp(120, 0, 100) → 100 (capped at max)\n * - clamp(-10, 0, 100) → 0 (raised to min)\n * - clamp(42, 0, 100) → 42 (unchanged)\n */\nconst clamp = (value: number, min: number, max: number) => {\n return Math.min(max, Math.max(min, value));\n};\n\n/**\n * Maps an arbitrary number to the closest value aligned with `step`\n * relative to `min` (the “anchor” of the step grid).\n *\n * How it works:\n * 1. Measure how far `value` is from `min` in “step units”:\n * (value - min) / step\n * 2. Round to the nearest whole number of steps.\n * 3. Reconstruct: min + (rounded steps) * step\n *\n * Example: min = 0, step = 10, value = 23\n * - steps = round((23 - 0) / 10) = round(2.3) = 2\n * - result = 0 + 2 * 10 = 20\n *\n * Note: This does not enforce [min, max]; pair with `clamp` when needed.\n */\nconst snapToStep = (value: number, min: number, step: number) => {\n const steps = Math.round((value - min) / step);\n return min + steps * step;\n};\n\nconst SliderContext = createContext<SliderCtx | null>(null);\n\n/**\n * Reads slider context; throws a descriptive error if a sub-part is used\n * outside `<Slider>` (helps catch invalid composition early).\n */\nconst useSliderContext = (component: string): SliderCtx => {\n const ctx = useContext(SliderContext);\n if (!ctx) {\n throw new Error(`${component} must be used within <Slider>`);\n }\n return ctx;\n};\n\n/**\n * Converts a horizontal pointer position (viewport X) into a slider value\n * in [min, max], snapped to `step`.\n *\n * Pipeline:\n * 1. Read the track’s bounding box so all math uses the same coordinate\n * space as `clientX` (viewport coordinates from pointer events).\n * 2. Compute how far along the track the pointer sits as a ratio in [0, 1]:\n * (clientX - trackLeft) / trackWidth. If width is 0, ratio is 0 to avoid\n * division by zero.\n * 3. Linearly interpolate that ratio into the value domain:\n * raw = min + ratio * (max - min).\n * 4. Clamp `raw` to [min, max], then snap to the nearest valid step so the\n * result always matches discrete thumb positions.\n *\n * Worked example: track left = 100px, width = 200px, min = 0, max = 100,\n * pointer clientX = 150px\n * - ratio = (150 - 100) / 200 = 0.25\n * - raw = 0 + 0.25 * (100 - 0) = 25\n * - After clamp + snap (e.g. step 1), result stays 25\n */\nconst computeValueFromPointer = (\n clientX: number,\n track: HTMLDivElement,\n min: number,\n max: number,\n step: number,\n) => {\n const rect = track.getBoundingClientRect();\n\n const ratio = rect.width === 0 ? 0 : (clientX - rect.left) / rect.width;\n\n const raw = min + ratio * (max - min);\n\n return snapToStep(clamp(raw, min, max), min, step);\n};\n\n/**\n * Root primitive for a single-value slider. Provides context (bounds, value,\n * disabled state, track ref) to `SliderTrack`, `SliderRange`, and `SliderThumb`.\n */\nexport function Slider({\n className,\n size = \"md\",\n min = 0,\n max = 100,\n step = 1,\n value: valueProp,\n defaultValue,\n onValueChange,\n disabled = false,\n appearance = \"default\",\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n children,\n ref,\n ...rest\n}: SliderProps & { ref?: Ref<HTMLDivElement> }) {\n const trackRef = useRef<HTMLDivElement | null>(null);\n const isControlled = valueProp !== undefined;\n\n /**\n * Mode selection (React’s standard controlled/uncontrolled pattern):\n *\n * - Controlled: `value` is passed from the parent. The parent is the source\n * of truth; local state is not updated on drag. Use `onValueChange` to\n * persist updates upward (e.g. into React state or a form library).\n *\n * - Uncontrolled: `value` is omitted. `defaultValue` (or `min` if absent)\n * seeds internal state; drags and keyboard updates write to that state\n * directly. `onValueChange` is still optional for side effects.\n *\n * Examples:\n * - Controlled: `<Slider value={50} onValueChange={setX} />`\n * - Uncontrolled: `<Slider defaultValue={50} />`\n */\n\n const [uncontrolled, setUncontrolled] = useState(defaultValue ?? min);\n\n const value = isControlled ? (valueProp as number) : uncontrolled;\n\n const setValue = useCallback(\n (next: number) => {\n /**\n * Normalizes a candidate value before committing it:\n * 1. Snap to the nearest step anchored at `min`.\n * 2. Clamp into [min, max] so overshoots from keyboard or programmatic\n * calls cannot escape the domain.\n * 3. If uncontrolled, mirror the result into local state so the thumb\n * and range visuals stay in sync.\n * 4. Always invoke `onValueChange` when provided so parents receive the\n * canonical value (even in controlled mode, after normalization).\n *\n * Example: min = 0, max = 100, step = 10, next = 27\n * → snap to 30 → clamp still 30 → emitted value 30\n */\n\n const clamped = clamp(snapToStep(next, min, step), min, max);\n\n if (!isControlled) {\n setUncontrolled(clamped);\n }\n\n onValueChange?.(clamped);\n },\n [isControlled, max, min, onValueChange, step],\n );\n\n const ctx = useMemo(\n () => ({\n min,\n max,\n step,\n\n /**\n * Context consumers always see a value that is on-step and in-range.\n * If a controlled parent passes an out-of-band number (e.g. stale props\n * or a bug), we still render thumbs and ARIA attributes consistently\n * with the same snap/clamp rules as pointer and keyboard input.\n */\n value: clamp(snapToStep(value, min, step), min, max),\n\n setValue,\n disabled,\n size: size ?? \"md\",\n appearance: appearance ?? \"default\",\n trackRef,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n }),\n [\n appearance,\n ariaLabel,\n ariaLabelledBy,\n disabled,\n max,\n min,\n setValue,\n size,\n step,\n value,\n ],\n );\n\n return (\n <SliderContext.Provider value={ctx}>\n <div\n ref={ref}\n data-slot=\"slider\"\n role=\"group\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={cn(sliderRootVariants({ size }), className)}\n {...rest}\n >\n {children}\n </div>\n </SliderContext.Provider>\n );\n}\n\nSlider.displayName = \"Slider\";\n\n/**\n * The interactive rail whose geometry defines how pointer X maps to values.\n * Assigns the DOM node to context `trackRef` so thumbs can measure it.\n */\nexport function SliderTrack({\n className,\n ref: refProp,\n ...rest\n}: SliderTrackProps & { ref?: Ref<HTMLDivElement> }) {\n const { size, trackRef } = useSliderContext(\"SliderTrack\");\n\n return (\n <div\n ref={(node) => {\n trackRef.current = node;\n if (typeof refProp === \"function\") {\n refProp(node);\n } else if (refProp) {\n (refProp as RefObject<HTMLDivElement | null>).current = node;\n }\n }}\n data-slot=\"slider-track\"\n className={cn(sliderTrackVariants({ size }), className)}\n {...rest}\n />\n );\n}\n\nSliderTrack.displayName = \"SliderTrack\";\n\n/** Filled portion from the start of the track up to the current value (width %). */\nexport function SliderRange({\n className,\n ref,\n ...rest\n}: SliderRangeProps & { ref?: Ref<HTMLDivElement> }) {\n const { min, max, value, appearance } = useSliderContext(\"SliderRange\");\n\n /**\n * Percentage along the track (0–100) representing the current value.\n *\n * Formula: ((value - min) / (max - min)) * 100. When min === max the range\n * is degenerate; we treat the percentage as 0 to avoid NaN.\n *\n * For the single-thumb slider, this percentage becomes the **width** of\n * the filled range segment (from the start of the track to the thumb).\n * The thumb itself uses the same mapping in `SliderThumb` for `left`.\n */\n const pct = max === min ? 0 : ((value - min) / (max - min)) * 100;\n\n return (\n <div\n ref={ref}\n data-slot=\"slider-range\"\n className={cn(sliderRangeVariants({ appearance }), className)}\n style={{ width: `${pct}%` }}\n {...rest}\n />\n );\n}\n\nSliderRange.displayName = \"SliderRange\";\n\n/**\n * Draggable thumb with ARIA `role=\"slider\"`. Handles pointer drag (via window\n * listeners) and keyboard increments consistent with `min` / `max` / `step`.\n */\nexport function SliderThumb({\n className,\n ref: refProp,\n ...rest\n}: SliderThumbProps & { ref?: Ref<HTMLDivElement> }) {\n const {\n min,\n max,\n value,\n step,\n setValue,\n disabled,\n size,\n trackRef,\n \"aria-label\": sliderAriaLabel,\n \"aria-labelledby\": sliderAriaLabelledBy,\n } = useSliderContext(\"SliderThumb\");\n /** Horizontal thumb position; same mapping as `SliderRange` width uses. */\n const pct = max === min ? 0 : ((value - min) / (max - min)) * 100;\n\n const onPointerDown = useCallback(\n (event: ReactPointerEvent<HTMLDivElement>) => {\n if (disabled) return;\n\n event.preventDefault();\n\n const track = trackRef.current;\n if (!track) return;\n\n /**\n * Keep receiving pointer events for this pointer id even when the\n * cursor leaves the thumb. Without capture, dragging quickly could\n * “drop” the thumb when the pointer exits the small hit target.\n */\n event.currentTarget.setPointerCapture(event.pointerId);\n\n const move = (e: PointerEvent) => {\n /**\n * On each move, project the pointer X onto the track geometry, then\n * run the same snap/clamp pipeline as a click would. `setValue`\n * deduplicates invalid states for controlled parents.\n */\n setValue(computeValueFromPointer(e.clientX, track, min, max, step));\n };\n\n const up = () => {\n /** Tear down window listeners once the gesture ends (any button). */\n window.removeEventListener(\"pointermove\", move);\n window.removeEventListener(\"pointerup\", up);\n };\n\n window.addEventListener(\"pointermove\", move);\n window.addEventListener(\"pointerup\", up);\n },\n [disabled, max, min, setValue, step, trackRef],\n );\n\n const onKeyDown = useCallback(\n (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (disabled) return;\n\n /**\n * Page Up / Page Down move by one tenth of the value span (not one\n * tenth of the thumb travel). This scales with custom min/max ranges.\n */\n const big = (max - min) / 10;\n\n let delta = 0;\n\n /**\n * Keyboard model (WAI-ARIA slider conventions, adapted to our step):\n * - Arrow Right / Up: increase by one `step`.\n * - Arrow Left / Down: decrease by one `step`.\n * - Page Up / Down: coarse adjust by `big` (±10% of range).\n * - Home / End: jump to min or max (bypasses incremental delta).\n * Unrecognized keys are ignored without calling `preventDefault`.\n */\n if (event.key === \"ArrowRight\" || event.key === \"ArrowUp\") {\n delta = step;\n } else if (event.key === \"ArrowLeft\" || event.key === \"ArrowDown\") {\n delta = -step;\n } else if (event.key === \"PageUp\") {\n delta = big;\n } else if (event.key === \"PageDown\") {\n delta = -big;\n } else if (event.key === \"Home\") {\n event.preventDefault();\n setValue(min);\n return;\n } else if (event.key === \"End\") {\n event.preventDefault();\n setValue(max);\n return;\n } else {\n return;\n }\n\n event.preventDefault();\n\n /**\n * Apply the accumulated delta on top of the current value; `setValue`\n * performs snap + clamp so the outcome is always valid.\n *\n * Illustration with min = 0, max = 100, step = 10, value = 40:\n * - ArrowRight: delta +10 → candidate 50 → stays 50\n * - ArrowLeft: delta -10 → candidate 30\n * - PageUp: delta +10 (when big = 10) → 50; PageDown → 30\n * - Home / End handled above with direct `setValue(min|max)`\n */\n setValue(value + delta);\n },\n [disabled, max, min, setValue, step, value],\n );\n\n return (\n <div\n ref={(node) => {\n if (typeof refProp === \"function\") {\n refProp(node);\n } else if (refProp) {\n (refProp as RefObject<HTMLDivElement | null>).current = node;\n }\n }}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n data-slot=\"slider-thumb\"\n aria-label={sliderAriaLabel}\n aria-labelledby={sliderAriaLabelledBy}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-disabled={disabled || undefined}\n className={cn(\n \"absolute top-1/2 z-10 -translate-x-1/2 -translate-y-1/2\",\n sliderThumbVariants({ size }),\n className,\n )}\n style={{ left: `${pct}%` }}\n onPointerDown={onPointerDown}\n onKeyDown={onKeyDown}\n {...rest}\n />\n );\n}\n\nSliderThumb.displayName = \"SliderThumb\";\n\n/**\n * Two-thumb range control on one track. Inlines track/range for layout speed;\n * thumbs delegate drag math through `moveThumb` / `setPair` to keep ordering\n * and snapping identical to the single slider helpers.\n */\nexport function RangeSlider({\n className,\n size = \"md\",\n min = 0,\n max = 100,\n step = 1,\n value: valueProp,\n defaultValue,\n onValueChange,\n disabled = false,\n appearance = \"default\",\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n ref,\n ...rest\n}: RangeSliderProps & { ref?: Ref<HTMLDivElement> }) {\n const trackRef = useRef<HTMLDivElement | null>(null);\n const isControlled = valueProp !== undefined;\n const [uncontrolled, setUncontrolled] = useState<[number, number]>(() => {\n const seed = defaultValue ?? [min, max];\n\n /**\n * Initial pair: normalize each endpoint independently so both ends sit\n * on the step grid and respect [min, max] before any ordering logic runs.\n *\n * Example: min = 0, max = 100, step = 10, seed[0] = 85\n * → snap to 80 → clamp still 80.\n */\n const lo = clamp(snapToStep(seed[0], min, step), min, max);\n const hi = clamp(snapToStep(seed[1], min, step), min, max);\n\n /**\n * Canonical order is always [lower, higher]. If the consumer passes\n * reversed defaults (e.g. [80, 20]), we swap so downstream math assumes\n * lo ≤ hi for range width and thumb assignment.\n */\n return lo <= hi ? [lo, hi] : [hi, lo];\n });\n\n const value = isControlled ? (valueProp as [number, number]) : uncontrolled;\n\n /**\n * Derive ordered endpoints for rendering and hit-testing math. Controlled\n * parents might briefly pass reversed tuples; we normalize every render so\n * `lo` is the left/low thumb and `hi` is the right/high thumb.\n */\n const [lo, hi] =\n value[0] <= value[1] ? [value[0], value[1]] : [value[1], value[0]];\n\n /**\n * Commits a new [low, high] pair: used by drags, keyboard nudges, and\n * internal clamping. Each thumb only mutates its own side, but we always\n * pass through here so both values stay snapped and ordered.\n *\n * Example: current [20, 80], dragging the low thumb\n * → calls like setPair([newLow, 80]); the high endpoint is preserved until\n * the other thumb moves.\n */\n const setPair = useCallback(\n (next: [number, number]) => {\n /**\n * Per-endpoint snap + clamp, same rules as the single slider. Handles\n * overshoot from pointer projection or programmatic updates.\n *\n * Example: min = 0, max = 100, step = 10, next = [27, 85]\n * → [30, 80] after snap/clamp (85 cannot exceed max but also snaps down).\n */\n const a = clamp(snapToStep(next[0], min, step), min, max);\n const b = clamp(snapToStep(next[1], min, step), min, max);\n\n /**\n * Re-order after independent normalization so the tuple is always\n * [smaller, larger], keeping the range bar width non-negative.\n */\n const ordered: [number, number] = a <= b ? [a, b] : [b, a];\n if (!isControlled) {\n setUncontrolled(ordered);\n }\n onValueChange?.(ordered);\n },\n [isControlled, max, min, onValueChange, step],\n );\n\n const moveThumb = useCallback(\n (index: 0 | 1, clientX: number) => {\n const track = trackRef.current;\n if (!track) return;\n\n const raw = computeValueFromPointer(clientX, track, min, max, step);\n\n /**\n * Which thumb is active is explicit (`index`), so we only replace that\n * side of the pair and keep the opposite endpoint fixed. `setPair` will\n * still snap/clamp and may collapse the range if thumbs cross (handled\n * by ordering inside `setPair`).\n *\n * index 0: low thumb → `[raw, hi]`\n * index 1: high thumb → `[lo, raw]`\n */\n if (index === 0) {\n setPair([raw, hi]);\n } else {\n setPair([lo, raw]);\n }\n },\n [hi, lo, max, min, setPair, step],\n );\n\n /**\n * Map both endpoints to percentages along the track for layout:\n * - `left` on the range fill uses `loPct` (where the selected interval starts).\n * - `width` uses `hiPct - loPct` (how wide the interval is), floored at 0\n * if the thumbs coincide.\n *\n * Example: min = 0, max = 100, lo = 20, hi = 80\n * - loPct = 20%, hiPct = 80%\n * - Range bar: left 20%, width 60%\n */\n const loPct = ((lo - min) / (max - min)) * 100;\n const hiPct = ((hi - min) / (max - min)) * 100;\n\n const resolvedSize = size ?? \"md\";\n\n const lowThumbAriaLabel =\n ariaLabel !== undefined ? `${ariaLabel}, minimum` : undefined;\n const highThumbAriaLabel =\n ariaLabel !== undefined ? `${ariaLabel}, maximum` : undefined;\n const thumbAriaLabelledBy =\n ariaLabel === undefined ? ariaLabelledBy : undefined;\n\n return (\n <div\n ref={ref}\n data-slot=\"range-slider\"\n role=\"group\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={cn(sliderRootVariants({ size: resolvedSize }), className)}\n {...rest}\n >\n <div\n ref={trackRef}\n data-slot=\"slider-track\"\n className={cn(sliderTrackVariants({ size: resolvedSize }), \"relative\")}\n >\n <div\n data-slot=\"slider-range\"\n className={cn(sliderRangeVariants({ appearance }), \"absolute\")}\n style={{\n left: `${loPct}%`,\n width: `${Math.max(hiPct - loPct, 0)}%`,\n }}\n />\n <RangeThumb\n disabled={disabled}\n size={resolvedSize}\n value={lo}\n min={min}\n max={max}\n step={step}\n positionPct={loPct}\n trackRef={trackRef}\n onMoveClientX={(x) => moveThumb(0, x)}\n onNudge={(delta) => setPair([lo + delta, hi])}\n aria-label={lowThumbAriaLabel}\n aria-labelledby={thumbAriaLabelledBy}\n />\n <RangeThumb\n disabled={disabled}\n size={resolvedSize}\n value={hi}\n min={min}\n max={max}\n step={step}\n positionPct={hiPct}\n trackRef={trackRef}\n onMoveClientX={(x) => moveThumb(1, x)}\n onNudge={(delta) => setPair([lo, hi + delta])}\n aria-label={highThumbAriaLabel}\n aria-labelledby={thumbAriaLabelledBy}\n />\n </div>\n </div>\n );\n}\n\nRangeSlider.displayName = \"RangeSlider\";\n\ntype RangeThumbProps = {\n disabled: boolean;\n size: \"sm\" | \"md\" | \"lg\";\n value: number;\n min: number;\n max: number;\n step: number;\n positionPct: number;\n trackRef: RefObject<HTMLDivElement | null>;\n /** Called on pointer move with viewport X; parent decides which bound updates. */\n onMoveClientX: (clientX: number) => void;\n /** Relative keyboard adjustment in value units; parent merges into the pair. */\n onNudge: (delta: number) => void;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n};\n\n/** Private thumb implementation shared by the low and high endpoints. */\nfunction RangeThumb({\n disabled,\n size,\n value,\n min,\n max,\n step,\n positionPct,\n trackRef,\n onMoveClientX,\n onNudge,\n \"aria-label\": thumbAriaLabel,\n \"aria-labelledby\": thumbAriaLabelledBy,\n}: RangeThumbProps) {\n const onPointerDown = useCallback(\n (event: ReactPointerEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n event.preventDefault();\n const track = trackRef.current;\n if (!track) {\n return;\n }\n /** Same capture strategy as `SliderThumb` for reliable dragging. */\n event.currentTarget.setPointerCapture(event.pointerId);\n const move = (e: PointerEvent) => {\n /** Parent maps X → new value for this thumb only. */\n onMoveClientX(e.clientX);\n };\n const up = () => {\n window.removeEventListener(\"pointermove\", move);\n window.removeEventListener(\"pointerup\", up);\n };\n window.addEventListener(\"pointermove\", move);\n window.addEventListener(\"pointerup\", up);\n },\n [disabled, onMoveClientX, trackRef],\n );\n\n const onKeyDown = useCallback(\n (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n /**\n * Keyboard deltas mirror the single-thumb slider, but we express jumps\n * as `onNudge(min - value)` / `onNudge(max - value)` so Home/End move\n * **this** thumb to the domain edge without hardcoding sibling values.\n */\n const big = (max - min) / 10;\n let delta = 0;\n if (event.key === \"ArrowRight\" || event.key === \"ArrowUp\") {\n delta = step;\n } else if (event.key === \"ArrowLeft\" || event.key === \"ArrowDown\") {\n delta = -step;\n } else if (event.key === \"PageUp\") {\n delta = big;\n } else if (event.key === \"PageDown\") {\n delta = -big;\n } else if (event.key === \"Home\") {\n event.preventDefault();\n onNudge(min - value);\n return;\n } else if (event.key === \"End\") {\n event.preventDefault();\n onNudge(max - value);\n return;\n } else {\n return;\n }\n event.preventDefault();\n onNudge(delta);\n },\n [disabled, max, min, onNudge, step, value],\n );\n\n return (\n <div\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n data-slot=\"range-slider-thumb\"\n aria-label={thumbAriaLabel}\n aria-labelledby={thumbAriaLabelledBy}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-disabled={disabled || undefined}\n className={cn(\n \"absolute top-1/2 z-10 -translate-x-1/2 -translate-y-1/2\",\n sliderThumbVariants({ size }),\n )}\n style={{ left: `${positionPct}%` }}\n onPointerDown={onPointerDown}\n onKeyDown={onKeyDown}\n />\n );\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/ui/slider/variants.ts","../../src/ui/slider/slider.tsx"],"names":["cva","zuiSliderRootBase","zuiSliderRootSizes","zuiSliderTrackBase","zuiSliderTrackSizes","zuiSliderRangeBase","zuiSliderRangeAppearances","zuiSliderThumbBase","zuiSliderThumbSizes","createContext","useContext","useRef","useState","useCallback","useMemo","jsx","cn","lo","hi","jsxs"],"mappings":"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","file":"slider.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nimport {\n zuiSliderRangeAppearances,\n zuiSliderRangeBase,\n zuiSliderRootBase,\n zuiSliderRootSizes,\n zuiSliderThumbBase,\n zuiSliderThumbSizes,\n zuiSliderTrackBase,\n zuiSliderTrackSizes,\n} from \"../../design-system/slider\";\n\nexport const sliderRootVariants = cva(zuiSliderRootBase, {\n variants: {\n size: zuiSliderRootSizes,\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\nexport const sliderTrackVariants = cva(zuiSliderTrackBase, {\n variants: {\n size: zuiSliderTrackSizes,\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\nexport const sliderRangeVariants = cva(zuiSliderRangeBase, {\n variants: {\n appearance: zuiSliderRangeAppearances,\n },\n defaultVariants: {\n appearance: \"default\",\n },\n});\n\nexport const sliderThumbVariants = cva(zuiSliderThumbBase, {\n variants: {\n size: zuiSliderThumbSizes,\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n","\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useMemo,\n useRef,\n useState,\n type KeyboardEvent as ReactKeyboardEvent,\n type PointerEvent as ReactPointerEvent,\n type Ref,\n type RefObject,\n} from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type {\n RangeSliderProps,\n SliderCtx,\n SliderProps,\n SliderRangeProps,\n SliderThumbProps,\n SliderTrackProps,\n} from \"./types\";\nimport {\n sliderRangeVariants,\n sliderRootVariants,\n sliderThumbVariants,\n sliderTrackVariants,\n} from \"./variants\";\n\n/**\n * Restricts a numeric value to the inclusive interval [min, max].\n *\n * Values below `min` become `min`; values above `max` become `max`.\n * This is used after pointer math and keyboard deltas so the slider\n * never reports values outside the configured domain.\n *\n * Examples (min = 0, max = 100):\n * - clamp(120, 0, 100) → 100 (capped at max)\n * - clamp(-10, 0, 100) → 0 (raised to min)\n * - clamp(42, 0, 100) → 42 (unchanged)\n */\nconst clamp = (value: number, min: number, max: number) => {\n return Math.min(max, Math.max(min, value));\n};\n\n/**\n * Maps an arbitrary number to the closest value aligned with `step`\n * relative to `min` (the “anchor” of the step grid).\n *\n * How it works:\n * 1. Measure how far `value` is from `min` in “step units”:\n * (value - min) / step\n * 2. Round to the nearest whole number of steps.\n * 3. Reconstruct: min + (rounded steps) * step\n *\n * Example: min = 0, step = 10, value = 23\n * - steps = round((23 - 0) / 10) = round(2.3) = 2\n * - result = 0 + 2 * 10 = 20\n *\n * Note: This does not enforce [min, max]; pair with `clamp` when needed.\n */\nconst snapToStep = (value: number, min: number, step: number) => {\n const steps = Math.round((value - min) / step);\n return min + steps * step;\n};\n\nconst SliderContext = createContext<SliderCtx | null>(null);\n\n/**\n * Reads slider context; throws a descriptive error if a sub-part is used\n * outside `<Slider>` (helps catch invalid composition early).\n */\nconst useSliderContext = (component: string): SliderCtx => {\n const ctx = useContext(SliderContext);\n if (!ctx) {\n throw new Error(`${component} must be used within <Slider>`);\n }\n return ctx;\n};\n\n/**\n * Converts a horizontal pointer position (viewport X) into a slider value\n * in [min, max], snapped to `step`.\n *\n * Pipeline:\n * 1. Read the track’s bounding box so all math uses the same coordinate\n * space as `clientX` (viewport coordinates from pointer events).\n * 2. Compute how far along the track the pointer sits as a ratio in [0, 1]:\n * (clientX - trackLeft) / trackWidth. If width is 0, ratio is 0 to avoid\n * division by zero.\n * 3. Linearly interpolate that ratio into the value domain:\n * raw = min + ratio * (max - min).\n * 4. Clamp `raw` to [min, max], then snap to the nearest valid step so the\n * result always matches discrete thumb positions.\n *\n * Worked example: track left = 100px, width = 200px, min = 0, max = 100,\n * pointer clientX = 150px\n * - ratio = (150 - 100) / 200 = 0.25\n * - raw = 0 + 0.25 * (100 - 0) = 25\n * - After clamp + snap (e.g. step 1), result stays 25\n */\nconst computeValueFromPointer = (\n clientX: number,\n track: HTMLDivElement,\n min: number,\n max: number,\n step: number,\n) => {\n const rect = track.getBoundingClientRect();\n\n const ratio = rect.width === 0 ? 0 : (clientX - rect.left) / rect.width;\n\n const raw = min + ratio * (max - min);\n\n return snapToStep(clamp(raw, min, max), min, step);\n};\n\n/**\n * Root primitive for a single-value slider. Provides context (bounds, value,\n * disabled state, track ref) to `SliderTrack`, `SliderRange`, and `SliderThumb`.\n */\nexport function Slider({\n className,\n size = \"md\",\n min = 0,\n max = 100,\n step = 1,\n value: valueProp,\n defaultValue,\n onValueChange,\n disabled = false,\n appearance = \"default\",\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n children,\n ref,\n ...rest\n}: SliderProps & { ref?: Ref<HTMLDivElement> }) {\n const trackRef = useRef<HTMLDivElement | null>(null);\n const isControlled = valueProp !== undefined;\n\n /**\n * Mode selection (React’s standard controlled/uncontrolled pattern):\n *\n * - Controlled: `value` is passed from the parent. The parent is the source\n * of truth; local state is not updated on drag. Use `onValueChange` to\n * persist updates upward (e.g. into React state or a form library).\n *\n * - Uncontrolled: `value` is omitted. `defaultValue` (or `min` if absent)\n * seeds internal state; drags and keyboard updates write to that state\n * directly. `onValueChange` is still optional for side effects.\n *\n * Examples:\n * - Controlled: `<Slider value={50} onValueChange={setX} />`\n * - Uncontrolled: `<Slider defaultValue={50} />`\n */\n\n const [uncontrolled, setUncontrolled] = useState(defaultValue ?? min);\n\n const value = isControlled ? (valueProp as number) : uncontrolled;\n\n const setValue = useCallback(\n (next: number) => {\n /**\n * Normalizes a candidate value before committing it:\n * 1. Snap to the nearest step anchored at `min`.\n * 2. Clamp into [min, max] so overshoots from keyboard or programmatic\n * calls cannot escape the domain.\n * 3. If uncontrolled, mirror the result into local state so the thumb\n * and range visuals stay in sync.\n * 4. Always invoke `onValueChange` when provided so parents receive the\n * canonical value (even in controlled mode, after normalization).\n *\n * Example: min = 0, max = 100, step = 10, next = 27\n * → snap to 30 → clamp still 30 → emitted value 30\n */\n\n const clamped = clamp(snapToStep(next, min, step), min, max);\n\n if (!isControlled) {\n setUncontrolled(clamped);\n }\n\n onValueChange?.(clamped);\n },\n [isControlled, max, min, onValueChange, step],\n );\n\n const ctx = useMemo(\n () => ({\n min,\n max,\n step,\n\n /**\n * Context consumers always see a value that is on-step and in-range.\n * If a controlled parent passes an out-of-band number (e.g. stale props\n * or a bug), we still render thumbs and ARIA attributes consistently\n * with the same snap/clamp rules as pointer and keyboard input.\n */\n value: clamp(snapToStep(value, min, step), min, max),\n\n setValue,\n disabled,\n size: size ?? \"md\",\n appearance: appearance ?? \"default\",\n trackRef,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n }),\n [\n appearance,\n ariaLabel,\n ariaLabelledBy,\n disabled,\n max,\n min,\n setValue,\n size,\n step,\n value,\n ],\n );\n\n return (\n <SliderContext.Provider value={ctx}>\n <div\n ref={ref}\n data-slot=\"slider\"\n role=\"group\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={cn(sliderRootVariants({ size }), className)}\n {...rest}\n >\n {children}\n </div>\n </SliderContext.Provider>\n );\n}\n\nSlider.displayName = \"Slider\";\n\n/**\n * The interactive rail whose geometry defines how pointer X maps to values.\n * Assigns the DOM node to context `trackRef` so thumbs can measure it.\n */\nexport function SliderTrack({\n className,\n ref: refProp,\n ...rest\n}: SliderTrackProps & { ref?: Ref<HTMLDivElement> }) {\n const { size, trackRef } = useSliderContext(\"SliderTrack\");\n\n return (\n <div\n ref={(node) => {\n trackRef.current = node;\n if (typeof refProp === \"function\") {\n refProp(node);\n } else if (refProp) {\n (refProp as RefObject<HTMLDivElement | null>).current = node;\n }\n }}\n data-slot=\"slider-track\"\n className={cn(sliderTrackVariants({ size }), className)}\n {...rest}\n />\n );\n}\n\nSliderTrack.displayName = \"SliderTrack\";\n\n/** Filled portion from the start of the track up to the current value (width %). */\nexport function SliderRange({\n className,\n ref,\n ...rest\n}: SliderRangeProps & { ref?: Ref<HTMLDivElement> }) {\n const { min, max, value, appearance } = useSliderContext(\"SliderRange\");\n\n /**\n * Percentage along the track (0–100) representing the current value.\n *\n * Formula: ((value - min) / (max - min)) * 100. When min === max the range\n * is degenerate; we treat the percentage as 0 to avoid NaN.\n *\n * For the single-thumb slider, this percentage becomes the **width** of\n * the filled range segment (from the start of the track to the thumb).\n * The thumb itself uses the same mapping in `SliderThumb` for `left`.\n */\n const pct = max === min ? 0 : ((value - min) / (max - min)) * 100;\n\n return (\n <div\n ref={ref}\n data-slot=\"slider-range\"\n className={cn(sliderRangeVariants({ appearance }), className)}\n style={{ width: `${pct}%` }}\n {...rest}\n />\n );\n}\n\nSliderRange.displayName = \"SliderRange\";\n\n/**\n * Draggable thumb with ARIA `role=\"slider\"`. Handles pointer drag (via window\n * listeners) and keyboard increments consistent with `min` / `max` / `step`.\n */\nexport function SliderThumb({\n className,\n ref: refProp,\n ...rest\n}: SliderThumbProps & { ref?: Ref<HTMLDivElement> }) {\n const {\n min,\n max,\n value,\n step,\n setValue,\n disabled,\n size,\n trackRef,\n \"aria-label\": sliderAriaLabel,\n \"aria-labelledby\": sliderAriaLabelledBy,\n } = useSliderContext(\"SliderThumb\");\n /** Horizontal thumb position; same mapping as `SliderRange` width uses. */\n const pct = max === min ? 0 : ((value - min) / (max - min)) * 100;\n\n const onPointerDown = useCallback(\n (event: ReactPointerEvent<HTMLDivElement>) => {\n if (disabled) return;\n\n event.preventDefault();\n\n const track = trackRef.current;\n if (!track) return;\n\n /**\n * Keep receiving pointer events for this pointer id even when the\n * cursor leaves the thumb. Without capture, dragging quickly could\n * “drop” the thumb when the pointer exits the small hit target.\n */\n event.currentTarget.setPointerCapture(event.pointerId);\n\n const move = (e: PointerEvent) => {\n /**\n * On each move, project the pointer X onto the track geometry, then\n * run the same snap/clamp pipeline as a click would. `setValue`\n * deduplicates invalid states for controlled parents.\n */\n setValue(computeValueFromPointer(e.clientX, track, min, max, step));\n };\n\n const up = () => {\n /** Tear down window listeners once the gesture ends (any button). */\n window.removeEventListener(\"pointermove\", move);\n window.removeEventListener(\"pointerup\", up);\n };\n\n window.addEventListener(\"pointermove\", move);\n window.addEventListener(\"pointerup\", up);\n },\n [disabled, max, min, setValue, step, trackRef],\n );\n\n const onKeyDown = useCallback(\n (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (disabled) return;\n\n /**\n * Page Up / Page Down move by one tenth of the value span (not one\n * tenth of the thumb travel). This scales with custom min/max ranges.\n */\n const big = (max - min) / 10;\n\n let delta = 0;\n\n /**\n * Keyboard model (WAI-ARIA slider conventions, adapted to our step):\n * - Arrow Right / Up: increase by one `step`.\n * - Arrow Left / Down: decrease by one `step`.\n * - Page Up / Down: coarse adjust by `big` (±10% of range).\n * - Home / End: jump to min or max (bypasses incremental delta).\n * Unrecognized keys are ignored without calling `preventDefault`.\n */\n if (event.key === \"ArrowRight\" || event.key === \"ArrowUp\") {\n delta = step;\n } else if (event.key === \"ArrowLeft\" || event.key === \"ArrowDown\") {\n delta = -step;\n } else if (event.key === \"PageUp\") {\n delta = big;\n } else if (event.key === \"PageDown\") {\n delta = -big;\n } else if (event.key === \"Home\") {\n event.preventDefault();\n setValue(min);\n return;\n } else if (event.key === \"End\") {\n event.preventDefault();\n setValue(max);\n return;\n } else {\n return;\n }\n\n event.preventDefault();\n\n /**\n * Apply the accumulated delta on top of the current value; `setValue`\n * performs snap + clamp so the outcome is always valid.\n *\n * Illustration with min = 0, max = 100, step = 10, value = 40:\n * - ArrowRight: delta +10 → candidate 50 → stays 50\n * - ArrowLeft: delta -10 → candidate 30\n * - PageUp: delta +10 (when big = 10) → 50; PageDown → 30\n * - Home / End handled above with direct `setValue(min|max)`\n */\n setValue(value + delta);\n },\n [disabled, max, min, setValue, step, value],\n );\n\n return (\n <div\n ref={(node) => {\n if (typeof refProp === \"function\") {\n refProp(node);\n } else if (refProp) {\n (refProp as RefObject<HTMLDivElement | null>).current = node;\n }\n }}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n data-slot=\"slider-thumb\"\n aria-label={sliderAriaLabel}\n aria-labelledby={sliderAriaLabelledBy}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-disabled={disabled || undefined}\n className={cn(\n \"absolute top-1/2 z-10 -translate-x-1/2 -translate-y-1/2\",\n sliderThumbVariants({ size }),\n className,\n )}\n style={{ left: `${pct}%` }}\n onPointerDown={onPointerDown}\n onKeyDown={onKeyDown}\n {...rest}\n />\n );\n}\n\nSliderThumb.displayName = \"SliderThumb\";\n\n/**\n * Two-thumb range control on one track. Inlines track/range for layout speed;\n * thumbs delegate drag math through `moveThumb` / `setPair` to keep ordering\n * and snapping identical to the single slider helpers.\n */\nexport function RangeSlider({\n className,\n size = \"md\",\n min = 0,\n max = 100,\n step = 1,\n value: valueProp,\n defaultValue,\n onValueChange,\n disabled = false,\n appearance = \"default\",\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n ref,\n ...rest\n}: RangeSliderProps & { ref?: Ref<HTMLDivElement> }) {\n const trackRef = useRef<HTMLDivElement | null>(null);\n const isControlled = valueProp !== undefined;\n const [uncontrolled, setUncontrolled] = useState<[number, number]>(() => {\n const seed = defaultValue ?? [min, max];\n\n /**\n * Initial pair: normalize each endpoint independently so both ends sit\n * on the step grid and respect [min, max] before any ordering logic runs.\n *\n * Example: min = 0, max = 100, step = 10, seed[0] = 85\n * → snap to 80 → clamp still 80.\n */\n const lo = clamp(snapToStep(seed[0], min, step), min, max);\n const hi = clamp(snapToStep(seed[1], min, step), min, max);\n\n /**\n * Canonical order is always [lower, higher]. If the consumer passes\n * reversed defaults (e.g. [80, 20]), we swap so downstream math assumes\n * lo ≤ hi for range width and thumb assignment.\n */\n return lo <= hi ? [lo, hi] : [hi, lo];\n });\n\n const value = isControlled ? (valueProp as [number, number]) : uncontrolled;\n\n /**\n * Derive ordered endpoints for rendering and hit-testing math. Controlled\n * parents might briefly pass reversed tuples; we normalize every render so\n * `lo` is the left/low thumb and `hi` is the right/high thumb.\n */\n const [lo, hi] =\n value[0] <= value[1] ? [value[0], value[1]] : [value[1], value[0]];\n\n /**\n * Commits a new [low, high] pair: used by drags, keyboard nudges, and\n * internal clamping. Each thumb only mutates its own side, but we always\n * pass through here so both values stay snapped and ordered.\n *\n * Example: current [20, 80], dragging the low thumb\n * → calls like setPair([newLow, 80]); the high endpoint is preserved until\n * the other thumb moves.\n */\n const setPair = useCallback(\n (next: [number, number]) => {\n /**\n * Per-endpoint snap + clamp, same rules as the single slider. Handles\n * overshoot from pointer projection or programmatic updates.\n *\n * Example: min = 0, max = 100, step = 10, next = [27, 85]\n * → [30, 80] after snap/clamp (85 cannot exceed max but also snaps down).\n */\n const a = clamp(snapToStep(next[0], min, step), min, max);\n const b = clamp(snapToStep(next[1], min, step), min, max);\n\n /**\n * Re-order after independent normalization so the tuple is always\n * [smaller, larger], keeping the range bar width non-negative.\n */\n const ordered: [number, number] = a <= b ? [a, b] : [b, a];\n if (!isControlled) {\n setUncontrolled(ordered);\n }\n onValueChange?.(ordered);\n },\n [isControlled, max, min, onValueChange, step],\n );\n\n const moveThumb = useCallback(\n (index: 0 | 1, clientX: number) => {\n const track = trackRef.current;\n if (!track) return;\n\n const raw = computeValueFromPointer(clientX, track, min, max, step);\n\n /**\n * Which thumb is active is explicit (`index`), so we only replace that\n * side of the pair and keep the opposite endpoint fixed. `setPair` will\n * still snap/clamp and may collapse the range if thumbs cross (handled\n * by ordering inside `setPair`).\n *\n * index 0: low thumb → `[raw, hi]`\n * index 1: high thumb → `[lo, raw]`\n */\n if (index === 0) {\n setPair([raw, hi]);\n } else {\n setPair([lo, raw]);\n }\n },\n [hi, lo, max, min, setPair, step],\n );\n\n /**\n * Map both endpoints to percentages along the track for layout:\n * - `left` on the range fill uses `loPct` (where the selected interval starts).\n * - `width` uses `hiPct - loPct` (how wide the interval is), floored at 0\n * if the thumbs coincide.\n *\n * Example: min = 0, max = 100, lo = 20, hi = 80\n * - loPct = 20%, hiPct = 80%\n * - Range bar: left 20%, width 60%\n */\n const loPct = ((lo - min) / (max - min)) * 100;\n const hiPct = ((hi - min) / (max - min)) * 100;\n\n const resolvedSize = size ?? \"md\";\n\n const lowThumbAriaLabel =\n ariaLabel !== undefined ? `${ariaLabel}, minimum` : undefined;\n const highThumbAriaLabel =\n ariaLabel !== undefined ? `${ariaLabel}, maximum` : undefined;\n const thumbAriaLabelledBy =\n ariaLabel === undefined ? ariaLabelledBy : undefined;\n\n return (\n <div\n ref={ref}\n data-slot=\"range-slider\"\n role=\"group\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={cn(sliderRootVariants({ size: resolvedSize }), className)}\n {...rest}\n >\n <div\n ref={trackRef}\n data-slot=\"slider-track\"\n className={cn(sliderTrackVariants({ size: resolvedSize }), \"relative\")}\n >\n <div\n data-slot=\"slider-range\"\n className={cn(sliderRangeVariants({ appearance }), \"absolute\")}\n style={{\n left: `${loPct}%`,\n width: `${Math.max(hiPct - loPct, 0)}%`,\n }}\n />\n <RangeThumb\n disabled={disabled}\n size={resolvedSize}\n value={lo}\n min={min}\n max={max}\n step={step}\n positionPct={loPct}\n trackRef={trackRef}\n onMoveClientX={(x) => moveThumb(0, x)}\n onNudge={(delta) => setPair([lo + delta, hi])}\n aria-label={lowThumbAriaLabel}\n aria-labelledby={thumbAriaLabelledBy}\n />\n <RangeThumb\n disabled={disabled}\n size={resolvedSize}\n value={hi}\n min={min}\n max={max}\n step={step}\n positionPct={hiPct}\n trackRef={trackRef}\n onMoveClientX={(x) => moveThumb(1, x)}\n onNudge={(delta) => setPair([lo, hi + delta])}\n aria-label={highThumbAriaLabel}\n aria-labelledby={thumbAriaLabelledBy}\n />\n </div>\n </div>\n );\n}\n\nRangeSlider.displayName = \"RangeSlider\";\n\ntype RangeThumbProps = {\n disabled: boolean;\n size: \"sm\" | \"md\" | \"lg\";\n value: number;\n min: number;\n max: number;\n step: number;\n positionPct: number;\n trackRef: RefObject<HTMLDivElement | null>;\n /** Called on pointer move with viewport X; parent decides which bound updates. */\n onMoveClientX: (clientX: number) => void;\n /** Relative keyboard adjustment in value units; parent merges into the pair. */\n onNudge: (delta: number) => void;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n};\n\n/** Private thumb implementation shared by the low and high endpoints. */\nfunction RangeThumb({\n disabled,\n size,\n value,\n min,\n max,\n step,\n positionPct,\n trackRef,\n onMoveClientX,\n onNudge,\n \"aria-label\": thumbAriaLabel,\n \"aria-labelledby\": thumbAriaLabelledBy,\n}: RangeThumbProps) {\n const onPointerDown = useCallback(\n (event: ReactPointerEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n event.preventDefault();\n const track = trackRef.current;\n if (!track) {\n return;\n }\n /** Same capture strategy as `SliderThumb` for reliable dragging. */\n event.currentTarget.setPointerCapture(event.pointerId);\n const move = (e: PointerEvent) => {\n /** Parent maps X → new value for this thumb only. */\n onMoveClientX(e.clientX);\n };\n const up = () => {\n window.removeEventListener(\"pointermove\", move);\n window.removeEventListener(\"pointerup\", up);\n };\n window.addEventListener(\"pointermove\", move);\n window.addEventListener(\"pointerup\", up);\n },\n [disabled, onMoveClientX, trackRef],\n );\n\n const onKeyDown = useCallback(\n (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n /**\n * Keyboard deltas mirror the single-thumb slider, but we express jumps\n * as `onNudge(min - value)` / `onNudge(max - value)` so Home/End move\n * **this** thumb to the domain edge without hardcoding sibling values.\n */\n const big = (max - min) / 10;\n let delta = 0;\n if (event.key === \"ArrowRight\" || event.key === \"ArrowUp\") {\n delta = step;\n } else if (event.key === \"ArrowLeft\" || event.key === \"ArrowDown\") {\n delta = -step;\n } else if (event.key === \"PageUp\") {\n delta = big;\n } else if (event.key === \"PageDown\") {\n delta = -big;\n } else if (event.key === \"Home\") {\n event.preventDefault();\n onNudge(min - value);\n return;\n } else if (event.key === \"End\") {\n event.preventDefault();\n onNudge(max - value);\n return;\n } else {\n return;\n }\n event.preventDefault();\n onNudge(delta);\n },\n [disabled, max, min, onNudge, step, value],\n );\n\n return (\n <div\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n data-slot=\"range-slider-thumb\"\n aria-label={thumbAriaLabel}\n aria-labelledby={thumbAriaLabelledBy}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-disabled={disabled || undefined}\n className={cn(\n \"absolute top-1/2 z-10 -translate-x-1/2 -translate-y-1/2\",\n sliderThumbVariants({ size }),\n )}\n style={{ left: `${positionPct}%` }}\n onPointerDown={onPointerDown}\n onKeyDown={onKeyDown}\n />\n );\n}\n"]}
|