silver-ui 0.3.1 → 0.4.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 (495) hide show
  1. package/dist/{chunk-QGHFUOUB.cjs → chunk-2A3V6OR7.cjs} +7 -7
  2. package/dist/{chunk-QGHFUOUB.cjs.map → chunk-2A3V6OR7.cjs.map} +1 -1
  3. package/dist/{chunk-RVENUWRD.js → chunk-2LABTS4P.js} +7 -7
  4. package/dist/{chunk-RVENUWRD.js.map → chunk-2LABTS4P.js.map} +1 -1
  5. package/dist/{chunk-DIIE44GO.js → chunk-2N6FOSNM.js} +5 -5
  6. package/dist/{chunk-DIIE44GO.js.map → chunk-2N6FOSNM.js.map} +1 -1
  7. package/dist/{chunk-LUBVZVY3.js → chunk-2RKMG2TC.js} +7 -7
  8. package/dist/{chunk-LUBVZVY3.js.map → chunk-2RKMG2TC.js.map} +1 -1
  9. package/dist/{chunk-EMHLPPQZ.js → chunk-3CJC4QE6.js} +4 -4
  10. package/dist/chunk-3CJC4QE6.js.map +1 -0
  11. package/dist/{chunk-P3SMNZCT.js → chunk-3JPUXC5U.js} +3 -3
  12. package/dist/{chunk-P3SMNZCT.js.map → chunk-3JPUXC5U.js.map} +1 -1
  13. package/dist/{chunk-F3ZNRO6W.js → chunk-3OIUA2NY.js} +5 -5
  14. package/dist/{chunk-F3ZNRO6W.js.map → chunk-3OIUA2NY.js.map} +1 -1
  15. package/dist/{chunk-PZ63ZCEO.cjs → chunk-3ZV3EGGK.cjs} +17 -17
  16. package/dist/{chunk-PZ63ZCEO.cjs.map → chunk-3ZV3EGGK.cjs.map} +1 -1
  17. package/dist/{chunk-O5A47TA2.js → chunk-4H7X5FGX.js} +5 -5
  18. package/dist/{chunk-O5A47TA2.js.map → chunk-4H7X5FGX.js.map} +1 -1
  19. package/dist/{chunk-Q3OA23V5.js → chunk-52WQDDWQ.js} +7 -7
  20. package/dist/{chunk-Q3OA23V5.js.map → chunk-52WQDDWQ.js.map} +1 -1
  21. package/dist/{chunk-ZLATP3P5.cjs → chunk-5D2OR64D.cjs} +6 -6
  22. package/dist/{chunk-ZLATP3P5.cjs.map → chunk-5D2OR64D.cjs.map} +1 -1
  23. package/dist/{chunk-YAIEA2YE.cjs → chunk-5PX76QOL.cjs} +3 -3
  24. package/dist/{chunk-YAIEA2YE.cjs.map → chunk-5PX76QOL.cjs.map} +1 -1
  25. package/dist/{chunk-HM7IEGQ2.cjs → chunk-5YS43PSQ.cjs} +7 -7
  26. package/dist/chunk-5YS43PSQ.cjs.map +1 -0
  27. package/dist/{chunk-D2DOHX4W.js → chunk-6ONAGCCZ.js} +13 -6
  28. package/dist/chunk-6ONAGCCZ.js.map +1 -0
  29. package/dist/{chunk-DSB4Q3AS.js → chunk-6ULCJ3XZ.js} +4 -4
  30. package/dist/{chunk-DSB4Q3AS.js.map → chunk-6ULCJ3XZ.js.map} +1 -1
  31. package/dist/{chunk-GXRH5XQY.js → chunk-6XWXBXYE.js} +5 -5
  32. package/dist/{chunk-GXRH5XQY.js.map → chunk-6XWXBXYE.js.map} +1 -1
  33. package/dist/{chunk-EXYBQVZT.js → chunk-7BSFKG7N.js} +3 -3
  34. package/dist/{chunk-EXYBQVZT.js.map → chunk-7BSFKG7N.js.map} +1 -1
  35. package/dist/{chunk-7GN6YTSS.cjs → chunk-7CCXHH6Y.cjs} +7 -7
  36. package/dist/chunk-7CCXHH6Y.cjs.map +1 -0
  37. package/dist/{chunk-PJMV2HTO.cjs → chunk-7U7JMRVF.cjs} +18 -18
  38. package/dist/{chunk-PJMV2HTO.cjs.map → chunk-7U7JMRVF.cjs.map} +1 -1
  39. package/dist/{chunk-M3IKL2VG.js → chunk-AFI4V7LI.js} +6 -6
  40. package/dist/{chunk-M3IKL2VG.js.map → chunk-AFI4V7LI.js.map} +1 -1
  41. package/dist/{chunk-OSBVDRVD.cjs → chunk-AHVHLNHU.cjs} +8 -8
  42. package/dist/{chunk-OSBVDRVD.cjs.map → chunk-AHVHLNHU.cjs.map} +1 -1
  43. package/dist/{chunk-6USJ4LJJ.js → chunk-AJ6X62AI.js} +4 -4
  44. package/dist/{chunk-6USJ4LJJ.js.map → chunk-AJ6X62AI.js.map} +1 -1
  45. package/dist/{chunk-UKDGDMWN.js → chunk-AP7BDTTF.js} +4 -4
  46. package/dist/{chunk-UKDGDMWN.js.map → chunk-AP7BDTTF.js.map} +1 -1
  47. package/dist/{chunk-7U7RP6N2.cjs → chunk-AWDIKDX5.cjs} +10 -10
  48. package/dist/{chunk-7U7RP6N2.cjs.map → chunk-AWDIKDX5.cjs.map} +1 -1
  49. package/dist/{chunk-5AYGQJOW.js → chunk-BCCPNGUV.js} +4 -4
  50. package/dist/{chunk-5AYGQJOW.js.map → chunk-BCCPNGUV.js.map} +1 -1
  51. package/dist/{chunk-QRKRVCA3.cjs → chunk-BLRWA445.cjs} +25 -25
  52. package/dist/{chunk-QRKRVCA3.cjs.map → chunk-BLRWA445.cjs.map} +1 -1
  53. package/dist/{chunk-BA4A7C7U.js → chunk-BSAZRW6T.js} +8 -8
  54. package/dist/{chunk-BA4A7C7U.js.map → chunk-BSAZRW6T.js.map} +1 -1
  55. package/dist/{chunk-5TT4PGZO.cjs → chunk-BUESV4DR.cjs} +9 -9
  56. package/dist/{chunk-5TT4PGZO.cjs.map → chunk-BUESV4DR.cjs.map} +1 -1
  57. package/dist/{chunk-HPVXP3DG.cjs → chunk-BULJWVPU.cjs} +16 -16
  58. package/dist/{chunk-HPVXP3DG.cjs.map → chunk-BULJWVPU.cjs.map} +1 -1
  59. package/dist/{chunk-L7BOLGF2.cjs → chunk-C6EYCIKJ.cjs} +3 -3
  60. package/dist/{chunk-L7BOLGF2.cjs.map → chunk-C6EYCIKJ.cjs.map} +1 -1
  61. package/dist/{chunk-4H35H54I.cjs → chunk-C732WXKS.cjs} +12 -12
  62. package/dist/{chunk-4H35H54I.cjs.map → chunk-C732WXKS.cjs.map} +1 -1
  63. package/dist/{chunk-S4B2D427.js → chunk-CGYZ6QWY.js} +4 -4
  64. package/dist/{chunk-S4B2D427.js.map → chunk-CGYZ6QWY.js.map} +1 -1
  65. package/dist/{chunk-QCT4BPB6.cjs → chunk-CKTXDIH4.cjs} +39 -40
  66. package/dist/chunk-CKTXDIH4.cjs.map +1 -0
  67. package/dist/{chunk-PYW5UO2Z.js → chunk-D3LZQ5QS.js} +4 -4
  68. package/dist/chunk-D3LZQ5QS.js.map +1 -0
  69. package/dist/{chunk-D3SSMY73.cjs → chunk-DIRVAHOF.cjs} +6 -6
  70. package/dist/{chunk-D3SSMY73.cjs.map → chunk-DIRVAHOF.cjs.map} +1 -1
  71. package/dist/{chunk-ZD3NPHZ7.cjs → chunk-DP7VC4FW.cjs} +4 -4
  72. package/dist/{chunk-ZD3NPHZ7.cjs.map → chunk-DP7VC4FW.cjs.map} +1 -1
  73. package/dist/{chunk-NYQPIBOD.cjs → chunk-DVGLYE3G.cjs} +10 -10
  74. package/dist/{chunk-NYQPIBOD.cjs.map → chunk-DVGLYE3G.cjs.map} +1 -1
  75. package/dist/{chunk-ZWULWVN3.js → chunk-DWUEPOYH.js} +7 -7
  76. package/dist/{chunk-ZWULWVN3.js.map → chunk-DWUEPOYH.js.map} +1 -1
  77. package/dist/{chunk-UN35QV25.js → chunk-DXPQRAGI.js} +4 -4
  78. package/dist/{chunk-UN35QV25.js.map → chunk-DXPQRAGI.js.map} +1 -1
  79. package/dist/{chunk-3XDUR3IG.cjs → chunk-E2A3GJSN.cjs} +5 -5
  80. package/dist/{chunk-3XDUR3IG.cjs.map → chunk-E2A3GJSN.cjs.map} +1 -1
  81. package/dist/{chunk-OULO3YDQ.cjs → chunk-EALKX3ST.cjs} +7 -7
  82. package/dist/{chunk-OULO3YDQ.cjs.map → chunk-EALKX3ST.cjs.map} +1 -1
  83. package/dist/{chunk-VAK4JQYL.js → chunk-EBDODJ5X.js} +6 -6
  84. package/dist/{chunk-VAK4JQYL.js.map → chunk-EBDODJ5X.js.map} +1 -1
  85. package/dist/{chunk-U5GTHA44.cjs → chunk-FB245S6T.cjs} +11 -11
  86. package/dist/{chunk-U5GTHA44.cjs.map → chunk-FB245S6T.cjs.map} +1 -1
  87. package/dist/{chunk-RNB4BDEG.js → chunk-FDUO2HVX.js} +3 -3
  88. package/dist/{chunk-RNB4BDEG.js.map → chunk-FDUO2HVX.js.map} +1 -1
  89. package/dist/{chunk-6W3L6IJB.cjs → chunk-FDZQPWFZ.cjs} +11 -11
  90. package/dist/{chunk-6W3L6IJB.cjs.map → chunk-FDZQPWFZ.cjs.map} +1 -1
  91. package/dist/{chunk-3L6KAW7G.js → chunk-FMLIYHDP.js} +5 -5
  92. package/dist/{chunk-3L6KAW7G.js.map → chunk-FMLIYHDP.js.map} +1 -1
  93. package/dist/{chunk-XADTIY7J.cjs → chunk-FNOUX5T2.cjs} +5 -5
  94. package/dist/{chunk-XADTIY7J.cjs.map → chunk-FNOUX5T2.cjs.map} +1 -1
  95. package/dist/{chunk-LFRTNC7M.cjs → chunk-FNZOICR4.cjs} +7 -7
  96. package/dist/{chunk-LFRTNC7M.cjs.map → chunk-FNZOICR4.cjs.map} +1 -1
  97. package/dist/{chunk-IRSJHEYI.js → chunk-FP5E5BUM.js} +3 -3
  98. package/dist/{chunk-IRSJHEYI.js.map → chunk-FP5E5BUM.js.map} +1 -1
  99. package/dist/{chunk-ZVH3BLYO.js → chunk-G2U2W422.js} +6 -6
  100. package/dist/{chunk-ZVH3BLYO.js.map → chunk-G2U2W422.js.map} +1 -1
  101. package/dist/{chunk-W3KMDQKP.cjs → chunk-G2WW52GO.cjs} +12 -12
  102. package/dist/{chunk-W3KMDQKP.cjs.map → chunk-G2WW52GO.cjs.map} +1 -1
  103. package/dist/{chunk-U2U4FMFM.cjs → chunk-G3KKLGZU.cjs} +9 -9
  104. package/dist/{chunk-U2U4FMFM.cjs.map → chunk-G3KKLGZU.cjs.map} +1 -1
  105. package/dist/{chunk-IKF6VHA4.cjs → chunk-GC5VUTUR.cjs} +4 -4
  106. package/dist/{chunk-IKF6VHA4.cjs.map → chunk-GC5VUTUR.cjs.map} +1 -1
  107. package/dist/{chunk-QL3YSC3H.cjs → chunk-GL7PSN7H.cjs} +15 -15
  108. package/dist/{chunk-QL3YSC3H.cjs.map → chunk-GL7PSN7H.cjs.map} +1 -1
  109. package/dist/{chunk-WMXIUOOU.cjs → chunk-GYVWTH3U.cjs} +3 -3
  110. package/dist/{chunk-WMXIUOOU.cjs.map → chunk-GYVWTH3U.cjs.map} +1 -1
  111. package/dist/{chunk-UXDXE7Z6.cjs → chunk-H2CZ6IE5.cjs} +38 -36
  112. package/dist/chunk-H2CZ6IE5.cjs.map +1 -0
  113. package/dist/{chunk-MGVEX3RS.js → chunk-H7HQYBPH.js} +25 -26
  114. package/dist/chunk-H7HQYBPH.js.map +1 -0
  115. package/dist/{chunk-ZNUOFLCQ.js → chunk-HINS4GY6.js} +3 -3
  116. package/dist/chunk-HINS4GY6.js.map +1 -0
  117. package/dist/{chunk-EC2ALHNJ.js → chunk-HNZWPIJE.js} +8 -8
  118. package/dist/{chunk-EC2ALHNJ.js.map → chunk-HNZWPIJE.js.map} +1 -1
  119. package/dist/{chunk-3ZFEBOXD.cjs → chunk-IA5GII7N.cjs} +16 -16
  120. package/dist/chunk-IA5GII7N.cjs.map +1 -0
  121. package/dist/{chunk-EHCAF6D3.js → chunk-IAVZKGZS.js} +14 -3
  122. package/dist/chunk-IAVZKGZS.js.map +1 -0
  123. package/dist/{chunk-AJTJD5C6.js → chunk-ILEKDNP7.js} +6 -6
  124. package/dist/{chunk-AJTJD5C6.js.map → chunk-ILEKDNP7.js.map} +1 -1
  125. package/dist/{chunk-XSQOHNIF.js → chunk-J3DNWPXJ.js} +3 -3
  126. package/dist/{chunk-XSQOHNIF.js.map → chunk-J3DNWPXJ.js.map} +1 -1
  127. package/dist/{chunk-M3BF3BBJ.cjs → chunk-J4OEETYQ.cjs} +10 -10
  128. package/dist/{chunk-M3BF3BBJ.cjs.map → chunk-J4OEETYQ.cjs.map} +1 -1
  129. package/dist/{chunk-YSTESYUB.js → chunk-J5IRFGUP.js} +8 -8
  130. package/dist/chunk-J5IRFGUP.js.map +1 -0
  131. package/dist/{chunk-5D4LRSIV.js → chunk-JDAJ2HJQ.js} +6 -6
  132. package/dist/{chunk-5D4LRSIV.js.map → chunk-JDAJ2HJQ.js.map} +1 -1
  133. package/dist/{chunk-3DJ46WN4.js → chunk-JIVYPJKO.js} +6 -6
  134. package/dist/{chunk-3DJ46WN4.js.map → chunk-JIVYPJKO.js.map} +1 -1
  135. package/dist/{chunk-U2WVHZ24.cjs → chunk-JJ324PSZ.cjs} +6 -6
  136. package/dist/chunk-JJ324PSZ.cjs.map +1 -0
  137. package/dist/{chunk-EE2O457Z.cjs → chunk-JSINCF2R.cjs} +10 -10
  138. package/dist/{chunk-EE2O457Z.cjs.map → chunk-JSINCF2R.cjs.map} +1 -1
  139. package/dist/{chunk-X2GRBPCJ.cjs → chunk-JTFNNEWR.cjs} +7 -7
  140. package/dist/{chunk-X2GRBPCJ.cjs.map → chunk-JTFNNEWR.cjs.map} +1 -1
  141. package/dist/{chunk-YAYINZT2.cjs → chunk-JYVYCU22.cjs} +3 -3
  142. package/dist/{chunk-YAYINZT2.cjs.map → chunk-JYVYCU22.cjs.map} +1 -1
  143. package/dist/{chunk-PQRIV5XU.js → chunk-K3XHXWBW.js} +9 -9
  144. package/dist/{chunk-PQRIV5XU.js.map → chunk-K3XHXWBW.js.map} +1 -1
  145. package/dist/{chunk-65QAZWOG.cjs → chunk-K4ZJNQTX.cjs} +4 -4
  146. package/dist/{chunk-65QAZWOG.cjs.map → chunk-K4ZJNQTX.cjs.map} +1 -1
  147. package/dist/{chunk-CZM5FAWL.cjs → chunk-KDR5DCYL.cjs} +9 -9
  148. package/dist/{chunk-CZM5FAWL.cjs.map → chunk-KDR5DCYL.cjs.map} +1 -1
  149. package/dist/{chunk-GLJWAY4A.cjs → chunk-KXIILLQD.cjs} +10 -10
  150. package/dist/{chunk-GLJWAY4A.cjs.map → chunk-KXIILLQD.cjs.map} +1 -1
  151. package/dist/{chunk-Y4FH67QZ.js → chunk-L6VSBBPP.js} +7 -7
  152. package/dist/{chunk-Y4FH67QZ.js.map → chunk-L6VSBBPP.js.map} +1 -1
  153. package/dist/{chunk-O4RTJESR.js → chunk-LNT2IFOA.js} +4 -4
  154. package/dist/{chunk-O4RTJESR.js.map → chunk-LNT2IFOA.js.map} +1 -1
  155. package/dist/{chunk-MUUPZEZ5.cjs → chunk-LO5NZY7N.cjs} +5 -5
  156. package/dist/{chunk-MUUPZEZ5.cjs.map → chunk-LO5NZY7N.cjs.map} +1 -1
  157. package/dist/{chunk-CN2HJ7CP.js → chunk-LQIZSE3O.js} +8 -8
  158. package/dist/{chunk-CN2HJ7CP.js.map → chunk-LQIZSE3O.js.map} +1 -1
  159. package/dist/{chunk-5GNYP3PH.cjs → chunk-LUQVSNQL.cjs} +16 -9
  160. package/dist/chunk-LUQVSNQL.cjs.map +1 -0
  161. package/dist/{chunk-TF7IWMV2.js → chunk-LY6Z6A54.js} +8 -8
  162. package/dist/{chunk-TF7IWMV2.js.map → chunk-LY6Z6A54.js.map} +1 -1
  163. package/dist/{chunk-QEFE4QBL.cjs → chunk-M26XECB2.cjs} +14 -14
  164. package/dist/{chunk-QEFE4QBL.cjs.map → chunk-M26XECB2.cjs.map} +1 -1
  165. package/dist/{chunk-VVO7GIHG.cjs → chunk-M2MC3E27.cjs} +7 -7
  166. package/dist/{chunk-VVO7GIHG.cjs.map → chunk-M2MC3E27.cjs.map} +1 -1
  167. package/dist/{chunk-HVUYVPQL.cjs → chunk-MAYQGKKW.cjs} +4 -4
  168. package/dist/{chunk-HVUYVPQL.cjs.map → chunk-MAYQGKKW.cjs.map} +1 -1
  169. package/dist/{chunk-2IKWX66Q.js → chunk-MI5QU37D.js} +5 -5
  170. package/dist/{chunk-2IKWX66Q.js.map → chunk-MI5QU37D.js.map} +1 -1
  171. package/dist/{chunk-XUJZTD4E.js → chunk-NFABMGNH.js} +54 -45
  172. package/dist/chunk-NFABMGNH.js.map +1 -0
  173. package/dist/{chunk-4MRORQNN.js → chunk-NI55JEYL.js} +4 -4
  174. package/dist/{chunk-4MRORQNN.js.map → chunk-NI55JEYL.js.map} +1 -1
  175. package/dist/{chunk-6MOJEGDU.cjs → chunk-O2WICOUK.cjs} +5 -5
  176. package/dist/{chunk-6MOJEGDU.cjs.map → chunk-O2WICOUK.cjs.map} +1 -1
  177. package/dist/{chunk-LX64ENLC.cjs → chunk-OBWWRRL6.cjs} +43 -43
  178. package/dist/chunk-OBWWRRL6.cjs.map +1 -0
  179. package/dist/{chunk-NH7KH7QP.js → chunk-PIOMR4X2.js} +5 -5
  180. package/dist/{chunk-NH7KH7QP.js.map → chunk-PIOMR4X2.js.map} +1 -1
  181. package/dist/{chunk-75CPTIET.js → chunk-PIZMCOKL.js} +3 -3
  182. package/dist/{chunk-75CPTIET.js.map → chunk-PIZMCOKL.js.map} +1 -1
  183. package/dist/{chunk-L5YTMHDI.cjs → chunk-PQEFVHJZ.cjs} +10 -10
  184. package/dist/{chunk-L5YTMHDI.cjs.map → chunk-PQEFVHJZ.cjs.map} +1 -1
  185. package/dist/{chunk-I7KILUVL.cjs → chunk-QATCDVZ6.cjs} +12 -12
  186. package/dist/{chunk-I7KILUVL.cjs.map → chunk-QATCDVZ6.cjs.map} +1 -1
  187. package/dist/{chunk-BRB52QFV.cjs → chunk-QOKEU3DC.cjs} +15 -15
  188. package/dist/{chunk-BRB52QFV.cjs.map → chunk-QOKEU3DC.cjs.map} +1 -1
  189. package/dist/{chunk-76B2VLID.js → chunk-QRFDPG34.js} +5 -5
  190. package/dist/{chunk-76B2VLID.js.map → chunk-QRFDPG34.js.map} +1 -1
  191. package/dist/{chunk-3IBY374V.cjs → chunk-QVNDZZS6.cjs} +10 -10
  192. package/dist/{chunk-3IBY374V.cjs.map → chunk-QVNDZZS6.cjs.map} +1 -1
  193. package/dist/{chunk-EBQ3A4XO.js → chunk-QY6OMQW6.js} +5 -5
  194. package/dist/{chunk-EBQ3A4XO.js.map → chunk-QY6OMQW6.js.map} +1 -1
  195. package/dist/{chunk-XIFLSMGW.js → chunk-R6CMJMIJ.js} +3 -3
  196. package/dist/{chunk-XIFLSMGW.js.map → chunk-R6CMJMIJ.js.map} +1 -1
  197. package/dist/{chunk-ASJ5CBCR.js → chunk-RLOGQBFD.js} +6 -6
  198. package/dist/{chunk-ASJ5CBCR.js.map → chunk-RLOGQBFD.js.map} +1 -1
  199. package/dist/{chunk-S4LVSSJI.js → chunk-S7INL5NI.js} +6 -6
  200. package/dist/{chunk-S4LVSSJI.js.map → chunk-S7INL5NI.js.map} +1 -1
  201. package/dist/{chunk-HNROO7CR.js → chunk-SBOXHIES.js} +13 -13
  202. package/dist/{chunk-HNROO7CR.js.map → chunk-SBOXHIES.js.map} +1 -1
  203. package/dist/{chunk-KFDHP4WP.cjs → chunk-SBS7U7CN.cjs} +6 -6
  204. package/dist/{chunk-KFDHP4WP.cjs.map → chunk-SBS7U7CN.cjs.map} +1 -1
  205. package/dist/{chunk-WYE3VOFK.cjs → chunk-SCGXGVNN.cjs} +16 -16
  206. package/dist/{chunk-WYE3VOFK.cjs.map → chunk-SCGXGVNN.cjs.map} +1 -1
  207. package/dist/{chunk-54J6FRPG.js → chunk-SOCSUNIM.js} +9 -9
  208. package/dist/{chunk-54J6FRPG.js.map → chunk-SOCSUNIM.js.map} +1 -1
  209. package/dist/{chunk-BS55BG2U.cjs → chunk-SR5VVJ5Y.cjs} +7 -7
  210. package/dist/{chunk-BS55BG2U.cjs.map → chunk-SR5VVJ5Y.cjs.map} +1 -1
  211. package/dist/{chunk-YLGAJD6Q.js → chunk-SSAYBCAD.js} +4 -4
  212. package/dist/{chunk-YLGAJD6Q.js.map → chunk-SSAYBCAD.js.map} +1 -1
  213. package/dist/{chunk-24J3BUKL.js → chunk-SUH62Z64.js} +3 -3
  214. package/dist/{chunk-24J3BUKL.js.map → chunk-SUH62Z64.js.map} +1 -1
  215. package/dist/{chunk-PL6J55JB.cjs → chunk-TBOQTPRO.cjs} +9 -9
  216. package/dist/{chunk-PL6J55JB.cjs.map → chunk-TBOQTPRO.cjs.map} +1 -1
  217. package/dist/{chunk-YNTPHZFJ.js → chunk-TCTPR7YQ.js} +3 -3
  218. package/dist/{chunk-YNTPHZFJ.js.map → chunk-TCTPR7YQ.js.map} +1 -1
  219. package/dist/{chunk-M3RNFDA2.cjs → chunk-TF7XVTSP.cjs} +59 -50
  220. package/dist/chunk-TF7XVTSP.cjs.map +1 -0
  221. package/dist/{chunk-CRQXHA7N.js → chunk-TKTLWX2V.js} +7 -7
  222. package/dist/{chunk-CRQXHA7N.js.map → chunk-TKTLWX2V.js.map} +1 -1
  223. package/dist/{chunk-F3NATTQG.cjs → chunk-TPB53MHV.cjs} +14 -14
  224. package/dist/{chunk-F3NATTQG.cjs.map → chunk-TPB53MHV.cjs.map} +1 -1
  225. package/dist/{chunk-MSNRGNVY.cjs → chunk-TQA3BI7M.cjs} +7 -7
  226. package/dist/{chunk-MSNRGNVY.cjs.map → chunk-TQA3BI7M.cjs.map} +1 -1
  227. package/dist/{chunk-WO6FS4DV.js → chunk-U6NH54YD.js} +5 -5
  228. package/dist/{chunk-WO6FS4DV.js.map → chunk-U6NH54YD.js.map} +1 -1
  229. package/dist/{chunk-NUTB2K4G.js → chunk-U7ALNPFJ.js} +3 -3
  230. package/dist/{chunk-NUTB2K4G.js.map → chunk-U7ALNPFJ.js.map} +1 -1
  231. package/dist/{chunk-RINP34ZG.js → chunk-UKW2C5RN.js} +4 -4
  232. package/dist/{chunk-RINP34ZG.js.map → chunk-UKW2C5RN.js.map} +1 -1
  233. package/dist/{chunk-AMFFE5UJ.js → chunk-UUVLEOSD.js} +4 -4
  234. package/dist/{chunk-AMFFE5UJ.js.map → chunk-UUVLEOSD.js.map} +1 -1
  235. package/dist/{chunk-6NTDPZWP.js → chunk-VFGSNR35.js} +4 -4
  236. package/dist/{chunk-6NTDPZWP.js.map → chunk-VFGSNR35.js.map} +1 -1
  237. package/dist/{chunk-KRZ57O2J.cjs → chunk-VGHNBMEJ.cjs} +6 -6
  238. package/dist/{chunk-KRZ57O2J.cjs.map → chunk-VGHNBMEJ.cjs.map} +1 -1
  239. package/dist/{chunk-5BCLEOFF.cjs → chunk-VHKA25IV.cjs} +15 -15
  240. package/dist/{chunk-5BCLEOFF.cjs.map → chunk-VHKA25IV.cjs.map} +1 -1
  241. package/dist/{chunk-23NN5WRP.cjs → chunk-VK4O6W2K.cjs} +6 -6
  242. package/dist/{chunk-23NN5WRP.cjs.map → chunk-VK4O6W2K.cjs.map} +1 -1
  243. package/dist/{chunk-2VOB6LEI.js → chunk-VQ7U3ASC.js} +4 -4
  244. package/dist/{chunk-2VOB6LEI.js.map → chunk-VQ7U3ASC.js.map} +1 -1
  245. package/dist/{chunk-7MN4JDP7.js → chunk-VUCMGGU5.js} +14 -14
  246. package/dist/chunk-VUCMGGU5.js.map +1 -0
  247. package/dist/{chunk-IHM2M74J.js → chunk-W2Q4PQ6I.js} +3 -3
  248. package/dist/{chunk-IHM2M74J.js.map → chunk-W2Q4PQ6I.js.map} +1 -1
  249. package/dist/{chunk-UPQHFW47.js → chunk-W3C6QQF7.js} +5 -5
  250. package/dist/{chunk-UPQHFW47.js.map → chunk-W3C6QQF7.js.map} +1 -1
  251. package/dist/{chunk-P6RAOXJA.js → chunk-WBGFFP3G.js} +6 -6
  252. package/dist/{chunk-P6RAOXJA.js.map → chunk-WBGFFP3G.js.map} +1 -1
  253. package/dist/{chunk-CZC2K5GJ.js → chunk-WBQNPBXR.js} +5 -5
  254. package/dist/{chunk-CZC2K5GJ.js.map → chunk-WBQNPBXR.js.map} +1 -1
  255. package/dist/{chunk-3TXVDCF2.js → chunk-WY5BOT7O.js} +4 -4
  256. package/dist/{chunk-3TXVDCF2.js.map → chunk-WY5BOT7O.js.map} +1 -1
  257. package/dist/{chunk-CEU7BIL6.cjs → chunk-X574M2JB.cjs} +13 -13
  258. package/dist/{chunk-CEU7BIL6.cjs.map → chunk-X574M2JB.cjs.map} +1 -1
  259. package/dist/{chunk-7PNLMDAR.cjs → chunk-XLKXFJMU.cjs} +8 -8
  260. package/dist/{chunk-7PNLMDAR.cjs.map → chunk-XLKXFJMU.cjs.map} +1 -1
  261. package/dist/{chunk-W5G7ZDQ6.cjs → chunk-XLNRO3S6.cjs} +4 -4
  262. package/dist/{chunk-W5G7ZDQ6.cjs.map → chunk-XLNRO3S6.cjs.map} +1 -1
  263. package/dist/{chunk-A66NIFJE.cjs → chunk-XXBA3KSH.cjs} +5 -5
  264. package/dist/{chunk-A66NIFJE.cjs.map → chunk-XXBA3KSH.cjs.map} +1 -1
  265. package/dist/{chunk-OWBNRALR.js → chunk-YAWVGZRC.js} +6 -6
  266. package/dist/{chunk-OWBNRALR.js.map → chunk-YAWVGZRC.js.map} +1 -1
  267. package/dist/{chunk-JEIQ5GDK.cjs → chunk-YHBYVERE.cjs} +18 -18
  268. package/dist/{chunk-JEIQ5GDK.cjs.map → chunk-YHBYVERE.cjs.map} +1 -1
  269. package/dist/{chunk-CPOYENSZ.cjs → chunk-YO3MBGBP.cjs} +4 -4
  270. package/dist/{chunk-CPOYENSZ.cjs.map → chunk-YO3MBGBP.cjs.map} +1 -1
  271. package/dist/{chunk-EVKFA5FA.cjs → chunk-YVHWOKR7.cjs} +23 -23
  272. package/dist/{chunk-EVKFA5FA.cjs.map → chunk-YVHWOKR7.cjs.map} +1 -1
  273. package/dist/{chunk-66LRFIYK.cjs → chunk-YWGYN6YV.cjs} +9 -9
  274. package/dist/{chunk-66LRFIYK.cjs.map → chunk-YWGYN6YV.cjs.map} +1 -1
  275. package/dist/{chunk-BAPCHFNX.cjs → chunk-YY6KJO5Z.cjs} +12 -12
  276. package/dist/{chunk-BAPCHFNX.cjs.map → chunk-YY6KJO5Z.cjs.map} +1 -1
  277. package/dist/{chunk-UYBGXFYX.js → chunk-YYNWZRXZ.js} +20 -18
  278. package/dist/chunk-YYNWZRXZ.js.map +1 -0
  279. package/dist/{chunk-5QPM5LUS.cjs → chunk-Z6RT3WPE.cjs} +15 -4
  280. package/dist/chunk-Z6RT3WPE.cjs.map +1 -0
  281. package/dist/{chunk-VEUZ5DZR.js → chunk-ZAX2UJBC.js} +6 -6
  282. package/dist/{chunk-VEUZ5DZR.js.map → chunk-ZAX2UJBC.js.map} +1 -1
  283. package/dist/{chunk-LHP47U6H.js → chunk-ZEA2VYX4.js} +3 -3
  284. package/dist/{chunk-LHP47U6H.js.map → chunk-ZEA2VYX4.js.map} +1 -1
  285. package/dist/{chunk-QEX7V7TI.cjs → chunk-ZFBQ4R7M.cjs} +10 -10
  286. package/dist/{chunk-QEX7V7TI.cjs.map → chunk-ZFBQ4R7M.cjs.map} +1 -1
  287. package/dist/{chunk-AX6HC2YY.cjs → chunk-ZN7CULIL.cjs} +3 -3
  288. package/dist/{chunk-AX6HC2YY.cjs.map → chunk-ZN7CULIL.cjs.map} +1 -1
  289. package/dist/{chunk-FZCBTFHY.js → chunk-ZQUPAIBS.js} +4 -4
  290. package/dist/{chunk-FZCBTFHY.js.map → chunk-ZQUPAIBS.js.map} +1 -1
  291. package/dist/{chunk-VJBBMBRT.cjs → chunk-ZTWBG2XY.cjs} +7 -7
  292. package/dist/{chunk-VJBBMBRT.cjs.map → chunk-ZTWBG2XY.cjs.map} +1 -1
  293. package/dist/components/Accordion/index.cjs +6 -7
  294. package/dist/components/Accordion/index.js +3 -4
  295. package/dist/components/Alert/index.cjs +12 -13
  296. package/dist/components/Alert/index.js +11 -12
  297. package/dist/components/AlertDialog/index.cjs +15 -16
  298. package/dist/components/AlertDialog/index.js +13 -14
  299. package/dist/components/AppShell/index.cjs +20 -21
  300. package/dist/components/AppShell/index.js +17 -18
  301. package/dist/components/AspectRatio/index.cjs +3 -3
  302. package/dist/components/AspectRatio/index.js +2 -2
  303. package/dist/components/AutocompleteInput/AutocompleteInput.d.ts +3 -1
  304. package/dist/components/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
  305. package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts +3 -1
  306. package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts.map +1 -1
  307. package/dist/components/AutocompleteInput/index.cjs +20 -21
  308. package/dist/components/AutocompleteInput/index.d.ts +1 -1
  309. package/dist/components/AutocompleteInput/index.d.ts.map +1 -1
  310. package/dist/components/AutocompleteInput/index.js +15 -16
  311. package/dist/components/AutocompleteInput/types.d.ts +3 -3
  312. package/dist/components/AutocompleteInput/types.d.ts.map +1 -1
  313. package/dist/components/Avatar/index.cjs +6 -7
  314. package/dist/components/Avatar/index.js +3 -4
  315. package/dist/components/AvatarGroup/index.cjs +6 -7
  316. package/dist/components/AvatarGroup/index.js +4 -5
  317. package/dist/components/Badge/index.cjs +1 -1
  318. package/dist/components/Badge/index.js +1 -1
  319. package/dist/components/Blockquote/index.cjs +4 -5
  320. package/dist/components/Blockquote/index.js +3 -4
  321. package/dist/components/Breadcrumbs/index.cjs +10 -11
  322. package/dist/components/Breadcrumbs/index.js +7 -8
  323. package/dist/components/Button/index.cjs +11 -12
  324. package/dist/components/Button/index.js +10 -11
  325. package/dist/components/ButtonGroup/index.cjs +1 -1
  326. package/dist/components/ButtonGroup/index.js +1 -1
  327. package/dist/components/Calendar/index.cjs +12 -13
  328. package/dist/components/Calendar/index.js +11 -12
  329. package/dist/components/Card/index.cjs +1 -1
  330. package/dist/components/Card/index.js +1 -1
  331. package/dist/components/Center/index.cjs +1 -1
  332. package/dist/components/Center/index.js +1 -1
  333. package/dist/components/CheckboxInput/index.cjs +12 -13
  334. package/dist/components/CheckboxInput/index.js +11 -12
  335. package/dist/components/CodeBlock/index.cjs +13 -14
  336. package/dist/components/CodeBlock/index.js +12 -13
  337. package/dist/components/ContextMenu/index.cjs +17 -18
  338. package/dist/components/ContextMenu/index.js +15 -16
  339. package/dist/components/DateInput/index.cjs +16 -17
  340. package/dist/components/DateInput/index.js +15 -16
  341. package/dist/components/DateRangeInput/index.cjs +16 -17
  342. package/dist/components/DateRangeInput/index.js +15 -16
  343. package/dist/components/DateTimeInput/index.cjs +18 -19
  344. package/dist/components/DateTimeInput/index.js +17 -18
  345. package/dist/components/Dialog/index.cjs +5 -6
  346. package/dist/components/Dialog/index.js +3 -4
  347. package/dist/components/Divider/index.cjs +4 -5
  348. package/dist/components/Divider/index.js +3 -4
  349. package/dist/components/Drawer/index.cjs +4 -4
  350. package/dist/components/Drawer/index.js +2 -2
  351. package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  352. package/dist/components/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
  353. package/dist/components/DropdownMenu/DropdownMenuItem.recipe.d.ts +36 -0
  354. package/dist/components/DropdownMenu/DropdownMenuItem.recipe.d.ts.map +1 -0
  355. package/dist/components/DropdownMenu/index.cjs +18 -19
  356. package/dist/components/DropdownMenu/index.js +14 -15
  357. package/dist/components/EmptyState/index.cjs +7 -8
  358. package/dist/components/EmptyState/index.js +6 -7
  359. package/dist/components/Field/index.cjs +10 -11
  360. package/dist/components/Field/index.js +8 -9
  361. package/dist/components/FileInput/index.cjs +14 -15
  362. package/dist/components/FileInput/index.js +13 -14
  363. package/dist/components/HoverCard/index.cjs +5 -5
  364. package/dist/components/HoverCard/index.js +3 -3
  365. package/dist/components/HoverCard/useHoverCard.d.ts.map +1 -1
  366. package/dist/components/Icon/index.cjs +1 -1
  367. package/dist/components/Icon/index.js +1 -1
  368. package/dist/components/InputGroup/index.cjs +13 -14
  369. package/dist/components/InputGroup/index.js +9 -10
  370. package/dist/components/Item/index.cjs +8 -9
  371. package/dist/components/Item/index.js +7 -8
  372. package/dist/components/Kbd/index.cjs +4 -5
  373. package/dist/components/Kbd/index.js +3 -4
  374. package/dist/components/Layout/index.cjs +16 -17
  375. package/dist/components/Layout/index.js +11 -12
  376. package/dist/components/Lightbox/index.cjs +13 -14
  377. package/dist/components/Lightbox/index.js +11 -12
  378. package/dist/components/Link/index.cjs +8 -9
  379. package/dist/components/Link/index.js +5 -6
  380. package/dist/components/List/index.cjs +11 -12
  381. package/dist/components/List/index.js +9 -10
  382. package/dist/components/MetadataList/index.cjs +7 -8
  383. package/dist/components/MetadataList/index.js +5 -6
  384. package/dist/components/MultiSelect/index.cjs +15 -16
  385. package/dist/components/MultiSelect/index.js +14 -15
  386. package/dist/components/NavIcon/index.cjs +3 -3
  387. package/dist/components/NavIcon/index.js +2 -2
  388. package/dist/components/NumberInput/index.cjs +15 -16
  389. package/dist/components/NumberInput/index.js +14 -15
  390. package/dist/components/Pagination/index.cjs +12 -13
  391. package/dist/components/Pagination/index.js +11 -12
  392. package/dist/components/PasswordInput/index.cjs +16 -17
  393. package/dist/components/PasswordInput/index.js +15 -16
  394. package/dist/components/Popover/Popover.d.ts.map +1 -1
  395. package/dist/components/Popover/index.cjs +13 -14
  396. package/dist/components/Popover/index.js +11 -12
  397. package/dist/components/Progress/index.cjs +5 -6
  398. package/dist/components/Progress/index.js +4 -5
  399. package/dist/components/RadioGroup/index.cjs +13 -14
  400. package/dist/components/RadioGroup/index.js +11 -12
  401. package/dist/components/Rating/index.cjs +5 -6
  402. package/dist/components/Rating/index.js +4 -5
  403. package/dist/components/Schedule/ListView.d.ts.map +1 -1
  404. package/dist/components/Schedule/MonthlyView.d.ts.map +1 -1
  405. package/dist/components/Schedule/TimeGridView.d.ts.map +1 -1
  406. package/dist/components/Schedule/index.cjs +26 -27
  407. package/dist/components/Schedule/index.js +15 -16
  408. package/dist/components/Schedule/shared.d.ts.map +1 -1
  409. package/dist/components/SearchFilterInput/index.cjs +33 -34
  410. package/dist/components/SearchFilterInput/index.js +25 -26
  411. package/dist/components/SegmentedControl/index.cjs +5 -5
  412. package/dist/components/SegmentedControl/index.js +3 -3
  413. package/dist/components/Select/index.cjs +17 -18
  414. package/dist/components/Select/index.js +15 -16
  415. package/dist/components/SideNav/index.cjs +19 -20
  416. package/dist/components/SideNav/index.js +13 -14
  417. package/dist/components/Skeleton/index.cjs +1 -1
  418. package/dist/components/Skeleton/index.js +1 -1
  419. package/dist/components/Slider/index.cjs +10 -11
  420. package/dist/components/Slider/index.js +9 -10
  421. package/dist/components/Spinner/index.cjs +7 -8
  422. package/dist/components/Spinner/index.js +6 -7
  423. package/dist/components/SplitButton/index.cjs +16 -17
  424. package/dist/components/SplitButton/index.js +15 -16
  425. package/dist/components/Stack/index.cjs +1 -1
  426. package/dist/components/Stack/index.js +1 -1
  427. package/dist/components/Stepper/index.cjs +8 -9
  428. package/dist/components/Stepper/index.js +5 -6
  429. package/dist/components/Switch/index.cjs +9 -10
  430. package/dist/components/Switch/index.js +8 -9
  431. package/dist/components/Table/index.cjs +57 -58
  432. package/dist/components/Table/index.js +29 -30
  433. package/dist/components/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
  434. package/dist/components/Tabs/index.cjs +17 -18
  435. package/dist/components/Tabs/index.js +12 -13
  436. package/dist/components/Tag/index.cjs +8 -9
  437. package/dist/components/Tag/index.js +7 -8
  438. package/dist/components/TagsInput/TagsInput.d.ts +3 -1
  439. package/dist/components/TagsInput/TagsInput.d.ts.map +1 -1
  440. package/dist/components/TagsInput/index.cjs +17 -18
  441. package/dist/components/TagsInput/index.js +16 -17
  442. package/dist/components/Text/index.cjs +6 -6
  443. package/dist/components/Text/index.js +4 -4
  444. package/dist/components/TextArea/index.cjs +11 -12
  445. package/dist/components/TextArea/index.js +10 -11
  446. package/dist/components/TextInput/index.cjs +15 -16
  447. package/dist/components/TextInput/index.js +14 -15
  448. package/dist/components/Thumbnail/index.cjs +12 -13
  449. package/dist/components/Thumbnail/index.js +11 -12
  450. package/dist/components/TimeInput/index.cjs +14 -15
  451. package/dist/components/TimeInput/index.js +13 -14
  452. package/dist/components/Toast/index.cjs +14 -15
  453. package/dist/components/Toast/index.js +11 -12
  454. package/dist/components/ToggleButton/index.cjs +10 -11
  455. package/dist/components/ToggleButton/index.js +8 -9
  456. package/dist/components/Tooltip/index.cjs +5 -5
  457. package/dist/components/Tooltip/index.js +3 -3
  458. package/dist/components/Tooltip/useTooltip.d.ts.map +1 -1
  459. package/dist/components/TopNav/index.cjs +19 -20
  460. package/dist/components/TopNav/index.js +13 -14
  461. package/dist/components/TreeView/index.cjs +3 -3
  462. package/dist/components/TreeView/index.js +2 -2
  463. package/dist/index.cjs +243 -244
  464. package/dist/index.cjs.map +1 -1
  465. package/dist/index.d.ts +1 -1
  466. package/dist/index.d.ts.map +1 -1
  467. package/dist/index.js +74 -75
  468. package/dist/index.js.map +1 -1
  469. package/dist/internal/HoverLayerTrigger.d.ts.map +1 -1
  470. package/dist/internal/useLayer.d.ts.map +1 -1
  471. package/package.json +1 -1
  472. package/dist/chunk-3ZFEBOXD.cjs.map +0 -1
  473. package/dist/chunk-5GNYP3PH.cjs.map +0 -1
  474. package/dist/chunk-5QPM5LUS.cjs.map +0 -1
  475. package/dist/chunk-6BK4LUK4.cjs +0 -17
  476. package/dist/chunk-6BK4LUK4.cjs.map +0 -1
  477. package/dist/chunk-7GN6YTSS.cjs.map +0 -1
  478. package/dist/chunk-7MN4JDP7.js.map +0 -1
  479. package/dist/chunk-D2DOHX4W.js.map +0 -1
  480. package/dist/chunk-EHCAF6D3.js.map +0 -1
  481. package/dist/chunk-EMHLPPQZ.js.map +0 -1
  482. package/dist/chunk-GUKZNXTB.js +0 -15
  483. package/dist/chunk-GUKZNXTB.js.map +0 -1
  484. package/dist/chunk-HM7IEGQ2.cjs.map +0 -1
  485. package/dist/chunk-LX64ENLC.cjs.map +0 -1
  486. package/dist/chunk-M3RNFDA2.cjs.map +0 -1
  487. package/dist/chunk-MGVEX3RS.js.map +0 -1
  488. package/dist/chunk-PYW5UO2Z.js.map +0 -1
  489. package/dist/chunk-QCT4BPB6.cjs.map +0 -1
  490. package/dist/chunk-U2WVHZ24.cjs.map +0 -1
  491. package/dist/chunk-UXDXE7Z6.cjs.map +0 -1
  492. package/dist/chunk-UYBGXFYX.js.map +0 -1
  493. package/dist/chunk-XUJZTD4E.js.map +0 -1
  494. package/dist/chunk-YSTESYUB.js.map +0 -1
  495. package/dist/chunk-ZNUOFLCQ.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/TextInput/TextInput.tsx"],"names":["useId","isReactNode","getStatusMessageID","getDescribedBy","useInputGroup","jsxs","cx","inputRecipe","jsx","inputStyles","Icon","Button","X","Spinner","getStatusIcon","Field","getNecessity"],"mappings":"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","file":"chunk-6W3L6IJB.cjs","sourcesContent":["import {X} from 'lucide-react';\nimport {\n useId,\n type ChangeEvent,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {Button} from '../Button';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from '../Field';\nimport {inputRecipe, inputStyles} from '../Field/inputStyles';\nimport {\n getDescribedBy,\n getStatusIcon,\n getStatusMessageID,\n} from '../Field/inputUtils';\nimport {Icon, type IconComponent} from '../Icon';\nimport {useInputGroup} from '../InputGroup';\nimport {Spinner} from '../Spinner';\n\nexport type TextInputType = 'email' | 'password' | 'text';\n\nexport type TextInputProps = {\n /**\n * HTML autocomplete hint for the browser.\n */\n autoComplete?: string;\n /**\n * Additional CSS class names applied to the input wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Supporting text rendered below the label.\n */\n description?: ReactNode;\n /**\n * Content rendered after the input, before the status icon.\n */\n endContent?: ReactNode;\n /**\n * Whether to focus the input on mount.\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a clear button when the input has a value.\n */\n hasClear?: boolean;\n /**\n * HTML name attribute.\n */\n htmlName?: string;\n /**\n * Whether the input is disabled.\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n */\n isLabelHidden?: boolean;\n /**\n * Whether the input is loading.\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip shown beside the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called with the next string value.\n */\n onChange: (\n value: string,\n event: ChangeEvent<HTMLInputElement> | null,\n ) => void;\n /**\n * Called when Enter is pressed.\n */\n onEnter?: () => void;\n /**\n * Called when the input gains focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Keyboard event handler for the input.\n */\n onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;\n /**\n * Placeholder text.\n */\n placeholder?: string;\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Visual size.\n */\n size?: InputSize;\n /**\n * Icon shown before the input.\n */\n startIcon?: IconComponent;\n /**\n * Status displayed on the field.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the wrapper.\n */\n style?: CSSProperties;\n /**\n * HTML input type.\n */\n type?: TextInputType;\n /**\n * Controlled input value.\n */\n value: string;\n} & FieldNecessity;\n\n/**\n * Single-line text input field.\n */\nexport function TextInput({\n autoComplete,\n label,\n value,\n onChange,\n onBlur,\n onFocus,\n type = 'text',\n size: sizeProp = 'md',\n placeholder,\n description,\n endContent,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isLoading = false,\n hasClear = false,\n hasAutoFocus = false,\n htmlName,\n status,\n labelIcon,\n labelTooltip,\n startIcon,\n onEnter,\n onKeyDown,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: TextInputProps): 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 inputGroup = useInputGroup();\n const effectiveDisabled = isDisabled || inputGroup?.isDisabled === true;\n const size = inputGroup?.size ?? sizeProp;\n const effectiveStatusType = status?.type ?? inputGroup?.statusType;\n\n const inputWrapper = (\n <div\n className={cx(\n inputRecipe({\n size,\n status: effectiveStatusType,\n isDisabled: effectiveDisabled,\n }),\n inputGroup != null ? className : undefined,\n )}\n style={inputGroup != null ? style : undefined}>\n {startIcon != null ? (\n <span className={inputStyles.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <input\n aria-busy={isLoading || undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || undefined}\n aria-label={inputGroup != null ? label : undefined}\n aria-required={isRequired ?? undefined}\n autoComplete={autoComplete}\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={inputStyles.control}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={effectiveDisabled}\n id={inputId}\n name={htmlName}\n onBlur={onBlur}\n onChange={event => onChange(event.target.value, event)}\n onFocus={onFocus}\n onKeyDown={event => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n onEnter?.();\n }\n onKeyDown?.(event);\n }}\n placeholder={placeholder}\n ref={ref}\n required={isRequired ?? undefined}\n type={type}\n value={value}\n />\n {hasClear && value !== '' && !effectiveDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={() => onChange('', null)}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n {endContent}\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {status != null ? (\n <span className={inputStyles.iconSlot}>\n {getStatusIcon(status.type)}\n </span>\n ) : null}\n </div>\n );\n\n if (inputGroup != null) {\n return inputWrapper;\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 {...getNecessity(isOptional, isRequired)}\n label={label}\n labelIcon={labelIcon}\n labelTooltip={labelTooltip}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n style={style}>\n {inputWrapper}\n </Field>\n );\n}\n\nTextInput.displayName = 'TextInput';\n"]}
1
+ {"version":3,"sources":["../src/components/TextInput/TextInput.tsx"],"names":["useId","isReactNode","getStatusMessageID","getDescribedBy","useInputGroup","jsxs","cx","inputRecipe","jsx","inputStyles","Icon","Button","X","Spinner","getStatusIcon","Field","getNecessity"],"mappings":";;;;;;;;;;;;;;;AAqJO,SAAS,SAAA,CAAU;AAAA,EACxB,YAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA,GAAO,MAAA;AAAA,EACP,MAAM,QAAA,GAAW,IAAA;AAAA,EACjB,WAAA;AAAA,EACA,WAAA;AAAA,EACA,UAAA;AAAA,EACA,aAAA,GAAgB,KAAA;AAAA,EAChB,UAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA,GAAa,KAAA;AAAA,EACb,SAAA,GAAY,KAAA;AAAA,EACZ,QAAA,GAAW,KAAA;AAAA,EACX,YAAA,GAAe,KAAA;AAAA,EACf,QAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,YAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,KAAA;AAAA,EACA;AACF,CAAA,EAAsC;AACpC,EAAA,MAAM,UAAUA,WAAA,EAAM;AACtB,EAAA,MAAM,gBAAgBC,6BAAA,CAAY,WAAW,CAAA,GACzC,CAAA,EAAG,OAAO,CAAA,YAAA,CAAA,GACV,MAAA;AACJ,EAAA,MAAM,eAAA,GAAkBC,oCAAA,CAAmB,OAAA,EAAS,MAAM,CAAA;AAC1D,EAAA,MAAM,WAAA,GAAcC,gCAAA,CAAe,aAAA,EAAe,eAAe,CAAA;AACjE,EAAA,MAAM,aAAaC,+BAAA,EAAc;AACjC,EAAA,MAAM,iBAAA,GAAoB,UAAA,IAAc,UAAA,EAAY,UAAA,KAAe,IAAA;AACnE,EAAA,MAAM,IAAA,GAAO,YAAY,IAAA,IAAQ,QAAA;AACjC,EAAA,MAAM,mBAAA,GAAsB,MAAA,EAAQ,IAAA,IAAQ,UAAA,EAAY,UAAA;AAExD,EAAA,MAAM,YAAA,mBACJC,eAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAWC,oBAAA;AAAA,QACTC,6BAAA,CAAY;AAAA,UACV,IAAA;AAAA,UACA,MAAA,EAAQ,mBAAA;AAAA,UACR,UAAA,EAAY;AAAA,SACb,CAAA;AAAA,QACD,UAAA,IAAc,OAAO,SAAA,GAAY;AAAA,OACnC;AAAA,MACA,KAAA,EAAO,UAAA,IAAc,IAAA,GAAO,KAAA,GAAQ,MAAA;AAAA,MACnC,QAAA,EAAA;AAAA,QAAA,SAAA,IAAa,IAAA,mBACZC,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAWC,8BAAY,QAAA,EAC3B,QAAA,kBAAAD,cAAA,CAACE,sBAAA,EAAA,EAAK,KAAA,EAAM,aAAY,IAAA,EAAM,SAAA,EAAW,IAAA,EAAK,IAAA,EAAK,GACrD,CAAA,GACE,IAAA;AAAA,wBACJF,cAAA;AAAA,UAAC,OAAA;AAAA,UAAA;AAAA,YACC,aAAW,SAAA,IAAa,MAAA;AAAA,YACxB,kBAAA,EAAkB,WAAA;AAAA,YAClB,cAAA,EAAc,MAAA,EAAQ,IAAA,KAAS,OAAA,IAAW,MAAA;AAAA,YAC1C,YAAA,EAAY,UAAA,IAAc,IAAA,GAAO,KAAA,GAAQ,MAAA;AAAA,YACzC,iBAAe,UAAA,IAAc,MAAA;AAAA,YAC7B,YAAA;AAAA,YAEA,SAAA,EAAW,YAAA;AAAA,YACX,WAAWC,6BAAA,CAAY,OAAA;AAAA,YACvB,kBAAgB,YAAA,IAAgB,MAAA;AAAA,YAChC,aAAA,EAAa,UAAA;AAAA,YACb,QAAA,EAAU,iBAAA;AAAA,YACV,EAAA,EAAI,OAAA;AAAA,YACJ,IAAA,EAAM,QAAA;AAAA,YACN,MAAA;AAAA,YACA,UAAU,CAAA,KAAA,KAAS,QAAA,CAAS,KAAA,CAAM,MAAA,CAAO,OAAO,KAAK,CAAA;AAAA,YACrD,OAAA;AAAA,YACA,WAAW,CAAA,KAAA,KAAS;AAClB,cAAA,IAAI,MAAM,GAAA,KAAQ,OAAA,IAAW,CAAC,KAAA,CAAM,YAAY,WAAA,EAAa;AAC3D,gBAAA,OAAA,IAAU;AAAA,cACZ;AACA,cAAA,SAAA,GAAY,KAAK,CAAA;AAAA,YACnB,CAAA;AAAA,YACA,WAAA;AAAA,YACA,GAAA;AAAA,YACA,UAAU,UAAA,IAAc,MAAA;AAAA,YACxB,IAAA;AAAA,YACA;AAAA;AAAA,SACF;AAAA,QACC,QAAA,IAAY,KAAA,KAAU,EAAA,IAAM,CAAC,iBAAA,mBAC5BD,cAAA;AAAA,UAACG,wBAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAMC,aAAA;AAAA,YACN,UAAA,EAAU,IAAA;AAAA,YACV,KAAA,EAAO,SAAS,KAAK,CAAA,CAAA;AAAA,YACrB,OAAA,EAAS,MAAM,QAAA,CAAS,EAAA,EAAI,IAAI,CAAA;AAAA,YAChC,IAAA,EAAK,IAAA;AAAA,YACL,OAAA,EAAQ;AAAA;AAAA,SACV,GACE,IAAA;AAAA,QACH,UAAA;AAAA,QACA,SAAA,mBAAYJ,cAAA,CAACK,yBAAA,EAAA,EAAQ,IAAA,EAAK,MAAK,CAAA,GAAK,IAAA;AAAA,QACpC,MAAA,IAAU,IAAA,mBACTL,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAWC,6BAAA,CAAY,QAAA,EAC1B,QAAA,EAAAK,+BAAA,CAAc,MAAA,CAAO,IAAI,CAAA,EAC5B,CAAA,GACE;AAAA;AAAA;AAAA,GACN;AAGF,EAAA,IAAI,cAAc,IAAA,EAAM;AACtB,IAAA,OAAO,YAAA;AAAA,EACT;AAEA,EAAA,uBACEN,cAAA;AAAA,IAACO,uBAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,WAAA;AAAA,MACA,aAAA;AAAA,MACA,OAAA;AAAA,MACA,UAAA;AAAA,MACA,aAAA;AAAA,MACC,GAAGC,8BAAA,CAAa,UAAA,EAAY,UAAU,CAAA;AAAA,MACvC,KAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,MACA,MAAA,EACE,UAAU,IAAA,GAAO,MAAA,GAAY,EAAC,GAAG,MAAA,EAAQ,WAAW,eAAA,EAAe;AAAA,MAErE,KAAA;AAAA,MACC,QAAA,EAAA;AAAA;AAAA,GACH;AAEJ;AAEA,SAAA,CAAU,WAAA,GAAc,WAAA","file":"chunk-FDZQPWFZ.cjs","sourcesContent":["import {X} from 'lucide-react';\nimport {\n useId,\n type ChangeEvent,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {Button} from '../Button';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from '../Field';\nimport {inputRecipe, inputStyles} from '../Field/inputStyles';\nimport {\n getDescribedBy,\n getStatusIcon,\n getStatusMessageID,\n} from '../Field/inputUtils';\nimport {Icon, type IconComponent} from '../Icon';\nimport {useInputGroup} from '../InputGroup';\nimport {Spinner} from '../Spinner';\n\nexport type TextInputType = 'email' | 'password' | 'text';\n\nexport type TextInputProps = {\n /**\n * HTML autocomplete hint for the browser.\n */\n autoComplete?: string;\n /**\n * Additional CSS class names applied to the input wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Supporting text rendered below the label.\n */\n description?: ReactNode;\n /**\n * Content rendered after the input, before the status icon.\n */\n endContent?: ReactNode;\n /**\n * Whether to focus the input on mount.\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a clear button when the input has a value.\n */\n hasClear?: boolean;\n /**\n * HTML name attribute.\n */\n htmlName?: string;\n /**\n * Whether the input is disabled.\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n */\n isLabelHidden?: boolean;\n /**\n * Whether the input is loading.\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip shown beside the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called with the next string value.\n */\n onChange: (\n value: string,\n event: ChangeEvent<HTMLInputElement> | null,\n ) => void;\n /**\n * Called when Enter is pressed.\n */\n onEnter?: () => void;\n /**\n * Called when the input gains focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Keyboard event handler for the input.\n */\n onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;\n /**\n * Placeholder text.\n */\n placeholder?: string;\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Visual size.\n */\n size?: InputSize;\n /**\n * Icon shown before the input.\n */\n startIcon?: IconComponent;\n /**\n * Status displayed on the field.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the wrapper.\n */\n style?: CSSProperties;\n /**\n * HTML input type.\n */\n type?: TextInputType;\n /**\n * Controlled input value.\n */\n value: string;\n} & FieldNecessity;\n\n/**\n * Single-line text input field.\n */\nexport function TextInput({\n autoComplete,\n label,\n value,\n onChange,\n onBlur,\n onFocus,\n type = 'text',\n size: sizeProp = 'md',\n placeholder,\n description,\n endContent,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isLoading = false,\n hasClear = false,\n hasAutoFocus = false,\n htmlName,\n status,\n labelIcon,\n labelTooltip,\n startIcon,\n onEnter,\n onKeyDown,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: TextInputProps): 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 inputGroup = useInputGroup();\n const effectiveDisabled = isDisabled || inputGroup?.isDisabled === true;\n const size = inputGroup?.size ?? sizeProp;\n const effectiveStatusType = status?.type ?? inputGroup?.statusType;\n\n const inputWrapper = (\n <div\n className={cx(\n inputRecipe({\n size,\n status: effectiveStatusType,\n isDisabled: effectiveDisabled,\n }),\n inputGroup != null ? className : undefined,\n )}\n style={inputGroup != null ? style : undefined}>\n {startIcon != null ? (\n <span className={inputStyles.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <input\n aria-busy={isLoading || undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || undefined}\n aria-label={inputGroup != null ? label : undefined}\n aria-required={isRequired ?? undefined}\n autoComplete={autoComplete}\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={inputStyles.control}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={effectiveDisabled}\n id={inputId}\n name={htmlName}\n onBlur={onBlur}\n onChange={event => onChange(event.target.value, event)}\n onFocus={onFocus}\n onKeyDown={event => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n onEnter?.();\n }\n onKeyDown?.(event);\n }}\n placeholder={placeholder}\n ref={ref}\n required={isRequired ?? undefined}\n type={type}\n value={value}\n />\n {hasClear && value !== '' && !effectiveDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={() => onChange('', null)}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n {endContent}\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {status != null ? (\n <span className={inputStyles.iconSlot}>\n {getStatusIcon(status.type)}\n </span>\n ) : null}\n </div>\n );\n\n if (inputGroup != null) {\n return inputWrapper;\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 {...getNecessity(isOptional, isRequired)}\n label={label}\n labelIcon={labelIcon}\n labelTooltip={labelTooltip}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n style={style}>\n {inputWrapper}\n </Field>\n );\n}\n\nTextInput.displayName = 'TextInput';\n"]}
@@ -1,6 +1,6 @@
1
- import { TextInput } from './chunk-ZVH3BLYO.js';
2
- import { getNecessity } from './chunk-ASJ5CBCR.js';
3
- import { Button } from './chunk-RVENUWRD.js';
1
+ import { TextInput } from './chunk-G2U2W422.js';
2
+ import { getNecessity } from './chunk-RLOGQBFD.js';
3
+ import { Button } from './chunk-2LABTS4P.js';
4
4
  import { EyeOff, Eye } from 'lucide-react';
5
5
  import { useState, useCallback } from 'react';
6
6
  import { jsx } from 'react/jsx-runtime';
@@ -46,5 +46,5 @@ function PasswordInput({
46
46
  PasswordInput.displayName = "PasswordInput";
47
47
 
48
48
  export { PasswordInput };
49
- //# sourceMappingURL=chunk-3L6KAW7G.js.map
50
- //# sourceMappingURL=chunk-3L6KAW7G.js.map
49
+ //# sourceMappingURL=chunk-FMLIYHDP.js.map
50
+ //# sourceMappingURL=chunk-FMLIYHDP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/PasswordInput/PasswordInput.tsx"],"names":[],"mappings":";;;;;;;AAmBO,SAAS,aAAA,CAAc;AAAA,EAC5B,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,UAAA,GAAa,KAAA;AAAA,EACb,UAAA;AAAA,EACA,UAAA;AAAA,EACA,GAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA0C;AACxC,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,KAAK,CAAA;AAChD,EAAA,MAAM,gBAAA,GAAmB,YAAY,MAAM,YAAA,CAAa,OAAK,CAAC,CAAC,CAAA,EAAG,EAAE,CAAA;AAEpE,EAAA,uBACE,GAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACH,GAAG,YAAA,CAAa,UAAA,EAAY,UAAU,CAAA;AAAA,MACvC,SAAA;AAAA,MACA,aAAA,EAAa,UAAA;AAAA,MACb,UAAA,kBACE,GAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAM,YAAY,MAAA,GAAS,GAAA;AAAA,UAC3B,UAAA;AAAA,UACA,UAAA,EAAU,IAAA;AAAA,UACV,KAAA,EAAO,YAAY,eAAA,GAAkB,eAAA;AAAA,UACrC,OAAA,EAAS,gBAAA;AAAA,UACT,IAAA,EAAK,IAAA;AAAA,UACL,OAAA,EAAQ;AAAA;AAAA,OACV;AAAA,MAEF,UAAA;AAAA,MACA,GAAA;AAAA,MACA,KAAA;AAAA,MACA,IAAA,EAAM,YAAY,MAAA,GAAS;AAAA;AAAA,GAC7B;AAEJ;AAEA,aAAA,CAAc,WAAA,GAAc,eAAA","file":"chunk-3L6KAW7G.js","sourcesContent":["import {Eye, EyeOff} from 'lucide-react';\nimport {useCallback, useState, type Ref} from 'react';\nimport {Button} from '../Button';\nimport {getNecessity} from '../Field';\nimport {TextInput, type TextInputProps} from '../TextInput';\n\nexport type PasswordInputProps = Omit<\n TextInputProps,\n 'endContent' | 'hasClear' | 'startIcon' | 'type'\n> & {\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n};\n\n/**\n * Password input with a toggle to show or hide the entered value.\n */\nexport function PasswordInput({\n className,\n 'data-testid': dataTestId,\n isDisabled = false,\n isOptional,\n isRequired,\n ref,\n style,\n ...props\n}: PasswordInputProps): React.JSX.Element {\n const [isVisible, setIsVisible] = useState(false);\n const toggleVisibility = useCallback(() => setIsVisible(v => !v), []);\n\n return (\n <TextInput\n {...props}\n {...getNecessity(isOptional, isRequired)}\n className={className}\n data-testid={dataTestId}\n endContent={\n <Button\n icon={isVisible ? EyeOff : Eye}\n isDisabled={isDisabled}\n isIconOnly\n label={isVisible ? 'Hide password' : 'Show password'}\n onClick={toggleVisibility}\n size=\"sm\"\n variant=\"ghost\"\n />\n }\n isDisabled={isDisabled}\n ref={ref}\n style={style}\n type={isVisible ? 'text' : 'password'}\n />\n );\n}\n\nPasswordInput.displayName = 'PasswordInput';\n"]}
1
+ {"version":3,"sources":["../src/components/PasswordInput/PasswordInput.tsx"],"names":[],"mappings":";;;;;;;AAmBO,SAAS,aAAA,CAAc;AAAA,EAC5B,SAAA;AAAA,EACA,aAAA,EAAe,UAAA;AAAA,EACf,UAAA,GAAa,KAAA;AAAA,EACb,UAAA;AAAA,EACA,UAAA;AAAA,EACA,GAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA0C;AACxC,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,KAAK,CAAA;AAChD,EAAA,MAAM,gBAAA,GAAmB,YAAY,MAAM,YAAA,CAAa,OAAK,CAAC,CAAC,CAAA,EAAG,EAAE,CAAA;AAEpE,EAAA,uBACE,GAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACH,GAAG,YAAA,CAAa,UAAA,EAAY,UAAU,CAAA;AAAA,MACvC,SAAA;AAAA,MACA,aAAA,EAAa,UAAA;AAAA,MACb,UAAA,kBACE,GAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAM,YAAY,MAAA,GAAS,GAAA;AAAA,UAC3B,UAAA;AAAA,UACA,UAAA,EAAU,IAAA;AAAA,UACV,KAAA,EAAO,YAAY,eAAA,GAAkB,eAAA;AAAA,UACrC,OAAA,EAAS,gBAAA;AAAA,UACT,IAAA,EAAK,IAAA;AAAA,UACL,OAAA,EAAQ;AAAA;AAAA,OACV;AAAA,MAEF,UAAA;AAAA,MACA,GAAA;AAAA,MACA,KAAA;AAAA,MACA,IAAA,EAAM,YAAY,MAAA,GAAS;AAAA;AAAA,GAC7B;AAEJ;AAEA,aAAA,CAAc,WAAA,GAAc,eAAA","file":"chunk-FMLIYHDP.js","sourcesContent":["import {Eye, EyeOff} from 'lucide-react';\nimport {useCallback, useState, type Ref} from 'react';\nimport {Button} from '../Button';\nimport {getNecessity} from '../Field';\nimport {TextInput, type TextInputProps} from '../TextInput';\n\nexport type PasswordInputProps = Omit<\n TextInputProps,\n 'endContent' | 'hasClear' | 'startIcon' | 'type'\n> & {\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n};\n\n/**\n * Password input with a toggle to show or hide the entered value.\n */\nexport function PasswordInput({\n className,\n 'data-testid': dataTestId,\n isDisabled = false,\n isOptional,\n isRequired,\n ref,\n style,\n ...props\n}: PasswordInputProps): React.JSX.Element {\n const [isVisible, setIsVisible] = useState(false);\n const toggleVisibility = useCallback(() => setIsVisible(v => !v), []);\n\n return (\n <TextInput\n {...props}\n {...getNecessity(isOptional, isRequired)}\n className={className}\n data-testid={dataTestId}\n endContent={\n <Button\n icon={isVisible ? EyeOff : Eye}\n isDisabled={isDisabled}\n isIconOnly\n label={isVisible ? 'Hide password' : 'Show password'}\n onClick={toggleVisibility}\n size=\"sm\"\n variant=\"ghost\"\n />\n }\n isDisabled={isDisabled}\n ref={ref}\n style={style}\n type={isVisible ? 'text' : 'password'}\n />\n );\n}\n\nPasswordInput.displayName = 'PasswordInput';\n"]}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkQEFE4QBL_cjs = require('./chunk-QEFE4QBL.cjs');
3
+ var chunkM26XECB2_cjs = require('./chunk-M26XECB2.cjs');
4
4
  var chunk4TIAKZ4Q_cjs = require('./chunk-4TIAKZ4Q.cjs');
5
- var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
6
5
  var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
6
+ var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
7
7
  var react = require('react');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
 
@@ -49,7 +49,7 @@ function MetadataList({
49
49
  ref,
50
50
  style,
51
51
  children: [
52
- title != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkQEFE4QBL_cjs.Heading, { className: styles.title, id: titleId, level: 5, children: title }) : null,
52
+ title != null ? /* @__PURE__ */ jsxRuntime.jsx(chunkM26XECB2_cjs.Heading, { className: styles.title, id: titleId, level: 5, children: title }) : null,
53
53
  /* @__PURE__ */ jsxRuntime.jsx(
54
54
  "dl",
55
55
  {
@@ -141,5 +141,5 @@ MetadataListItem.displayName = "MetadataListItem";
141
141
 
142
142
  exports.MetadataList = MetadataList;
143
143
  exports.MetadataListItem = MetadataListItem;
144
- //# sourceMappingURL=chunk-XADTIY7J.cjs.map
145
- //# sourceMappingURL=chunk-XADTIY7J.cjs.map
144
+ //# sourceMappingURL=chunk-FNOUX5T2.cjs.map
145
+ //# sourceMappingURL=chunk-FNOUX5T2.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/MetadataList/MetadataListContext.ts","../src/components/MetadataList/MetadataList.tsx","../src/components/MetadataList/MetadataListItem.tsx"],"names":["createContext","use","css","useId","useMemo","jsx","jsxs","cx","Heading","styles","Fragment","Icon"],"mappings":"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","file":"chunk-XADTIY7J.cjs","sourcesContent":["import {createContext, use} from 'react';\n\nexport interface MetadataListContextValue {\n labelPosition: 'start' | 'top';\n}\n\nexport const MetadataListContext =\n createContext<MetadataListContextValue | null>(null);\n\nMetadataListContext.displayName = 'MetadataListContext';\n\nexport function useMetadataList(): MetadataListContextValue | null {\n return use(MetadataListContext);\n}\n","import {\n useId,\n useMemo,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {Heading} from '../Text';\nimport {MetadataListContext} from './MetadataListContext';\n\nexport type MetadataListLabelPosition = 'start' | 'top';\n\nexport interface MetadataListProps {\n /**\n * Metadata items to render inside the list.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the root.\n */\n className?: string;\n /**\n * Test ID applied to the root.\n */\n 'data-testid'?: string;\n /**\n * Position of item labels relative to their values.\n * @default 'start'\n */\n labelPosition?: MetadataListLabelPosition;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root.\n */\n style?: CSSProperties;\n /**\n * Optional title rendered above the list as a heading.\n */\n title?: string;\n}\n\nconst styles = {\n root: css({display: 'flex', flexDirection: 'column'}),\n title: css({mb: '3'}),\n dl: css({m: 0, p: 0}),\n grid: css({\n display: 'grid',\n gridTemplateColumns: 'auto 1fr',\n rowGap: '3',\n columnGap: '6',\n alignItems: 'start',\n }),\n gridStacked: css({\n display: 'grid',\n gridTemplateColumns: '1fr',\n gap: '3',\n }),\n} as const;\n\n/**\n * Displays a list of label-value metadata pairs in configurable layouts.\n */\nexport function MetadataList({\n children,\n labelPosition = 'start',\n title,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: MetadataListProps): React.JSX.Element {\n const titleId = useId();\n const contextValue = useMemo(() => ({labelPosition}), [labelPosition]);\n const dlClassName =\n labelPosition === 'top' ? styles.gridStacked : styles.grid;\n\n return (\n <MetadataListContext value={contextValue}>\n <div\n className={cx(styles.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {title != null ? (\n <Heading className={styles.title} id={titleId} level={5}>\n {title}\n </Heading>\n ) : null}\n <dl\n aria-labelledby={title != null ? titleId : undefined}\n className={cx(styles.dl, dlClassName)}>\n {children}\n </dl>\n </div>\n </MetadataListContext>\n );\n}\n\nMetadataList.displayName = 'MetadataList';\n","import type {CSSProperties, ReactNode, Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconComponent} from '../Icon';\nimport {useMetadataList} from './MetadataListContext';\n\n/**\n * A single label-value pair rendered inside a MetadataList.\n */\nexport interface MetadataListItemProps {\n /**\n * Value content rendered beside or below the label.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Optional icon rendered before the label text.\n */\n icon?: IconComponent;\n /**\n * Descriptive label for this metadata entry.\n */\n label: string;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n label: css({\n color: 'fg.muted',\n fontSize: 'md',\n fontWeight: 'bold',\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n m: 0,\n minH: '6',\n }),\n value: css({\n color: 'fg',\n fontSize: 'md',\n m: 0,\n minH: '6',\n overflowWrap: 'break-word',\n }),\n stacked: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n }),\n inline: css({\n display: 'contents',\n }),\n} as const;\n\n/**\n * A single label-value pair rendered inside a MetadataList.\n */\nexport function MetadataListItem({\n children,\n icon,\n label,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: MetadataListItemProps): React.JSX.Element {\n const context = useMetadataList();\n\n if (context == null && process.env.NODE_ENV !== 'production') {\n throw new Error('MetadataListItem must be rendered inside a MetadataList.');\n }\n\n const isStacked = context?.labelPosition === 'top';\n const labelContent = (\n <>\n {icon != null ? <Icon color=\"secondary\" icon={icon} size=\"sm\" /> : null}\n {label}\n </>\n );\n\n if (isStacked) {\n return (\n <div\n className={cx(styles.stacked, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <dt className={styles.label}>{labelContent}</dt>\n <dd className={styles.value}>{children}</dd>\n </div>\n );\n }\n\n return (\n <div\n className={cx(styles.inline, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <dt className={styles.label}>{labelContent}</dt>\n <dd className={styles.value}>{children}</dd>\n </div>\n );\n}\n\nMetadataListItem.displayName = 'MetadataListItem';\n"]}
1
+ {"version":3,"sources":["../src/components/MetadataList/MetadataListContext.ts","../src/components/MetadataList/MetadataList.tsx","../src/components/MetadataList/MetadataListItem.tsx"],"names":["createContext","use","css","useId","useMemo","jsx","jsxs","cx","Heading","styles","Fragment","Icon"],"mappings":"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","file":"chunk-FNOUX5T2.cjs","sourcesContent":["import {createContext, use} from 'react';\n\nexport interface MetadataListContextValue {\n labelPosition: 'start' | 'top';\n}\n\nexport const MetadataListContext =\n createContext<MetadataListContextValue | null>(null);\n\nMetadataListContext.displayName = 'MetadataListContext';\n\nexport function useMetadataList(): MetadataListContextValue | null {\n return use(MetadataListContext);\n}\n","import {\n useId,\n useMemo,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {Heading} from '../Text';\nimport {MetadataListContext} from './MetadataListContext';\n\nexport type MetadataListLabelPosition = 'start' | 'top';\n\nexport interface MetadataListProps {\n /**\n * Metadata items to render inside the list.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the root.\n */\n className?: string;\n /**\n * Test ID applied to the root.\n */\n 'data-testid'?: string;\n /**\n * Position of item labels relative to their values.\n * @default 'start'\n */\n labelPosition?: MetadataListLabelPosition;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root.\n */\n style?: CSSProperties;\n /**\n * Optional title rendered above the list as a heading.\n */\n title?: string;\n}\n\nconst styles = {\n root: css({display: 'flex', flexDirection: 'column'}),\n title: css({mb: '3'}),\n dl: css({m: 0, p: 0}),\n grid: css({\n display: 'grid',\n gridTemplateColumns: 'auto 1fr',\n rowGap: '3',\n columnGap: '6',\n alignItems: 'start',\n }),\n gridStacked: css({\n display: 'grid',\n gridTemplateColumns: '1fr',\n gap: '3',\n }),\n} as const;\n\n/**\n * Displays a list of label-value metadata pairs in configurable layouts.\n */\nexport function MetadataList({\n children,\n labelPosition = 'start',\n title,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: MetadataListProps): React.JSX.Element {\n const titleId = useId();\n const contextValue = useMemo(() => ({labelPosition}), [labelPosition]);\n const dlClassName =\n labelPosition === 'top' ? styles.gridStacked : styles.grid;\n\n return (\n <MetadataListContext value={contextValue}>\n <div\n className={cx(styles.root, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {title != null ? (\n <Heading className={styles.title} id={titleId} level={5}>\n {title}\n </Heading>\n ) : null}\n <dl\n aria-labelledby={title != null ? titleId : undefined}\n className={cx(styles.dl, dlClassName)}>\n {children}\n </dl>\n </div>\n </MetadataListContext>\n );\n}\n\nMetadataList.displayName = 'MetadataList';\n","import type {CSSProperties, ReactNode, Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconComponent} from '../Icon';\nimport {useMetadataList} from './MetadataListContext';\n\n/**\n * A single label-value pair rendered inside a MetadataList.\n */\nexport interface MetadataListItemProps {\n /**\n * Value content rendered beside or below the label.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the root element.\n */\n className?: string;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Optional icon rendered before the label text.\n */\n icon?: IconComponent;\n /**\n * Descriptive label for this metadata entry.\n */\n label: string;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n label: css({\n color: 'fg.muted',\n fontSize: 'md',\n fontWeight: 'bold',\n display: 'flex',\n alignItems: 'center',\n gap: '2',\n m: 0,\n minH: '6',\n }),\n value: css({\n color: 'fg',\n fontSize: 'md',\n m: 0,\n minH: '6',\n overflowWrap: 'break-word',\n }),\n stacked: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n }),\n inline: css({\n display: 'contents',\n }),\n} as const;\n\n/**\n * A single label-value pair rendered inside a MetadataList.\n */\nexport function MetadataListItem({\n children,\n icon,\n label,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: MetadataListItemProps): React.JSX.Element {\n const context = useMetadataList();\n\n if (context == null && process.env.NODE_ENV !== 'production') {\n throw new Error('MetadataListItem must be rendered inside a MetadataList.');\n }\n\n const isStacked = context?.labelPosition === 'top';\n const labelContent = (\n <>\n {icon != null ? <Icon color=\"secondary\" icon={icon} size=\"sm\" /> : null}\n {label}\n </>\n );\n\n if (isStacked) {\n return (\n <div\n className={cx(styles.stacked, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <dt className={styles.label}>{labelContent}</dt>\n <dd className={styles.value}>{children}</dd>\n </div>\n );\n }\n\n return (\n <div\n className={cx(styles.inline, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <dt className={styles.label}>{labelContent}</dt>\n <dd className={styles.value}>{children}</dd>\n </div>\n );\n}\n\nMetadataListItem.displayName = 'MetadataListItem';\n"]}
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunkWMXIUOOU_cjs = require('./chunk-WMXIUOOU.cjs');
4
- var chunk7GN6YTSS_cjs = require('./chunk-7GN6YTSS.cjs');
3
+ var chunkGYVWTH3U_cjs = require('./chunk-GYVWTH3U.cjs');
4
+ var chunk7CCXHH6Y_cjs = require('./chunk-7CCXHH6Y.cjs');
5
5
  var chunk4TIAKZ4Q_cjs = require('./chunk-4TIAKZ4Q.cjs');
6
6
  var chunkJRBQKFVO_cjs = require('./chunk-JRBQKFVO.cjs');
7
- var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
8
7
  var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
8
+ var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
9
9
  var lucideReact = require('lucide-react');
10
10
  var react = require('react');
11
11
  var jsxRuntime = require('react/jsx-runtime');
@@ -204,14 +204,14 @@ function Link({
204
204
  children,
205
205
  opensInNewTab && label == null ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
206
206
  " ",
207
- /* @__PURE__ */ jsxRuntime.jsx(chunkWMXIUOOU_cjs.VisuallyHidden, { children: "(opens in new tab)" })
207
+ /* @__PURE__ */ jsxRuntime.jsx(chunkGYVWTH3U_cjs.VisuallyHidden, { children: "(opens in new tab)" })
208
208
  ] }) : null,
209
209
  isExternalLink ? /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", className: styles.externalLink, children: /* @__PURE__ */ jsxRuntime.jsx(chunk4TIAKZ4Q_cjs.Icon, { icon: lucideReact.ExternalLink, size: "sm" }) }) : null
210
210
  ]
211
211
  }
212
212
  );
213
213
  if (tooltip != null) {
214
- return /* @__PURE__ */ jsxRuntime.jsx(chunk7GN6YTSS_cjs.Tooltip, { content: tooltip, children: element });
214
+ return /* @__PURE__ */ jsxRuntime.jsx(chunk7CCXHH6Y_cjs.Tooltip, { content: tooltip, children: element });
215
215
  }
216
216
  return element;
217
217
  }
@@ -238,5 +238,5 @@ exports.LinkProvider = LinkProvider;
238
238
  exports.getAriaLabel = getAriaLabel;
239
239
  exports.useLinkComponent = useLinkComponent;
240
240
  exports.useRel = useRel;
241
- //# sourceMappingURL=chunk-LFRTNC7M.cjs.map
242
- //# sourceMappingURL=chunk-LFRTNC7M.cjs.map
241
+ //# sourceMappingURL=chunk-FNZOICR4.cjs.map
242
+ //# sourceMappingURL=chunk-FNZOICR4.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/internal/linkAccessibility.ts","../src/components/Link/Link.recipe.ts","../src/components/Link/LinkContext.ts","../src/components/Link/useLinkComponent.ts","../src/components/Link/Link.tsx","../src/components/Link/LinkProvider.tsx"],"names":["useMemo","cva","createContext","use","jsxs","cx","Fragment","jsx","VisuallyHidden","Icon","ExternalLink","Tooltip","css"],"mappings":"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","file":"chunk-LFRTNC7M.cjs","sourcesContent":["import {useMemo} from 'react';\n\nexport function getAriaLabel(\n label: string | undefined,\n opensInNewTab: boolean,\n): string | undefined {\n if (!opensInNewTab) {\n return label;\n }\n\n return label != null ? `${label} (opens in new tab)` : undefined;\n}\n\nexport function useRel({\n isExternalLink = false,\n target,\n rel,\n}: {\n isExternalLink?: boolean;\n target?: string;\n rel?: string;\n}): string | undefined {\n return useMemo(() => {\n if (!isExternalLink && target !== '_blank') {\n return rel;\n }\n\n const relValues = new Set((rel ?? '').split(/\\s+/).filter(Boolean));\n relValues.add('noopener');\n relValues.add('noreferrer');\n\n return Array.from(relValues).join(' ');\n }, [isExternalLink, target, rel]);\n}\n","import {cva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const linkRecipe = cva({\n base: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n fontFamily: 'body',\n fontWeight: 'inherit',\n lineHeight: 'normal',\n textDecoration: 'none',\n cursor: 'pointer',\n transitionProperty: 'color, text-decoration-color, opacity',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n _hover: {\n textDecoration: 'underline',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n '&[aria-disabled=\"true\"]': {\n cursor: 'not-allowed',\n opacity: 0.5,\n },\n },\n variants: {\n size: {\n xs: {fontSize: 'xs'},\n sm: {fontSize: 'sm'},\n md: {fontSize: 'md'},\n lg: {fontSize: 'lg'},\n xl: {fontSize: 'xl'},\n '2xl': {fontSize: '2xl'},\n '3xl': {fontSize: '3xl'},\n '4xl': {fontSize: '4xl'},\n '5xl': {fontSize: '5xl'},\n '6xl': {fontSize: '6xl'},\n inherit: {fontSize: 'inherit'},\n },\n color: {\n primary: {\n color: 'fg',\n },\n secondary: {\n color: 'fg.muted',\n },\n disabled: {\n color: 'fg.disabled',\n },\n placeholder: {\n color: 'fg.muted',\n },\n active: {\n color: 'primary',\n },\n inherit: {\n color: 'inherit',\n },\n },\n weight: {\n normal: {fontWeight: 'normal'},\n medium: {fontWeight: 'medium'},\n semibold: {fontWeight: 'semibold'},\n bold: {fontWeight: 'bold'},\n inherit: {fontWeight: 'inherit'},\n },\n hasUnderline: {\n true: {\n textDecoration: 'underline',\n },\n false: {},\n },\n },\n defaultVariants: {\n color: 'active',\n size: 'md',\n hasUnderline: false,\n },\n});\n\nexport type LinkVariants = RecipeVariantProps<typeof linkRecipe>;\n","import {createContext} from 'react';\nimport type {LinkComponent} from './types';\n\nexport interface LinkContextValue {\n component: LinkComponent;\n}\n\nexport const LinkContext = createContext<LinkContextValue | null>(null);\nLinkContext.displayName = 'LinkContext';\n","import {use} from 'react';\nimport {LinkContext} from './LinkContext';\nimport type {LinkComponent} from './types';\n\nexport function useLinkComponent(as?: LinkComponent): LinkComponent {\n const context = use(LinkContext);\n return as ?? context?.component ?? 'a';\n}\n","/* eslint-disable @eslint-react/static-components -- intentional polymorphism via as prop */\n\nimport {ExternalLink} from 'lucide-react';\nimport type {CSSProperties, MouseEventHandler, ReactNode, Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {VisuallyHidden} from '../../internal';\nimport {cx} from '../../internal/cx';\nimport {getAriaLabel, useRel} from '../../internal/linkAccessibility';\nimport {Icon} from '../Icon';\nimport type {TextColor, TextSize, TextWeight} from '../Text';\nimport {Tooltip} from '../Tooltip';\nimport {linkRecipe} from './Link.recipe';\nimport type {LinkComponent} from './types';\nimport {useLinkComponent} from './useLinkComponent';\n\n/**\n * A polymorphic link component with built-in accessibility, external link handling,\n * and router integration via LinkProvider. Supports custom link components (e.g.\n * React Router's Link) through the `as` prop or a parent `LinkProvider`.\n */\nexport interface LinkProps {\n /**\n * Identifies the element(s) whose contents are controlled by the link.\n */\n 'aria-controls'?: string;\n /**\n * Indicates the current item in a set (e.g. current page in navigation).\n */\n 'aria-current'?: 'page' | 'step' | 'location' | 'date' | 'time' | 'true';\n /**\n * Identifies the element(s) that describe the link.\n */\n 'aria-describedby'?: string;\n /**\n * Accessible description for the link.\n */\n 'aria-description'?: string;\n /**\n * Identifies the element that provides a detailed description.\n */\n 'aria-details'?: string;\n /**\n * Indicates whether a controlled element is expanded or collapsed.\n */\n 'aria-expanded'?: boolean;\n /**\n * Indicates the link opens an interactive popup element.\n */\n 'aria-haspopup'?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';\n /**\n * Indicates whether the element is exposed to the accessibility API.\n */\n 'aria-hidden'?: boolean;\n /**\n * Keyboard shortcuts that activate or focus the link.\n */\n 'aria-keyshortcuts'?: string;\n /**\n * Identifies the element(s) that label the link.\n */\n 'aria-labelledby'?: string;\n /**\n * Identifies element(s) owned by the link that are not DOM children.\n */\n 'aria-owns'?: string;\n /**\n * Human-readable description of the role of the link.\n */\n 'aria-roledescription'?: string;\n /**\n * Custom element type to render instead of `<a>`. Useful for integrating with routers.\n * If you want to set this globally, use LinkProvider at the top level of your app.\n */\n as?: LinkComponent;\n /**\n * Link content.\n */\n children: ReactNode;\n /**\n * Optionally, rendering by setting the className.\n */\n className?: string;\n /**\n * Color variant controlling the link text color. Default is `active`.\n */\n color?: TextColor;\n /**\n * Test id applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Show a persistent underline on the link text.\n */\n hasUnderline?: boolean;\n /**\n * URL destination. Custom link components receive this as both `href` and\n * `to` so router links and anchor-like links can share the same Silver UI API.\n * When omitted, Link renders `href=\"#\"` to preserve native link semantics and\n * prevents the fallback hash navigation.\n */\n href?: string;\n /**\n * Visually and functionally disable the link. Prevents navigation and removes from tab order.\n */\n isDisabled?: boolean;\n /**\n * Mark as an external link. Adds an icon and rel=\"noopener noreferrer\".\n * Defaults target to \"_blank\" unless target is set explicitly.\n */\n isExternalLink?: boolean;\n /**\n * Accessible label (aria-label). It is recommended to set this if your link does not contain sufficient text to make its purpose clear.\n */\n label?: string;\n /**\n * Click handler. Not called when the link is disabled.\n */\n onClick?: MouseEventHandler<HTMLAnchorElement>;\n /**\n * Ref forwarded to the underlying anchor element.\n */\n ref?: Ref<HTMLAnchorElement>;\n /**\n * HTML rel attribute.\n */\n rel?: string;\n /**\n * Font size variant. Default is `md`.\n */\n size?: TextSize;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * HTML target attribute.\n */\n target?: string;\n /**\n * Tooltip text shown on hover.\n */\n tooltip?: string;\n /**\n * Font weight variant. Default is inherited from parent styles.\n */\n weight?: TextWeight;\n}\n\nexport function Link({\n 'aria-controls': ariaControls,\n 'aria-current': ariaCurrent,\n 'aria-description': ariaDescription,\n 'aria-describedby': ariaDescribedby,\n 'aria-details': ariaDetails,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n 'aria-hidden': ariaHidden,\n 'aria-keyshortcuts': ariaKeyshortcuts,\n 'aria-labelledby': ariaLabelledby,\n 'aria-owns': ariaOwns,\n 'aria-roledescription': ariaRoledescription,\n as,\n label,\n href: hrefFromProps,\n hasUnderline = false,\n isDisabled = false,\n isExternalLink = false,\n target: targetFromProps,\n rel: relFromProps,\n size,\n tooltip,\n color,\n weight,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n children,\n onClick,\n}: LinkProps): React.JSX.Element {\n const Component = useLinkComponent(as);\n const href = hrefFromProps ?? '#';\n const isFallbackHref = hrefFromProps == null;\n const target = targetFromProps ?? (isExternalLink ? '_blank' : undefined);\n const opensInNewTab = target === '_blank';\n const rel = useRel({isExternalLink, target, rel: relFromProps});\n\n const ariaAttrs = {\n 'aria-controls': ariaControls,\n 'aria-current': ariaCurrent,\n 'aria-description': ariaDescription,\n 'aria-describedby': ariaDescribedby,\n 'aria-details': ariaDetails,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n 'aria-hidden': ariaHidden,\n 'aria-keyshortcuts': ariaKeyshortcuts,\n 'aria-labelledby': ariaLabelledby,\n 'aria-owns': ariaOwns,\n 'aria-roledescription': ariaRoledescription,\n };\n\n const handleClick: MouseEventHandler<HTMLAnchorElement> = event => {\n if (isDisabled || isFallbackHref) {\n event.preventDefault();\n }\n\n if (isDisabled) {\n return;\n }\n\n onClick?.(event);\n };\n\n const element = (\n <Component\n {...ariaAttrs}\n aria-disabled={isDisabled || undefined}\n aria-label={getAriaLabel(label, opensInNewTab)}\n className={cx(linkRecipe({color, hasUnderline, size, weight}), className)}\n data-testid={dataTestId}\n href={isDisabled ? undefined : href}\n onClick={handleClick}\n ref={ref}\n rel={isDisabled ? undefined : rel}\n role={isDisabled && hrefFromProps != null ? 'link' : undefined}\n style={style}\n tabIndex={isDisabled ? -1 : undefined}\n target={isDisabled ? undefined : target}\n to={isDisabled ? undefined : Component === 'a' ? undefined : href}>\n {children}\n {opensInNewTab && label == null ? (\n <>\n {' '}\n <VisuallyHidden>(opens in new tab)</VisuallyHidden>\n </>\n ) : null}\n {isExternalLink ? (\n <span aria-hidden=\"true\" className={styles.externalLink}>\n <Icon icon={ExternalLink} size=\"sm\" />\n </span>\n ) : null}\n </Component>\n );\n\n if (tooltip != null) {\n return <Tooltip content={tooltip}>{element}</Tooltip>;\n }\n\n return element;\n}\n\nLink.displayName = 'Link';\n\nconst styles = {\n externalLink: css({\n display: 'inline-flex',\n flexShrink: 0,\n fontSize: '0.875em',\n lineHeight: 1,\n }),\n};\n","import {useMemo, type ReactNode} from 'react';\nimport {LinkContext} from './LinkContext';\nimport type {LinkComponent} from './types';\n\nexport interface LinkProviderProps {\n children: ReactNode;\n component: LinkComponent;\n}\n\nexport function LinkProvider({\n component,\n children,\n}: LinkProviderProps): React.JSX.Element {\n const value = useMemo(() => ({component}), [component]);\n\n return <LinkContext value={value}>{children}</LinkContext>;\n}\n\nLinkProvider.displayName = 'LinkProvider';\n"]}
1
+ {"version":3,"sources":["../src/internal/linkAccessibility.ts","../src/components/Link/Link.recipe.ts","../src/components/Link/LinkContext.ts","../src/components/Link/useLinkComponent.ts","../src/components/Link/Link.tsx","../src/components/Link/LinkProvider.tsx"],"names":["useMemo","cva","createContext","use","jsxs","cx","Fragment","jsx","VisuallyHidden","Icon","ExternalLink","Tooltip","css"],"mappings":"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","file":"chunk-FNZOICR4.cjs","sourcesContent":["import {useMemo} from 'react';\n\nexport function getAriaLabel(\n label: string | undefined,\n opensInNewTab: boolean,\n): string | undefined {\n if (!opensInNewTab) {\n return label;\n }\n\n return label != null ? `${label} (opens in new tab)` : undefined;\n}\n\nexport function useRel({\n isExternalLink = false,\n target,\n rel,\n}: {\n isExternalLink?: boolean;\n target?: string;\n rel?: string;\n}): string | undefined {\n return useMemo(() => {\n if (!isExternalLink && target !== '_blank') {\n return rel;\n }\n\n const relValues = new Set((rel ?? '').split(/\\s+/).filter(Boolean));\n relValues.add('noopener');\n relValues.add('noreferrer');\n\n return Array.from(relValues).join(' ');\n }, [isExternalLink, target, rel]);\n}\n","import {cva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const linkRecipe = cva({\n base: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n fontFamily: 'body',\n fontWeight: 'inherit',\n lineHeight: 'normal',\n textDecoration: 'none',\n cursor: 'pointer',\n transitionProperty: 'color, text-decoration-color, opacity',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n _hover: {\n textDecoration: 'underline',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n '&[aria-disabled=\"true\"]': {\n cursor: 'not-allowed',\n opacity: 0.5,\n },\n },\n variants: {\n size: {\n xs: {fontSize: 'xs'},\n sm: {fontSize: 'sm'},\n md: {fontSize: 'md'},\n lg: {fontSize: 'lg'},\n xl: {fontSize: 'xl'},\n '2xl': {fontSize: '2xl'},\n '3xl': {fontSize: '3xl'},\n '4xl': {fontSize: '4xl'},\n '5xl': {fontSize: '5xl'},\n '6xl': {fontSize: '6xl'},\n inherit: {fontSize: 'inherit'},\n },\n color: {\n primary: {\n color: 'fg',\n },\n secondary: {\n color: 'fg.muted',\n },\n disabled: {\n color: 'fg.disabled',\n },\n placeholder: {\n color: 'fg.muted',\n },\n active: {\n color: 'primary',\n },\n inherit: {\n color: 'inherit',\n },\n },\n weight: {\n normal: {fontWeight: 'normal'},\n medium: {fontWeight: 'medium'},\n semibold: {fontWeight: 'semibold'},\n bold: {fontWeight: 'bold'},\n inherit: {fontWeight: 'inherit'},\n },\n hasUnderline: {\n true: {\n textDecoration: 'underline',\n },\n false: {},\n },\n },\n defaultVariants: {\n color: 'active',\n size: 'md',\n hasUnderline: false,\n },\n});\n\nexport type LinkVariants = RecipeVariantProps<typeof linkRecipe>;\n","import {createContext} from 'react';\nimport type {LinkComponent} from './types';\n\nexport interface LinkContextValue {\n component: LinkComponent;\n}\n\nexport const LinkContext = createContext<LinkContextValue | null>(null);\nLinkContext.displayName = 'LinkContext';\n","import {use} from 'react';\nimport {LinkContext} from './LinkContext';\nimport type {LinkComponent} from './types';\n\nexport function useLinkComponent(as?: LinkComponent): LinkComponent {\n const context = use(LinkContext);\n return as ?? context?.component ?? 'a';\n}\n","/* eslint-disable @eslint-react/static-components -- intentional polymorphism via as prop */\n\nimport {ExternalLink} from 'lucide-react';\nimport type {CSSProperties, MouseEventHandler, ReactNode, Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {VisuallyHidden} from '../../internal';\nimport {cx} from '../../internal/cx';\nimport {getAriaLabel, useRel} from '../../internal/linkAccessibility';\nimport {Icon} from '../Icon';\nimport type {TextColor, TextSize, TextWeight} from '../Text';\nimport {Tooltip} from '../Tooltip';\nimport {linkRecipe} from './Link.recipe';\nimport type {LinkComponent} from './types';\nimport {useLinkComponent} from './useLinkComponent';\n\n/**\n * A polymorphic link component with built-in accessibility, external link handling,\n * and router integration via LinkProvider. Supports custom link components (e.g.\n * React Router's Link) through the `as` prop or a parent `LinkProvider`.\n */\nexport interface LinkProps {\n /**\n * Identifies the element(s) whose contents are controlled by the link.\n */\n 'aria-controls'?: string;\n /**\n * Indicates the current item in a set (e.g. current page in navigation).\n */\n 'aria-current'?: 'page' | 'step' | 'location' | 'date' | 'time' | 'true';\n /**\n * Identifies the element(s) that describe the link.\n */\n 'aria-describedby'?: string;\n /**\n * Accessible description for the link.\n */\n 'aria-description'?: string;\n /**\n * Identifies the element that provides a detailed description.\n */\n 'aria-details'?: string;\n /**\n * Indicates whether a controlled element is expanded or collapsed.\n */\n 'aria-expanded'?: boolean;\n /**\n * Indicates the link opens an interactive popup element.\n */\n 'aria-haspopup'?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';\n /**\n * Indicates whether the element is exposed to the accessibility API.\n */\n 'aria-hidden'?: boolean;\n /**\n * Keyboard shortcuts that activate or focus the link.\n */\n 'aria-keyshortcuts'?: string;\n /**\n * Identifies the element(s) that label the link.\n */\n 'aria-labelledby'?: string;\n /**\n * Identifies element(s) owned by the link that are not DOM children.\n */\n 'aria-owns'?: string;\n /**\n * Human-readable description of the role of the link.\n */\n 'aria-roledescription'?: string;\n /**\n * Custom element type to render instead of `<a>`. Useful for integrating with routers.\n * If you want to set this globally, use LinkProvider at the top level of your app.\n */\n as?: LinkComponent;\n /**\n * Link content.\n */\n children: ReactNode;\n /**\n * Optionally, rendering by setting the className.\n */\n className?: string;\n /**\n * Color variant controlling the link text color. Default is `active`.\n */\n color?: TextColor;\n /**\n * Test id applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Show a persistent underline on the link text.\n */\n hasUnderline?: boolean;\n /**\n * URL destination. Custom link components receive this as both `href` and\n * `to` so router links and anchor-like links can share the same Silver UI API.\n * When omitted, Link renders `href=\"#\"` to preserve native link semantics and\n * prevents the fallback hash navigation.\n */\n href?: string;\n /**\n * Visually and functionally disable the link. Prevents navigation and removes from tab order.\n */\n isDisabled?: boolean;\n /**\n * Mark as an external link. Adds an icon and rel=\"noopener noreferrer\".\n * Defaults target to \"_blank\" unless target is set explicitly.\n */\n isExternalLink?: boolean;\n /**\n * Accessible label (aria-label). It is recommended to set this if your link does not contain sufficient text to make its purpose clear.\n */\n label?: string;\n /**\n * Click handler. Not called when the link is disabled.\n */\n onClick?: MouseEventHandler<HTMLAnchorElement>;\n /**\n * Ref forwarded to the underlying anchor element.\n */\n ref?: Ref<HTMLAnchorElement>;\n /**\n * HTML rel attribute.\n */\n rel?: string;\n /**\n * Font size variant. Default is `md`.\n */\n size?: TextSize;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * HTML target attribute.\n */\n target?: string;\n /**\n * Tooltip text shown on hover.\n */\n tooltip?: string;\n /**\n * Font weight variant. Default is inherited from parent styles.\n */\n weight?: TextWeight;\n}\n\nexport function Link({\n 'aria-controls': ariaControls,\n 'aria-current': ariaCurrent,\n 'aria-description': ariaDescription,\n 'aria-describedby': ariaDescribedby,\n 'aria-details': ariaDetails,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n 'aria-hidden': ariaHidden,\n 'aria-keyshortcuts': ariaKeyshortcuts,\n 'aria-labelledby': ariaLabelledby,\n 'aria-owns': ariaOwns,\n 'aria-roledescription': ariaRoledescription,\n as,\n label,\n href: hrefFromProps,\n hasUnderline = false,\n isDisabled = false,\n isExternalLink = false,\n target: targetFromProps,\n rel: relFromProps,\n size,\n tooltip,\n color,\n weight,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n children,\n onClick,\n}: LinkProps): React.JSX.Element {\n const Component = useLinkComponent(as);\n const href = hrefFromProps ?? '#';\n const isFallbackHref = hrefFromProps == null;\n const target = targetFromProps ?? (isExternalLink ? '_blank' : undefined);\n const opensInNewTab = target === '_blank';\n const rel = useRel({isExternalLink, target, rel: relFromProps});\n\n const ariaAttrs = {\n 'aria-controls': ariaControls,\n 'aria-current': ariaCurrent,\n 'aria-description': ariaDescription,\n 'aria-describedby': ariaDescribedby,\n 'aria-details': ariaDetails,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHaspopup,\n 'aria-hidden': ariaHidden,\n 'aria-keyshortcuts': ariaKeyshortcuts,\n 'aria-labelledby': ariaLabelledby,\n 'aria-owns': ariaOwns,\n 'aria-roledescription': ariaRoledescription,\n };\n\n const handleClick: MouseEventHandler<HTMLAnchorElement> = event => {\n if (isDisabled || isFallbackHref) {\n event.preventDefault();\n }\n\n if (isDisabled) {\n return;\n }\n\n onClick?.(event);\n };\n\n const element = (\n <Component\n {...ariaAttrs}\n aria-disabled={isDisabled || undefined}\n aria-label={getAriaLabel(label, opensInNewTab)}\n className={cx(linkRecipe({color, hasUnderline, size, weight}), className)}\n data-testid={dataTestId}\n href={isDisabled ? undefined : href}\n onClick={handleClick}\n ref={ref}\n rel={isDisabled ? undefined : rel}\n role={isDisabled && hrefFromProps != null ? 'link' : undefined}\n style={style}\n tabIndex={isDisabled ? -1 : undefined}\n target={isDisabled ? undefined : target}\n to={isDisabled ? undefined : Component === 'a' ? undefined : href}>\n {children}\n {opensInNewTab && label == null ? (\n <>\n {' '}\n <VisuallyHidden>(opens in new tab)</VisuallyHidden>\n </>\n ) : null}\n {isExternalLink ? (\n <span aria-hidden=\"true\" className={styles.externalLink}>\n <Icon icon={ExternalLink} size=\"sm\" />\n </span>\n ) : null}\n </Component>\n );\n\n if (tooltip != null) {\n return <Tooltip content={tooltip}>{element}</Tooltip>;\n }\n\n return element;\n}\n\nLink.displayName = 'Link';\n\nconst styles = {\n externalLink: css({\n display: 'inline-flex',\n flexShrink: 0,\n fontSize: '0.875em',\n lineHeight: 1,\n }),\n};\n","import {useMemo, type ReactNode} from 'react';\nimport {LinkContext} from './LinkContext';\nimport type {LinkComponent} from './types';\n\nexport interface LinkProviderProps {\n children: ReactNode;\n component: LinkComponent;\n}\n\nexport function LinkProvider({\n component,\n children,\n}: LinkProviderProps): React.JSX.Element {\n const value = useMemo(() => ({component}), [component]);\n\n return <LinkContext value={value}>{children}</LinkContext>;\n}\n\nLinkProvider.displayName = 'LinkProvider';\n"]}
@@ -1,4 +1,4 @@
1
- import { getNecessity, Field } from './chunk-ASJ5CBCR.js';
1
+ import { getNecessity, Field } from './chunk-RLOGQBFD.js';
2
2
  import { isReactNode } from './chunk-2PSZAWLC.js';
3
3
  import { cva } from './chunk-FMEIPGUP.js';
4
4
  import { cx } from './chunk-PPNETWIP.js';
@@ -214,5 +214,5 @@ function InputGroupText({
214
214
  InputGroupText.displayName = "InputGroupText";
215
215
 
216
216
  export { InputGroup, InputGroupContext, InputGroupText, useInputGroup };
217
- //# sourceMappingURL=chunk-IRSJHEYI.js.map
218
- //# sourceMappingURL=chunk-IRSJHEYI.js.map
217
+ //# sourceMappingURL=chunk-FP5E5BUM.js.map
218
+ //# sourceMappingURL=chunk-FP5E5BUM.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/InputGroup/InputGroup.recipe.ts","../src/components/InputGroup/InputGroupContext.ts","../src/components/InputGroup/InputGroup.tsx","../src/components/InputGroup/InputGroupText.tsx"],"names":["jsx"],"mappings":"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","file":"chunk-IRSJHEYI.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\nimport type {InputSize, InputStatusType} from '../Field';\n\nconst addonSelector = '& > [data-silver-input-group-text]';\nconst controlSelector = '& > :not([data-silver-input-group-text])';\nconst itemSelector = '& > *';\n\nconst statusStyles = {\n error: {\n borderColor: 'status.error.border',\n _focusWithin: {borderColor: 'status.error.border'},\n },\n success: {\n borderColor: 'status.success.border',\n _focusWithin: {borderColor: 'status.success.border'},\n },\n warning: {\n borderColor: 'status.warning.border',\n _focusWithin: {borderColor: 'status.warning.border'},\n },\n} satisfies Record<InputStatusType, object>;\n\nexport const inputGroupRecipe = cva({\n base: {\n display: 'inline-flex',\n alignItems: 'stretch',\n isolation: 'isolate',\n maxW: 'full',\n [itemSelector]: {\n position: 'relative',\n borderRadius: 0,\n },\n [`${itemSelector}:not(:first-child)`]: {\n marginInlineStart: '-1px',\n },\n [`${itemSelector}:first-child`]: {\n borderStartStartRadius: 'md',\n borderEndStartRadius: 'md',\n },\n [`${itemSelector}:last-child`]: {\n borderStartEndRadius: 'md',\n borderEndEndRadius: 'md',\n },\n [`${itemSelector}:focus-within`]: {\n zIndex: 1,\n },\n [controlSelector]: {\n flex: 1,\n minW: 0,\n h: 'full',\n },\n [addonSelector]: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n px: '3',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border.emphasized',\n bg: 'bg.subtle',\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'md',\n lineHeight: 'normal',\n whiteSpace: 'nowrap',\n },\n },\n variants: {\n isDisabled: {\n false: {},\n true: {\n cursor: 'not-allowed',\n opacity: 0.55,\n },\n },\n size: {\n lg: {\n [addonSelector]: {\n minH: 'component.lg',\n },\n },\n md: {\n [addonSelector]: {\n minH: 'component.md',\n },\n },\n sm: {\n [addonSelector]: {\n minH: 'component.sm',\n },\n },\n },\n status: {\n error: {\n [addonSelector]: statusStyles.error,\n [controlSelector]: statusStyles.error,\n },\n success: {\n [addonSelector]: statusStyles.success,\n [controlSelector]: statusStyles.success,\n },\n warning: {\n [addonSelector]: statusStyles.warning,\n [controlSelector]: statusStyles.warning,\n },\n },\n },\n defaultVariants: {\n isDisabled: false,\n size: 'md',\n },\n});\n\nexport type InputGroupVariants = RecipeVariantProps<typeof inputGroupRecipe>;\nexport type InputGroupSize = InputSize;\n","import {createContext, use} from 'react';\nimport type {InputSize, InputStatusType} from '../Field';\n\nexport interface InputGroupContextValue {\n isDisabled: boolean;\n isInGroup: true;\n label: string;\n size: InputSize;\n statusType?: InputStatusType;\n}\n\nexport const InputGroupContext = createContext<InputGroupContextValue | null>(\n null,\n);\n\nInputGroupContext.displayName = 'InputGroupContext';\n\nexport function useInputGroup(): InputGroupContextValue | null {\n return use(InputGroupContext);\n}\n","import {\n useMemo,\n useId,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from '../Field';\nimport {inputGroupRecipe} from './InputGroup.recipe';\nimport {InputGroupContext} from './InputGroupContext';\n\nexport type InputGroupProps = {\n /**\n * Grouped input children to render side-by-side.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the group wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the group wrapper.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: ReactNode;\n /**\n * Whether all grouped inputs are 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 * Label text for the input group.\n */\n label: string;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Ref forwarded to the group wrapper.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Visual size applied to the group.\n * @default 'md'\n */\n size?: InputSize;\n /**\n * Validation status displayed below the group.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the group wrapper.\n */\n style?: CSSProperties;\n} & FieldNecessity;\n\n/**\n * Groups multiple inputs into a single visually connected row.\n */\nexport function InputGroup({\n children,\n label,\n description,\n isDisabled = false,\n isLabelHidden = false,\n isOptional,\n isRequired,\n size = 'md',\n status,\n labelTooltip,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: InputGroupProps): React.JSX.Element {\n const inputId = useId();\n const labelId = `${inputId}-label`;\n const descriptionID = isReactNode(description)\n ? `${inputId}-description`\n : undefined;\n const statusID = status?.message != null ? `${inputId}-status` : undefined;\n const describedBy =\n [descriptionID, statusID].filter(Boolean).join(' ') || undefined;\n const contextValue = useMemo(\n () => ({\n isInGroup: true as const,\n isDisabled,\n label,\n size,\n statusType: status?.type,\n }),\n [isDisabled, label, size, status?.type],\n );\n\n const necessity = getNecessity(isOptional, isRequired);\n\n return (\n <InputGroupContext value={contextValue}>\n <Field\n description={description}\n descriptionID={descriptionID}\n inputId={inputId}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n labelAs=\"span\"\n labelId={labelId}\n {...necessity}\n label={label}\n labelTooltip={labelTooltip}\n status={status == null ? undefined : {...status, messageID: statusID}}\n statusVariant=\"detached\">\n <div\n aria-describedby={describedBy}\n aria-disabled={isDisabled || undefined}\n aria-labelledby={labelId}\n className={cx(\n inputGroupRecipe({\n isDisabled,\n size,\n status: status?.type,\n }),\n className,\n )}\n data-testid={dataTestId}\n ref={ref}\n role=\"group\"\n style={style}>\n {children}\n </div>\n </Field>\n </InputGroupContext>\n );\n}\n\nInputGroup.displayName = 'InputGroup';\n","import type {CSSProperties, ReactNode, Ref} from 'react';\nimport {cx} from '../../internal/cx';\n\nexport interface InputGroupTextProps {\n children: ReactNode;\n className?: string;\n 'data-testid'?: string;\n ref?: Ref<HTMLDivElement>;\n style?: CSSProperties;\n}\n\nexport function InputGroupText({\n children,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: InputGroupTextProps): React.JSX.Element {\n return (\n <div\n className={cx(className)}\n data-silver-input-group-text=\"\"\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {children}\n </div>\n );\n}\n\nInputGroupText.displayName = 'InputGroupText';\n"]}
1
+ {"version":3,"sources":["../src/components/InputGroup/InputGroup.recipe.ts","../src/components/InputGroup/InputGroupContext.ts","../src/components/InputGroup/InputGroup.tsx","../src/components/InputGroup/InputGroupText.tsx"],"names":["jsx"],"mappings":"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","file":"chunk-FP5E5BUM.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\nimport type {InputSize, InputStatusType} from '../Field';\n\nconst addonSelector = '& > [data-silver-input-group-text]';\nconst controlSelector = '& > :not([data-silver-input-group-text])';\nconst itemSelector = '& > *';\n\nconst statusStyles = {\n error: {\n borderColor: 'status.error.border',\n _focusWithin: {borderColor: 'status.error.border'},\n },\n success: {\n borderColor: 'status.success.border',\n _focusWithin: {borderColor: 'status.success.border'},\n },\n warning: {\n borderColor: 'status.warning.border',\n _focusWithin: {borderColor: 'status.warning.border'},\n },\n} satisfies Record<InputStatusType, object>;\n\nexport const inputGroupRecipe = cva({\n base: {\n display: 'inline-flex',\n alignItems: 'stretch',\n isolation: 'isolate',\n maxW: 'full',\n [itemSelector]: {\n position: 'relative',\n borderRadius: 0,\n },\n [`${itemSelector}:not(:first-child)`]: {\n marginInlineStart: '-1px',\n },\n [`${itemSelector}:first-child`]: {\n borderStartStartRadius: 'md',\n borderEndStartRadius: 'md',\n },\n [`${itemSelector}:last-child`]: {\n borderStartEndRadius: 'md',\n borderEndEndRadius: 'md',\n },\n [`${itemSelector}:focus-within`]: {\n zIndex: 1,\n },\n [controlSelector]: {\n flex: 1,\n minW: 0,\n h: 'full',\n },\n [addonSelector]: {\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n px: '3',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border.emphasized',\n bg: 'bg.subtle',\n color: 'fg.muted',\n fontFamily: 'body',\n fontSize: 'md',\n lineHeight: 'normal',\n whiteSpace: 'nowrap',\n },\n },\n variants: {\n isDisabled: {\n false: {},\n true: {\n cursor: 'not-allowed',\n opacity: 0.55,\n },\n },\n size: {\n lg: {\n [addonSelector]: {\n minH: 'component.lg',\n },\n },\n md: {\n [addonSelector]: {\n minH: 'component.md',\n },\n },\n sm: {\n [addonSelector]: {\n minH: 'component.sm',\n },\n },\n },\n status: {\n error: {\n [addonSelector]: statusStyles.error,\n [controlSelector]: statusStyles.error,\n },\n success: {\n [addonSelector]: statusStyles.success,\n [controlSelector]: statusStyles.success,\n },\n warning: {\n [addonSelector]: statusStyles.warning,\n [controlSelector]: statusStyles.warning,\n },\n },\n },\n defaultVariants: {\n isDisabled: false,\n size: 'md',\n },\n});\n\nexport type InputGroupVariants = RecipeVariantProps<typeof inputGroupRecipe>;\nexport type InputGroupSize = InputSize;\n","import {createContext, use} from 'react';\nimport type {InputSize, InputStatusType} from '../Field';\n\nexport interface InputGroupContextValue {\n isDisabled: boolean;\n isInGroup: true;\n label: string;\n size: InputSize;\n statusType?: InputStatusType;\n}\n\nexport const InputGroupContext = createContext<InputGroupContextValue | null>(\n null,\n);\n\nInputGroupContext.displayName = 'InputGroupContext';\n\nexport function useInputGroup(): InputGroupContextValue | null {\n return use(InputGroupContext);\n}\n","import {\n useMemo,\n useId,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from '../Field';\nimport {inputGroupRecipe} from './InputGroup.recipe';\nimport {InputGroupContext} from './InputGroupContext';\n\nexport type InputGroupProps = {\n /**\n * Grouped input children to render side-by-side.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the group wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the group wrapper.\n */\n 'data-testid'?: string;\n /**\n * Supporting text displayed below the label.\n */\n description?: ReactNode;\n /**\n * Whether all grouped inputs are 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 * Label text for the input group.\n */\n label: string;\n /**\n * Tooltip content shown next to the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Ref forwarded to the group wrapper.\n */\n ref?: Ref<HTMLDivElement>;\n /**\n * Visual size applied to the group.\n * @default 'md'\n */\n size?: InputSize;\n /**\n * Validation status displayed below the group.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the group wrapper.\n */\n style?: CSSProperties;\n} & FieldNecessity;\n\n/**\n * Groups multiple inputs into a single visually connected row.\n */\nexport function InputGroup({\n children,\n label,\n description,\n isDisabled = false,\n isLabelHidden = false,\n isOptional,\n isRequired,\n size = 'md',\n status,\n labelTooltip,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: InputGroupProps): React.JSX.Element {\n const inputId = useId();\n const labelId = `${inputId}-label`;\n const descriptionID = isReactNode(description)\n ? `${inputId}-description`\n : undefined;\n const statusID = status?.message != null ? `${inputId}-status` : undefined;\n const describedBy =\n [descriptionID, statusID].filter(Boolean).join(' ') || undefined;\n const contextValue = useMemo(\n () => ({\n isInGroup: true as const,\n isDisabled,\n label,\n size,\n statusType: status?.type,\n }),\n [isDisabled, label, size, status?.type],\n );\n\n const necessity = getNecessity(isOptional, isRequired);\n\n return (\n <InputGroupContext value={contextValue}>\n <Field\n description={description}\n descriptionID={descriptionID}\n inputId={inputId}\n isDisabled={isDisabled}\n isLabelHidden={isLabelHidden}\n labelAs=\"span\"\n labelId={labelId}\n {...necessity}\n label={label}\n labelTooltip={labelTooltip}\n status={status == null ? undefined : {...status, messageID: statusID}}\n statusVariant=\"detached\">\n <div\n aria-describedby={describedBy}\n aria-disabled={isDisabled || undefined}\n aria-labelledby={labelId}\n className={cx(\n inputGroupRecipe({\n isDisabled,\n size,\n status: status?.type,\n }),\n className,\n )}\n data-testid={dataTestId}\n ref={ref}\n role=\"group\"\n style={style}>\n {children}\n </div>\n </Field>\n </InputGroupContext>\n );\n}\n\nInputGroup.displayName = 'InputGroup';\n","import type {CSSProperties, ReactNode, Ref} from 'react';\nimport {cx} from '../../internal/cx';\n\nexport interface InputGroupTextProps {\n children: ReactNode;\n className?: string;\n 'data-testid'?: string;\n ref?: Ref<HTMLDivElement>;\n style?: CSSProperties;\n}\n\nexport function InputGroupText({\n children,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: InputGroupTextProps): React.JSX.Element {\n return (\n <div\n className={cx(className)}\n data-silver-input-group-text=\"\"\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n {children}\n </div>\n );\n}\n\nInputGroupText.displayName = 'InputGroupText';\n"]}
@@ -1,9 +1,9 @@
1
- import { useInputGroup } from './chunk-IRSJHEYI.js';
1
+ import { useInputGroup } from './chunk-FP5E5BUM.js';
2
2
  import { inputStyles, inputRecipe } from './chunk-3M23WX6K.js';
3
- import { Field, getNecessity } from './chunk-ASJ5CBCR.js';
3
+ import { Field, getNecessity } from './chunk-RLOGQBFD.js';
4
4
  import { getStatusMessageID, getDescribedBy, getStatusIcon } from './chunk-WOIWI2UO.js';
5
- import { Button } from './chunk-RVENUWRD.js';
6
- import { Spinner } from './chunk-DSB4Q3AS.js';
5
+ import { Button } from './chunk-2LABTS4P.js';
6
+ import { Spinner } from './chunk-6ULCJ3XZ.js';
7
7
  import { isReactNode } from './chunk-2PSZAWLC.js';
8
8
  import { Icon } from './chunk-7T3SWOY7.js';
9
9
  import { cx } from './chunk-PPNETWIP.js';
@@ -138,5 +138,5 @@ function TextInput({
138
138
  TextInput.displayName = "TextInput";
139
139
 
140
140
  export { TextInput };
141
- //# sourceMappingURL=chunk-ZVH3BLYO.js.map
142
- //# sourceMappingURL=chunk-ZVH3BLYO.js.map
141
+ //# sourceMappingURL=chunk-G2U2W422.js.map
142
+ //# sourceMappingURL=chunk-G2U2W422.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/TextInput/TextInput.tsx"],"names":[],"mappings":"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","file":"chunk-ZVH3BLYO.js","sourcesContent":["import {X} from 'lucide-react';\nimport {\n useId,\n type ChangeEvent,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {Button} from '../Button';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from '../Field';\nimport {inputRecipe, inputStyles} from '../Field/inputStyles';\nimport {\n getDescribedBy,\n getStatusIcon,\n getStatusMessageID,\n} from '../Field/inputUtils';\nimport {Icon, type IconComponent} from '../Icon';\nimport {useInputGroup} from '../InputGroup';\nimport {Spinner} from '../Spinner';\n\nexport type TextInputType = 'email' | 'password' | 'text';\n\nexport type TextInputProps = {\n /**\n * HTML autocomplete hint for the browser.\n */\n autoComplete?: string;\n /**\n * Additional CSS class names applied to the input wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Supporting text rendered below the label.\n */\n description?: ReactNode;\n /**\n * Content rendered after the input, before the status icon.\n */\n endContent?: ReactNode;\n /**\n * Whether to focus the input on mount.\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a clear button when the input has a value.\n */\n hasClear?: boolean;\n /**\n * HTML name attribute.\n */\n htmlName?: string;\n /**\n * Whether the input is disabled.\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n */\n isLabelHidden?: boolean;\n /**\n * Whether the input is loading.\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip shown beside the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called with the next string value.\n */\n onChange: (\n value: string,\n event: ChangeEvent<HTMLInputElement> | null,\n ) => void;\n /**\n * Called when Enter is pressed.\n */\n onEnter?: () => void;\n /**\n * Called when the input gains focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Keyboard event handler for the input.\n */\n onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;\n /**\n * Placeholder text.\n */\n placeholder?: string;\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Visual size.\n */\n size?: InputSize;\n /**\n * Icon shown before the input.\n */\n startIcon?: IconComponent;\n /**\n * Status displayed on the field.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the wrapper.\n */\n style?: CSSProperties;\n /**\n * HTML input type.\n */\n type?: TextInputType;\n /**\n * Controlled input value.\n */\n value: string;\n} & FieldNecessity;\n\n/**\n * Single-line text input field.\n */\nexport function TextInput({\n autoComplete,\n label,\n value,\n onChange,\n onBlur,\n onFocus,\n type = 'text',\n size: sizeProp = 'md',\n placeholder,\n description,\n endContent,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isLoading = false,\n hasClear = false,\n hasAutoFocus = false,\n htmlName,\n status,\n labelIcon,\n labelTooltip,\n startIcon,\n onEnter,\n onKeyDown,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: TextInputProps): 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 inputGroup = useInputGroup();\n const effectiveDisabled = isDisabled || inputGroup?.isDisabled === true;\n const size = inputGroup?.size ?? sizeProp;\n const effectiveStatusType = status?.type ?? inputGroup?.statusType;\n\n const inputWrapper = (\n <div\n className={cx(\n inputRecipe({\n size,\n status: effectiveStatusType,\n isDisabled: effectiveDisabled,\n }),\n inputGroup != null ? className : undefined,\n )}\n style={inputGroup != null ? style : undefined}>\n {startIcon != null ? (\n <span className={inputStyles.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <input\n aria-busy={isLoading || undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || undefined}\n aria-label={inputGroup != null ? label : undefined}\n aria-required={isRequired ?? undefined}\n autoComplete={autoComplete}\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={inputStyles.control}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={effectiveDisabled}\n id={inputId}\n name={htmlName}\n onBlur={onBlur}\n onChange={event => onChange(event.target.value, event)}\n onFocus={onFocus}\n onKeyDown={event => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n onEnter?.();\n }\n onKeyDown?.(event);\n }}\n placeholder={placeholder}\n ref={ref}\n required={isRequired ?? undefined}\n type={type}\n value={value}\n />\n {hasClear && value !== '' && !effectiveDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={() => onChange('', null)}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n {endContent}\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {status != null ? (\n <span className={inputStyles.iconSlot}>\n {getStatusIcon(status.type)}\n </span>\n ) : null}\n </div>\n );\n\n if (inputGroup != null) {\n return inputWrapper;\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 {...getNecessity(isOptional, isRequired)}\n label={label}\n labelIcon={labelIcon}\n labelTooltip={labelTooltip}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n style={style}>\n {inputWrapper}\n </Field>\n );\n}\n\nTextInput.displayName = 'TextInput';\n"]}
1
+ {"version":3,"sources":["../src/components/TextInput/TextInput.tsx"],"names":[],"mappings":"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","file":"chunk-G2U2W422.js","sourcesContent":["import {X} from 'lucide-react';\nimport {\n useId,\n type ChangeEvent,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport isReactNode from '../../internal/isReactNode';\nimport {Button} from '../Button';\nimport {\n Field,\n getNecessity,\n type FieldNecessity,\n type InputSize,\n type InputStatus,\n} from '../Field';\nimport {inputRecipe, inputStyles} from '../Field/inputStyles';\nimport {\n getDescribedBy,\n getStatusIcon,\n getStatusMessageID,\n} from '../Field/inputUtils';\nimport {Icon, type IconComponent} from '../Icon';\nimport {useInputGroup} from '../InputGroup';\nimport {Spinner} from '../Spinner';\n\nexport type TextInputType = 'email' | 'password' | 'text';\n\nexport type TextInputProps = {\n /**\n * HTML autocomplete hint for the browser.\n */\n autoComplete?: string;\n /**\n * Additional CSS class names applied to the input wrapper.\n */\n className?: string;\n /**\n * Test ID applied to the input element.\n */\n 'data-testid'?: string;\n /**\n * Supporting text rendered below the label.\n */\n description?: ReactNode;\n /**\n * Content rendered after the input, before the status icon.\n */\n endContent?: ReactNode;\n /**\n * Whether to focus the input on mount.\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a clear button when the input has a value.\n */\n hasClear?: boolean;\n /**\n * HTML name attribute.\n */\n htmlName?: string;\n /**\n * Whether the input is disabled.\n */\n isDisabled?: boolean;\n /**\n * Whether to visually hide the label.\n */\n isLabelHidden?: boolean;\n /**\n * Whether the input is loading.\n */\n isLoading?: boolean;\n /**\n * Field label.\n */\n label: string;\n /**\n * Icon shown before the label.\n */\n labelIcon?: IconComponent;\n /**\n * Tooltip shown beside the label.\n */\n labelTooltip?: ReactNode;\n /**\n * Called when the input loses focus.\n */\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Called with the next string value.\n */\n onChange: (\n value: string,\n event: ChangeEvent<HTMLInputElement> | null,\n ) => void;\n /**\n * Called when Enter is pressed.\n */\n onEnter?: () => void;\n /**\n * Called when the input gains focus.\n */\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n /**\n * Keyboard event handler for the input.\n */\n onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;\n /**\n * Placeholder text.\n */\n placeholder?: string;\n /**\n * Ref forwarded to the input element.\n */\n ref?: Ref<HTMLInputElement>;\n /**\n * Visual size.\n */\n size?: InputSize;\n /**\n * Icon shown before the input.\n */\n startIcon?: IconComponent;\n /**\n * Status displayed on the field.\n */\n status?: InputStatus;\n /**\n * Inline styles applied to the wrapper.\n */\n style?: CSSProperties;\n /**\n * HTML input type.\n */\n type?: TextInputType;\n /**\n * Controlled input value.\n */\n value: string;\n} & FieldNecessity;\n\n/**\n * Single-line text input field.\n */\nexport function TextInput({\n autoComplete,\n label,\n value,\n onChange,\n onBlur,\n onFocus,\n type = 'text',\n size: sizeProp = 'md',\n placeholder,\n description,\n endContent,\n isLabelHidden = false,\n isOptional,\n isRequired,\n isDisabled = false,\n isLoading = false,\n hasClear = false,\n hasAutoFocus = false,\n htmlName,\n status,\n labelIcon,\n labelTooltip,\n startIcon,\n onEnter,\n onKeyDown,\n className,\n 'data-testid': dataTestId,\n style,\n ref,\n}: TextInputProps): 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 inputGroup = useInputGroup();\n const effectiveDisabled = isDisabled || inputGroup?.isDisabled === true;\n const size = inputGroup?.size ?? sizeProp;\n const effectiveStatusType = status?.type ?? inputGroup?.statusType;\n\n const inputWrapper = (\n <div\n className={cx(\n inputRecipe({\n size,\n status: effectiveStatusType,\n isDisabled: effectiveDisabled,\n }),\n inputGroup != null ? className : undefined,\n )}\n style={inputGroup != null ? style : undefined}>\n {startIcon != null ? (\n <span className={inputStyles.iconSlot}>\n <Icon color=\"secondary\" icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n <input\n aria-busy={isLoading || undefined}\n aria-describedby={describedBy}\n aria-invalid={status?.type === 'error' || undefined}\n aria-label={inputGroup != null ? label : undefined}\n aria-required={isRequired ?? undefined}\n autoComplete={autoComplete}\n // eslint-disable-next-line jsx-a11y-x/no-autofocus\n autoFocus={hasAutoFocus}\n className={inputStyles.control}\n data-autofocus={hasAutoFocus || undefined}\n data-testid={dataTestId}\n disabled={effectiveDisabled}\n id={inputId}\n name={htmlName}\n onBlur={onBlur}\n onChange={event => onChange(event.target.value, event)}\n onFocus={onFocus}\n onKeyDown={event => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n onEnter?.();\n }\n onKeyDown?.(event);\n }}\n placeholder={placeholder}\n ref={ref}\n required={isRequired ?? undefined}\n type={type}\n value={value}\n />\n {hasClear && value !== '' && !effectiveDisabled ? (\n <Button\n icon={X}\n isIconOnly\n label={`Clear ${label}`}\n onClick={() => onChange('', null)}\n size=\"sm\"\n variant=\"ghost\"\n />\n ) : null}\n {endContent}\n {isLoading ? <Spinner size=\"sm\" /> : null}\n {status != null ? (\n <span className={inputStyles.iconSlot}>\n {getStatusIcon(status.type)}\n </span>\n ) : null}\n </div>\n );\n\n if (inputGroup != null) {\n return inputWrapper;\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 {...getNecessity(isOptional, isRequired)}\n label={label}\n labelIcon={labelIcon}\n labelTooltip={labelTooltip}\n status={\n status == null ? undefined : {...status, messageID: statusMessageID}\n }\n style={style}>\n {inputWrapper}\n </Field>\n );\n}\n\nTextInput.displayName = 'TextInput';\n"]}
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkR37R7DEV_cjs = require('./chunk-R37R7DEV.cjs');
4
- var chunkBRB52QFV_cjs = require('./chunk-BRB52QFV.cjs');
5
- var chunkQEFE4QBL_cjs = require('./chunk-QEFE4QBL.cjs');
6
- var chunkU2WVHZ24_cjs = require('./chunk-U2WVHZ24.cjs');
4
+ var chunkQOKEU3DC_cjs = require('./chunk-QOKEU3DC.cjs');
5
+ var chunkM26XECB2_cjs = require('./chunk-M26XECB2.cjs');
6
+ var chunkJJ324PSZ_cjs = require('./chunk-JJ324PSZ.cjs');
7
7
  var chunkQAO6QMNQ_cjs = require('./chunk-QAO6QMNQ.cjs');
8
- var chunk6BK4LUK4_cjs = require('./chunk-6BK4LUK4.cjs');
9
8
  var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
9
+ var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
10
10
  var react = require('react');
11
11
  var lucideReact = require('lucide-react');
12
12
  var jsxRuntime = require('react/jsx-runtime');
@@ -100,7 +100,7 @@ function usePopover({
100
100
  role = "dialog"
101
101
  } = {}) {
102
102
  const skipAutoFocusRef = react.useRef(false);
103
- const layer = chunkU2WVHZ24_cjs.useLayer({ hasLightDismiss, onShow, onHide });
103
+ const layer = chunkJJ324PSZ_cjs.useLayer({ hasLightDismiss, onShow, onHide });
104
104
  const { containerRef: contentRef, focusFirst } = useFocusTrap({
105
105
  isActive: layer.isOpen,
106
106
  onEscape: layer.hide
@@ -141,7 +141,7 @@ function usePopover({
141
141
  children: [
142
142
  children,
143
143
  hasCloseButton ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.closeButtonWrapper, children: /* @__PURE__ */ jsxRuntime.jsx(
144
- chunkBRB52QFV_cjs.Button,
144
+ chunkQOKEU3DC_cjs.Button,
145
145
  {
146
146
  icon: lucideReact.X,
147
147
  isIconOnly: true,
@@ -311,7 +311,7 @@ function Popover({
311
311
  },
312
312
  [handleTriggerClick, handleTriggerKeyDown, popover.triggerProps]
313
313
  );
314
- chunkU2WVHZ24_cjs.useIsomorphicLayoutEffect(() => {
314
+ chunkJJ324PSZ_cjs.useIsomorphicLayoutEffect(() => {
315
315
  const anchor = anchorRef?.current ?? wrapperRef.current;
316
316
  if (anchor == null) {
317
317
  return;
@@ -329,7 +329,7 @@ function Popover({
329
329
  detach();
330
330
  };
331
331
  }, [anchorRef, attachTrigger, isEnabled, popover]);
332
- chunkU2WVHZ24_cjs.useIsomorphicLayoutEffect(() => {
332
+ chunkJJ324PSZ_cjs.useIsomorphicLayoutEffect(() => {
333
333
  if (!isControlled) {
334
334
  return;
335
335
  }
@@ -340,12 +340,12 @@ function Popover({
340
340
  }
341
341
  }, [isControlled, isOpen, popover]);
342
342
  const widthStyle = width == null ? void 0 : { width: typeof width === "number" ? `${width}px` : width };
343
- const paddingStyle = padding != null && padding !== 0 ? { padding: chunkQEFE4QBL_cjs.token(`spacing.${padding}`) } : void 0;
343
+ const paddingStyle = padding != null && padding !== 0 ? { padding: chunkM26XECB2_cjs.token(`spacing.${padding}`) } : void 0;
344
344
  const popoverContent = popover.render(
345
345
  /* @__PURE__ */ jsxRuntime.jsx(
346
346
  "div",
347
347
  {
348
- className: chunk6BK4LUK4_cjs.cx(styles2.content, className),
348
+ className: chunkSPDVNY2Z_cjs.cx(styles2.content, className),
349
349
  "data-testid": dataTestId,
350
350
  ref,
351
351
  style: { ...paddingStyle, ...widthStyle, ...style },
@@ -371,5 +371,5 @@ Popover.displayName = "Popover";
371
371
 
372
372
  exports.Popover = Popover;
373
373
  exports.usePopover = usePopover;
374
- //# sourceMappingURL=chunk-W3KMDQKP.cjs.map
375
- //# sourceMappingURL=chunk-W3KMDQKP.cjs.map
374
+ //# sourceMappingURL=chunk-G2WW52GO.cjs.map
375
+ //# sourceMappingURL=chunk-G2WW52GO.cjs.map