silver-ui 0.3.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1085) hide show
  1. package/dist/{chunk-YAYINZT2.cjs → chunk-27EAV2GT.cjs} +3 -3
  2. package/dist/chunk-27EAV2GT.cjs.map +1 -0
  3. package/dist/{chunk-AMFFE5UJ.js → chunk-2AWSJF22.js} +5 -5
  4. package/dist/{chunk-AMFFE5UJ.js.map → chunk-2AWSJF22.js.map} +1 -1
  5. package/dist/{chunk-66LRFIYK.cjs → chunk-2F5TDBRT.cjs} +171 -153
  6. package/dist/chunk-2F5TDBRT.cjs.map +1 -0
  7. package/dist/{chunk-MUUPZEZ5.cjs → chunk-2GMDMZKI.cjs} +6 -6
  8. package/dist/chunk-2GMDMZKI.cjs.map +1 -0
  9. package/dist/{chunk-BS55BG2U.cjs → chunk-2K4I2MB3.cjs} +7 -7
  10. package/dist/{chunk-BS55BG2U.cjs.map → chunk-2K4I2MB3.cjs.map} +1 -1
  11. package/dist/{chunk-WMXIUOOU.cjs → chunk-2MXK2SDR.cjs} +3 -3
  12. package/dist/chunk-2MXK2SDR.cjs.map +1 -0
  13. package/dist/{chunk-U5GTHA44.cjs → chunk-2RZNX26F.cjs} +14 -14
  14. package/dist/{chunk-U5GTHA44.cjs.map → chunk-2RZNX26F.cjs.map} +1 -1
  15. package/dist/{chunk-DSB4Q3AS.js → chunk-2VAUVJVG.js} +4 -4
  16. package/dist/{chunk-DSB4Q3AS.js.map → chunk-2VAUVJVG.js.map} +1 -1
  17. package/dist/{chunk-D2DOHX4W.js → chunk-2VL66QBX.js} +123 -108
  18. package/dist/chunk-2VL66QBX.js.map +1 -0
  19. package/dist/{chunk-QL3YSC3H.cjs → chunk-2WTHSGDP.cjs} +30 -24
  20. package/dist/chunk-2WTHSGDP.cjs.map +1 -0
  21. package/dist/{chunk-UYBGXFYX.js → chunk-2Y7ULSEU.js} +495 -433
  22. package/dist/chunk-2Y7ULSEU.js.map +1 -0
  23. package/dist/{chunk-UPQHFW47.js → chunk-3IYM5MAC.js} +5 -5
  24. package/dist/chunk-3IYM5MAC.js.map +1 -0
  25. package/dist/chunk-3NIDAKCF.cjs +38 -0
  26. package/dist/chunk-3NIDAKCF.cjs.map +1 -0
  27. package/dist/{chunk-L7BOLGF2.cjs → chunk-3VJIUZAY.cjs} +263 -224
  28. package/dist/chunk-3VJIUZAY.cjs.map +1 -0
  29. package/dist/{chunk-VJBBMBRT.cjs → chunk-3W3ST5Y3.cjs} +7 -7
  30. package/dist/chunk-3W3ST5Y3.cjs.map +1 -0
  31. package/dist/{chunk-QEFE4QBL.cjs → chunk-3Z5PF75J.cjs} +14 -14
  32. package/dist/{chunk-QEFE4QBL.cjs.map → chunk-3Z5PF75J.cjs.map} +1 -1
  33. package/dist/{chunk-XSQOHNIF.js → chunk-4426KMA7.js} +3 -3
  34. package/dist/{chunk-XSQOHNIF.js.map → chunk-4426KMA7.js.map} +1 -1
  35. package/dist/{chunk-4MRORQNN.js → chunk-4HXNBLCJ.js} +4 -4
  36. package/dist/{chunk-4MRORQNN.js.map → chunk-4HXNBLCJ.js.map} +1 -1
  37. package/dist/chunk-4RDA4W4N.js +150 -0
  38. package/dist/chunk-4RDA4W4N.js.map +1 -0
  39. package/dist/{chunk-Y4FH67QZ.js → chunk-4SUQFPWH.js} +176 -102
  40. package/dist/chunk-4SUQFPWH.js.map +1 -0
  41. package/dist/{chunk-P3SMNZCT.js → chunk-56PY2CD7.js} +18 -45
  42. package/dist/chunk-56PY2CD7.js.map +1 -0
  43. package/dist/{chunk-M4JUQCKP.js → chunk-5FTIATD6.js} +2 -2
  44. package/dist/{chunk-M4JUQCKP.js.map → chunk-5FTIATD6.js.map} +1 -1
  45. package/dist/{chunk-QSEDH7T2.js → chunk-5HPXUDX6.js} +3 -6
  46. package/dist/chunk-5HPXUDX6.js.map +1 -0
  47. package/dist/{chunk-Z4TZAJS3.js → chunk-5UGHDUMO.js} +2 -2
  48. package/dist/chunk-5UGHDUMO.js.map +1 -0
  49. package/dist/{chunk-BRB52QFV.cjs → chunk-5XMWGK3O.cjs} +18 -18
  50. package/dist/chunk-5XMWGK3O.cjs.map +1 -0
  51. package/dist/{chunk-2XAA3CM5.js → chunk-5ZU7FY4O.js} +2 -2
  52. package/dist/chunk-5ZU7FY4O.js.map +1 -0
  53. package/dist/{chunk-NHXJVSZZ.cjs → chunk-62SQBQA4.cjs} +2 -2
  54. package/dist/chunk-62SQBQA4.cjs.map +1 -0
  55. package/dist/{chunk-LUBVZVY3.js → chunk-65MJZYO6.js} +185 -134
  56. package/dist/chunk-65MJZYO6.js.map +1 -0
  57. package/dist/{chunk-U2U4FMFM.cjs → chunk-67UUGI3M.cjs} +9 -9
  58. package/dist/chunk-67UUGI3M.cjs.map +1 -0
  59. package/dist/{chunk-CEU7BIL6.cjs → chunk-6DAZ2ZOW.cjs} +13 -13
  60. package/dist/chunk-6DAZ2ZOW.cjs.map +1 -0
  61. package/dist/{chunk-DIIE44GO.js → chunk-6EYLEVC6.js} +203 -172
  62. package/dist/chunk-6EYLEVC6.js.map +1 -0
  63. package/dist/{chunk-ASJ5CBCR.js → chunk-6J326CN6.js} +7 -7
  64. package/dist/chunk-6J326CN6.js.map +1 -0
  65. package/dist/{chunk-EMHLPPQZ.js → chunk-6PIVWNUR.js} +4 -4
  66. package/dist/chunk-6PIVWNUR.js.map +1 -0
  67. package/dist/{chunk-BA4A7C7U.js → chunk-75KSHZTV.js} +23 -16
  68. package/dist/chunk-75KSHZTV.js.map +1 -0
  69. package/dist/{chunk-ZLATP3P5.cjs → chunk-7CTHD4G6.cjs} +8 -16
  70. package/dist/chunk-7CTHD4G6.cjs.map +1 -0
  71. package/dist/{chunk-ZWULWVN3.js → chunk-ADSG24VE.js} +9 -9
  72. package/dist/chunk-ADSG24VE.js.map +1 -0
  73. package/dist/{chunk-N2TNBDQI.js → chunk-AEYJ6PWC.js} +3 -3
  74. package/dist/{chunk-N2TNBDQI.js.map → chunk-AEYJ6PWC.js.map} +1 -1
  75. package/dist/{chunk-D3SSMY73.cjs → chunk-ANACERIO.cjs} +8 -8
  76. package/dist/chunk-ANACERIO.cjs.map +1 -0
  77. package/dist/{chunk-6MOJEGDU.cjs → chunk-ARUOMLOJ.cjs} +27 -23
  78. package/dist/chunk-ARUOMLOJ.cjs.map +1 -0
  79. package/dist/{chunk-OWBNRALR.js → chunk-AV7D3SXF.js} +7 -7
  80. package/dist/{chunk-OWBNRALR.js.map → chunk-AV7D3SXF.js.map} +1 -1
  81. package/dist/{chunk-PL6J55JB.cjs → chunk-BIJ6YDWJ.cjs} +87 -60
  82. package/dist/chunk-BIJ6YDWJ.cjs.map +1 -0
  83. package/dist/{chunk-RNB4BDEG.js → chunk-BIKVMVWF.js} +3 -3
  84. package/dist/{chunk-RNB4BDEG.js.map → chunk-BIKVMVWF.js.map} +1 -1
  85. package/dist/{chunk-IHM2M74J.js → chunk-BQWUTDTN.js} +3 -3
  86. package/dist/{chunk-IHM2M74J.js.map → chunk-BQWUTDTN.js.map} +1 -1
  87. package/dist/{chunk-KFDHP4WP.cjs → chunk-BSI4BQEX.cjs} +6 -6
  88. package/dist/{chunk-KFDHP4WP.cjs.map → chunk-BSI4BQEX.cjs.map} +1 -1
  89. package/dist/{chunk-WYE3VOFK.cjs → chunk-BSPWX2OZ.cjs} +22 -22
  90. package/dist/{chunk-WYE3VOFK.cjs.map → chunk-BSPWX2OZ.cjs.map} +1 -1
  91. package/dist/{chunk-3XDUR3IG.cjs → chunk-BSXUNRET.cjs} +14 -15
  92. package/dist/chunk-BSXUNRET.cjs.map +1 -0
  93. package/dist/chunk-BUYZZOOU.js +56 -0
  94. package/dist/chunk-BUYZZOOU.js.map +1 -0
  95. package/dist/chunk-CPDWUT2H.cjs +59 -0
  96. package/dist/chunk-CPDWUT2H.cjs.map +1 -0
  97. package/dist/{chunk-ZVH3BLYO.js → chunk-CUHJDV6K.js} +8 -8
  98. package/dist/chunk-CUHJDV6K.js.map +1 -0
  99. package/dist/{chunk-4CVDLMD6.js → chunk-D3CHBU46.js} +3 -3
  100. package/dist/{chunk-4CVDLMD6.js.map → chunk-D3CHBU46.js.map} +1 -1
  101. package/dist/{chunk-HM7IEGQ2.cjs → chunk-D5OX6II7.cjs} +7 -7
  102. package/dist/chunk-D5OX6II7.cjs.map +1 -0
  103. package/dist/{chunk-RDNMAV5B.js → chunk-DE7JLNSO.js} +2 -2
  104. package/dist/chunk-DE7JLNSO.js.map +1 -0
  105. package/dist/{chunk-JKERY7QF.cjs → chunk-DLIYUFTS.cjs} +2 -2
  106. package/dist/{chunk-JKERY7QF.cjs.map → chunk-DLIYUFTS.cjs.map} +1 -1
  107. package/dist/{chunk-MSNRGNVY.cjs → chunk-DV4K35UC.cjs} +7 -7
  108. package/dist/{chunk-MSNRGNVY.cjs.map → chunk-DV4K35UC.cjs.map} +1 -1
  109. package/dist/{chunk-54J6FRPG.js → chunk-DZZEJY3J.js} +198 -180
  110. package/dist/chunk-DZZEJY3J.js.map +1 -0
  111. package/dist/{chunk-IRSJHEYI.js → chunk-E42WOTIC.js} +4 -4
  112. package/dist/chunk-E42WOTIC.js.map +1 -0
  113. package/dist/{chunk-ZNUOFLCQ.js → chunk-EBJPUXFQ.js} +149 -147
  114. package/dist/chunk-EBJPUXFQ.js.map +1 -0
  115. package/dist/{chunk-AJTJD5C6.js → chunk-ECDYAZ2R.js} +8 -8
  116. package/dist/{chunk-AJTJD5C6.js.map → chunk-ECDYAZ2R.js.map} +1 -1
  117. package/dist/{chunk-2IKWX66Q.js → chunk-EFBSEJBD.js} +28 -29
  118. package/dist/chunk-EFBSEJBD.js.map +1 -0
  119. package/dist/{chunk-PUVBNGCF.js → chunk-EIT2QSCA.js} +2 -2
  120. package/dist/{chunk-PUVBNGCF.js.map → chunk-EIT2QSCA.js.map} +1 -1
  121. package/dist/{chunk-3IBY374V.cjs → chunk-ESRDHDYN.cjs} +10 -10
  122. package/dist/chunk-ESRDHDYN.cjs.map +1 -0
  123. package/dist/{chunk-IKF6VHA4.cjs → chunk-EZFQCREN.cjs} +19 -46
  124. package/dist/chunk-EZFQCREN.cjs.map +1 -0
  125. package/dist/chunk-F7BFO3SD.cjs +153 -0
  126. package/dist/chunk-F7BFO3SD.cjs.map +1 -0
  127. package/dist/{chunk-EVKFA5FA.cjs → chunk-FCUUGJTM.cjs} +210 -192
  128. package/dist/chunk-FCUUGJTM.cjs.map +1 -0
  129. package/dist/{chunk-BAPCHFNX.cjs → chunk-FFF57VHO.cjs} +14 -14
  130. package/dist/chunk-FFF57VHO.cjs.map +1 -0
  131. package/dist/{chunk-UKDGDMWN.js → chunk-FNRYGCO3.js} +5 -5
  132. package/dist/chunk-FNRYGCO3.js.map +1 -0
  133. package/dist/{chunk-6USJ4LJJ.js → chunk-FQSVY4QB.js} +4 -4
  134. package/dist/chunk-FQSVY4QB.js.map +1 -0
  135. package/dist/{chunk-WOIWI2UO.js → chunk-G6HS52US.js} +3 -3
  136. package/dist/chunk-G6HS52US.js.map +1 -0
  137. package/dist/chunk-GA77PPVL.cjs +217 -0
  138. package/dist/chunk-GA77PPVL.cjs.map +1 -0
  139. package/dist/{chunk-MGVEX3RS.js → chunk-GSTINE4X.js} +814 -503
  140. package/dist/chunk-GSTINE4X.js.map +1 -0
  141. package/dist/chunk-GW6P4FJ4.cjs +424 -0
  142. package/dist/chunk-GW6P4FJ4.cjs.map +1 -0
  143. package/dist/{chunk-QRKRVCA3.cjs → chunk-GY2ZZR4Z.cjs} +34 -34
  144. package/dist/chunk-GY2ZZR4Z.cjs.map +1 -0
  145. package/dist/{chunk-RQ5BMSGU.js → chunk-H2EMKCWT.js} +3 -3
  146. package/dist/{chunk-RQ5BMSGU.js.map → chunk-H2EMKCWT.js.map} +1 -1
  147. package/dist/{chunk-P6RAOXJA.js → chunk-H4L456EW.js} +85 -58
  148. package/dist/chunk-H4L456EW.js.map +1 -0
  149. package/dist/{chunk-GXRH5XQY.js → chunk-HIH6MS5D.js} +10 -12
  150. package/dist/chunk-HIH6MS5D.js.map +1 -0
  151. package/dist/{chunk-YLGAJD6Q.js → chunk-HNDDNW52.js} +6 -14
  152. package/dist/chunk-HNDDNW52.js.map +1 -0
  153. package/dist/{chunk-3TXVDCF2.js → chunk-HPNY32G6.js} +5 -5
  154. package/dist/{chunk-3TXVDCF2.js.map → chunk-HPNY32G6.js.map} +1 -1
  155. package/dist/{chunk-M3RNFDA2.cjs → chunk-HWD4HDQ5.cjs} +61 -52
  156. package/dist/chunk-HWD4HDQ5.cjs.map +1 -0
  157. package/dist/{chunk-LX64ENLC.cjs → chunk-HWP2UGOC.cjs} +84 -97
  158. package/dist/chunk-HWP2UGOC.cjs.map +1 -0
  159. package/dist/chunk-HXIU3SIQ.cjs +391 -0
  160. package/dist/chunk-HXIU3SIQ.cjs.map +1 -0
  161. package/dist/{chunk-5GNYP3PH.cjs → chunk-I2NG2P5K.cjs} +152 -137
  162. package/dist/chunk-I2NG2P5K.cjs.map +1 -0
  163. package/dist/chunk-I47WOF6E.js +389 -0
  164. package/dist/chunk-I47WOF6E.js.map +1 -0
  165. package/dist/{chunk-EHCAF6D3.js → chunk-IAVZKGZS.js} +14 -3
  166. package/dist/chunk-IAVZKGZS.js.map +1 -0
  167. package/dist/{chunk-F3NATTQG.cjs → chunk-IGJEZLHP.cjs} +223 -205
  168. package/dist/chunk-IGJEZLHP.cjs.map +1 -0
  169. package/dist/{chunk-A66NIFJE.cjs → chunk-IU2YRN35.cjs} +112 -112
  170. package/dist/chunk-IU2YRN35.cjs.map +1 -0
  171. package/dist/{chunk-7T3SWOY7.js → chunk-IUW777WZ.js} +2 -2
  172. package/dist/{chunk-7T3SWOY7.js.map → chunk-IUW777WZ.js.map} +1 -1
  173. package/dist/{chunk-QGHFUOUB.cjs → chunk-IX26TMZD.cjs} +7 -7
  174. package/dist/{chunk-QGHFUOUB.cjs.map → chunk-IX26TMZD.cjs.map} +1 -1
  175. package/dist/chunk-J2YKUHQM.js +330 -0
  176. package/dist/chunk-J2YKUHQM.js.map +1 -0
  177. package/dist/{chunk-QEX7V7TI.cjs → chunk-J3X465QT.cjs} +16 -16
  178. package/dist/chunk-J3X465QT.cjs.map +1 -0
  179. package/dist/{chunk-4TIAKZ4Q.cjs → chunk-J4PIYOWT.cjs} +2 -2
  180. package/dist/{chunk-4TIAKZ4Q.cjs.map → chunk-J4PIYOWT.cjs.map} +1 -1
  181. package/dist/{chunk-O32BKXTR.cjs → chunk-JIF5TZHC.cjs} +2 -2
  182. package/dist/chunk-JIF5TZHC.cjs.map +1 -0
  183. package/dist/{chunk-UN35QV25.js → chunk-JJNXQ7EL.js} +4 -4
  184. package/dist/{chunk-UN35QV25.js.map → chunk-JJNXQ7EL.js.map} +1 -1
  185. package/dist/{chunk-CK3UJQRI.cjs → chunk-JK4YAQ2N.cjs} +2 -6
  186. package/dist/chunk-JK4YAQ2N.cjs.map +1 -0
  187. package/dist/{chunk-VVO7GIHG.cjs → chunk-JM4Q7ZQH.cjs} +9 -9
  188. package/dist/{chunk-VVO7GIHG.cjs.map → chunk-JM4Q7ZQH.cjs.map} +1 -1
  189. package/dist/{chunk-NH7KH7QP.js → chunk-JS6MRT6M.js} +5 -5
  190. package/dist/{chunk-NH7KH7QP.js.map → chunk-JS6MRT6M.js.map} +1 -1
  191. package/dist/{chunk-7GN6YTSS.cjs → chunk-JSAYTQTJ.cjs} +7 -7
  192. package/dist/chunk-JSAYTQTJ.cjs.map +1 -0
  193. package/dist/{chunk-WGCGHFXE.cjs → chunk-JV4Y6HNP.cjs} +2 -2
  194. package/dist/{chunk-WGCGHFXE.cjs.map → chunk-JV4Y6HNP.cjs.map} +1 -1
  195. package/dist/{chunk-I7KILUVL.cjs → chunk-K4K4FU3D.cjs} +182 -108
  196. package/dist/chunk-K4K4FU3D.cjs.map +1 -0
  197. package/dist/{chunk-M3IKL2VG.js → chunk-KC4EKXGF.js} +7 -7
  198. package/dist/{chunk-M3IKL2VG.js.map → chunk-KC4EKXGF.js.map} +1 -1
  199. package/dist/{chunk-PYPXJC35.cjs → chunk-KUXFEAT4.cjs} +4 -4
  200. package/dist/{chunk-PYPXJC35.cjs.map → chunk-KUXFEAT4.cjs.map} +1 -1
  201. package/dist/chunk-KVEXSDEM.js +214 -0
  202. package/dist/chunk-KVEXSDEM.js.map +1 -0
  203. package/dist/{chunk-276LEL3G.cjs → chunk-KVJ27734.cjs} +4 -4
  204. package/dist/{chunk-276LEL3G.cjs.map → chunk-KVJ27734.cjs.map} +1 -1
  205. package/dist/{chunk-W3KMDQKP.cjs → chunk-L5JS6P62.cjs} +38 -33
  206. package/dist/chunk-L5JS6P62.cjs.map +1 -0
  207. package/dist/{chunk-75CPTIET.js → chunk-L5PJCLV6.js} +263 -224
  208. package/dist/chunk-L5PJCLV6.js.map +1 -0
  209. package/dist/{chunk-3L6KAW7G.js → chunk-L7XJZJCM.js} +5 -5
  210. package/dist/chunk-L7XJZJCM.js.map +1 -0
  211. package/dist/{chunk-YSTESYUB.js → chunk-LBGC6EC5.js} +249 -203
  212. package/dist/chunk-LBGC6EC5.js.map +1 -0
  213. package/dist/{chunk-CN2HJ7CP.js → chunk-LKGHYNLH.js} +10 -10
  214. package/dist/{chunk-CN2HJ7CP.js.map → chunk-LKGHYNLH.js.map} +1 -1
  215. package/dist/{chunk-7U7RP6N2.cjs → chunk-LW3DJOF4.cjs} +13 -13
  216. package/dist/{chunk-7U7RP6N2.cjs.map → chunk-LW3DJOF4.cjs.map} +1 -1
  217. package/dist/{chunk-HVUYVPQL.cjs → chunk-MAYQGKKW.cjs} +4 -4
  218. package/dist/{chunk-HVUYVPQL.cjs.map → chunk-MAYQGKKW.cjs.map} +1 -1
  219. package/dist/{chunk-6NTDPZWP.js → chunk-MDQSVB2Y.js} +26 -22
  220. package/dist/chunk-MDQSVB2Y.js.map +1 -0
  221. package/dist/{chunk-EE2O457Z.cjs → chunk-MEUELWGO.cjs} +14 -14
  222. package/dist/{chunk-EE2O457Z.cjs.map → chunk-MEUELWGO.cjs.map} +1 -1
  223. package/dist/{chunk-CRQXHA7N.js → chunk-MEXR5ONE.js} +9 -9
  224. package/dist/{chunk-CRQXHA7N.js.map → chunk-MEXR5ONE.js.map} +1 -1
  225. package/dist/{chunk-WO6FS4DV.js → chunk-MGJLBHPJ.js} +166 -148
  226. package/dist/chunk-MGJLBHPJ.js.map +1 -0
  227. package/dist/{chunk-5AYGQJOW.js → chunk-MN2NCSQQ.js} +4 -4
  228. package/dist/{chunk-5AYGQJOW.js.map → chunk-MN2NCSQQ.js.map} +1 -1
  229. package/dist/{chunk-5TT4PGZO.cjs → chunk-N77K3NQY.cjs} +9 -9
  230. package/dist/{chunk-5TT4PGZO.cjs.map → chunk-N77K3NQY.cjs.map} +1 -1
  231. package/dist/{chunk-KRZ57O2J.cjs → chunk-NYTSAO5I.cjs} +8 -8
  232. package/dist/{chunk-KRZ57O2J.cjs.map → chunk-NYTSAO5I.cjs.map} +1 -1
  233. package/dist/{chunk-CPOYENSZ.cjs → chunk-O4PO6AMS.cjs} +4 -4
  234. package/dist/{chunk-CPOYENSZ.cjs.map → chunk-O4PO6AMS.cjs.map} +1 -1
  235. package/dist/{chunk-HNROO7CR.js → chunk-OERNLR2P.js} +16 -16
  236. package/dist/chunk-OERNLR2P.js.map +1 -0
  237. package/dist/{chunk-TF7IWMV2.js → chunk-OF5NULAO.js} +19 -13
  238. package/dist/chunk-OF5NULAO.js.map +1 -0
  239. package/dist/{chunk-F3ZNRO6W.js → chunk-OTQAREYU.js} +6 -6
  240. package/dist/{chunk-F3ZNRO6W.js.map → chunk-OTQAREYU.js.map} +1 -1
  241. package/dist/{chunk-LFRTNC7M.cjs → chunk-OUZX7STE.cjs} +30 -31
  242. package/dist/chunk-OUZX7STE.cjs.map +1 -0
  243. package/dist/{chunk-O4RTJESR.js → chunk-PBQMHXVO.js} +4 -4
  244. package/dist/chunk-PBQMHXVO.js.map +1 -0
  245. package/dist/{chunk-HPVXP3DG.cjs → chunk-PGTOVMP7.cjs} +21 -21
  246. package/dist/{chunk-HPVXP3DG.cjs.map → chunk-PGTOVMP7.cjs.map} +1 -1
  247. package/dist/{chunk-2OXKEUKG.cjs → chunk-PKZSJX53.cjs} +2 -2
  248. package/dist/chunk-PKZSJX53.cjs.map +1 -0
  249. package/dist/chunk-PZHRFASW.js +36 -0
  250. package/dist/chunk-PZHRFASW.js.map +1 -0
  251. package/dist/{chunk-7MN4JDP7.js → chunk-Q3HMGFGI.js} +46 -59
  252. package/dist/chunk-Q3HMGFGI.js.map +1 -0
  253. package/dist/{chunk-U2WVHZ24.cjs → chunk-Q4HAXT5C.cjs} +149 -146
  254. package/dist/chunk-Q4HAXT5C.cjs.map +1 -0
  255. package/dist/{chunk-ZD3NPHZ7.cjs → chunk-QB2BSOM4.cjs} +4 -4
  256. package/dist/{chunk-ZD3NPHZ7.cjs.map → chunk-QB2BSOM4.cjs.map} +1 -1
  257. package/dist/{chunk-VAK4JQYL.js → chunk-QO5C7TIV.js} +9 -8
  258. package/dist/chunk-QO5C7TIV.js.map +1 -0
  259. package/dist/{chunk-CZM5FAWL.cjs → chunk-R4DGCQTA.cjs} +12 -12
  260. package/dist/{chunk-CZM5FAWL.cjs.map → chunk-R4DGCQTA.cjs.map} +1 -1
  261. package/dist/{chunk-76B2VLID.js → chunk-RJEZBOSH.js} +5 -5
  262. package/dist/{chunk-76B2VLID.js.map → chunk-RJEZBOSH.js.map} +1 -1
  263. package/dist/{chunk-4H35H54I.cjs → chunk-RRXOSNCX.cjs} +18 -18
  264. package/dist/chunk-RRXOSNCX.cjs.map +1 -0
  265. package/dist/{chunk-2VOB6LEI.js → chunk-S4IHNNA2.js} +111 -111
  266. package/dist/chunk-S4IHNNA2.js.map +1 -0
  267. package/dist/{chunk-VEUZ5DZR.js → chunk-S5CMLG2E.js} +34 -29
  268. package/dist/chunk-S5CMLG2E.js.map +1 -0
  269. package/dist/{chunk-24J3BUKL.js → chunk-SHARVIUI.js} +3 -3
  270. package/dist/chunk-SHARVIUI.js.map +1 -0
  271. package/dist/{chunk-7PNLMDAR.cjs → chunk-SUT35RHA.cjs} +8 -8
  272. package/dist/chunk-SUT35RHA.cjs.map +1 -0
  273. package/dist/{chunk-SSOAZZNR.cjs → chunk-SUWRSJAN.cjs} +5 -5
  274. package/dist/{chunk-SSOAZZNR.cjs.map → chunk-SUWRSJAN.cjs.map} +1 -1
  275. package/dist/{chunk-LHP47U6H.js → chunk-SZ27SCE2.js} +3 -3
  276. package/dist/{chunk-LHP47U6H.js.map → chunk-SZ27SCE2.js.map} +1 -1
  277. package/dist/{chunk-YNTPHZFJ.js → chunk-TCTPR7YQ.js} +3 -3
  278. package/dist/{chunk-YNTPHZFJ.js.map → chunk-TCTPR7YQ.js.map} +1 -1
  279. package/dist/{chunk-XUJZTD4E.js → chunk-TH537HOM.js} +55 -46
  280. package/dist/chunk-TH537HOM.js.map +1 -0
  281. package/dist/{chunk-RVENUWRD.js → chunk-THTVYP5V.js} +9 -9
  282. package/dist/chunk-THTVYP5V.js.map +1 -0
  283. package/dist/{chunk-GLJWAY4A.cjs → chunk-TKTCN4JE.cjs} +19 -19
  284. package/dist/chunk-TKTCN4JE.cjs.map +1 -0
  285. package/dist/{chunk-Q3OA23V5.js → chunk-TOQ4MGM5.js} +51 -51
  286. package/dist/chunk-TOQ4MGM5.js.map +1 -0
  287. package/dist/chunk-TSKFGLGQ.cjs +332 -0
  288. package/dist/chunk-TSKFGLGQ.cjs.map +1 -0
  289. package/dist/{chunk-OULO3YDQ.cjs → chunk-TTDNCN5G.cjs} +233 -242
  290. package/dist/chunk-TTDNCN5G.cjs.map +1 -0
  291. package/dist/{chunk-PYW5UO2Z.js → chunk-U5M4JZBX.js} +4 -4
  292. package/dist/chunk-U5M4JZBX.js.map +1 -0
  293. package/dist/{chunk-NUTB2K4G.js → chunk-U7ALNPFJ.js} +3 -3
  294. package/dist/{chunk-NUTB2K4G.js.map → chunk-U7ALNPFJ.js.map} +1 -1
  295. package/dist/{chunk-5D4LRSIV.js → chunk-UARQIMPS.js} +10 -10
  296. package/dist/chunk-UARQIMPS.js.map +1 -0
  297. package/dist/{chunk-CZC2K5GJ.js → chunk-UXGHFKLA.js} +6 -6
  298. package/dist/{chunk-CZC2K5GJ.js.map → chunk-UXGHFKLA.js.map} +1 -1
  299. package/dist/{chunk-QCT4BPB6.cjs → chunk-UXQSSRBQ.cjs} +867 -556
  300. package/dist/chunk-UXQSSRBQ.cjs.map +1 -0
  301. package/dist/{chunk-EXYBQVZT.js → chunk-V2V5TTTL.js} +3 -3
  302. package/dist/chunk-V2V5TTTL.js.map +1 -0
  303. package/dist/{chunk-5BCLEOFF.cjs → chunk-V4ZH2H2P.cjs} +37 -30
  304. package/dist/chunk-V4ZH2H2P.cjs.map +1 -0
  305. package/dist/{chunk-EC2ALHNJ.js → chunk-VD52FLHL.js} +214 -196
  306. package/dist/chunk-VD52FLHL.js.map +1 -0
  307. package/dist/{chunk-O5A47TA2.js → chunk-VH3G4IUX.js} +231 -240
  308. package/dist/chunk-VH3G4IUX.js.map +1 -0
  309. package/dist/{chunk-IUUQXCDE.js → chunk-VJXSJXEX.js} +2 -2
  310. package/dist/{chunk-IUUQXCDE.js.map → chunk-VJXSJXEX.js.map} +1 -1
  311. package/dist/{chunk-PJMV2HTO.cjs → chunk-VO4FG3L2.cjs} +62 -62
  312. package/dist/chunk-VO4FG3L2.cjs.map +1 -0
  313. package/dist/{chunk-I45346RZ.cjs → chunk-VOOD6CXJ.cjs} +2 -2
  314. package/dist/{chunk-I45346RZ.cjs.map → chunk-VOOD6CXJ.cjs.map} +1 -1
  315. package/dist/{chunk-3ZFEBOXD.cjs → chunk-VV72PGKH.cjs} +257 -211
  316. package/dist/chunk-VV72PGKH.cjs.map +1 -0
  317. package/dist/{chunk-PQRIV5XU.js → chunk-W5F7PYT2.js} +11 -11
  318. package/dist/{chunk-PQRIV5XU.js.map → chunk-W5F7PYT2.js.map} +1 -1
  319. package/dist/{chunk-3DJ46WN4.js → chunk-WPMWHKJX.js} +6 -6
  320. package/dist/chunk-WPMWHKJX.js.map +1 -0
  321. package/dist/{chunk-FZCBTFHY.js → chunk-WTCH3QCQ.js} +12 -13
  322. package/dist/chunk-WTCH3QCQ.js.map +1 -0
  323. package/dist/{chunk-65QAZWOG.cjs → chunk-X34F4ZV6.cjs} +4 -4
  324. package/dist/{chunk-65QAZWOG.cjs.map → chunk-X34F4ZV6.cjs.map} +1 -1
  325. package/dist/{chunk-6W3L6IJB.cjs → chunk-X4I5YARV.cjs} +17 -17
  326. package/dist/chunk-X4I5YARV.cjs.map +1 -0
  327. package/dist/{chunk-S4LVSSJI.js → chunk-XHJRAEGW.js} +11 -11
  328. package/dist/chunk-XHJRAEGW.js.map +1 -0
  329. package/dist/{chunk-W5G7ZDQ6.cjs → chunk-XLNRO3S6.cjs} +4 -4
  330. package/dist/{chunk-W5G7ZDQ6.cjs.map → chunk-XLNRO3S6.cjs.map} +1 -1
  331. package/dist/{chunk-PZ63ZCEO.cjs → chunk-XPGIWOJO.cjs} +26 -26
  332. package/dist/{chunk-PZ63ZCEO.cjs.map → chunk-XPGIWOJO.cjs.map} +1 -1
  333. package/dist/{chunk-2P6D43V2.cjs → chunk-XPHXAZCE.cjs} +6 -6
  334. package/dist/chunk-XPHXAZCE.cjs.map +1 -0
  335. package/dist/{chunk-X2GRBPCJ.cjs → chunk-XZZI3JYK.cjs} +11 -13
  336. package/dist/chunk-XZZI3JYK.cjs.map +1 -0
  337. package/dist/{chunk-UXDXE7Z6.cjs → chunk-YDNEAHVK.cjs} +512 -452
  338. package/dist/chunk-YDNEAHVK.cjs.map +1 -0
  339. package/dist/{chunk-M3BF3BBJ.cjs → chunk-YJEX32HZ.cjs} +15 -15
  340. package/dist/{chunk-M3BF3BBJ.cjs.map → chunk-YJEX32HZ.cjs.map} +1 -1
  341. package/dist/{chunk-5QPM5LUS.cjs → chunk-Z6RT3WPE.cjs} +15 -4
  342. package/dist/chunk-Z6RT3WPE.cjs.map +1 -0
  343. package/dist/{chunk-L5YTMHDI.cjs → chunk-Z7OUMVR5.cjs} +17 -16
  344. package/dist/chunk-Z7OUMVR5.cjs.map +1 -0
  345. package/dist/{chunk-OSBVDRVD.cjs → chunk-ZPJW3PP7.cjs} +206 -175
  346. package/dist/chunk-ZPJW3PP7.cjs.map +1 -0
  347. package/dist/{chunk-AX6HC2YY.cjs → chunk-ZPOXH42B.cjs} +3 -3
  348. package/dist/{chunk-AX6HC2YY.cjs.map → chunk-ZPOXH42B.cjs.map} +1 -1
  349. package/dist/components/Accordion/Accordion.d.ts.map +1 -1
  350. package/dist/components/Accordion/index.cjs +7 -8
  351. package/dist/components/Accordion/index.d.ts +2 -2
  352. package/dist/components/Accordion/index.d.ts.map +1 -1
  353. package/dist/components/Accordion/index.js +4 -5
  354. package/dist/components/Accordion/useAccordionDevWarning.d.ts +8 -0
  355. package/dist/components/Accordion/useAccordionDevWarning.d.ts.map +1 -0
  356. package/dist/components/Alert/Alert.d.ts +2 -11
  357. package/dist/components/Alert/Alert.d.ts.map +1 -1
  358. package/dist/components/Alert/Alert.recipe.d.ts +1 -1
  359. package/dist/components/Alert/Alert.types.d.ts +3 -0
  360. package/dist/components/Alert/Alert.types.d.ts.map +1 -0
  361. package/dist/components/Alert/index.cjs +14 -15
  362. package/dist/components/Alert/index.d.ts.map +1 -1
  363. package/dist/components/Alert/index.js +13 -14
  364. package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -1
  365. package/dist/components/AlertDialog/index.cjs +19 -18
  366. package/dist/components/AlertDialog/index.d.ts.map +1 -1
  367. package/dist/components/AlertDialog/index.js +17 -16
  368. package/dist/components/AlertDialog/useAlertDialog.d.ts.map +1 -1
  369. package/dist/components/AppShell/AppShell.d.ts.map +1 -1
  370. package/dist/components/AppShell/index.cjs +23 -23
  371. package/dist/components/AppShell/index.d.ts.map +1 -1
  372. package/dist/components/AppShell/index.js +20 -20
  373. package/dist/components/AspectRatio/index.cjs +3 -3
  374. package/dist/components/AspectRatio/index.d.ts +1 -1
  375. package/dist/components/AspectRatio/index.d.ts.map +1 -1
  376. package/dist/components/AspectRatio/index.js +2 -2
  377. package/dist/components/AutocompleteInput/AutocompleteInput.d.ts +4 -2
  378. package/dist/components/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
  379. package/dist/components/AutocompleteInput/AutocompleteInput.recipe.d.ts +1 -1
  380. package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts +1 -1
  381. package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts.map +1 -1
  382. package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts +3 -1
  383. package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts.map +1 -1
  384. package/dist/components/AutocompleteInput/index.cjs +23 -25
  385. package/dist/components/AutocompleteInput/index.d.ts +1 -1
  386. package/dist/components/AutocompleteInput/index.d.ts.map +1 -1
  387. package/dist/components/AutocompleteInput/index.js +18 -20
  388. package/dist/components/AutocompleteInput/types.d.ts +3 -3
  389. package/dist/components/AutocompleteInput/types.d.ts.map +1 -1
  390. package/dist/components/Avatar/Avatar.recipe.d.ts +1 -1
  391. package/dist/components/Avatar/index.cjs +7 -8
  392. package/dist/components/Avatar/index.d.ts.map +1 -1
  393. package/dist/components/Avatar/index.js +4 -5
  394. package/dist/components/AvatarGroup/AvatarGroup.d.ts.map +1 -1
  395. package/dist/components/AvatarGroup/AvatarGroupContext.d.ts.map +1 -1
  396. package/dist/components/AvatarGroup/index.cjs +7 -8
  397. package/dist/components/AvatarGroup/index.d.ts +1 -1
  398. package/dist/components/AvatarGroup/index.d.ts.map +1 -1
  399. package/dist/components/AvatarGroup/index.js +5 -6
  400. package/dist/components/Badge/Badge.d.ts.map +1 -1
  401. package/dist/components/Badge/index.cjs +4 -4
  402. package/dist/components/Badge/index.d.ts +1 -1
  403. package/dist/components/Badge/index.d.ts.map +1 -1
  404. package/dist/components/Badge/index.js +3 -3
  405. package/dist/components/Blockquote/Blockquote.recipe.d.ts +1 -1
  406. package/dist/components/Blockquote/index.cjs +4 -5
  407. package/dist/components/Blockquote/index.d.ts +1 -1
  408. package/dist/components/Blockquote/index.d.ts.map +1 -1
  409. package/dist/components/Blockquote/index.js +3 -4
  410. package/dist/components/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
  411. package/dist/components/Breadcrumbs/BreadcrumbItem.recipe.d.ts +1 -1
  412. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  413. package/dist/components/Breadcrumbs/Breadcrumbs.recipe.d.ts +1 -1
  414. package/dist/components/Breadcrumbs/index.cjs +11 -12
  415. package/dist/components/Breadcrumbs/index.d.ts +2 -2
  416. package/dist/components/Breadcrumbs/index.d.ts.map +1 -1
  417. package/dist/components/Breadcrumbs/index.js +8 -9
  418. package/dist/components/Button/Button.d.ts +2 -4
  419. package/dist/components/Button/Button.d.ts.map +1 -1
  420. package/dist/components/Button/Button.recipe.d.ts +1 -1
  421. package/dist/components/Button/Button.types.d.ts +3 -0
  422. package/dist/components/Button/Button.types.d.ts.map +1 -0
  423. package/dist/components/Button/index.cjs +13 -14
  424. package/dist/components/Button/index.d.ts +1 -1
  425. package/dist/components/Button/index.d.ts.map +1 -1
  426. package/dist/components/Button/index.js +12 -13
  427. package/dist/components/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  428. package/dist/components/ButtonGroup/ButtonGroupContext.d.ts.map +1 -1
  429. package/dist/components/ButtonGroup/index.cjs +4 -4
  430. package/dist/components/ButtonGroup/index.d.ts +1 -1
  431. package/dist/components/ButtonGroup/index.d.ts.map +1 -1
  432. package/dist/components/ButtonGroup/index.js +3 -3
  433. package/dist/components/Calendar/Calendar.d.ts +16 -3
  434. package/dist/components/Calendar/Calendar.d.ts.map +1 -1
  435. package/dist/components/Calendar/Calendar.recipe.d.ts +1 -1
  436. package/dist/components/Calendar/index.cjs +15 -16
  437. package/dist/components/Calendar/index.d.ts.map +1 -1
  438. package/dist/components/Calendar/index.js +14 -15
  439. package/dist/components/Card/Card.d.ts.map +1 -1
  440. package/dist/components/Card/index.cjs +3 -3
  441. package/dist/components/Card/index.d.ts +1 -1
  442. package/dist/components/Card/index.d.ts.map +1 -1
  443. package/dist/components/Card/index.js +2 -2
  444. package/dist/components/Center/Center.d.ts.map +1 -1
  445. package/dist/components/Center/index.cjs +3 -3
  446. package/dist/components/Center/index.d.ts +1 -1
  447. package/dist/components/Center/index.d.ts.map +1 -1
  448. package/dist/components/Center/index.js +2 -2
  449. package/dist/components/CheckboxInput/CheckboxInput.d.ts.map +1 -1
  450. package/dist/components/CheckboxInput/CheckboxInput.recipe.d.ts +1 -1
  451. package/dist/components/CheckboxInput/index.cjs +14 -15
  452. package/dist/components/CheckboxInput/index.d.ts.map +1 -1
  453. package/dist/components/CheckboxInput/index.js +13 -14
  454. package/dist/components/CodeBlock/CodeBlock.d.ts.map +1 -1
  455. package/dist/components/CodeBlock/CodeBlock.recipe.d.ts +1 -1
  456. package/dist/components/CodeBlock/index.cjs +16 -17
  457. package/dist/components/CodeBlock/index.d.ts.map +1 -1
  458. package/dist/components/CodeBlock/index.js +15 -16
  459. package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -1
  460. package/dist/components/ContextMenu/index.cjs +19 -21
  461. package/dist/components/ContextMenu/index.d.ts.map +1 -1
  462. package/dist/components/ContextMenu/index.js +17 -19
  463. package/dist/components/DateInput/DateInput.d.ts +7 -5
  464. package/dist/components/DateInput/DateInput.d.ts.map +1 -1
  465. package/dist/components/DateInput/index.cjs +21 -22
  466. package/dist/components/DateInput/index.d.ts +1 -1
  467. package/dist/components/DateInput/index.d.ts.map +1 -1
  468. package/dist/components/DateInput/index.js +20 -21
  469. package/dist/components/DateRangeInput/DateRangeInput.d.ts +5 -5
  470. package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  471. package/dist/components/DateRangeInput/index.cjs +21 -22
  472. package/dist/components/DateRangeInput/index.d.ts.map +1 -1
  473. package/dist/components/DateRangeInput/index.js +20 -21
  474. package/dist/components/DateTimeInput/DateTimeInput.d.ts +4 -4
  475. package/dist/components/DateTimeInput/DateTimeInput.d.ts.map +1 -1
  476. package/dist/components/DateTimeInput/index.cjs +23 -24
  477. package/dist/components/DateTimeInput/index.d.ts.map +1 -1
  478. package/dist/components/DateTimeInput/index.js +22 -23
  479. package/dist/components/Dialog/Dialog.d.ts +2 -4
  480. package/dist/components/Dialog/Dialog.d.ts.map +1 -1
  481. package/dist/components/Dialog/index.cjs +7 -6
  482. package/dist/components/Dialog/index.d.ts +1 -1
  483. package/dist/components/Dialog/index.d.ts.map +1 -1
  484. package/dist/components/Dialog/index.js +5 -4
  485. package/dist/components/Dialog/useDialog.d.ts.map +1 -1
  486. package/dist/components/Divider/Divider.recipe.d.ts +1 -1
  487. package/dist/components/Divider/index.cjs +4 -5
  488. package/dist/components/Divider/index.d.ts.map +1 -1
  489. package/dist/components/Divider/index.js +3 -4
  490. package/dist/components/Drawer/Drawer.d.ts +10 -2
  491. package/dist/components/Drawer/Drawer.d.ts.map +1 -1
  492. package/dist/components/Drawer/Drawer.recipe.d.ts +63 -0
  493. package/dist/components/Drawer/Drawer.recipe.d.ts.map +1 -0
  494. package/dist/components/Drawer/index.cjs +8 -4
  495. package/dist/components/Drawer/index.d.ts +2 -2
  496. package/dist/components/Drawer/index.d.ts.map +1 -1
  497. package/dist/components/Drawer/index.js +6 -2
  498. package/dist/components/Drawer/useDrawer.d.ts.map +1 -1
  499. package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  500. package/dist/components/DropdownMenu/DropdownMenuContext.d.ts.map +1 -1
  501. package/dist/components/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
  502. package/dist/components/DropdownMenu/DropdownMenuItem.recipe.d.ts +36 -0
  503. package/dist/components/DropdownMenu/DropdownMenuItem.recipe.d.ts.map +1 -0
  504. package/dist/components/DropdownMenu/index.cjs +20 -22
  505. package/dist/components/DropdownMenu/index.d.ts +1 -1
  506. package/dist/components/DropdownMenu/index.d.ts.map +1 -1
  507. package/dist/components/DropdownMenu/index.js +16 -18
  508. package/dist/components/DropdownMenu/menuUtils.d.ts.map +1 -1
  509. package/dist/components/DropdownMenu/types.d.ts.map +1 -1
  510. package/dist/components/EmptyState/EmptyState.d.ts.map +1 -1
  511. package/dist/components/EmptyState/EmptyState.recipe.d.ts +1 -1
  512. package/dist/components/EmptyState/index.cjs +7 -8
  513. package/dist/components/EmptyState/index.d.ts +1 -1
  514. package/dist/components/EmptyState/index.d.ts.map +1 -1
  515. package/dist/components/EmptyState/index.js +6 -7
  516. package/dist/components/Field/Field.d.ts +1 -1
  517. package/dist/components/Field/Field.d.ts.map +1 -1
  518. package/dist/components/Field/Field.recipe.d.ts +1 -1
  519. package/dist/components/Field/index.cjs +11 -12
  520. package/dist/components/Field/index.d.ts +1 -1
  521. package/dist/components/Field/index.d.ts.map +1 -1
  522. package/dist/components/Field/index.js +9 -10
  523. package/dist/components/Field/inputUtils.d.ts.map +1 -1
  524. package/dist/components/FileInput/FileInput.d.ts.map +1 -1
  525. package/dist/components/FileInput/FileInput.recipe.d.ts +66 -0
  526. package/dist/components/FileInput/FileInput.recipe.d.ts.map +1 -0
  527. package/dist/components/FileInput/index.cjs +17 -19
  528. package/dist/components/FileInput/index.d.ts +1 -1
  529. package/dist/components/FileInput/index.d.ts.map +1 -1
  530. package/dist/components/FileInput/index.js +16 -18
  531. package/dist/components/HoverCard/HoverCard.d.ts +1 -1
  532. package/dist/components/HoverCard/HoverCard.d.ts.map +1 -1
  533. package/dist/components/HoverCard/index.cjs +5 -5
  534. package/dist/components/HoverCard/index.d.ts.map +1 -1
  535. package/dist/components/HoverCard/index.js +3 -3
  536. package/dist/components/HoverCard/useHoverCard.d.ts.map +1 -1
  537. package/dist/components/Icon/index.cjs +3 -3
  538. package/dist/components/Icon/index.d.ts.map +1 -1
  539. package/dist/components/Icon/index.js +2 -2
  540. package/dist/components/InputGroup/InputGroup.d.ts.map +1 -1
  541. package/dist/components/InputGroup/InputGroup.recipe.d.ts +1 -1
  542. package/dist/components/InputGroup/InputGroup.recipe.d.ts.map +1 -1
  543. package/dist/components/InputGroup/InputGroupContext.d.ts.map +1 -1
  544. package/dist/components/InputGroup/InputGroupText.d.ts.map +1 -1
  545. package/dist/components/InputGroup/index.cjs +14 -15
  546. package/dist/components/InputGroup/index.d.ts +2 -2
  547. package/dist/components/InputGroup/index.d.ts.map +1 -1
  548. package/dist/components/InputGroup/index.js +10 -11
  549. package/dist/components/Item/Item.d.ts +1 -1
  550. package/dist/components/Item/Item.d.ts.map +1 -1
  551. package/dist/components/Item/Item.recipe.d.ts +75 -0
  552. package/dist/components/Item/Item.recipe.d.ts.map +1 -0
  553. package/dist/components/Item/index.cjs +10 -10
  554. package/dist/components/Item/index.d.ts +1 -1
  555. package/dist/components/Item/index.d.ts.map +1 -1
  556. package/dist/components/Item/index.js +9 -9
  557. package/dist/components/Kbd/Kbd.recipe.d.ts +1 -1
  558. package/dist/components/Kbd/index.cjs +4 -5
  559. package/dist/components/Kbd/index.d.ts.map +1 -1
  560. package/dist/components/Kbd/index.js +3 -4
  561. package/dist/components/Layout/Layout.d.ts +1 -1
  562. package/dist/components/Layout/Layout.d.ts.map +1 -1
  563. package/dist/components/Layout/Layout.recipe.d.ts +101 -16
  564. package/dist/components/Layout/Layout.recipe.d.ts.map +1 -1
  565. package/dist/components/Layout/LayoutContent.d.ts.map +1 -1
  566. package/dist/components/Layout/LayoutContext.d.ts +0 -7
  567. package/dist/components/Layout/LayoutContext.d.ts.map +1 -1
  568. package/dist/components/Layout/LayoutFooter.d.ts +1 -1
  569. package/dist/components/Layout/LayoutFooter.d.ts.map +1 -1
  570. package/dist/components/Layout/LayoutHeader.d.ts.map +1 -1
  571. package/dist/components/Layout/LayoutPanel.d.ts.map +1 -1
  572. package/dist/components/Layout/index.cjs +18 -19
  573. package/dist/components/Layout/index.d.ts +4 -4
  574. package/dist/components/Layout/index.d.ts.map +1 -1
  575. package/dist/components/Layout/index.js +13 -14
  576. package/dist/components/Layout/types.d.ts +4 -2
  577. package/dist/components/Layout/types.d.ts.map +1 -1
  578. package/dist/components/Lightbox/Lightbox.d.ts.map +1 -1
  579. package/dist/components/Lightbox/Lightbox.recipe.d.ts +43 -0
  580. package/dist/components/Lightbox/Lightbox.recipe.d.ts.map +1 -0
  581. package/dist/components/Lightbox/index.cjs +16 -16
  582. package/dist/components/Lightbox/index.d.ts.map +1 -1
  583. package/dist/components/Lightbox/index.js +14 -14
  584. package/dist/components/Lightbox/useLightbox.d.ts.map +1 -1
  585. package/dist/components/Link/Link.d.ts +1 -1
  586. package/dist/components/Link/Link.d.ts.map +1 -1
  587. package/dist/components/Link/LinkContext.d.ts.map +1 -1
  588. package/dist/components/Link/LinkProvider.d.ts.map +1 -1
  589. package/dist/components/Link/index.cjs +9 -10
  590. package/dist/components/Link/index.d.ts +1 -1
  591. package/dist/components/Link/index.d.ts.map +1 -1
  592. package/dist/components/Link/index.js +6 -7
  593. package/dist/components/Link/useLinkComponent.d.ts.map +1 -1
  594. package/dist/components/List/List.d.ts.map +1 -1
  595. package/dist/components/List/List.recipe.d.ts +1 -1
  596. package/dist/components/List/index.cjs +12 -13
  597. package/dist/components/List/index.d.ts.map +1 -1
  598. package/dist/components/List/index.js +10 -11
  599. package/dist/components/MetadataList/MetadataList.d.ts.map +1 -1
  600. package/dist/components/MetadataList/MetadataList.recipe.d.ts +29 -0
  601. package/dist/components/MetadataList/MetadataList.recipe.d.ts.map +1 -0
  602. package/dist/components/MetadataList/MetadataListItem.d.ts.map +1 -1
  603. package/dist/components/MetadataList/index.cjs +9 -9
  604. package/dist/components/MetadataList/index.d.ts +1 -1
  605. package/dist/components/MetadataList/index.d.ts.map +1 -1
  606. package/dist/components/MetadataList/index.js +7 -7
  607. package/dist/components/MultiSelect/MultiSelect.d.ts +1 -1
  608. package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
  609. package/dist/components/MultiSelect/MultiSelect.recipe.d.ts +41 -0
  610. package/dist/components/MultiSelect/MultiSelect.recipe.d.ts.map +1 -0
  611. package/dist/components/MultiSelect/index.cjs +20 -22
  612. package/dist/components/MultiSelect/index.d.ts.map +1 -1
  613. package/dist/components/MultiSelect/index.js +19 -21
  614. package/dist/components/NavIcon/index.cjs +3 -3
  615. package/dist/components/NavIcon/index.d.ts.map +1 -1
  616. package/dist/components/NavIcon/index.js +2 -2
  617. package/dist/components/NumberInput/NumberInput.d.ts.map +1 -1
  618. package/dist/components/NumberInput/index.cjs +18 -19
  619. package/dist/components/NumberInput/index.d.ts +1 -1
  620. package/dist/components/NumberInput/index.d.ts.map +1 -1
  621. package/dist/components/NumberInput/index.js +17 -18
  622. package/dist/components/Pagination/Pagination.d.ts.map +1 -1
  623. package/dist/components/Pagination/index.cjs +14 -15
  624. package/dist/components/Pagination/index.d.ts.map +1 -1
  625. package/dist/components/Pagination/index.js +13 -14
  626. package/dist/components/PasswordInput/PasswordInput.d.ts.map +1 -1
  627. package/dist/components/PasswordInput/index.cjs +19 -20
  628. package/dist/components/PasswordInput/index.d.ts +1 -1
  629. package/dist/components/PasswordInput/index.d.ts.map +1 -1
  630. package/dist/components/PasswordInput/index.js +18 -19
  631. package/dist/components/Popover/Popover.d.ts +9 -3
  632. package/dist/components/Popover/Popover.d.ts.map +1 -1
  633. package/dist/components/Popover/index.cjs +15 -17
  634. package/dist/components/Popover/index.d.ts.map +1 -1
  635. package/dist/components/Popover/index.js +13 -15
  636. package/dist/components/Popover/usePopover.d.ts +72 -2
  637. package/dist/components/Popover/usePopover.d.ts.map +1 -1
  638. package/dist/components/Progress/Progress.recipe.d.ts +1 -1
  639. package/dist/components/Progress/index.cjs +5 -6
  640. package/dist/components/Progress/index.d.ts +1 -1
  641. package/dist/components/Progress/index.d.ts.map +1 -1
  642. package/dist/components/Progress/index.js +4 -5
  643. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
  644. package/dist/components/RadioGroup/RadioGroup.recipe.d.ts +1 -1
  645. package/dist/components/RadioGroup/index.cjs +15 -16
  646. package/dist/components/RadioGroup/index.d.ts +1 -1
  647. package/dist/components/RadioGroup/index.d.ts.map +1 -1
  648. package/dist/components/RadioGroup/index.js +13 -14
  649. package/dist/components/Rating/Rating.d.ts.map +1 -1
  650. package/dist/components/Rating/Rating.recipe.d.ts +1 -1
  651. package/dist/components/Rating/index.cjs +6 -7
  652. package/dist/components/Rating/index.d.ts.map +1 -1
  653. package/dist/components/Rating/index.js +5 -6
  654. package/dist/components/Schedule/CalendarEvent.d.ts +2 -2
  655. package/dist/components/Schedule/CalendarEvent.d.ts.map +1 -1
  656. package/dist/components/Schedule/DayView.d.ts.map +1 -1
  657. package/dist/components/Schedule/ListView.d.ts.map +1 -1
  658. package/dist/components/Schedule/MonthlyView.d.ts +12 -1
  659. package/dist/components/Schedule/MonthlyView.d.ts.map +1 -1
  660. package/dist/components/Schedule/Schedule.d.ts +2 -6
  661. package/dist/components/Schedule/Schedule.d.ts.map +1 -1
  662. package/dist/components/Schedule/Schedule.recipe.d.ts +8 -0
  663. package/dist/components/Schedule/Schedule.recipe.d.ts.map +1 -0
  664. package/dist/components/Schedule/ScheduleEvent.recipe.d.ts +191 -0
  665. package/dist/components/Schedule/ScheduleEvent.recipe.d.ts.map +1 -0
  666. package/dist/components/Schedule/TimeGridView.d.ts.map +1 -1
  667. package/dist/components/Schedule/WeeklyView.d.ts.map +1 -1
  668. package/dist/components/Schedule/context.d.ts +4 -8
  669. package/dist/components/Schedule/context.d.ts.map +1 -1
  670. package/dist/components/Schedule/dateMath.d.ts +1 -1
  671. package/dist/components/Schedule/dateMath.d.ts.map +1 -1
  672. package/dist/components/Schedule/index.cjs +30 -31
  673. package/dist/components/Schedule/index.d.ts +3 -3
  674. package/dist/components/Schedule/index.d.ts.map +1 -1
  675. package/dist/components/Schedule/index.js +19 -20
  676. package/dist/components/Schedule/plugins/PaginationPlugin.d.ts +3 -3
  677. package/dist/components/Schedule/plugins/PaginationPlugin.d.ts.map +1 -1
  678. package/dist/components/Schedule/plugins/ViewSelectorPlugin.d.ts.map +1 -1
  679. package/dist/components/Schedule/plugins/index.d.ts.map +1 -1
  680. package/dist/components/Schedule/scheduleZonedInstant.d.ts +17 -0
  681. package/dist/components/Schedule/scheduleZonedInstant.d.ts.map +1 -0
  682. package/dist/components/Schedule/shared.d.ts +11 -20
  683. package/dist/components/Schedule/shared.d.ts.map +1 -1
  684. package/dist/components/Schedule/types.d.ts +8 -7
  685. package/dist/components/Schedule/types.d.ts.map +1 -1
  686. package/dist/components/Schedule/useCurrentTime.d.ts.map +1 -1
  687. package/dist/components/SearchFilterInput/SearchFilterInput.d.ts +1 -1
  688. package/dist/components/SearchFilterInput/SearchFilterInput.d.ts.map +1 -1
  689. package/dist/components/SearchFilterInput/SearchFilterInputEditPopover.d.ts.map +1 -1
  690. package/dist/components/SearchFilterInput/SearchFilterInputFilterEditor.d.ts.map +1 -1
  691. package/dist/components/SearchFilterInput/SearchFilterInputTag.d.ts +1 -1
  692. package/dist/components/SearchFilterInput/SearchFilterInputTag.d.ts.map +1 -1
  693. package/dist/components/SearchFilterInput/SearchFilterInputValueEditor.d.ts +1 -2
  694. package/dist/components/SearchFilterInput/SearchFilterInputValueEditor.d.ts.map +1 -1
  695. package/dist/components/SearchFilterInput/formatFilterValue.d.ts +1 -2
  696. package/dist/components/SearchFilterInput/formatFilterValue.d.ts.map +1 -1
  697. package/dist/components/SearchFilterInput/index.cjs +40 -41
  698. package/dist/components/SearchFilterInput/index.d.ts.map +1 -1
  699. package/dist/components/SearchFilterInput/index.js +32 -33
  700. package/dist/components/SearchFilterInput/internalConfig.d.ts.map +1 -1
  701. package/dist/components/SearchFilterInput/types.d.ts.map +1 -1
  702. package/dist/components/SearchFilterInput/useSearchFilterInputConfig.d.ts.map +1 -1
  703. package/dist/components/SearchFilterInput/useSearchFilterInputSource.d.ts.map +1 -1
  704. package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
  705. package/dist/components/SegmentedControl/SegmentedControl.recipe.d.ts +73 -0
  706. package/dist/components/SegmentedControl/SegmentedControl.recipe.d.ts.map +1 -0
  707. package/dist/components/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
  708. package/dist/components/SegmentedControl/index.cjs +7 -6
  709. package/dist/components/SegmentedControl/index.d.ts +1 -1
  710. package/dist/components/SegmentedControl/index.d.ts.map +1 -1
  711. package/dist/components/SegmentedControl/index.js +5 -4
  712. package/dist/components/Select/Select.d.ts +1 -1
  713. package/dist/components/Select/Select.d.ts.map +1 -1
  714. package/dist/components/Select/Select.recipe.d.ts +1 -1
  715. package/dist/components/Select/SelectOption.d.ts.map +1 -1
  716. package/dist/components/Select/index.cjs +21 -23
  717. package/dist/components/Select/index.d.ts +1 -1
  718. package/dist/components/Select/index.d.ts.map +1 -1
  719. package/dist/components/Select/index.js +19 -21
  720. package/dist/components/SideNav/SideNav.d.ts.map +1 -1
  721. package/dist/components/SideNav/SideNavHeading.d.ts.map +1 -1
  722. package/dist/components/SideNav/SideNavItem.d.ts.map +1 -1
  723. package/dist/components/SideNav/SideNavItem.recipe.d.ts +51 -0
  724. package/dist/components/SideNav/SideNavItem.recipe.d.ts.map +1 -0
  725. package/dist/components/SideNav/SideNavSection.d.ts.map +1 -1
  726. package/dist/components/SideNav/index.cjs +22 -22
  727. package/dist/components/SideNav/index.d.ts +3 -3
  728. package/dist/components/SideNav/index.d.ts.map +1 -1
  729. package/dist/components/SideNav/index.js +16 -16
  730. package/dist/components/Skeleton/index.cjs +3 -3
  731. package/dist/components/Skeleton/index.d.ts +1 -1
  732. package/dist/components/Skeleton/index.d.ts.map +1 -1
  733. package/dist/components/Skeleton/index.js +2 -2
  734. package/dist/components/Slider/Slider.d.ts.map +1 -1
  735. package/dist/components/Slider/Slider.recipe.d.ts +1 -1
  736. package/dist/components/Slider/index.cjs +11 -12
  737. package/dist/components/Slider/index.d.ts.map +1 -1
  738. package/dist/components/Slider/index.js +10 -11
  739. package/dist/components/Spinner/Spinner.d.ts +1 -4
  740. package/dist/components/Spinner/Spinner.d.ts.map +1 -1
  741. package/dist/components/Spinner/Spinner.types.d.ts +3 -0
  742. package/dist/components/Spinner/Spinner.types.d.ts.map +1 -0
  743. package/dist/components/Spinner/index.cjs +7 -8
  744. package/dist/components/Spinner/index.d.ts.map +1 -1
  745. package/dist/components/Spinner/index.js +6 -7
  746. package/dist/components/SplitButton/SplitButton.d.ts.map +1 -1
  747. package/dist/components/SplitButton/index.cjs +19 -21
  748. package/dist/components/SplitButton/index.d.ts +1 -1
  749. package/dist/components/SplitButton/index.d.ts.map +1 -1
  750. package/dist/components/SplitButton/index.js +18 -20
  751. package/dist/components/Stack/HStack.d.ts.map +1 -1
  752. package/dist/components/Stack/VStack.d.ts.map +1 -1
  753. package/dist/components/Stack/index.cjs +4 -4
  754. package/dist/components/Stack/index.d.ts.map +1 -1
  755. package/dist/components/Stack/index.js +2 -2
  756. package/dist/components/Stack/internal/Stack.d.ts.map +1 -1
  757. package/dist/components/Stepper/Stepper.d.ts +55 -11
  758. package/dist/components/Stepper/Stepper.d.ts.map +1 -1
  759. package/dist/components/Stepper/index.cjs +8 -16
  760. package/dist/components/Stepper/index.d.ts +2 -3
  761. package/dist/components/Stepper/index.d.ts.map +1 -1
  762. package/dist/components/Stepper/index.js +7 -7
  763. package/dist/components/Stepper/internal/Step.d.ts +36 -0
  764. package/dist/components/Stepper/internal/Step.d.ts.map +1 -0
  765. package/dist/components/Stepper/internal/Step.recipe.d.ts +164 -0
  766. package/dist/components/Stepper/internal/Step.recipe.d.ts.map +1 -0
  767. package/dist/components/Switch/Switch.d.ts.map +1 -1
  768. package/dist/components/Switch/Switch.recipe.d.ts +1 -1
  769. package/dist/components/Switch/index.cjs +11 -12
  770. package/dist/components/Switch/index.d.ts.map +1 -1
  771. package/dist/components/Switch/index.js +10 -11
  772. package/dist/components/Table/Table.d.ts +45 -3
  773. package/dist/components/Table/Table.d.ts.map +1 -1
  774. package/dist/components/Table/Table.recipe.d.ts +156 -0
  775. package/dist/components/Table/Table.recipe.d.ts.map +1 -0
  776. package/dist/components/Table/TableCell.d.ts.map +1 -1
  777. package/dist/components/Table/TableContext.d.ts.map +1 -1
  778. package/dist/components/Table/TableHeaderCell.d.ts.map +1 -1
  779. package/dist/components/Table/TableRow.d.ts.map +1 -1
  780. package/dist/components/Table/columnUtils.d.ts.map +1 -1
  781. package/dist/components/Table/index.cjs +62 -71
  782. package/dist/components/Table/index.d.ts +2 -4
  783. package/dist/components/Table/index.d.ts.map +1 -1
  784. package/dist/components/Table/index.js +36 -37
  785. package/dist/components/Table/plugins/columnResize/index.d.ts.map +1 -1
  786. package/dist/components/Table/plugins/columnResize/useTableColumnResize.d.ts.map +1 -1
  787. package/dist/components/Table/plugins/columnSettings/index.d.ts.map +1 -1
  788. package/dist/components/Table/plugins/columnSettings/useTableColumnSettings.d.ts +1 -1
  789. package/dist/components/Table/plugins/columnSettings/useTableColumnSettings.d.ts.map +1 -1
  790. package/dist/components/Table/plugins/columnSettings/useTableColumnSettingsState.d.ts.map +1 -1
  791. package/dist/components/Table/plugins/filtering/index.d.ts.map +1 -1
  792. package/dist/components/Table/plugins/filtering/useTableFilterState.d.ts.map +1 -1
  793. package/dist/components/Table/plugins/filtering/useTableFiltering.d.ts +1 -1
  794. package/dist/components/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
  795. package/dist/components/Table/plugins/pagination/index.d.ts +1 -1
  796. package/dist/components/Table/plugins/pagination/index.d.ts.map +1 -1
  797. package/dist/components/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
  798. package/dist/components/Table/plugins/selection/index.d.ts.map +1 -1
  799. package/dist/components/Table/plugins/selection/useTableSelection.d.ts.map +1 -1
  800. package/dist/components/Table/plugins/selection/useTableSelectionState.d.ts.map +1 -1
  801. package/dist/components/Table/plugins/sortable/index.d.ts.map +1 -1
  802. package/dist/components/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
  803. package/dist/components/Table/plugins/sortable/useTableSortableState.d.ts.map +1 -1
  804. package/dist/components/Table/types.d.ts +1 -18
  805. package/dist/components/Table/types.d.ts.map +1 -1
  806. package/dist/components/Table/useBaseTablePlugins.d.ts +1 -1
  807. package/dist/components/Table/useBaseTablePlugins.d.ts.map +1 -1
  808. package/dist/components/Tabs/Tab.d.ts.map +1 -1
  809. package/dist/components/Tabs/TabMenu.d.ts.map +1 -1
  810. package/dist/components/Tabs/TabMenu.recipe.d.ts +21 -0
  811. package/dist/components/Tabs/TabMenu.recipe.d.ts.map +1 -0
  812. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  813. package/dist/components/Tabs/Tabs.recipe.d.ts +65 -0
  814. package/dist/components/Tabs/Tabs.recipe.d.ts.map +1 -0
  815. package/dist/components/Tabs/index.cjs +19 -21
  816. package/dist/components/Tabs/index.d.ts +1 -1
  817. package/dist/components/Tabs/index.d.ts.map +1 -1
  818. package/dist/components/Tabs/index.js +14 -16
  819. package/dist/components/Tag/Tag.d.ts.map +1 -1
  820. package/dist/components/Tag/Tag.recipe.d.ts +1 -1
  821. package/dist/components/Tag/index.cjs +9 -10
  822. package/dist/components/Tag/index.d.ts +1 -1
  823. package/dist/components/Tag/index.d.ts.map +1 -1
  824. package/dist/components/Tag/index.js +8 -9
  825. package/dist/components/TagsInput/TagsInput.d.ts +52 -8
  826. package/dist/components/TagsInput/TagsInput.d.ts.map +1 -1
  827. package/dist/components/TagsInput/TagsInput.recipe.d.ts +45 -0
  828. package/dist/components/TagsInput/TagsInput.recipe.d.ts.map +1 -0
  829. package/dist/components/TagsInput/index.cjs +20 -22
  830. package/dist/components/TagsInput/index.d.ts.map +1 -1
  831. package/dist/components/TagsInput/index.js +19 -21
  832. package/dist/components/Text/Heading.d.ts +1 -1
  833. package/dist/components/Text/Heading.d.ts.map +1 -1
  834. package/dist/components/Text/Text.d.ts.map +1 -1
  835. package/dist/components/Text/index.cjs +6 -6
  836. package/dist/components/Text/index.d.ts.map +1 -1
  837. package/dist/components/Text/index.js +4 -4
  838. package/dist/components/TextArea/TextArea.d.ts.map +1 -1
  839. package/dist/components/TextArea/index.cjs +13 -14
  840. package/dist/components/TextArea/index.d.ts.map +1 -1
  841. package/dist/components/TextArea/index.js +12 -13
  842. package/dist/components/TextInput/TextInput.d.ts +5 -0
  843. package/dist/components/TextInput/TextInput.d.ts.map +1 -1
  844. package/dist/components/TextInput/index.cjs +18 -19
  845. package/dist/components/TextInput/index.d.ts +1 -1
  846. package/dist/components/TextInput/index.d.ts.map +1 -1
  847. package/dist/components/TextInput/index.js +17 -18
  848. package/dist/components/Theme/index.cjs +2 -2
  849. package/dist/components/Theme/index.d.ts.map +1 -1
  850. package/dist/components/Theme/index.js +1 -1
  851. package/dist/components/Thumbnail/Thumbnail.recipe.d.ts +1 -1
  852. package/dist/components/Thumbnail/index.cjs +15 -16
  853. package/dist/components/Thumbnail/index.d.ts.map +1 -1
  854. package/dist/components/Thumbnail/index.js +14 -15
  855. package/dist/components/TimeInput/TimeInput.d.ts +3 -3
  856. package/dist/components/TimeInput/TimeInput.d.ts.map +1 -1
  857. package/dist/components/TimeInput/index.cjs +17 -18
  858. package/dist/components/TimeInput/index.d.ts +1 -1
  859. package/dist/components/TimeInput/index.d.ts.map +1 -1
  860. package/dist/components/TimeInput/index.js +16 -17
  861. package/dist/components/Toast/Toast.d.ts +1 -1
  862. package/dist/components/Toast/Toast.d.ts.map +1 -1
  863. package/dist/components/Toast/Toast.recipe.d.ts +1 -1
  864. package/dist/components/Toast/ToastContext.d.ts.map +1 -1
  865. package/dist/components/Toast/ToastViewport.d.ts.map +1 -1
  866. package/dist/components/Toast/index.cjs +16 -17
  867. package/dist/components/Toast/index.d.ts.map +1 -1
  868. package/dist/components/Toast/index.js +13 -14
  869. package/dist/components/Toast/useToast.d.ts.map +1 -1
  870. package/dist/components/ToggleButton/ToggleButton.d.ts +2 -6
  871. package/dist/components/ToggleButton/ToggleButton.d.ts.map +1 -1
  872. package/dist/components/ToggleButton/ToggleButton.recipe.d.ts +20 -0
  873. package/dist/components/ToggleButton/ToggleButton.recipe.d.ts.map +1 -0
  874. package/dist/components/ToggleButton/ToggleButtonGroup.d.ts.map +1 -1
  875. package/dist/components/ToggleButton/index.cjs +11 -12
  876. package/dist/components/ToggleButton/index.d.ts +1 -1
  877. package/dist/components/ToggleButton/index.d.ts.map +1 -1
  878. package/dist/components/ToggleButton/index.js +9 -10
  879. package/dist/components/Tooltip/Tooltip.d.ts +1 -1
  880. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  881. package/dist/components/Tooltip/index.cjs +5 -5
  882. package/dist/components/Tooltip/index.d.ts +1 -1
  883. package/dist/components/Tooltip/index.d.ts.map +1 -1
  884. package/dist/components/Tooltip/index.js +3 -3
  885. package/dist/components/Tooltip/useTooltip.d.ts.map +1 -1
  886. package/dist/components/TopNav/TopNav.d.ts.map +1 -1
  887. package/dist/components/TopNav/TopNav.recipe.d.ts +11 -5
  888. package/dist/components/TopNav/TopNav.recipe.d.ts.map +1 -1
  889. package/dist/components/TopNav/TopNavContext.d.ts +0 -2
  890. package/dist/components/TopNav/TopNavContext.d.ts.map +1 -1
  891. package/dist/components/TopNav/TopNavHeading.d.ts.map +1 -1
  892. package/dist/components/TopNav/TopNavHeading.recipe.d.ts +4 -0
  893. package/dist/components/TopNav/TopNavHeading.recipe.d.ts.map +1 -0
  894. package/dist/components/TopNav/TopNavItem.d.ts +13 -8
  895. package/dist/components/TopNav/TopNavItem.d.ts.map +1 -1
  896. package/dist/components/TopNav/index.cjs +21 -25
  897. package/dist/components/TopNav/index.d.ts +2 -2
  898. package/dist/components/TopNav/index.d.ts.map +1 -1
  899. package/dist/components/TopNav/index.js +16 -16
  900. package/dist/components/TreeView/TreeView.d.ts.map +1 -1
  901. package/dist/components/TreeView/TreeView.recipe.d.ts +4 -0
  902. package/dist/components/TreeView/TreeView.recipe.d.ts.map +1 -0
  903. package/dist/components/TreeView/TreeViewBranches.d.ts.map +1 -1
  904. package/dist/components/TreeView/TreeViewBranches.recipe.d.ts +4 -0
  905. package/dist/components/TreeView/TreeViewBranches.recipe.d.ts.map +1 -0
  906. package/dist/components/TreeView/TreeViewItem.d.ts +1 -5
  907. package/dist/components/TreeView/TreeViewItem.d.ts.map +1 -1
  908. package/dist/components/TreeView/TreeViewItem.recipe.d.ts +84 -0
  909. package/dist/components/TreeView/TreeViewItem.recipe.d.ts.map +1 -0
  910. package/dist/components/TreeView/index.cjs +5 -4
  911. package/dist/components/TreeView/index.d.ts +1 -1
  912. package/dist/components/TreeView/index.d.ts.map +1 -1
  913. package/dist/components/TreeView/index.js +4 -3
  914. package/dist/index.cjs +262 -281
  915. package/dist/index.cjs.map +1 -1
  916. package/dist/index.d.ts +8 -8
  917. package/dist/index.d.ts.map +1 -1
  918. package/dist/index.js +89 -88
  919. package/dist/index.js.map +1 -1
  920. package/dist/internal/HoverLayerTrigger.d.ts.map +1 -1
  921. package/dist/internal/MobileNav/MobileNav.d.ts.map +1 -1
  922. package/dist/internal/MobileNav/index.d.ts +2 -2
  923. package/dist/internal/MobileNav/index.d.ts.map +1 -1
  924. package/dist/internal/dismissBehavior.d.ts +18 -0
  925. package/dist/internal/dismissBehavior.d.ts.map +1 -0
  926. package/dist/internal/index.d.ts +1 -1
  927. package/dist/internal/index.d.ts.map +1 -1
  928. package/dist/internal/parseDateInput.d.ts.map +1 -1
  929. package/dist/internal/plainDate.d.ts.map +1 -1
  930. package/dist/internal/shallowEqual.d.ts +7 -0
  931. package/dist/internal/shallowEqual.d.ts.map +1 -0
  932. package/dist/internal/useBackdropDismiss.d.ts +16 -0
  933. package/dist/internal/useBackdropDismiss.d.ts.map +1 -0
  934. package/dist/internal/useConstant.d.ts +8 -0
  935. package/dist/internal/useConstant.d.ts.map +1 -0
  936. package/dist/internal/useHoverLayer.d.ts.map +1 -1
  937. package/dist/internal/useLatest.d.ts +5 -0
  938. package/dist/internal/useLatest.d.ts.map +1 -0
  939. package/dist/internal/useLayer.d.ts +55 -2
  940. package/dist/internal/useLayer.d.ts.map +1 -1
  941. package/dist/internal/useScrollLock.d.ts +8 -0
  942. package/dist/internal/useScrollLock.d.ts.map +1 -0
  943. package/dist/internal/useSelectListbox.d.ts.map +1 -1
  944. package/dist/internal/useShallowEqualMemo.d.ts +13 -0
  945. package/dist/internal/useShallowEqualMemo.d.ts.map +1 -0
  946. package/dist/styles.css +1 -1
  947. package/dist/themes/presets.d.ts.map +1 -1
  948. package/package.json +3 -2
  949. package/dist/chunk-23NN5WRP.cjs +0 -454
  950. package/dist/chunk-23NN5WRP.cjs.map +0 -1
  951. package/dist/chunk-24J3BUKL.js.map +0 -1
  952. package/dist/chunk-2IKWX66Q.js.map +0 -1
  953. package/dist/chunk-2OXKEUKG.cjs.map +0 -1
  954. package/dist/chunk-2P6D43V2.cjs.map +0 -1
  955. package/dist/chunk-2VOB6LEI.js.map +0 -1
  956. package/dist/chunk-2XAA3CM5.js.map +0 -1
  957. package/dist/chunk-3DJ46WN4.js.map +0 -1
  958. package/dist/chunk-3IBY374V.cjs.map +0 -1
  959. package/dist/chunk-3L6KAW7G.js.map +0 -1
  960. package/dist/chunk-3XDUR3IG.cjs.map +0 -1
  961. package/dist/chunk-3ZFEBOXD.cjs.map +0 -1
  962. package/dist/chunk-4H35H54I.cjs.map +0 -1
  963. package/dist/chunk-54J6FRPG.js.map +0 -1
  964. package/dist/chunk-5BCLEOFF.cjs.map +0 -1
  965. package/dist/chunk-5D4LRSIV.js.map +0 -1
  966. package/dist/chunk-5GNYP3PH.cjs.map +0 -1
  967. package/dist/chunk-5QPM5LUS.cjs.map +0 -1
  968. package/dist/chunk-66LRFIYK.cjs.map +0 -1
  969. package/dist/chunk-6BK4LUK4.cjs +0 -17
  970. package/dist/chunk-6BK4LUK4.cjs.map +0 -1
  971. package/dist/chunk-6MOJEGDU.cjs.map +0 -1
  972. package/dist/chunk-6NTDPZWP.js.map +0 -1
  973. package/dist/chunk-6USJ4LJJ.js.map +0 -1
  974. package/dist/chunk-6W3L6IJB.cjs.map +0 -1
  975. package/dist/chunk-75CPTIET.js.map +0 -1
  976. package/dist/chunk-7GN6YTSS.cjs.map +0 -1
  977. package/dist/chunk-7MN4JDP7.js.map +0 -1
  978. package/dist/chunk-7PNLMDAR.cjs.map +0 -1
  979. package/dist/chunk-A66NIFJE.cjs.map +0 -1
  980. package/dist/chunk-ASJ5CBCR.js.map +0 -1
  981. package/dist/chunk-BA4A7C7U.js.map +0 -1
  982. package/dist/chunk-BAPCHFNX.cjs.map +0 -1
  983. package/dist/chunk-BRB52QFV.cjs.map +0 -1
  984. package/dist/chunk-CEU7BIL6.cjs.map +0 -1
  985. package/dist/chunk-CK3UJQRI.cjs.map +0 -1
  986. package/dist/chunk-D2DOHX4W.js.map +0 -1
  987. package/dist/chunk-D3SSMY73.cjs.map +0 -1
  988. package/dist/chunk-DIIE44GO.js.map +0 -1
  989. package/dist/chunk-EBQ3A4XO.js +0 -285
  990. package/dist/chunk-EBQ3A4XO.js.map +0 -1
  991. package/dist/chunk-EC2ALHNJ.js.map +0 -1
  992. package/dist/chunk-EHCAF6D3.js.map +0 -1
  993. package/dist/chunk-EMHLPPQZ.js.map +0 -1
  994. package/dist/chunk-EVKFA5FA.cjs.map +0 -1
  995. package/dist/chunk-EXYBQVZT.js.map +0 -1
  996. package/dist/chunk-F3NATTQG.cjs.map +0 -1
  997. package/dist/chunk-FZCBTFHY.js.map +0 -1
  998. package/dist/chunk-GLJWAY4A.cjs.map +0 -1
  999. package/dist/chunk-GUKZNXTB.js +0 -15
  1000. package/dist/chunk-GUKZNXTB.js.map +0 -1
  1001. package/dist/chunk-GXRH5XQY.js.map +0 -1
  1002. package/dist/chunk-HM7IEGQ2.cjs.map +0 -1
  1003. package/dist/chunk-HNROO7CR.js.map +0 -1
  1004. package/dist/chunk-I7KILUVL.cjs.map +0 -1
  1005. package/dist/chunk-IKF6VHA4.cjs.map +0 -1
  1006. package/dist/chunk-IRSJHEYI.js.map +0 -1
  1007. package/dist/chunk-JEIQ5GDK.cjs +0 -374
  1008. package/dist/chunk-JEIQ5GDK.cjs.map +0 -1
  1009. package/dist/chunk-L5YTMHDI.cjs.map +0 -1
  1010. package/dist/chunk-L7BOLGF2.cjs.map +0 -1
  1011. package/dist/chunk-LFRTNC7M.cjs.map +0 -1
  1012. package/dist/chunk-LUBVZVY3.js.map +0 -1
  1013. package/dist/chunk-LX64ENLC.cjs.map +0 -1
  1014. package/dist/chunk-M3RNFDA2.cjs.map +0 -1
  1015. package/dist/chunk-MGVEX3RS.js.map +0 -1
  1016. package/dist/chunk-MUUPZEZ5.cjs.map +0 -1
  1017. package/dist/chunk-NHXJVSZZ.cjs.map +0 -1
  1018. package/dist/chunk-NYQPIBOD.cjs +0 -287
  1019. package/dist/chunk-NYQPIBOD.cjs.map +0 -1
  1020. package/dist/chunk-O32BKXTR.cjs.map +0 -1
  1021. package/dist/chunk-O4RTJESR.js.map +0 -1
  1022. package/dist/chunk-O5A47TA2.js.map +0 -1
  1023. package/dist/chunk-OSBVDRVD.cjs.map +0 -1
  1024. package/dist/chunk-OULO3YDQ.cjs.map +0 -1
  1025. package/dist/chunk-P3SMNZCT.js.map +0 -1
  1026. package/dist/chunk-P6RAOXJA.js.map +0 -1
  1027. package/dist/chunk-PJMV2HTO.cjs.map +0 -1
  1028. package/dist/chunk-PL6J55JB.cjs.map +0 -1
  1029. package/dist/chunk-PYW5UO2Z.js.map +0 -1
  1030. package/dist/chunk-Q3OA23V5.js.map +0 -1
  1031. package/dist/chunk-QCT4BPB6.cjs.map +0 -1
  1032. package/dist/chunk-QEX7V7TI.cjs.map +0 -1
  1033. package/dist/chunk-QL3YSC3H.cjs.map +0 -1
  1034. package/dist/chunk-QRKRVCA3.cjs.map +0 -1
  1035. package/dist/chunk-QSEDH7T2.js.map +0 -1
  1036. package/dist/chunk-RDNMAV5B.js.map +0 -1
  1037. package/dist/chunk-RINP34ZG.js +0 -450
  1038. package/dist/chunk-RINP34ZG.js.map +0 -1
  1039. package/dist/chunk-RVENUWRD.js.map +0 -1
  1040. package/dist/chunk-S4B2D427.js +0 -142
  1041. package/dist/chunk-S4B2D427.js.map +0 -1
  1042. package/dist/chunk-S4LVSSJI.js.map +0 -1
  1043. package/dist/chunk-TF7IWMV2.js.map +0 -1
  1044. package/dist/chunk-U2U4FMFM.cjs.map +0 -1
  1045. package/dist/chunk-U2WVHZ24.cjs.map +0 -1
  1046. package/dist/chunk-UKDGDMWN.js.map +0 -1
  1047. package/dist/chunk-UPQHFW47.js.map +0 -1
  1048. package/dist/chunk-UXDXE7Z6.cjs.map +0 -1
  1049. package/dist/chunk-UYBGXFYX.js.map +0 -1
  1050. package/dist/chunk-VAK4JQYL.js.map +0 -1
  1051. package/dist/chunk-VEUZ5DZR.js.map +0 -1
  1052. package/dist/chunk-VJBBMBRT.cjs.map +0 -1
  1053. package/dist/chunk-W3KMDQKP.cjs.map +0 -1
  1054. package/dist/chunk-WMXIUOOU.cjs.map +0 -1
  1055. package/dist/chunk-WO6FS4DV.js.map +0 -1
  1056. package/dist/chunk-WOIWI2UO.js.map +0 -1
  1057. package/dist/chunk-X2GRBPCJ.cjs.map +0 -1
  1058. package/dist/chunk-XADTIY7J.cjs +0 -145
  1059. package/dist/chunk-XADTIY7J.cjs.map +0 -1
  1060. package/dist/chunk-XIFLSMGW.js +0 -200
  1061. package/dist/chunk-XIFLSMGW.js.map +0 -1
  1062. package/dist/chunk-XUJZTD4E.js.map +0 -1
  1063. package/dist/chunk-Y4FH67QZ.js.map +0 -1
  1064. package/dist/chunk-YAIEA2YE.cjs +0 -203
  1065. package/dist/chunk-YAIEA2YE.cjs.map +0 -1
  1066. package/dist/chunk-YAYINZT2.cjs.map +0 -1
  1067. package/dist/chunk-YLGAJD6Q.js.map +0 -1
  1068. package/dist/chunk-YSTESYUB.js.map +0 -1
  1069. package/dist/chunk-Z4TZAJS3.js.map +0 -1
  1070. package/dist/chunk-ZLATP3P5.cjs.map +0 -1
  1071. package/dist/chunk-ZNUOFLCQ.js.map +0 -1
  1072. package/dist/chunk-ZVH3BLYO.js.map +0 -1
  1073. package/dist/chunk-ZWULWVN3.js.map +0 -1
  1074. package/dist/components/Schedule/zonedDateTime.d.ts +0 -14
  1075. package/dist/components/Schedule/zonedDateTime.d.ts.map +0 -1
  1076. package/dist/components/Stepper/Step.d.ts +0 -62
  1077. package/dist/components/Stepper/Step.d.ts.map +0 -1
  1078. package/dist/components/Stepper/Step.recipe.d.ts +0 -95
  1079. package/dist/components/Stepper/Step.recipe.d.ts.map +0 -1
  1080. package/dist/components/Stepper/StepperContext.d.ts +0 -10
  1081. package/dist/components/Stepper/StepperContext.d.ts.map +0 -1
  1082. package/dist/components/Table/BaseTable.d.ts +0 -6
  1083. package/dist/components/Table/BaseTable.d.ts.map +0 -1
  1084. package/dist/theme/generate-color-scale.d.ts +0 -6
  1085. package/dist/theme/generate-color-scale.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Slider/Slider.recipe.ts","../src/components/Slider/Slider.tsx"],"names":["sva","useId","useRef","useMemo","useEffect","useCallback","jsx","getNecessity","Field","cx","jsxs","Tooltip"],"mappings":"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","file":"chunk-5TT4PGZO.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nconst THUMB_SIZE = 20;\nconst TRACK_SIZE = 4;\n\nexport const sliderRecipe = sva({\n slots: [\n 'field',\n 'filledTrack',\n 'mark',\n 'markLabel',\n 'marksContainer',\n 'row',\n 'textValue',\n 'thumb',\n 'track',\n 'trackContainer',\n ],\n base: {\n row: {\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n },\n trackContainer: {\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n isolation: 'isolate',\n touchAction: 'none',\n userSelect: 'none',\n },\n track: {\n position: 'absolute',\n bg: 'track',\n borderRadius: 'full',\n },\n filledTrack: {\n position: 'absolute',\n bg: 'primary',\n borderRadius: 'full',\n },\n thumb: {\n position: 'absolute',\n zIndex: 1,\n w: `${THUMB_SIZE}px`,\n h: `${THUMB_SIZE}px`,\n borderRadius: 'full',\n bg: 'primary',\n cursor: 'grab',\n outline: 'none',\n transform: 'translate(-50%, -50%)',\n transitionDuration: 'fast',\n transitionProperty: 'background-color, box-shadow',\n transitionTimingFunction: 'default',\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n _hover: {\n '@media (hover: hover)': {\n bg: 'primary.emphasized',\n },\n },\n },\n marksContainer: {\n position: 'absolute',\n },\n mark: {\n position: 'absolute',\n bg: 'border.emphasized',\n borderRadius: 'full',\n },\n markLabel: {\n position: 'absolute',\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'xs',\n whiteSpace: 'nowrap',\n },\n textValue: {\n flexShrink: 0,\n color: 'fg',\n fontFamily: 'body',\n fontSize: 'sm',\n whiteSpace: 'nowrap',\n },\n },\n variants: {\n orientation: {\n horizontal: {\n trackContainer: {\n w: 'full',\n h: `${THUMB_SIZE}px`,\n flexGrow: 1,\n cursor: 'pointer',\n },\n track: {\n insetInline: 0,\n top: '50%',\n h: `${TRACK_SIZE}px`,\n transform: 'translateY(-50%)',\n },\n filledTrack: {\n top: '50%',\n h: `${TRACK_SIZE}px`,\n transform: 'translateY(-50%)',\n },\n thumb: {\n top: '50%',\n },\n marksContainer: {\n insetInline: 0,\n top: '50%',\n },\n mark: {\n w: '0.5',\n h: '2',\n transform: 'translate(-50%, -50%)',\n },\n markLabel: {\n top: `${THUMB_SIZE / 2 + 4}px`,\n transform: 'translateX(-50%)',\n },\n },\n vertical: {\n field: {\n alignItems: 'center',\n w: 'fit-content',\n },\n row: {\n flexDirection: 'column',\n alignItems: 'center',\n },\n trackContainer: {\n w: `${THUMB_SIZE}px`,\n h: '40',\n flexDirection: 'column',\n justifyContent: 'center',\n cursor: 'pointer',\n },\n track: {\n insetBlock: 0,\n left: '50%',\n w: `${TRACK_SIZE}px`,\n transform: 'translateX(-50%)',\n },\n filledTrack: {\n left: '50%',\n w: `${TRACK_SIZE}px`,\n transform: 'translateX(-50%)',\n },\n thumb: {\n left: '50%',\n transform: 'translate(-50%, 50%)',\n },\n marksContainer: {\n insetBlock: 0,\n left: '50%',\n },\n mark: {\n w: '2',\n h: '0.5',\n transform: 'translate(-50%, 50%)',\n },\n markLabel: {\n left: `${THUMB_SIZE / 2 + 4}px`,\n transform: 'translateY(50%)',\n },\n },\n },\n isDisabled: {\n true: {\n trackContainer: {\n cursor: 'not-allowed',\n opacity: 0.5,\n },\n thumb: {\n bg: 'track.disabled',\n cursor: 'not-allowed',\n },\n },\n },\n },\n defaultVariants: {\n orientation: 'horizontal',\n },\n});\n\nexport type SliderVariants = RecipeVariantProps<typeof sliderRecipe>;\n","import {\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n type CSSProperties,\n type KeyboardEvent,\n type PointerEvent,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputStatus,\n} from '../Field';\nimport {Tooltip} from '../Tooltip';\nimport {sliderRecipe} from './Slider.recipe';\n\nexport type SliderOrientation = 'horizontal' | 'vertical';\nexport type SliderValueDisplay = 'tooltip' | 'text' | 'none';\n\nexport interface SliderMark {\n /**\n * Text label rendered beside the mark.\n */\n label?: string;\n /**\n * Numeric position of the mark along the track.\n */\n value: number;\n}\n\nexport type SliderBaseProps = {\n /**\n * Additional CSS class names applied to the field root.\n */\n className?: string;\n /**\n * Test ID applied to the field root.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: string;\n /**\n * Custom value formatter used for visible value text, tooltip content, and\n * `aria-valuetext`.\n */\n formatValue?: (value: number) => string;\n /**\n * Whether the slider is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: string;\n /**\n * Tick marks rendered along the track.\n */\n marks?: SliderMark[];\n /**\n * Maximum value.\n * @default 100\n */\n max?: number;\n /**\n * Minimum value.\n * @default 0\n */\n min?: number;\n /**\n * Slider orientation.\n * @default 'horizontal'\n */\n orientation?: SliderOrientation;\n /**\n * Ref forwarded to the field root.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Validation status displayed below the slider.\n */\n status?: InputStatus;\n /**\n * Step increment.\n * @default 1\n */\n step?: number;\n /**\n * Inline styles applied to the field root.\n */\n style?: CSSProperties;\n /**\n * How to display the current value.\n * @default 'tooltip'\n */\n valueDisplay?: SliderValueDisplay;\n} & FieldNecessity;\n\nexport type SliderSingleProps = SliderBaseProps & {\n /**\n * Called when the value changes during pointer or keyboard interaction.\n */\n onChange: (value: number) => void;\n /**\n * Called when pointer or keyboard interaction commits a value.\n */\n onChangeEnd?: (value: number) => void;\n /**\n * Current value.\n */\n value: number;\n};\n\nexport type SliderRangeProps = SliderBaseProps & {\n /**\n * Minimum number of steps between range thumbs.\n * @default 0\n */\n minStepsBetweenThumbs?: number;\n /**\n * Called when the range changes during pointer or keyboard interaction.\n */\n onChange: (value: [number, number]) => void;\n /**\n * Called when pointer or keyboard interaction commits a range.\n */\n onChangeEnd?: (value: [number, number]) => void;\n /**\n * Current range.\n */\n value: [number, number];\n};\n\nexport type SliderProps = SliderRangeProps | SliderSingleProps;\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(value, min), max);\n}\n\nfunction snapToStep(value: number, min: number, step: number): number {\n if (step <= 0) {\n return value;\n }\n return min + Math.round((value - min) / step) * step;\n}\n\nfunction getPercent(value: number, min: number, max: number): number {\n if (max === min) {\n return 0;\n }\n return ((value - min) / (max - min)) * 100;\n}\n\n/**\n * Slider control for selecting a single value or a range.\n */\nexport function Slider({\n className,\n 'data-testid': dataTestId,\n description,\n formatValue,\n isDisabled = false,\n isLabelHidden = false,\n isOptional,\n isRequired,\n label,\n labelTooltip,\n marks,\n max = 100,\n min = 0,\n orientation = 'horizontal',\n ref,\n status,\n step = 1,\n style,\n value,\n valueDisplay = 'tooltip',\n ...props\n}: SliderProps): React.JSX.Element {\n const inputId = useId();\n const trackRef = useRef<HTMLDivElement>(null);\n const pendingValuesRef = useRef<number[] | null>(null);\n const draggingThumbRef = useRef<number | null>(null);\n const isRange = Array.isArray(value);\n const isHorizontal = orientation === 'horizontal';\n const values = useMemo(() => (isRange ? value : [value]), [isRange, value]);\n const onChange = props.onChange;\n const onChangeEnd = 'onChangeEnd' in props ? props.onChangeEnd : undefined;\n const minStepsBetweenThumbs =\n isRange && 'minStepsBetweenThumbs' in props\n ? (props.minStepsBetweenThumbs ?? 0)\n : 0;\n const descriptionID =\n description != null ? `${inputId}-description` : undefined;\n const statusMessageID =\n status?.message != null ? `${inputId}-status` : undefined;\n const ariaDescribedBy =\n [descriptionID, statusMessageID].filter(Boolean).join(' ') || undefined;\n\n useEffect(() => {\n pendingValuesRef.current = values;\n }, [values]);\n\n const displayValue = useCallback(\n (displayedValue: number): string =>\n formatValue == null\n ? String(displayedValue)\n : formatValue(displayedValue),\n [formatValue],\n );\n\n const getValueFromPosition = useCallback(\n (clientX: number, clientY: number): number => {\n const track = trackRef.current;\n if (track == null) {\n return min;\n }\n const rect = track.getBoundingClientRect();\n const rawPercent = isHorizontal\n ? (clientX - rect.left) / rect.width\n : 1 - (clientY - rect.top) / rect.height;\n const percent = clamp(rawPercent, 0, 1);\n const rawValue = min + percent * (max - min);\n return clamp(snapToStep(rawValue, min, step), min, max);\n },\n [isHorizontal, max, min, step],\n );\n\n const getClosestThumb = useCallback(\n (newValue: number): number => {\n if (!isRange) {\n return 0;\n }\n const [lower, upper] = values;\n return Math.abs(newValue - lower) <= Math.abs(newValue - upper) ? 0 : 1;\n },\n [isRange, values],\n );\n\n const getNextValues = useCallback(\n (thumbIndex: number, newValue: number): number[] => {\n const snapped = clamp(snapToStep(newValue, min, step), min, max);\n if (!isRange) {\n return [snapped];\n }\n\n const nextValues = [...values] as [number, number];\n nextValues[thumbIndex] = snapped;\n const minGap = minStepsBetweenThumbs * step;\n if (thumbIndex === 0) {\n nextValues[0] = Math.min(nextValues[0], nextValues[1] - minGap);\n } else {\n nextValues[1] = Math.max(nextValues[1], nextValues[0] + minGap);\n }\n nextValues[0] = clamp(nextValues[0], min, max);\n nextValues[1] = clamp(nextValues[1], min, max);\n return nextValues;\n },\n [isRange, max, min, minStepsBetweenThumbs, step, values],\n );\n\n const emitChange = useCallback(\n (nextValues: number[]) => {\n pendingValuesRef.current = nextValues;\n if (isRange) {\n (onChange as SliderRangeProps['onChange'])(\n nextValues as [number, number],\n );\n } else {\n (onChange as SliderSingleProps['onChange'])(nextValues[0]);\n }\n },\n [isRange, onChange],\n );\n\n const emitChangeEnd = useCallback(\n (nextValues: number[]) => {\n if (isRange) {\n (onChangeEnd as SliderRangeProps['onChangeEnd'])?.(\n nextValues as [number, number],\n );\n } else {\n (onChangeEnd as SliderSingleProps['onChangeEnd'])?.(nextValues[0]);\n }\n },\n [isRange, onChangeEnd],\n );\n\n const updateValue = useCallback(\n (thumbIndex: number, newValue: number): number[] | null => {\n if (isDisabled) {\n return null;\n }\n const nextValues = getNextValues(thumbIndex, newValue);\n emitChange(nextValues);\n return nextValues;\n },\n [emitChange, getNextValues, isDisabled],\n );\n\n const handlePointerDown = useCallback(\n (event: PointerEvent<HTMLDivElement>) => {\n if (isDisabled) {\n return;\n }\n event.preventDefault();\n const markElement = (event.target as HTMLElement).closest<HTMLElement>(\n '[data-mark-value]',\n );\n const newValue =\n markElement == null\n ? getValueFromPosition(event.clientX, event.clientY)\n : Number(markElement.dataset.markValue);\n const thumbIndex = getClosestThumb(newValue);\n draggingThumbRef.current = thumbIndex;\n updateValue(thumbIndex, newValue);\n\n if (typeof event.currentTarget.setPointerCapture === 'function') {\n event.currentTarget.setPointerCapture(event.pointerId);\n }\n },\n [getClosestThumb, getValueFromPosition, isDisabled, updateValue],\n );\n\n const handlePointerMove = useCallback(\n (event: PointerEvent<HTMLDivElement>) => {\n if (draggingThumbRef.current == null || isDisabled) {\n return;\n }\n updateValue(\n draggingThumbRef.current,\n getValueFromPosition(event.clientX, event.clientY),\n );\n },\n [getValueFromPosition, isDisabled, updateValue],\n );\n\n const handlePointerUp = useCallback(() => {\n if (draggingThumbRef.current == null) {\n return;\n }\n draggingThumbRef.current = null;\n emitChangeEnd(pendingValuesRef.current ?? values);\n }, [emitChangeEnd, values]);\n\n const handleKeyDown = useCallback(\n (thumbIndex: number, event: KeyboardEvent<HTMLDivElement>) => {\n if (isDisabled) {\n return;\n }\n\n const currentValue = values[thumbIndex];\n let nextValue: number;\n switch (event.key) {\n case 'ArrowDown':\n case 'ArrowLeft':\n nextValue = currentValue - step;\n break;\n case 'ArrowRight':\n case 'ArrowUp':\n nextValue = currentValue + step;\n break;\n case 'End':\n nextValue = max;\n break;\n case 'Home':\n nextValue = min;\n break;\n case 'PageDown':\n nextValue = currentValue - step * 10;\n break;\n case 'PageUp':\n nextValue = currentValue + step * 10;\n break;\n default:\n return;\n }\n\n event.preventDefault();\n const nextValues = getNextValues(thumbIndex, nextValue);\n emitChange(nextValues);\n emitChangeEnd(nextValues);\n },\n [\n emitChange,\n emitChangeEnd,\n getNextValues,\n isDisabled,\n max,\n min,\n step,\n values,\n ],\n );\n\n const filledStyle: CSSProperties = (() => {\n if (isRange) {\n const [lower, upper] = values;\n const lowerPercent = getPercent(lower, min, max);\n const upperPercent = getPercent(upper, min, max);\n return isHorizontal\n ? {left: `${lowerPercent}%`, width: `${upperPercent - lowerPercent}%`}\n : {\n bottom: `${lowerPercent}%`,\n height: `${upperPercent - lowerPercent}%`,\n };\n }\n const percent = getPercent(values[0], min, max);\n return isHorizontal\n ? {left: '0%', width: `${percent}%`}\n : {bottom: '0%', height: `${percent}%`};\n })();\n\n const classes = sliderRecipe({\n orientation,\n isDisabled: isDisabled || undefined,\n });\n\n const textDisplay =\n valueDisplay === 'text' ? (\n <span className={classes.textValue}>\n {isRange\n ? `${displayValue(values[0])} - ${displayValue(values[1])}`\n : displayValue(values[0])}\n </span>\n ) : null;\n\n const necessity = getNecessity(isOptional, isRequired);\n\n return (\n <Field\n className={cx(className, classes.field)}\n data-testid={dataTestId}\n description={description}\n descriptionID={descriptionID}\n inputId={inputId}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n {...necessity}\n label={label}\n labelAs=\"span\"\n labelTooltip={labelTooltip}\n ref={ref}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n statusVariant=\"detached\"\n style={style}>\n <div className={classes.row}>\n <div\n aria-label={isRange ? label : undefined}\n className={classes.trackContainer}\n data-testid=\"slider-track-container\"\n onPointerCancel={handlePointerUp}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onPointerUp={handlePointerUp}\n ref={trackRef}\n role={isRange ? 'group' : undefined}>\n <div aria-hidden=\"true\" className={classes.track} />\n <div\n aria-hidden=\"true\"\n className={classes.filledTrack}\n style={filledStyle}\n />\n {marks == null ? null : (\n <div aria-hidden=\"true\" className={classes.marksContainer}>\n {marks.map(mark => {\n const percent = getPercent(mark.value, min, max);\n const markStyle = isHorizontal\n ? {left: `${percent}%`}\n : {bottom: `${percent}%`};\n return (\n <div key={mark.value}>\n <div\n className={classes.mark}\n data-mark-value={mark.value}\n data-testid=\"slider-mark\"\n style={markStyle}\n />\n {mark.label == null ? null : (\n <span\n className={classes.markLabel}\n data-mark-value={mark.value}\n data-testid=\"slider-mark-label\"\n style={markStyle}>\n {mark.label}\n </span>\n )}\n </div>\n );\n })}\n </div>\n )}\n {values.map((currentValue, thumbIndex) => {\n const percent = getPercent(currentValue, min, max);\n const thumbStyle = isHorizontal\n ? {left: `${percent}%`}\n : {bottom: `${percent}%`, left: '50%'};\n const thumbLabel = isRange\n ? thumbIndex === 0\n ? `${label}, minimum value`\n : `${label}, maximum value`\n : label;\n const thumbKey = isRange\n ? thumbIndex === 0\n ? 'minimum'\n : 'maximum'\n : 'value';\n const thumb = (\n <div\n aria-describedby={ariaDescribedBy}\n aria-disabled={isDisabled || undefined}\n aria-invalid={status?.type === 'error' || undefined}\n aria-label={thumbLabel}\n aria-orientation={orientation}\n aria-valuemax={max}\n aria-valuemin={min}\n aria-valuenow={currentValue}\n aria-valuetext={\n formatValue == null ? undefined : formatValue(currentValue)\n }\n className={classes.thumb}\n id={!isRange || thumbIndex === 0 ? inputId : undefined}\n key={thumbKey}\n onKeyDown={event => handleKeyDown(thumbIndex, event)}\n role=\"slider\"\n style={thumbStyle}\n tabIndex={isDisabled ? -1 : 0}\n />\n );\n\n if (valueDisplay !== 'tooltip') {\n return thumb;\n }\n\n return (\n <Tooltip\n content={displayValue(currentValue)}\n delay={0}\n focusTrigger=\"always\"\n key={thumbKey}\n placement={isHorizontal ? 'above' : 'start'}>\n {thumb}\n </Tooltip>\n );\n })}\n </div>\n {textDisplay}\n </div>\n </Field>\n );\n}\n\nSlider.displayName = 'Slider';\n"]}
