silver-ui 0.2.0 → 0.3.1

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 (654) hide show
  1. package/README.md +2 -1
  2. package/dist/{chunk-E7UOFIBW.cjs → chunk-23NN5WRP.cjs} +7 -6
  3. package/dist/chunk-23NN5WRP.cjs.map +1 -0
  4. package/dist/{chunk-3SLWOIT4.cjs → chunk-276LEL3G.cjs} +15 -6
  5. package/dist/chunk-276LEL3G.cjs.map +1 -0
  6. package/dist/chunk-2PSZAWLC.js +8 -0
  7. package/dist/chunk-2PSZAWLC.js.map +1 -0
  8. package/dist/{chunk-5MDH6QZE.js → chunk-2XAA3CM5.js} +7 -10
  9. package/dist/chunk-2XAA3CM5.js.map +1 -0
  10. package/dist/{chunk-SA3LUT6E.js → chunk-3DJ46WN4.js} +5 -5
  11. package/dist/{chunk-SA3LUT6E.js.map → chunk-3DJ46WN4.js.map} +1 -1
  12. package/dist/{chunk-JMLJLDHO.cjs → chunk-3IBY374V.cjs} +9 -9
  13. package/dist/{chunk-JMLJLDHO.cjs.map → chunk-3IBY374V.cjs.map} +1 -1
  14. package/dist/{chunk-7MB2KK6X.js → chunk-3L6KAW7G.js} +5 -5
  15. package/dist/{chunk-7MB2KK6X.js.map → chunk-3L6KAW7G.js.map} +1 -1
  16. package/dist/{chunk-WVQDFCFQ.js → chunk-3TXVDCF2.js} +4 -4
  17. package/dist/chunk-3TXVDCF2.js.map +1 -0
  18. package/dist/{chunk-P4A7GWQY.cjs → chunk-3XDUR3IG.cjs} +7 -6
  19. package/dist/chunk-3XDUR3IG.cjs.map +1 -0
  20. package/dist/{chunk-XHTKGOQV.cjs → chunk-3ZFEBOXD.cjs} +29 -18
  21. package/dist/chunk-3ZFEBOXD.cjs.map +1 -0
  22. package/dist/{chunk-UYKFE7KF.js → chunk-4CVDLMD6.js} +15 -6
  23. package/dist/chunk-4CVDLMD6.js.map +1 -0
  24. package/dist/{chunk-UUIAGGFW.cjs → chunk-4H35H54I.cjs} +35 -33
  25. package/dist/chunk-4H35H54I.cjs.map +1 -0
  26. package/dist/chunk-4MRORQNN.js +213 -0
  27. package/dist/chunk-4MRORQNN.js.map +1 -0
  28. package/dist/{chunk-CPZWTWYQ.js → chunk-54J6FRPG.js} +21 -16
  29. package/dist/chunk-54J6FRPG.js.map +1 -0
  30. package/dist/chunk-5AYGQJOW.js +162 -0
  31. package/dist/chunk-5AYGQJOW.js.map +1 -0
  32. package/dist/{chunk-GGZGVAEF.cjs → chunk-5BCLEOFF.cjs} +19 -16
  33. package/dist/chunk-5BCLEOFF.cjs.map +1 -0
  34. package/dist/{chunk-MEBIRX2P.js → chunk-5D4LRSIV.js} +6 -5
  35. package/dist/chunk-5D4LRSIV.js.map +1 -0
  36. package/dist/{chunk-4YQTSHIB.cjs → chunk-5GNYP3PH.cjs} +256 -209
  37. package/dist/chunk-5GNYP3PH.cjs.map +1 -0
  38. package/dist/{chunk-3DZPRXMC.cjs → chunk-5TT4PGZO.cjs} +6 -6
  39. package/dist/chunk-5TT4PGZO.cjs.map +1 -0
  40. package/dist/{chunk-AJYVGSBW.cjs → chunk-65QAZWOG.cjs} +4 -4
  41. package/dist/chunk-65QAZWOG.cjs.map +1 -0
  42. package/dist/{chunk-TZQWZ7IL.cjs → chunk-66LRFIYK.cjs} +8 -7
  43. package/dist/chunk-66LRFIYK.cjs.map +1 -0
  44. package/dist/{chunk-BDPE6ZKX.cjs → chunk-6MOJEGDU.cjs} +3 -3
  45. package/dist/{chunk-BDPE6ZKX.cjs.map → chunk-6MOJEGDU.cjs.map} +1 -1
  46. package/dist/{chunk-BA2VUDQS.js → chunk-6NTDPZWP.js} +3 -3
  47. package/dist/{chunk-BA2VUDQS.js.map → chunk-6NTDPZWP.js.map} +1 -1
  48. package/dist/{chunk-35MFOORC.js → chunk-6USJ4LJJ.js} +4 -4
  49. package/dist/{chunk-35MFOORC.js.map → chunk-6USJ4LJJ.js.map} +1 -1
  50. package/dist/{chunk-36QGPGT2.cjs → chunk-6W3L6IJB.cjs} +13 -12
  51. package/dist/chunk-6W3L6IJB.cjs.map +1 -0
  52. package/dist/{chunk-7P3VY5JZ.js → chunk-75CPTIET.js} +8 -7
  53. package/dist/chunk-75CPTIET.js.map +1 -0
  54. package/dist/{chunk-J2FCNWYM.js → chunk-76B2VLID.js} +82 -88
  55. package/dist/chunk-76B2VLID.js.map +1 -0
  56. package/dist/{chunk-FHKB6MBQ.js → chunk-7MN4JDP7.js} +31 -16
  57. package/dist/chunk-7MN4JDP7.js.map +1 -0
  58. package/dist/{chunk-3DFRJSNE.cjs → chunk-7PNLMDAR.cjs} +8 -8
  59. package/dist/{chunk-3DFRJSNE.cjs.map → chunk-7PNLMDAR.cjs.map} +1 -1
  60. package/dist/{chunk-ABEOBHAM.cjs → chunk-7U7RP6N2.cjs} +8 -8
  61. package/dist/{chunk-ABEOBHAM.cjs.map → chunk-7U7RP6N2.cjs.map} +1 -1
  62. package/dist/{chunk-463O56TB.js → chunk-AJTJD5C6.js} +6 -6
  63. package/dist/{chunk-463O56TB.js.map → chunk-AJTJD5C6.js.map} +1 -1
  64. package/dist/chunk-AMFFE5UJ.js +216 -0
  65. package/dist/chunk-AMFFE5UJ.js.map +1 -0
  66. package/dist/{chunk-K6CQ45C2.js → chunk-ASJ5CBCR.js} +7 -6
  67. package/dist/chunk-ASJ5CBCR.js.map +1 -0
  68. package/dist/{chunk-ESJND7B6.js → chunk-BA4A7C7U.js} +12 -9
  69. package/dist/chunk-BA4A7C7U.js.map +1 -0
  70. package/dist/{chunk-KFEXS6OK.cjs → chunk-BAPCHFNX.cjs} +10 -9
  71. package/dist/chunk-BAPCHFNX.cjs.map +1 -0
  72. package/dist/{chunk-O3T7Z6RH.cjs → chunk-BRB52QFV.cjs} +14 -54
  73. package/dist/chunk-BRB52QFV.cjs.map +1 -0
  74. package/dist/chunk-BS55BG2U.cjs +164 -0
  75. package/dist/chunk-BS55BG2U.cjs.map +1 -0
  76. package/dist/{chunk-TH3H5UGK.cjs → chunk-CEU7BIL6.cjs} +11 -11
  77. package/dist/{chunk-TH3H5UGK.cjs.map → chunk-CEU7BIL6.cjs.map} +1 -1
  78. package/dist/{chunk-VBL5SI5N.js → chunk-CN2HJ7CP.js} +212 -183
  79. package/dist/chunk-CN2HJ7CP.js.map +1 -0
  80. package/dist/{chunk-PXVVTPRJ.js → chunk-CRQXHA7N.js} +9 -8
  81. package/dist/chunk-CRQXHA7N.js.map +1 -0
  82. package/dist/{chunk-SXIBQQ55.js → chunk-CZC2K5GJ.js} +10 -9
  83. package/dist/chunk-CZC2K5GJ.js.map +1 -0
  84. package/dist/{chunk-WA4VZ363.cjs → chunk-CZM5FAWL.cjs} +11 -10
  85. package/dist/chunk-CZM5FAWL.cjs.map +1 -0
  86. package/dist/{chunk-3JVD4AXC.js → chunk-D2DOHX4W.js} +253 -206
  87. package/dist/chunk-D2DOHX4W.js.map +1 -0
  88. package/dist/chunk-D3SSMY73.cjs +80 -0
  89. package/dist/chunk-D3SSMY73.cjs.map +1 -0
  90. package/dist/{chunk-PTZAJW3J.js → chunk-DIIE44GO.js} +14 -13
  91. package/dist/chunk-DIIE44GO.js.map +1 -0
  92. package/dist/{chunk-S54CKWKV.js → chunk-DSB4Q3AS.js} +3 -3
  93. package/dist/{chunk-S54CKWKV.js.map → chunk-DSB4Q3AS.js.map} +1 -1
  94. package/dist/{chunk-AMG3S252.js → chunk-EBQ3A4XO.js} +9 -8
  95. package/dist/chunk-EBQ3A4XO.js.map +1 -0
  96. package/dist/{chunk-2K44WLBJ.js → chunk-EC2ALHNJ.js} +73 -67
  97. package/dist/chunk-EC2ALHNJ.js.map +1 -0
  98. package/dist/{chunk-JEK5SVB5.cjs → chunk-EE2O457Z.cjs} +9 -9
  99. package/dist/{chunk-JEK5SVB5.cjs.map → chunk-EE2O457Z.cjs.map} +1 -1
  100. package/dist/{chunk-DP4KK2N4.cjs → chunk-EVKFA5FA.cjs} +32 -27
  101. package/dist/chunk-EVKFA5FA.cjs.map +1 -0
  102. package/dist/{chunk-MNVBSOAQ.cjs → chunk-F3NATTQG.cjs} +81 -75
  103. package/dist/chunk-F3NATTQG.cjs.map +1 -0
  104. package/dist/{chunk-OJCJPYXE.js → chunk-F3ZNRO6W.js} +8 -7
  105. package/dist/chunk-F3ZNRO6W.js.map +1 -0
  106. package/dist/{chunk-OHKL4DOV.js → chunk-FZCBTFHY.js} +7 -6
  107. package/dist/chunk-FZCBTFHY.js.map +1 -0
  108. package/dist/{chunk-Z7ID5TC7.cjs → chunk-GLJWAY4A.cjs} +15 -10
  109. package/dist/chunk-GLJWAY4A.cjs.map +1 -0
  110. package/dist/{chunk-7DWASA3K.js → chunk-GXRH5XQY.js} +89 -74
  111. package/dist/chunk-GXRH5XQY.js.map +1 -0
  112. package/dist/{chunk-WE2AXMPB.js → chunk-HNROO7CR.js} +230 -170
  113. package/dist/chunk-HNROO7CR.js.map +1 -0
  114. package/dist/{chunk-UJODHP7E.cjs → chunk-HPVXP3DG.cjs} +12 -11
  115. package/dist/chunk-HPVXP3DG.cjs.map +1 -0
  116. package/dist/chunk-HVUYVPQL.cjs +193 -0
  117. package/dist/chunk-HVUYVPQL.cjs.map +1 -0
  118. package/dist/{chunk-PWL6TWVC.cjs → chunk-I7KILUVL.cjs} +13 -12
  119. package/dist/chunk-I7KILUVL.cjs.map +1 -0
  120. package/dist/{chunk-UY3MYNI6.js → chunk-IHM2M74J.js} +5 -4
  121. package/dist/chunk-IHM2M74J.js.map +1 -0
  122. package/dist/{chunk-4M2KCZMO.js → chunk-IRSJHEYI.js} +5 -4
  123. package/dist/chunk-IRSJHEYI.js.map +1 -0
  124. package/dist/{chunk-MX2F3HUI.cjs → chunk-JEIQ5GDK.cjs} +25 -24
  125. package/dist/chunk-JEIQ5GDK.cjs.map +1 -0
  126. package/dist/{chunk-YXYD5HKL.cjs → chunk-KFDHP4WP.cjs} +4 -4
  127. package/dist/{chunk-YXYD5HKL.cjs.map → chunk-KFDHP4WP.cjs.map} +1 -1
  128. package/dist/{chunk-FDSUILCM.cjs → chunk-KRZ57O2J.cjs} +3 -4
  129. package/dist/chunk-KRZ57O2J.cjs.map +1 -0
  130. package/dist/{chunk-W3QVSVL7.cjs → chunk-L5YTMHDI.cjs} +11 -10
  131. package/dist/chunk-L5YTMHDI.cjs.map +1 -0
  132. package/dist/{chunk-PNYF6NS4.cjs → chunk-L7BOLGF2.cjs} +8 -7
  133. package/dist/chunk-L7BOLGF2.cjs.map +1 -0
  134. package/dist/{chunk-QPYPPJEZ.js → chunk-LHP47U6H.js} +5 -4
  135. package/dist/chunk-LHP47U6H.js.map +1 -0
  136. package/dist/{chunk-EBCHOGKT.js → chunk-LUBVZVY3.js} +17 -16
  137. package/dist/chunk-LUBVZVY3.js.map +1 -0
  138. package/dist/{chunk-47FUQCAT.cjs → chunk-LX64ENLC.cjs} +66 -51
  139. package/dist/chunk-LX64ENLC.cjs.map +1 -0
  140. package/dist/{chunk-GYUWDJXS.cjs → chunk-M3BF3BBJ.cjs} +13 -12
  141. package/dist/chunk-M3BF3BBJ.cjs.map +1 -0
  142. package/dist/chunk-M3IKL2VG.js +393 -0
  143. package/dist/chunk-M3IKL2VG.js.map +1 -0
  144. package/dist/{chunk-RSG7N5QQ.cjs → chunk-M3RNFDA2.cjs} +14 -13
  145. package/dist/chunk-M3RNFDA2.cjs.map +1 -0
  146. package/dist/{chunk-U4GWNENK.js → chunk-M4JUQCKP.js} +3 -3
  147. package/dist/chunk-M4JUQCKP.js.map +1 -0
  148. package/dist/{chunk-YUONTRNC.js → chunk-MGVEX3RS.js} +7 -7
  149. package/dist/{chunk-YUONTRNC.js.map → chunk-MGVEX3RS.js.map} +1 -1
  150. package/dist/chunk-MSNRGNVY.cjs +216 -0
  151. package/dist/chunk-MSNRGNVY.cjs.map +1 -0
  152. package/dist/{chunk-IXJOPMJX.cjs → chunk-MUUPZEZ5.cjs} +7 -6
  153. package/dist/chunk-MUUPZEZ5.cjs.map +1 -0
  154. package/dist/{chunk-XVRQSTUF.js → chunk-N2TNBDQI.js} +4 -3
  155. package/dist/chunk-N2TNBDQI.js.map +1 -0
  156. package/dist/{chunk-CBJ4APCT.js → chunk-NH7KH7QP.js} +5 -4
  157. package/dist/chunk-NH7KH7QP.js.map +1 -0
  158. package/dist/{chunk-76FHSISK.cjs → chunk-NHXJVSZZ.cjs} +7 -10
  159. package/dist/chunk-NHXJVSZZ.cjs.map +1 -0
  160. package/dist/{chunk-4I6VIR44.cjs → chunk-NYQPIBOD.cjs} +12 -11
  161. package/dist/chunk-NYQPIBOD.cjs.map +1 -0
  162. package/dist/{chunk-BTL6GUMN.js → chunk-O4RTJESR.js} +3 -3
  163. package/dist/{chunk-BTL6GUMN.js.map → chunk-O4RTJESR.js.map} +1 -1
  164. package/dist/{chunk-DZ3NHSJ4.js → chunk-O5A47TA2.js} +5 -4
  165. package/dist/chunk-O5A47TA2.js.map +1 -0
  166. package/dist/{chunk-HMWV6KCW.cjs → chunk-OSBVDRVD.cjs} +17 -16
  167. package/dist/chunk-OSBVDRVD.cjs.map +1 -0
  168. package/dist/{chunk-NF63IRZR.cjs → chunk-OULO3YDQ.cjs} +6 -5
  169. package/dist/chunk-OULO3YDQ.cjs.map +1 -0
  170. package/dist/{chunk-POW2Z7TP.js → chunk-OWBNRALR.js} +5 -5
  171. package/dist/{chunk-POW2Z7TP.js.map → chunk-OWBNRALR.js.map} +1 -1
  172. package/dist/{chunk-GEGYC7CE.js → chunk-P6RAOXJA.js} +5 -5
  173. package/dist/chunk-P6RAOXJA.js.map +1 -0
  174. package/dist/{chunk-MMQIQILP.cjs → chunk-PJMV2HTO.cjs} +27 -29
  175. package/dist/chunk-PJMV2HTO.cjs.map +1 -0
  176. package/dist/{chunk-3WMLV4VP.cjs → chunk-PL6J55JB.cjs} +6 -6
  177. package/dist/chunk-PL6J55JB.cjs.map +1 -0
  178. package/dist/chunk-PQRIV5XU.js +242 -0
  179. package/dist/chunk-PQRIV5XU.js.map +1 -0
  180. package/dist/chunk-PZ63ZCEO.cjs +470 -0
  181. package/dist/chunk-PZ63ZCEO.cjs.map +1 -0
  182. package/dist/{chunk-AKTUU5ML.js → chunk-Q3OA23V5.js} +17 -19
  183. package/dist/chunk-Q3OA23V5.js.map +1 -0
  184. package/dist/chunk-QAO6QMNQ.cjs +10 -0
  185. package/dist/chunk-QAO6QMNQ.cjs.map +1 -0
  186. package/dist/{chunk-O2ZMOBMA.cjs → chunk-QCT4BPB6.cjs} +21 -21
  187. package/dist/{chunk-O2ZMOBMA.cjs.map → chunk-QCT4BPB6.cjs.map} +1 -1
  188. package/dist/{chunk-JMNH45Q3.cjs → chunk-QEFE4QBL.cjs} +81 -87
  189. package/dist/chunk-QEFE4QBL.cjs.map +1 -0
  190. package/dist/{chunk-ZP3UZDSV.cjs → chunk-QEX7V7TI.cjs} +10 -9
  191. package/dist/chunk-QEX7V7TI.cjs.map +1 -0
  192. package/dist/chunk-QGHFUOUB.cjs +112 -0
  193. package/dist/chunk-QGHFUOUB.cjs.map +1 -0
  194. package/dist/{chunk-VQ7IRFRR.cjs → chunk-QL3YSC3H.cjs} +16 -15
  195. package/dist/chunk-QL3YSC3H.cjs.map +1 -0
  196. package/dist/{chunk-2VIJC4NW.cjs → chunk-QRKRVCA3.cjs} +238 -178
  197. package/dist/chunk-QRKRVCA3.cjs.map +1 -0
  198. package/dist/{chunk-S4GLMGFI.js → chunk-RINP34ZG.js} +5 -4
  199. package/dist/chunk-RINP34ZG.js.map +1 -0
  200. package/dist/{chunk-RRNT32KY.js → chunk-RVENUWRD.js} +15 -55
  201. package/dist/chunk-RVENUWRD.js.map +1 -0
  202. package/dist/{chunk-GTPRZCNZ.js → chunk-S4B2D427.js} +3 -3
  203. package/dist/{chunk-GTPRZCNZ.js.map → chunk-S4B2D427.js.map} +1 -1
  204. package/dist/{chunk-AXCE2HKG.js → chunk-S4LVSSJI.js} +11 -6
  205. package/dist/chunk-S4LVSSJI.js.map +1 -0
  206. package/dist/{chunk-L6JT244G.cjs → chunk-SSOAZZNR.cjs} +4 -3
  207. package/dist/chunk-SSOAZZNR.cjs.map +1 -0
  208. package/dist/{chunk-BZ4XKKNH.js → chunk-TF7IWMV2.js} +9 -8
  209. package/dist/chunk-TF7IWMV2.js.map +1 -0
  210. package/dist/{chunk-V7Q64Z3S.cjs → chunk-U2U4FMFM.cjs} +8 -8
  211. package/dist/{chunk-V7Q64Z3S.cjs.map → chunk-U2U4FMFM.cjs.map} +1 -1
  212. package/dist/chunk-U5GTHA44.cjs +395 -0
  213. package/dist/chunk-U5GTHA44.cjs.map +1 -0
  214. package/dist/chunk-UKDGDMWN.js +78 -0
  215. package/dist/chunk-UKDGDMWN.js.map +1 -0
  216. package/dist/chunk-UN35QV25.js +110 -0
  217. package/dist/chunk-UN35QV25.js.map +1 -0
  218. package/dist/{chunk-IR4COTIR.js → chunk-UPQHFW47.js} +4 -4
  219. package/dist/{chunk-IR4COTIR.js.map → chunk-UPQHFW47.js.map} +1 -1
  220. package/dist/{chunk-U5ZCQI5O.cjs → chunk-UXDXE7Z6.cjs} +41 -40
  221. package/dist/chunk-UXDXE7Z6.cjs.map +1 -0
  222. package/dist/{chunk-ZJ2NV4SQ.js → chunk-UYBGXFYX.js} +22 -21
  223. package/dist/chunk-UYBGXFYX.js.map +1 -0
  224. package/dist/{chunk-ZW2ATXTL.js → chunk-VAK4JQYL.js} +7 -6
  225. package/dist/chunk-VAK4JQYL.js.map +1 -0
  226. package/dist/{chunk-QADMIAYK.js → chunk-VEUZ5DZR.js} +6 -5
  227. package/dist/chunk-VEUZ5DZR.js.map +1 -0
  228. package/dist/{chunk-JVLE7PCJ.cjs → chunk-VJBBMBRT.cjs} +7 -7
  229. package/dist/{chunk-JVLE7PCJ.cjs.map → chunk-VJBBMBRT.cjs.map} +1 -1
  230. package/dist/chunk-VVO7GIHG.cjs +220 -0
  231. package/dist/chunk-VVO7GIHG.cjs.map +1 -0
  232. package/dist/{chunk-BDBHHJGN.cjs → chunk-W3KMDQKP.cjs} +8 -7
  233. package/dist/chunk-W3KMDQKP.cjs.map +1 -0
  234. package/dist/{chunk-UC36KIEP.cjs → chunk-WGCGHFXE.cjs} +2 -3
  235. package/dist/chunk-WGCGHFXE.cjs.map +1 -0
  236. package/dist/{chunk-74ONIT6C.js → chunk-WO6FS4DV.js} +5 -4
  237. package/dist/chunk-WO6FS4DV.js.map +1 -0
  238. package/dist/chunk-WYE3VOFK.cjs +244 -0
  239. package/dist/chunk-WYE3VOFK.cjs.map +1 -0
  240. package/dist/{chunk-3IDEWEDY.cjs → chunk-X2GRBPCJ.cjs} +89 -74
  241. package/dist/chunk-X2GRBPCJ.cjs.map +1 -0
  242. package/dist/{chunk-4YQSKCVF.cjs → chunk-XADTIY7J.cjs} +4 -4
  243. package/dist/{chunk-4YQSKCVF.cjs.map → chunk-XADTIY7J.cjs.map} +1 -1
  244. package/dist/{chunk-63RKQ237.js → chunk-XUJZTD4E.js} +9 -8
  245. package/dist/chunk-XUJZTD4E.js.map +1 -0
  246. package/dist/{chunk-OJ3KVNW2.js → chunk-Y4FH67QZ.js} +8 -7
  247. package/dist/chunk-Y4FH67QZ.js.map +1 -0
  248. package/dist/{chunk-UQV5MOGR.js → chunk-YLGAJD6Q.js} +8 -6
  249. package/dist/chunk-YLGAJD6Q.js.map +1 -0
  250. package/dist/chunk-YNTPHZFJ.js +191 -0
  251. package/dist/chunk-YNTPHZFJ.js.map +1 -0
  252. package/dist/{chunk-OBBPRWYD.js → chunk-YSTESYUB.js} +24 -13
  253. package/dist/chunk-YSTESYUB.js.map +1 -0
  254. package/dist/{chunk-K77D7H4V.cjs → chunk-ZD3NPHZ7.cjs} +5 -4
  255. package/dist/chunk-ZD3NPHZ7.cjs.map +1 -0
  256. package/dist/{chunk-2RIDPITG.cjs → chunk-ZLATP3P5.cjs} +10 -8
  257. package/dist/chunk-ZLATP3P5.cjs.map +1 -0
  258. package/dist/{chunk-6NY5DOFM.js → chunk-ZVH3BLYO.js} +8 -7
  259. package/dist/chunk-ZVH3BLYO.js.map +1 -0
  260. package/dist/{chunk-STSR3FAC.js → chunk-ZWULWVN3.js} +30 -28
  261. package/dist/chunk-ZWULWVN3.js.map +1 -0
  262. package/dist/components/Accordion/AccordionItem.recipe.d.ts +1 -1
  263. package/dist/components/Accordion/index.cjs +5 -5
  264. package/dist/components/Accordion/index.js +2 -2
  265. package/dist/components/Alert/Alert.d.ts.map +1 -1
  266. package/dist/components/Alert/Alert.recipe.d.ts +1 -1
  267. package/dist/components/Alert/index.cjs +8 -7
  268. package/dist/components/Alert/index.js +7 -6
  269. package/dist/components/AlertDialog/index.cjs +10 -9
  270. package/dist/components/AlertDialog/index.js +8 -7
  271. package/dist/components/AppShell/AppShell.d.ts.map +1 -1
  272. package/dist/components/AppShell/index.cjs +16 -15
  273. package/dist/components/AppShell/index.js +13 -12
  274. package/dist/components/AutocompleteInput/AutocompleteInput.d.ts +6 -1
  275. package/dist/components/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
  276. package/dist/components/AutocompleteInput/AutocompleteInput.recipe.d.ts +42 -0
  277. package/dist/components/AutocompleteInput/AutocompleteInput.recipe.d.ts.map +1 -0
  278. package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts +27 -4
  279. package/dist/components/AutocompleteInput/AutocompleteInputItem.d.ts.map +1 -1
  280. package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts +22 -2
  281. package/dist/components/AutocompleteInput/BaseAutocompleteInput.d.ts.map +1 -1
  282. package/dist/components/AutocompleteInput/index.cjs +14 -13
  283. package/dist/components/AutocompleteInput/index.d.ts +1 -1
  284. package/dist/components/AutocompleteInput/index.d.ts.map +1 -1
  285. package/dist/components/AutocompleteInput/index.js +10 -9
  286. package/dist/components/AutocompleteInput/types.d.ts +39 -3
  287. package/dist/components/AutocompleteInput/types.d.ts.map +1 -1
  288. package/dist/components/Avatar/Avatar.d.ts.map +1 -1
  289. package/dist/components/Avatar/AvatarStatusDot.d.ts.map +1 -1
  290. package/dist/components/Avatar/index.cjs +6 -5
  291. package/dist/components/Avatar/index.js +3 -2
  292. package/dist/components/AvatarGroup/index.cjs +6 -5
  293. package/dist/components/AvatarGroup/index.js +4 -3
  294. package/dist/components/Blockquote/Blockquote.d.ts.map +1 -1
  295. package/dist/components/Blockquote/index.cjs +3 -6
  296. package/dist/components/Blockquote/index.d.ts +0 -1
  297. package/dist/components/Blockquote/index.d.ts.map +1 -1
  298. package/dist/components/Blockquote/index.js +2 -1
  299. package/dist/components/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
  300. package/dist/components/Breadcrumbs/BreadcrumbItem.recipe.d.ts +22 -0
  301. package/dist/components/Breadcrumbs/BreadcrumbItem.recipe.d.ts.map +1 -0
  302. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  303. package/dist/components/Breadcrumbs/Breadcrumbs.recipe.d.ts +4 -0
  304. package/dist/components/Breadcrumbs/Breadcrumbs.recipe.d.ts.map +1 -0
  305. package/dist/components/Breadcrumbs/index.cjs +6 -4
  306. package/dist/components/Breadcrumbs/index.js +3 -1
  307. package/dist/components/Button/Button.d.ts.map +1 -1
  308. package/dist/components/Button/Button.recipe.d.ts +80 -62
  309. package/dist/components/Button/Button.recipe.d.ts.map +1 -1
  310. package/dist/components/Button/index.cjs +7 -6
  311. package/dist/components/Button/index.js +6 -5
  312. package/dist/components/ButtonGroup/ButtonGroup.recipe.d.ts +4 -4
  313. package/dist/components/ButtonGroup/ButtonGroup.recipe.d.ts.map +1 -1
  314. package/dist/components/ButtonGroup/index.cjs +2 -2
  315. package/dist/components/ButtonGroup/index.js +1 -1
  316. package/dist/components/Calendar/Calendar.d.ts.map +1 -1
  317. package/dist/components/Calendar/Calendar.recipe.d.ts +86 -0
  318. package/dist/components/Calendar/Calendar.recipe.d.ts.map +1 -0
  319. package/dist/components/Calendar/index.cjs +8 -7
  320. package/dist/components/Calendar/index.js +7 -6
  321. package/dist/components/CheckboxInput/CheckboxInput.d.ts.map +1 -1
  322. package/dist/components/CheckboxInput/CheckboxInput.recipe.d.ts +39 -0
  323. package/dist/components/CheckboxInput/CheckboxInput.recipe.d.ts.map +1 -0
  324. package/dist/components/CheckboxInput/index.cjs +7 -6
  325. package/dist/components/CheckboxInput/index.js +6 -5
  326. package/dist/components/CodeBlock/index.cjs +9 -8
  327. package/dist/components/CodeBlock/index.d.ts +0 -1
  328. package/dist/components/CodeBlock/index.d.ts.map +1 -1
  329. package/dist/components/CodeBlock/index.js +8 -7
  330. package/dist/components/ContextMenu/index.cjs +13 -12
  331. package/dist/components/ContextMenu/index.js +11 -10
  332. package/dist/components/DateInput/DateInput.d.ts +5 -1
  333. package/dist/components/DateInput/DateInput.d.ts.map +1 -1
  334. package/dist/components/DateInput/index.cjs +11 -10
  335. package/dist/components/DateInput/index.js +10 -9
  336. package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  337. package/dist/components/DateRangeInput/index.cjs +11 -10
  338. package/dist/components/DateRangeInput/index.js +10 -9
  339. package/dist/components/DateTimeInput/DateTimeInput.d.ts.map +1 -1
  340. package/dist/components/DateTimeInput/index.cjs +13 -12
  341. package/dist/components/DateTimeInput/index.js +12 -11
  342. package/dist/components/Divider/Divider.d.ts.map +1 -1
  343. package/dist/components/Divider/index.cjs +3 -2
  344. package/dist/components/Divider/index.js +2 -1
  345. package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  346. package/dist/components/DropdownMenu/index.cjs +14 -13
  347. package/dist/components/DropdownMenu/index.js +10 -9
  348. package/dist/components/EmptyState/EmptyState.d.ts.map +1 -1
  349. package/dist/components/EmptyState/EmptyState.recipe.d.ts +13 -4
  350. package/dist/components/EmptyState/EmptyState.recipe.d.ts.map +1 -1
  351. package/dist/components/EmptyState/index.cjs +5 -3
  352. package/dist/components/EmptyState/index.js +4 -2
  353. package/dist/components/Field/Field.d.ts.map +1 -1
  354. package/dist/components/Field/index.cjs +6 -5
  355. package/dist/components/Field/index.js +4 -3
  356. package/dist/components/FileInput/FileInput.d.ts.map +1 -1
  357. package/dist/components/FileInput/index.cjs +9 -8
  358. package/dist/components/FileInput/index.js +8 -7
  359. package/dist/components/InputGroup/InputGroup.d.ts.map +1 -1
  360. package/dist/components/InputGroup/index.cjs +9 -8
  361. package/dist/components/InputGroup/index.js +5 -4
  362. package/dist/components/Item/Item.d.ts.map +1 -1
  363. package/dist/components/Item/index.cjs +4 -3
  364. package/dist/components/Item/index.js +3 -2
  365. package/dist/components/Kbd/index.d.ts +0 -1
  366. package/dist/components/Kbd/index.d.ts.map +1 -1
  367. package/dist/components/Layout/Layout.d.ts.map +1 -1
  368. package/dist/components/Layout/LayoutFooter.d.ts.map +1 -1
  369. package/dist/components/Layout/LayoutHeader.d.ts.map +1 -1
  370. package/dist/components/Layout/index.cjs +12 -11
  371. package/dist/components/Layout/index.js +7 -6
  372. package/dist/components/Lightbox/Lightbox.d.ts.map +1 -1
  373. package/dist/components/Lightbox/index.cjs +9 -8
  374. package/dist/components/Lightbox/index.js +7 -6
  375. package/dist/components/Link/index.cjs +1 -0
  376. package/dist/components/Link/index.js +1 -0
  377. package/dist/components/List/List.d.ts.map +1 -1
  378. package/dist/components/List/List.recipe.d.ts +42 -0
  379. package/dist/components/List/List.recipe.d.ts.map +1 -0
  380. package/dist/components/List/ListItem.d.ts.map +1 -1
  381. package/dist/components/List/index.cjs +7 -5
  382. package/dist/components/List/index.js +5 -3
  383. package/dist/components/MetadataList/index.cjs +4 -4
  384. package/dist/components/MetadataList/index.js +2 -2
  385. package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
  386. package/dist/components/MultiSelect/index.cjs +11 -10
  387. package/dist/components/MultiSelect/index.js +10 -9
  388. package/dist/components/NumberInput/NumberInput.d.ts.map +1 -1
  389. package/dist/components/NumberInput/index.cjs +10 -9
  390. package/dist/components/NumberInput/index.js +9 -8
  391. package/dist/components/Pagination/index.cjs +8 -7
  392. package/dist/components/Pagination/index.js +7 -6
  393. package/dist/components/PasswordInput/index.cjs +11 -10
  394. package/dist/components/PasswordInput/index.js +10 -9
  395. package/dist/components/Popover/Popover.d.ts.map +1 -1
  396. package/dist/components/Popover/index.cjs +9 -8
  397. package/dist/components/Popover/index.js +7 -6
  398. package/dist/components/Progress/Progress.d.ts.map +1 -1
  399. package/dist/components/Progress/Progress.recipe.d.ts +34 -16
  400. package/dist/components/Progress/Progress.recipe.d.ts.map +1 -1
  401. package/dist/components/Progress/index.cjs +4 -2
  402. package/dist/components/Progress/index.js +3 -1
  403. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
  404. package/dist/components/RadioGroup/RadioGroupItem.d.ts.map +1 -1
  405. package/dist/components/RadioGroup/index.cjs +8 -7
  406. package/dist/components/RadioGroup/index.d.ts +0 -1
  407. package/dist/components/RadioGroup/index.d.ts.map +1 -1
  408. package/dist/components/RadioGroup/index.js +6 -5
  409. package/dist/components/Rating/index.cjs +3 -7
  410. package/dist/components/Rating/index.d.ts +0 -1
  411. package/dist/components/Rating/index.d.ts.map +1 -1
  412. package/dist/components/Rating/index.js +2 -2
  413. package/dist/components/Schedule/index.cjs +23 -22
  414. package/dist/components/Schedule/index.js +12 -11
  415. package/dist/components/SearchFilterInput/SearchFilterInput.d.ts.map +1 -1
  416. package/dist/components/SearchFilterInput/index.cjs +30 -29
  417. package/dist/components/SearchFilterInput/index.js +22 -21
  418. package/dist/components/Select/Select.d.ts.map +1 -1
  419. package/dist/components/Select/Select.recipe.d.ts +25 -0
  420. package/dist/components/Select/Select.recipe.d.ts.map +1 -0
  421. package/dist/components/Select/SelectOption.d.ts.map +1 -1
  422. package/dist/components/Select/index.cjs +13 -12
  423. package/dist/components/Select/index.js +11 -10
  424. package/dist/components/SideNav/SideNav.d.ts.map +1 -1
  425. package/dist/components/SideNav/SideNavHeading.d.ts.map +1 -1
  426. package/dist/components/SideNav/SideNavItem.d.ts.map +1 -1
  427. package/dist/components/SideNav/SideNavSection.d.ts.map +1 -1
  428. package/dist/components/SideNav/index.cjs +15 -14
  429. package/dist/components/SideNav/index.js +9 -8
  430. package/dist/components/Skeleton/index.cjs +2 -6
  431. package/dist/components/Skeleton/index.d.ts +0 -1
  432. package/dist/components/Skeleton/index.d.ts.map +1 -1
  433. package/dist/components/Skeleton/index.js +1 -1
  434. package/dist/components/Slider/Slider.d.ts.map +1 -1
  435. package/dist/components/Slider/index.cjs +6 -9
  436. package/dist/components/Slider/index.d.ts +0 -1
  437. package/dist/components/Slider/index.d.ts.map +1 -1
  438. package/dist/components/Slider/index.js +5 -4
  439. package/dist/components/Spinner/index.cjs +3 -3
  440. package/dist/components/Spinner/index.js +2 -2
  441. package/dist/components/SplitButton/SplitButton.d.ts +89 -0
  442. package/dist/components/SplitButton/SplitButton.d.ts.map +1 -0
  443. package/dist/components/SplitButton/index.cjs +35 -0
  444. package/dist/components/SplitButton/index.cjs.map +1 -0
  445. package/dist/components/SplitButton/index.d.ts +2 -0
  446. package/dist/components/SplitButton/index.d.ts.map +1 -0
  447. package/dist/components/SplitButton/index.js +26 -0
  448. package/dist/components/SplitButton/index.js.map +1 -0
  449. package/dist/components/Stack/HStack.d.ts +1 -1
  450. package/dist/components/Stack/HStack.d.ts.map +1 -1
  451. package/dist/components/Stack/VStack.d.ts +1 -1
  452. package/dist/components/Stack/VStack.d.ts.map +1 -1
  453. package/dist/components/Stack/index.cjs +3 -3
  454. package/dist/components/Stack/index.d.ts +1 -1
  455. package/dist/components/Stack/index.d.ts.map +1 -1
  456. package/dist/components/Stack/index.js +1 -1
  457. package/dist/components/Stack/{Stack.d.ts → internal/Stack.d.ts} +13 -3
  458. package/dist/components/Stack/internal/Stack.d.ts.map +1 -0
  459. package/dist/components/Stack/{Stack.recipe.d.ts → internal/Stack.recipe.d.ts} +1 -1
  460. package/dist/components/Stack/internal/Stack.recipe.d.ts.map +1 -0
  461. package/dist/components/Stepper/Step.d.ts.map +1 -1
  462. package/dist/components/Stepper/index.cjs +6 -5
  463. package/dist/components/Stepper/index.js +3 -2
  464. package/dist/components/Switch/Switch.d.ts.map +1 -1
  465. package/dist/components/Switch/index.cjs +6 -5
  466. package/dist/components/Switch/index.js +5 -4
  467. package/dist/components/Table/BaseTable.d.ts.map +1 -1
  468. package/dist/components/Table/index.cjs +53 -52
  469. package/dist/components/Table/index.js +25 -24
  470. package/dist/components/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
  471. package/dist/components/Tabs/Tab.d.ts.map +1 -1
  472. package/dist/components/Tabs/index.cjs +13 -12
  473. package/dist/components/Tabs/index.js +8 -7
  474. package/dist/components/Tag/Tag.d.ts +2 -2
  475. package/dist/components/Tag/Tag.d.ts.map +1 -1
  476. package/dist/components/Tag/Tag.recipe.d.ts +103 -68
  477. package/dist/components/Tag/Tag.recipe.d.ts.map +1 -1
  478. package/dist/components/Tag/index.cjs +4 -2
  479. package/dist/components/Tag/index.js +3 -1
  480. package/dist/components/TagsInput/TagsInput.d.ts.map +1 -1
  481. package/dist/components/TagsInput/index.cjs +12 -11
  482. package/dist/components/TagsInput/index.js +11 -10
  483. package/dist/components/Text/Heading.d.ts.map +1 -1
  484. package/dist/components/Text/Text.d.ts.map +1 -1
  485. package/dist/components/Text/index.cjs +3 -3
  486. package/dist/components/Text/index.js +1 -1
  487. package/dist/components/TextArea/TextArea.d.ts.map +1 -1
  488. package/dist/components/TextArea/index.cjs +7 -6
  489. package/dist/components/TextArea/index.js +6 -5
  490. package/dist/components/TextInput/TextInput.d.ts.map +1 -1
  491. package/dist/components/TextInput/index.cjs +10 -9
  492. package/dist/components/TextInput/index.js +9 -8
  493. package/dist/components/Thumbnail/Thumbnail.recipe.d.ts +1 -1
  494. package/dist/components/Thumbnail/index.cjs +9 -8
  495. package/dist/components/Thumbnail/index.d.ts +0 -1
  496. package/dist/components/Thumbnail/index.d.ts.map +1 -1
  497. package/dist/components/Thumbnail/index.js +8 -7
  498. package/dist/components/TimeInput/TimeInput.d.ts +10 -2
  499. package/dist/components/TimeInput/TimeInput.d.ts.map +1 -1
  500. package/dist/components/TimeInput/index.cjs +9 -8
  501. package/dist/components/TimeInput/index.js +8 -7
  502. package/dist/components/Toast/Toast.d.ts.map +1 -1
  503. package/dist/components/Toast/Toast.recipe.d.ts +39 -0
  504. package/dist/components/Toast/Toast.recipe.d.ts.map +1 -0
  505. package/dist/components/Toast/ToastViewport.d.ts.map +1 -1
  506. package/dist/components/Toast/index.cjs +10 -9
  507. package/dist/components/Toast/index.js +7 -6
  508. package/dist/components/ToggleButton/index.cjs +7 -7
  509. package/dist/components/ToggleButton/index.js +5 -5
  510. package/dist/components/TopNav/TopNav.d.ts.map +1 -1
  511. package/dist/components/TopNav/TopNavHeading.d.ts.map +1 -1
  512. package/dist/components/TopNav/index.cjs +15 -14
  513. package/dist/components/TopNav/index.js +9 -8
  514. package/dist/components/TreeView/TreeView.d.ts.map +1 -1
  515. package/dist/components/TreeView/TreeViewItem.d.ts.map +1 -1
  516. package/dist/components/TreeView/index.cjs +3 -2
  517. package/dist/components/TreeView/index.js +2 -1
  518. package/dist/index.cjs +229 -227
  519. package/dist/index.cjs.map +1 -1
  520. package/dist/index.d.ts +3 -2
  521. package/dist/index.d.ts.map +1 -1
  522. package/dist/index.js +66 -64
  523. package/dist/index.js.map +1 -1
  524. package/dist/internal/MobileNav/MobileNav.d.ts.map +1 -1
  525. package/dist/internal/OverflowList.d.ts.map +1 -1
  526. package/dist/internal/index.d.ts +1 -0
  527. package/dist/internal/index.d.ts.map +1 -1
  528. package/dist/internal/isReactNode.d.ts +3 -0
  529. package/dist/internal/isReactNode.d.ts.map +1 -0
  530. package/dist/internal/useSelectListbox.d.ts +2 -2
  531. package/dist/internal/useSelectListbox.d.ts.map +1 -1
  532. package/dist/styles.css +1 -1
  533. package/package.json +1 -1
  534. package/dist/chunk-2K44WLBJ.js.map +0 -1
  535. package/dist/chunk-2RIDPITG.cjs.map +0 -1
  536. package/dist/chunk-2VIJC4NW.cjs.map +0 -1
  537. package/dist/chunk-36QGPGT2.cjs.map +0 -1
  538. package/dist/chunk-3DZPRXMC.cjs.map +0 -1
  539. package/dist/chunk-3IDEWEDY.cjs.map +0 -1
  540. package/dist/chunk-3JVD4AXC.js.map +0 -1
  541. package/dist/chunk-3SLWOIT4.cjs.map +0 -1
  542. package/dist/chunk-3WMLV4VP.cjs.map +0 -1
  543. package/dist/chunk-47FUQCAT.cjs.map +0 -1
  544. package/dist/chunk-4I6VIR44.cjs.map +0 -1
  545. package/dist/chunk-4M2KCZMO.js.map +0 -1
  546. package/dist/chunk-4YESF35X.cjs +0 -211
  547. package/dist/chunk-4YESF35X.cjs.map +0 -1
  548. package/dist/chunk-4YQTSHIB.cjs.map +0 -1
  549. package/dist/chunk-5MDH6QZE.js.map +0 -1
  550. package/dist/chunk-63RKQ237.js.map +0 -1
  551. package/dist/chunk-6D3FA247.js +0 -126
  552. package/dist/chunk-6D3FA247.js.map +0 -1
  553. package/dist/chunk-6NY5DOFM.js.map +0 -1
  554. package/dist/chunk-74ONIT6C.js.map +0 -1
  555. package/dist/chunk-76FHSISK.cjs.map +0 -1
  556. package/dist/chunk-77RGTGRM.cjs +0 -128
  557. package/dist/chunk-77RGTGRM.cjs.map +0 -1
  558. package/dist/chunk-7DWASA3K.js.map +0 -1
  559. package/dist/chunk-7P3VY5JZ.js.map +0 -1
  560. package/dist/chunk-AJYVGSBW.cjs.map +0 -1
  561. package/dist/chunk-AKTUU5ML.js.map +0 -1
  562. package/dist/chunk-AMG3S252.js.map +0 -1
  563. package/dist/chunk-AXCE2HKG.js.map +0 -1
  564. package/dist/chunk-BDBHHJGN.cjs.map +0 -1
  565. package/dist/chunk-BZ4XKKNH.js.map +0 -1
  566. package/dist/chunk-CBJ4APCT.js.map +0 -1
  567. package/dist/chunk-CPZWTWYQ.js.map +0 -1
  568. package/dist/chunk-DH2ZFYKE.cjs +0 -441
  569. package/dist/chunk-DH2ZFYKE.cjs.map +0 -1
  570. package/dist/chunk-DP4KK2N4.cjs.map +0 -1
  571. package/dist/chunk-DZ3NHSJ4.js.map +0 -1
  572. package/dist/chunk-E2JZGYKU.cjs +0 -181
  573. package/dist/chunk-E2JZGYKU.cjs.map +0 -1
  574. package/dist/chunk-E7UOFIBW.cjs.map +0 -1
  575. package/dist/chunk-EBCHOGKT.js.map +0 -1
  576. package/dist/chunk-EFO5NDBJ.js +0 -191
  577. package/dist/chunk-EFO5NDBJ.js.map +0 -1
  578. package/dist/chunk-ESJND7B6.js.map +0 -1
  579. package/dist/chunk-FDSUILCM.cjs.map +0 -1
  580. package/dist/chunk-FHKB6MBQ.js.map +0 -1
  581. package/dist/chunk-GEGYC7CE.js.map +0 -1
  582. package/dist/chunk-GGZGVAEF.cjs.map +0 -1
  583. package/dist/chunk-GYUWDJXS.cjs.map +0 -1
  584. package/dist/chunk-HMWV6KCW.cjs.map +0 -1
  585. package/dist/chunk-IXJOPMJX.cjs.map +0 -1
  586. package/dist/chunk-J2FCNWYM.js.map +0 -1
  587. package/dist/chunk-JMNH45Q3.cjs.map +0 -1
  588. package/dist/chunk-K6CQ45C2.js.map +0 -1
  589. package/dist/chunk-K77D7H4V.cjs.map +0 -1
  590. package/dist/chunk-KFEXS6OK.cjs.map +0 -1
  591. package/dist/chunk-L6JT244G.cjs.map +0 -1
  592. package/dist/chunk-L6WUK7O4.js +0 -207
  593. package/dist/chunk-L6WUK7O4.js.map +0 -1
  594. package/dist/chunk-LJLCGQRV.js +0 -99
  595. package/dist/chunk-LJLCGQRV.js.map +0 -1
  596. package/dist/chunk-MEBIRX2P.js.map +0 -1
  597. package/dist/chunk-MMQIQILP.cjs.map +0 -1
  598. package/dist/chunk-MMST4VXH.cjs +0 -392
  599. package/dist/chunk-MMST4VXH.cjs.map +0 -1
  600. package/dist/chunk-MNVBSOAQ.cjs.map +0 -1
  601. package/dist/chunk-MX2F3HUI.cjs.map +0 -1
  602. package/dist/chunk-NF63IRZR.cjs.map +0 -1
  603. package/dist/chunk-O3T7Z6RH.cjs.map +0 -1
  604. package/dist/chunk-OBBPRWYD.js.map +0 -1
  605. package/dist/chunk-OHKL4DOV.js.map +0 -1
  606. package/dist/chunk-OJ3KVNW2.js.map +0 -1
  607. package/dist/chunk-OJCJPYXE.js.map +0 -1
  608. package/dist/chunk-P4A7GWQY.cjs.map +0 -1
  609. package/dist/chunk-P4TOIB2A.cjs +0 -101
  610. package/dist/chunk-P4TOIB2A.cjs.map +0 -1
  611. package/dist/chunk-PJXJOI73.js +0 -232
  612. package/dist/chunk-PJXJOI73.js.map +0 -1
  613. package/dist/chunk-PNYF6NS4.cjs.map +0 -1
  614. package/dist/chunk-PTZAJW3J.js.map +0 -1
  615. package/dist/chunk-PWL6TWVC.cjs.map +0 -1
  616. package/dist/chunk-PXVVTPRJ.js.map +0 -1
  617. package/dist/chunk-QADMIAYK.js.map +0 -1
  618. package/dist/chunk-QPYPPJEZ.js.map +0 -1
  619. package/dist/chunk-RRNT32KY.js.map +0 -1
  620. package/dist/chunk-RSG7N5QQ.cjs.map +0 -1
  621. package/dist/chunk-S4GLMGFI.js.map +0 -1
  622. package/dist/chunk-SSOHJEHS.js +0 -390
  623. package/dist/chunk-SSOHJEHS.js.map +0 -1
  624. package/dist/chunk-STSR3FAC.js.map +0 -1
  625. package/dist/chunk-SXIBQQ55.js.map +0 -1
  626. package/dist/chunk-TO3ZPSYO.cjs +0 -234
  627. package/dist/chunk-TO3ZPSYO.cjs.map +0 -1
  628. package/dist/chunk-TZQWZ7IL.cjs.map +0 -1
  629. package/dist/chunk-U4GWNENK.js.map +0 -1
  630. package/dist/chunk-U5ZCQI5O.cjs.map +0 -1
  631. package/dist/chunk-UC36KIEP.cjs.map +0 -1
  632. package/dist/chunk-UJODHP7E.cjs.map +0 -1
  633. package/dist/chunk-UQV5MOGR.js.map +0 -1
  634. package/dist/chunk-UUIAGGFW.cjs.map +0 -1
  635. package/dist/chunk-UX2Z7LRM.cjs +0 -194
  636. package/dist/chunk-UX2Z7LRM.cjs.map +0 -1
  637. package/dist/chunk-UY3MYNI6.js.map +0 -1
  638. package/dist/chunk-UYKFE7KF.js.map +0 -1
  639. package/dist/chunk-VBL5SI5N.js.map +0 -1
  640. package/dist/chunk-VQ7IRFRR.cjs.map +0 -1
  641. package/dist/chunk-W3QVSVL7.cjs.map +0 -1
  642. package/dist/chunk-WA4VZ363.cjs.map +0 -1
  643. package/dist/chunk-WE2AXMPB.js.map +0 -1
  644. package/dist/chunk-WVQDFCFQ.js.map +0 -1
  645. package/dist/chunk-XHTKGOQV.cjs.map +0 -1
  646. package/dist/chunk-XVRQSTUF.js.map +0 -1
  647. package/dist/chunk-Z7ID5TC7.cjs.map +0 -1
  648. package/dist/chunk-ZC6GLBEL.js +0 -179
  649. package/dist/chunk-ZC6GLBEL.js.map +0 -1
  650. package/dist/chunk-ZJ2NV4SQ.js.map +0 -1
  651. package/dist/chunk-ZP3UZDSV.cjs.map +0 -1
  652. package/dist/chunk-ZW2ATXTL.js.map +0 -1
  653. package/dist/components/Stack/Stack.d.ts.map +0 -1
  654. package/dist/components/Stack/Stack.recipe.d.ts.map +0 -1
