@mdigital_ui/ui 0.4.2 → 0.4.4

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 (591) hide show
  1. package/README.md +45 -5
  2. package/dist/accordion/index.d.ts.map +1 -1
  3. package/dist/accordion/index.js +3 -3
  4. package/dist/accordion/types.d.ts +2 -42
  5. package/dist/accordion/types.d.ts.map +1 -1
  6. package/dist/alert/index.d.ts +6 -0
  7. package/dist/alert/index.d.ts.map +1 -0
  8. package/dist/alert/index.js +5 -0
  9. package/dist/alert/types.d.ts +24 -0
  10. package/dist/alert/types.d.ts.map +1 -0
  11. package/dist/anchor/index.d.ts +6 -0
  12. package/dist/anchor/index.d.ts.map +1 -0
  13. package/dist/anchor/types.d.ts +26 -0
  14. package/dist/anchor/types.d.ts.map +1 -0
  15. package/dist/autocomplete/index.d.ts +6 -0
  16. package/dist/autocomplete/index.d.ts.map +1 -0
  17. package/dist/autocomplete/types.d.ts +39 -0
  18. package/dist/autocomplete/types.d.ts.map +1 -0
  19. package/dist/avatar/index.d.ts +0 -6
  20. package/dist/avatar/index.d.ts.map +1 -1
  21. package/dist/avatar/index.js +3 -2
  22. package/dist/avatar/types.d.ts +0 -48
  23. package/dist/avatar/types.d.ts.map +1 -1
  24. package/dist/badge/index.d.ts +1 -23
  25. package/dist/badge/index.d.ts.map +1 -1
  26. package/dist/badge/index.js +3 -3
  27. package/dist/badge/types.d.ts +1 -20
  28. package/dist/badge/types.d.ts.map +1 -1
  29. package/dist/breadcrumbs/index.d.ts.map +1 -1
  30. package/dist/breadcrumbs/index.js +7 -6
  31. package/dist/breadcrumbs/types.d.ts +3 -38
  32. package/dist/breadcrumbs/types.d.ts.map +1 -1
  33. package/dist/button/index.d.ts +1 -1
  34. package/dist/button/index.d.ts.map +1 -1
  35. package/dist/button/index.js +5 -5
  36. package/dist/button/types.d.ts +2 -8
  37. package/dist/button/types.d.ts.map +1 -1
  38. package/dist/button-group/index.d.ts +0 -28
  39. package/dist/button-group/index.d.ts.map +1 -1
  40. package/dist/button-group/index.js +2 -2
  41. package/dist/button-group/types.d.ts +0 -19
  42. package/dist/button-group/types.d.ts.map +1 -1
  43. package/dist/calendar/index.d.ts +6 -0
  44. package/dist/calendar/index.d.ts.map +1 -0
  45. package/dist/calendar/types.d.ts +29 -0
  46. package/dist/calendar/types.d.ts.map +1 -0
  47. package/dist/card/index.d.ts +1 -41
  48. package/dist/card/index.d.ts.map +1 -1
  49. package/dist/card/index.js +3 -3
  50. package/dist/card/types.d.ts +3 -29
  51. package/dist/card/types.d.ts.map +1 -1
  52. package/dist/carousel/carousel-navigation.d.ts.map +1 -1
  53. package/dist/carousel/index.d.ts +5 -2
  54. package/dist/carousel/index.d.ts.map +1 -1
  55. package/dist/carousel/index.js +2 -2
  56. package/dist/carousel/styles.d.ts +12 -0
  57. package/dist/carousel/styles.d.ts.map +1 -0
  58. package/dist/cascader/CascaderMenu.d.ts +41 -0
  59. package/dist/cascader/CascaderMenu.d.ts.map +1 -0
  60. package/dist/cascader/index.d.ts +0 -21
  61. package/dist/cascader/index.d.ts.map +1 -1
  62. package/dist/cascader/index.js +3 -3
  63. package/dist/cascader/types.d.ts +3 -89
  64. package/dist/cascader/types.d.ts.map +1 -1
  65. package/dist/checkbox/index.d.ts.map +1 -1
  66. package/dist/checkbox/index.js +3 -3
  67. package/dist/checkbox/types.d.ts +2 -2
  68. package/dist/checkbox/types.d.ts.map +1 -1
  69. package/dist/checkbox-group/index.d.ts.map +1 -1
  70. package/dist/checkbox-group/index.js +2 -2
  71. package/dist/checkbox-group/types.d.ts +0 -24
  72. package/dist/checkbox-group/types.d.ts.map +1 -1
  73. package/dist/{chunk-HCOTO5WX.js → chunk-253JZOYG.js} +8 -9
  74. package/dist/chunk-253JZOYG.js.map +1 -0
  75. package/dist/{chunk-FZSCLZF6.js → chunk-3D77IPKB.js} +68 -113
  76. package/dist/chunk-3D77IPKB.js.map +1 -0
  77. package/dist/{chunk-GJPZOMFE.js → chunk-3XOHSE3X.js} +71 -34
  78. package/dist/chunk-3XOHSE3X.js.map +1 -0
  79. package/dist/{chunk-ROA7BYGB.js → chunk-3YP7HY3Y.js} +7 -5
  80. package/dist/chunk-3YP7HY3Y.js.map +1 -0
  81. package/dist/chunk-4HKPDSA6.js +378 -0
  82. package/dist/chunk-4HKPDSA6.js.map +1 -0
  83. package/dist/{chunk-OFUPJH35.js → chunk-4TEZWGX7.js} +3 -3
  84. package/dist/{chunk-OFUPJH35.js.map → chunk-4TEZWGX7.js.map} +1 -1
  85. package/dist/{chunk-TLNHWOQQ.js → chunk-4ZXHLPRS.js} +53 -44
  86. package/dist/chunk-4ZXHLPRS.js.map +1 -0
  87. package/dist/{chunk-6LYRMQOI.js → chunk-5MBKTMDW.js} +21 -16
  88. package/dist/chunk-5MBKTMDW.js.map +1 -0
  89. package/dist/{chunk-CN74CNAN.js → chunk-5SEVPU6C.js} +8 -22
  90. package/dist/chunk-5SEVPU6C.js.map +1 -0
  91. package/dist/{chunk-6JGNJI5T.js → chunk-7RT65ZGV.js} +38 -26
  92. package/dist/chunk-7RT65ZGV.js.map +1 -0
  93. package/dist/{chunk-I32ZQUYY.js → chunk-A4MYCEGM.js} +15 -16
  94. package/dist/chunk-A4MYCEGM.js.map +1 -0
  95. package/dist/{chunk-KJTMZJ7V.js → chunk-ADZWWBAX.js} +76 -110
  96. package/dist/chunk-ADZWWBAX.js.map +1 -0
  97. package/dist/{chunk-YXLIGJTN.js → chunk-AFW2ORFT.js} +16 -8
  98. package/dist/chunk-AFW2ORFT.js.map +1 -0
  99. package/dist/{chunk-OLTQAMV2.js → chunk-BGMYX7L5.js} +9 -24
  100. package/dist/chunk-BGMYX7L5.js.map +1 -0
  101. package/dist/chunk-BKLJDEUX.js +857 -0
  102. package/dist/chunk-BKLJDEUX.js.map +1 -0
  103. package/dist/{chunk-4FFVNUTK.js → chunk-BNHRUHI4.js} +7 -6
  104. package/dist/chunk-BNHRUHI4.js.map +1 -0
  105. package/dist/{chunk-DUIL5BYS.js → chunk-BS4PZPY6.js} +82 -53
  106. package/dist/chunk-BS4PZPY6.js.map +1 -0
  107. package/dist/{chunk-POLVJ36Y.js → chunk-C32HL4XU.js} +13 -38
  108. package/dist/chunk-C32HL4XU.js.map +1 -0
  109. package/dist/chunk-C65SCJD6.js +138 -0
  110. package/dist/chunk-C65SCJD6.js.map +1 -0
  111. package/dist/{chunk-3BZE6BBJ.js → chunk-CUXQZRDI.js} +45 -34
  112. package/dist/chunk-CUXQZRDI.js.map +1 -0
  113. package/dist/{chunk-674JC24S.js → chunk-DDZCRCTQ.js} +28 -29
  114. package/dist/chunk-DDZCRCTQ.js.map +1 -0
  115. package/dist/{chunk-64NHVOZS.js → chunk-FU5Q4WVX.js} +26 -16
  116. package/dist/chunk-FU5Q4WVX.js.map +1 -0
  117. package/dist/chunk-G6QIIWKU.js +24 -0
  118. package/dist/chunk-G6QIIWKU.js.map +1 -0
  119. package/dist/{chunk-UTWQ2FZK.js → chunk-GOBUFGGJ.js} +45 -108
  120. package/dist/chunk-GOBUFGGJ.js.map +1 -0
  121. package/dist/{chunk-WRSG7WU5.js → chunk-HJITFPBT.js} +78 -94
  122. package/dist/chunk-HJITFPBT.js.map +1 -0
  123. package/dist/{chunk-ZJNGZCRB.js → chunk-HR5TGNOF.js} +54 -153
  124. package/dist/chunk-HR5TGNOF.js.map +1 -0
  125. package/dist/{chunk-HECAAILV.js → chunk-HRVOTFU4.js} +24 -16
  126. package/dist/chunk-HRVOTFU4.js.map +1 -0
  127. package/dist/{chunk-LX4FDH4J.js → chunk-HSMO2BR4.js} +13 -22
  128. package/dist/chunk-HSMO2BR4.js.map +1 -0
  129. package/dist/chunk-HVHQA34X.js +534 -0
  130. package/dist/chunk-HVHQA34X.js.map +1 -0
  131. package/dist/{chunk-6G3BMY4N.js → chunk-I5AD247M.js} +80 -85
  132. package/dist/chunk-I5AD247M.js.map +1 -0
  133. package/dist/chunk-I7HJBHQU.js +99 -0
  134. package/dist/chunk-I7HJBHQU.js.map +1 -0
  135. package/dist/{chunk-3PWILVOE.js → chunk-J2WIZULN.js} +50 -50
  136. package/dist/chunk-J2WIZULN.js.map +1 -0
  137. package/dist/{chunk-VOODO2ZE.js → chunk-JFTSWOGE.js} +12 -32
  138. package/dist/chunk-JFTSWOGE.js.map +1 -0
  139. package/dist/{chunk-LOYLJRCF.js → chunk-JIXINKUJ.js} +8 -17
  140. package/dist/chunk-JIXINKUJ.js.map +1 -0
  141. package/dist/{chunk-6HGUDHHE.js → chunk-L5BU2QTI.js} +3 -5
  142. package/dist/chunk-L5BU2QTI.js.map +1 -0
  143. package/dist/chunk-LJOQ2C5W.js +81 -0
  144. package/dist/chunk-LJOQ2C5W.js.map +1 -0
  145. package/dist/chunk-LWYZCSX4.js +531 -0
  146. package/dist/chunk-LWYZCSX4.js.map +1 -0
  147. package/dist/{chunk-3BIV3QE2.js → chunk-LXHFGQOI.js} +61 -29
  148. package/dist/chunk-LXHFGQOI.js.map +1 -0
  149. package/dist/{chunk-ZIYA7TGX.js → chunk-NMP4HY6M.js} +13 -23
  150. package/dist/chunk-NMP4HY6M.js.map +1 -0
  151. package/dist/{chunk-2TLOWZE4.js → chunk-NTCAZ2LF.js} +64 -183
  152. package/dist/chunk-NTCAZ2LF.js.map +1 -0
  153. package/dist/chunk-NZHKNUGE.js +96 -0
  154. package/dist/chunk-NZHKNUGE.js.map +1 -0
  155. package/dist/{chunk-764UKE6X.js → chunk-OGB5QPNZ.js} +11 -92
  156. package/dist/chunk-OGB5QPNZ.js.map +1 -0
  157. package/dist/chunk-OJAHIPPP.js +198 -0
  158. package/dist/chunk-OJAHIPPP.js.map +1 -0
  159. package/dist/{chunk-2PNLIQYM.js → chunk-ON76IMMI.js} +3 -3
  160. package/dist/chunk-ON76IMMI.js.map +1 -0
  161. package/dist/{chunk-HUXODBIO.js → chunk-PB5VGXS5.js} +42 -101
  162. package/dist/chunk-PB5VGXS5.js.map +1 -0
  163. package/dist/chunk-PQOIW5CM.js +27 -0
  164. package/dist/chunk-PQOIW5CM.js.map +1 -0
  165. package/dist/{chunk-BVO2BNFG.js → chunk-PRDJLQLB.js} +23 -103
  166. package/dist/chunk-PRDJLQLB.js.map +1 -0
  167. package/dist/{chunk-N2WHJ3FI.js → chunk-QEAALOJC.js} +14 -16
  168. package/dist/chunk-QEAALOJC.js.map +1 -0
  169. package/dist/{chunk-NGYLRX6F.js → chunk-RAS6HUEI.js} +2 -2
  170. package/dist/chunk-RAS6HUEI.js.map +1 -0
  171. package/dist/{chunk-C5IGZLIT.js → chunk-ROQGBDET.js} +9 -23
  172. package/dist/chunk-ROQGBDET.js.map +1 -0
  173. package/dist/{chunk-Y4XAXZHB.js → chunk-RRPMZYVN.js} +9 -8
  174. package/dist/chunk-RRPMZYVN.js.map +1 -0
  175. package/dist/{chunk-D4SUSZDN.js → chunk-S6HO7HUY.js} +19 -17
  176. package/dist/chunk-S6HO7HUY.js.map +1 -0
  177. package/dist/{chunk-YS5AIY4A.js → chunk-SFP77VS3.js} +6 -5
  178. package/dist/chunk-SFP77VS3.js.map +1 -0
  179. package/dist/{chunk-RFHTC6AH.js → chunk-SJLH5ZDW.js} +16 -38
  180. package/dist/chunk-SJLH5ZDW.js.map +1 -0
  181. package/dist/{chunk-SGRACNBP.js → chunk-STAYOHDI.js} +13 -5
  182. package/dist/chunk-STAYOHDI.js.map +1 -0
  183. package/dist/{chunk-ON2CMF6J.js → chunk-TBKPQOXF.js} +58 -35
  184. package/dist/chunk-TBKPQOXF.js.map +1 -0
  185. package/dist/{chunk-GOLARX5K.js → chunk-TDNPACQD.js} +14 -11
  186. package/dist/chunk-TDNPACQD.js.map +1 -0
  187. package/dist/{chunk-7UCNBMCV.js → chunk-TQEMGWZ2.js} +27 -34
  188. package/dist/chunk-TQEMGWZ2.js.map +1 -0
  189. package/dist/{chunk-X3YNHX77.js → chunk-U4JPTWK6.js} +33 -34
  190. package/dist/chunk-U4JPTWK6.js.map +1 -0
  191. package/dist/{chunk-R3TLU26W.js → chunk-UFC3RGIN.js} +9 -7
  192. package/dist/chunk-UFC3RGIN.js.map +1 -0
  193. package/dist/{chunk-KH577UDI.js → chunk-W5VLFE4U.js} +11 -8
  194. package/dist/chunk-W5VLFE4U.js.map +1 -0
  195. package/dist/{chunk-G6NVGBYZ.js → chunk-WG5AYAC6.js} +27 -35
  196. package/dist/chunk-WG5AYAC6.js.map +1 -0
  197. package/dist/{chunk-YJOLLSHH.js → chunk-WQT24BGG.js} +44 -49
  198. package/dist/chunk-WQT24BGG.js.map +1 -0
  199. package/dist/{chunk-JWTWPZ32.js → chunk-X7MF3TIF.js} +15 -19
  200. package/dist/chunk-X7MF3TIF.js.map +1 -0
  201. package/dist/chunk-XAM5EKOS.js +150 -0
  202. package/dist/chunk-XAM5EKOS.js.map +1 -0
  203. package/dist/{chunk-EHWXPH76.js → chunk-XBXPY7U3.js} +9 -7
  204. package/dist/chunk-XBXPY7U3.js.map +1 -0
  205. package/dist/{chunk-5PUATOLR.js → chunk-XCK62GVU.js} +4 -4
  206. package/dist/chunk-XCK62GVU.js.map +1 -0
  207. package/dist/{chunk-ONGJXAYQ.js → chunk-XMBZBXXS.js} +9 -16
  208. package/dist/chunk-XMBZBXXS.js.map +1 -0
  209. package/dist/{chunk-H6G4BUPA.js → chunk-XOEEAMMY.js} +210 -183
  210. package/dist/chunk-XOEEAMMY.js.map +1 -0
  211. package/dist/{chunk-O3V3BTIJ.js → chunk-Z3DIBMBQ.js} +60 -107
  212. package/dist/chunk-Z3DIBMBQ.js.map +1 -0
  213. package/dist/clipboard/index.d.ts.map +1 -1
  214. package/dist/clipboard/index.js +4 -4
  215. package/dist/clipboard/types.d.ts +2 -35
  216. package/dist/clipboard/types.d.ts.map +1 -1
  217. package/dist/collapse/index.d.ts.map +1 -1
  218. package/dist/collapse/index.js +4 -3
  219. package/dist/collapse/types.d.ts +2 -35
  220. package/dist/collapse/types.d.ts.map +1 -1
  221. package/dist/color-picker/index.d.ts +8 -0
  222. package/dist/color-picker/index.d.ts.map +1 -0
  223. package/dist/color-picker/types.d.ts +42 -0
  224. package/dist/color-picker/types.d.ts.map +1 -0
  225. package/dist/command/index.d.ts +39 -66
  226. package/dist/command/index.d.ts.map +1 -1
  227. package/dist/command/index.js +4 -3
  228. package/dist/command/types.d.ts +2 -2
  229. package/dist/command/types.d.ts.map +1 -1
  230. package/dist/context-menu/index.d.ts +2 -46
  231. package/dist/context-menu/index.d.ts.map +1 -1
  232. package/dist/context-menu/index.js +5 -3
  233. package/dist/context-menu/types.d.ts +21 -63
  234. package/dist/context-menu/types.d.ts.map +1 -1
  235. package/dist/date-picker/CalendarHeader.d.ts +18 -0
  236. package/dist/date-picker/CalendarHeader.d.ts.map +1 -0
  237. package/dist/date-picker/MonthSelector.d.ts +11 -0
  238. package/dist/date-picker/MonthSelector.d.ts.map +1 -0
  239. package/dist/date-picker/PickerWrapper.d.ts +18 -0
  240. package/dist/date-picker/PickerWrapper.d.ts.map +1 -0
  241. package/dist/date-picker/RangePicker.d.ts +4 -0
  242. package/dist/date-picker/RangePicker.d.ts.map +1 -0
  243. package/dist/date-picker/TimePicker.d.ts +4 -0
  244. package/dist/date-picker/TimePicker.d.ts.map +1 -0
  245. package/dist/date-picker/YearSelector.d.ts +10 -0
  246. package/dist/date-picker/YearSelector.d.ts.map +1 -0
  247. package/dist/date-picker/index.d.ts +6 -6
  248. package/dist/date-picker/index.d.ts.map +1 -1
  249. package/dist/date-picker/index.js +4 -4
  250. package/dist/date-picker/shared.d.ts +3 -0
  251. package/dist/date-picker/shared.d.ts.map +1 -0
  252. package/dist/date-picker/types.d.ts +2 -2
  253. package/dist/date-picker/types.d.ts.map +1 -1
  254. package/dist/date-picker/utils.d.ts +1 -1
  255. package/dist/date-picker/utils.d.ts.map +1 -1
  256. package/dist/descriptions/index.d.ts.map +1 -1
  257. package/dist/descriptions/index.js +3 -2
  258. package/dist/divider/index.d.ts.map +1 -1
  259. package/dist/divider/index.js +3 -2
  260. package/dist/divider/types.d.ts +0 -12
  261. package/dist/divider/types.d.ts.map +1 -1
  262. package/dist/drawer/index.d.ts +4 -1
  263. package/dist/drawer/index.d.ts.map +1 -1
  264. package/dist/drawer/index.js +2 -2
  265. package/dist/drawer/types.d.ts +2 -145
  266. package/dist/drawer/types.d.ts.map +1 -1
  267. package/dist/dropdown/index.d.ts.map +1 -1
  268. package/dist/dropdown/index.js +6 -5
  269. package/dist/dropdown/types.d.ts +2 -71
  270. package/dist/dropdown/types.d.ts.map +1 -1
  271. package/dist/fetching-overlay/index.d.ts.map +1 -1
  272. package/dist/fetching-overlay/index.js +4 -4
  273. package/dist/float-button/index.d.ts +9 -0
  274. package/dist/float-button/index.d.ts.map +1 -0
  275. package/dist/float-button/types.d.ts +45 -0
  276. package/dist/float-button/types.d.ts.map +1 -0
  277. package/dist/float-input/index.d.ts.map +1 -1
  278. package/dist/float-input/index.js +4 -4
  279. package/dist/float-input/types.d.ts +5 -10
  280. package/dist/float-input/types.d.ts.map +1 -1
  281. package/dist/grid/index.d.ts +1 -1
  282. package/dist/grid/index.d.ts.map +1 -1
  283. package/dist/grid/index.js +2 -2
  284. package/dist/grid/types.d.ts +1 -9
  285. package/dist/grid/types.d.ts.map +1 -1
  286. package/dist/hooks/index.d.ts +1 -0
  287. package/dist/hooks/index.d.ts.map +1 -1
  288. package/dist/hooks/useMenuNavigation.d.ts +18 -0
  289. package/dist/hooks/useMenuNavigation.d.ts.map +1 -0
  290. package/dist/image/index.d.ts.map +1 -1
  291. package/dist/image/index.js +2 -2
  292. package/dist/image/types.d.ts +2 -34
  293. package/dist/image/types.d.ts.map +1 -1
  294. package/dist/index.d.ts +30 -3
  295. package/dist/index.d.ts.map +1 -1
  296. package/dist/index.js +3030 -90
  297. package/dist/index.js.map +1 -1
  298. package/dist/input/index.d.ts.map +1 -1
  299. package/dist/input/index.js +4 -4
  300. package/dist/input/types.d.ts +9 -4
  301. package/dist/input/types.d.ts.map +1 -1
  302. package/dist/input-group/index.d.ts.map +1 -1
  303. package/dist/input-group/index.js +2 -2
  304. package/dist/input-group/types.d.ts +7 -19
  305. package/dist/input-group/types.d.ts.map +1 -1
  306. package/dist/input-otp/index.d.ts.map +1 -1
  307. package/dist/input-otp/index.js +2 -2
  308. package/dist/input-otp/types.d.ts +3 -81
  309. package/dist/input-otp/types.d.ts.map +1 -1
  310. package/dist/input-password/index.d.ts.map +1 -1
  311. package/dist/input-password/index.js +5 -5
  312. package/dist/input-password/types.d.ts +0 -6
  313. package/dist/input-password/types.d.ts.map +1 -1
  314. package/dist/kbd/index.d.ts.map +1 -1
  315. package/dist/kbd/index.js +3 -3
  316. package/dist/kbd/types.d.ts +2 -17
  317. package/dist/kbd/types.d.ts.map +1 -1
  318. package/dist/link/index.d.ts +1 -1
  319. package/dist/link/index.d.ts.map +1 -1
  320. package/dist/link/index.js +3 -2
  321. package/dist/mentions/index.d.ts +6 -0
  322. package/dist/mentions/index.d.ts.map +1 -0
  323. package/dist/mentions/types.d.ts +36 -0
  324. package/dist/mentions/types.d.ts.map +1 -0
  325. package/dist/menubar/index.d.ts.map +1 -1
  326. package/dist/menubar/index.js +5 -4
  327. package/dist/modal/index.d.ts +1 -1
  328. package/dist/modal/index.d.ts.map +1 -1
  329. package/dist/modal/index.js +2 -2
  330. package/dist/modal/types.d.ts +7 -41
  331. package/dist/modal/types.d.ts.map +1 -1
  332. package/dist/multi-select/index.d.ts.map +1 -1
  333. package/dist/multi-select/index.js +8 -6
  334. package/dist/multi-select/types.d.ts +2 -34
  335. package/dist/multi-select/types.d.ts.map +1 -1
  336. package/dist/navigation-menu/index.d.ts.map +1 -1
  337. package/dist/navigation-menu/index.js +2 -2
  338. package/dist/navigation-menu/types.d.ts +2 -0
  339. package/dist/navigation-menu/types.d.ts.map +1 -1
  340. package/dist/notification/index.d.ts.map +1 -1
  341. package/dist/notification/index.js +3 -3
  342. package/dist/notification/types.d.ts +2 -62
  343. package/dist/notification/types.d.ts.map +1 -1
  344. package/dist/number-input/index.d.ts.map +1 -1
  345. package/dist/number-input/index.js +6 -5
  346. package/dist/number-input/types.d.ts +5 -2
  347. package/dist/number-input/types.d.ts.map +1 -1
  348. package/dist/pagination/index.d.ts.map +1 -1
  349. package/dist/pagination/index.js +4 -3
  350. package/dist/pagination/types.d.ts +3 -53
  351. package/dist/pagination/types.d.ts.map +1 -1
  352. package/dist/popover/index.d.ts +1 -1
  353. package/dist/popover/index.d.ts.map +1 -1
  354. package/dist/popover/index.js +3 -3
  355. package/dist/popover/types.d.ts +3 -17
  356. package/dist/popover/types.d.ts.map +1 -1
  357. package/dist/progress/index.d.ts.map +1 -1
  358. package/dist/progress/index.js +3 -2
  359. package/dist/progress/styles.d.ts +4 -5
  360. package/dist/progress/styles.d.ts.map +1 -1
  361. package/dist/progress/types.d.ts +2 -44
  362. package/dist/progress/types.d.ts.map +1 -1
  363. package/dist/qr-code/index.d.ts +6 -0
  364. package/dist/qr-code/index.d.ts.map +1 -0
  365. package/dist/qr-code/types.d.ts +49 -0
  366. package/dist/qr-code/types.d.ts.map +1 -0
  367. package/dist/radio/index.d.ts.map +1 -1
  368. package/dist/radio/index.js +3 -3
  369. package/dist/radio/types.d.ts +2 -2
  370. package/dist/radio/types.d.ts.map +1 -1
  371. package/dist/radio-group/index.d.ts.map +1 -1
  372. package/dist/radio-group/index.js +2 -2
  373. package/dist/radio-group/types.d.ts +0 -24
  374. package/dist/radio-group/types.d.ts.map +1 -1
  375. package/dist/rating/index.d.ts.map +1 -1
  376. package/dist/rating/index.js +3 -2
  377. package/dist/rating/types.d.ts +2 -2
  378. package/dist/rating/types.d.ts.map +1 -1
  379. package/dist/resizable/index.d.ts +7 -0
  380. package/dist/resizable/index.d.ts.map +1 -0
  381. package/dist/resizable/types.d.ts +8 -0
  382. package/dist/resizable/types.d.ts.map +1 -0
  383. package/dist/result/index.d.ts +6 -0
  384. package/dist/result/index.d.ts.map +1 -0
  385. package/dist/result/types.d.ts +22 -0
  386. package/dist/result/types.d.ts.map +1 -0
  387. package/dist/scroll-area/index.d.ts.map +1 -1
  388. package/dist/scroll-area/index.js +2 -2
  389. package/dist/select/index.d.ts.map +1 -1
  390. package/dist/select/index.js +8 -6
  391. package/dist/select/types.d.ts +8 -3
  392. package/dist/select/types.d.ts.map +1 -1
  393. package/dist/shared/useSelectBase.d.ts +4 -2
  394. package/dist/shared/useSelectBase.d.ts.map +1 -1
  395. package/dist/skeleton/index.d.ts.map +1 -1
  396. package/dist/skeleton/index.js +3 -3
  397. package/dist/skeleton/types.d.ts +1 -1
  398. package/dist/skeleton/types.d.ts.map +1 -1
  399. package/dist/slider/index.d.ts.map +1 -1
  400. package/dist/slider/index.js +3 -2
  401. package/dist/slider/types.d.ts +2 -36
  402. package/dist/slider/types.d.ts.map +1 -1
  403. package/dist/spinner/index.d.ts +2 -1
  404. package/dist/spinner/index.d.ts.map +1 -1
  405. package/dist/spinner/index.js +3 -3
  406. package/dist/spinner/types.d.ts +1 -1
  407. package/dist/spinner/types.d.ts.map +1 -1
  408. package/dist/stepper/index.d.ts +3 -3
  409. package/dist/stepper/index.d.ts.map +1 -1
  410. package/dist/stepper/index.js +3 -2
  411. package/dist/stepper/types.d.ts +3 -2
  412. package/dist/stepper/types.d.ts.map +1 -1
  413. package/dist/switch/index.d.ts.map +1 -1
  414. package/dist/switch/index.js +3 -3
  415. package/dist/switch/types.d.ts +2 -31
  416. package/dist/switch/types.d.ts.map +1 -1
  417. package/dist/table/TableHeaderCell.d.ts.map +1 -1
  418. package/dist/table/index.d.ts +1 -1
  419. package/dist/table/index.d.ts.map +1 -1
  420. package/dist/table/index.js +11 -11
  421. package/dist/table/types.d.ts +8 -2
  422. package/dist/table/types.d.ts.map +1 -1
  423. package/dist/tabs/index.d.ts.map +1 -1
  424. package/dist/tabs/index.js +3 -3
  425. package/dist/tabs/types.d.ts +3 -53
  426. package/dist/tabs/types.d.ts.map +1 -1
  427. package/dist/tag/index.d.ts +1 -1
  428. package/dist/tag/index.d.ts.map +1 -1
  429. package/dist/tag/index.js +3 -3
  430. package/dist/tag/types.d.ts +1 -1
  431. package/dist/tag/types.d.ts.map +1 -1
  432. package/dist/tags-input/index.d.ts +6 -0
  433. package/dist/tags-input/index.d.ts.map +1 -0
  434. package/dist/tags-input/types.d.ts +36 -0
  435. package/dist/tags-input/types.d.ts.map +1 -0
  436. package/dist/textarea/index.d.ts.map +1 -1
  437. package/dist/textarea/index.js +2 -2
  438. package/dist/textarea/types.d.ts +3 -54
  439. package/dist/textarea/types.d.ts.map +1 -1
  440. package/dist/theme/ThemeProvider.d.ts +11 -3
  441. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  442. package/dist/theme/index.js +1 -1
  443. package/dist/theme/types.d.ts +0 -12
  444. package/dist/theme/types.d.ts.map +1 -1
  445. package/dist/timeline/index.d.ts.map +1 -1
  446. package/dist/timeline/index.js +3 -2
  447. package/dist/toast/index.d.ts.map +1 -1
  448. package/dist/toast/index.js +3 -3
  449. package/dist/toast/types.d.ts +0 -6
  450. package/dist/toast/types.d.ts.map +1 -1
  451. package/dist/toggle/index.d.ts.map +1 -1
  452. package/dist/toggle/index.js +4 -3
  453. package/dist/toggle/types.d.ts +3 -26
  454. package/dist/toggle/types.d.ts.map +1 -1
  455. package/dist/toggle-group/index.d.ts.map +1 -1
  456. package/dist/toggle-group/index.js +4 -3
  457. package/dist/toggle-group/types.d.ts +3 -44
  458. package/dist/toggle-group/types.d.ts.map +1 -1
  459. package/dist/tooltip/index.d.ts.map +1 -1
  460. package/dist/tooltip/index.js +3 -3
  461. package/dist/tooltip/types.d.ts +2 -44
  462. package/dist/tooltip/types.d.ts.map +1 -1
  463. package/dist/tour/index.d.ts +6 -0
  464. package/dist/tour/index.d.ts.map +1 -0
  465. package/dist/tour/types.d.ts +45 -0
  466. package/dist/tour/types.d.ts.map +1 -0
  467. package/dist/transfer/index.d.ts.map +1 -1
  468. package/dist/transfer/index.js +4 -4
  469. package/dist/transfer/types.d.ts +0 -20
  470. package/dist/transfer/types.d.ts.map +1 -1
  471. package/dist/transfer/utils.d.ts.map +1 -1
  472. package/dist/tree/index.d.ts.map +1 -1
  473. package/dist/tree/index.js +2 -2
  474. package/dist/tree/types.d.ts +2 -73
  475. package/dist/tree/types.d.ts.map +1 -1
  476. package/dist/tree-select/index.d.ts.map +1 -1
  477. package/dist/tree-select/index.js +5 -5
  478. package/dist/tree-select/types.d.ts +3 -91
  479. package/dist/tree-select/types.d.ts.map +1 -1
  480. package/dist/types.d.ts +1 -35
  481. package/dist/types.d.ts.map +1 -1
  482. package/dist/typography/index.d.ts +8 -0
  483. package/dist/typography/index.d.ts.map +1 -0
  484. package/dist/typography/types.d.ts +33 -0
  485. package/dist/typography/types.d.ts.map +1 -0
  486. package/dist/upload/index.d.ts.map +1 -1
  487. package/dist/upload/index.js +4 -3
  488. package/dist/upload/types.d.ts +5 -32
  489. package/dist/upload/types.d.ts.map +1 -1
  490. package/dist/upload/utils.d.ts +2 -1
  491. package/dist/upload/utils.d.ts.map +1 -1
  492. package/dist/utils.d.ts +0 -39
  493. package/dist/utils.d.ts.map +1 -1
  494. package/dist/variants.d.ts +3 -314
  495. package/dist/variants.d.ts.map +1 -1
  496. package/dist/watermark/index.d.ts +6 -0
  497. package/dist/watermark/index.d.ts.map +1 -0
  498. package/dist/watermark/types.d.ts +24 -0
  499. package/dist/watermark/types.d.ts.map +1 -0
  500. package/package.json +5 -2
  501. package/styles/global.css +575 -2012
  502. package/styles/themes/dark.css +15 -5
  503. package/styles/themes/light.css +20 -2
  504. package/styles/themes/presets/corporate.css +2 -0
  505. package/styles/themes/presets/minimal.css +2 -0
  506. package/styles/themes/presets/vibrant.css +2 -0
  507. package/dist/chunk-2PNLIQYM.js.map +0 -1
  508. package/dist/chunk-2TLOWZE4.js.map +0 -1
  509. package/dist/chunk-2WZVD7P3.js +0 -145
  510. package/dist/chunk-2WZVD7P3.js.map +0 -1
  511. package/dist/chunk-3BIV3QE2.js.map +0 -1
  512. package/dist/chunk-3BZE6BBJ.js.map +0 -1
  513. package/dist/chunk-3PWILVOE.js.map +0 -1
  514. package/dist/chunk-4FFVNUTK.js.map +0 -1
  515. package/dist/chunk-5PUATOLR.js.map +0 -1
  516. package/dist/chunk-64NHVOZS.js.map +0 -1
  517. package/dist/chunk-674JC24S.js.map +0 -1
  518. package/dist/chunk-6BAP6QUT.js +0 -72
  519. package/dist/chunk-6BAP6QUT.js.map +0 -1
  520. package/dist/chunk-6G3BMY4N.js.map +0 -1
  521. package/dist/chunk-6HGUDHHE.js.map +0 -1
  522. package/dist/chunk-6JGNJI5T.js.map +0 -1
  523. package/dist/chunk-6LYRMQOI.js.map +0 -1
  524. package/dist/chunk-6YOOKE6C.js +0 -138
  525. package/dist/chunk-6YOOKE6C.js.map +0 -1
  526. package/dist/chunk-764UKE6X.js.map +0 -1
  527. package/dist/chunk-7UCNBMCV.js.map +0 -1
  528. package/dist/chunk-BPRCBPVJ.js +0 -253
  529. package/dist/chunk-BPRCBPVJ.js.map +0 -1
  530. package/dist/chunk-BVO2BNFG.js.map +0 -1
  531. package/dist/chunk-C5IGZLIT.js.map +0 -1
  532. package/dist/chunk-CN74CNAN.js.map +0 -1
  533. package/dist/chunk-D4SUSZDN.js.map +0 -1
  534. package/dist/chunk-DUIL5BYS.js.map +0 -1
  535. package/dist/chunk-EHWXPH76.js.map +0 -1
  536. package/dist/chunk-ERRZ2CSG.js +0 -192
  537. package/dist/chunk-ERRZ2CSG.js.map +0 -1
  538. package/dist/chunk-EZGK67T6.js +0 -383
  539. package/dist/chunk-EZGK67T6.js.map +0 -1
  540. package/dist/chunk-FZSCLZF6.js.map +0 -1
  541. package/dist/chunk-G6NVGBYZ.js.map +0 -1
  542. package/dist/chunk-GJPZOMFE.js.map +0 -1
  543. package/dist/chunk-GOLARX5K.js.map +0 -1
  544. package/dist/chunk-GVVP5TZM.js +0 -506
  545. package/dist/chunk-GVVP5TZM.js.map +0 -1
  546. package/dist/chunk-H6G4BUPA.js.map +0 -1
  547. package/dist/chunk-HCOTO5WX.js.map +0 -1
  548. package/dist/chunk-HECAAILV.js.map +0 -1
  549. package/dist/chunk-HUXODBIO.js.map +0 -1
  550. package/dist/chunk-I32ZQUYY.js.map +0 -1
  551. package/dist/chunk-JWTWPZ32.js.map +0 -1
  552. package/dist/chunk-KH577UDI.js.map +0 -1
  553. package/dist/chunk-KJTMZJ7V.js.map +0 -1
  554. package/dist/chunk-L5UYN5LX.js +0 -787
  555. package/dist/chunk-L5UYN5LX.js.map +0 -1
  556. package/dist/chunk-LOYLJRCF.js.map +0 -1
  557. package/dist/chunk-LX4FDH4J.js.map +0 -1
  558. package/dist/chunk-N2WHJ3FI.js.map +0 -1
  559. package/dist/chunk-NGYLRX6F.js.map +0 -1
  560. package/dist/chunk-O3V3BTIJ.js.map +0 -1
  561. package/dist/chunk-OLTQAMV2.js.map +0 -1
  562. package/dist/chunk-ON2CMF6J.js.map +0 -1
  563. package/dist/chunk-ONGJXAYQ.js.map +0 -1
  564. package/dist/chunk-OQFYIKWR.js +0 -1264
  565. package/dist/chunk-OQFYIKWR.js.map +0 -1
  566. package/dist/chunk-POLVJ36Y.js.map +0 -1
  567. package/dist/chunk-POXI7JJ4.js +0 -351
  568. package/dist/chunk-POXI7JJ4.js.map +0 -1
  569. package/dist/chunk-R3TLU26W.js.map +0 -1
  570. package/dist/chunk-RFHTC6AH.js.map +0 -1
  571. package/dist/chunk-ROA7BYGB.js.map +0 -1
  572. package/dist/chunk-SGRACNBP.js.map +0 -1
  573. package/dist/chunk-TLNHWOQQ.js.map +0 -1
  574. package/dist/chunk-UTWQ2FZK.js.map +0 -1
  575. package/dist/chunk-VOODO2ZE.js.map +0 -1
  576. package/dist/chunk-WRSG7WU5.js.map +0 -1
  577. package/dist/chunk-X3YNHX77.js.map +0 -1
  578. package/dist/chunk-Y4XAXZHB.js.map +0 -1
  579. package/dist/chunk-YJOLLSHH.js.map +0 -1
  580. package/dist/chunk-YS5AIY4A.js.map +0 -1
  581. package/dist/chunk-YXLIGJTN.js.map +0 -1
  582. package/dist/chunk-ZIYA7TGX.js.map +0 -1
  583. package/dist/chunk-ZJNGZCRB.js.map +0 -1
  584. package/dist/empty/index.d.ts +0 -6
  585. package/dist/empty/index.d.ts.map +0 -1
  586. package/dist/empty/index.js +0 -4
  587. package/dist/empty/types.d.ts +0 -62
  588. package/dist/empty/types.d.ts.map +0 -1
  589. package/dist/styles/tokens.d.ts +0 -428
  590. package/dist/styles/tokens.d.ts.map +0 -1
  591. /package/dist/{empty → alert}/index.js.map +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/shared/useSelectBase.ts"],"names":[],"mappings":"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","file":"chunk-HJITFPBT.js","sourcesContent":["import { useVirtualizer } from \"@tanstack/react-virtual\";\nimport React, { useCallback, useId } from \"react\";\n\nimport { useMenuNavigation } from \"../hooks/useMenuNavigation\";\nimport { getValidationStatus } from \"../utils\";\n\ninterface SelectBaseOption {\n value: string | number;\n label: string;\n disabled?: boolean;\n group?: string;\n}\n\ninterface UseSelectBaseConfig<O extends SelectBaseOption> {\n options: O[];\n /** Called when the user presses Enter on a highlighted option (or clicks one via the hook's helpers). */\n onSelectOption: (option: O) => void;\n virtualizeThreshold?: number;\n maxDropdownHeight?: number;\n label?: string;\n idPrefix: string; // 'select' or 'multiselect'\n error?: string | boolean;\n warning?: string | boolean;\n info?: string | boolean;\n success?: string | boolean;\n helperText?: string;\n}\n\nexport interface FlattenedItem<O extends SelectBaseOption> {\n type: \"option\" | \"group\";\n data: O | string;\n}\n\n\nexport function useSelectBase<O extends SelectBaseOption>(\n config: UseSelectBaseConfig<O>,\n) {\n const {\n options,\n virtualizeThreshold = 50,\n maxDropdownHeight = 300,\n label,\n idPrefix,\n error,\n warning,\n info,\n success,\n helperText,\n } = config;\n\n // -- IDs / validation -------------------------------------------------------\n const uniqueId = useId();\n const labelId = `${idPrefix}-label-${uniqueId}`;\n const listboxId = `${idPrefix}-listbox-${uniqueId}`;\n const helperId = `${idPrefix}-helper-${uniqueId}`;\n\n const { status, message: helperMessage } = getValidationStatus({\n error,\n warning,\n info,\n success,\n helperText,\n });\n\n // -- State ------------------------------------------------------------------\n const [isOpen, setIsOpen] = React.useState(false);\n const [parentNode, setParentNode] = React.useState<HTMLDivElement | null>(\n null,\n );\n const [searchQuery, setSearchQuery] = React.useState(\"\");\n const [showTopArrow, setShowTopArrow] = React.useState(false);\n const [showBottomArrow, setShowBottomArrow] = React.useState(false);\n\n // -- Refs -------------------------------------------------------------------\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n const inputRef = React.useRef<HTMLInputElement>(null);\n const scrollContainerRef = React.useRef<HTMLDivElement>(null);\n\n // Store onSelectOption in a ref so handleKeyDown doesn't depend on it\n const onSelectRef = React.useRef(config.onSelectOption);\n React.useEffect(() => {\n onSelectRef.current = config.onSelectOption;\n }, [config.onSelectOption]);\n\n // -- Memos ------------------------------------------------------------------\n const groupedOptions = React.useMemo(() => {\n const groups: Record<string, O[]> = {};\n const ungrouped: O[] = [];\n\n options.forEach((option) => {\n if (option.group) {\n if (!groups[option.group]) {\n groups[option.group] = [];\n }\n groups[option.group]!.push(option);\n } else {\n ungrouped.push(option);\n }\n });\n\n return { groups, ungrouped };\n }, [options]);\n\n const flattenedOptions = React.useMemo(() => {\n const items: Array<FlattenedItem<O>> = [];\n\n groupedOptions.ungrouped.forEach((option) => {\n items.push({ type: \"option\", data: option });\n });\n\n Object.entries(groupedOptions.groups).forEach(\n ([groupName, groupOptions]) => {\n items.push({ type: \"group\", data: groupName });\n (groupOptions as O[]).forEach((option) => {\n items.push({ type: \"option\", data: option });\n });\n },\n );\n\n return items;\n }, [groupedOptions]);\n\n const filteredOptions = React.useMemo(() => {\n if (!searchQuery) return flattenedOptions;\n\n const query = searchQuery.toLowerCase();\n const matchingOptions = new Set(\n flattenedOptions.filter(\n (item) =>\n item.type === \"option\" &&\n (item.data as O).label.toLowerCase().includes(query),\n ),\n );\n\n // Build set of group names that have matching options - O(n)\n const matchingGroups = new Set<string>();\n for (const item of flattenedOptions) {\n if (item.type === \"option\" && matchingOptions.has(item)) {\n const group = (item.data as O).group;\n if (group) matchingGroups.add(group);\n }\n }\n\n return flattenedOptions.filter((item) => {\n if (item.type === \"group\") {\n return matchingGroups.has(item.data as string);\n }\n return matchingOptions.has(item);\n });\n }, [flattenedOptions, searchQuery]);\n\n const selectableOptions = React.useMemo(\n () =>\n filteredOptions.filter(\n (item) => item.type === \"option\" && !(item.data as O).disabled,\n ),\n [filteredOptions],\n );\n\n const enabledIndices = React.useMemo(\n () => Array.from({ length: selectableOptions.length }, (_, i) => i),\n [selectableOptions.length],\n );\n\n const handleMenuClose = React.useCallback(() => {\n setIsOpen(false);\n setSearchQuery(\"\");\n inputRef.current?.blur();\n }, []);\n\n const onMenuSelect = React.useCallback(\n (index: number) => {\n const item = selectableOptions[index];\n if (item) {\n onSelectRef.current(item.data as O);\n }\n },\n [selectableOptions],\n );\n\n const {\n highlightedIndex,\n setHighlightedIndex,\n handleKeyDown: menuHandleKeyDown,\n } = useMenuNavigation({\n enabledIndices,\n isOpen,\n onClose: handleMenuClose,\n onSelect: onMenuSelect,\n onOpen: () => setIsOpen(true),\n loop: false,\n });\n\n // Reset highlight when filtered options change (e.g. search query changes)\n React.useEffect(() => {\n setHighlightedIndex(-1);\n }, [filteredOptions, setHighlightedIndex]);\n\n // Wrap the hook's handler: Space must type in the search input, not select\n const handleKeyDown = React.useCallback(\n (e: React.KeyboardEvent) => {\n if (isOpen && e.key === \" \") {\n e.stopPropagation();\n return;\n }\n menuHandleKeyDown(e);\n },\n [isOpen, menuHandleKeyDown],\n );\n\n // Prevent Space keyup from bubbling to the <button> trigger (native button\n // activation fires on keyup, which would toggle the Popover closed).\n const handleKeyUp = React.useCallback(\n (e: React.KeyboardEvent) => {\n if (isOpen && e.key === \" \") {\n e.preventDefault();\n e.stopPropagation();\n }\n },\n [isOpen],\n );\n\n const shouldVirtualize = filteredOptions.length > virtualizeThreshold;\n\n // -- Virtualizer ------------------------------------------------------------\n const virtualizer = useVirtualizer({\n count: filteredOptions.length,\n getScrollElement: () => parentNode,\n estimateSize: () => 40,\n enabled: shouldVirtualize,\n overscan: 10,\n });\n\n const virtualizerRef = React.useRef(virtualizer);\n React.useEffect(() => {\n virtualizerRef.current = virtualizer;\n }, [virtualizer]);\n\n const refCallback = useCallback((node: HTMLDivElement) => {\n if (node) {\n setParentNode(node);\n scrollContainerRef.current = node;\n }\n }, []);\n\n // -- Handlers ---------------------------------------------------------------\n const handleInputChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(e.target.value);\n setIsOpen(true);\n },\n [],\n );\n\n const handleInputClick = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n setIsOpen(true);\n },\n [],\n );\n\n const handleScroll = React.useCallback(\n (e: React.UIEvent<HTMLDivElement>) => {\n const element = e.currentTarget;\n const { scrollTop, scrollHeight, clientHeight } = element;\n\n setShowTopArrow(scrollTop > 0);\n setShowBottomArrow(scrollTop + clientHeight < scrollHeight - 1);\n },\n [],\n );\n\n // Scroll highlighted option into view when virtualizing\n React.useEffect(() => {\n if (!shouldVirtualize || highlightedIndex < 0) return;\n const option = selectableOptions[highlightedIndex];\n if (option) {\n const optionIndex = filteredOptions.indexOf(option);\n if (optionIndex >= 0) {\n virtualizerRef.current.scrollToIndex(optionIndex, { align: \"auto\" });\n }\n }\n }, [highlightedIndex, selectableOptions, filteredOptions, shouldVirtualize]);\n\n // -- Effects ----------------------------------------------------------------\n // Check initial scroll state when dropdown opens\n React.useEffect(() => {\n if (isOpen) {\n const timeoutId = setTimeout(() => {\n const element = scrollContainerRef.current;\n if (element) {\n const { scrollTop, scrollHeight, clientHeight } = element;\n setShowTopArrow(scrollTop > 0);\n setShowBottomArrow(scrollTop + clientHeight < scrollHeight - 1);\n }\n }, 50);\n\n return () => clearTimeout(timeoutId);\n } else {\n setShowTopArrow(false);\n setShowBottomArrow(false);\n return undefined;\n }\n }, [isOpen, filteredOptions, shouldVirtualize]);\n\n // -- Return -----------------------------------------------------------------\n return {\n // State\n isOpen,\n setIsOpen,\n searchQuery,\n setSearchQuery,\n highlightedIndex,\n setHighlightedIndex,\n showTopArrow,\n showBottomArrow,\n\n // Refs\n triggerRef,\n inputRef,\n scrollContainerRef,\n\n // Computed\n filteredOptions,\n selectableOptions,\n shouldVirtualize,\n virtualizer,\n maxDropdownHeight,\n label,\n\n // IDs & validation\n uniqueId,\n labelId,\n listboxId,\n helperId,\n status,\n helperMessage,\n\n // Handlers\n handleInputChange,\n handleInputClick,\n handleScroll,\n handleKeyDown,\n handleKeyUp,\n refCallback,\n };\n}\n"]}