1
+ {"version":3,"sources":["../src/components/Slider/Slider.recipe.ts","../src/components/Slider/Slider.tsx"],"names":["sva","useId","useRef","useMemo","useEffect","useCallback","jsx","getNecessity","Field","cx","jsxs","Tooltip"],"mappings":"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","file":"chunk-N77K3NQY.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nconst THUMB_SIZE = 20;\nconst TRACK_SIZE = 4;\n\nexport const sliderRecipe = sva({\n slots: [\n 'field',\n 'filledTrack',\n 'mark',\n 'markLabel',\n 'marksContainer',\n 'row',\n 'textValue',\n 'thumb',\n 'track',\n 'trackContainer',\n ],\n base: {\n row: {\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n },\n trackContainer: {\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n isolation: 'isolate',\n touchAction: 'none',\n userSelect: 'none',\n },\n track: {\n position: 'absolute',\n bg: 'track',\n borderRadius: 'full',\n },\n filledTrack: {\n position: 'absolute',\n bg: 'primary',\n borderRadius: 'full',\n },\n thumb: {\n position: 'absolute',\n zIndex: 1,\n w: `${THUMB_SIZE}px`,\n h: `${THUMB_SIZE}px`,\n borderRadius: 'full',\n bg: 'primary',\n cursor: 'grab',\n outline: 'none',\n transform: 'translate(-50%, -50%)',\n transitionDuration: 'fast',\n transitionProperty: 'background-color, box-shadow',\n transitionTimingFunction: 'default',\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n _hover: {\n '@media (hover: hover)': {\n bg: 'primary.emphasized',\n },\n },\n },\n marksContainer: {\n position: 'absolute',\n },\n mark: {\n position: 'absolute',\n bg: 'border.emphasized',\n borderRadius: 'full',\n },\n markLabel: {\n position: 'absolute',\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'xs',\n whiteSpace: 'nowrap',\n },\n textValue: {\n flexShrink: 0,\n color: 'fg',\n fontFamily: 'body',\n fontSize: 'sm',\n whiteSpace: 'nowrap',\n },\n },\n variants: {\n orientation: {\n horizontal: {\n trackContainer: {\n w: 'full',\n h: `${THUMB_SIZE}px`,\n flexGrow: 1,\n cursor: 'pointer',\n },\n track: {\n insetInline: 0,\n top: '50%',\n h: `${TRACK_SIZE}px`,\n transform: 'translateY(-50%)',\n },\n filledTrack: {\n top: '50%',\n h: `${TRACK_SIZE}px`,\n transform: 'translateY(-50%)',\n },\n thumb: {\n top: '50%',\n },\n marksContainer: {\n insetInline: 0,\n top: '50%',\n },\n mark: {\n w: '0.5',\n h: '2',\n transform: 'translate(-50%, -50%)',\n },\n markLabel: {\n top: `${THUMB_SIZE / 2 + 4}px`,\n transform: 'translateX(-50%)',\n },\n },\n vertical: {\n field: {\n alignItems: 'center',\n w: 'fit-content',\n },\n row: {\n flexDirection: 'column',\n alignItems: 'center',\n },\n trackContainer: {\n w: `${THUMB_SIZE}px`,\n h: '40',\n flexDirection: 'column',\n justifyContent: 'center',\n cursor: 'pointer',\n },\n track: {\n insetBlock: 0,\n left: '50%',\n w: `${TRACK_SIZE}px`,\n transform: 'translateX(-50%)',\n },\n filledTrack: {\n left: '50%',\n w: `${TRACK_SIZE}px`,\n transform: 'translateX(-50%)',\n },\n thumb: {\n left: '50%',\n transform: 'translate(-50%, 50%)',\n },\n marksContainer: {\n insetBlock: 0,\n left: '50%',\n },\n mark: {\n w: '2',\n h: '0.5',\n transform: 'translate(-50%, 50%)',\n },\n markLabel: {\n left: `${THUMB_SIZE / 2 + 4}px`,\n transform: 'translateY(50%)',\n },\n },\n },\n isDisabled: {\n true: {\n trackContainer: {\n cursor: 'not-allowed',\n opacity: 0.5,\n },\n thumb: {\n bg: 'track.disabled',\n cursor: 'not-allowed',\n },\n },\n },\n },\n defaultVariants: {\n orientation: 'horizontal',\n },\n});\n\nexport type SliderVariants = RecipeVariantProps<typeof sliderRecipe>;\n","import {\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n type CSSProperties,\n type KeyboardEvent,\n type PointerEvent,\n type Ref,\n} from 'react';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputStatus,\n} from 'components/Field';\nimport {sliderRecipe} from 'components/Slider/Slider.recipe';\nimport {Tooltip} from 'components/Tooltip';\nimport {cx} from 'internal/cx';\n\nexport type SliderOrientation = 'horizontal' | 'vertical';\nexport type SliderValueDisplay = 'tooltip' | 'text' | 'none';\n\nexport interface SliderMark {\n /**\n * Text label rendered beside the mark.\n */\n label?: string;\n /**\n * Numeric position of the mark along the track.\n */\n value: number;\n}\n\nexport type SliderBaseProps = {\n /**\n * Additional CSS class names applied to the field root.\n */\n className?: string;\n /**\n * Test ID applied to the field root.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: string;\n /**\n * Custom value formatter used for visible value text, tooltip content, and\n * `aria-valuetext`.\n */\n formatValue?: (value: number) => string;\n /**\n * Whether the slider is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: string;\n /**\n * Tick marks rendered along the track.\n */\n marks?: SliderMark[];\n /**\n * Maximum value.\n * @default 100\n */\n max?: number;\n /**\n * Minimum value.\n * @default 0\n */\n min?: number;\n /**\n * Slider orientation.\n * @default 'horizontal'\n */\n orientation?: SliderOrientation;\n /**\n * Ref forwarded to the field root.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Validation status displayed below the slider.\n */\n status?: InputStatus;\n /**\n * Step increment.\n * @default 1\n */\n step?: number;\n /**\n * Inline styles applied to the field root.\n */\n style?: CSSProperties;\n /**\n * How to display the current value.\n * @default 'tooltip'\n */\n valueDisplay?: SliderValueDisplay;\n} & FieldNecessity;\n\nexport type SliderSingleProps = SliderBaseProps & {\n /**\n * Called when the value changes during pointer or keyboard interaction.\n */\n onChange: (value: number) => void;\n /**\n * Called when pointer or keyboard interaction commits a value.\n */\n onChangeEnd?: (value: number) => void;\n /**\n * Current value.\n */\n value: number;\n};\n\nexport type SliderRangeProps = SliderBaseProps & {\n /**\n * Minimum number of steps between range thumbs.\n * @default 0\n */\n minStepsBetweenThumbs?: number;\n /**\n * Called when the range changes during pointer or keyboard interaction.\n */\n onChange: (value: [number, number]) => void;\n /**\n * Called when pointer or keyboard interaction commits a range.\n */\n onChangeEnd?: (value: [number, number]) => void;\n /**\n * Current range.\n */\n value: [number, number];\n};\n\nexport type SliderProps = SliderRangeProps | SliderSingleProps;\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(value, min), max);\n}\n\nfunction snapToStep(value: number, min: number, step: number): number {\n if (step <= 0) {\n return value;\n }\n return min + Math.round((value - min) / step) * step;\n}\n\nfunction getPercent(value: number, min: number, max: number): number {\n if (max === min) {\n return 0;\n }\n return ((value - min) / (max - min)) * 100;\n}\n\n/**\n * Slider control for selecting a single value or a range.\n */\nexport function Slider({\n className,\n 'data-testid': dataTestId,\n description,\n formatValue,\n isDisabled = false,\n isLabelHidden = false,\n isOptional,\n isRequired,\n label,\n labelTooltip,\n marks,\n max = 100,\n min = 0,\n orientation = 'horizontal',\n ref,\n status,\n step = 1,\n style,\n value,\n valueDisplay = 'tooltip',\n ...props\n}: SliderProps): React.JSX.Element {\n const inputId = useId();\n const trackRef = useRef<HTMLDivElement>(null);\n const pendingValuesRef = useRef<number[] | null>(null);\n const draggingThumbRef = useRef<number | null>(null);\n const isRange = Array.isArray(value);\n const isHorizontal = orientation === 'horizontal';\n const values = useMemo(() => (isRange ? value : [value]), [isRange, value]);\n const onChange = props.onChange;\n const onChangeEnd = 'onChangeEnd' in props ? props.onChangeEnd : undefined;\n const minStepsBetweenThumbs =\n isRange && 'minStepsBetweenThumbs' in props\n ? (props.minStepsBetweenThumbs ?? 0)\n : 0;\n const descriptionID =\n description != null ? `${inputId}-description` : undefined;\n const statusMessageID =\n status?.message != null ? `${inputId}-status` : undefined;\n const ariaDescribedBy =\n [descriptionID, statusMessageID].filter(Boolean).join(' ') || undefined;\n\n useEffect(() => {\n pendingValuesRef.current = values;\n }, [values]);\n\n const displayValue = useCallback(\n (displayedValue: number): string =>\n formatValue == null\n ? String(displayedValue)\n : formatValue(displayedValue),\n [formatValue],\n );\n\n const getValueFromPosition = useCallback(\n (clientX: number, clientY: number): number => {\n const track = trackRef.current;\n if (track == null) {\n return min;\n }\n const rect = track.getBoundingClientRect();\n const rawPercent = isHorizontal\n ? (clientX - rect.left) / rect.width\n : 1 - (clientY - rect.top) / rect.height;\n const percent = clamp(rawPercent, 0, 1);\n const rawValue = min + percent * (max - min);\n return clamp(snapToStep(rawValue, min, step), min, max);\n },\n [isHorizontal, max, min, step],\n );\n\n const getClosestThumb = useCallback(\n (newValue: number): number => {\n if (!isRange) {\n return 0;\n }\n const [lower, upper] = values;\n return Math.abs(newValue - lower) <= Math.abs(newValue - upper) ? 0 : 1;\n },\n [isRange, values],\n );\n\n const getNextValues = useCallback(\n (thumbIndex: number, newValue: number): number[] => {\n const snapped = clamp(snapToStep(newValue, min, step), min, max);\n if (!isRange) {\n return [snapped];\n }\n\n const nextValues = [...values] as [number, number];\n nextValues[thumbIndex] = snapped;\n const minGap = minStepsBetweenThumbs * step;\n if (thumbIndex === 0) {\n nextValues[0] = Math.min(nextValues[0], nextValues[1] - minGap);\n } else {\n nextValues[1] = Math.max(nextValues[1], nextValues[0] + minGap);\n }\n nextValues[0] = clamp(nextValues[0], min, max);\n nextValues[1] = clamp(nextValues[1], min, max);\n return nextValues;\n },\n [isRange, max, min, minStepsBetweenThumbs, step, values],\n );\n\n const emitChange = useCallback(\n (nextValues: number[]) => {\n pendingValuesRef.current = nextValues;\n if (isRange) {\n (onChange as SliderRangeProps['onChange'])(\n nextValues as [number, number],\n );\n } else {\n (onChange as SliderSingleProps['onChange'])(nextValues[0]);\n }\n },\n [isRange, onChange],\n );\n\n const emitChangeEnd = useCallback(\n (nextValues: number[]) => {\n if (isRange) {\n (onChangeEnd as SliderRangeProps['onChangeEnd'])?.(\n nextValues as [number, number],\n );\n } else {\n (onChangeEnd as SliderSingleProps['onChangeEnd'])?.(nextValues[0]);\n }\n },\n [isRange, onChangeEnd],\n );\n\n const updateValue = useCallback(\n (thumbIndex: number, newValue: number): number[] | null => {\n if (isDisabled) {\n return null;\n }\n const nextValues = getNextValues(thumbIndex, newValue);\n emitChange(nextValues);\n return nextValues;\n },\n [emitChange, getNextValues, isDisabled],\n );\n\n const handlePointerDown = useCallback(\n (event: PointerEvent<HTMLDivElement>) => {\n if (isDisabled) {\n return;\n }\n event.preventDefault();\n const markElement = (event.target as HTMLElement).closest<HTMLElement>(\n '[data-mark-value]',\n );\n const newValue =\n markElement == null\n ? getValueFromPosition(event.clientX, event.clientY)\n : Number(markElement.dataset.markValue);\n const thumbIndex = getClosestThumb(newValue);\n draggingThumbRef.current = thumbIndex;\n updateValue(thumbIndex, newValue);\n\n if (typeof event.currentTarget.setPointerCapture === 'function') {\n event.currentTarget.setPointerCapture(event.pointerId);\n }\n },\n [getClosestThumb, getValueFromPosition, isDisabled, updateValue],\n );\n\n const handlePointerMove = useCallback(\n (event: PointerEvent<HTMLDivElement>) => {\n if (draggingThumbRef.current == null || isDisabled) {\n return;\n }\n updateValue(\n draggingThumbRef.current,\n getValueFromPosition(event.clientX, event.clientY),\n );\n },\n [getValueFromPosition, isDisabled, updateValue],\n );\n\n const handlePointerUp = useCallback(() => {\n if (draggingThumbRef.current == null) {\n return;\n }\n draggingThumbRef.current = null;\n emitChangeEnd(pendingValuesRef.current ?? values);\n }, [emitChangeEnd, values]);\n\n const handleKeyDown = useCallback(\n (thumbIndex: number, event: KeyboardEvent<HTMLDivElement>) => {\n if (isDisabled) {\n return;\n }\n\n const currentValue = values[thumbIndex];\n let nextValue: number;\n switch (event.key) {\n case 'ArrowDown':\n case 'ArrowLeft':\n nextValue = currentValue - step;\n break;\n case 'ArrowRight':\n case 'ArrowUp':\n nextValue = currentValue + step;\n break;\n case 'End':\n nextValue = max;\n break;\n case 'Home':\n nextValue = min;\n break;\n case 'PageDown':\n nextValue = currentValue - step * 10;\n break;\n case 'PageUp':\n nextValue = currentValue + step * 10;\n break;\n default:\n return;\n }\n\n event.preventDefault();\n const nextValues = getNextValues(thumbIndex, nextValue);\n emitChange(nextValues);\n emitChangeEnd(nextValues);\n },\n [\n emitChange,\n emitChangeEnd,\n getNextValues,\n isDisabled,\n max,\n min,\n step,\n values,\n ],\n );\n\n const filledStyle: CSSProperties = (() => {\n if (isRange) {\n const [lower, upper] = values;\n const lowerPercent = getPercent(lower, min, max);\n const upperPercent = getPercent(upper, min, max);\n return isHorizontal\n ? {left: `${lowerPercent}%`, width: `${upperPercent - lowerPercent}%`}\n : {\n bottom: `${lowerPercent}%`,\n height: `${upperPercent - lowerPercent}%`,\n };\n }\n const percent = getPercent(values[0], min, max);\n return isHorizontal\n ? {left: '0%', width: `${percent}%`}\n : {bottom: '0%', height: `${percent}%`};\n })();\n\n const classes = sliderRecipe({\n orientation,\n isDisabled: isDisabled || undefined,\n });\n\n const textDisplay =\n valueDisplay === 'text' ? (\n <span className={classes.textValue}>\n {isRange\n ? `${displayValue(values[0])} - ${displayValue(values[1])}`\n : displayValue(values[0])}\n </span>\n ) : null;\n\n const necessity = getNecessity(isOptional, isRequired);\n\n return (\n <Field\n className={cx(className, classes.field)}\n data-testid={dataTestId}\n description={description}\n descriptionID={descriptionID}\n inputId={inputId}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n {...necessity}\n label={label}\n labelAs=\"span\"\n labelTooltip={labelTooltip}\n ref={ref}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n statusVariant=\"detached\"\n style={style}>\n <div className={classes.row}>\n <div\n aria-label={isRange ? label : undefined}\n className={classes.trackContainer}\n data-testid=\"slider-track-container\"\n onPointerCancel={handlePointerUp}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onPointerUp={handlePointerUp}\n ref={trackRef}\n role={isRange ? 'group' : undefined}>\n <div aria-hidden=\"true\" className={classes.track} />\n <div\n aria-hidden=\"true\"\n className={classes.filledTrack}\n style={filledStyle}\n />\n {marks == null ? null : (\n <div aria-hidden=\"true\" className={classes.marksContainer}>\n {marks.map(mark => {\n const percent = getPercent(mark.value, min, max);\n const markStyle = isHorizontal\n ? {left: `${percent}%`}\n : {bottom: `${percent}%`};\n return (\n <div key={mark.value}>\n <div\n className={classes.mark}\n data-mark-value={mark.value}\n data-testid=\"slider-mark\"\n style={markStyle}\n />\n {mark.label == null ? null : (\n <span\n className={classes.markLabel}\n data-mark-value={mark.value}\n data-testid=\"slider-mark-label\"\n style={markStyle}>\n {mark.label}\n </span>\n )}\n </div>\n );\n })}\n </div>\n )}\n {values.map((currentValue, thumbIndex) => {\n const percent = getPercent(currentValue, min, max);\n const thumbStyle = isHorizontal\n ? {left: `${percent}%`}\n : {bottom: `${percent}%`, left: '50%'};\n const thumbLabel = isRange\n ? thumbIndex === 0\n ? `${label}, minimum value`\n : `${label}, maximum value`\n : label;\n const thumbKey = isRange\n ? thumbIndex === 0\n ? 'minimum'\n : 'maximum'\n : 'value';\n const thumb = (\n <div\n aria-describedby={ariaDescribedBy}\n aria-disabled={isDisabled || undefined}\n aria-invalid={status?.type === 'error' || undefined}\n aria-label={thumbLabel}\n aria-orientation={orientation}\n aria-valuemax={max}\n aria-valuemin={min}\n aria-valuenow={currentValue}\n aria-valuetext={\n formatValue == null ? undefined : formatValue(currentValue)\n }\n className={classes.thumb}\n id={!isRange || thumbIndex === 0 ? inputId : undefined}\n key={thumbKey}\n onKeyDown={event => handleKeyDown(thumbIndex, event)}\n role=\"slider\"\n style={thumbStyle}\n tabIndex={isDisabled ? -1 : 0}\n />\n );\n\n if (valueDisplay !== 'tooltip') {\n return thumb;\n }\n\n return (\n <Tooltip\n content={displayValue(currentValue)}\n delay={0}\n focusTrigger=\"always\"\n key={thumbKey}\n placement={isHorizontal ? 'above' : 'start'}>\n {thumb}\n </Tooltip>\n );\n })}\n </div>\n {textDisplay}\n </div>\n </Field>\n );\n}\n\nSlider.displayName = 'Slider';\n"]}
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var chunkWMXIUOOU_cjs = require('./chunk-WMXIUOOU.cjs');
4
- var chunk4TIAKZ4Q_cjs = require('./chunk-4TIAKZ4Q.cjs');
5
- var chunk5QPM5LUS_cjs = require('./chunk-5QPM5LUS.cjs');
3
+ var chunk2MXK2SDR_cjs = require('./chunk-2MXK2SDR.cjs');
4
+ var chunkJ4PIYOWT_cjs = require('./chunk-J4PIYOWT.cjs');
5
+ var chunkZ6RT3WPE_cjs = require('./chunk-Z6RT3WPE.cjs');
6
6
  var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