@@ -1,211 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkLFRTNC7M_cjs = require('./chunk-LFRTNC7M.cjs');
4
- var chunk4TIAKZ4Q_cjs = require('./chunk-4TIAKZ4Q.cjs');
5
- var chunkSPDVNY2Z_cjs = require('./chunk-SPDVNY2Z.cjs');
6
- var chunkRU6JG3FS_cjs = require('./chunk-RU6JG3FS.cjs');
7
- var react = require('react');
8
- var jsxRuntime = require('react/jsx-runtime');
9
-
10
- var BreadcrumbsContext = react.createContext({
11
- separator: "/",
12
- variant: "default"
13
- });
14
- BreadcrumbsContext.displayName = "BreadcrumbsContext";
15
- var styles = {
16
- item: chunkRU6JG3FS_cjs.css({
17
- display: "flex",
18
- alignItems: "center",
19
- gap: "1",
20
- m: 0,
21
- "--breadcrumb-separator-display": "flex",
22
- _first: {
23
- "--breadcrumb-separator-display": "none"
24
- }
25
- }),
26
- defaultSize: chunkRU6JG3FS_cjs.css({
27
- fontSize: "sm",
28
- lineHeight: "normal"
29
- }),
30
- supportingSize: chunkRU6JG3FS_cjs.css({
31
- fontSize: "xs",
32
- lineHeight: "normal"
33
- }),
34
- content: chunkRU6JG3FS_cjs.css({
35
- display: "inline-flex",
36
- alignItems: "center",
37
- gap: "1",
38
- minW: 0
39
- }),
40
- link: chunkRU6JG3FS_cjs.css({
41
- display: "inline-flex",
42
- alignItems: "center",
43
- gap: "1",
44
- minW: 0,
45
- p: 0,
46
- py: "1",
47
- borderWidth: 0,
48
- bg: "transparent",
49
- color: "fg.muted",
50
- cursor: "pointer",
51
- font: "inherit",
52
- textDecoration: "none",
53
- _hover: {
54
- textDecoration: "underline"
55
- },
56
- _focusVisible: {
57
- outlineWidth: "focus",
58
- outlineStyle: "solid",
59
- outlineColor: "primary",
60
- outlineOffset: "focusOffset"
61
- }
62
- }),
63
- current: chunkRU6JG3FS_cjs.css({
64
- color: "fg"
65
- }),
66
- supportingCurrent: chunkRU6JG3FS_cjs.css({
67
- color: "fg.muted"
68
- }),
69
- icon: chunkRU6JG3FS_cjs.css({
70
- display: "inline-flex",
71
- alignItems: "center",
72
- flexShrink: 0
73
- }),
74
- separator: chunkRU6JG3FS_cjs.css({
75
- display: "var(--breadcrumb-separator-display)",
76
- alignItems: "center",
77
- color: "fg.muted",
78
- py: "1",
79
- userSelect: "none"
80
- })
81
- };
82
- function BreadcrumbItem({
83
- as,
84
- children,
85
- className,
86
- "data-testid": dataTestId,
87
- href,
88
- isCurrent: isCurrentProp,
89
- onClick,
90
- ref,
91
- startIcon,
92
- style
93
- }) {
94
- const context = react.use(BreadcrumbsContext);
95
- const LinkComponent = chunkLFRTNC7M_cjs.useLinkComponent(as);
96
- const isCurrent = isCurrentProp === true;
97
- const isSupporting = context.variant === "supporting";
98
- const content = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
99
- startIcon != null ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles.icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunk4TIAKZ4Q_cjs.Icon, { icon: startIcon, size: "sm" }) }) : null,
100
- children
101
- ] });
102
- const itemClassName = chunkSPDVNY2Z_cjs.cx(
103
- styles.item,
104
- isSupporting ? styles.supportingSize : styles.defaultSize,
105
- className
106
- );
107
- if (isCurrent) {
108
- return /* @__PURE__ */ jsxRuntime.jsxs(
109
- "li",
110
- {
111
- className: itemClassName,
112
- "data-testid": dataTestId,
113
- ref,
114
- style,
115
- children: [
116
- /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", className: styles.separator, children: context.separator }),
117
- /* @__PURE__ */ jsxRuntime.jsx(
118
- "span",
119
- {
120
- "aria-current": "page",
121
- className: chunkSPDVNY2Z_cjs.cx(
122
- styles.content,
123
- isSupporting ? styles.supportingCurrent : styles.current
124
- ),
125
- children: content
126
- }
127
- )
128
- ]
129
- }
130
- );
131
- }
132
- return /* @__PURE__ */ jsxRuntime.jsxs(
133
- "li",
134
- {
135
- className: itemClassName,
136
- "data-testid": dataTestId,
137
- ref,
138
- style,
139
- children: [
140
- /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", className: styles.separator, children: context.separator }),
141
- href != null ? /* @__PURE__ */ jsxRuntime.jsx(
142
- LinkComponent,
143
- {
144
- className: styles.link,
145
- href,
146
- onClick,
147
- to: LinkComponent === "a" ? void 0 : href,
148
- children: content
149
- }
150
- ) : onClick != null ? /* @__PURE__ */ jsxRuntime.jsx("button", { className: styles.link, onClick, type: "button", children: content }) : /* @__PURE__ */ jsxRuntime.jsx(
151
- "span",
152
- {
153
- className: chunkSPDVNY2Z_cjs.cx(
154
- styles.content,
155
- isSupporting ? styles.supportingCurrent : styles.current
156
- ),
157
- children: content
158
- }
159
- )
160
- ]
161
- }
162
- );
163
- }
164
- BreadcrumbItem.displayName = "BreadcrumbItem";
165
- var styles2 = {
166
- nav: chunkRU6JG3FS_cjs.css({
167
- display: "block"
168
- }),
169
- list: chunkRU6JG3FS_cjs.css({
170
- display: "flex",
171
- alignItems: "center",
172
- flexWrap: "wrap",
173
- gap: "1",
174
- m: 0,
175
- p: 0,
176
- listStyle: "none"
177
- })
178
- };
179
- function Breadcrumbs({
180
- children,
181
- className,
182
- "data-testid": dataTestId,
183
- label = "Breadcrumb",
184
- ref,
185
- separator = "/",
186
- style,
187
- variant = "default"
188
- }) {
189
- const contextValue = react.useMemo(
190
- () => ({ separator, variant }),
191
- [separator, variant]
192
- );
193
- return /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbsContext, { value: contextValue, children: /* @__PURE__ */ jsxRuntime.jsx(
194
- "nav",
195
- {
196
- "aria-label": label,
197
- className: chunkSPDVNY2Z_cjs.cx(styles2.nav, className),
198
- "data-testid": dataTestId,
199
- ref,
200
- style,
201
- children: /* @__PURE__ */ jsxRuntime.jsx("ol", { className: styles2.list, children })
202
- }
203
- ) });
204
- }
205
- Breadcrumbs.displayName = "Breadcrumbs";
206
-
207
- exports.BreadcrumbItem = BreadcrumbItem;
208
- exports.Breadcrumbs = Breadcrumbs;
209
- exports.BreadcrumbsContext = BreadcrumbsContext;
210
- //# sourceMappingURL=chunk-4YESF35X.cjs.map
211
- //# sourceMappingURL=chunk-4YESF35X.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Breadcrumbs/BreadcrumbsContext.ts","../src/components/Breadcrumbs/BreadcrumbItem.tsx","../src/components/Breadcrumbs/Breadcrumbs.tsx"],"names":["createContext","css","use","useLinkComponent","jsxs","Fragment","jsx","Icon","cx","styles","useMemo"],"mappings":"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","file":"chunk-4YESF35X.cjs","sourcesContent":["import {createContext, type ReactNode} from 'react';\n\nexport type BreadcrumbsVariant = 'default' | 'supporting';\n\nexport interface BreadcrumbsContextValue {\n separator: ReactNode;\n variant: BreadcrumbsVariant;\n}\n\nexport const BreadcrumbsContext = createContext<BreadcrumbsContextValue>({\n separator: '/',\n variant: 'default',\n});\n\nBreadcrumbsContext.displayName = 'BreadcrumbsContext';\n","/* eslint-disable @eslint-react/static-components -- intentional polymorphism via as prop */\n\nimport {\n use,\n type CSSProperties,\n type MouseEvent,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconComponent} from '../Icon';\nimport type {LinkComponent} from '../Link';\nimport {useLinkComponent} from '../Link';\nimport {BreadcrumbsContext} from './BreadcrumbsContext';\n\nexport interface BreadcrumbItemProps {\n /**\n * Custom link component used when href is set.\n */\n as?: LinkComponent;\n /**\n * Breadcrumb label content.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the list item.\n */\n className?: string;\n /**\n * Test ID applied to the list item.\n */\n 'data-testid'?: string;\n /**\n * Link destination. Omit for the current page.\n */\n href?: string;\n /**\n * Whether this item represents the current page.\n */\n isCurrent?: boolean;\n /**\n * Click handler for link or button items.\n */\n onClick?: (event: MouseEvent<HTMLElement>) => void;\n /**\n * Ref forwarded to the list item.\n */\n ref?: Ref<HTMLLIElement>;\n /**\n * Icon rendered before the label.\n */\n startIcon?: IconComponent;\n /**\n * Inline styles applied to the list item.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n item: css({\n display: 'flex',\n alignItems: 'center',\n gap: '1',\n m: 0,\n '--breadcrumb-separator-display': 'flex',\n _first: {\n '--breadcrumb-separator-display': 'none',\n },\n }),\n defaultSize: css({\n fontSize: 'sm',\n lineHeight: 'normal',\n }),\n supportingSize: css({\n fontSize: 'xs',\n lineHeight: 'normal',\n }),\n content: css({\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n }),\n link: css({\n display: 'inline-flex',\n alignItems: 'center',\n gap: '1',\n minW: 0,\n p: 0,\n py: '1',\n borderWidth: 0,\n bg: 'transparent',\n color: 'fg.muted',\n cursor: 'pointer',\n font: 'inherit',\n textDecoration: 'none',\n _hover: {\n textDecoration: 'underline',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n }),\n current: css({\n color: 'fg',\n }),\n supportingCurrent: css({\n color: 'fg.muted',\n }),\n icon: css({\n display: 'inline-flex',\n alignItems: 'center',\n flexShrink: 0,\n }),\n separator: css({\n display: 'var(--breadcrumb-separator-display)',\n alignItems: 'center',\n color: 'fg.muted',\n py: '1',\n userSelect: 'none',\n }),\n} as const;\n\n/**\n * A single item in a breadcrumb trail, rendered as a link, button, or\n * static text depending on the props provided.\n */\nexport function BreadcrumbItem({\n as,\n children,\n className,\n 'data-testid': dataTestId,\n href,\n isCurrent: isCurrentProp,\n onClick,\n ref,\n startIcon,\n style,\n}: BreadcrumbItemProps): React.JSX.Element {\n const context = use(BreadcrumbsContext);\n const LinkComponent = useLinkComponent(as);\n const isCurrent = isCurrentProp === true;\n const isSupporting = context.variant === 'supporting';\n\n const content = (\n <>\n {startIcon != null ? (\n <span className={styles.icon}>\n <Icon icon={startIcon} size=\"sm\" />\n </span>\n ) : null}\n {children}\n </>\n );\n\n const itemClassName = cx(\n styles.item,\n isSupporting ? styles.supportingSize : styles.defaultSize,\n className,\n );\n\n if (isCurrent) {\n return (\n <li\n className={itemClassName}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <span aria-hidden=\"true\" className={styles.separator}>\n {context.separator}\n </span>\n <span\n aria-current=\"page\"\n className={cx(\n styles.content,\n isSupporting ? styles.supportingCurrent : styles.current,\n )}>\n {content}\n </span>\n </li>\n );\n }\n\n return (\n <li\n className={itemClassName}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <span aria-hidden=\"true\" className={styles.separator}>\n {context.separator}\n </span>\n {href != null ? (\n <LinkComponent\n className={styles.link}\n href={href}\n onClick={onClick}\n to={LinkComponent === 'a' ? undefined : href}>\n {content}\n </LinkComponent>\n ) : onClick != null ? (\n <button className={styles.link} onClick={onClick} type=\"button\">\n {content}\n </button>\n ) : (\n <span\n className={cx(\n styles.content,\n isSupporting ? styles.supportingCurrent : styles.current,\n )}>\n {content}\n </span>\n )}\n </li>\n );\n}\n\nBreadcrumbItem.displayName = 'BreadcrumbItem';\n","import {useMemo, type CSSProperties, type ReactNode, type Ref} from 'react';\nimport {css} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {\n BreadcrumbsContext,\n type BreadcrumbsVariant,\n} from './BreadcrumbsContext';\n\nexport interface BreadcrumbsProps {\n /**\n * BreadcrumbItem children.\n */\n children: ReactNode;\n /**\n * Additional CSS class names applied to the nav element.\n */\n className?: string;\n /**\n * Test ID applied to the nav element.\n */\n 'data-testid'?: string;\n /**\n * Accessible label for the navigation landmark.\n * @default 'Breadcrumb'\n */\n label?: string;\n /**\n * Ref forwarded to the nav element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Separator rendered between items.\n * @default '/'\n */\n separator?: ReactNode;\n /**\n * Inline styles applied to the nav element.\n */\n style?: CSSProperties;\n /**\n * Visual text variant.\n * @default 'default'\n */\n variant?: BreadcrumbsVariant;\n}\n\nconst styles = {\n nav: css({\n display: 'block',\n }),\n list: css({\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n gap: '1',\n m: 0,\n p: 0,\n listStyle: 'none',\n }),\n} as const;\n\n/**\n * Navigation landmark that displays a trail of breadcrumb links.\n */\nexport function Breadcrumbs({\n children,\n className,\n 'data-testid': dataTestId,\n label = 'Breadcrumb',\n ref,\n separator = '/',\n style,\n variant = 'default',\n}: BreadcrumbsProps): React.JSX.Element {\n const contextValue = useMemo(\n () => ({separator, variant}),\n [separator, variant],\n );\n\n return (\n <BreadcrumbsContext value={contextValue}>\n <nav\n aria-label={label}\n className={cx(styles.nav, className)}\n data-testid={dataTestId}\n ref={ref}\n style={style}>\n <ol className={styles.list}>{children}</ol>\n </nav>\n </BreadcrumbsContext>\n );\n}\n\nBreadcrumbs.displayName = 'Breadcrumbs';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/internal/useGridFocus.ts","../src/components/Calendar/Calendar.tsx"],"names":["useRef","useCallback","css","getDaysInMonth","plainDateCreate","plainDateDayOfWeek","plainDateIsBefore","plainDateIsAfter","getBrowserTimezoneID","useMemo","plainDateToday","useState","plainDateFormat","DATE_FORMAT_MONTH_YEAR","useImperativeHandle","jsxs","cx","jsx","Button","ChevronLeft","ChevronRight","memo","MonthGrid","useEffect","plainDateIsEqual","plainDateGetWeekNumber","DayCell","plainDateIsInRange","DATE_FORMAT_WITH_WEEKDAY"],"mappings":"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","file":"chunk-4YQTSHIB.cjs","sourcesContent":["import {useCallback, useRef} from 'react';\n\nexport interface UseGridFocusOptions {\n cellSelector?: string;\n columns: number;\n onNavigateAfter?: (column: number, offset: number) => void;\n onNavigateBefore?: (column: number, offset: number) => void;\n onPageDown?: () => void;\n onPageUp?: () => void;\n}\n\nexport interface UseGridFocusReturn<T extends HTMLElement = HTMLElement> {\n focusCell: (index: number) => void;\n focusFirst: () => void;\n focusLast: () => void;\n gridRef: React.RefObject<T | null>;\n handleKeyDown: (event: React.KeyboardEvent) => void;\n}\n\nexport function useGridFocus<T extends HTMLElement = HTMLElement>({\n columns,\n cellSelector = 'button:not([disabled]), [tabindex]:not([tabindex=\"-1\"])',\n onNavigateAfter,\n onNavigateBefore,\n onPageDown,\n onPageUp,\n}: UseGridFocusOptions): UseGridFocusReturn<T> {\n const gridRef = useRef<T>(null);\n\n const getCells = useCallback(() => {\n return gridRef.current == null\n ? []\n : Array.from(gridRef.current.querySelectorAll<HTMLElement>(cellSelector));\n }, [cellSelector]);\n\n const focusCell = useCallback(\n (index: number) => {\n const cells = getCells();\n const clampedIndex = Math.max(0, Math.min(index, cells.length - 1));\n cells[clampedIndex]?.focus();\n },\n [getCells],\n );\n\n const focusFirst = useCallback(() => focusCell(0), [focusCell]);\n\n const focusLast = useCallback(() => {\n const cells = getCells();\n cells.at(-1)?.focus();\n }, [getCells]);\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent) => {\n const cells = getCells();\n const currentIndex = cells.findIndex(\n cell => cell === document.activeElement,\n );\n if (currentIndex === -1) {\n return;\n }\n\n const currentRow = Math.floor(currentIndex / columns);\n const currentColumn = currentIndex % columns;\n const totalRows = Math.ceil(cells.length / columns);\n let nextIndex: number | null = null;\n\n switch (event.key) {\n case 'ArrowRight':\n nextIndex = currentIndex + 1;\n break;\n case 'ArrowLeft':\n nextIndex = currentIndex - 1;\n break;\n case 'ArrowDown':\n if (currentRow >= totalRows - 1) {\n onNavigateAfter?.(currentColumn, columns);\n } else {\n nextIndex = currentIndex + columns;\n }\n break;\n case 'ArrowUp':\n if (currentRow <= 0) {\n onNavigateBefore?.(currentColumn, columns);\n } else {\n nextIndex = currentIndex - columns;\n }\n break;\n case 'Home':\n nextIndex = event.ctrlKey || event.metaKey ? 0 : currentRow * columns;\n break;\n case 'End':\n nextIndex =\n event.ctrlKey || event.metaKey\n ? cells.length - 1\n : Math.min((currentRow + 1) * columns - 1, cells.length - 1);\n break;\n case 'PageUp':\n onPageUp?.();\n break;\n case 'PageDown':\n onPageDown?.();\n break;\n default:\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n if (nextIndex == null) {\n return;\n }\n\n if (nextIndex < 0) {\n onNavigateBefore?.(currentColumn, 1);\n return;\n }\n\n if (nextIndex >= cells.length) {\n onNavigateAfter?.(currentColumn, 1);\n return;\n }\n\n cells[nextIndex]?.focus();\n },\n [\n columns,\n getCells,\n onNavigateAfter,\n onNavigateBefore,\n onPageDown,\n onPageUp,\n ],\n );\n\n return {gridRef, handleKeyDown, focusCell, focusFirst, focusLast};\n}\n","import {ChevronLeft, ChevronRight} from 'lucide-react';\nimport {\n memo,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n type CSSProperties,\n type Ref,\n} from 'react';\nimport {css, cx} from 'styled-system/css';\nimport type {DateRange, DayOfWeek} from '../../internal/dateTypes';\nimport {\n DATE_FORMAT_MONTH_YEAR,\n DATE_FORMAT_WITH_WEEKDAY,\n getDaysInMonth,\n plainDateCreate,\n plainDateDayOfWeek,\n plainDateFormat,\n plainDateGetWeekNumber,\n plainDateIsAfter,\n plainDateIsBefore,\n plainDateIsEqual,\n plainDateIsInRange,\n plainDateToday,\n type PlainDate,\n} from '../../internal/plainDate';\nimport {getBrowserTimezoneID} from '../../internal/time';\nimport {useGridFocus} from '../../internal/useGridFocus';\nimport {Button} from '../Button';\n\nexport type {DateRange, DayOfWeek} from '../../internal/dateTypes';\n\nexport interface CalendarHandle {\n navigateTo: (date: PlainDate) => void;\n}\n\ninterface CalendarBaseProps {\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 * Returns true for dates that should be disabled.\n */\n getIsDateDisabled?: (date: PlainDate) => boolean;\n /**\n * Whether to show outside-month days.\n * @default true\n */\n hasOutsideDays?: boolean;\n /**\n * Whether month grids use only needed rows rather than a fixed six rows.\n * @default false\n */\n hasVariableRowCount?: boolean;\n /**\n * Whether to show ISO week numbers.\n * @default false\n */\n hasWeekNumbers?: boolean;\n /**\n * Maximum selectable date.\n */\n max?: PlainDate;\n /**\n * Minimum selectable date.\n */\n min?: PlainDate;\n /**\n * Number of months displayed.\n * @default 1\n */\n numberOfMonths?: 1 | 2;\n /**\n * Called when the visible month changes.\n */\n onViewDateChange?: (viewDate: PlainDate) => void;\n /**\n * Ref exposing imperative calendar navigation.\n */\n ref?: Ref<CalendarHandle>;\n /**\n * Inline styles applied to the root element.\n */\n style?: CSSProperties;\n /**\n * Timezone used to determine today's date.\n * @default browser timezone\n */\n timezoneID?: string;\n /**\n * Controlled visible month.\n */\n viewDate?: PlainDate;\n /**\n * First day of week, where 0 is Sunday.\n * @default 0\n */\n weekStartsOn?: DayOfWeek;\n}\n\ninterface CalendarSingleProps extends CalendarBaseProps {\n /**\n * Default selected date for uncontrolled usage.\n */\n defaultValue?: PlainDate;\n /**\n * Selection mode. Defaults to 'single'.\n */\n mode?: 'single';\n /**\n * Called when the selected date changes.\n */\n onChange: (value: PlainDate) => void;\n /**\n * Controlled selected date.\n */\n value?: PlainDate;\n}\n\ninterface CalendarRangeProps extends CalendarBaseProps {\n /**\n * Default selected range for uncontrolled usage.\n */\n defaultValue?: DateRange;\n /**\n * Selection mode set to 'range'.\n */\n mode: 'range';\n /**\n * Called when the selected date range changes.\n */\n onChange: (value: DateRange) => void;\n /**\n * Controlled selected date range.\n */\n value?: DateRange;\n}\n\nexport type CalendarProps = CalendarSingleProps | CalendarRangeProps;\n\ninterface CalendarDay {\n date: PlainDate;\n dayNumber: number;\n isOutside: boolean;\n}\n\nconst styles = {\n root: css({\n display: 'inline-block',\n minW: '220px',\n color: 'fg',\n fontFamily: 'body',\n }),\n header: css({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: '2',\n mb: '2',\n }),\n monthYear: css({\n flex: 1,\n textAlign: 'center',\n fontSize: 'sm',\n fontWeight: 'semibold',\n }),\n months: css({\n display: 'flex',\n gap: '4',\n }),\n monthGrid: css({\n flex: '1 1 0',\n }),\n weekHeader: css({\n display: 'grid',\n gridTemplateColumns: 'repeat(7, 1fr)',\n mb: '1',\n }),\n weekHeaderWithNumbers: css({\n gridTemplateColumns: 'auto repeat(7, 1fr)',\n }),\n dayName: css({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n w: 'component.md',\n h: 'component.md',\n color: 'fg.muted',\n fontSize: 'sm',\n }),\n daysGrid: css({\n display: 'grid',\n gridTemplateColumns: 'repeat(7, 1fr)',\n }),\n daysGridWithNumbers: css({\n gridTemplateColumns: 'auto repeat(7, 1fr)',\n }),\n weekRow: css({\n display: 'contents',\n }),\n weekNumber: css({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n w: 'component.md',\n h: 'component.md',\n color: 'fg.muted',\n fontSize: 'sm',\n }),\n cell: css({\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n h: 'component.md',\n isolation: 'isolate',\n }),\n rangeBackground: css({\n position: 'absolute',\n insetBlock: '2px',\n insetInline: 0,\n bg: 'bg.selected',\n }),\n previewBackground: css({\n position: 'absolute',\n insetBlock: '2px',\n insetInline: 0,\n bg: 'bg.subtle',\n }),\n rangeLeft: css({\n left: '2px',\n borderTopLeftRadius: 'full',\n borderBottomLeftRadius: 'full',\n }),\n rangeRight: css({\n right: '2px',\n borderTopRightRadius: 'full',\n borderBottomRightRadius: 'full',\n }),\n day: css({\n position: 'relative',\n zIndex: 1,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n w: 'component.sm',\n h: 'component.sm',\n p: 0,\n borderWidth: 0,\n borderStyle: 'none',\n borderRadius: 'full',\n bg: 'transparent',\n color: 'fg',\n cursor: 'pointer',\n fontFamily: 'inherit',\n fontSize: 'md',\n transitionProperty: 'background-color, color',\n transitionDuration: 'fast',\n _hover: {\n bg: 'bg.subtle',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffset',\n },\n _disabled: {\n cursor: 'not-allowed',\n },\n }),\n dayOutside: css({\n color: 'fg.muted',\n opacity: 0.55,\n }),\n dayToday: css({\n boxShadow: 'inset 0 0 0 1px token(colors.border.emphasized)',\n }),\n daySelected: css({\n bg: 'primary',\n color: 'fg.onPrimary',\n _hover: {\n bg: 'primary',\n },\n }),\n dayDisabled: css({\n opacity: 0.35,\n }),\n} as const;\n\nfunction generateCalendarDays({\n year,\n month,\n weekStartsOn,\n hasVariableRowCount,\n}: {\n hasVariableRowCount: boolean;\n month: number;\n weekStartsOn: DayOfWeek;\n year: number;\n}): {dayNames: string[]; weeks: CalendarDay[][]} {\n const names = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\n const dayNames = Array.from({length: 7}, (_, index) => {\n return names[(index + weekStartsOn) % 7];\n });\n const daysInMonth = getDaysInMonth(year, month);\n const firstOfMonth = plainDateCreate(year, month, 1);\n let startOffset = plainDateDayOfWeek(firstOfMonth) - weekStartsOn;\n if (startOffset < 0) {\n startOffset += 7;\n }\n\n const totalDays = daysInMonth + startOffset;\n const totalRows = hasVariableRowCount ? Math.ceil(totalDays / 7) : 6;\n const days = Array.from({length: totalRows * 7}, (_, index) => {\n const dayOffset = index - startOffset + 1;\n const isOutside = dayOffset < 1 || dayOffset > daysInMonth;\n const date = isOutside\n ? firstOfMonth.add({days: dayOffset - 1})\n : plainDateCreate(year, month, dayOffset);\n\n return {\n date,\n dayNumber: date.day,\n isOutside,\n };\n });\n\n const weeks: CalendarDay[][] = [];\n for (let index = 0; index < days.length; index += 7) {\n weeks.push(days.slice(index, index + 7));\n }\n\n return {dayNames, weeks};\n}\n\nfunction checkDateDisabled(\n date: PlainDate,\n options: {\n getIsDateDisabled?: (date: PlainDate) => boolean;\n max?: PlainDate;\n min?: PlainDate;\n },\n): boolean {\n if (options.min != null && plainDateIsBefore(date, options.min)) {\n return true;\n }\n\n if (options.max != null && plainDateIsAfter(date, options.max)) {\n return true;\n }\n\n return options.getIsDateDisabled?.(date) ?? false;\n}\n\nfunction plainDateFromDataAttribute(value: string): PlainDate {\n return plainDateCreate(\n parseInt(value.slice(0, 4)),\n parseInt(value.slice(5, 7)),\n parseInt(value.slice(8, 10)),\n );\n}\n\nfunction getSelectedTabDate({\n days,\n getIsDisabled,\n month,\n selectedDate,\n today,\n year,\n}: {\n days: CalendarDay[];\n getIsDisabled: (date: PlainDate) => boolean;\n month: number;\n selectedDate: PlainDate | null;\n today: PlainDate;\n year: number;\n}): PlainDate | null {\n if (\n selectedDate?.year === year &&\n selectedDate.month === month &&\n !getIsDisabled(selectedDate)\n ) {\n return selectedDate;\n }\n\n if (today.year === year && today.month === month && !getIsDisabled(today)) {\n return today;\n }\n\n return (\n days.find(day => !day.isOutside && !getIsDisabled(day.date))?.date ?? null\n );\n}\n\n/**\n * A date picker calendar supporting single date and date range selection.\n */\nexport function Calendar({\n className,\n 'data-testid': dataTestId,\n defaultValue,\n getIsDateDisabled: getIsDateDisabledProp,\n hasOutsideDays = true,\n hasVariableRowCount = false,\n hasWeekNumbers = false,\n max,\n min,\n mode = 'single',\n numberOfMonths = 1,\n onChange,\n onViewDateChange,\n ref,\n style,\n timezoneID,\n value,\n viewDate: viewDateFromProps,\n weekStartsOn = 0,\n}: CalendarProps): React.JSX.Element {\n const effectiveTimezoneID = timezoneID ?? getBrowserTimezoneID();\n const today = useMemo(\n () => plainDateToday(effectiveTimezoneID),\n [effectiveTimezoneID],\n );\n const [internalValue, setInternalValue] = useState<\n DateRange | PlainDate | undefined\n >(defaultValue);\n const [rangeSelectionStart, setRangeSelectionStart] =\n useState<PlainDate | null>(null);\n const [hoveredDate, setHoveredDate] = useState<PlainDate | null>(null);\n const [pendingFocus, setPendingFocus] = useState<PlainDate | null>(null);\n const effectiveValue = value ?? internalValue;\n const isViewDateControlled =\n viewDateFromProps != null && onViewDateChange != null;\n const [internalViewDate, setInternalViewDate] = useState(() => {\n if (viewDateFromProps != null) {\n return viewDateFromProps;\n }\n\n if (effectiveValue != null && 'year' in effectiveValue) {\n return effectiveValue;\n }\n\n if (effectiveValue != null && 'start' in effectiveValue) {\n return effectiveValue.start;\n }\n\n return today;\n });\n const viewDate = isViewDateControlled ? viewDateFromProps : internalViewDate;\n const baseMonth = useMemo(() => viewDate.with({day: 1}), [viewDate]);\n const visibleMonths = useMemo(\n () =>\n Array.from({length: numberOfMonths}, (_, index) =>\n baseMonth.add({months: index}),\n ),\n [baseMonth, numberOfMonths],\n );\n const monthYearLabel = useMemo(\n () =>\n visibleMonths\n .map(month => plainDateFormat(month, DATE_FORMAT_MONTH_YEAR))\n .join(' - '),\n [visibleMonths],\n );\n\n const canNavigatePrevious =\n min == null || plainDateIsBefore(min.with({day: 1}), baseMonth);\n const lastVisibleMonth = visibleMonths.at(-1) ?? baseMonth;\n const canNavigateNext =\n max == null || plainDateIsAfter(max.with({day: 1}), lastVisibleMonth);\n\n const navigateMonth = useCallback(\n (delta: number, focusedDate?: PlainDate, offset = 7) => {\n const nextMonth = baseMonth.add({months: delta});\n\n if (focusedDate != null) {\n setPendingFocus(focusedDate.add({days: delta * offset}));\n }\n\n onViewDateChange?.(nextMonth);\n if (!isViewDateControlled) {\n setInternalViewDate(nextMonth);\n }\n },\n [baseMonth, isViewDateControlled, onViewDateChange],\n );\n\n useImperativeHandle(\n ref,\n () => ({\n navigateTo: date => {\n onViewDateChange?.(date);\n if (!isViewDateControlled) {\n setInternalViewDate(date);\n }\n },\n }),\n [isViewDateControlled, onViewDateChange],\n );\n\n const handleDayClick = useCallback(\n (date: PlainDate) => {\n if (mode === 'single') {\n setInternalValue(date);\n (onChange as CalendarSingleProps['onChange'])(date);\n return;\n }\n\n if (rangeSelectionStart == null) {\n setRangeSelectionStart(date);\n return;\n }\n\n const range = plainDateIsBefore(date, rangeSelectionStart)\n ? {start: date, end: rangeSelectionStart}\n : {start: rangeSelectionStart, end: date};\n setInternalValue(range);\n setRangeSelectionStart(null);\n (onChange as CalendarRangeProps['onChange'])(range);\n },\n [mode, onChange, rangeSelectionStart],\n );\n\n const handleNavigateNext = useCallback(\n (focusedDate: PlainDate, offset: number) =>\n navigateMonth(1, focusedDate, offset),\n [navigateMonth],\n );\n\n const handleNavigatePrevious = useCallback(\n (focusedDate: PlainDate, offset: number) =>\n navigateMonth(-1, focusedDate, offset),\n [navigateMonth],\n );\n\n const handlePendingFocusHandled = useCallback(\n () => setPendingFocus(null),\n [],\n );\n\n return (\n // eslint-disable-next-line jsx-a11y-x/no-static-element-interactions\n <div\n className={cx(styles.root, className)}\n data-testid={dataTestId}\n onKeyDown={event => {\n if (\n mode === 'range' &&\n rangeSelectionStart != null &&\n event.key === 'Escape'\n ) {\n setRangeSelectionStart(null);\n event.preventDefault();\n event.stopPropagation();\n }\n }}\n style={style}>\n <div className={styles.header}>\n <Button\n icon={ChevronLeft}\n isDisabled={!canNavigatePrevious}\n isIconOnly\n label=\"Previous month\"\n onClick={() => navigateMonth(-1)}\n size=\"sm\"\n variant=\"ghost\"\n />\n <span className={styles.monthYear}>{monthYearLabel}</span>\n <Button\n icon={ChevronRight}\n isDisabled={!canNavigateNext}\n isIconOnly\n label=\"Next month\"\n onClick={() => navigateMonth(1)}\n size=\"sm\"\n variant=\"ghost\"\n />\n </div>\n <div className={styles.months}>\n {visibleMonths.map(month => (\n <MonthGrid\n getIsDateDisabled={getIsDateDisabledProp}\n hasOutsideDays={hasOutsideDays}\n hasVariableRowCount={hasVariableRowCount}\n hasWeekNumbers={hasWeekNumbers}\n hoveredDate={hoveredDate}\n key={month.toString()}\n max={max}\n min={min}\n mode={mode}\n month={month}\n onDayClick={handleDayClick}\n onDayHover={setHoveredDate}\n onNavigateNext={handleNavigateNext}\n onNavigatePrevious={handleNavigatePrevious}\n onPendingFocusHandled={handlePendingFocusHandled}\n pendingFocus={pendingFocus}\n rangeSelectionStart={rangeSelectionStart}\n today={today}\n value={effectiveValue}\n weekStartsOn={weekStartsOn}\n />\n ))}\n </div>\n </div>\n );\n}\n\ninterface MonthGridProps {\n getIsDateDisabled?: (date: PlainDate) => boolean;\n hasOutsideDays: boolean;\n hasVariableRowCount: boolean;\n hasWeekNumbers: boolean;\n hoveredDate: PlainDate | null;\n max?: PlainDate;\n min?: PlainDate;\n mode: 'single' | 'range';\n month: PlainDate;\n onDayClick: (date: PlainDate) => void;\n onDayHover: (date: PlainDate | null) => void;\n onNavigateNext: (focusedDate: PlainDate, offset: number) => void;\n onNavigatePrevious: (focusedDate: PlainDate, offset: number) => void;\n onPendingFocusHandled: () => void;\n pendingFocus: PlainDate | null;\n rangeSelectionStart: PlainDate | null;\n today: PlainDate;\n value: DateRange | PlainDate | undefined;\n weekStartsOn: DayOfWeek;\n}\n\nconst MonthGrid = memo(function MonthGrid({\n month,\n value,\n mode,\n rangeSelectionStart,\n hoveredDate,\n min,\n max,\n getIsDateDisabled: getIsDateDisabledProp,\n hasOutsideDays,\n hasWeekNumbers,\n hasVariableRowCount,\n weekStartsOn,\n onDayClick,\n onDayHover,\n today,\n onNavigatePrevious,\n onNavigateNext,\n pendingFocus,\n onPendingFocusHandled,\n}: MonthGridProps): React.JSX.Element {\n const {dayNames, weeks} = useMemo(\n () =>\n generateCalendarDays({\n year: month.year,\n month: month.month,\n weekStartsOn,\n hasVariableRowCount,\n }),\n [hasVariableRowCount, month.month, month.year, weekStartsOn],\n );\n const days = weeks.flat();\n const isDisabled = useCallback(\n (date: PlainDate) =>\n checkDateDisabled(date, {\n min,\n max,\n getIsDateDisabled: getIsDateDisabledProp,\n }),\n [getIsDateDisabledProp, max, min],\n );\n const selectedDate =\n mode === 'single' && value != null && 'year' in value ? value : null;\n const tabbableDate = getSelectedTabDate({\n days,\n getIsDisabled: isDisabled,\n month: month.month,\n selectedDate,\n today,\n year: month.year,\n });\n\n const getFocusedDate = useCallback((): PlainDate | null => {\n const activeElement = document.activeElement as HTMLElement | null;\n const date = activeElement?.dataset.date;\n return date == null ? null : plainDateFromDataAttribute(date);\n }, []);\n\n const {gridRef, handleKeyDown} = useGridFocus<HTMLDivElement>({\n columns: 7,\n cellSelector: 'button:not([disabled])',\n onNavigateBefore: (_column, offset) => {\n const focusedDate = getFocusedDate();\n if (focusedDate != null) {\n onNavigatePrevious(focusedDate, offset);\n }\n },\n onNavigateAfter: (_column, offset) => {\n const focusedDate = getFocusedDate();\n if (focusedDate != null) {\n onNavigateNext(focusedDate, offset);\n }\n },\n onPageUp: () => {\n const focusedDate = getFocusedDate();\n if (focusedDate != null) {\n onNavigatePrevious(focusedDate, 7);\n }\n },\n onPageDown: () => {\n const focusedDate = getFocusedDate();\n if (focusedDate != null) {\n onNavigateNext(focusedDate, 7);\n }\n },\n });\n\n useEffect(() => {\n if (pendingFocus == null || gridRef.current == null) {\n return;\n }\n\n const button = gridRef.current.querySelector<HTMLButtonElement>(\n `button[data-date=\"${pendingFocus.toString()}\"]`,\n );\n button?.focus();\n onPendingFocusHandled();\n }, [gridRef, onPendingFocusHandled, pendingFocus]);\n\n let rangeStart: PlainDate | null = null;\n let rangeEnd: PlainDate | null = null;\n if (mode === 'range' && value != null && 'start' in value) {\n rangeStart = value.start;\n rangeEnd = value.end;\n }\n if (rangeSelectionStart != null) {\n rangeStart = rangeSelectionStart;\n rangeEnd = rangeSelectionStart;\n }\n\n let previewStart: PlainDate | null = null;\n let previewEnd: PlainDate | null = null;\n if (mode === 'range' && rangeSelectionStart != null && hoveredDate != null) {\n if (!plainDateIsEqual(rangeSelectionStart, hoveredDate)) {\n previewStart = plainDateIsBefore(hoveredDate, rangeSelectionStart)\n ? hoveredDate\n : rangeSelectionStart;\n previewEnd = plainDateIsBefore(hoveredDate, rangeSelectionStart)\n ? rangeSelectionStart\n : hoveredDate;\n }\n }\n\n return (\n <div className={styles.monthGrid}>\n <div\n className={cx(\n styles.weekHeader,\n hasWeekNumbers ? styles.weekHeaderWithNumbers : undefined,\n )}>\n {hasWeekNumbers ? <div className={styles.dayName} /> : null}\n {dayNames.map(dayName => (\n <div className={styles.dayName} key={dayName} role=\"columnheader\">\n {dayName}\n </div>\n ))}\n </div>\n <div\n aria-label={plainDateFormat(month, DATE_FORMAT_MONTH_YEAR)}\n className={cx(\n styles.daysGrid,\n hasWeekNumbers ? styles.daysGridWithNumbers : undefined,\n )}\n onKeyDown={handleKeyDown}\n ref={gridRef}\n role=\"grid\"\n tabIndex={-1}>\n {weeks.map(week => {\n const weekDate =\n week.find(day => !day.isOutside)?.date ?? week[0].date;\n return (\n <div\n className={styles.weekRow}\n key={week[0].date.toString()}\n role=\"row\">\n {hasWeekNumbers ? (\n <div className={styles.weekNumber}>\n {plainDateGetWeekNumber(weekDate)}\n </div>\n ) : null}\n {week.map((day, dayIndex) => (\n <DayCell\n day={day}\n dayIndex={dayIndex}\n hasOutsideDays={hasOutsideDays}\n isDisabled={isDisabled(day.date)}\n isTabbable={\n tabbableDate != null &&\n plainDateIsEqual(tabbableDate, day.date)\n }\n key={day.date.toString()}\n mode={mode}\n onDayClick={onDayClick}\n onDayHover={onDayHover}\n previewEnd={previewEnd}\n previewStart={previewStart}\n rangeEnd={rangeEnd}\n rangeStart={rangeStart}\n selectedDate={selectedDate}\n today={today}\n />\n ))}\n </div>\n );\n })}\n </div>\n </div>\n );\n});\n\ninterface DayCellProps {\n day: CalendarDay;\n dayIndex: number;\n hasOutsideDays: boolean;\n isDisabled: boolean;\n isTabbable: boolean;\n mode: 'single' | 'range';\n onDayClick: (date: PlainDate) => void;\n onDayHover: (date: PlainDate | null) => void;\n previewEnd: PlainDate | null;\n previewStart: PlainDate | null;\n rangeEnd: PlainDate | null;\n rangeStart: PlainDate | null;\n selectedDate: PlainDate | null;\n today: PlainDate;\n}\n\nconst DayCell = memo(function DayCell({\n day,\n dayIndex,\n mode,\n selectedDate,\n rangeStart,\n rangeEnd,\n previewStart,\n previewEnd,\n today,\n hasOutsideDays,\n isDisabled,\n isTabbable,\n onDayClick,\n onDayHover,\n}: DayCellProps): React.JSX.Element {\n if (day.isOutside && !hasOutsideDays) {\n return <div className={styles.cell} />;\n }\n\n const effectivelyDisabled = isDisabled || day.isOutside;\n const isToday = plainDateIsEqual(day.date, today);\n const isSelected =\n mode === 'single' &&\n selectedDate != null &&\n plainDateIsEqual(day.date, selectedDate);\n const isInRange =\n mode === 'range' &&\n rangeStart != null &&\n rangeEnd != null &&\n plainDateIsInRange(day.date, [rangeStart, rangeEnd]);\n const isRangeStart =\n mode === 'range' &&\n rangeStart != null &&\n plainDateIsEqual(day.date, rangeStart);\n const isRangeEnd =\n mode === 'range' &&\n rangeEnd != null &&\n plainDateIsEqual(day.date, rangeEnd);\n const isInPreview =\n previewStart != null &&\n previewEnd != null &&\n plainDateIsInRange(day.date, [previewStart, previewEnd]);\n const isPreviewStart =\n previewStart != null && plainDateIsEqual(day.date, previewStart);\n const isPreviewEnd =\n previewEnd != null && plainDateIsEqual(day.date, previewEnd);\n const isFirstColumn = dayIndex === 0;\n const isLastColumn = dayIndex === 6;\n\n return (\n <div className={styles.cell}>\n {isInRange ? (\n <div\n className={cx(\n styles.rangeBackground,\n isRangeStart || isFirstColumn ? styles.rangeLeft : undefined,\n isRangeEnd || isLastColumn ? styles.rangeRight : undefined,\n )}\n />\n ) : null}\n {isInPreview ? (\n <div\n className={cx(\n styles.previewBackground,\n isPreviewStart || isFirstColumn ? styles.rangeLeft : undefined,\n isPreviewEnd || isLastColumn ? styles.rangeRight : undefined,\n )}\n />\n ) : null}\n <button\n aria-disabled={effectivelyDisabled || undefined}\n aria-label={plainDateFormat(day.date, DATE_FORMAT_WITH_WEEKDAY)}\n aria-selected={isSelected || isInRange || undefined}\n className={cx(\n styles.day,\n day.isOutside ? styles.dayOutside : undefined,\n isToday && !isSelected && !isInRange ? styles.dayToday : undefined,\n isSelected || isRangeStart || isRangeEnd\n ? styles.daySelected\n : undefined,\n effectivelyDisabled ? styles.dayDisabled : undefined,\n )}\n data-date={day.date.toString()}\n disabled={isDisabled}\n onClick={() => {\n if (!effectivelyDisabled) {\n onDayClick(day.date);\n }\n }}\n onMouseEnter={() => {\n if (!effectivelyDisabled) {\n onDayHover(day.date);\n }\n }}\n onMouseLeave={() => onDayHover(null)}\n role=\"gridcell\"\n tabIndex={isTabbable ? 0 : -1}\n type=\"button\">\n {day.dayNumber}\n </button>\n </div>\n );\n});\n\nCalendar.displayName = 'Calendar';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Stack/Stack.recipe.ts","../src/components/Stack/Stack.tsx","../src/components/Stack/HStack.tsx","../src/components/Stack/VStack.tsx"],"names":["jsx"],"mappings":"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","file":"chunk-5MDH6QZE.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const stackRecipe = cva({\n base: {\n display: 'flex',\n minW: 0,\n },\n variants: {\n direction: {\n horizontal: {\n flexDirection: 'row',\n },\n vertical: {\n flexDirection: 'column',\n },\n },\n gap: {\n 0: {gap: '0'},\n 0.5: {gap: '0.5'},\n 1: {gap: '1'},\n 1.5: {gap: '1.5'},\n 2: {gap: '2'},\n 3: {gap: '3'},\n 4: {gap: '4'},\n 5: {gap: '5'},\n 6: {gap: '6'},\n 8: {gap: '8'},\n 10: {gap: '10'},\n },\n wrap: {\n nowrap: {\n flexWrap: 'nowrap',\n },\n wrap: {\n flexWrap: 'wrap',\n },\n 'wrap-reverse': {\n flexWrap: 'wrap-reverse',\n },\n },\n },\n defaultVariants: {\n direction: 'vertical',\n wrap: 'nowrap',\n },\n});\n\nexport type StackVariants = RecipeVariantProps<typeof stackRecipe>;\n","import {\n createElement,\n type CSSProperties,\n type ElementType,\n type HTMLAttributes,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {cx} from '../../internal/cx';\nimport type {SpacingToken} from '../../internal/spacingTokens';\nimport {toPixelSize, type SizeValue} from '../../internal/toPixelSize';\nimport {stackRecipe} from './Stack.recipe';\n\nexport type {SizeValue};\nexport type StackDirection = 'horizontal' | 'vertical';\nexport type StackMainAlignment =\n | 'start'\n | 'center'\n | 'end'\n | 'between'\n | 'around'\n | 'evenly';\nexport type StackCrossAlignment = 'start' | 'center' | 'end' | 'stretch';\nexport type StackAlignment = StackMainAlignment | StackCrossAlignment;\nexport type StackWrap = 'nowrap' | 'wrap' | 'wrap-reverse';\nexport type StackGap = SpacingToken;\n\nexport interface StackProps extends HTMLAttributes<HTMLElement> {\n /**\n * Cross-axis alignment.\n */\n align?: StackCrossAlignment;\n /**\n * HTML element type to render.\n */\n as?: ElementType;\n /**\n * Stack content.\n */\n children?: ReactNode;\n /**\n * Test ID applied to the root element.\n */\n 'data-testid'?: string;\n /**\n * Layout direction.\n */\n direction?: StackDirection;\n /**\n * Gap between children.\n */\n gap?: StackGap;\n /**\n * Horizontal alignment (overrides align/justify for horizontal axis).\n */\n hAlign?: StackAlignment;\n /**\n * Fixed height. Numbers are treated as pixels.\n */\n height?: SizeValue;\n /**\n * Main-axis alignment.\n */\n justify?: StackMainAlignment;\n /**\n * Ref forwarded to the root element.\n */\n ref?: Ref<HTMLElement>;\n /**\n * Vertical alignment (overrides align/justify for vertical axis).\n */\n vAlign?: StackAlignment;\n /**\n * Fixed width. Numbers are treated as pixels.\n */\n width?: SizeValue;\n /**\n * Flex wrap behavior.\n */\n wrap?: StackWrap;\n}\n\nconst mainAlignValues: Record<StackMainAlignment, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n between: 'space-between',\n around: 'space-around',\n evenly: 'space-evenly',\n};\n\nconst crossAlignValues: Record<StackCrossAlignment, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n};\n\nexport function Stack({\n align,\n children,\n className,\n 'data-testid': dataTestId,\n direction = 'vertical',\n as: Element = 'div',\n gap,\n hAlign,\n height,\n justify,\n ref,\n style,\n vAlign,\n width,\n wrap = 'nowrap',\n ...htmlProps\n}: StackProps): React.JSX.Element {\n const resolvedHAlign =\n hAlign ?? (direction === 'horizontal' ? justify : align);\n const resolvedVAlign =\n vAlign ?? (direction === 'horizontal' ? align : justify);\n const mainAlign =\n direction === 'horizontal' ? resolvedHAlign : resolvedVAlign;\n const crossAlign =\n direction === 'horizontal' ? resolvedVAlign : resolvedHAlign;\n const stackStyle: CSSProperties = {\n justifyContent:\n mainAlign != null && mainAlign in mainAlignValues\n ? mainAlignValues[mainAlign as StackMainAlignment]\n : undefined,\n alignItems:\n crossAlign != null && crossAlign in crossAlignValues\n ? crossAlignValues[crossAlign as StackCrossAlignment]\n : undefined,\n width: toPixelSize(width),\n height: toPixelSize(height),\n ...style,\n };\n\n return createElement(\n Element,\n {\n ...htmlProps,\n className: cx(stackRecipe({direction, gap, wrap}), className),\n 'data-testid': dataTestId,\n ref,\n style: stackStyle,\n },\n children,\n );\n}\n\nStack.displayName = 'Stack';\n","import type {Ref} from 'react';\nimport {\n Stack,\n type StackCrossAlignment,\n type StackMainAlignment,\n type StackProps,\n} from './Stack';\n\nexport interface HStackProps extends Omit<\n StackProps,\n 'direction' | 'hAlign' | 'vAlign'\n> {\n align?: StackCrossAlignment;\n hAlign?: StackMainAlignment;\n justify?: StackMainAlignment;\n ref?: Ref<HTMLElement>;\n vAlign?: StackCrossAlignment;\n}\n\nexport function HStack({\n align,\n className,\n 'data-testid': dataTestId,\n hAlign,\n justify,\n ref,\n style,\n vAlign,\n ...props\n}: HStackProps): React.JSX.Element {\n return (\n <Stack\n {...props}\n className={className}\n data-testid={dataTestId}\n direction=\"horizontal\"\n hAlign={hAlign ?? justify}\n ref={ref}\n style={style}\n vAlign={vAlign ?? align}\n />\n );\n}\n\nHStack.displayName = 'HStack';\n","import type {Ref} from 'react';\nimport {\n Stack,\n type StackCrossAlignment,\n type StackMainAlignment,\n type StackProps,\n} from './Stack';\n\nexport interface VStackProps extends Omit<\n StackProps,\n 'direction' | 'hAlign' | 'vAlign'\n> {\n align?: StackCrossAlignment;\n hAlign?: StackCrossAlignment;\n justify?: StackMainAlignment;\n ref?: Ref<HTMLElement>;\n vAlign?: StackMainAlignment;\n}\n\nexport function VStack({\n align,\n className,\n 'data-testid': dataTestId,\n hAlign,\n justify,\n ref,\n style,\n vAlign,\n ...props\n}: VStackProps): React.JSX.Element {\n return (\n <Stack\n {...props}\n className={className}\n data-testid={dataTestId}\n direction=\"vertical\"\n hAlign={hAlign ?? align}\n ref={ref}\n style={style}\n vAlign={vAlign ?? justify}\n />\n );\n}\n\nVStack.displayName = 'VStack';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/DropdownMenu/DropdownMenuContext.ts","../src/components/DropdownMenu/DropdownMenuItem.tsx","../src/components/DropdownMenu/menuUtils.tsx","../src/components/DropdownMenu/DropdownMenu.tsx"],"names":["cx","jsx","styles","useCallback","jsxs"],"mappings":"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","file":"chunk-63RKQ237.js","sourcesContent":["import {createContext, use} from 'react';\nimport type {ButtonSize} from '../Button';\n\nexport interface DropdownMenuContextValue {\n closeMenu: () => void;\n menuSize: ButtonSize;\n}\n\nexport const DropdownMenuContext =\n createContext<DropdownMenuContextValue | null>(null);\n\nDropdownMenuContext.displayName = 'DropdownMenuContext';\n\nexport function useDropdownMenuContext(): DropdownMenuContextValue | null {\n return use(DropdownMenuContext);\n}\n","import type {CSSProperties, ReactNode, Ref} from 'react';\nimport {css, cva} from 'styled-system/css';\nimport {cx} from '../../internal/cx';\nimport {Icon, type IconComponent} from '../Icon';\nimport {Item} from '../Item';\nimport {useDropdownMenuContext} from './DropdownMenuContext';\n\nexport interface DropdownMenuItemProps {\n /**\n * Additional CSS class names applied to the item.\n */\n className?: string;\n /**\n * Test ID applied to the item.\n */\n 'data-testid'?: string;\n /**\n * Supporting text shown below the label.\n */\n description?: ReactNode;\n /**\n * Trailing content.\n */\n endContent?: ReactNode;\n /**\n * Icon rendered before the label.\n */\n icon?: IconComponent;\n /**\n * Whether the item is disabled.\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Item label.\n */\n label: string;\n /**\n * Called when the item is selected.\n */\n onClick?: () => void;\n /**\n * Ref forwarded to the item button.\n */\n ref?: Ref<HTMLButtonElement>;\n /**\n * Inline styles applied to the item.\n */\n style?: CSSProperties;\n}\n\nconst menuItemRecipe = cva({\n base: {\n display: 'block',\n w: 'full',\n borderRadius: 'md',\n color: 'fg',\n cursor: 'pointer',\n fontFamily: 'body',\n textAlign: 'start',\n _hover: {bg: 'bg.subtle'},\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffsetTight',\n },\n _disabled: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n },\n variants: {\n size: {\n sm: {\n minH: 'component.sm',\n '& > *': {py: '0.5', px: '1.5', gap: '1.5'},\n },\n md: {\n minH: 'component.md',\n '& > *': {py: '1.5', px: '2'},\n },\n lg: {\n minH: 'component.lg',\n '& > *': {py: '2.5', px: '2.5', gap: '2.5'},\n },\n },\n },\n defaultVariants: {\n size: 'md',\n },\n});\n\nconst styles = {\n icon: css({\n display: 'inline-flex',\n flexShrink: 0,\n color: 'fg.muted',\n }),\n} as const;\n\n/**\n * Action item inside a `DropdownMenu`.\n */\nexport function DropdownMenuItem({\n className,\n 'data-testid': dataTestId,\n description,\n endContent,\n icon,\n isDisabled = false,\n label,\n onClick,\n ref,\n style,\n}: DropdownMenuItemProps): React.JSX.Element {\n const context = useDropdownMenuContext();\n const menuSize = context?.menuSize ?? 'md';\n\n return (\n <button\n className={cx(menuItemRecipe({size: menuSize}), className)}\n data-testid={dataTestId}\n disabled={isDisabled}\n onClick={() => {\n onClick?.();\n context?.closeMenu();\n }}\n ref={ref}\n role=\"menuitem\"\n style={style}\n type=\"button\">\n <Item\n as=\"span\"\n description={description}\n endContent={endContent}\n label={label}\n startContent={\n icon != null ? (\n <span className={styles.icon}>\n <Icon color=\"secondary\" icon={icon} size=\"sm\" />\n </span>\n ) : null\n }\n />\n </button>\n );\n}\n\nDropdownMenuItem.displayName = 'DropdownMenuItem';\n","/* eslint-disable @eslint-react/no-array-index-key */\nimport {useCallback, type KeyboardEvent, type ReactNode} from 'react';\nimport {css} from 'styled-system/css';\nimport {Divider} from '../Divider';\nimport {Text} from '../Text';\nimport {DropdownMenuItem} from './DropdownMenuItem';\nimport type {DropdownMenuOption} from './types';\n\nconst menuStyles = {\n section: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n }),\n heading: css({\n px: '2',\n py: '1',\n userSelect: 'none',\n }),\n divider: css({\n my: '1',\n }),\n} as const;\n\nexport function formatMenuWidth(\n value: number | string | undefined,\n): string | undefined {\n if (value == null) {\n return undefined;\n }\n return typeof value === 'number' ? `${value}px` : value;\n}\n\nexport function renderMenuItems(\n items: ReadonlyArray<DropdownMenuOption>,\n): ReactNode {\n return items.map((item, index) => {\n if ('type' in item && item.type === 'divider') {\n return (\n <Divider className={menuStyles.divider} key={`divider-${index}`} />\n );\n }\n\n if ('type' in item) {\n return (\n <div\n aria-label={item.title}\n className={menuStyles.section}\n key={`section-${item.title ?? index}`}\n role=\"group\">\n {item.title != null ? (\n <Text\n as=\"span\"\n className={menuStyles.heading}\n color=\"secondary\"\n type=\"supporting\">\n {item.title}\n </Text>\n ) : null}\n {item.items.map(sectionItem => (\n <DropdownMenuItem\n description={sectionItem.description}\n icon={sectionItem.icon}\n isDisabled={sectionItem.isDisabled}\n key={sectionItem.label}\n label={sectionItem.label}\n onClick={sectionItem.onClick}\n />\n ))}\n </div>\n );\n }\n\n return (\n <DropdownMenuItem\n description={item.description}\n icon={item.icon}\n isDisabled={item.isDisabled}\n key={item.label}\n label={item.label}\n onClick={item.onClick}\n />\n );\n });\n}\n\nexport function useMenuKeyboard(\n menuRef: React.RefObject<HTMLElement | null>,\n onClose: () => void,\n): (event: KeyboardEvent<HTMLElement>) => void {\n const getMenuItems = useCallback(() => {\n if (menuRef.current == null) {\n return [];\n }\n return Array.from(\n menuRef.current.querySelectorAll<HTMLElement>(\n '[role=\"menuitem\"]:not(:disabled)',\n ),\n );\n }, [menuRef]);\n\n return useCallback(\n (event: KeyboardEvent<HTMLElement>) => {\n const menuItems = getMenuItems();\n if (menuItems.length === 0) {\n return;\n }\n const currentIndex = menuItems.findIndex(\n item => item === document.activeElement,\n );\n let nextIndex: number;\n\n switch (event.key) {\n case 'ArrowDown':\n nextIndex =\n currentIndex === -1 ? 0 : (currentIndex + 1) % menuItems.length;\n break;\n case 'ArrowUp':\n nextIndex =\n currentIndex === -1\n ? menuItems.length - 1\n : (currentIndex - 1 + menuItems.length) % menuItems.length;\n break;\n case 'Home':\n nextIndex = 0;\n break;\n case 'End':\n nextIndex = menuItems.length - 1;\n break;\n case 'Escape':\n event.preventDefault();\n onClose();\n return;\n case 'Enter':\n case ' ':\n if (document.activeElement instanceof HTMLElement) {\n event.preventDefault();\n document.activeElement.click();\n }\n return;\n default:\n if (event.key.length === 1) {\n const char = event.key.toLowerCase();\n const startIndex = currentIndex === -1 ? 0 : currentIndex + 1;\n for (let i = 0; i < menuItems.length; i++) {\n const index = (startIndex + i) % menuItems.length;\n const label = menuItems[index].textContent.trim().toLowerCase();\n if (label.startsWith(char)) {\n event.preventDefault();\n menuItems[index].focus();\n return;\n }\n }\n }\n return;\n }\n\n event.preventDefault();\n menuItems[nextIndex]?.focus();\n },\n [getMenuItems, onClose],\n );\n}\n","import {ChevronDown} from 'lucide-react';\nimport {\n useCallback,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type ReactNode,\n type Ref,\n} from 'react';\nimport {css, cx} from 'styled-system/css';\nimport {Button, type ButtonProps, type ButtonSize} from '../Button';\nimport {Icon} from '../Icon';\nimport {Popover} from '../Popover';\nimport {DropdownMenuContext} from './DropdownMenuContext';\nimport {formatMenuWidth, renderMenuItems, useMenuKeyboard} from './menuUtils';\nimport type {DropdownMenuOption} from './types';\n\nexport type {\n DropdownMenuDivider,\n DropdownMenuItemData,\n DropdownMenuOption,\n DropdownMenuSection,\n} from './types';\n\ntype DistributiveOmit<T, K extends PropertyKey> = T extends unknown\n ? Omit<T, K>\n : never;\n\nexport type DropdownMenuButtonProps = DistributiveOmit<ButtonProps, 'onClick'>;\n\nexport interface DropdownMenuProps {\n /**\n * Trigger button props.\n */\n button?: DropdownMenuButtonProps;\n /**\n * Compound menu content (alternative to `items`).\n */\n children?: ReactNode;\n /**\n * Additional CSS class names applied to the menu surface.\n */\n className?: string;\n /**\n * Test ID applied to the trigger button.\n */\n 'data-testid'?: string;\n /**\n * Whether to auto-focus the first menu item on open.\n * @default true\n */\n hasAutoFocus?: boolean;\n /**\n * Whether to show a chevron on the trigger button.\n * @default true\n */\n hasChevron?: boolean;\n /**\n * Controlled open state.\n */\n isMenuOpen?: boolean;\n /**\n * Data-driven menu items.\n */\n items?: ReadonlyArray<DropdownMenuOption>;\n /**\n * Width of the menu surface.\n */\n menuWidth?: number | string;\n /**\n * Click handler for the trigger button.\n */\n onClick?: () => void;\n /**\n * Called when the menu open state changes.\n */\n onOpenChange?: (isOpen: boolean) => void;\n /**\n * Ref forwarded to the trigger button.\n */\n ref?: Ref<HTMLButtonElement>;\n /**\n * Inline styles applied to the menu surface.\n */\n style?: CSSProperties;\n}\n\nconst styles = {\n menu: css({\n display: 'flex',\n flexDirection: 'column',\n gap: '0.5',\n maxH: '80',\n overflowY: 'auto',\n p: '1',\n }),\n} as const;\n\nconst defaultButton = {label: 'Menu'} satisfies DropdownMenuButtonProps;\n\n/**\n * Button-triggered menu for grouped actions.\n */\nexport function DropdownMenu({\n button = defaultButton,\n children,\n className,\n 'data-testid': dataTestId,\n hasAutoFocus = true,\n hasChevron = true,\n isMenuOpen,\n items,\n menuWidth,\n onClick,\n onOpenChange,\n ref,\n style,\n}: DropdownMenuProps): React.JSX.Element {\n const [internalOpen, setInternalOpen] = useState(false);\n const isControlled = isMenuOpen !== undefined;\n const isOpen = isControlled ? isMenuOpen : internalOpen;\n const menuSize: ButtonSize = button.size ?? 'md';\n const menuRef = useRef<HTMLDivElement>(null);\n\n if (process.env.NODE_ENV !== 'production') {\n if (items != null && children != null) {\n throw new Error(\n 'DropdownMenu: pass either `items` or `children`, not both.',\n );\n }\n }\n\n const hide = useCallback(() => {\n if (isControlled) {\n onOpenChange?.(false);\n } else {\n setInternalOpen(false);\n }\n }, [isControlled, onOpenChange]);\n\n const handleMenuKeyDown = useMenuKeyboard(menuRef, hide);\n\n const contextValue = useMemo(\n () => ({\n closeMenu: hide,\n menuSize,\n }),\n [hide, menuSize],\n );\n\n const menuNode = useMemo(\n (): ReactNode => (items == null ? children : renderMenuItems(items)),\n [items, children],\n );\n\n return (\n <Popover\n content={\n <DropdownMenuContext value={contextValue}>\n {/* eslint-disable-next-line jsx-a11y-x/no-static-element-interactions -- keyboard handler captures events for the parent role=\"menu\" element */}\n <div\n className={cx(styles.menu, className)}\n onKeyDown={handleMenuKeyDown}\n ref={menuRef}\n tabIndex={-1}>\n {menuNode}\n </div>\n </DropdownMenuContext>\n }\n hasAutoFocus={hasAutoFocus}\n hasCloseButton={false}\n isOpen={isOpen}\n onOpenChange={(isNextOpen: boolean): void => {\n if (isControlled) {\n onOpenChange?.(isNextOpen);\n } else {\n setInternalOpen(isNextOpen);\n }\n }}\n role=\"menu\"\n style={{width: formatMenuWidth(menuWidth), ...style}}>\n <Button\n {...button}\n data-testid={dataTestId}\n endContent={\n <>\n {button.endContent}\n {hasChevron ? <Icon icon={ChevronDown} size=\"sm\" /> : null}\n </>\n }\n onClick={onClick}\n ref={ref}\n />\n </Popover>\n );\n}\n\nDropdownMenu.displayName = 'DropdownMenu';\n"]}
@@ -1,126 +0,0 @@
1
- import { cva } from './chunk-FMEIPGUP.js';
2
-
3
- // src/components/Button/Button.recipe.ts
4
- var buttonRecipe = cva({
5
- base: {
6
- position: "relative",
7
- display: "inline-flex",
8
- alignItems: "center",
9
- justifyContent: "center",
10
- borderWidth: 0,
11
- borderStyle: "none",
12
- fontFamily: "body",
13
- fontWeight: "medium",
14
- cursor: "pointer",
15
- transitionProperty: "background-color, color, opacity, transform",
16
- transitionDuration: "fast",
17
- transitionTimingFunction: "default",
18
- userSelect: "none",
19
- lineHeight: "tight",
20
- textDecoration: "none",
21
- whiteSpace: "nowrap",
22
- _active: {
23
- transform: "scale(0.98)"
24
- },
25
- _disabled: {
26
- opacity: 0.5,
27
- cursor: "not-allowed",
28
- pointerEvents: "none",
29
- transform: "none"
30
- },
31
- '&[aria-disabled="true"]': {
32
- opacity: 0.5,
33
- cursor: "not-allowed",
34
- pointerEvents: "auto",
35
- transform: "none"
36
- },
37
- _focusVisible: {
38
- outlineWidth: "focus",
39
- outlineStyle: "solid",
40
- outlineColor: "primary",
41
- outlineOffset: "focusOffsetLoose"
42
- }
43
- },
44
- variants: {
45
- variant: {
46
- primary: {
47
- bg: "primary",
48
- color: "fg.onPrimary",
49
- _hover: { bg: "primary.hover" },
50
- _active: { bg: "primary.active" }
51
- },
52
- secondary: {
53
- bg: "surface.gray",
54
- color: "fg",
55
- _hover: { bg: "surface.gray.hover" },
56
- _active: { bg: "surface.gray.hover" }
57
- },
58
- ghost: {
59
- color: "fg",
60
- bg: "transparent",
61
- _hover: { bg: "bg.ghost.hover" },
62
- _active: { bg: "bg.ghost.active" }
63
- },
64
- destructive: {
65
- bg: "destructive",
66
- color: "destructive.fg",
67
- _hover: { bg: "destructive.hover" },
68
- _active: { bg: "destructive.active" },
69
- _focusVisible: {
70
- outlineColor: "destructive"
71
- }
72
- },
73
- onSolid: {
74
- color: "inherit",
75
- bg: "transparent",
76
- _hover: { bg: "color-mix(in srgb, currentColor 15%, transparent)" },
77
- _active: { bg: "color-mix(in srgb, currentColor 20%, transparent)" },
78
- _focusVisible: {
79
- outlineColor: "currentColor"
80
- }
81
- }
82
- },
83
- size: {
84
- sm: {
85
- h: "component.sm",
86
- px: "component.sm",
87
- fontSize: "component.sm",
88
- gap: "1.5",
89
- borderRadius: "component.sm",
90
- "--button-icon-size": "var(--silver-sizes-icon-sm)"
91
- },
92
- md: {
93
- h: "component.md",
94
- px: "component.md",
95
- fontSize: "component.md",
96
- gap: "2",
97
- borderRadius: "component.md",
98
- "--button-icon-size": "var(--silver-sizes-icon-md)"
99
- },
100
- lg: {
101
- h: "component.lg",
102
- px: "component.lg",
103
- fontSize: "component.lg",
104
- gap: "2.5",
105
- borderRadius: "component.lg",
106
- "--button-icon-size": "var(--silver-sizes-icon-lg)"
107
- }
108
- },
109
- iconOnly: {
110
- true: {
111
- aspectRatio: "square",
112
- px: 0
113
- },
114
- false: {}
115
- }
116
- },
117
- defaultVariants: {
118
- variant: "secondary",
119
- size: "md",
120
- iconOnly: false
121
- }
122
- });
123
-
124
- export { buttonRecipe };
125
- //# sourceMappingURL=chunk-6D3FA247.js.map
126
- //# sourceMappingURL=chunk-6D3FA247.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Button/Button.recipe.ts"],"names":[],"mappings":"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","file":"chunk-6D3FA247.js","sourcesContent":["import {cva, type RecipeVariantProps} from 'styled-system/css';\n\nexport const buttonRecipe = cva({\n base: {\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderWidth: 0,\n borderStyle: 'none',\n fontFamily: 'body',\n fontWeight: 'medium',\n cursor: 'pointer',\n transitionProperty: 'background-color, color, opacity, transform',\n transitionDuration: 'fast',\n transitionTimingFunction: 'default',\n userSelect: 'none',\n lineHeight: 'tight',\n textDecoration: 'none',\n whiteSpace: 'nowrap',\n _active: {\n transform: 'scale(0.98)',\n },\n _disabled: {\n opacity: 0.5,\n cursor: 'not-allowed',\n pointerEvents: 'none',\n transform: 'none',\n },\n '&[aria-disabled=\"true\"]': {\n opacity: 0.5,\n cursor: 'not-allowed',\n pointerEvents: 'auto',\n transform: 'none',\n },\n _focusVisible: {\n outlineWidth: 'focus',\n outlineStyle: 'solid',\n outlineColor: 'primary',\n outlineOffset: 'focusOffsetLoose',\n },\n },\n variants: {\n variant: {\n primary: {\n bg: 'primary',\n color: 'fg.onPrimary',\n _hover: {bg: 'primary.hover'},\n _active: {bg: 'primary.active'},\n },\n secondary: {\n bg: 'surface.gray',\n color: 'fg',\n _hover: {bg: 'surface.gray.hover'},\n _active: {bg: 'surface.gray.hover'},\n },\n ghost: {\n color: 'fg',\n bg: 'transparent',\n _hover: {bg: 'bg.ghost.hover'},\n _active: {bg: 'bg.ghost.active'},\n },\n destructive: {\n bg: 'destructive',\n color: 'destructive.fg',\n _hover: {bg: 'destructive.hover'},\n _active: {bg: 'destructive.active'},\n _focusVisible: {\n outlineColor: 'destructive',\n },\n },\n onSolid: {\n color: 'inherit',\n bg: 'transparent',\n _hover: {bg: 'color-mix(in srgb, currentColor 15%, transparent)'},\n _active: {bg: 'color-mix(in srgb, currentColor 20%, transparent)'},\n _focusVisible: {\n outlineColor: 'currentColor',\n },\n },\n },\n size: {\n sm: {\n h: 'component.sm',\n px: 'component.sm',\n fontSize: 'component.sm',\n gap: '1.5',\n borderRadius: 'component.sm',\n '--button-icon-size': 'var(--silver-sizes-icon-sm)',\n },\n md: {\n h: 'component.md',\n px: 'component.md',\n fontSize: 'component.md',\n gap: '2',\n borderRadius: 'component.md',\n '--button-icon-size': 'var(--silver-sizes-icon-md)',\n },\n lg: {\n h: 'component.lg',\n px: 'component.lg',\n fontSize: 'component.lg',\n gap: '2.5',\n borderRadius: 'component.lg',\n '--button-icon-size': 'var(--silver-sizes-icon-lg)',\n },\n },\n iconOnly: {\n true: {\n aspectRatio: 'square',\n px: 0,\n },\n false: {},\n },\n },\n defaultVariants: {\n variant: 'secondary',\n size: 'md',\n iconOnly: false,\n },\n});\n\nexport type ButtonVariants = RecipeVariantProps<typeof buttonRecipe>;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/TextInput/TextInput.tsx"],"names":[],"mappings":"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","file":"chunk-6NY5DOFM.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 {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 =\n description != null ? `${inputId}-description` : 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"]}