@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.
Files changed (1083) hide show
  1. package/README.md +8 -8
  2. package/cli/registry.json +0 -1
  3. package/dist/animations/blur-in.js +3 -2
  4. package/dist/animations/blur-in.js.map +1 -1
  5. package/dist/animations/blur-in.mjs +2 -1
  6. package/dist/animations/blur-in.mjs.map +1 -1
  7. package/dist/animations/blur-out.js +3 -2
  8. package/dist/animations/blur-out.js.map +1 -1
  9. package/dist/animations/blur-out.mjs +2 -1
  10. package/dist/animations/blur-out.mjs.map +1 -1
  11. package/dist/animations/bounce.js +3 -2
  12. package/dist/animations/bounce.js.map +1 -1
  13. package/dist/animations/bounce.mjs +2 -1
  14. package/dist/animations/bounce.mjs.map +1 -1
  15. package/dist/animations/fade-down.js +3 -2
  16. package/dist/animations/fade-down.js.map +1 -1
  17. package/dist/animations/fade-down.mjs +2 -1
  18. package/dist/animations/fade-down.mjs.map +1 -1
  19. package/dist/animations/fade-in.js +3 -2
  20. package/dist/animations/fade-in.js.map +1 -1
  21. package/dist/animations/fade-in.mjs +2 -1
  22. package/dist/animations/fade-in.mjs.map +1 -1
  23. package/dist/animations/fade-left.js +3 -2
  24. package/dist/animations/fade-left.js.map +1 -1
  25. package/dist/animations/fade-left.mjs +2 -1
  26. package/dist/animations/fade-left.mjs.map +1 -1
  27. package/dist/animations/fade-out.js +3 -2
  28. package/dist/animations/fade-out.js.map +1 -1
  29. package/dist/animations/fade-out.mjs +2 -1
  30. package/dist/animations/fade-out.mjs.map +1 -1
  31. package/dist/animations/fade-right.js +3 -2
  32. package/dist/animations/fade-right.js.map +1 -1
  33. package/dist/animations/fade-right.mjs +2 -1
  34. package/dist/animations/fade-right.mjs.map +1 -1
  35. package/dist/animations/fade-up.js +3 -2
  36. package/dist/animations/fade-up.js.map +1 -1
  37. package/dist/animations/fade-up.mjs +2 -1
  38. package/dist/animations/fade-up.mjs.map +1 -1
  39. package/dist/animations/flip-in.js +3 -2
  40. package/dist/animations/flip-in.js.map +1 -1
  41. package/dist/animations/flip-in.mjs +2 -1
  42. package/dist/animations/flip-in.mjs.map +1 -1
  43. package/dist/animations/flip.js +3 -2
  44. package/dist/animations/flip.js.map +1 -1
  45. package/dist/animations/flip.mjs +2 -1
  46. package/dist/animations/flip.mjs.map +1 -1
  47. package/dist/animations/float.js +3 -2
  48. package/dist/animations/float.js.map +1 -1
  49. package/dist/animations/float.mjs +2 -1
  50. package/dist/animations/float.mjs.map +1 -1
  51. package/dist/animations/hover-lift.js +3 -2
  52. package/dist/animations/hover-lift.js.map +1 -1
  53. package/dist/animations/hover-lift.mjs +2 -1
  54. package/dist/animations/hover-lift.mjs.map +1 -1
  55. package/dist/animations/hover-scale.js +3 -2
  56. package/dist/animations/hover-scale.js.map +1 -1
  57. package/dist/animations/hover-scale.mjs +2 -1
  58. package/dist/animations/hover-scale.mjs.map +1 -1
  59. package/dist/animations/magnetic.js +3 -2
  60. package/dist/animations/magnetic.js.map +1 -1
  61. package/dist/animations/magnetic.mjs +2 -1
  62. package/dist/animations/magnetic.mjs.map +1 -1
  63. package/dist/animations/parallax.js +3 -2
  64. package/dist/animations/parallax.js.map +1 -1
  65. package/dist/animations/parallax.mjs +2 -1
  66. package/dist/animations/parallax.mjs.map +1 -1
  67. package/dist/animations/ping.js +3 -2
  68. package/dist/animations/ping.js.map +1 -1
  69. package/dist/animations/ping.mjs +2 -1
  70. package/dist/animations/ping.mjs.map +1 -1
  71. package/dist/animations/pop-in.js +3 -2
  72. package/dist/animations/pop-in.js.map +1 -1
  73. package/dist/animations/pop-in.mjs +2 -1
  74. package/dist/animations/pop-in.mjs.map +1 -1
  75. package/dist/animations/press.js +3 -2
  76. package/dist/animations/press.js.map +1 -1
  77. package/dist/animations/press.mjs +2 -1
  78. package/dist/animations/press.mjs.map +1 -1
  79. package/dist/animations/progress.js +3 -2
  80. package/dist/animations/progress.js.map +1 -1
  81. package/dist/animations/progress.mjs +2 -1
  82. package/dist/animations/progress.mjs.map +1 -1
  83. package/dist/animations/pulse.js +3 -2
  84. package/dist/animations/pulse.js.map +1 -1
  85. package/dist/animations/pulse.mjs +2 -1
  86. package/dist/animations/pulse.mjs.map +1 -1
  87. package/dist/animations/reorder.js +3 -2
  88. package/dist/animations/reorder.js.map +1 -1
  89. package/dist/animations/reorder.mjs +2 -1
  90. package/dist/animations/reorder.mjs.map +1 -1
  91. package/dist/animations/reveal-blur.js +3 -2
  92. package/dist/animations/reveal-blur.js.map +1 -1
  93. package/dist/animations/reveal-blur.mjs +2 -1
  94. package/dist/animations/reveal-blur.mjs.map +1 -1
  95. package/dist/animations/reveal-down.js +3 -2
  96. package/dist/animations/reveal-down.js.map +1 -1
  97. package/dist/animations/reveal-down.mjs +2 -1
  98. package/dist/animations/reveal-down.mjs.map +1 -1
  99. package/dist/animations/reveal-left.js +3 -2
  100. package/dist/animations/reveal-left.js.map +1 -1
  101. package/dist/animations/reveal-left.mjs +2 -1
  102. package/dist/animations/reveal-left.mjs.map +1 -1
  103. package/dist/animations/reveal-right.js +3 -2
  104. package/dist/animations/reveal-right.js.map +1 -1
  105. package/dist/animations/reveal-right.mjs +2 -1
  106. package/dist/animations/reveal-right.mjs.map +1 -1
  107. package/dist/animations/reveal-up.js +3 -2
  108. package/dist/animations/reveal-up.js.map +1 -1
  109. package/dist/animations/reveal-up.mjs +2 -1
  110. package/dist/animations/reveal-up.mjs.map +1 -1
  111. package/dist/animations/rotate-in.js +3 -2
  112. package/dist/animations/rotate-in.js.map +1 -1
  113. package/dist/animations/rotate-in.mjs +2 -1
  114. package/dist/animations/rotate-in.mjs.map +1 -1
  115. package/dist/animations/scale-in.js +3 -2
  116. package/dist/animations/scale-in.js.map +1 -1
  117. package/dist/animations/scale-in.mjs +2 -1
  118. package/dist/animations/scale-in.mjs.map +1 -1
  119. package/dist/animations/scale-out.js +3 -2
  120. package/dist/animations/scale-out.js.map +1 -1
  121. package/dist/animations/scale-out.mjs +2 -1
  122. package/dist/animations/scale-out.mjs.map +1 -1
  123. package/dist/animations/shake.js +3 -2
  124. package/dist/animations/shake.js.map +1 -1
  125. package/dist/animations/shake.mjs +2 -1
  126. package/dist/animations/shake.mjs.map +1 -1
  127. package/dist/animations/shared/create-motion-animation.d.ts.map +1 -1
  128. package/dist/animations/skeleton-shimmer.js +3 -2
  129. package/dist/animations/skeleton-shimmer.js.map +1 -1
  130. package/dist/animations/skeleton-shimmer.mjs +2 -1
  131. package/dist/animations/skeleton-shimmer.mjs.map +1 -1
  132. package/dist/animations/slide-down.js +3 -2
  133. package/dist/animations/slide-down.js.map +1 -1
  134. package/dist/animations/slide-down.mjs +2 -1
  135. package/dist/animations/slide-down.mjs.map +1 -1
  136. package/dist/animations/slide-left.js +3 -2
  137. package/dist/animations/slide-left.js.map +1 -1
  138. package/dist/animations/slide-left.mjs +2 -1
  139. package/dist/animations/slide-left.mjs.map +1 -1
  140. package/dist/animations/slide-right.js +3 -2
  141. package/dist/animations/slide-right.js.map +1 -1
  142. package/dist/animations/slide-right.mjs +2 -1
  143. package/dist/animations/slide-right.mjs.map +1 -1
  144. package/dist/animations/slide-up.js +3 -2
  145. package/dist/animations/slide-up.js.map +1 -1
  146. package/dist/animations/slide-up.mjs +2 -1
  147. package/dist/animations/slide-up.mjs.map +1 -1
  148. package/dist/animations/spin.js +3 -2
  149. package/dist/animations/spin.js.map +1 -1
  150. package/dist/animations/spin.mjs +2 -1
  151. package/dist/animations/spin.mjs.map +1 -1
  152. package/dist/animations/text-reveal.js +3 -2
  153. package/dist/animations/text-reveal.js.map +1 -1
  154. package/dist/animations/text-reveal.mjs +2 -1
  155. package/dist/animations/text-reveal.mjs.map +1 -1
  156. package/dist/animations/text-shimmer.js +3 -2
  157. package/dist/animations/text-shimmer.js.map +1 -1
  158. package/dist/animations/text-shimmer.mjs +2 -1
  159. package/dist/animations/text-shimmer.mjs.map +1 -1
  160. package/dist/animations/tilt.js +3 -2
  161. package/dist/animations/tilt.js.map +1 -1
  162. package/dist/animations/tilt.mjs +2 -1
  163. package/dist/animations/tilt.mjs.map +1 -1
  164. package/dist/animations/wiggle.js +3 -2
  165. package/dist/animations/wiggle.js.map +1 -1
  166. package/dist/animations/wiggle.mjs +2 -1
  167. package/dist/animations/wiggle.mjs.map +1 -1
  168. package/dist/charts/area.js +1 -0
  169. package/dist/charts/area.js.map +1 -1
  170. package/dist/charts/area.mjs +1 -0
  171. package/dist/charts/area.mjs.map +1 -1
  172. package/dist/charts/bar.js +1 -0
  173. package/dist/charts/bar.mjs +1 -0
  174. package/dist/charts/bubble.js +1 -0
  175. package/dist/charts/bubble.js.map +1 -1
  176. package/dist/charts/bubble.mjs +1 -0
  177. package/dist/charts/bubble.mjs.map +1 -1
  178. package/dist/charts/funnel.js +1 -0
  179. package/dist/charts/funnel.js.map +1 -1
  180. package/dist/charts/funnel.mjs +1 -0
  181. package/dist/charts/funnel.mjs.map +1 -1
  182. package/dist/charts/line.js +1 -0
  183. package/dist/charts/line.js.map +1 -1
  184. package/dist/charts/line.mjs +1 -0
  185. package/dist/charts/line.mjs.map +1 -1
  186. package/dist/charts/pie.js +1 -0
  187. package/dist/charts/pie.js.map +1 -1
  188. package/dist/charts/pie.mjs +1 -0
  189. package/dist/charts/pie.mjs.map +1 -1
  190. package/dist/charts/radar.js +1 -0
  191. package/dist/charts/radar.js.map +1 -1
  192. package/dist/charts/radar.mjs +1 -0
  193. package/dist/charts/radar.mjs.map +1 -1
  194. package/dist/charts/scatter.js +1 -0
  195. package/dist/charts/scatter.js.map +1 -1
  196. package/dist/charts/scatter.mjs +1 -0
  197. package/dist/charts/scatter.mjs.map +1 -1
  198. package/dist/charts/stacked-bar.js +1 -0
  199. package/dist/charts/stacked-bar.js.map +1 -1
  200. package/dist/charts/stacked-bar.mjs +1 -0
  201. package/dist/charts/stacked-bar.mjs.map +1 -1
  202. package/dist/{chunk-VHVQELWF.js → chunk-22I54GJW.js} +27 -211
  203. package/dist/chunk-22I54GJW.js.map +1 -0
  204. package/dist/chunk-27PO2FY2.mjs +161 -0
  205. package/dist/chunk-27PO2FY2.mjs.map +1 -0
  206. package/dist/chunk-2PWT2MB5.mjs +73 -0
  207. package/dist/chunk-2PWT2MB5.mjs.map +1 -0
  208. package/dist/chunk-34OSFCSH.js +212 -0
  209. package/dist/chunk-34OSFCSH.js.map +1 -0
  210. package/dist/chunk-37YQUTKG.js +204 -0
  211. package/dist/chunk-37YQUTKG.js.map +1 -0
  212. package/dist/chunk-3HSFL4WA.mjs +191 -0
  213. package/dist/chunk-3HSFL4WA.mjs.map +1 -0
  214. package/dist/{chunk-LNYCEPW5.js → chunk-3I6XR7KN.js} +30 -75
  215. package/dist/chunk-3I6XR7KN.js.map +1 -0
  216. package/dist/chunk-3MK7CWEX.js +54 -0
  217. package/dist/chunk-3MK7CWEX.js.map +1 -0
  218. package/dist/chunk-3R6PQUG2.mjs +144 -0
  219. package/dist/chunk-3R6PQUG2.mjs.map +1 -0
  220. package/dist/{chunk-BU2MPXPZ.js → chunk-3Z6L24ZK.js} +32 -230
  221. package/dist/chunk-3Z6L24ZK.js.map +1 -0
  222. package/dist/chunk-44G3U35C.js +181 -0
  223. package/dist/chunk-44G3U35C.js.map +1 -0
  224. package/dist/chunk-456OEGUT.mjs +58 -0
  225. package/dist/chunk-456OEGUT.mjs.map +1 -0
  226. package/dist/{chunk-ORFI4BCJ.mjs → chunk-45CGVW7S.js} +54 -205
  227. package/dist/chunk-45CGVW7S.js.map +1 -0
  228. package/dist/chunk-4FU6FDUT.mjs +202 -0
  229. package/dist/chunk-4FU6FDUT.mjs.map +1 -0
  230. package/dist/chunk-4LVEWKXF.mjs +258 -0
  231. package/dist/chunk-4LVEWKXF.mjs.map +1 -0
  232. package/dist/{chunk-3W224B3M.js → chunk-4QLWSXXO.mjs} +24 -210
  233. package/dist/chunk-4QLWSXXO.mjs.map +1 -0
  234. package/dist/chunk-4U7CDEN7.mjs +57 -0
  235. package/dist/chunk-4U7CDEN7.mjs.map +1 -0
  236. package/dist/{chunk-U3VV22G4.js → chunk-56DECC6D.js} +37 -237
  237. package/dist/chunk-56DECC6D.js.map +1 -0
  238. package/dist/chunk-56KZVM5D.mjs +159 -0
  239. package/dist/chunk-56KZVM5D.mjs.map +1 -0
  240. package/dist/{chunk-PYUZOVLY.js → chunk-5BSYGFN7.mjs} +24 -162
  241. package/dist/chunk-5BSYGFN7.mjs.map +1 -0
  242. package/dist/chunk-5J6QMTES.js +655 -0
  243. package/dist/chunk-5J6QMTES.js.map +1 -0
  244. package/dist/chunk-5QSYJHWL.mjs +75 -0
  245. package/dist/chunk-5QSYJHWL.mjs.map +1 -0
  246. package/dist/chunk-5R6XJAXQ.mjs +66 -0
  247. package/dist/chunk-5R6XJAXQ.mjs.map +1 -0
  248. package/dist/{chunk-OZHETX4J.mjs → chunk-5WWD3TZ2.mjs} +25 -124
  249. package/dist/chunk-5WWD3TZ2.mjs.map +1 -0
  250. package/dist/{chunk-H7WDA6U6.mjs → chunk-63UE3BR4.mjs} +24 -73
  251. package/dist/chunk-63UE3BR4.mjs.map +1 -0
  252. package/dist/chunk-63YMCBGJ.js +217 -0
  253. package/dist/chunk-63YMCBGJ.js.map +1 -0
  254. package/dist/chunk-7GIL24GK.js +354 -0
  255. package/dist/chunk-7GIL24GK.js.map +1 -0
  256. package/dist/chunk-7JBQ3ZJN.mjs +250 -0
  257. package/dist/chunk-7JBQ3ZJN.mjs.map +1 -0
  258. package/dist/chunk-7LFRU6AW.js +254 -0
  259. package/dist/chunk-7LFRU6AW.js.map +1 -0
  260. package/dist/{chunk-HLG2YJFZ.mjs → chunk-7M4TUP4I.js} +30 -191
  261. package/dist/chunk-7M4TUP4I.js.map +1 -0
  262. package/dist/chunk-AADGUMYW.js +122 -0
  263. package/dist/chunk-AADGUMYW.js.map +1 -0
  264. package/dist/chunk-AQHY4S33.js +19 -0
  265. package/dist/chunk-AQHY4S33.js.map +1 -0
  266. package/dist/chunk-ATMCT3A3.mjs +222 -0
  267. package/dist/chunk-ATMCT3A3.mjs.map +1 -0
  268. package/dist/chunk-BDBL4XXI.mjs +45 -0
  269. package/dist/chunk-BDBL4XXI.mjs.map +1 -0
  270. package/dist/chunk-BTSCPOWZ.mjs +171 -0
  271. package/dist/chunk-BTSCPOWZ.mjs.map +1 -0
  272. package/dist/chunk-BZZVO4GL.mjs +414 -0
  273. package/dist/chunk-BZZVO4GL.mjs.map +1 -0
  274. package/dist/chunk-C7F6OCGK.mjs +123 -0
  275. package/dist/chunk-C7F6OCGK.mjs.map +1 -0
  276. package/dist/{chunk-NFEA5TN2.js → chunk-D4B62J5C.js} +11 -41
  277. package/dist/chunk-D4B62J5C.js.map +1 -0
  278. package/dist/{chunk-CSFLMMAT.mjs → chunk-DWDDIG6R.js} +30 -160
  279. package/dist/chunk-DWDDIG6R.js.map +1 -0
  280. package/dist/chunk-E7BPOL74.js +155 -0
  281. package/dist/chunk-E7BPOL74.js.map +1 -0
  282. package/dist/chunk-EIX26RKN.js +73 -0
  283. package/dist/chunk-EIX26RKN.js.map +1 -0
  284. package/dist/chunk-EKBSSKJQ.js +271 -0
  285. package/dist/chunk-EKBSSKJQ.js.map +1 -0
  286. package/dist/{chunk-TKVZU56F.mjs → chunk-EP7WTIKH.mjs} +25 -222
  287. package/dist/chunk-EP7WTIKH.mjs.map +1 -0
  288. package/dist/{chunk-7OVJXYSS.mjs → chunk-F4BM6LX2.mjs} +2 -2
  289. package/dist/{chunk-7OVJXYSS.mjs.map → chunk-F4BM6LX2.mjs.map} +1 -1
  290. package/dist/chunk-F6V74YMW.js +71 -0
  291. package/dist/chunk-F6V74YMW.js.map +1 -0
  292. package/dist/chunk-FNNIH7R2.js +70 -0
  293. package/dist/chunk-FNNIH7R2.js.map +1 -0
  294. package/dist/{chunk-ZX2IBIZT.js → chunk-FWY22BZZ.js} +46 -4
  295. package/dist/chunk-FWY22BZZ.js.map +1 -0
  296. package/dist/chunk-FXDHDQTH.js +79 -0
  297. package/dist/chunk-FXDHDQTH.js.map +1 -0
  298. package/dist/chunk-FZET7XQV.js +169 -0
  299. package/dist/chunk-FZET7XQV.js.map +1 -0
  300. package/dist/chunk-GDYSB7SB.js +78 -0
  301. package/dist/chunk-GDYSB7SB.js.map +1 -0
  302. package/dist/chunk-GPM2PRC5.js +61 -0
  303. package/dist/chunk-GPM2PRC5.js.map +1 -0
  304. package/dist/chunk-GVGKISKD.js +170 -0
  305. package/dist/chunk-GVGKISKD.js.map +1 -0
  306. package/dist/{chunk-BJSWQQSC.mjs → chunk-I4TGI6U3.mjs} +3 -45
  307. package/dist/chunk-I4TGI6U3.mjs.map +1 -0
  308. package/dist/chunk-I55QC57T.js +47 -0
  309. package/dist/chunk-I55QC57T.js.map +1 -0
  310. package/dist/chunk-I5TREZO5.js +263 -0
  311. package/dist/chunk-I5TREZO5.js.map +1 -0
  312. package/dist/chunk-IPUQBMAB.mjs +205 -0
  313. package/dist/chunk-IPUQBMAB.mjs.map +1 -0
  314. package/dist/chunk-IQ6QVIZ3.mjs +69 -0
  315. package/dist/chunk-IQ6QVIZ3.mjs.map +1 -0
  316. package/dist/chunk-ISXAUMRW.js +63 -0
  317. package/dist/chunk-ISXAUMRW.js.map +1 -0
  318. package/dist/{chunk-3J3FYIG3.js → chunk-IULYVARJ.mjs} +35 -132
  319. package/dist/chunk-IULYVARJ.mjs.map +1 -0
  320. package/dist/{chunk-DEZRB6DS.mjs → chunk-IZAQBJKT.mjs} +46 -4
  321. package/dist/chunk-IZAQBJKT.mjs.map +1 -0
  322. package/dist/chunk-J5LGTIGS.mjs +9 -0
  323. package/dist/chunk-J5LGTIGS.mjs.map +1 -0
  324. package/dist/chunk-J6XKTPP5.js +61 -0
  325. package/dist/chunk-J6XKTPP5.js.map +1 -0
  326. package/dist/chunk-JF4BRFOG.mjs +54 -0
  327. package/dist/chunk-JF4BRFOG.mjs.map +1 -0
  328. package/dist/{chunk-3F4FF2H4.mjs → chunk-JI3IEKH6.mjs} +24 -205
  329. package/dist/chunk-JI3IEKH6.mjs.map +1 -0
  330. package/dist/chunk-JTMRSRYD.js +63 -0
  331. package/dist/chunk-JTMRSRYD.js.map +1 -0
  332. package/dist/chunk-KEGOUZL5.js +209 -0
  333. package/dist/chunk-KEGOUZL5.js.map +1 -0
  334. package/dist/{chunk-TTTYW3TR.js → chunk-KXNMW4NV.mjs} +24 -170
  335. package/dist/chunk-KXNMW4NV.mjs.map +1 -0
  336. package/dist/chunk-L4PDJ6IB.mjs +17 -0
  337. package/dist/chunk-L4PDJ6IB.mjs.map +1 -0
  338. package/dist/chunk-L67EJJFN.js +82 -0
  339. package/dist/chunk-L67EJJFN.js.map +1 -0
  340. package/dist/{chunk-UY65KX3M.js → chunk-L6AS5AVO.js} +53 -263
  341. package/dist/chunk-L6AS5AVO.js.map +1 -0
  342. package/dist/chunk-L6PSW7JE.mjs +206 -0
  343. package/dist/chunk-L6PSW7JE.mjs.map +1 -0
  344. package/dist/{chunk-NNZXBL7R.mjs → chunk-LL2UY6CD.mjs} +25 -223
  345. package/dist/chunk-LL2UY6CD.mjs.map +1 -0
  346. package/dist/chunk-LLNK24MM.js +67 -0
  347. package/dist/chunk-LLNK24MM.js.map +1 -0
  348. package/dist/{chunk-OKCC7E36.js → chunk-LQPKZ5ZD.js} +6 -6
  349. package/dist/{chunk-OKCC7E36.js.map → chunk-LQPKZ5ZD.js.map} +1 -1
  350. package/dist/{chunk-HNLQXHSQ.mjs → chunk-LU6VEI4B.js} +34 -205
  351. package/dist/chunk-LU6VEI4B.js.map +1 -0
  352. package/dist/chunk-MCYFKM7T.js +62 -0
  353. package/dist/chunk-MCYFKM7T.js.map +1 -0
  354. package/dist/chunk-MUKI3OHH.js +215 -0
  355. package/dist/chunk-MUKI3OHH.js.map +1 -0
  356. package/dist/chunk-N2RUT33F.mjs +68 -0
  357. package/dist/chunk-N2RUT33F.mjs.map +1 -0
  358. package/dist/chunk-NAHHFB2M.js +77 -0
  359. package/dist/chunk-NAHHFB2M.js.map +1 -0
  360. package/dist/chunk-NMBSK44H.mjs +44 -0
  361. package/dist/chunk-NMBSK44H.mjs.map +1 -0
  362. package/dist/chunk-NVTV3EQB.js +49 -0
  363. package/dist/chunk-NVTV3EQB.js.map +1 -0
  364. package/dist/{chunk-NSJ6KGW2.js → chunk-NWMSIYZP.js} +16 -58
  365. package/dist/chunk-NWMSIYZP.js.map +1 -0
  366. package/dist/chunk-NXNL64Q7.mjs +112 -0
  367. package/dist/chunk-NXNL64Q7.mjs.map +1 -0
  368. package/dist/chunk-O23PJPGM.mjs +251 -0
  369. package/dist/chunk-O23PJPGM.mjs.map +1 -0
  370. package/dist/chunk-O6R6OQXI.mjs +204 -0
  371. package/dist/chunk-O6R6OQXI.mjs.map +1 -0
  372. package/dist/chunk-ODT5TFIT.mjs +156 -0
  373. package/dist/chunk-ODT5TFIT.mjs.map +1 -0
  374. package/dist/{chunk-ECLHBSC6.mjs → chunk-OGMIKRLJ.js} +30 -99
  375. package/dist/chunk-OGMIKRLJ.js.map +1 -0
  376. package/dist/chunk-OOBA2MDD.mjs +57 -0
  377. package/dist/chunk-OOBA2MDD.mjs.map +1 -0
  378. package/dist/chunk-OPACTZGV.js +231 -0
  379. package/dist/chunk-OPACTZGV.js.map +1 -0
  380. package/dist/{chunk-C6NA452Q.mjs → chunk-OPUO55TO.mjs} +3 -3
  381. package/dist/{chunk-C6NA452Q.mjs.map → chunk-OPUO55TO.mjs.map} +1 -1
  382. package/dist/{chunk-SSJXWD2M.mjs → chunk-OQCI2IVL.mjs} +47 -260
  383. package/dist/chunk-OQCI2IVL.mjs.map +1 -0
  384. package/dist/{chunk-2ZKW2E7B.mjs → chunk-P25NI2HG.js} +41 -126
  385. package/dist/chunk-P25NI2HG.js.map +1 -0
  386. package/dist/chunk-P2DQP4J4.js +424 -0
  387. package/dist/chunk-P2DQP4J4.js.map +1 -0
  388. package/dist/{chunk-XYEMP4K7.js → chunk-P43A2BPU.mjs} +25 -216
  389. package/dist/chunk-P43A2BPU.mjs.map +1 -0
  390. package/dist/chunk-P54PZ72L.mjs +65 -0
  391. package/dist/chunk-P54PZ72L.mjs.map +1 -0
  392. package/dist/chunk-PAJYNQR3.mjs +150 -0
  393. package/dist/chunk-PAJYNQR3.mjs.map +1 -0
  394. package/dist/chunk-PKXDRTC7.js +264 -0
  395. package/dist/chunk-PKXDRTC7.js.map +1 -0
  396. package/dist/chunk-PNAFXOZC.mjs +69 -0
  397. package/dist/chunk-PNAFXOZC.mjs.map +1 -0
  398. package/dist/chunk-PUSCPBT2.mjs +46 -0
  399. package/dist/chunk-PUSCPBT2.mjs.map +1 -0
  400. package/dist/chunk-PZ5AY32C.js +11 -0
  401. package/dist/chunk-PZ5AY32C.js.map +1 -0
  402. package/dist/{chunk-NMQAHUYA.mjs → chunk-Q2NE2UAO.mjs} +3 -33
  403. package/dist/chunk-Q2NE2UAO.mjs.map +1 -0
  404. package/dist/chunk-QDHARZDN.js +129 -0
  405. package/dist/chunk-QDHARZDN.js.map +1 -0
  406. package/dist/chunk-QIUVXTLE.mjs +60 -0
  407. package/dist/chunk-QIUVXTLE.mjs.map +1 -0
  408. package/dist/chunk-QKZR2UTL.mjs +125 -0
  409. package/dist/chunk-QKZR2UTL.mjs.map +1 -0
  410. package/dist/{chunk-EZCYSFML.mjs → chunk-QTFOUK4H.js} +36 -149
  411. package/dist/chunk-QTFOUK4H.js.map +1 -0
  412. package/dist/chunk-QW2ZHKPC.mjs +64 -0
  413. package/dist/chunk-QW2ZHKPC.mjs.map +1 -0
  414. package/dist/chunk-R2256VSD.js +80 -0
  415. package/dist/chunk-R2256VSD.js.map +1 -0
  416. package/dist/chunk-RYJ5WEE3.js +101 -0
  417. package/dist/chunk-RYJ5WEE3.js.map +1 -0
  418. package/dist/{chunk-UROKWFPX.mjs → chunk-S4OSJ4ZN.js} +30 -155
  419. package/dist/chunk-S4OSJ4ZN.js.map +1 -0
  420. package/dist/{chunk-X3O45MPI.js → chunk-SWU5U5BB.mjs} +45 -217
  421. package/dist/chunk-SWU5U5BB.mjs.map +1 -0
  422. package/dist/chunk-SYFTQAZG.mjs +58 -0
  423. package/dist/chunk-SYFTQAZG.mjs.map +1 -0
  424. package/dist/{chunk-DFCDLVZA.js → chunk-T5SPR27V.mjs} +24 -166
  425. package/dist/chunk-T5SPR27V.mjs.map +1 -0
  426. package/dist/{chunk-IM6KN77X.mjs → chunk-TD4W3AHI.mjs} +47 -253
  427. package/dist/chunk-TD4W3AHI.mjs.map +1 -0
  428. package/dist/chunk-TMFXI5FH.mjs +52 -0
  429. package/dist/chunk-TMFXI5FH.mjs.map +1 -0
  430. package/dist/{chunk-2F7P4EJQ.js → chunk-UJBXDDHN.mjs} +26 -103
  431. package/dist/chunk-UJBXDDHN.mjs.map +1 -0
  432. package/dist/chunk-USLP5NY6.js +69 -0
  433. package/dist/chunk-USLP5NY6.js.map +1 -0
  434. package/dist/{chunk-R2JJTREQ.mjs → chunk-UU34Q42Q.js} +28 -202
  435. package/dist/chunk-UU34Q42Q.js.map +1 -0
  436. package/dist/chunk-V4FFKIX3.js +166 -0
  437. package/dist/chunk-V4FFKIX3.js.map +1 -0
  438. package/dist/{chunk-5565GZ4T.js → chunk-V4U6Q5NL.mjs} +25 -205
  439. package/dist/chunk-V4U6Q5NL.mjs.map +1 -0
  440. package/dist/chunk-VIKQGO4W.mjs +636 -0
  441. package/dist/chunk-VIKQGO4W.mjs.map +1 -0
  442. package/dist/chunk-VUIWYURS.js +162 -0
  443. package/dist/chunk-VUIWYURS.js.map +1 -0
  444. package/dist/chunk-VWHER5XN.js +65 -0
  445. package/dist/chunk-VWHER5XN.js.map +1 -0
  446. package/dist/chunk-WBRTXAKP.js +705 -0
  447. package/dist/chunk-WBRTXAKP.js.map +1 -0
  448. package/dist/chunk-WN7XWKAS.mjs +52 -0
  449. package/dist/chunk-WN7XWKAS.mjs.map +1 -0
  450. package/dist/chunk-X3N4EVF7.mjs +240 -0
  451. package/dist/chunk-X3N4EVF7.mjs.map +1 -0
  452. package/dist/chunk-XPHD3X4L.mjs +98 -0
  453. package/dist/chunk-XPHD3X4L.mjs.map +1 -0
  454. package/dist/chunk-Y4YQSCNL.js +65 -0
  455. package/dist/chunk-Y4YQSCNL.js.map +1 -0
  456. package/dist/chunk-Y73U7C4T.js +238 -0
  457. package/dist/chunk-Y73U7C4T.js.map +1 -0
  458. package/dist/{chunk-EIRCCTNA.js → chunk-Y7NRTCAT.js} +31 -128
  459. package/dist/chunk-Y7NRTCAT.js.map +1 -0
  460. package/dist/chunk-YDKAE7RM.mjs +62 -0
  461. package/dist/chunk-YDKAE7RM.mjs.map +1 -0
  462. package/dist/{chunk-INXWZ4DS.js → chunk-YN4ZS3R2.js} +53 -271
  463. package/dist/chunk-YN4ZS3R2.js.map +1 -0
  464. package/dist/chunk-ZCTSXNAE.mjs +221 -0
  465. package/dist/chunk-ZCTSXNAE.mjs.map +1 -0
  466. package/dist/chunk-ZFNVFMWG.mjs +703 -0
  467. package/dist/chunk-ZFNVFMWG.mjs.map +1 -0
  468. package/dist/{chunk-R5LL56ZO.js → chunk-ZHXYGUMA.js} +2 -2
  469. package/dist/{chunk-R5LL56ZO.js.map → chunk-ZHXYGUMA.js.map} +1 -1
  470. package/dist/chunk-ZITS2V53.js +130 -0
  471. package/dist/chunk-ZITS2V53.js.map +1 -0
  472. package/dist/chunk-ZY6O6Z2I.mjs +350 -0
  473. package/dist/chunk-ZY6O6Z2I.mjs.map +1 -0
  474. package/dist/design-system/accordion.d.ts +42 -0
  475. package/dist/design-system/accordion.d.ts.map +1 -1
  476. package/dist/design-system/alert.d.ts +21 -0
  477. package/dist/design-system/alert.d.ts.map +1 -1
  478. package/dist/design-system/animated-number.d.ts +21 -0
  479. package/dist/design-system/animated-number.d.ts.map +1 -1
  480. package/dist/design-system/avatar.d.ts +21 -0
  481. package/dist/design-system/avatar.d.ts.map +1 -1
  482. package/dist/design-system/badge.d.ts +42 -0
  483. package/dist/design-system/badge.d.ts.map +1 -1
  484. package/dist/design-system/breadcrumb.d.ts +21 -0
  485. package/dist/design-system/breadcrumb.d.ts.map +1 -1
  486. package/dist/design-system/button.d.ts +22 -1
  487. package/dist/design-system/button.d.ts.map +1 -1
  488. package/dist/design-system/card.d.ts +21 -0
  489. package/dist/design-system/card.d.ts.map +1 -1
  490. package/dist/design-system/checkbox.d.ts +22 -1
  491. package/dist/design-system/checkbox.d.ts.map +1 -1
  492. package/dist/design-system/command.d.ts +21 -0
  493. package/dist/design-system/command.d.ts.map +1 -1
  494. package/dist/design-system/context-menu.d.ts +21 -0
  495. package/dist/design-system/context-menu.d.ts.map +1 -1
  496. package/dist/design-system/copy-button.d.ts +22 -1
  497. package/dist/design-system/copy-button.d.ts.map +1 -1
  498. package/dist/design-system/divider.d.ts +21 -0
  499. package/dist/design-system/divider.d.ts.map +1 -1
  500. package/dist/design-system/drawer.d.ts +42 -0
  501. package/dist/design-system/drawer.d.ts.map +1 -1
  502. package/dist/design-system/dropdown.d.ts +42 -0
  503. package/dist/design-system/dropdown.d.ts.map +1 -1
  504. package/dist/design-system/dynamic-stepper.d.ts +98 -5
  505. package/dist/design-system/dynamic-stepper.d.ts.map +1 -1
  506. package/dist/design-system/empty-state.d.ts +21 -0
  507. package/dist/design-system/empty-state.d.ts.map +1 -1
  508. package/dist/design-system/facade.js +403 -0
  509. package/dist/design-system/facade.js.map +1 -0
  510. package/dist/design-system/facade.mjs +401 -0
  511. package/dist/design-system/facade.mjs.map +1 -0
  512. package/dist/design-system/file-upload.d.ts +21 -0
  513. package/dist/design-system/file-upload.d.ts.map +1 -1
  514. package/dist/design-system/index.d.ts +0 -1
  515. package/dist/design-system/index.d.ts.map +1 -1
  516. package/dist/design-system/inputs.d.ts +108 -0
  517. package/dist/design-system/inputs.d.ts.map +1 -1
  518. package/dist/design-system/kbd.d.ts +22 -1
  519. package/dist/design-system/kbd.d.ts.map +1 -1
  520. package/dist/design-system/marquee.d.ts +21 -0
  521. package/dist/design-system/marquee.d.ts.map +1 -1
  522. package/dist/design-system/modal.d.ts +42 -0
  523. package/dist/design-system/modal.d.ts.map +1 -1
  524. package/dist/design-system/otp-input.d.ts +21 -0
  525. package/dist/design-system/otp-input.d.ts.map +1 -1
  526. package/dist/design-system/pagination.d.ts +21 -0
  527. package/dist/design-system/pagination.d.ts.map +1 -1
  528. package/dist/design-system/popover.d.ts +20 -0
  529. package/dist/design-system/popover.d.ts.map +1 -1
  530. package/dist/design-system/progress.d.ts +21 -0
  531. package/dist/design-system/progress.d.ts.map +1 -1
  532. package/dist/design-system/radio-group.d.ts +21 -0
  533. package/dist/design-system/radio-group.d.ts.map +1 -1
  534. package/dist/design-system/rating.d.ts +21 -0
  535. package/dist/design-system/rating.d.ts.map +1 -1
  536. package/dist/design-system/scroll-area.d.ts +21 -0
  537. package/dist/design-system/scroll-area.d.ts.map +1 -1
  538. package/dist/design-system/select.d.ts +63 -0
  539. package/dist/design-system/select.d.ts.map +1 -1
  540. package/dist/design-system/skeleton.d.ts +63 -0
  541. package/dist/design-system/skeleton.d.ts.map +1 -1
  542. package/dist/design-system/slider.d.ts +22 -1
  543. package/dist/design-system/slider.d.ts.map +1 -1
  544. package/dist/design-system/spinner.d.ts +21 -0
  545. package/dist/design-system/spinner.d.ts.map +1 -1
  546. package/dist/design-system/table.d.ts +63 -0
  547. package/dist/design-system/table.d.ts.map +1 -1
  548. package/dist/design-system/tabs.d.ts +21 -0
  549. package/dist/design-system/tabs.d.ts.map +1 -1
  550. package/dist/design-system/timeline.d.ts +21 -0
  551. package/dist/design-system/timeline.d.ts.map +1 -1
  552. package/dist/design-system/toast.d.ts +21 -0
  553. package/dist/design-system/toast.d.ts.map +1 -1
  554. package/dist/design-system/toggle.d.ts +30 -0
  555. package/dist/design-system/toggle.d.ts.map +1 -1
  556. package/dist/design-system/tokens.js +1 -0
  557. package/dist/design-system/tokens.mjs +1 -0
  558. package/dist/design-system/tooltip.d.ts +20 -0
  559. package/dist/design-system/tooltip.d.ts.map +1 -1
  560. package/dist/design-system/tree-view.d.ts +42 -0
  561. package/dist/design-system/tree-view.d.ts.map +1 -1
  562. package/dist/design-system/typography.d.ts +1 -1
  563. package/dist/hooks/useBodyScrollLock.js +1 -0
  564. package/dist/hooks/useBodyScrollLock.mjs +1 -0
  565. package/dist/hooks/useClickOutside.js +1 -0
  566. package/dist/hooks/useClickOutside.mjs +1 -0
  567. package/dist/hooks/useClipboard.js +1 -0
  568. package/dist/hooks/useClipboard.mjs +1 -0
  569. package/dist/hooks/useControllableState.js +1 -0
  570. package/dist/hooks/useControllableState.mjs +1 -0
  571. package/dist/hooks/useDebouncedValue.js +1 -1
  572. package/dist/hooks/useDebouncedValue.mjs +1 -1
  573. package/dist/hooks/useDisclosure.js +1 -0
  574. package/dist/hooks/useDisclosure.js.map +1 -1
  575. package/dist/hooks/useDisclosure.mjs +1 -0
  576. package/dist/hooks/useDisclosure.mjs.map +1 -1
  577. package/dist/hooks/useDocumentTitle.js +1 -1
  578. package/dist/hooks/useDocumentTitle.mjs +1 -1
  579. package/dist/hooks/useDynamicStepper.js +1 -0
  580. package/dist/hooks/useDynamicStepper.mjs +1 -0
  581. package/dist/hooks/useFocusManagement.js +1 -0
  582. package/dist/hooks/useFocusManagement.mjs +1 -0
  583. package/dist/hooks/useHover.js +1 -1
  584. package/dist/hooks/useHover.mjs +1 -1
  585. package/dist/hooks/useInView.js +1 -0
  586. package/dist/hooks/useInView.js.map +1 -1
  587. package/dist/hooks/useInView.mjs +1 -0
  588. package/dist/hooks/useInView.mjs.map +1 -1
  589. package/dist/hooks/useIntersectionObserver.js +1 -0
  590. package/dist/hooks/useIntersectionObserver.mjs +1 -0
  591. package/dist/hooks/useIsMounted.js +1 -1
  592. package/dist/hooks/useIsMounted.mjs +1 -1
  593. package/dist/hooks/useIsomorphicLayoutEffect.js +1 -0
  594. package/dist/hooks/useIsomorphicLayoutEffect.mjs +1 -0
  595. package/dist/hooks/useLocalStorage.js +1 -1
  596. package/dist/hooks/useLocalStorage.mjs +1 -1
  597. package/dist/hooks/useMediaQuery.js +1 -0
  598. package/dist/hooks/useMediaQuery.mjs +1 -0
  599. package/dist/hooks/useNetworkStatus.js +1 -1
  600. package/dist/hooks/useNetworkStatus.mjs +1 -1
  601. package/dist/hooks/usePageVisibility.js +1 -1
  602. package/dist/hooks/usePageVisibility.mjs +1 -1
  603. package/dist/hooks/usePagination.js +1 -0
  604. package/dist/hooks/usePagination.mjs +1 -0
  605. package/dist/hooks/usePrefersColorScheme.js +1 -0
  606. package/dist/hooks/usePrefersColorScheme.js.map +1 -1
  607. package/dist/hooks/usePrefersColorScheme.mjs +1 -0
  608. package/dist/hooks/usePrefersColorScheme.mjs.map +1 -1
  609. package/dist/hooks/usePrefersReducedMotion.js +1 -0
  610. package/dist/hooks/usePrefersReducedMotion.js.map +1 -1
  611. package/dist/hooks/usePrefersReducedMotion.mjs +1 -0
  612. package/dist/hooks/usePrefersReducedMotion.mjs.map +1 -1
  613. package/dist/hooks/useResizeObserver.js +1 -0
  614. package/dist/hooks/useResizeObserver.mjs +1 -0
  615. package/dist/hooks/useSessionStorage.js +1 -1
  616. package/dist/hooks/useSessionStorage.mjs +1 -1
  617. package/dist/hooks/useTableFilter.js +1 -1
  618. package/dist/hooks/useTableFilter.mjs +1 -1
  619. package/dist/hooks/useTableSort.js +1 -1
  620. package/dist/hooks/useTableSort.mjs +1 -1
  621. package/dist/hooks/useThrottledCallback.js +1 -1
  622. package/dist/hooks/useThrottledCallback.mjs +1 -1
  623. package/dist/hooks/useToggle.js +1 -1
  624. package/dist/hooks/useToggle.mjs +1 -1
  625. package/dist/hooks/useWindowSize.js +1 -1
  626. package/dist/hooks/useWindowSize.mjs +1 -1
  627. package/dist/hooks/utils.js +1 -0
  628. package/dist/hooks/utils.mjs +1 -0
  629. package/dist/lib/facade.d.ts +53 -0
  630. package/dist/lib/facade.d.ts.map +1 -0
  631. package/dist/ui/accordion/animated.js +9 -7
  632. package/dist/ui/accordion/animated.js.map +1 -1
  633. package/dist/ui/accordion/animated.mjs +4 -2
  634. package/dist/ui/accordion/animated.mjs.map +1 -1
  635. package/dist/ui/accordion/variants.d.ts +2 -2
  636. package/dist/ui/accordion.js +11 -9
  637. package/dist/ui/accordion.js.map +1 -1
  638. package/dist/ui/accordion.mjs +4 -2
  639. package/dist/ui/accordion.mjs.map +1 -1
  640. package/dist/ui/alert/animated.js +4 -2
  641. package/dist/ui/alert/animated.js.map +1 -1
  642. package/dist/ui/alert/animated.mjs +3 -1
  643. package/dist/ui/alert/animated.mjs.map +1 -1
  644. package/dist/ui/alert/variants.d.ts +1 -1
  645. package/dist/ui/alert.js +12 -10
  646. package/dist/ui/alert.js.map +1 -1
  647. package/dist/ui/alert.mjs +4 -2
  648. package/dist/ui/alert.mjs.map +1 -1
  649. package/dist/ui/animated-number/variants.d.ts +1 -1
  650. package/dist/ui/animated-number.js +5 -37
  651. package/dist/ui/animated-number.js.map +1 -1
  652. package/dist/ui/animated-number.mjs +2 -34
  653. package/dist/ui/animated-number.mjs.map +1 -1
  654. package/dist/ui/avatar/animated.js +7 -5
  655. package/dist/ui/avatar/animated.js.map +1 -1
  656. package/dist/ui/avatar/animated.mjs +4 -2
  657. package/dist/ui/avatar/animated.mjs.map +1 -1
  658. package/dist/ui/avatar/variants.d.ts +1 -1
  659. package/dist/ui/avatar.js +11 -9
  660. package/dist/ui/avatar.js.map +1 -1
  661. package/dist/ui/avatar.mjs +4 -2
  662. package/dist/ui/avatar.mjs.map +1 -1
  663. package/dist/ui/badge/animated.js +4 -2
  664. package/dist/ui/badge/animated.js.map +1 -1
  665. package/dist/ui/badge/animated.mjs +3 -1
  666. package/dist/ui/badge/animated.mjs.map +1 -1
  667. package/dist/ui/badge/variants.d.ts +22 -1
  668. package/dist/ui/badge/variants.d.ts.map +1 -1
  669. package/dist/ui/badge.js +6 -4
  670. package/dist/ui/badge.js.map +1 -1
  671. package/dist/ui/badge.mjs +4 -2
  672. package/dist/ui/badge.mjs.map +1 -1
  673. package/dist/ui/breadcrumb/variants.d.ts +1 -1
  674. package/dist/ui/breadcrumb.js +10 -37
  675. package/dist/ui/breadcrumb.js.map +1 -1
  676. package/dist/ui/breadcrumb.mjs +2 -29
  677. package/dist/ui/breadcrumb.mjs.map +1 -1
  678. package/dist/ui/buttons/animated.js +43 -3
  679. package/dist/ui/buttons/animated.js.map +1 -1
  680. package/dist/ui/buttons/animated.mjs +41 -1
  681. package/dist/ui/buttons/animated.mjs.map +1 -1
  682. package/dist/ui/buttons/variants.d.ts +1 -1
  683. package/dist/ui/buttons.js +44 -4
  684. package/dist/ui/buttons.mjs +42 -2
  685. package/dist/ui/card/animated.js +9 -7
  686. package/dist/ui/card/animated.js.map +1 -1
  687. package/dist/ui/card/animated.mjs +4 -2
  688. package/dist/ui/card/animated.mjs.map +1 -1
  689. package/dist/ui/card/variants.d.ts +1 -1
  690. package/dist/ui/card.js +14 -12
  691. package/dist/ui/card.js.map +1 -1
  692. package/dist/ui/card.mjs +4 -2
  693. package/dist/ui/card.mjs.map +1 -1
  694. package/dist/ui/checkbox/animated.js +6 -4
  695. package/dist/ui/checkbox/animated.js.map +1 -1
  696. package/dist/ui/checkbox/animated.mjs +3 -1
  697. package/dist/ui/checkbox/animated.mjs.map +1 -1
  698. package/dist/ui/checkbox/variants.d.ts +1 -1
  699. package/dist/ui/checkbox.js +10 -8
  700. package/dist/ui/checkbox.js.map +1 -1
  701. package/dist/ui/checkbox.mjs +4 -2
  702. package/dist/ui/checkbox.mjs.map +1 -1
  703. package/dist/ui/command/animated.js +4 -2
  704. package/dist/ui/command/animated.js.map +1 -1
  705. package/dist/ui/command/animated.mjs +3 -1
  706. package/dist/ui/command/animated.mjs.map +1 -1
  707. package/dist/ui/command/variants.d.ts +1 -1
  708. package/dist/ui/command.js +17 -15
  709. package/dist/ui/command.js.map +1 -1
  710. package/dist/ui/command.mjs +4 -2
  711. package/dist/ui/command.mjs.map +1 -1
  712. package/dist/ui/context-menu/variants.d.ts +1 -1
  713. package/dist/ui/context-menu.js +9 -38
  714. package/dist/ui/context-menu.js.map +1 -1
  715. package/dist/ui/context-menu.mjs +3 -32
  716. package/dist/ui/context-menu.mjs.map +1 -1
  717. package/dist/ui/copy-button/animated.js +4 -2
  718. package/dist/ui/copy-button/animated.js.map +1 -1
  719. package/dist/ui/copy-button/animated.mjs +3 -1
  720. package/dist/ui/copy-button/animated.mjs.map +1 -1
  721. package/dist/ui/copy-button/variants.d.ts +1 -1
  722. package/dist/ui/copy-button.js +5 -3
  723. package/dist/ui/copy-button.js.map +1 -1
  724. package/dist/ui/copy-button.mjs +4 -2
  725. package/dist/ui/copy-button.mjs.map +1 -1
  726. package/dist/ui/divider/animated.js +4 -2
  727. package/dist/ui/divider/animated.js.map +1 -1
  728. package/dist/ui/divider/animated.mjs +3 -1
  729. package/dist/ui/divider/animated.mjs.map +1 -1
  730. package/dist/ui/divider/variants.d.ts +2 -2
  731. package/dist/ui/divider.js +8 -6
  732. package/dist/ui/divider.js.map +1 -1
  733. package/dist/ui/divider.mjs +4 -2
  734. package/dist/ui/divider.mjs.map +1 -1
  735. package/dist/ui/drawer/animated.js +13 -11
  736. package/dist/ui/drawer/animated.js.map +1 -1
  737. package/dist/ui/drawer/animated.mjs +4 -2
  738. package/dist/ui/drawer/animated.mjs.map +1 -1
  739. package/dist/ui/drawer/variants.d.ts +2 -2
  740. package/dist/ui/drawer.js +13 -11
  741. package/dist/ui/drawer.mjs +3 -1
  742. package/dist/ui/dropdown/types.d.ts +2 -1
  743. package/dist/ui/dropdown/types.d.ts.map +1 -1
  744. package/dist/ui/dropdown/variants.d.ts +2 -2
  745. package/dist/ui/dropdown.js +10 -9
  746. package/dist/ui/dropdown.js.map +1 -1
  747. package/dist/ui/dropdown.mjs +2 -1
  748. package/dist/ui/dropdown.mjs.map +1 -1
  749. package/dist/ui/dynamic-stepper/variants.d.ts +1 -1
  750. package/dist/ui/dynamic-stepper/variants.d.ts.map +1 -1
  751. package/dist/ui/dynamic-stepper.js +53 -132
  752. package/dist/ui/dynamic-stepper.js.map +1 -1
  753. package/dist/ui/dynamic-stepper.mjs +42 -121
  754. package/dist/ui/dynamic-stepper.mjs.map +1 -1
  755. package/dist/ui/empty-state/animated.js +4 -2
  756. package/dist/ui/empty-state/animated.js.map +1 -1
  757. package/dist/ui/empty-state/animated.mjs +3 -1
  758. package/dist/ui/empty-state/animated.mjs.map +1 -1
  759. package/dist/ui/empty-state/variants.d.ts +1 -1
  760. package/dist/ui/empty-state.js +12 -10
  761. package/dist/ui/empty-state.js.map +1 -1
  762. package/dist/ui/empty-state.mjs +4 -2
  763. package/dist/ui/empty-state.mjs.map +1 -1
  764. package/dist/ui/file-upload/variants.d.ts +1 -1
  765. package/dist/ui/file-upload.js +4 -23
  766. package/dist/ui/file-upload.js.map +1 -1
  767. package/dist/ui/file-upload.mjs +2 -21
  768. package/dist/ui/file-upload.mjs.map +1 -1
  769. package/dist/ui/inputs/animated.js +5 -3
  770. package/dist/ui/inputs/animated.js.map +1 -1
  771. package/dist/ui/inputs/animated.mjs +3 -1
  772. package/dist/ui/inputs/animated.mjs.map +1 -1
  773. package/dist/ui/inputs/variants.d.ts +1 -1
  774. package/dist/ui/inputs/variants.d.ts.map +1 -1
  775. package/dist/ui/inputs.js +6 -4
  776. package/dist/ui/inputs.js.map +1 -1
  777. package/dist/ui/inputs.mjs +4 -2
  778. package/dist/ui/inputs.mjs.map +1 -1
  779. package/dist/ui/kbd/animated.js +4 -2
  780. package/dist/ui/kbd/animated.js.map +1 -1
  781. package/dist/ui/kbd/animated.mjs +3 -1
  782. package/dist/ui/kbd/animated.mjs.map +1 -1
  783. package/dist/ui/kbd/variants.d.ts +1 -1
  784. package/dist/ui/kbd.js +6 -4
  785. package/dist/ui/kbd.js.map +1 -1
  786. package/dist/ui/kbd.mjs +4 -2
  787. package/dist/ui/kbd.mjs.map +1 -1
  788. package/dist/ui/marquee/variants.d.ts +1 -1
  789. package/dist/ui/marquee.js +7 -47
  790. package/dist/ui/marquee.js.map +1 -1
  791. package/dist/ui/marquee.mjs +2 -42
  792. package/dist/ui/marquee.mjs.map +1 -1
  793. package/dist/ui/modal/animated.js +6 -4
  794. package/dist/ui/modal/animated.js.map +1 -1
  795. package/dist/ui/modal/animated.mjs +3 -1
  796. package/dist/ui/modal/animated.mjs.map +1 -1
  797. package/dist/ui/modal/variants.d.ts +2 -2
  798. package/dist/ui/modal.js +14 -12
  799. package/dist/ui/modal.js.map +1 -1
  800. package/dist/ui/modal.mjs +4 -2
  801. package/dist/ui/modal.mjs.map +1 -1
  802. package/dist/ui/otp-input/variants.d.ts +1 -1
  803. package/dist/ui/otp-input.js +11 -36
  804. package/dist/ui/otp-input.js.map +1 -1
  805. package/dist/ui/otp-input.mjs +2 -27
  806. package/dist/ui/otp-input.mjs.map +1 -1
  807. package/dist/ui/pagination/types.d.ts +4 -2
  808. package/dist/ui/pagination/types.d.ts.map +1 -1
  809. package/dist/ui/pagination/variants.d.ts +1 -1
  810. package/dist/ui/pagination.js +49 -74
  811. package/dist/ui/pagination.js.map +1 -1
  812. package/dist/ui/pagination.mjs +41 -66
  813. package/dist/ui/pagination.mjs.map +1 -1
  814. package/dist/ui/popover/animated.js +6 -4
  815. package/dist/ui/popover/animated.js.map +1 -1
  816. package/dist/ui/popover/animated.mjs +3 -1
  817. package/dist/ui/popover/animated.mjs.map +1 -1
  818. package/dist/ui/popover/variants.d.ts +1 -1
  819. package/dist/ui/popover.js +9 -7
  820. package/dist/ui/popover.mjs +3 -1
  821. package/dist/ui/progress/animated.js +10 -8
  822. package/dist/ui/progress/animated.js.map +1 -1
  823. package/dist/ui/progress/animated.mjs +4 -2
  824. package/dist/ui/progress/animated.mjs.map +1 -1
  825. package/dist/ui/progress/variants.d.ts +3 -3
  826. package/dist/ui/progress.js +11 -9
  827. package/dist/ui/progress.js.map +1 -1
  828. package/dist/ui/progress.mjs +4 -2
  829. package/dist/ui/progress.mjs.map +1 -1
  830. package/dist/ui/radio-group/animated.js +9 -7
  831. package/dist/ui/radio-group/animated.js.map +1 -1
  832. package/dist/ui/radio-group/animated.mjs +3 -1
  833. package/dist/ui/radio-group/animated.mjs.map +1 -1
  834. package/dist/ui/radio-group/variants.d.ts +1 -1
  835. package/dist/ui/radio-group.js +13 -11
  836. package/dist/ui/radio-group.js.map +1 -1
  837. package/dist/ui/radio-group.mjs +4 -2
  838. package/dist/ui/radio-group.mjs.map +1 -1
  839. package/dist/ui/rating/variants.d.ts +1 -1
  840. package/dist/ui/rating.js +12 -53
  841. package/dist/ui/rating.js.map +1 -1
  842. package/dist/ui/rating.mjs +2 -43
  843. package/dist/ui/rating.mjs.map +1 -1
  844. package/dist/ui/scroll-area/variants.d.ts +1 -1
  845. package/dist/ui/scroll-area.js +8 -41
  846. package/dist/ui/scroll-area.js.map +1 -1
  847. package/dist/ui/scroll-area.mjs +2 -35
  848. package/dist/ui/scroll-area.mjs.map +1 -1
  849. package/dist/ui/search.js +4 -2
  850. package/dist/ui/search.js.map +1 -1
  851. package/dist/ui/search.mjs +3 -1
  852. package/dist/ui/search.mjs.map +1 -1
  853. package/dist/ui/select/types.d.ts +2 -1
  854. package/dist/ui/select/types.d.ts.map +1 -1
  855. package/dist/ui/select/variants.d.ts +3 -3
  856. package/dist/ui/select.js +12 -104
  857. package/dist/ui/select.js.map +1 -1
  858. package/dist/ui/select.mjs +2 -94
  859. package/dist/ui/select.mjs.map +1 -1
  860. package/dist/ui/skeleton/animated.js +10 -8
  861. package/dist/ui/skeleton/animated.js.map +1 -1
  862. package/dist/ui/skeleton/animated.mjs +3 -1
  863. package/dist/ui/skeleton/animated.mjs.map +1 -1
  864. package/dist/ui/skeleton/variants.d.ts +23 -2
  865. package/dist/ui/skeleton/variants.d.ts.map +1 -1
  866. package/dist/ui/skeleton.js +11 -9
  867. package/dist/ui/skeleton.mjs +3 -1
  868. package/dist/ui/slider/variants.d.ts +1 -1
  869. package/dist/ui/slider.js +10 -54
  870. package/dist/ui/slider.js.map +1 -1
  871. package/dist/ui/slider.mjs +2 -46
  872. package/dist/ui/slider.mjs.map +1 -1
  873. package/dist/ui/spinner/animated/variants.d.ts +1 -1
  874. package/dist/ui/spinner/animated.js +6 -45
  875. package/dist/ui/spinner/animated.js.map +1 -1
  876. package/dist/ui/spinner/animated.mjs +2 -41
  877. package/dist/ui/spinner/animated.mjs.map +1 -1
  878. package/dist/ui/table/animated.js +10 -8
  879. package/dist/ui/table/animated.js.map +1 -1
  880. package/dist/ui/table/animated.mjs +4 -2
  881. package/dist/ui/table/animated.mjs.map +1 -1
  882. package/dist/ui/table/variants.d.ts +3 -3
  883. package/dist/ui/table.js +16 -14
  884. package/dist/ui/table.mjs +3 -1
  885. package/dist/ui/tabs/animated.js +4 -2
  886. package/dist/ui/tabs/animated.js.map +1 -1
  887. package/dist/ui/tabs/animated.mjs +3 -1
  888. package/dist/ui/tabs/animated.mjs.map +1 -1
  889. package/dist/ui/tabs/types.d.ts +4 -2
  890. package/dist/ui/tabs/types.d.ts.map +1 -1
  891. package/dist/ui/tabs/variants.d.ts +1 -1
  892. package/dist/ui/tabs.js +11 -9
  893. package/dist/ui/tabs.mjs +3 -1
  894. package/dist/ui/timeline/animated.js +13 -11
  895. package/dist/ui/timeline/animated.js.map +1 -1
  896. package/dist/ui/timeline/animated.mjs +4 -2
  897. package/dist/ui/timeline/animated.mjs.map +1 -1
  898. package/dist/ui/timeline/variants.d.ts +1 -1
  899. package/dist/ui/timeline.js +16 -14
  900. package/dist/ui/timeline.js.map +1 -1
  901. package/dist/ui/timeline.mjs +4 -2
  902. package/dist/ui/timeline.mjs.map +1 -1
  903. package/dist/ui/toast/animated.js +9 -7
  904. package/dist/ui/toast/animated.js.map +1 -1
  905. package/dist/ui/toast/animated.mjs +3 -1
  906. package/dist/ui/toast/animated.mjs.map +1 -1
  907. package/dist/ui/toast/variants.d.ts +1 -1
  908. package/dist/ui/toast.js +14 -12
  909. package/dist/ui/toast.mjs +3 -1
  910. package/dist/ui/toggle/animated.js +6 -4
  911. package/dist/ui/toggle/animated.js.map +1 -1
  912. package/dist/ui/toggle/animated.mjs +3 -1
  913. package/dist/ui/toggle/animated.mjs.map +1 -1
  914. package/dist/ui/toggle/variants.d.ts +2 -2
  915. package/dist/ui/toggle.js +6 -4
  916. package/dist/ui/toggle.js.map +1 -1
  917. package/dist/ui/toggle.mjs +4 -2
  918. package/dist/ui/toggle.mjs.map +1 -1
  919. package/dist/ui/tooltip/animated.js +5 -3
  920. package/dist/ui/tooltip/animated.js.map +1 -1
  921. package/dist/ui/tooltip/animated.mjs +3 -1
  922. package/dist/ui/tooltip/animated.mjs.map +1 -1
  923. package/dist/ui/tooltip/types.d.ts +3 -1
  924. package/dist/ui/tooltip/types.d.ts.map +1 -1
  925. package/dist/ui/tooltip/variants.d.ts +1 -1
  926. package/dist/ui/tooltip.js +9 -7
  927. package/dist/ui/tooltip.mjs +3 -1
  928. package/dist/ui/tree-view/animated.js +4 -2
  929. package/dist/ui/tree-view/animated.js.map +1 -1
  930. package/dist/ui/tree-view/animated.mjs +3 -1
  931. package/dist/ui/tree-view/animated.mjs.map +1 -1
  932. package/dist/ui/tree-view/variants.d.ts +2 -2
  933. package/dist/ui/tree-view.js +7 -5
  934. package/dist/ui/tree-view.js.map +1 -1
  935. package/dist/ui/tree-view.mjs +4 -2
  936. package/dist/ui/tree-view.mjs.map +1 -1
  937. package/dist/ui/typography.js +9 -51
  938. package/dist/ui/typography.js.map +1 -1
  939. package/dist/ui/typography.mjs +2 -44
  940. package/dist/ui/typography.mjs.map +1 -1
  941. package/package.json +24 -18
  942. package/src/animations/animations.test.tsx +1 -2
  943. package/src/animations/shared/create-motion-animation.tsx +3 -1
  944. package/src/design-system/accordion.ts +66 -0
  945. package/src/design-system/alert.ts +33 -0
  946. package/src/design-system/animated-number.ts +33 -0
  947. package/src/design-system/avatar.ts +33 -0
  948. package/src/design-system/badge.ts +33 -0
  949. package/src/design-system/breadcrumb.ts +33 -0
  950. package/src/design-system/button.ts +34 -1
  951. package/src/design-system/card.ts +33 -0
  952. package/src/design-system/checkbox.ts +34 -1
  953. package/src/design-system/command.ts +33 -0
  954. package/src/design-system/context-menu.ts +21 -0
  955. package/src/design-system/copy-button.ts +34 -1
  956. package/src/design-system/divider.ts +33 -0
  957. package/src/design-system/drawer.ts +66 -0
  958. package/src/design-system/dropdown.ts +66 -0
  959. package/src/design-system/dynamic-stepper.ts +8 -23
  960. package/src/design-system/empty-state.ts +33 -0
  961. package/src/design-system/file-upload.ts +33 -0
  962. package/src/design-system/index.ts +0 -1
  963. package/src/design-system/inputs.ts +171 -0
  964. package/src/design-system/kbd.ts +34 -1
  965. package/src/design-system/marquee.ts +33 -0
  966. package/src/design-system/modal.ts +66 -0
  967. package/src/design-system/otp-input.ts +33 -0
  968. package/src/design-system/pagination.ts +33 -0
  969. package/src/design-system/popover.ts +31 -0
  970. package/src/design-system/progress.ts +33 -0
  971. package/src/design-system/radio-group.ts +33 -0
  972. package/src/design-system/rating.ts +33 -0
  973. package/src/design-system/scroll-area.ts +33 -0
  974. package/src/design-system/select.ts +99 -0
  975. package/src/design-system/skeleton.ts +75 -0
  976. package/src/design-system/slider.ts +34 -2
  977. package/src/design-system/spinner.ts +33 -0
  978. package/src/design-system/table.ts +99 -0
  979. package/src/design-system/tabs.ts +33 -0
  980. package/src/design-system/timeline.ts +33 -0
  981. package/src/design-system/toast.ts +33 -0
  982. package/src/design-system/toggle.ts +48 -0
  983. package/src/design-system/tooltip.ts +31 -0
  984. package/src/design-system/tree-view.ts +66 -0
  985. package/src/design-system/typography.ts +1 -1
  986. package/src/lib/facade.test.ts +182 -0
  987. package/src/lib/facade.ts +805 -0
  988. package/src/ui/dropdown/types.ts +3 -27
  989. package/src/ui/inputs/variants.ts +435 -0
  990. package/src/ui/pagination/types.ts +4 -2
  991. package/src/ui/select/types.ts +2 -23
  992. package/src/ui/tabs/types.ts +5 -42
  993. package/src/ui/tooltip/types.ts +4 -24
  994. package/dist/chunk-2F7P4EJQ.js.map +0 -1
  995. package/dist/chunk-2ZKW2E7B.mjs.map +0 -1
  996. package/dist/chunk-3F4FF2H4.mjs.map +0 -1
  997. package/dist/chunk-3J3FYIG3.js.map +0 -1
  998. package/dist/chunk-3W224B3M.js.map +0 -1
  999. package/dist/chunk-466QDL44.js +0 -77
  1000. package/dist/chunk-466QDL44.js.map +0 -1
  1001. package/dist/chunk-5565GZ4T.js.map +0 -1
  1002. package/dist/chunk-5IJC2OEN.js +0 -124
  1003. package/dist/chunk-5IJC2OEN.js.map +0 -1
  1004. package/dist/chunk-6HPS3ZOP.js +0 -529
  1005. package/dist/chunk-6HPS3ZOP.js.map +0 -1
  1006. package/dist/chunk-7XCUMSCJ.mjs +0 -80
  1007. package/dist/chunk-7XCUMSCJ.mjs.map +0 -1
  1008. package/dist/chunk-BJSWQQSC.mjs.map +0 -1
  1009. package/dist/chunk-BU2MPXPZ.js.map +0 -1
  1010. package/dist/chunk-CIEZFHCO.mjs +0 -75
  1011. package/dist/chunk-CIEZFHCO.mjs.map +0 -1
  1012. package/dist/chunk-CSFLMMAT.mjs.map +0 -1
  1013. package/dist/chunk-DEZRB6DS.mjs.map +0 -1
  1014. package/dist/chunk-DFCDLVZA.js.map +0 -1
  1015. package/dist/chunk-DY7HLVGW.mjs +0 -120
  1016. package/dist/chunk-DY7HLVGW.mjs.map +0 -1
  1017. package/dist/chunk-ECLHBSC6.mjs.map +0 -1
  1018. package/dist/chunk-EIRCCTNA.js.map +0 -1
  1019. package/dist/chunk-EZCYSFML.mjs.map +0 -1
  1020. package/dist/chunk-GRJFGIZC.mjs +0 -417
  1021. package/dist/chunk-GRJFGIZC.mjs.map +0 -1
  1022. package/dist/chunk-H7WDA6U6.mjs.map +0 -1
  1023. package/dist/chunk-HLG2YJFZ.mjs.map +0 -1
  1024. package/dist/chunk-HNLQXHSQ.mjs.map +0 -1
  1025. package/dist/chunk-IL4LH2XX.js +0 -342
  1026. package/dist/chunk-IL4LH2XX.js.map +0 -1
  1027. package/dist/chunk-IM6KN77X.mjs.map +0 -1
  1028. package/dist/chunk-INXWZ4DS.js.map +0 -1
  1029. package/dist/chunk-KVQI5PLL.mjs +0 -399
  1030. package/dist/chunk-KVQI5PLL.mjs.map +0 -1
  1031. package/dist/chunk-LNYCEPW5.js.map +0 -1
  1032. package/dist/chunk-NFEA5TN2.js.map +0 -1
  1033. package/dist/chunk-NMQAHUYA.mjs.map +0 -1
  1034. package/dist/chunk-NNZXBL7R.mjs.map +0 -1
  1035. package/dist/chunk-NRPG2STN.js +0 -401
  1036. package/dist/chunk-NRPG2STN.js.map +0 -1
  1037. package/dist/chunk-NSJ6KGW2.js.map +0 -1
  1038. package/dist/chunk-OL3BJSRC.mjs +0 -328
  1039. package/dist/chunk-OL3BJSRC.mjs.map +0 -1
  1040. package/dist/chunk-ORFI4BCJ.mjs.map +0 -1
  1041. package/dist/chunk-OZHETX4J.mjs.map +0 -1
  1042. package/dist/chunk-PYUZOVLY.js.map +0 -1
  1043. package/dist/chunk-QHEHBC6M.js +0 -421
  1044. package/dist/chunk-QHEHBC6M.js.map +0 -1
  1045. package/dist/chunk-R2JJTREQ.mjs.map +0 -1
  1046. package/dist/chunk-RIHJAEOL.js +0 -107
  1047. package/dist/chunk-RIHJAEOL.js.map +0 -1
  1048. package/dist/chunk-SSJXWD2M.mjs.map +0 -1
  1049. package/dist/chunk-TKVZU56F.mjs.map +0 -1
  1050. package/dist/chunk-TTTYW3TR.js.map +0 -1
  1051. package/dist/chunk-U3VV22G4.js.map +0 -1
  1052. package/dist/chunk-UPZ5XGUD.mjs +0 -100
  1053. package/dist/chunk-UPZ5XGUD.mjs.map +0 -1
  1054. package/dist/chunk-UR7TNW45.mjs +0 -519
  1055. package/dist/chunk-UR7TNW45.mjs.map +0 -1
  1056. package/dist/chunk-UROKWFPX.mjs.map +0 -1
  1057. package/dist/chunk-UY65KX3M.js.map +0 -1
  1058. package/dist/chunk-VHVQELWF.js.map +0 -1
  1059. package/dist/chunk-X3O45MPI.js.map +0 -1
  1060. package/dist/chunk-XYEMP4K7.js.map +0 -1
  1061. package/dist/chunk-ZUT7ZUM7.js +0 -84
  1062. package/dist/chunk-ZUT7ZUM7.js.map +0 -1
  1063. package/dist/chunk-ZX2IBIZT.js.map +0 -1
  1064. package/dist/design-system/stepper.d.ts +0 -42
  1065. package/dist/design-system/stepper.d.ts.map +0 -1
  1066. package/dist/ui/stepper/index.d.ts +0 -4
  1067. package/dist/ui/stepper/index.d.ts.map +0 -1
  1068. package/dist/ui/stepper/stepper.d.ts +0 -28
  1069. package/dist/ui/stepper/stepper.d.ts.map +0 -1
  1070. package/dist/ui/stepper/types.d.ts +0 -25
  1071. package/dist/ui/stepper/types.d.ts.map +0 -1
  1072. package/dist/ui/stepper/variants.d.ts +0 -11
  1073. package/dist/ui/stepper/variants.d.ts.map +0 -1
  1074. package/dist/ui/stepper.js +0 -216
  1075. package/dist/ui/stepper.js.map +0 -1
  1076. package/dist/ui/stepper.mjs +0 -207
  1077. package/dist/ui/stepper.mjs.map +0 -1
  1078. package/src/design-system/stepper.ts +0 -66
  1079. package/src/ui/stepper/index.ts +0 -22
  1080. package/src/ui/stepper/stepper.test.tsx +0 -190
  1081. package/src/ui/stepper/stepper.tsx +0 -171
  1082. package/src/ui/stepper/types.ts +0 -38
  1083. 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":"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","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