7
7
  var lucideReact = require('lucide-react');
8
8
  var react = require('react');
9
9
  var jsxRuntime = require('react/jsx-runtime');
10
10
 
11
11
  // src/components/Rating/Rating.recipe.ts
12
- var ratingRecipe = chunk5QPM5LUS_cjs.sva({
12
+ var ratingRecipe = chunkZ6RT3WPE_cjs.sva({
13
13
  slots: ["root", "star", "input"],
14
14
  base: {
15
15
  root: {
@@ -72,7 +72,7 @@ function StarIcon({
72
72
  size
73
73
  }) {
74
74
  return /* @__PURE__ */ jsxRuntime.jsx(
75
- chunk4TIAKZ4Q_cjs.Icon,
75
+ chunkJ4PIYOWT_cjs.Icon,
76
76
  {
77
77
  color,
78
78
  fill: isFilled ? "currentColor" : "none",
@@ -171,7 +171,7 @@ function Rating({
171
171
  value: starValue
172
172
  }
173
173
  ),
174
- /* @__PURE__ */ jsxRuntime.jsxs(chunkWMXIUOOU_cjs.VisuallyHidden, { children: [
174
+ /* @__PURE__ */ jsxRuntime.jsxs(chunk2MXK2SDR_cjs.VisuallyHidden, { children: [
175
175
  starValue,
176
176
  " ",
177
177
  starValue === 1 ? "star" : "stars"
@@ -197,5 +197,5 @@ function Rating({
197
197
  Rating.displayName = "Rating";
198
198
 
199
199
  exports.Rating = Rating;
200
- //# sourceMappingURL=chunk-KRZ57O2J.cjs.map
201
- //# sourceMappingURL=chunk-KRZ57O2J.cjs.map
200
+ //# sourceMappingURL=chunk-NYTSAO5I.cjs.map
201
+ //# sourceMappingURL=chunk-NYTSAO5I.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Rating/Rating.recipe.ts","../src/components/Rating/Rating.tsx"],"names":["sva","jsx","Icon","Star","useId","useState","cx","jsxs","VisuallyHidden"],"mappings":"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","file":"chunk-KRZ57O2J.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const ratingRecipe = sva({\n slots: ['root', 'star', 'input'],\n base: {\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '0.5',\n },\n star: {\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n p: 0,\n m: 0,\n borderWidth: 0,\n bg: 'transparent',\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n borderRadius: 'sm',\n },\n },\n input: {\n position: 'absolute',\n w: '1px',\n h: '1px',\n p: 0,\n m: '-1px',\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n borderWidth: 0,\n },\n },\n variants: {\n isDisabled: {\n true: {\n root: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n star: {\n cursor: 'not-allowed',\n },\n },\n },\n isReadOnly: {\n true: {\n star: {\n cursor: 'default',\n },\n },\n },\n },\n});\n\nexport type RatingVariants = RecipeVariantProps<typeof ratingRecipe>;\n","import {Star} from 'lucide-react';\nimport {\n useState,\n useId,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {VisuallyHidden} from '../../internal/VisuallyHidden';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconColor, type IconSize} from '../Icon';\nimport {ratingRecipe} from './Rating.recipe';\n\nexport interface RatingProps {\n /**\n * Additional CSS class names applied to the rating root.\n */\n className?: string;\n /**\n * Number of stars to display.\n * @default 5\n */\n count?: number;\n /**\n * Test ID applied to the rating root.\n */\n 'data-testid'?: string;\n /**\n * Color of unfilled stars.\n * @default 'disabled'\n */\n emptyColor?: IconColor;\n /**\n * Color of filled stars.\n * @default 'yellow'\n */\n filledColor?: IconColor;\n /**\n * Whether the rating is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether the rating is read-only.\n * @default false\n */\n isReadOnly?: boolean;\n /**\n * Accessible label for the rating group.\n * @default 'Rating'\n */\n label?: string;\n /**\n * Called when the selected rating changes.\n */\n onChange?: (value: number) => void;\n /**\n * Ref forwarded to the rating root.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Size of the star icons.\n * @default 'md'\n */\n size?: IconSize;\n /**\n * Inline styles applied to the rating root.\n */\n style?: CSSProperties;\n /**\n * Current rating value.\n */\n value: number;\n}\n\nfunction StarIcon({\n color,\n isFilled,\n size,\n}: {\n color: IconColor;\n isFilled: boolean;\n size: IconSize;\n}): ReactNode {\n return (\n <Icon\n color={color}\n fill={isFilled ? 'currentColor' : 'none'}\n icon={Star}\n size={size}\n />\n );\n}\n\n/**\n * Star-based rating control supporting read-only and interactive modes.\n */\nexport function Rating({\n value: valueFromProps,\n onChange,\n count = 5,\n emptyColor = 'disabled',\n filledColor = 'yellow',\n size = 'md',\n isReadOnly = false,\n isDisabled = false,\n label = 'Rating',\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: RatingProps): React.JSX.Element {\n if (process.env.NODE_ENV !== 'production') {\n if (!Number.isInteger(count) || count < 1) {\n throw new Error(\n `Rating: count must be a positive integer, received ${count}.`,\n );\n }\n\n if (\n valueFromProps < 0 ||\n valueFromProps > count ||\n !Number.isInteger(valueFromProps)\n ) {\n throw new Error(\n `Rating: value must be an integer in [0, ${count}], received ${valueFromProps}.`,\n );\n }\n }\n\n const value = Math.max(0, Math.min(count, Math.round(valueFromProps)));\n const groupId = useId();\n const [hoverValue, setHoverValue] = useState<number | null>(null);\n const isInteractive = !isReadOnly && !isDisabled && onChange != null;\n const displayValue = isInteractive ? (hoverValue ?? value) : value;\n const classes = ratingRecipe({\n isDisabled: isDisabled || undefined,\n isReadOnly: isReadOnly || undefined,\n });\n\n if (!isInteractive) {\n return (\n <div\n aria-label={`${label}: ${value} out of ${count}`}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n role=\"img\"\n style={style}>\n {Array.from({length: count}, (_, i) => (\n <span className={classes.star} key={i}>\n <StarIcon\n color={i < value ? filledColor : emptyColor}\n isFilled={i < value}\n size={size}\n />\n </span>\n ))}\n </div>\n );\n }\n\n return (\n // eslint-disable-next-line jsx-a11y-x/interactive-supports-focus -- focus is managed by the radio inputs inside\n <div\n aria-label={label}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n onMouseLeave={() => setHoverValue(null)}\n ref={ref}\n role=\"radiogroup\"\n style={style}>\n {Array.from({length: count}, (_, i) => {\n const starValue = i + 1;\n return (\n // eslint-disable-next-line jsx-a11y-x/no-noninteractive-element-interactions -- label wraps its radio input\n <label\n className={classes.star}\n key={i}\n onMouseEnter={() => setHoverValue(starValue)}>\n <input\n checked={value === starValue}\n className={classes.input}\n name={groupId}\n onChange={() => onChange(starValue)}\n type=\"radio\"\n value={starValue}\n />\n <VisuallyHidden>\n {starValue} {starValue === 1 ? 'star' : 'stars'}\n </VisuallyHidden>\n <StarIcon\n color={i < displayValue ? filledColor : emptyColor}\n isFilled={i < displayValue}\n size={size}\n />\n </label>\n );\n })}\n </div>\n );\n}\n\nRating.displayName = 'Rating';\n"]}
1
+ {"version":3,"sources":["../src/components/Rating/Rating.recipe.ts","../src/components/Rating/Rating.tsx"],"names":["sva","jsx","Icon","Star","useId","useState","cx","jsxs","VisuallyHidden"],"mappings":"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","file":"chunk-NYTSAO5I.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const ratingRecipe = sva({\n slots: ['root', 'star', 'input'],\n base: {\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '0.5',\n },\n star: {\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n p: 0,\n m: 0,\n borderWidth: 0,\n bg: 'transparent',\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n borderRadius: 'sm',\n },\n },\n input: {\n position: 'absolute',\n w: '1px',\n h: '1px',\n p: 0,\n m: '-1px',\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n borderWidth: 0,\n },\n },\n variants: {\n isDisabled: {\n true: {\n root: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n star: {\n cursor: 'not-allowed',\n },\n },\n },\n isReadOnly: {\n true: {\n star: {\n cursor: 'default',\n },\n },\n },\n },\n});\n\nexport type RatingVariants = RecipeVariantProps<typeof ratingRecipe>;\n","import {Star} from 'lucide-react';\nimport {\n useState,\n useId,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {Icon, type IconColor, type IconSize} from 'components/Icon';\nimport {ratingRecipe} from 'components/Rating/Rating.recipe';\nimport {VisuallyHidden} from 'internal/VisuallyHidden';\nimport {cx} from 'internal/cx';\n\nexport interface RatingProps {\n /**\n * Additional CSS class names applied to the rating root.\n */\n className?: string;\n /**\n * Number of stars to display.\n * @default 5\n */\n count?: number;\n /**\n * Test ID applied to the rating root.\n */\n 'data-testid'?: string;\n /**\n * Color of unfilled stars.\n * @default 'disabled'\n */\n emptyColor?: IconColor;\n /**\n * Color of filled stars.\n * @default 'yellow'\n */\n filledColor?: IconColor;\n /**\n * Whether the rating is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether the rating is read-only.\n * @default false\n */\n isReadOnly?: boolean;\n /**\n * Accessible label for the rating group.\n * @default 'Rating'\n */\n label?: string;\n /**\n * Called when the selected rating changes.\n */\n onChange?: (value: number) => void;\n /**\n * Ref forwarded to the rating root.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Size of the star icons.\n * @default 'md'\n */\n size?: IconSize;\n /**\n * Inline styles applied to the rating root.\n */\n style?: CSSProperties;\n /**\n * Current rating value.\n */\n value: number;\n}\n\nfunction StarIcon({\n color,\n isFilled,\n size,\n}: {\n color: IconColor;\n isFilled: boolean;\n size: IconSize;\n}): ReactNode {\n return (\n <Icon\n color={color}\n fill={isFilled ? 'currentColor' : 'none'}\n icon={Star}\n size={size}\n />\n );\n}\n\n/**\n * Star-based rating control supporting read-only and interactive modes.\n */\nexport function Rating({\n value: valueFromProps,\n onChange,\n count = 5,\n emptyColor = 'disabled',\n filledColor = 'yellow',\n size = 'md',\n isReadOnly = false,\n isDisabled = false,\n label = 'Rating',\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: RatingProps): React.JSX.Element {\n if (process.env.NODE_ENV !== 'production') {\n if (!Number.isInteger(count) || count < 1) {\n throw new Error(\n `Rating: count must be a positive integer, received ${count}.`,\n );\n }\n\n if (\n valueFromProps < 0 ||\n valueFromProps > count ||\n !Number.isInteger(valueFromProps)\n ) {\n throw new Error(\n `Rating: value must be an integer in [0, ${count}], received ${valueFromProps}.`,\n );\n }\n }\n\n const value = Math.max(0, Math.min(count, Math.round(valueFromProps)));\n const groupId = useId();\n const [hoverValue, setHoverValue] = useState<number | null>(null);\n const isInteractive = !isReadOnly && !isDisabled && onChange != null;\n const displayValue = isInteractive ? (hoverValue ?? value) : value;\n const classes = ratingRecipe({\n isDisabled: isDisabled || undefined,\n isReadOnly: isReadOnly || undefined,\n });\n\n if (!isInteractive) {\n return (\n <div\n aria-label={`${label}: ${value} out of ${count}`}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n role=\"img\"\n style={style}>\n {Array.from({length: count}, (_, i) => (\n <span className={classes.star} key={i}>\n <StarIcon\n color={i < value ? filledColor : emptyColor}\n isFilled={i < value}\n size={size}\n />\n </span>\n ))}\n </div>\n );\n }\n\n return (\n // eslint-disable-next-line jsx-a11y-x/interactive-supports-focus -- focus is managed by the radio inputs inside\n <div\n aria-label={label}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n onMouseLeave={() => setHoverValue(null)}\n ref={ref}\n role=\"radiogroup\"\n style={style}>\n {Array.from({length: count}, (_, i) => {\n const starValue = i + 1;\n return (\n // eslint-disable-next-line jsx-a11y-x/no-noninteractive-element-interactions -- label wraps its radio input\n <label\n className={classes.star}\n key={i}\n onMouseEnter={() => setHoverValue(starValue)}>\n <input\n checked={value === starValue}\n className={classes.input}\n name={groupId}\n onChange={() => onChange(starValue)}\n type=\"radio\"\n value={starValue}\n />\n <VisuallyHidden>\n {starValue} {starValue === 1 ? 'star' : 'stars'}\n </VisuallyHidden>\n <StarIcon\n color={i < displayValue ? filledColor : emptyColor}\n isFilled={i < displayValue}\n size={size}\n />\n </label>\n );\n })}\n </div>\n );\n}\n\nRating.displayName = 'Rating';\n"]}
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var chunk5QPM5LUS_cjs = require('./chunk-5QPM5LUS.cjs');
3
+ var chunkZ6RT3WPE_cjs = require('./chunk-Z6RT3WPE.cjs');
4
4
  var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
5
5
  var react = require('react');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
7
 
8
8
  // src/components/Kbd/Kbd.recipe.ts
9
- var kbdRecipe = chunk5QPM5LUS_cjs.sva({
9
+ var kbdRecipe = chunkZ6RT3WPE_cjs.sva({
10
10
  slots: ["root", "key"],
11
11
  base: {
12
12
  root: {
@@ -155,5 +155,5 @@ function Kbd({
155
155
  Kbd.displayName = "Kbd";
156
156
 
157
157
  exports.Kbd = Kbd;
158
- //# sourceMappingURL=chunk-CPOYENSZ.cjs.map
159
- //# sourceMappingURL=chunk-CPOYENSZ.cjs.map
158
+ //# sourceMappingURL=chunk-O4PO6AMS.cjs.map
159
+ //# sourceMappingURL=chunk-O4PO6AMS.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Kbd/Kbd.recipe.ts","../src/components/Kbd/Kbd.tsx"],"names":["sva","useSyncExternalStore","useMemo","jsx","cx"],"mappings":"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","file":"chunk-CPOYENSZ.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const kbdRecipe = sva({\n slots: ['root', 'key'],\n base: {\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n verticalAlign: 'bottom',\n },\n key: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 'sm',\n bg: 'bg.subtle',\n borderBottomWidth: 'emphasized',\n borderBottomStyle: 'solid',\n borderBottomColor: 'border',\n color: 'fg.muted',\n fontFamily: 'body',\n fontWeight: 'medium',\n lineHeight: 'none',\n userSelect: 'none',\n },\n },\n variants: {\n size: {\n sm: {\n root: {gap: '0.5'},\n key: {minW: '4', h: '4', px: '0.5', fontSize: '2xs'},\n },\n md: {\n root: {gap: '1'},\n key: {minW: '5', h: '5', px: '1', fontSize: 'xs'},\n },\n lg: {\n root: {gap: '1.5'},\n key: {minW: '6', h: '6', px: '1.5', fontSize: 'sm'},\n },\n },\n },\n defaultVariants: {\n size: 'md',\n },\n});\n\nexport type KbdVariants = RecipeVariantProps<typeof kbdRecipe>;\n","import {\n useMemo,\n useSyncExternalStore,\n type CSSProperties,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport {kbdRecipe} from './Kbd.recipe';\n\nexport type KbdSize = 'sm' | 'md' | 'lg';\n\nexport interface KbdProps {\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Keyboard shortcut string. Use \"+\" to separate keys.\n *\n * Special keys: mod, ctrl, alt, shift, enter, backspace, escape, tab, up,\n * down, left, right, plus.\n */\n keys: string;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Size of the key badges.\n *\n * @default 'md'\n */\n size?: KbdSize;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n}\n\nconst keyDisplay: Record<string, string> = {\n alt: '⌥',\n backspace: '⌫',\n ctrl: '⌃',\n down: '↓',\n enter: '↵',\n escape: 'Esc',\n left: '←',\n plus: '+',\n right: '→',\n shift: '⇧',\n tab: '⇥',\n up: '↑',\n};\n\nconst keyLabel: Record<string, string> = {\n alt: 'Alt',\n backspace: 'Backspace',\n ctrl: 'Control',\n down: 'Down Arrow',\n enter: 'Enter',\n escape: 'Escape',\n left: 'Left Arrow',\n plus: 'Plus',\n right: 'Right Arrow',\n shift: 'Shift',\n tab: 'Tab',\n up: 'Up Arrow',\n};\n\nconst subscribePlatform = (): (() => void) => () => {};\n\nfunction getIsMacSnapshot(): boolean {\n if (typeof navigator === 'undefined') {\n return false;\n }\n const userAgentData =\n 'userAgentData' in navigator ? navigator.userAgentData : null;\n if (\n userAgentData != null &&\n typeof userAgentData === 'object' &&\n 'platform' in userAgentData\n ) {\n return /mac/i.test(String(userAgentData.platform));\n }\n return /Mac|iPhone|iPad|iPod/.test(navigator.platform);\n}\n\nfunction getServerSnapshot(): boolean {\n return false;\n}\n\nfunction useIsMac(): boolean {\n return useSyncExternalStore(\n subscribePlatform,\n getIsMacSnapshot,\n getServerSnapshot,\n );\n}\n\nfunction getKeyDisplay(key: string, isMac: boolean): string {\n if (key === 'mod') {\n return isMac ? '⌘' : 'Ctrl';\n }\n return keyDisplay[key] ?? key.toUpperCase();\n}\n\nfunction getKeyLabel(key: string, isMac: boolean): string {\n if (key === 'mod') {\n return isMac ? 'Command' : 'Control';\n }\n return keyLabel[key] ?? key.toUpperCase();\n}\n\n/**\n * Displays keyboard shortcuts as styled key badges.\n */\nexport function Kbd({\n className,\n 'data-testid': dataTestId,\n keys,\n ref,\n size = 'md',\n style,\n}: KbdProps): React.JSX.Element {\n const isMac = useIsMac();\n const {keyedParts, ariaLabel} = useMemo(() => {\n const parts = keys\n .split('+')\n .map(key => key.trim().toLowerCase())\n .filter(Boolean);\n\n if (process.env.NODE_ENV !== 'production' && parts.length === 0) {\n throw new Error(\n 'Kbd: `keys` prop resolved to zero keys. Check the value passed to `keys`.',\n );\n }\n\n const keyCounts = new Map<string, number>();\n return {\n keyedParts: parts.map(key => {\n const count = (keyCounts.get(key) ?? 0) + 1;\n keyCounts.set(key, count);\n return {id: `${key}-${count}`, display: getKeyDisplay(key, isMac)};\n }),\n ariaLabel: parts.map(key => getKeyLabel(key, isMac)).join('+'),\n };\n }, [keys, isMac]);\n\n const classes = kbdRecipe({size});\n\n return (\n <kbd\n aria-label={ariaLabel}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {keyedParts.map(part => (\n <kbd className={classes.key} key={part.id}>\n {part.display}\n </kbd>\n ))}\n </kbd>\n );\n}\n\nKbd.displayName = 'Kbd';\n"]}
1
+ {"version":3,"sources":["../src/components/Kbd/Kbd.recipe.ts","../src/components/Kbd/Kbd.tsx"],"names":["sva","useSyncExternalStore","useMemo","jsx","cx"],"mappings":";;;;;;;;AAEO,IAAM,YAAYA,qBAAA,CAAI;AAAA,EAC3B,KAAA,EAAO,CAAC,MAAA,EAAQ,KAAK,CAAA;AAAA,EACrB,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,MACJ,OAAA,EAAS,aAAA;AAAA,MACT,UAAA,EAAY,QAAA;AAAA,MACZ,UAAA,EAAY,CAAA;AAAA,MACZ,aAAA,EAAe;AAAA,KACjB;AAAA,IACA,GAAA,EAAK;AAAA,MACH,OAAA,EAAS,aAAA;AAAA,MACT,UAAA,EAAY,QAAA;AAAA,MACZ,cAAA,EAAgB,QAAA;AAAA,MAChB,YAAA,EAAc,IAAA;AAAA,MACd,EAAA,EAAI,WAAA;AAAA,MACJ,iBAAA,EAAmB,YAAA;AAAA,MACnB,iBAAA,EAAmB,OAAA;AAAA,MACnB,iBAAA,EAAmB,QAAA;AAAA,MACnB,KAAA,EAAO,UAAA;AAAA,MACP,UAAA,EAAY,MAAA;AAAA,MACZ,UAAA,EAAY,QAAA;AAAA,MACZ,UAAA,EAAY,MAAA;AAAA,MACZ,UAAA,EAAY;AAAA;AACd,GACF;AAAA,EACA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI;AAAA,QACF,IAAA,EAAM,EAAC,GAAA,EAAK,KAAA,EAAK;AAAA,QACjB,GAAA,EAAK,EAAC,IAAA,EAAM,GAAA,EAAK,GAAG,GAAA,EAAK,EAAA,EAAI,KAAA,EAAO,QAAA,EAAU,KAAA;AAAK,OACrD;AAAA,MACA,EAAA,EAAI;AAAA,QACF,IAAA,EAAM,EAAC,GAAA,EAAK,GAAA,EAAG;AAAA,QACf,GAAA,EAAK,EAAC,IAAA,EAAM,GAAA,EAAK,GAAG,GAAA,EAAK,EAAA,EAAI,GAAA,EAAK,QAAA,EAAU,IAAA;AAAI,OAClD;AAAA,MACA,EAAA,EAAI;AAAA,QACF,IAAA,EAAM,EAAC,GAAA,EAAK,KAAA,EAAK;AAAA,QACjB,GAAA,EAAK,EAAC,IAAA,EAAM,GAAA,EAAK,GAAG,GAAA,EAAK,EAAA,EAAI,KAAA,EAAO,QAAA,EAAU,IAAA;AAAI;AACpD;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM;AAAA;AAEV,CAAC,CAAA;ACHD,IAAM,UAAA,GAAqC;AAAA,EACzC,GAAA,EAAK,QAAA;AAAA,EACL,SAAA,EAAW,QAAA;AAAA,EACX,IAAA,EAAM,QAAA;AAAA,EACN,IAAA,EAAM,QAAA;AAAA,EACN,KAAA,EAAO,QAAA;AAAA,EACP,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,QAAA;AAAA,EACN,IAAA,EAAM,GAAA;AAAA,EACN,KAAA,EAAO,QAAA;AAAA,EACP,KAAA,EAAO,QAAA;AAAA,EACP,GAAA,EAAK,QAAA;AAAA,EACL,EAAA,EAAI;AACN,CAAA;AAEA,IAAM,QAAA,GAAmC;AAAA,EACvC,GAAA,EAAK,KAAA;AAAA,EACL,SAAA,EAAW,WAAA;AAAA,EACX,IAAA,EAAM,SAAA;AAAA,EACN,IAAA,EAAM,YAAA;AAAA,EACN,KAAA,EAAO,OAAA;AAAA,EACP,MAAA,EAAQ,QAAA;AAAA,EACR,IAAA,EAAM,YAAA;AAAA,EACN,IAAA,EAAM,MAAA;AAAA,EACN,KAAA,EAAO,aAAA;AAAA,EACP,KAAA,EAAO,OAAA;AAAA,EACP,GAAA,EAAK,KAAA;AAAA,EACL,EAAA,EAAI;AACN,CAAA;AAEA,IAAM,iBAAA,GAAoB,MAAoB,MAAM;AAAC,CAAA;AAErD,SAAS,gBAAA,GAA4B;AACnC,EAAA,IAAI,OAAO,cAAc,WAAA,EAAa;AACpC,IAAA,OAAO,KAAA;AAAA,EACT;AACA,EAAA,MAAM,aAAA,GACJ,eAAA,IAAmB,SAAA,GAAY,SAAA,CAAU,aAAA,GAAgB,IAAA;AAC3D,EAAA,IACE,iBAAiB,IAAA,IACjB,OAAO,aAAA,KAAkB,QAAA,IACzB,cAAc,aAAA,EACd;AACA,IAAA,OAAO,MAAA,CAAO,IAAA,CAAK,MAAA,CAAO,aAAA,CAAc,QAAQ,CAAC,CAAA;AAAA,EACnD;AACA,EAAA,OAAO,sBAAA,CAAuB,IAAA,CAAK,SAAA,CAAU,QAAQ,CAAA;AACvD;AAEA,SAAS,iBAAA,GAA6B;AACpC,EAAA,OAAO,KAAA;AACT;AAEA,SAAS,QAAA,GAAoB;AAC3B,EAAA,OAAOC,0BAAA;AAAA,IACL,iBAAA;AAAA,IACA,gBAAA;AAAA,IACA;AAAA,GACF;AACF;AAEA,SAAS,aAAA,CAAc,KAAa,KAAA,EAAwB;AAC1D,EAAA,IAAI,QAAQ,KAAA,EAAO;AACjB,IAAA,OAAO,QAAQ,QAAA,GAAM,MAAA;AAAA,EACvB;AACA,EAAA,OAAO,UAAA,CAAW,GAAG,CAAA,IAAK,GAAA,CAAI,WAAA,EAAY;AAC5C;AAEA,SAAS,WAAA,CAAY,KAAa,KAAA,EAAwB;AACxD,EAAA,IAAI,QAAQ,KAAA,EAAO;AACjB,IAAA,OAAO,QAAQ,SAAA,GAAY,SAAA;AAAA,EAC7B;AACA,EAAA,OAAO,QAAA,CAAS,GAAG,CAAA,IAAK,GAAA,CAAI,WAAA,EAAY;AAC1C;AAKO,SAAS,GAAA,CAAI;AAAA,EAClB,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,IAAA;AAAA,EACA,GAAA;AAAA,EACA,IAAA,GAAO,IAAA;AAAA,EACP;AACF,CAAA,EAAgC;AAC9B,EAAA,MAAM,QAAQ,QAAA,EAAS;AACvB,EAAA,MAAM,EAAC,UAAA,EAAY,SAAA,EAAS,GAAIC,cAAQ,MAAM;AAC5C,IAAA,MAAM,KAAA,GAAQ,IAAA,CACX,KAAA,CAAM,GAAG,EACT,GAAA,CAAI,CAAA,GAAA,KAAO,GAAA,CAAI,IAAA,EAAK,CAAE,WAAA,EAAa,CAAA,CACnC,OAAO,OAAO,CAAA;AAEjB,IAAA,IAAI,QAAQ,GAAA,CAAI,QAAA,KAAa,YAAA,IAAgB,KAAA,CAAM,WAAW,CAAA,EAAG;AAC/D,MAAA,MAAM,IAAI,KAAA;AAAA,QACR;AAAA,OACF;AAAA,IACF;AAEA,IAAA,MAAM,SAAA,uBAAgB,GAAA,EAAoB;AAC1C,IAAA,OAAO;AAAA,MACL,UAAA,EAAY,KAAA,CAAM,GAAA,CAAI,CAAA,GAAA,KAAO;AAC3B,QAAA,MAAM,KAAA,GAAA,CAAS,SAAA,CAAU,GAAA,CAAI,GAAG,KAAK,CAAA,IAAK,CAAA;AAC1C,QAAA,SAAA,CAAU,GAAA,CAAI,KAAK,KAAK,CAAA;AACxB,QAAA,OAAO,EAAC,EAAA,EAAI,CAAA,EAAG,GAAG,CAAA,CAAA,EAAI,KAAK,CAAA,CAAA,EAAI,OAAA,EAAS,aAAA,CAAc,GAAA,EAAK,KAAK,CAAA,EAAC;AAAA,MACnE,CAAC,CAAA;AAAA,MACD,SAAA,EAAW,KAAA,CAAM,GAAA,CAAI,CAAA,GAAA,KAAO,WAAA,CAAY,KAAK,KAAK,CAAC,CAAA,CAAE,IAAA,CAAK,GAAG;AAAA,KAC/D;AAAA,EACF,CAAA,EAAG,CAAC,IAAA,EAAM,KAAK,CAAC,CAAA;AAEhB,EAAA,MAAM,OAAA,GAAU,SAAA,CAAU,EAAC,IAAA,EAAK,CAAA;AAEhC,EAAA,uBACEC,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,SAAA;AAAA,MACZ,SAAA,EAAWC,oBAAA,CAAG,OAAA,CAAQ,IAAA,EAAM,SAAS,CAAA;AAAA,MACrC,aAAA,EAAa,UAAA;AAAA,MACb,GAAA;AAAA,MACA,KAAA;AAAA,MACC,QAAA,EAAA,UAAA,CAAW,GAAA,CAAI,CAAA,IAAA,qBACdD,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,OAAA,CAAQ,GAAA,EACrB,QAAA,EAAA,IAAA,CAAK,OAAA,EAAA,EAD0B,IAAA,CAAK,EAEvC,CACD;AAAA;AAAA,GACH;AAEJ;AAEA,GAAA,CAAI,WAAA,GAAc,KAAA","file":"chunk-O4PO6AMS.cjs","sourcesContent":["import {sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const kbdRecipe = sva({\n slots: ['root', 'key'],\n base: {\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n verticalAlign: 'bottom',\n },\n key: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 'sm',\n bg: 'bg.subtle',\n borderBottomWidth: 'emphasized',\n borderBottomStyle: 'solid',\n borderBottomColor: 'border',\n color: 'fg.muted',\n fontFamily: 'body',\n fontWeight: 'medium',\n lineHeight: 'none',\n userSelect: 'none',\n },\n },\n variants: {\n size: {\n sm: {\n root: {gap: '0.5'},\n key: {minW: '4', h: '4', px: '0.5', fontSize: '2xs'},\n },\n md: {\n root: {gap: '1'},\n key: {minW: '5', h: '5', px: '1', fontSize: 'xs'},\n },\n lg: {\n root: {gap: '1.5'},\n key: {minW: '6', h: '6', px: '1.5', fontSize: 'sm'},\n },\n },\n },\n defaultVariants: {\n size: 'md',\n },\n});\n\nexport type KbdVariants = RecipeVariantProps<typeof kbdRecipe>;\n","import {\n useMemo,\n useSyncExternalStore,\n type CSSProperties,\n type Ref,\n} from 'react';\nimport {kbdRecipe} from 'components/Kbd/Kbd.recipe';\nimport {cx} from 'internal/cx';\n\nexport type KbdSize = 'sm' | 'md' | 'lg';\n\nexport interface KbdProps {\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Keyboard shortcut string. Use \"+\" to separate keys.\n *\n * Special keys: mod, ctrl, alt, shift, enter, backspace, escape, tab, up,\n * down, left, right, plus.\n */\n keys: string;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Size of the key badges.\n *\n * @default 'md'\n */\n size?: KbdSize;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n}\n\nconst keyDisplay: Record<string, string> = {\n alt: '⌥',\n backspace: '⌫',\n ctrl: '⌃',\n down: '↓',\n enter: '↵',\n escape: 'Esc',\n left: '←',\n plus: '+',\n right: '→',\n shift: '⇧',\n tab: '⇥',\n up: '↑',\n};\n\nconst keyLabel: Record<string, string> = {\n alt: 'Alt',\n backspace: 'Backspace',\n ctrl: 'Control',\n down: 'Down Arrow',\n enter: 'Enter',\n escape: 'Escape',\n left: 'Left Arrow',\n plus: 'Plus',\n right: 'Right Arrow',\n shift: 'Shift',\n tab: 'Tab',\n up: 'Up Arrow',\n};\n\nconst subscribePlatform = (): (() => void) => () => {};\n\nfunction getIsMacSnapshot(): boolean {\n if (typeof navigator === 'undefined') {\n return false;\n }\n const userAgentData =\n 'userAgentData' in navigator ? navigator.userAgentData : null;\n if (\n userAgentData != null &&\n typeof userAgentData === 'object' &&\n 'platform' in userAgentData\n ) {\n return /mac/i.test(String(userAgentData.platform));\n }\n return /Mac|iPhone|iPad|iPod/.test(navigator.platform);\n}\n\nfunction getServerSnapshot(): boolean {\n return false;\n}\n\nfunction useIsMac(): boolean {\n return useSyncExternalStore(\n subscribePlatform,\n getIsMacSnapshot,\n getServerSnapshot,\n );\n}\n\nfunction getKeyDisplay(key: string, isMac: boolean): string {\n if (key === 'mod') {\n return isMac ? '⌘' : 'Ctrl';\n }\n return keyDisplay[key] ?? key.toUpperCase();\n}\n\nfunction getKeyLabel(key: string, isMac: boolean): string {\n if (key === 'mod') {\n return isMac ? 'Command' : 'Control';\n }\n return keyLabel[key] ?? key.toUpperCase();\n}\n\n/**\n * Displays keyboard shortcuts as styled key badges.\n */\nexport function Kbd({\n className,\n 'data-testid': dataTestId,\n keys,\n ref,\n size = 'md',\n style,\n}: KbdProps): React.JSX.Element {\n const isMac = useIsMac();\n const {keyedParts, ariaLabel} = useMemo(() => {\n const parts = keys\n .split('+')\n .map(key => key.trim().toLowerCase())\n .filter(Boolean);\n\n if (process.env.NODE_ENV !== 'production' && parts.length === 0) {\n throw new Error(\n 'Kbd: `keys` prop resolved to zero keys. Check the value passed to `keys`.',\n );\n }\n\n const keyCounts = new Map<string, number>();\n return {\n keyedParts: parts.map(key => {\n const count = (keyCounts.get(key) ?? 0) + 1;\n keyCounts.set(key, count);\n return {id: `${key}-${count}`, display: getKeyDisplay(key, isMac)};\n }),\n ariaLabel: parts.map(key => getKeyLabel(key, isMac)).join('+'),\n };\n }, [keys, isMac]);\n\n const classes = kbdRecipe({size});\n\n return (\n <kbd\n aria-label={ariaLabel}\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {keyedParts.map(part => (\n <kbd className={classes.key} key={part.id}>\n {part.display}\n </kbd>\n ))}\n </kbd>\n );\n}\n\nKbd.displayName = 'Kbd';\n"]}
@@ -1,17 +1,17 @@
1
- import { Tag } from './chunk-M3IKL2VG.js';
1
+ import { Tag } from './chunk-KC4EKXGF.js';
2
2
  import { inputStyles, inputRecipe } from './chunk-3M23WX6K.js';
3
- import { getNecessity, Field } from './chunk-ASJ5CBCR.js';
4
- import { getStatusMessageID, getDescribedBy } from './chunk-WOIWI2UO.js';
5
- import { Popover } from './chunk-VEUZ5DZR.js';
6
- import { Button } from './chunk-RVENUWRD.js';
7
- import { Spinner } from './chunk-DSB4Q3AS.js';
8
- import { Text } from './chunk-76B2VLID.js';
3
+ import { getNecessity, Field } from './chunk-6J326CN6.js';
4
+ import { getStatusMessageID, getDescribedBy } from './chunk-G6HS52US.js';
5
+ import { Popover } from './chunk-S5CMLG2E.js';
6
+ import { Button } from './chunk-THTVYP5V.js';
7
+ import { Spinner } from './chunk-2VAUVJVG.js';
8
+ import { Text } from './chunk-RJEZBOSH.js';
9
9
  import { mergeRefs } from './chunk-SGLIDI6R.js';
10
10
  import { isReactNode } from './chunk-2PSZAWLC.js';
11
- import { Icon } from './chunk-7T3SWOY7.js';
12
- import { sva } from './chunk-EHCAF6D3.js';
13
- import { cx } from './chunk-PPNETWIP.js';
11
+ import { Icon } from './chunk-IUW777WZ.js';
12
+ import { sva } from './chunk-IAVZKGZS.js';
14
13
  import { css } from './chunk-OD4DHHZH.js';
14
+ import { cx } from './chunk-PPNETWIP.js';
15
15
  import { LoaderCircle, Check, X } from 'lucide-react';
16
16
  import { useId, useRef, useState, useCallback, useEffect, useMemo } from 'react';
17
17
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
@@ -454,7 +454,7 @@ function BaseAutocompleteInput({
454
454
  content: menu,
455
455
  hasAutoFocus: false,
456
456
  hasCloseButton: false,
457
- hasLightDismiss: false,
457
+ isDismissable: false,
458
458
  isOpen,
459
459
  onOpenChange: setOpen
460
460
  }
@@ -650,7 +650,7 @@ function AutocompleteInput({
650
650
  AutocompleteInput.displayName = "AutocompleteInput";
651
651
 
652
652
  // src/components/AutocompleteInput/types.ts
653
- function createStaticSource(items, options) {
653
+ function createStaticSearchSource(items, options) {
654
654
  return {
655
655
  bootstrap: () => items,
656
656
  search(query) {
@@ -662,12 +662,12 @@ function createStaticSource(items, options) {
662
662
  if (item.label.toLowerCase().includes(normalizedQuery)) {
663
663
  return true;
664
664
  }
665
- return options?.keywords?.(item).some((keyword) => keyword.toLowerCase().includes(normalizedQuery)) ?? false;
665
+ return options?.getKeywords?.(item).some((keyword) => keyword.toLowerCase().includes(normalizedQuery)) ?? false;
666
666
  });
667
667
  }
668
668
  };
669
669
  }
670
670
 
671
- export { AutocompleteInput, AutocompleteInputItem, BaseAutocompleteInput, createStaticSource };
672
- //# sourceMappingURL=chunk-HNROO7CR.js.map
673
- //# sourceMappingURL=chunk-HNROO7CR.js.map
671
+ export { AutocompleteInput, AutocompleteInputItem, BaseAutocompleteInput, createStaticSearchSource };
672
+ //# sourceMappingURL=chunk-OERNLR2P.js.map
673
+ //# sourceMappingURL=chunk-OERNLR2P.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/AutocompleteInput/AutocompleteInput.recipe.ts","../src/components/AutocompleteInput/AutocompleteInputItem.tsx","../src/components/AutocompleteInput/BaseAutocompleteInput.tsx","../src/components/AutocompleteInput/AutocompleteInput.tsx","../src/components/AutocompleteInput/types.ts"],"names":["jsx","jsxs","Fragment","styles","useId","useRef","useState","useCallback"],"mappings":"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","file":"chunk-OERNLR2P.js","sourcesContent":["import {css, sva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const autocompleteMenuRecipe = sva({\n slots: ['menu', 'option', 'check', 'loading', 'empty'],\n base: {\n menu: {\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n maxH: '80',\n overflowY: 'auto',\n p: '1',\n },\n option: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: '2',\n w: 'full',\n borderWidth: 0,\n borderRadius: 'md',\n bg: 'transparent',\n color: 'fg',\n cursor: 'pointer',\n fontFamily: 'body',\n textAlign: 'start',\n _hover: {bg: 'bg.subtle'},\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffsetTight',\n },\n },\n check: {\n display: 'inline-flex',\n flexShrink: 0,\n color: 'primary',\n },\n loading: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n p: '2',\n color: 'fg.muted',\n '& > svg': {\n animation: 'spin 0.8s linear infinite',\n },\n '@media (prefers-reduced-motion: reduce)': {\n '& > svg': {animation: 'none'},\n },\n },\n empty: {\n p: '3',\n textAlign: 'center',\n },\n },\n variants: {\n size: {\n sm: {option: {px: '2', py: '1'}},\n md: {option: {px: '2', py: '2'}},\n lg: {option: {px: '3', py: '2.5'}},\n },\n },\n defaultVariants: {\n size: 'md',\n },\n});\n\nexport type AutocompleteMenuVariants = RecipeVariantProps<\n typeof autocompleteMenuRecipe\n>;\n\n/**\n * Per-option state styles applied via `cx()` since they vary per-row\n * rather than per-component instance.\n */\nexport const optionHighlightedStyle = css({bg: 'bg.subtle'});\nexport const optionSelectedStyle = css({fontWeight: 'medium'});\n\nexport const autocompleteItemRecipe = sva({\n slots: ['root', 'icon', 'text'],\n base: {\n root: {\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n minW: 0,\n },\n icon: {\n display: 'inline-flex',\n flexShrink: 0,\n color: 'fg.muted',\n },\n text: {\n display: 'flex',\n flexDirection: 'column',\n minW: 0,\n },\n },\n variants: {\n isDisabled: {\n true: {root: {opacity: 0.55}},\n false: {},\n },\n },\n defaultVariants: {\n isDisabled: false,\n },\n});\n\nexport type AutocompleteItemVariants = RecipeVariantProps<\n typeof autocompleteItemRecipe\n>;\n","/* eslint-disable silver-ui/require-component-props -- discriminated union: custom-element items render item.element directly; passthrough props only apply to standard items */\nimport type {CSSProperties, ReactNode, Ref} from 'react';\nimport {autocompleteItemRecipe} from 'components/AutocompleteInput/AutocompleteInput.recipe';\nimport type {SearchableItem} from 'components/AutocompleteInput/types';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport {Text} from 'components/Text';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\n\n/**\n * Props for an item with a custom `element`. The element is rendered\n * directly — layout props like `icon` and `description` do not apply.\n */\ninterface AutocompleteInputCustomItemProps {\n /**\n * Search result item with custom element content.\n */\n item: SearchableItem & {element: ReactNode};\n}\n\n/**\n * Props for a standard item rendered with the default layout.\n */\ninterface AutocompleteInputStandardItemProps {\n /**\n * Additional CSS class names applied to the item layout.\n */\n className?: string;\n /**\n * Test ID applied to the item layout.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: ReactNode;\n /**\n * Icon or avatar rendered before the label.\n */\n icon?: IconComponent;\n /**\n * Whether the item is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Search result item without a custom element.\n */\n item: SearchableItem & {element?: undefined};\n /**\n * Ref forwarded to the item layout.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the item layout.\n */\n style?: CSSProperties;\n}\n\nexport type AutocompleteInputItemProps =\n | AutocompleteInputCustomItemProps\n | AutocompleteInputStandardItemProps;\n\n/**\n * Default layout for AutocompleteInput and TagsInput result rows.\n *\n * When the item has a pre-rendered `element`, it is returned directly.\n * Otherwise the component renders a flex row with an optional icon,\n * primary label, and description.\n */\nexport function AutocompleteInputItem(\n props: AutocompleteInputItemProps,\n): React.JSX.Element {\n if (isReactNode(props.item.element)) {\n return <>{props.item.element}</>;\n }\n\n const {\n className,\n 'data-testid': dataTestId,\n description,\n icon,\n isDisabled = false,\n item,\n ref,\n style,\n } = props as AutocompleteInputStandardItemProps;\n\n const classes = autocompleteItemRecipe({isDisabled});\n\n return (\n <div\n className={cx(classes.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {icon != null ? (\n <span className={classes.icon}>\n <Icon color=\"secondary\" icon={icon} size=\"sm\" />\n </span>\n ) : null}\n <span className={classes.text}>\n <Text as=\"span\" color=\"inherit\" type=\"label\">\n {item.label}\n </Text>\n {isReactNode(description) ? (\n <Text as=\"span\" color=\"secondary\" type=\"supporting\">\n {description}\n </Text>\n ) : null}\n </span>\n </div>\n );\n}\n\nAutocompleteInputItem.displayName = 'AutocompleteInputItem';\n","import {Check, LoaderCircle} from 'lucide-react';\nimport {\n useCallback,\n useEffect,\n useId,\n useRef,\n useState,\n type CSSProperties,\n type KeyboardEvent,\n type ReactNode,\n type Ref,\n type RefObject,\n} from 'react';\nimport {\n autocompleteMenuRecipe,\n optionHighlightedStyle,\n optionSelectedStyle,\n} from 'components/AutocompleteInput/AutocompleteInput.recipe';\nimport {AutocompleteInputItem} from 'components/AutocompleteInput/AutocompleteInputItem';\nimport type {\n SearchableItem,\n SearchSource,\n} from 'components/AutocompleteInput/types';\nimport {Icon} from 'components/Icon';\nimport {Popover} from 'components/Popover';\nimport {Spinner} from 'components/Spinner';\nimport {Text} from 'components/Text';\nimport {cx} from 'internal/cx';\nimport {mergeRefs} from 'internal/mergeRefs';\nimport {css} from 'styled-system/css';\n\nexport interface BaseAutocompleteInputProps<T extends SearchableItem> {\n /**\n * Ref to the element the result popover should align to.\n */\n anchorRef?: RefObject<HTMLElement | null>;\n /**\n * IDs describing the input.\n */\n ariaDescribedBy?: string;\n /**\n * Additional CSS class names applied to the input.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Debounce delay in milliseconds before search runs.\n * @default 150\n */\n debounceMs?: number;\n /**\n * Empty state text.\n * @default 'No results found'\n */\n emptySearchResultsText?: string;\n /**\n * Text shown in the menu when a search fails.\n * @default 'Something went wrong'\n */\n errorText?: string;\n /**\n * Whether to focus the input on mount.\n * @default false\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show bootstrap results on focus before typing.\n * @default false\n */\n hasEntriesOnFocus?: boolean;\n /**\n * Whether to re-bootstrap results after selecting an item. Useful for\n * multi-select comboboxes where the user picks several items in a row.\n * @default false\n */\n hasReopenOnSelect?: boolean;\n /**\n * Optional ID for the input.\n */\n inputId?: string;\n /**\n * Whether the input is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether the input is required.\n * @default false\n */\n isRequired?: boolean;\n /**\n * Maximum number of menu items.\n * @default 10\n */\n maxMenuItems?: number;\n /**\n * Called when a result is selected.\n */\n onChange: (item: T | null) => void;\n /**\n * Keyboard handler invoked before internal navigation.\n */\n onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;\n /**\n * Called when the result popover opens or closes.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Called when the query changes.\n */\n onQueryChange: (query: string) => void;\n /**\n * Placeholder text.\n * @default 'Search...'\n */\n placeholder?: string;\n /**\n * Current query string.\n */\n query: string;\n /**\n * Ref forwarded to the input.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Custom result renderer.\n */\n renderItem?: (item: T) => ReactNode;\n /**\n * Provides results for the menu. Use `createStaticSearchSource` for\n * in-memory data, or implement {@link SearchSource} for async/remote\n * search.\n */\n searchSource: SearchSource<T>;\n /**\n * Visual size.\n * @default 'md'\n */\n size?: 'sm' | 'md' | 'lg';\n /**\n * Inline styles applied to the input.\n */\n style?: CSSProperties;\n /**\n * Selected item.\n */\n value: T | null;\n}\n\nconst styles = {\n input: css({\n display: 'block',\n flex: 1,\n minW: '15',\n borderWidth: 0,\n p: 0,\n fontFamily: 'body',\n fontSize: 'md',\n lineHeight: 'normal',\n color: 'fg',\n bg: 'transparent',\n outline: 'none',\n _placeholder: {color: 'fg.muted'},\n _disabled: {cursor: 'not-allowed'},\n }),\n} as const;\n\n/**\n * Internal combobox engine used by AutocompleteInput and TagsInput.\n */\nexport function BaseAutocompleteInput<T extends SearchableItem>({\n anchorRef,\n ariaDescribedBy,\n className,\n 'data-testid': dataTestId,\n debounceMs = 150,\n emptySearchResultsText = 'No results found',\n errorText = 'Something went wrong',\n hasAutoFocus = false,\n hasEntriesOnFocus = false,\n hasReopenOnSelect = false,\n inputId,\n isDisabled = false,\n isRequired = false,\n maxMenuItems = 10,\n onChange,\n onKeyDown,\n onOpenChange,\n onQueryChange,\n placeholder = 'Search...',\n query,\n ref,\n renderItem,\n searchSource,\n size = 'md',\n style,\n value,\n}: BaseAutocompleteInputProps<T>): React.JSX.Element {\n const generatedId = useId();\n const listboxId = useId();\n const resolvedInputId = inputId ?? generatedId;\n const inputRef = useRef<HTMLInputElement>(null);\n const fallbackAnchorRef = useRef<HTMLInputElement>(null);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const generationRef = useRef(0);\n const [results, setResults] = useState<T[]>([]);\n const [highlightedIndex, setHighlightedIndex] = useState(-1);\n const [isLoading, setIsLoading] = useState(false);\n const [hasSearched, setHasSearched] = useState(false);\n const [hasError, setHasError] = useState(false);\n const [isOpen, setIsOpen] = useState(false);\n const selectingRef = useRef(false);\n\n const setOpen = useCallback(\n (isNextOpen: boolean) => {\n setIsOpen(isNextOpen);\n onOpenChange?.(isNextOpen);\n if (!isNextOpen) {\n searchSource.cancel?.();\n setHighlightedIndex(-1);\n }\n },\n [onOpenChange, searchSource],\n );\n\n const showMenu = useCallback(() => {\n setOpen(true);\n }, [setOpen]);\n\n const runSearch = useCallback(\n async (nextQuery: string, kind: 'bootstrap' | 'search') => {\n const generation = ++generationRef.current;\n searchSource.cancel?.();\n setIsLoading(true);\n setHasSearched(true);\n setHasError(false);\n\n try {\n const nextResults =\n kind === 'bootstrap'\n ? await searchSource.bootstrap()\n : await searchSource.search(nextQuery);\n if (generationRef.current !== generation) {\n return;\n }\n const limitedResults = nextResults.slice(0, maxMenuItems);\n setResults(limitedResults);\n setHighlightedIndex(limitedResults.length > 0 ? 0 : -1);\n if (limitedResults.length > 0 || nextQuery !== '') {\n showMenu();\n } else {\n setOpen(false);\n }\n } catch {\n if (generationRef.current === generation) {\n setResults([]);\n setHighlightedIndex(-1);\n setHasError(true);\n showMenu();\n }\n } finally {\n if (generationRef.current === generation) {\n setIsLoading(false);\n }\n }\n },\n [maxMenuItems, searchSource, setOpen, showMenu],\n );\n\n const updateQuery = useCallback(\n (nextQuery: string) => {\n onQueryChange(nextQuery);\n\n if (timeoutRef.current != null) {\n clearTimeout(timeoutRef.current);\n }\n\n if (nextQuery === '' && !hasEntriesOnFocus) {\n generationRef.current++;\n searchSource.cancel?.();\n setResults([]);\n setHasSearched(false);\n setHasError(false);\n setIsLoading(false);\n setOpen(false);\n return;\n }\n\n const searchKind = nextQuery === '' ? 'bootstrap' : 'search';\n if (debounceMs <= 0) {\n void runSearch(nextQuery, searchKind);\n return;\n }\n\n timeoutRef.current = setTimeout(() => {\n void runSearch(nextQuery, searchKind);\n }, debounceMs);\n },\n [\n debounceMs,\n hasEntriesOnFocus,\n onQueryChange,\n runSearch,\n searchSource,\n setOpen,\n ],\n );\n\n const selectItem = useCallback(\n (item: T) => {\n generationRef.current++;\n if (timeoutRef.current != null) {\n clearTimeout(timeoutRef.current);\n }\n searchSource.cancel?.();\n onQueryChange('');\n setResults([]);\n setHasSearched(false);\n setHasError(false);\n setIsLoading(false);\n onChange(item);\n selectingRef.current = true;\n inputRef.current?.focus();\n selectingRef.current = false;\n if (hasReopenOnSelect && hasEntriesOnFocus) {\n void runSearch('', 'bootstrap');\n } else {\n setOpen(false);\n }\n },\n [\n hasEntriesOnFocus,\n hasReopenOnSelect,\n onChange,\n onQueryChange,\n runSearch,\n searchSource,\n setOpen,\n ],\n );\n\n useEffect(() => {\n return () => {\n if (timeoutRef.current != null) {\n clearTimeout(timeoutRef.current);\n }\n searchSource.cancel?.();\n };\n }, [searchSource]);\n\n const menuClasses = autocompleteMenuRecipe({size});\n\n const menu = (\n <div\n aria-label=\"Search results\"\n className={menuClasses.menu}\n id={listboxId}\n role=\"listbox\">\n {isLoading ? (\n <div className={menuClasses.loading} role=\"status\">\n <Icon icon={LoaderCircle} size=\"sm\" />\n <Text as=\"span\" color=\"secondary\" type=\"supporting\">\n Loading\n </Text>\n </div>\n ) : hasError ? (\n <div className={menuClasses.empty} role=\"alert\">\n <Text as=\"span\" color=\"secondary\" type=\"supporting\">\n {errorText}\n </Text>\n </div>\n ) : results.length === 0 && hasSearched ? (\n <div className={menuClasses.empty}>\n <Text as=\"span\" color=\"secondary\" type=\"supporting\">\n {emptySearchResultsText}\n </Text>\n </div>\n ) : (\n results.map((item, index) => {\n const isSelected = value?.id === item.id;\n return (\n // eslint-disable-next-line jsx-a11y-x/click-events-have-key-events -- keyboard navigation is handled by the combobox input, not individual options\n <div\n aria-selected={isSelected}\n className={cx(\n menuClasses.option,\n index === highlightedIndex ? optionHighlightedStyle : undefined,\n isSelected ? optionSelectedStyle : undefined,\n )}\n id={`${listboxId}-option-${index}`}\n key={item.id}\n onClick={() => selectItem(item)}\n onMouseEnter={() => setHighlightedIndex(index)}\n role=\"option\"\n tabIndex={-1}>\n {renderItem == null ? (\n <AutocompleteInputItem item={item} />\n ) : (\n renderItem(item)\n )}\n {isSelected ? (\n <span className={menuClasses.check}>\n <Icon color=\"accent\" icon={Check} size=\"sm\" />\n </span>\n ) : null}\n </div>\n );\n })\n )}\n </div>\n );\n\n return (\n <>\n <input\n aria-activedescendant={\n isOpen && highlightedIndex >= 0\n ? `${listboxId}-option-${highlightedIndex}`\n : undefined\n }\n aria-autocomplete=\"list\"\n aria-controls={listboxId}\n aria-describedby={ariaDescribedBy}\n aria-expanded={isOpen}\n aria-required={isRequired || undefined}\n autoComplete=\"off\"\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={cx(styles.input, className)}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={isDisabled}\n id={resolvedInputId}\n onBlur={() => {\n // Defer so we can check whether focus moved to an option inside\n // the popover (e.g. the user clicked a result). If focus left\n // both the input and the popover, close the menu.\n requestAnimationFrame(() => {\n if (\n !inputRef.current?.contains(document.activeElement) &&\n !document.activeElement?.closest('[role=\"listbox\"]')\n ) {\n setOpen(false);\n }\n });\n }}\n onChange={event => updateQuery(event.target.value)}\n onFocus={() => {\n if (selectingRef.current) {\n return;\n }\n if (query !== '' && results.length === 0) {\n void runSearch(query, 'search');\n } else if (\n hasEntriesOnFocus &&\n query === '' &&\n results.length === 0\n ) {\n void runSearch('', 'bootstrap');\n } else if (results.length > 0) {\n showMenu();\n }\n }}\n onKeyDown={event => {\n onKeyDown?.(event);\n if (event.defaultPrevented) {\n return;\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n if (!isOpen) {\n if (results.length > 0) {\n showMenu();\n } else if (hasEntriesOnFocus) {\n void runSearch('', 'bootstrap');\n }\n return;\n }\n setHighlightedIndex(index =>\n results.length === 0 ? -1 : (index + 1) % results.length,\n );\n } else if (event.key === 'ArrowUp') {\n event.preventDefault();\n setHighlightedIndex(index =>\n results.length === 0\n ? -1\n : (index - 1 + results.length) % results.length,\n );\n } else if (\n event.key === 'Enter' &&\n isOpen &&\n highlightedIndex >= 0 &&\n highlightedIndex < results.length\n ) {\n event.preventDefault();\n selectItem(results[highlightedIndex]);\n } else if (event.key === 'Escape' && isOpen) {\n event.preventDefault();\n setOpen(false);\n }\n }}\n placeholder={placeholder}\n ref={mergeRefs(ref, inputRef, fallbackAnchorRef)}\n role=\"combobox\"\n style={style}\n type=\"text\"\n value={query}\n />\n {isLoading ? <Spinner size=\"sm\" /> : null}\n <Popover\n anchorRef={anchorRef ?? fallbackAnchorRef}\n content={menu}\n hasAutoFocus={false}\n hasCloseButton={false}\n isDismissable={false}\n isOpen={isOpen}\n onOpenChange={setOpen}\n />\n </>\n );\n}\n\nBaseAutocompleteInput.displayName = 'BaseAutocompleteInput';\n","import {X} from 'lucide-react';\nimport {\n useCallback,\n useId,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {BaseAutocompleteInput} from 'components/AutocompleteInput/BaseAutocompleteInput';\nimport type {\n SearchableItem,\n SearchSource,\n} from 'components/AutocompleteInput/types';\nimport {Button} from 'components/Button';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from 'components/Field';\nimport {inputRecipe, inputStyles} from 'components/Field/inputStyles';\nimport {getDescribedBy, getStatusMessageID} from 'components/Field/inputUtils';\nimport {Icon, type IconComponent} from 'components/Icon';\nimport {Tag} from 'components/Tag';\nimport {cx} from 'internal/cx';\nimport isReactNode from 'internal/isReactNode';\nimport {css} from 'styled-system/css';\n\nexport type AutocompleteInputProps<T extends SearchableItem = SearchableItem> =\n {\n /**\n * Additional CSS class names applied to the input wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the input wrapper.\n */\n 'data-testid'?: string;\n /**\n * Debounce delay in milliseconds before search runs.\n * @default 150\n */\n debounceMs?: number;\n /**\n * Supporting text rendered below the label.\n */\n description?: ReactNode;\n /**\n * Empty state text.\n * @default 'No results found'\n */\n emptySearchResultsText?: string;\n /**\n * Text shown in the menu when a search fails.\n * @default 'Something went wrong'\n */\n errorText?: string;\n /**\n * Whether to focus the input on mount.\n * @default false\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a clear button when a value is selected.\n * @default true\n */\n hasClear?: boolean;\n /**\n * Whether to show bootstrap results on focus before typing.\n * @default false\n */\n hasEntriesOnFocus?: boolean;\n /**\n * Whether the input is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n * @default false\n */\n isLabelHidden?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Maximum number of menu items.\n * @default 10\n */\n maxMenuItems?: number;\n /**\n * Called when selection changes.\n */\n onChange: (item: T | null) => void;\n /**\n * Called when the result popover opens or closes.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Called when the query changes.\n */\n onQueryChange?: (query: string) => void;\n /**\n * Placeholder text.\n */\n placeholder?: string;\n /**\n * Ref forwarded to the field root.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Custom result renderer.\n */\n renderItem?: (item: T) => ReactNode;\n /**\n * Provides results for the menu. Use `createStaticSearchSource` for\n * in-memory data, or implement {@link SearchSource} for async/remote\n * search.\n */\n searchSource: SearchSource<T>;\n /**\n * Visual size.\n * @default 'md'\n */\n size?: InputSize;\n /**\n * Icon shown before the input.\n */\n startIcon?: IconComponent;\n /**\n * Validation status displayed below the selector.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the input wrapper.\n */\n style?: CSSProperties;\n /**\n * Selected item.\n */\n value: T | null;\n } & FieldNecessity;\n\nconst styles = {\n wrapper: css({\n cursor: 'text',\n flexWrap: 'wrap',\n }),\n tag: css({\n my: '-1',\n ms: '-1',\n }),\n inputHidden: css({\n position: 'absolute',\n opacity: 0,\n w: 0,\n minW: 0,\n flexBasis: 0,\n }),\n clearButton: css({\n ms: 'auto',\n }),\n} as const;\n\n/**\n * Search-as-you-type field for selecting a single item from a search source.\n */\nexport function AutocompleteInput<T extends SearchableItem>({\n className,\n 'data-testid': dataTestId,\n debounceMs,\n description,\n emptySearchResultsText,\n errorText,\n hasAutoFocus = false,\n hasClear = true,\n hasEntriesOnFocus = false,\n isDisabled = false,\n isLabelHidden = false,\n isOptional,\n isRequired,\n label,\n labelIcon,\n labelTooltip,\n maxMenuItems,\n onChange,\n onOpenChange,\n onQueryChange,\n placeholder,\n ref,\n renderItem,\n searchSource,\n size = 'md',\n startIcon,\n status,\n style,\n value,\n}: AutocompleteInputProps<T>): React.JSX.Element {\n const inputId = useId();\n const descriptionID = isReactNode(description)\n ? `${inputId}-description`\n : undefined;\n const statusMessageID = getStatusMessageID(inputId, status);\n const describedBy = getDescribedBy(descriptionID, statusMessageID);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const [isEditing, setIsEditing] = useState(false);\n const [queryValue, setQueryValue] = useState('');\n const showTag = value != null && !isEditing;\n const fieldStatus = useMemo(\n () =>\n status == null ? undefined : {...status, messageID: statusMessageID},\n [status, statusMessageID],\n );\n\n const necessity = getNecessity(isOptional, isRequired);\n\n const startEditing = useCallback(\n (seedQuery: string) => {\n if (isDisabled) {\n return;\n }\n setIsEditing(true);\n setQueryValue(seedQuery);\n requestAnimationFrame(() => {\n const input = inputRef.current;\n if (input != null) {\n input.focus();\n input.setSelectionRange(seedQuery.length, seedQuery.length);\n }\n });\n },\n [isDisabled],\n );\n\n return (\n <Field\n className={className}\n description={description}\n descriptionID={descriptionID}\n inputId={inputId}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n {...necessity}\n label={label}\n labelIcon={labelIcon}\n labelTooltip={labelTooltip}\n ref={ref}\n status={fieldStatus}\n style={style}>\n {/* eslint-disable-next-line jsx-a11y-x/click-events-have-key-events, jsx-a11y-x/no-static-element-interactions -- wrapper delegates focus to the inner input; keyboard users interact with the input directly */}\n <div\n className={cx(\n inputRecipe({\n size,\n status: status?.type,\n isDisabled,\n }),\n styles.wrapper,\n )}\n data-testid={dataTestId}\n onClick={() => {\n if (showTag) {\n startEditing(value.label);\n }\n }}\n ref={wrapperRef}>\n {startIcon != null ? (\n <span className={inputStyles.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n {showTag ? (\n <Tag\n className={styles.tag}\n isDisabled={isDisabled}\n label={value.label}\n onClick={() => startEditing(value.label)}\n size={size}\n />\n ) : null}\n <BaseAutocompleteInput\n anchorRef={wrapperRef}\n ariaDescribedBy={describedBy}\n className={showTag ? styles.inputHidden : undefined}\n debounceMs={debounceMs}\n emptySearchResultsText={emptySearchResultsText}\n errorText={errorText}\n hasAutoFocus={hasAutoFocus}\n hasEntriesOnFocus={hasEntriesOnFocus}\n inputId={inputId}\n isDisabled={isDisabled}\n isRequired={isRequired}\n maxMenuItems={maxMenuItems}\n onChange={item => {\n setIsEditing(false);\n setQueryValue('');\n onChange(item);\n }}\n onOpenChange={onOpenChange}\n onQueryChange={nextQuery => {\n setQueryValue(nextQuery);\n onQueryChange?.(nextQuery);\n }}\n placeholder={showTag ? undefined : placeholder}\n query={queryValue}\n ref={inputRef}\n renderItem={renderItem}\n searchSource={searchSource}\n size={size}\n value={value}\n />\n {hasClear && value != null && !isDisabled ? (\n <Button\n className={styles.clearButton}\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={event => {\n event.stopPropagation();\n setIsEditing(false);\n onChange(null);\n inputRef.current?.focus();\n }}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n </div>\n </Field>\n );\n}\n\nAutocompleteInput.displayName = 'AutocompleteInput';\n","import type {ReactNode} from 'react';\n\n/**\n * A search result item with a fully custom pre-rendered element. When\n * `element` is set, `AutocompleteInputItem` renders it directly — props\n * like `icon`, `description`, and `className` do not apply.\n */\nexport interface CustomSearchableItem<TAuxiliaryData = unknown> {\n /**\n * Custom data associated with the item.\n */\n auxiliaryData?: TAuxiliaryData;\n /**\n * Pre-rendered item content. When set, `AutocompleteInputItem` renders\n * this element directly and ignores layout props like `icon` and\n * `description`.\n */\n element: ReactNode;\n /**\n * Stable unique identifier.\n */\n id: string;\n /**\n * Display text used for the selected-value tag chip.\n */\n label: string;\n}\n\n/**\n * A search result item rendered by the default `AutocompleteInputItem`\n * layout with an optional icon and description.\n */\nexport interface StandardSearchableItem<TAuxiliaryData = unknown> {\n /**\n * Custom data associated with the item.\n */\n auxiliaryData?: TAuxiliaryData;\n /**\n * Must be omitted to use the standard layout. Set `element` on a\n * {@link CustomSearchableItem} for fully custom rendering.\n */\n element?: undefined;\n /**\n * Stable unique identifier.\n */\n id: string;\n /**\n * Display text.\n */\n label: string;\n}\n\n/**\n * A search result item. Items without `element` use the default\n * `AutocompleteInputItem` layout; items with `element` render fully\n * custom content.\n */\nexport type SearchableItem<TAuxiliaryData = unknown> =\n | CustomSearchableItem<TAuxiliaryData>\n | StandardSearchableItem<TAuxiliaryData>;\n\nexport interface SearchSource<T extends SearchableItem = SearchableItem> {\n /**\n * Return initial items, usually recent or common selections.\n */\n bootstrap(): Promise<T[]> | T[];\n /**\n * Optional cancellation for in-flight async searches.\n */\n cancel?(): void;\n /**\n * Return items matching the query.\n */\n search(query: string): Promise<T[]> | T[];\n}\n\nexport interface CreateStaticSearchSourceOptions<\n T extends SearchableItem = SearchableItem,\n> {\n /**\n * Extra searchable terms for each item.\n */\n getKeywords?: (item: T) => string[];\n}\n\nexport function createStaticSearchSource<T extends SearchableItem>(\n items: T[],\n options?: CreateStaticSearchSourceOptions<T>,\n): SearchSource<T> {\n return {\n bootstrap: () => items,\n search(query) {\n const normalizedQuery = query.trim().toLowerCase();\n if (normalizedQuery === '') {\n return items;\n }\n\n return items.filter(item => {\n if (item.label.toLowerCase().includes(normalizedQuery)) {\n return true;\n }\n return (\n options\n ?.getKeywords?.(item)\n .some(keyword => keyword.toLowerCase().includes(normalizedQuery)) ??\n false\n );\n });\n },\n };\n}\n"]}