@@ -1,4 +1,5 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
1
+ import { colorVars } from './chunk-G6QIIWKU.js';
2
+ import { cn } from './chunk-RAS6HUEI.js';
2
3
  import { cva } from 'class-variance-authority';
3
4
  import React, { useState, useRef, useCallback } from 'react';
4
5
  import { jsxs, jsx } from 'react/jsx-runtime';
@@ -47,131 +48,19 @@ var thumbVariants = cva(
47
48
  }
48
49
  }
49
50
  );
50
- var trackColorStyles = {
51
- default: {
52
- default: "bg-surface",
53
- solid: "bg-border",
54
- soft: "bg-surface/50"
55
- },
56
- primary: {
57
- default: "bg-primary/10",
58
- solid: "bg-primary/20",
59
- soft: "bg-primary/5"
60
- },
61
- secondary: {
62
- default: "bg-secondary/10",
63
- solid: "bg-secondary/20",
64
- soft: "bg-secondary/5"
65
- },
66
- accent: {
67
- default: "bg-accent/10",
68
- solid: "bg-accent/20",
69
- soft: "bg-accent/5"
70
- },
71
- success: {
72
- default: "bg-success/10",
73
- solid: "bg-success/20",
74
- soft: "bg-success/5"
75
- },
76
- error: {
77
- default: "bg-error/10",
78
- solid: "bg-error/20",
79
- soft: "bg-error/5"
80
- },
81
- warning: {
82
- default: "bg-warning/10",
83
- solid: "bg-warning/20",
84
- soft: "bg-warning/5"
85
- },
86
- info: {
87
- default: "bg-info/10",
88
- solid: "bg-info/20",
89
- soft: "bg-info/5"
90
- }
51
+ var getTrackColorClasses = (variant) => {
52
+ if (variant === "soft") return "bg-slot-10";
53
+ if (variant === "solid") return "bg-slot-20";
54
+ return "bg-slot-10";
91
55
  };
92
- var fillColorStyles = {
93
- default: {
94
- default: "bg-surface border-border",
95
- solid: "bg-border",
96
- soft: "bg-surface/80"
97
- },
98
- primary: {
99
- default: "bg-primary/20 border-primary",
100
- solid: "bg-primary",
101
- soft: "bg-primary/60"
102
- },
103
- secondary: {
104
- default: "bg-secondary/20 border-secondary",
105
- solid: "bg-secondary",
106
- soft: "bg-secondary/60"
107
- },
108
- accent: {
109
- default: "bg-accent/20 border-accent",
110
- solid: "bg-accent",
111
- soft: "bg-accent/60"
112
- },
113
- success: {
114
- default: "bg-success/20 border-success",
115
- solid: "bg-success",
116
- soft: "bg-success/60"
117
- },
118
- error: {
119
- default: "bg-error/20 border-error",
120
- solid: "bg-error",
121
- soft: "bg-error/60"
122
- },
123
- warning: {
124
- default: "bg-warning/20 border-warning",
125
- solid: "bg-warning",
126
- soft: "bg-warning/60"
127
- },
128
- info: {
129
- default: "bg-info/20 border-info",
130
- solid: "bg-info",
131
- soft: "bg-info/60"
132
- }
56
+ var getFillColorClasses = (variant) => {
57
+ if (variant === "default") return "bg-slot-20 border-slot";
58
+ if (variant === "solid") return "bg-slot";
59
+ return "bg-slot-50";
133
60
  };
134
- var thumbColorStyles = {
135
- default: {
136
- default: "border-border",
137
- solid: "border-border",
138
- soft: "border-surface"
139
- },
140
- primary: {
141
- default: "border-primary",
142
- solid: "border-primary",
143
- soft: "border-primary/60"
144
- },
145
- secondary: {
146
- default: "border-secondary",
147
- solid: "border-secondary",
148
- soft: "border-secondary/60"
149
- },
150
- accent: {
151
- default: "border-accent",
152
- solid: "border-accent",
153
- soft: "border-accent/60"
154
- },
155
- success: {
156
- default: "border-success",
157
- solid: "border-success",
158
- soft: "border-success/60"
159
- },
160
- error: {
161
- default: "border-error",
162
- solid: "border-error",
163
- soft: "border-error/60"
164
- },
165
- warning: {
166
- default: "border-warning",
167
- solid: "border-warning",
168
- soft: "border-warning/60"
169
- },
170
- info: {
171
- default: "border-info",
172
- solid: "border-info",
173
- soft: "border-info/60"
174
- }
61
+ var getThumbColorClasses = (variant) => {
62
+ if (variant === "soft") return "border-slot-50";
63
+ return "border-slot";
175
64
  };
176
65
  var Slider = React.memo(
177
66
  ({
@@ -201,19 +90,22 @@ var Slider = React.memo(
201
90
  const activeThumb = useRef(0);
202
91
  const value = controlledValue ?? internalValue;
203
92
  const values = Array.isArray(value) ? value : [value];
93
+ const valueRef = useRef(value);
94
+ valueRef.current = value;
204
95
  const getPercentage = (val) => (val - min) / (max - min) * 100;
205
- const getValue = (clientX, clientY) => {
96
+ const getValue = useCallback((clientX, clientY) => {
206
97
  if (!trackRef.current) return min;
207
98
  const rect = trackRef.current.getBoundingClientRect();
208
99
  const percentage = isVertical ? 1 - (clientY - rect.top) / rect.height : (clientX - rect.left) / rect.width;
209
100
  const rawValue = min + percentage * (max - min);
210
101
  const steppedValue = Math.round(rawValue / step) * step;
211
102
  return Math.max(min, Math.min(max, steppedValue));
212
- };
103
+ }, [isVertical, min, max, step]);
213
104
  const updateValue = useCallback(
214
105
  (newValue) => {
215
- if (range && Array.isArray(value)) {
216
- const newValues = [...value];
106
+ const currentValue = valueRef.current;
107
+ if (range && Array.isArray(currentValue)) {
108
+ const newValues = [...currentValue];
217
109
  newValues[activeThumb.current] = newValue;
218
110
  newValues.sort((a, b) => a - b);
219
111
  if (!controlledValue) setInternalValue(newValues);
@@ -223,18 +115,19 @@ var Slider = React.memo(
223
115
  onChange?.(newValue);
224
116
  }
225
117
  },
226
- [value, range, controlledValue, onChange]
118
+ [range, controlledValue, onChange]
227
119
  );
228
120
  const handlePointerMove = useCallback(
229
121
  (e) => {
230
122
  if (!isDragging.current || disabled) return;
231
123
  updateValue(getValue(e.clientX, e.clientY));
232
124
  },
233
- [disabled, updateValue, isVertical, min, max, step]
125
+ [disabled, updateValue, getValue]
234
126
  );
235
127
  const [isDraggingState, setIsDraggingState] = useState(false);
236
- const handlePointerDown = (thumbIndex) => (e) => {
128
+ const handlePointerDown = useCallback((e) => {
237
129
  if (disabled) return;
130
+ const thumbIndex = parseInt(e.currentTarget.dataset.index, 10);
238
131
  isDragging.current = true;
239
132
  setIsDraggingState(true);
240
133
  activeThumb.current = thumbIndex;
@@ -243,7 +136,7 @@ var Slider = React.memo(
243
136
  e.target.setPointerCapture(e.pointerId);
244
137
  }
245
138
  e.preventDefault();
246
- };
139
+ }, [disabled]);
247
140
  const handlePointerUp = useCallback(() => {
248
141
  isDragging.current = false;
249
142
  setIsDraggingState(false);
@@ -258,20 +151,21 @@ var Slider = React.memo(
258
151
  document.removeEventListener("pointerup", handlePointerUp);
259
152
  };
260
153
  }, [isDraggingState, handlePointerMove, handlePointerUp]);
261
- const handleTrackClick = (e) => {
154
+ const handleTrackClick = useCallback((e) => {
262
155
  if (disabled || isDragging.current) return;
263
156
  const newValue = getValue(e.clientX, e.clientY);
264
- if (range && Array.isArray(value)) {
157
+ const currentValue = valueRef.current;
158
+ if (range && Array.isArray(currentValue)) {
265
159
  let closestThumbIndex = 0;
266
- let minDistance = Math.abs(newValue - (value[0] || 0));
267
- for (let i = 1; i < value.length; i++) {
268
- const distance = Math.abs(newValue - (value[i] || 0));
160
+ let minDistance = Math.abs(newValue - (currentValue[0] || 0));
161
+ for (let i = 1; i < currentValue.length; i++) {
162
+ const distance = Math.abs(newValue - (currentValue[i] || 0));
269
163
  if (distance < minDistance) {
270
164
  minDistance = distance;
271
165
  closestThumbIndex = i;
272
166
  }
273
167
  }
274
- const newValues = [...value];
168
+ const newValues = [...currentValue];
275
169
  newValues[closestThumbIndex] = newValue;
276
170
  newValues.sort((a, b) => a - b);
277
171
  if (!controlledValue) setInternalValue(newValues);
@@ -280,9 +174,11 @@ var Slider = React.memo(
280
174
  if (!controlledValue) setInternalValue(newValue);
281
175
  onChange?.(newValue);
282
176
  }
283
- };
284
- const handleThumbKeyDown = (val, index) => (e) => {
177
+ }, [disabled, getValue, range, controlledValue, onChange]);
178
+ const handleThumbKeyDown = useCallback((e) => {
285
179
  if (disabled) return;
180
+ const index = parseInt(e.currentTarget.dataset.index, 10);
181
+ const val = Number(e.currentTarget.getAttribute("aria-valuenow"));
286
182
  let newValue = val;
287
183
  const increaseKeys = isVertical ? ["ArrowUp", "ArrowRight"] : ["ArrowRight", "ArrowUp"];
288
184
  const decreaseKeys = isVertical ? ["ArrowDown", "ArrowLeft"] : ["ArrowLeft", "ArrowDown"];
@@ -298,8 +194,9 @@ var Slider = React.memo(
298
194
  return;
299
195
  }
300
196
  e.preventDefault();
301
- if (range && Array.isArray(value)) {
302
- const newValues = [...value];
197
+ const currentValue = valueRef.current;
198
+ if (range && Array.isArray(currentValue)) {
199
+ const newValues = [...currentValue];
303
200
  newValues[index] = newValue;
304
201
  newValues.sort((a, b) => a - b);
305
202
  if (!controlledValue) setInternalValue(newValues);
@@ -308,14 +205,16 @@ var Slider = React.memo(
308
205
  if (!controlledValue) setInternalValue(newValue);
309
206
  onChange?.(newValue);
310
207
  }
311
- };
208
+ }, [disabled, isVertical, min, max, step, range, controlledValue, onChange]);
312
209
  const getFillStyle = (startPct, endPct) => isVertical ? { bottom: `${startPct}%`, height: `${endPct - startPct}%` } : { left: `${startPct}%`, width: `${endPct - startPct}%` };
313
210
  const getThumbStyle = (pct) => isVertical ? { bottom: `${pct}%` } : { left: `${pct}%` };
314
211
  return /* @__PURE__ */ jsxs(
315
212
  "div",
316
213
  {
214
+ "data-slot": "root",
317
215
  className: cn(
318
216
  isVertical ? "h-full inline-flex flex-col items-center" : "w-full",
217
+ colorVars[color],
319
218
  "slider_root",
320
219
  classNames?.root,
321
220
  className
@@ -329,7 +228,7 @@ var Slider = React.memo(
329
228
  onClick: handleTrackClick,
330
229
  className: cn(
331
230
  sliderTrackVariants({ size, orientation }),
332
- trackColorStyles[color][variant],
231
+ getTrackColorClasses(variant),
333
232
  "relative cursor-pointer touch-none",
334
233
  isVertical && "h-full",
335
234
  "slider_track",
@@ -346,7 +245,7 @@ var Slider = React.memo(
346
245
  className: cn(
347
246
  "absolute rounded-full",
348
247
  isVertical ? "w-full" : "h-full",
349
- fillColorStyles[color][variant],
248
+ getFillColorClasses(variant),
350
249
  "slider_range",
351
250
  classNames?.range
352
251
  ),
@@ -360,7 +259,7 @@ var Slider = React.memo(
360
259
  className: cn(
361
260
  "absolute rounded-full",
362
261
  isVertical ? "w-full" : "h-full",
363
- fillColorStyles[color][variant],
262
+ getFillColorClasses(variant),
364
263
  "slider_range",
365
264
  classNames?.range
366
265
  ),
@@ -384,10 +283,10 @@ var Slider = React.memo(
384
283
  "aria-label": range ? `Slider thumb ${index + 1}` : "Slider",
385
284
  className: cn(
386
285
  thumbVariants({ size }),
387
- thumbColorStyles[color][variant],
286
+ getThumbColorClasses(variant),
388
287
  "-translate-x-1/2",
389
288
  disabled && "cursor-not-allowed",
390
- "focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary",
289
+ "focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-primary",
391
290
  isVertical ? cn(
392
291
  "left-1/2 translate-y-1/2",
393
292
  isAtStart && "translate-y-0",
@@ -400,14 +299,16 @@ var Slider = React.memo(
400
299
  "slider_thumb",
401
300
  classNames?.thumb
402
301
  ),
302
+ "data-index": index,
403
303
  style: getThumbStyle(pct),
404
- onPointerDown: handlePointerDown(index),
405
- onKeyDown: handleThumbKeyDown(val, index),
406
- children: hoveredThumb === index && /* @__PURE__ */ jsx(
304
+ onPointerDown: handlePointerDown,
305
+ onKeyDown: handleThumbKeyDown,
306
+ children: /* @__PURE__ */ jsx(
407
307
  "div",
408
308
  {
409
309
  className: cn(
410
310
  "absolute bg-text-primary text-background text-xs px-2 py-1 rounded whitespace-nowrap",
311
+ hoveredThumb === index ? "opacity-100" : "opacity-0 pointer-events-none",
411
312
  isVertical ? "left-full ml-2 top-1/2 -translate-y-1/2" : "-top-8 left-1/2 -translate-x-1/2"
412
313
  ),
413
314
  children: val
@@ -436,5 +337,5 @@ Slider.displayName = "Slider";
436
337
  var slider_default = Slider;
437
338
 
438
339
  export { slider_default };
439
- //# sourceMappingURL=chunk-ZJNGZCRB.js.map
440
- //# sourceMappingURL=chunk-ZJNGZCRB.js.map
340
+ //# sourceMappingURL=chunk-HR5TGNOF.js.map
341
+ //# sourceMappingURL=chunk-HR5TGNOF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/slider/index.tsx"],"names":[],"mappings":";;;;;;AASA,IAAM,mBAAA,GAAsB,IAAI,uBAAA,EAAyB;AAAA,EACvD,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,EAAA;AAAA,MACJ,EAAA,EAAI,EAAA;AAAA,MACJ,EAAA,EAAI,EAAA;AAAA,MACJ,EAAA,EAAI;AAAA,KACN;AAAA,IACA,WAAA,EAAa;AAAA,MACX,UAAA,EAAY,EAAA;AAAA,MACZ,QAAA,EAAU;AAAA;AACZ,GACF;AAAA,EACA,gBAAA,EAAkB;AAAA,IAChB,EAAE,WAAA,EAAa,YAAA,EAAc,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA,EAAM;AAAA,IACtD,EAAE,WAAA,EAAa,YAAA,EAAc,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA,EAAM;AAAA,IACtD,EAAE,WAAA,EAAa,YAAA,EAAc,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA,EAAM;AAAA,IACtD,EAAE,WAAA,EAAa,YAAA,EAAc,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA,EAAM;AAAA,IACtD,EAAE,WAAA,EAAa,UAAA,EAAY,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA,EAAM;AAAA,IACpD,EAAE,WAAA,EAAa,UAAA,EAAY,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA,EAAM;AAAA,IACpD,EAAE,WAAA,EAAa,UAAA,EAAY,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA,EAAM;AAAA,IACpD,EAAE,WAAA,EAAa,UAAA,EAAY,IAAA,EAAM,IAAA,EAAM,OAAO,KAAA;AAAM,GACtD;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM,IAAA;AAAA,IACN,WAAA,EAAa;AAAA;AAEjB,CAAC,CAAA;AAED,IAAM,aAAA,GAAgB,GAAA;AAAA,EACpB,gIAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,aAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ,CAAA;AAEA,IAAM,oBAAA,GAAuB,CAAC,OAAA,KAAkD;AAC9E,EAAA,IAAI,OAAA,KAAY,QAAQ,OAAO,YAAA;AAC/B,EAAA,IAAI,OAAA,KAAY,SAAS,OAAO,YAAA;AAChC,EAAA,OAAO,YAAA;AACT,CAAA;AAEA,IAAM,mBAAA,GAAsB,CAAC,OAAA,KAAkD;AAC7E,EAAA,IAAI,OAAA,KAAY,WAAW,OAAO,wBAAA;AAClC,EAAA,IAAI,OAAA,KAAY,SAAS,OAAO,SAAA;AAChC,EAAA,OAAO,YAAA;AACT,CAAA;AAEA,IAAM,oBAAA,GAAuB,CAAC,OAAA,KAAkD;AAC9E,EAAA,IAAI,OAAA,KAAY,QAAQ,OAAO,gBAAA;AAC/B,EAAA,OAAO,aAAA;AACT,CAAA;AAEA,IAAM,SAAS,KAAA,CAAM,IAAA;AAAA,EACnB,CAAC;AAAA,IACC,KAAA,EAAO,eAAA;AAAA,IACP,YAAA,GAAe,EAAA;AAAA,IACf,GAAA,GAAM,CAAA;AAAA,IACN,GAAA,GAAM,GAAA;AAAA,IACN,IAAA,GAAO,CAAA;AAAA,IACP,KAAA,GAAQ,SAAA;AAAA,IACR,IAAA,GAAO,IAAA;AAAA,IACP,OAAA,GAAU,SAAA;AAAA,IACV,WAAA,GAAc,YAAA;AAAA,IACd,QAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX,SAAA;AAAA,IACA,UAAA;AAAA,IACA,MAAA,GAAS,KAAA;AAAA,IACT,KAAA,GAAQ;AAAA,GACV,KAAM;AACJ,IAAA,MAAM,aAAa,WAAA,KAAgB,UAAA;AACnC,IAAA,MAAM,CAAC,aAAA,EAAe,gBAAgB,CAAA,GAAI,QAAA;AAAA,MACxC;AAAA,KACF;AACA,IAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAwB,IAAI,CAAA;AACpE,IAAA,MAAM,QAAA,GAAW,OAAuB,IAAI,CAAA;AAC5C,IAAA,MAAM,UAAA,GAAa,OAAO,KAAK,CAAA;AAC/B,IAAA,MAAM,WAAA,GAAc,OAAe,CAAC,CAAA;AAEpC,IAAA,MAAM,QAAQ,eAAA,IAAmB,aAAA;AACjC,IAAA,MAAM,SAAS,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,GAAI,KAAA,GAAQ,CAAC,KAAK,CAAA;AAGpD,IAAA,MAAM,QAAA,GAAW,OAAO,KAAK,CAAA;AAC7B,IAAA,QAAA,CAAS,OAAA,GAAU,KAAA;AAEnB,IAAA,MAAM,gBAAgB,CAAC,GAAA,KAAA,CAAkB,GAAA,GAAM,GAAA,KAAQ,MAAM,GAAA,CAAA,GAAQ,GAAA;AAGrE,IAAA,MAAM,QAAA,GAAW,WAAA,CAAY,CAAC,OAAA,EAAiB,OAAA,KAAoB;AACjE,MAAA,IAAI,CAAC,QAAA,CAAS,OAAA,EAAS,OAAO,GAAA;AAC9B,MAAA,MAAM,IAAA,GAAO,QAAA,CAAS,OAAA,CAAQ,qBAAA,EAAsB;AACpD,MAAA,MAAM,UAAA,GAAa,UAAA,GACf,CAAA,GAAA,CAAK,OAAA,GAAU,IAAA,CAAK,GAAA,IAAO,IAAA,CAAK,MAAA,GAAA,CAC/B,OAAA,GAAU,IAAA,CAAK,IAAA,IAAQ,IAAA,CAAK,KAAA;AACjC,MAAA,MAAM,QAAA,GAAW,GAAA,GAAM,UAAA,IAAc,GAAA,GAAM,GAAA,CAAA;AAC3C,MAAA,MAAM,YAAA,GAAe,IAAA,CAAK,KAAA,CAAM,QAAA,GAAW,IAAI,CAAA,GAAI,IAAA;AACnD,MAAA,OAAO,KAAK,GAAA,CAAI,GAAA,EAAK,KAAK,GAAA,CAAI,GAAA,EAAK,YAAY,CAAC,CAAA;AAAA,IAClD,GAAG,CAAC,UAAA,EAAY,GAAA,EAAK,GAAA,EAAK,IAAI,CAAC,CAAA;AAG/B,IAAA,MAAM,WAAA,GAAc,WAAA;AAAA,MAClB,CAAC,QAAA,KAAqB;AACpB,QAAA,MAAM,eAAe,QAAA,CAAS,OAAA;AAC9B,QAAA,IAAI,KAAA,IAAS,KAAA,CAAM,OAAA,CAAQ,YAAY,CAAA,EAAG;AACxC,UAAA,MAAM,SAAA,GAAY,CAAC,GAAG,YAAY,CAAA;AAClC,UAAA,SAAA,CAAU,WAAA,CAAY,OAAO,CAAA,GAAI,QAAA;AACjC,UAAA,SAAA,CAAU,IAAA,CAAK,CAAC,CAAA,EAAG,CAAA,KAAM,IAAI,CAAC,CAAA;AAC9B,UAAA,IAAI,CAAC,eAAA,EAAiB,gBAAA,CAAiB,SAAS,CAAA;AAChD,UAAA,QAAA,GAAW,SAAS,CAAA;AAAA,QACtB,CAAA,MAAO;AACL,UAAA,IAAI,CAAC,eAAA,EAAiB,gBAAA,CAAiB,QAAQ,CAAA;AAC/C,UAAA,QAAA,GAAW,QAAQ,CAAA;AAAA,QACrB;AAAA,MACF,CAAA;AAAA,MACA,CAAC,KAAA,EAAO,eAAA,EAAiB,QAAQ;AAAA,KACnC;AAGA,IAAA,MAAM,iBAAA,GAAoB,WAAA;AAAA,MACxB,CAAC,CAAA,KAAoB;AACnB,QAAA,IAAI,CAAC,UAAA,CAAW,OAAA,IAAW,QAAA,EAAU;AACrC,QAAA,WAAA,CAAY,QAAA,CAAS,CAAA,CAAE,OAAA,EAAS,CAAA,CAAE,OAAO,CAAC,CAAA;AAAA,MAC5C,CAAA;AAAA,MACA,CAAC,QAAA,EAAU,WAAA,EAAa,QAAQ;AAAA,KAClC;AAEA,IAAA,MAAM,CAAC,eAAA,EAAiB,kBAAkB,CAAA,GAAI,SAAS,KAAK,CAAA;AAG5D,IAAA,MAAM,iBAAA,GAAoB,WAAA,CAAY,CAAC,CAAA,KAA0C;AAC/E,MAAA,IAAI,QAAA,EAAU;AACd,MAAA,MAAM,aAAa,QAAA,CAAS,CAAA,CAAE,aAAA,CAAc,OAAA,CAAQ,OAAQ,EAAE,CAAA;AAC9D,MAAA,UAAA,CAAW,OAAA,GAAU,IAAA;AACrB,MAAA,kBAAA,CAAmB,IAAI,CAAA;AACvB,MAAA,WAAA,CAAY,OAAA,GAAU,UAAA;AACtB,MAAA,eAAA,CAAgB,UAAU,CAAA;AAC1B,MAAA,IAAK,CAAA,CAAE,OAAuB,iBAAA,EAAmB;AAC9C,QAAC,CAAA,CAAE,MAAA,CAAuB,iBAAA,CAAkB,CAAA,CAAE,SAAS,CAAA;AAAA,MAC1D;AACA,MAAA,CAAA,CAAE,cAAA,EAAe;AAAA,IACnB,CAAA,EAAG,CAAC,QAAQ,CAAC,CAAA;AAEb,IAAA,MAAM,eAAA,GAAkB,YAAY,MAAM;AACxC,MAAA,UAAA,CAAW,OAAA,GAAU,KAAA;AACrB,MAAA,kBAAA,CAAmB,KAAK,CAAA;AACxB,MAAA,eAAA,CAAgB,IAAI,CAAA;AAAA,IACtB,CAAA,EAAG,EAAE,CAAA;AAGL,IAAA,KAAA,CAAM,UAAU,MAAM;AACpB,MAAA,IAAI,CAAC,eAAA,EAAiB;AAEtB,MAAA,QAAA,CAAS,gBAAA,CAAiB,eAAe,iBAAiB,CAAA;AAC1D,MAAA,QAAA,CAAS,gBAAA,CAAiB,aAAa,eAAe,CAAA;AACtD,MAAA,OAAO,MAAM;AACX,QAAA,QAAA,CAAS,mBAAA,CAAoB,eAAe,iBAAiB,CAAA;AAC7D,QAAA,QAAA,CAAS,mBAAA,CAAoB,aAAa,eAAe,CAAA;AAAA,MAC3D,CAAA;AAAA,IACF,CAAA,EAAG,CAAC,eAAA,EAAiB,iBAAA,EAAmB,eAAe,CAAC,CAAA;AAGxD,IAAA,MAAM,gBAAA,GAAmB,WAAA,CAAY,CAAC,CAAA,KAA6E;AACjH,MAAA,IAAI,QAAA,IAAY,WAAW,OAAA,EAAS;AACpC,MAAA,MAAM,QAAA,GAAW,QAAA,CAAS,CAAA,CAAE,OAAA,EAAS,EAAE,OAAO,CAAA;AAC9C,MAAA,MAAM,eAAe,QAAA,CAAS,OAAA;AAE9B,MAAA,IAAI,KAAA,IAAS,KAAA,CAAM,OAAA,CAAQ,YAAY,CAAA,EAAG;AACxC,QAAA,IAAI,iBAAA,GAAoB,CAAA;AACxB,QAAA,IAAI,cAAc,IAAA,CAAK,GAAA,CAAI,YAAY,YAAA,CAAa,CAAC,KAAK,CAAA,CAAE,CAAA;AAC5D,QAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,YAAA,CAAa,QAAQ,CAAA,EAAA,EAAK;AAC5C,UAAA,MAAM,WAAW,IAAA,CAAK,GAAA,CAAI,YAAY,YAAA,CAAa,CAAC,KAAK,CAAA,CAAE,CAAA;AAC3D,UAAA,IAAI,WAAW,WAAA,EAAa;AAC1B,YAAA,WAAA,GAAc,QAAA;AACd,YAAA,iBAAA,GAAoB,CAAA;AAAA,UACtB;AAAA,QACF;AAEA,QAAA,MAAM,SAAA,GAAY,CAAC,GAAG,YAAY,CAAA;AAClC,QAAA,SAAA,CAAU,iBAAiB,CAAA,GAAI,QAAA;AAC/B,QAAA,SAAA,CAAU,IAAA,CAAK,CAAC,CAAA,EAAG,CAAA,KAAM,IAAI,CAAC,CAAA;AAC9B,QAAA,IAAI,CAAC,eAAA,EAAiB,gBAAA,CAAiB,SAAS,CAAA;AAChD,QAAA,QAAA,GAAW,SAAS,CAAA;AAAA,MACtB,CAAA,MAAO;AACL,QAAA,IAAI,CAAC,eAAA,EAAiB,gBAAA,CAAiB,QAAQ,CAAA;AAC/C,QAAA,QAAA,GAAW,QAAQ,CAAA;AAAA,MACrB;AAAA,IACF,GAAG,CAAC,QAAA,EAAU,UAAU,KAAA,EAAO,eAAA,EAAiB,QAAQ,CAAC,CAAA;AAIzD,IAAA,MAAM,kBAAA,GAAqB,WAAA,CAAY,CAAC,CAAA,KAA2C;AACjF,MAAA,IAAI,QAAA,EAAU;AACd,MAAA,MAAM,QAAQ,QAAA,CAAS,CAAA,CAAE,aAAA,CAAc,OAAA,CAAQ,OAAQ,EAAE,CAAA;AACzD,MAAA,MAAM,MAAM,MAAA,CAAO,CAAA,CAAE,aAAA,CAAc,YAAA,CAAa,eAAe,CAAC,CAAA;AAChE,MAAA,IAAI,QAAA,GAAW,GAAA;AACf,MAAA,MAAM,YAAA,GAAe,aAAa,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,CAAC,cAAc,SAAS,CAAA;AACtF,MAAA,MAAM,YAAA,GAAe,aAAa,CAAC,WAAA,EAAa,WAAW,CAAA,GAAI,CAAC,aAAa,WAAW,CAAA;AAExF,MAAA,IAAI,YAAA,CAAa,QAAA,CAAS,CAAA,CAAE,GAAG,CAAA,EAAG;AAChC,QAAA,QAAA,GAAW,IAAA,CAAK,GAAA,CAAI,GAAA,EAAK,GAAA,GAAM,IAAI,CAAA;AAAA,MACrC,CAAA,MAAA,IAAW,YAAA,CAAa,QAAA,CAAS,CAAA,CAAE,GAAG,CAAA,EAAG;AACvC,QAAA,QAAA,GAAW,IAAA,CAAK,GAAA,CAAI,GAAA,EAAK,GAAA,GAAM,IAAI,CAAA;AAAA,MACrC,CAAA,MAAA,IAAW,CAAA,CAAE,GAAA,KAAQ,MAAA,EAAQ;AAC3B,QAAA,QAAA,GAAW,GAAA;AAAA,MACb,CAAA,MAAA,IAAW,CAAA,CAAE,GAAA,KAAQ,KAAA,EAAO;AAC1B,QAAA,QAAA,GAAW,GAAA;AAAA,MACb,CAAA,MAAO;AACL,QAAA;AAAA,MACF;AACA,MAAA,CAAA,CAAE,cAAA,EAAe;AACjB,MAAA,MAAM,eAAe,QAAA,CAAS,OAAA;AAC9B,MAAA,IAAI,KAAA,IAAS,KAAA,CAAM,OAAA,CAAQ,YAAY,CAAA,EAAG;AACxC,QAAA,MAAM,SAAA,GAAY,CAAC,GAAG,YAAY,CAAA;AAClC,QAAA,SAAA,CAAU,KAAK,CAAA,GAAI,QAAA;AACnB,QAAA,SAAA,CAAU,IAAA,CAAK,CAAC,CAAA,EAAG,CAAA,KAAM,IAAI,CAAC,CAAA;AAC9B,QAAA,IAAI,CAAC,eAAA,EAAiB,gBAAA,CAAiB,SAAS,CAAA;AAChD,QAAA,QAAA,GAAW,SAAS,CAAA;AAAA,MACtB,CAAA,MAAO;AACL,QAAA,IAAI,CAAC,eAAA,EAAiB,gBAAA,CAAiB,QAAQ,CAAA;AAC/C,QAAA,QAAA,GAAW,QAAQ,CAAA;AAAA,MACrB;AAAA,IACF,CAAA,EAAG,CAAC,QAAA,EAAU,UAAA,EAAY,GAAA,EAAK,KAAK,IAAA,EAAM,KAAA,EAAO,eAAA,EAAiB,QAAQ,CAAC,CAAA;AAG3E,IAAA,MAAM,YAAA,GAAe,CAAC,QAAA,EAAkB,MAAA,KACtC,UAAA,GACI,EAAE,MAAA,EAAQ,CAAA,EAAG,QAAQ,CAAA,CAAA,CAAA,EAAK,MAAA,EAAQ,CAAA,EAAG,SAAS,QAAQ,CAAA,CAAA,CAAA,EAAI,GAC1D,EAAE,IAAA,EAAM,CAAA,EAAG,QAAQ,CAAA,CAAA,CAAA,EAAK,KAAA,EAAO,CAAA,EAAG,MAAA,GAAS,QAAQ,CAAA,CAAA,CAAA,EAAI;AAG7D,IAAA,MAAM,aAAA,GAAgB,CAAC,GAAA,KACrB,UAAA,GACI,EAAE,MAAA,EAAQ,CAAA,EAAG,GAAG,CAAA,CAAA,CAAA,EAAI,GACpB,EAAE,IAAA,EAAM,CAAA,EAAG,GAAG,CAAA,CAAA,CAAA,EAAI;AAExB,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,WAAA,EAAU,MAAA;AAAA,QACV,SAAA,EAAW,EAAA;AAAA,UACT,aAAa,0CAAA,GAA6C,QAAA;AAAA,UAC1D,UAAU,KAAK,CAAA;AAAA,UACf,aAAA;AAAA,UACA,UAAA,EAAY,IAAA;AAAA,UACZ;AAAA,SACF;AAAA,QAGC,QAAA,EAAA;AAAA,UAAA,UAAA,IAAc,MAAA,KAAW,IAAA,oBACxB,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,EAAA,CAAG,kCAAA,EAAoC,cAAA,EAAgB,UAAA,EAAY,KAAK,CAAA,EAAI,QAAA,EAAA,GAAA,EAAI,CAAA;AAAA,0BAGnG,IAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,GAAA,EAAK,QAAA;AAAA,cACL,OAAA,EAAS,gBAAA;AAAA,cACT,SAAA,EAAW,EAAA;AAAA,gBACT,mBAAA,CAAoB,EAAE,IAAA,EAAM,WAAA,EAAa,CAAA;AAAA,gBACzC,qBAAqB,OAAO,CAAA;AAAA,gBAC5B,oCAAA;AAAA,gBACA,UAAA,IAAc,QAAA;AAAA,gBACd,cAAA;AAAA,gBACA,UAAA,EAAY,KAAA;AAAA,gBACZ,QAAA,IAAY;AAAA,eACd;AAAA,cAGC,QAAA,EAAA;AAAA,gBAAA,KAAA,IAAS,MAAA,CAAO,MAAA,GAAS,CAAA,GACxB,MAAA,CAAO,KAAA,CAAM,CAAA,EAAG,EAAE,CAAA,CAAE,GAAA,CAAI,CAAC,GAAA,EAAK,KAAA,KAAU;AACtC,kBAAA,MAAM,KAAA,GAAQ,cAAc,GAAG,CAAA;AAC/B,kBAAA,MAAM,GAAA,GAAM,aAAA,CAAc,MAAA,CAAO,KAAA,GAAQ,CAAC,CAAE,CAAA;AAC5C,kBAAA,uBACE,GAAA;AAAA,oBAAC,KAAA;AAAA,oBAAA;AAAA,sBAEC,SAAA,EAAW,EAAA;AAAA,wBACT,uBAAA;AAAA,wBACA,aAAa,QAAA,GAAW,QAAA;AAAA,wBACxB,oBAAoB,OAAO,CAAA;AAAA,wBAC3B,cAAA;AAAA,wBACA,UAAA,EAAY;AAAA,uBACd;AAAA,sBACA,KAAA,EAAO,YAAA,CAAa,KAAA,EAAO,GAAG;AAAA,qBAAA;AAAA,oBARzB;AAAA,mBASP;AAAA,gBAEJ,CAAC,CAAA,mBAED,GAAA;AAAA,kBAAC,KAAA;AAAA,kBAAA;AAAA,oBACC,SAAA,EAAW,EAAA;AAAA,sBACT,uBAAA;AAAA,sBACA,aAAa,QAAA,GAAW,QAAA;AAAA,sBACxB,oBAAoB,OAAO,CAAA;AAAA,sBAC3B,cAAA;AAAA,sBACA,UAAA,EAAY;AAAA,qBACd;AAAA,oBACA,KAAA,EAAO,aAAa,CAAA,EAAG,aAAA,CAAc,OAAO,CAAC,CAAA,IAAK,CAAC,CAAC;AAAA;AAAA,iBACtD;AAAA,gBAID,MAAA,CAAO,GAAA,CAAI,CAAC,GAAA,EAAK,KAAA,KAAU;AAC1B,kBAAA,MAAM,GAAA,GAAM,cAAc,GAAG,CAAA;AAC7B,kBAAA,MAAM,YAAY,GAAA,IAAO,CAAA;AACzB,kBAAA,MAAM,UAAU,GAAA,IAAO,GAAA;AACvB,kBAAA,uBACE,GAAA;AAAA,oBAAC,KAAA;AAAA,oBAAA;AAAA,sBAEC,IAAA,EAAK,QAAA;AAAA,sBACL,QAAA,EAAU,WAAW,EAAA,GAAK,CAAA;AAAA,sBAC1B,eAAA,EAAe,GAAA;AAAA,sBACf,eAAA,EAAe,GAAA;AAAA,sBACf,eAAA,EAAe,GAAA;AAAA,sBACf,eAAA,EAAe,QAAA;AAAA,sBACf,kBAAA,EAAkB,WAAA;AAAA,sBAClB,YAAA,EAAY,KAAA,GAAQ,CAAA,aAAA,EAAgB,KAAA,GAAQ,CAAC,CAAA,CAAA,GAAK,QAAA;AAAA,sBAClD,SAAA,EAAW,EAAA;AAAA,wBACT,aAAA,CAAc,EAAE,IAAA,EAAM,CAAA;AAAA,wBACtB,qBAAqB,OAAO,CAAA;AAAA,wBAC5B,kBAAA;AAAA,wBACA,QAAA,IAAY,oBAAA;AAAA,wBACZ,gGAAA;AAAA,wBACA,UAAA,GACI,EAAA;AAAA,0BACE,0BAAA;AAAA,0BACA,SAAA,IAAa,eAAA;AAAA,0BACb,OAAA,IAAW;AAAA,yBACb,GACA,EAAA;AAAA,0BACE,0BAAA;AAAA,0BACA,SAAA,IAAa,eAAA;AAAA,0BACb,OAAA,IAAW;AAAA,yBACb;AAAA,wBACJ,cAAA;AAAA,wBACA,UAAA,EAAY;AAAA,uBACd;AAAA,sBACA,YAAA,EAAY,KAAA;AAAA,sBACZ,KAAA,EAAO,cAAc,GAAG,CAAA;AAAA,sBACxB,aAAA,EAAe,iBAAA;AAAA,sBACf,SAAA,EAAW,kBAAA;AAAA,sBAEX,QAAA,kBAAA,GAAA;AAAA,wBAAC,KAAA;AAAA,wBAAA;AAAA,0BACC,SAAA,EAAW,EAAA;AAAA,4BACT,sFAAA;AAAA,4BACA,YAAA,KAAiB,QAAQ,aAAA,GAAgB,+BAAA;AAAA,4BACzC,aACI,yCAAA,GACA;AAAA,2BACN;AAAA,0BAEC,QAAA,EAAA;AAAA;AAAA;AACH,qBAAA;AAAA,oBA5CK;AAAA,mBA6CP;AAAA,gBAEJ,CAAC;AAAA;AAAA;AAAA,WACH;AAAA,UAGC,UAAA,IAAc,MAAA,KAAW,IAAA,oBACxB,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,EAAA,CAAG,kCAAA,EAAoC,cAAA,EAAgB,UAAA,EAAY,KAAK,CAAA,EAAI,QAAA,EAAA,GAAA,EAAI,CAAA;AAAA,UAGlG,CAAC,UAAA,IAAc,MAAA,KAAW,wBACzB,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,uDAAA,EACb,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,UAAK,SAAA,EAAW,EAAA,CAAG,gBAAgB,UAAA,EAAY,KAAK,GAAI,QAAA,EAAA,GAAA,EAAI,CAAA;AAAA,gCAC5D,MAAA,EAAA,EAAK,SAAA,EAAW,GAAG,+BAAA,EAAiC,cAAA,EAAgB,YAAY,KAAK,CAAA,EACnF,QAAA,EAAA,KAAA,IAAS,KAAA,CAAM,QAAQ,KAAK,CAAA,GAAI,MAAM,IAAA,CAAK,KAAK,IAAI,KAAA,EACvD,CAAA;AAAA,4BACA,GAAA,CAAC,UAAK,SAAA,EAAW,EAAA,CAAG,gBAAgB,UAAA,EAAY,KAAK,GAAI,QAAA,EAAA,GAAA,EAAI;AAAA,WAAA,EAC/D,CAAA;AAAA,UAED,MAAA,IAAU,OAAO,MAAA,KAAW,SAAA,IAAa;AAAA;AAAA;AAAA,KAC5C;AAAA,EAEJ;AACF,CAAA;AAEA,MAAA,CAAO,WAAA,GAAc,QAAA;AAGrB,IAAO,cAAA,GAAQ","file":"chunk-HR5TGNOF.js","sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority'\nimport React, { useCallback, useRef, useState } from 'react'\n\nimport { cn } from '../utils'\nimport { colorVars } from '../variants'\nimport type { SliderProps } from './types'\n\nconst sliderTrackVariants = cva('relative rounded-full', {\n variants: {\n size: {\n xs: '',\n sm: '',\n md: '',\n lg: '',\n },\n orientation: {\n horizontal: '',\n vertical: '',\n },\n },\n compoundVariants: [\n { orientation: 'horizontal', size: 'xs', class: 'h-1' },\n { orientation: 'horizontal', size: 'sm', class: 'h-2' },\n { orientation: 'horizontal', size: 'md', class: 'h-3' },\n { orientation: 'horizontal', size: 'lg', class: 'h-4' },\n { orientation: 'vertical', size: 'xs', class: 'w-1' },\n { orientation: 'vertical', size: 'sm', class: 'w-2' },\n { orientation: 'vertical', size: 'md', class: 'w-3' },\n { orientation: 'vertical', size: 'lg', class: 'w-4' },\n ],\n defaultVariants: {\n size: 'md',\n orientation: 'horizontal',\n },\n})\n\nconst thumbVariants = cva(\n 'absolute rounded-full border-2 bg-background cursor-pointer hover:scale-110 active:scale-100 transition-transform duration-150',\n {\n variants: {\n size: {\n xs: 'w-3 h-3',\n sm: 'w-3.5 h-3.5',\n md: 'w-4 h-4',\n lg: 'w-6 h-6',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n)\n\nconst getTrackColorClasses = (variant: 'default' | 'solid' | 'soft'): string => {\n if (variant === 'soft') return 'bg-slot-10'\n if (variant === 'solid') return 'bg-slot-20'\n return 'bg-slot-10' // default\n}\n\nconst getFillColorClasses = (variant: 'default' | 'solid' | 'soft'): string => {\n if (variant === 'default') return 'bg-slot-20 border-slot'\n if (variant === 'solid') return 'bg-slot'\n return 'bg-slot-50' // soft\n}\n\nconst getThumbColorClasses = (variant: 'default' | 'solid' | 'soft'): string => {\n if (variant === 'soft') return 'border-slot-50'\n return 'border-slot' // default and solid\n}\n\nconst Slider = React.memo<SliderProps>(\n ({\n value: controlledValue,\n defaultValue = 50,\n min = 0,\n max = 100,\n step = 1,\n color = 'primary',\n size = 'md',\n variant = 'default',\n orientation = 'horizontal',\n onChange,\n disabled = false,\n className,\n classNames,\n footer = false,\n range = false,\n }) => {\n const isVertical = orientation === 'vertical'\n const [internalValue, setInternalValue] = useState<number | number[]>(\n defaultValue,\n )\n const [hoveredThumb, setHoveredThumb] = useState<number | null>(null)\n const trackRef = useRef<HTMLDivElement>(null)\n const isDragging = useRef(false)\n const activeThumb = useRef<number>(0)\n\n const value = controlledValue ?? internalValue\n const values = Array.isArray(value) ? value : [value]\n\n // Fix 3: Mirror latest value in a ref to avoid stale closures during rapid drag\n const valueRef = useRef(value)\n valueRef.current = value\n\n const getPercentage = (val: number) => ((val - min) / (max - min)) * 100\n\n // Fix 1: Wrap getValue in useCallback to prevent stale references\n const getValue = useCallback((clientX: number, clientY: number) => {\n if (!trackRef.current) return min\n const rect = trackRef.current.getBoundingClientRect()\n const percentage = isVertical\n ? 1 - (clientY - rect.top) / rect.height // Inverted: bottom=min, top=max\n : (clientX - rect.left) / rect.width\n const rawValue = min + percentage * (max - min)\n const steppedValue = Math.round(rawValue / step) * step\n return Math.max(min, Math.min(max, steppedValue))\n }, [isVertical, min, max, step])\n\n // Fix 3: Read from valueRef.current instead of value closure\n const updateValue = useCallback(\n (newValue: number) => {\n const currentValue = valueRef.current\n if (range && Array.isArray(currentValue)) {\n const newValues = [...currentValue]\n newValues[activeThumb.current] = newValue\n newValues.sort((a, b) => a - b)\n if (!controlledValue) setInternalValue(newValues)\n onChange?.(newValues)\n } else {\n if (!controlledValue) setInternalValue(newValue)\n onChange?.(newValue)\n }\n },\n [range, controlledValue, onChange],\n )\n\n // Fix 1: Include getValue in deps (replaces isVertical, min, max, step)\n const handlePointerMove = useCallback(\n (e: PointerEvent) => {\n if (!isDragging.current || disabled) return\n updateValue(getValue(e.clientX, e.clientY))\n },\n [disabled, updateValue, getValue],\n )\n\n const [isDraggingState, setIsDraggingState] = useState(false)\n\n // Fix 2: Single useCallback handler using data-index attribute\n const handlePointerDown = useCallback((e: React.PointerEvent<HTMLDivElement>) => {\n if (disabled) return\n const thumbIndex = parseInt(e.currentTarget.dataset.index!, 10)\n isDragging.current = true\n setIsDraggingState(true)\n activeThumb.current = thumbIndex\n setHoveredThumb(thumbIndex)\n if ((e.target as HTMLElement).setPointerCapture) {\n ;(e.target as HTMLElement).setPointerCapture(e.pointerId)\n }\n e.preventDefault()\n }, [disabled])\n\n const handlePointerUp = useCallback(() => {\n isDragging.current = false\n setIsDraggingState(false)\n setHoveredThumb(null)\n }, [])\n\n // Only add global listeners when dragging - fixes memory leak\n React.useEffect(() => {\n if (!isDraggingState) return\n\n document.addEventListener('pointermove', handlePointerMove)\n document.addEventListener('pointerup', handlePointerUp)\n return () => {\n document.removeEventListener('pointermove', handlePointerMove)\n document.removeEventListener('pointerup', handlePointerUp)\n }\n }, [isDraggingState, handlePointerMove, handlePointerUp])\n\n // Fix 2: Wrap in useCallback to avoid recreation every render\n const handleTrackClick = useCallback((e: React.PointerEvent<HTMLDivElement> | React.MouseEvent<HTMLDivElement>) => {\n if (disabled || isDragging.current) return\n const newValue = getValue(e.clientX, e.clientY)\n const currentValue = valueRef.current\n\n if (range && Array.isArray(currentValue)) {\n let closestThumbIndex = 0\n let minDistance = Math.abs(newValue - (currentValue[0] || 0))\n for (let i = 1; i < currentValue.length; i++) {\n const distance = Math.abs(newValue - (currentValue[i] || 0))\n if (distance < minDistance) {\n minDistance = distance\n closestThumbIndex = i\n }\n }\n\n const newValues = [...currentValue]\n newValues[closestThumbIndex] = newValue\n newValues.sort((a, b) => a - b)\n if (!controlledValue) setInternalValue(newValues)\n onChange?.(newValues)\n } else {\n if (!controlledValue) setInternalValue(newValue)\n onChange?.(newValue)\n }\n }, [disabled, getValue, range, controlledValue, onChange])\n\n // Fix 2: Single useCallback handler using data-index attribute\n // Keyboard: ArrowUp/Right = increase, ArrowDown/Left = decrease\n const handleThumbKeyDown = useCallback((e: React.KeyboardEvent<HTMLDivElement>) => {\n if (disabled) return\n const index = parseInt(e.currentTarget.dataset.index!, 10)\n const val = Number(e.currentTarget.getAttribute('aria-valuenow'))\n let newValue = val\n const increaseKeys = isVertical ? ['ArrowUp', 'ArrowRight'] : ['ArrowRight', 'ArrowUp']\n const decreaseKeys = isVertical ? ['ArrowDown', 'ArrowLeft'] : ['ArrowLeft', 'ArrowDown']\n\n if (increaseKeys.includes(e.key)) {\n newValue = Math.min(max, val + step)\n } else if (decreaseKeys.includes(e.key)) {\n newValue = Math.max(min, val - step)\n } else if (e.key === 'Home') {\n newValue = min\n } else if (e.key === 'End') {\n newValue = max\n } else {\n return\n }\n e.preventDefault()\n const currentValue = valueRef.current\n if (range && Array.isArray(currentValue)) {\n const newValues = [...currentValue]\n newValues[index] = newValue\n newValues.sort((a, b) => a - b)\n if (!controlledValue) setInternalValue(newValues)\n onChange?.(newValues)\n } else {\n if (!controlledValue) setInternalValue(newValue)\n onChange?.(newValue)\n }\n }, [disabled, isVertical, min, max, step, range, controlledValue, onChange])\n\n // Fill segment styles\n const getFillStyle = (startPct: number, endPct: number) =>\n isVertical\n ? { bottom: `${startPct}%`, height: `${endPct - startPct}%` }\n : { left: `${startPct}%`, width: `${endPct - startPct}%` }\n\n // Thumb position style\n const getThumbStyle = (pct: number) =>\n isVertical\n ? { bottom: `${pct}%` }\n : { left: `${pct}%` }\n\n return (\n <div\n data-slot=\"root\"\n className={cn(\n isVertical ? 'h-full inline-flex flex-col items-center' : 'w-full',\n colorVars[color],\n 'slider_root',\n classNames?.root,\n className,\n )}\n >\n {/* Footer top (vertical: value at top) */}\n {isVertical && footer === true && (\n <span className={cn('text-sm text-text-secondary mb-1', 'slider_label', classNames?.label)}>{max}</span>\n )}\n\n <div\n ref={trackRef}\n onClick={handleTrackClick}\n className={cn(\n sliderTrackVariants({ size, orientation }),\n getTrackColorClasses(variant),\n 'relative cursor-pointer touch-none',\n isVertical && 'h-full',\n 'slider_track',\n classNames?.track,\n disabled && 'opacity-50 cursor-not-allowed',\n )}\n >\n {/* Fill segment */}\n {range && values.length > 1 ? (\n values.slice(0, -1).map((val, index) => {\n const start = getPercentage(val)\n const end = getPercentage(values[index + 1]!)\n return (\n <div\n key={index}\n className={cn(\n 'absolute rounded-full',\n isVertical ? 'w-full' : 'h-full',\n getFillColorClasses(variant),\n 'slider_range',\n classNames?.range,\n )}\n style={getFillStyle(start, end)}\n />\n )\n })\n ) : (\n <div\n className={cn(\n 'absolute rounded-full',\n isVertical ? 'w-full' : 'h-full',\n getFillColorClasses(variant),\n 'slider_range',\n classNames?.range,\n )}\n style={getFillStyle(0, getPercentage(values[0] || 0))}\n />\n )}\n\n {/* Thumbs */}\n {values.map((val, index) => {\n const pct = getPercentage(val)\n const isAtStart = pct <= 0\n const isAtEnd = pct >= 100\n return (\n <div\n key={index}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={val}\n aria-disabled={disabled}\n aria-orientation={orientation}\n aria-label={range ? `Slider thumb ${index + 1}` : 'Slider'}\n className={cn(\n thumbVariants({ size }),\n getThumbColorClasses(variant),\n '-translate-x-1/2',\n disabled && 'cursor-not-allowed',\n 'focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-primary',\n isVertical\n ? cn(\n 'left-1/2 translate-y-1/2',\n isAtStart && 'translate-y-0',\n isAtEnd && 'translate-y-full',\n )\n : cn(\n 'top-1/2 -translate-y-1/2',\n isAtStart && 'translate-x-0',\n isAtEnd && '-translate-x-full',\n ),\n 'slider_thumb',\n classNames?.thumb,\n )}\n data-index={index}\n style={getThumbStyle(pct)}\n onPointerDown={handlePointerDown}\n onKeyDown={handleThumbKeyDown}\n >\n <div\n className={cn(\n 'absolute bg-text-primary text-background text-xs px-2 py-1 rounded whitespace-nowrap',\n hoveredThumb === index ? 'opacity-100' : 'opacity-0 pointer-events-none',\n isVertical\n ? 'left-full ml-2 top-1/2 -translate-y-1/2'\n : '-top-8 left-1/2 -translate-x-1/2',\n )}\n >\n {val}\n </div>\n </div>\n )\n })}\n </div>\n\n {/* Footer */}\n {isVertical && footer === true && (\n <span className={cn('text-sm text-text-secondary mt-1', 'slider_label', classNames?.label)}>{min}</span>\n )}\n\n {!isVertical && footer === true && (\n <div className=\"flex justify-between mt-1 text-sm text-text-secondary\">\n <span className={cn('slider_label', classNames?.label)}>{min}</span>\n <span className={cn('font-medium text-text-primary', 'slider_value', classNames?.value)}>\n {range && Array.isArray(value) ? value.join(' - ') : value}\n </span>\n <span className={cn('slider_label', classNames?.label)}>{max}</span>\n </div>\n )}\n {footer && typeof footer !== 'boolean' && footer}\n </div>\n )\n },\n)\n\nSlider.displayName = 'Slider'\n\nexport type * from './types'\nexport default Slider\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
1
+ import { cn } from './chunk-RAS6HUEI.js';
2
2
  import React, { useState, useRef, useEffect } from 'react';
3
3
  import { jsx, jsxs } from 'react/jsx-runtime';
4
4
 
@@ -9,34 +9,42 @@ var Image = React.memo(({
9
9
  classNames,
10
10
  fallbackSrc,
11
11
  fetchPriority = "auto",
12
+ loading,
12
13
  ...props
13
14
  }) => {
14
15
  const [imageError, setImageError] = useState(false);
16
+ const [fallbackError, setFallbackError] = useState(false);
15
17
  const [isLoaded, setIsLoaded] = useState(false);
16
18
  const imageRef = useRef(null);
17
19
  useEffect(() => {
18
20
  setImageError(false);
21
+ setFallbackError(false);
19
22
  setIsLoaded(false);
20
- }, [src]);
21
- useEffect(() => {
22
- const handleLoad = () => {
23
- if (imageRef.current) {
24
- setIsLoaded(true);
25
- }
26
- };
27
23
  const img = imageRef.current;
28
24
  if (img?.complete && img?.naturalWidth > 0) {
29
- handleLoad();
30
- } else {
31
- img?.addEventListener("load", handleLoad);
25
+ setIsLoaded(true);
32
26
  }
33
- return () => img?.removeEventListener("load", handleLoad);
34
27
  }, [src]);
28
+ const handleLoad = () => {
29
+ setIsLoaded(true);
30
+ };
31
+ const handleError = () => {
32
+ if (imageError) {
33
+ setFallbackError(true);
34
+ } else {
35
+ setImageError(true);
36
+ }
37
+ };
38
+ const loadingStrategy = loading ?? (fetchPriority === "high" ? "eager" : "lazy");
39
+ if (imageError && fallbackError) {
40
+ return null;
41
+ }
35
42
  const imgElement = /* @__PURE__ */ jsx(
36
43
  "img",
37
44
  {
38
45
  ref: imageRef,
39
- onError: () => setImageError(true),
46
+ onLoad: handleLoad,
47
+ onError: handleError,
40
48
  src: imageError ? fallbackSrc : src,
41
49
  className: cn(
42
50
  "image_image",
@@ -50,7 +58,7 @@ var Image = React.memo(({
50
58
  ),
51
59
  ...props,
52
60
  alt: props.alt,
53
- loading: "lazy",
61
+ loading: loadingStrategy,
54
62
  fetchPriority
55
63
  }
56
64
  );
@@ -90,5 +98,5 @@ Image.displayName = "Image";
90
98
  var image_default = Image;
91
99
 
92
100
  export { image_default };
93
- //# sourceMappingURL=chunk-HECAAILV.js.map
94
- //# sourceMappingURL=chunk-HECAAILV.js.map
101
+ //# sourceMappingURL=chunk-HRVOTFU4.js.map
102
+ //# sourceMappingURL=chunk-HRVOTFU4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/image/index.tsx"],"names":[],"mappings":"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","file":"chunk-HRVOTFU4.js","sourcesContent":["'use client'\n\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport { cn } from '../utils'\n\nimport { ImageProps } from './types'\n\nconst Image = React.memo<ImageProps>(({\n src,\n withBlur,\n className,\n classNames,\n fallbackSrc,\n fetchPriority = 'auto',\n loading,\n ...props\n}) => {\n const [imageError, setImageError] = useState(false)\n const [fallbackError, setFallbackError] = useState(false)\n const [isLoaded, setIsLoaded] = useState(false)\n const imageRef = useRef<HTMLImageElement>(null)\n\n useEffect(() => {\n setImageError(false)\n setFallbackError(false)\n setIsLoaded(false)\n\n const img = imageRef.current\n if (img?.complete && img?.naturalWidth > 0) {\n setIsLoaded(true)\n }\n }, [src])\n\n const handleLoad = () => {\n setIsLoaded(true)\n }\n\n const handleError = () => {\n if (imageError) {\n setFallbackError(true)\n } else {\n setImageError(true)\n }\n }\n\n // Determine loading strategy\n const loadingStrategy = loading ?? (fetchPriority === 'high' ? 'eager' : 'lazy')\n\n // Both primary and fallback failed - render nothing\n if (imageError && fallbackError) {\n return null\n }\n\n const imgElement = (\n <img\n ref={imageRef}\n onLoad={handleLoad}\n onError={handleError}\n src={imageError ? fallbackSrc : src}\n className={cn(\n 'image_image',\n !isLoaded && 'opacity-0',\n isLoaded && 'opacity-100',\n 'transition-opacity duration-500 ease-in-out',\n imageError && 'image_error',\n imageError && classNames?.error,\n classNames?.image,\n className,\n )}\n {...props}\n alt={props.alt}\n loading={loadingStrategy}\n fetchPriority={fetchPriority}\n />\n )\n\n // Without blur: render img directly, no wrapper\n if (!withBlur) {\n return imgElement\n }\n\n // With blur: wrapper needed for placeholder overlay\n return (\n <div\n data-slot=\"root\"\n className={cn(\n 'image_root',\n 'relative overflow-hidden',\n classNames?.root,\n )}\n style={{\n width: props.width ? `${props.width}px` : undefined,\n height: props.height ? `${props.height}px` : undefined,\n }}\n >\n {!isLoaded && (\n <div\n className={cn(\n 'image_placeholder',\n 'absolute inset-0 animate-pulse bg-gradient-to-r from-surface via-background to-surface',\n classNames?.placeholder\n )}\n />\n )}\n {imgElement}\n </div>\n )\n})\n\nImage.displayName = 'Image'\n\nexport type * from './types'\nexport default Image\n"]}
@@ -1,10 +1,11 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
1
+ import { colorVars } from './chunk-G6QIIWKU.js';
2
+ import { cn } from './chunk-RAS6HUEI.js';
2
3
  import { cva } from 'class-variance-authority';
3
4
  import React, { useState, useEffect } from 'react';
4
5
  import { jsxs, jsx } from 'react/jsx-runtime';
5
6
 
6
7
  var avatarVariants = cva(
7
- "relative inline-flex items-center justify-center font-medium select-none shrink-0",
8
+ "relative inline-flex items-center justify-center font-medium select-none shrink-0 bg-slot-10 text-slot",
8
9
  {
9
10
  variants: {
10
11
  size: {
@@ -17,16 +18,7 @@ var avatarVariants = cva(
17
18
  circle: "rounded-full",
18
19
  square: "rounded-lg"
19
20
  },
20
- color: {
21
- default: "bg-surface text-text-primary",
22
- primary: "bg-primary/10 text-primary",
23
- secondary: "bg-secondary/10 text-secondary",
24
- accent: "bg-accent/10 text-accent",
25
- success: "bg-success/10 text-success",
26
- error: "bg-error/10 text-error",
27
- warning: "bg-warning/10 text-warning",
28
- info: "bg-info/10 text-info"
29
- },
21
+ color: colorVars,
30
22
  bordered: {
31
23
  true: "ring-2 ring-background",
32
24
  false: ""
@@ -81,6 +73,11 @@ function getInitialsFromName(name) {
81
73
  const lastInitial = lastWord?.[0] ?? "";
82
74
  return (firstInitial + lastInitial).toUpperCase();
83
75
  }
76
+ function getInitials(name, fallback) {
77
+ if (fallback) return fallback.slice(0, 2).toUpperCase();
78
+ if (name) return getInitialsFromName(name);
79
+ return "";
80
+ }
84
81
  var DefaultUserIcon = () => /* @__PURE__ */ jsx(
85
82
  "svg",
86
83
  {
@@ -120,13 +117,8 @@ var Avatar = React.memo(
120
117
  setImageError(true);
121
118
  onError?.(e);
122
119
  };
123
- const getInitials = () => {
124
- if (fallback) return fallback.slice(0, 2).toUpperCase();
125
- if (name) return getInitialsFromName(name);
126
- return "";
127
- };
128
120
  const showImage = src && !imageError;
129
- const initials = getInitials();
121
+ const initials = getInitials(name, fallback);
130
122
  const showFallback = !showImage && (initials || icon);
131
123
  const showDefaultIcon = !showImage && !showFallback;
132
124
  return /* @__PURE__ */ jsxs(
@@ -142,7 +134,6 @@ var Avatar = React.memo(
142
134
  bordered,
143
135
  disabled
144
136
  }),
145
- // Apply overflow-hidden only when no badge/status to prevent clipping
146
137
  !badge && !status && "overflow-hidden",
147
138
  classNames?.root,
148
139
  className
@@ -206,7 +197,7 @@ var Avatar = React.memo(
206
197
  "span",
207
198
  {
208
199
  className: cn(
209
- "absolute -top-1 -right-1 flex items-center justify-center rounded-full bg-error text-white font-medium px-1",
200
+ "absolute -top-1 -right-1 flex items-center justify-center rounded-full bg-error text-background font-medium px-1",
210
201
  badgeSizeClasses[size]
211
202
  ),
212
203
  "aria-label": typeof badge === "number" ? `${badge} notifications` : void 0,
@@ -295,5 +286,5 @@ AvatarGroup.displayName = "AvatarGroup";
295
286
  var avatar_default = Avatar;
296
287
 
297
288
  export { Avatar, AvatarGroup, avatar_default };
298
- //# sourceMappingURL=chunk-LX4FDH4J.js.map
299
- //# sourceMappingURL=chunk-LX4FDH4J.js.map
289
+ //# sourceMappingURL=chunk-HSMO2BR4.js.map
290
+ //# sourceMappingURL=chunk-HSMO2BR4.js.map