+ {"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":"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","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-UR7TNW45.mjs';
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":"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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"]}
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;;;;;;;;;;;;;;;;;;;;;;;;;CAAoC,CAAC;AAChF,MAAM,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AAEzD,eAAO,MAAM,gBAAgB;;;;;;8EA6I3B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;8EAKnC,CAAC"}
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"}
@@ -1,42 +1,44 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunk6HPS3ZOP_js = require('../chunk-6HPS3ZOP.js');
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 chunk6HPS3ZOP_js.SkeletonBase; }
13
+ get: function () { return chunkP2DQP4J4_js.SkeletonBase; }
12
14
  });
13
15
  Object.defineProperty(exports, "SkeletonAvatar", {
14
16
  enumerable: true,
15
- get: function () { return chunk6HPS3ZOP_js.SkeletonAvatarBase; }
17
+ get: function () { return chunkP2DQP4J4_js.SkeletonAvatarBase; }
16
18
  });
17
19
  Object.defineProperty(exports, "SkeletonButton", {
18
20
  enumerable: true,
19
- get: function () { return chunk6HPS3ZOP_js.SkeletonButtonBase; }
21
+ get: function () { return chunkP2DQP4J4_js.SkeletonButtonBase; }
20
22
  });
21
23
  Object.defineProperty(exports, "SkeletonCard", {
22
24
  enumerable: true,
23
- get: function () { return chunk6HPS3ZOP_js.SkeletonCardBase; }
25
+ get: function () { return chunkP2DQP4J4_js.SkeletonCardBase; }
24
26
  });
25
27
  Object.defineProperty(exports, "SkeletonText", {
26
28
  enumerable: true,
27
- get: function () { return chunk6HPS3ZOP_js.SkeletonTextBase; }
29
+ get: function () { return chunkP2DQP4J4_js.SkeletonTextBase; }
28
30
  });
29
31
  Object.defineProperty(exports, "skeletonShimmerGradientClasses", {
30
32
  enumerable: true,
31
- get: function () { return chunk6HPS3ZOP_js.skeletonShimmerGradientClasses; }
33
+ get: function () { return chunkP2DQP4J4_js.skeletonShimmerGradientClasses; }
32
34
  });
33
35
  Object.defineProperty(exports, "skeletonTextLineVariants", {
34
36
  enumerable: true,
35
- get: function () { return chunk6HPS3ZOP_js.skeletonTextLineVariants; }
37
+ get: function () { return chunkP2DQP4J4_js.skeletonTextLineVariants; }
36
38
  });
37
39
  Object.defineProperty(exports, "skeletonVariants", {
38
40
  enumerable: true,
39
- get: function () { return chunk6HPS3ZOP_js.skeletonVariants; }
41
+ get: function () { return chunkP2DQP4J4_js.skeletonVariants; }
40
42
  });
41
43
  //# sourceMappingURL=skeleton.js.map
42
44
  //# sourceMappingURL=skeleton.js.map
@@ -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-UR7TNW45.mjs';
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
- // src/design-system/slider.ts
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"
@@ -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"]}