@particle-academy/react-fancy 6.7.2 → 6.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/CHANGELOG.md +44 -1
  2. package/dist/{Card-CuRZivBz.d.cts → Card-D0sp2T1V.d.cts} +6 -1
  3. package/dist/{Card-CuRZivBz.d.ts → Card-D0sp2T1V.d.ts} +6 -1
  4. package/dist/accordion-panel.cjs +7 -7
  5. package/dist/accordion-panel.js +1 -1
  6. package/dist/accordion.cjs +3 -3
  7. package/dist/accordion.js +1 -1
  8. package/dist/autocomplete.cjs +4 -3
  9. package/dist/autocomplete.js +3 -2
  10. package/dist/avatar.cjs +2 -2
  11. package/dist/avatar.js +1 -1
  12. package/dist/breadcrumbs.cjs +2 -2
  13. package/dist/breadcrumbs.js +1 -1
  14. package/dist/button.cjs +3 -3
  15. package/dist/button.d.cts +1 -1
  16. package/dist/button.d.ts +1 -1
  17. package/dist/button.js +1 -1
  18. package/dist/calendar.cjs +2 -2
  19. package/dist/calendar.js +1 -1
  20. package/dist/callout.cjs +2 -2
  21. package/dist/callout.js +1 -1
  22. package/dist/card.cjs +7 -7
  23. package/dist/card.d.cts +2 -2
  24. package/dist/card.d.ts +2 -2
  25. package/dist/card.js +1 -1
  26. package/dist/carousel.cjs +7 -7
  27. package/dist/carousel.js +1 -1
  28. package/dist/chart.cjs +2 -2
  29. package/dist/chart.js +1 -1
  30. package/dist/chat-drawer.cjs +2 -2
  31. package/dist/chat-drawer.js +1 -1
  32. package/dist/chat-thread.cjs +7 -7
  33. package/dist/chat-thread.js +5 -5
  34. package/dist/checkbox-group.cjs +5 -5
  35. package/dist/checkbox-group.js +4 -4
  36. package/dist/checkbox.cjs +3 -3
  37. package/dist/checkbox.js +2 -2
  38. package/dist/{chunk-B4YV2V7G.cjs → chunk-2DX3PNXU.cjs} +3 -3
  39. package/dist/{chunk-B4YV2V7G.cjs.map → chunk-2DX3PNXU.cjs.map} +1 -1
  40. package/dist/{chunk-KPRSRWNM.js → chunk-2I7VNCBZ.js} +3 -3
  41. package/dist/{chunk-KPRSRWNM.js.map → chunk-2I7VNCBZ.js.map} +1 -1
  42. package/dist/{chunk-WMANILKC.cjs → chunk-2UYQ34RJ.cjs} +7 -7
  43. package/dist/chunk-2UYQ34RJ.cjs.map +1 -0
  44. package/dist/chunk-36IC3NDN.cjs +21 -0
  45. package/dist/chunk-36IC3NDN.cjs.map +1 -0
  46. package/dist/{chunk-LFC2DL6H.cjs → chunk-3BBEVHSP.cjs} +14 -9
  47. package/dist/chunk-3BBEVHSP.cjs.map +1 -0
  48. package/dist/{chunk-2O5UXH5R.cjs → chunk-3EZ6UPXS.cjs} +10 -10
  49. package/dist/chunk-3EZ6UPXS.cjs.map +1 -0
  50. package/dist/{chunk-XBFTO64U.cjs → chunk-3KJN3GTB.cjs} +4 -4
  51. package/dist/{chunk-XBFTO64U.cjs.map → chunk-3KJN3GTB.cjs.map} +1 -1
  52. package/dist/{chunk-37D5PYEF.js → chunk-3O3ZWWLG.js} +17 -4
  53. package/dist/chunk-3O3ZWWLG.js.map +1 -0
  54. package/dist/{chunk-5PHPJL7Z.js → chunk-4EQ336PQ.js} +4 -4
  55. package/dist/{chunk-5PHPJL7Z.js.map → chunk-4EQ336PQ.js.map} +1 -1
  56. package/dist/{chunk-EENHSMV2.js → chunk-4L3MGQAR.js} +6 -6
  57. package/dist/{chunk-EENHSMV2.js.map → chunk-4L3MGQAR.js.map} +1 -1
  58. package/dist/{chunk-QGY5FPVM.js → chunk-54NB3T3Q.js} +6 -4
  59. package/dist/chunk-54NB3T3Q.js.map +1 -0
  60. package/dist/{chunk-FRWOWDGX.js → chunk-5FA6V7JF.js} +3 -3
  61. package/dist/{chunk-FRWOWDGX.js.map → chunk-5FA6V7JF.js.map} +1 -1
  62. package/dist/{chunk-UUEAFG6V.js → chunk-5NJF7SQX.js} +6 -6
  63. package/dist/{chunk-UUEAFG6V.js.map → chunk-5NJF7SQX.js.map} +1 -1
  64. package/dist/{chunk-ZGDOWJKL.cjs → chunk-5NTFXQ4K.cjs} +6 -6
  65. package/dist/{chunk-ZGDOWJKL.cjs.map → chunk-5NTFXQ4K.cjs.map} +1 -1
  66. package/dist/{chunk-CQ7QXZLR.cjs → chunk-5SVZX6WF.cjs} +4 -4
  67. package/dist/chunk-5SVZX6WF.cjs.map +1 -0
  68. package/dist/{chunk-JY7HPFOE.cjs → chunk-6B2GMKE4.cjs} +5 -5
  69. package/dist/{chunk-JY7HPFOE.cjs.map → chunk-6B2GMKE4.cjs.map} +1 -1
  70. package/dist/{chunk-GSMD5NK5.js → chunk-6BCXGP2T.js} +7 -7
  71. package/dist/{chunk-GSMD5NK5.js.map → chunk-6BCXGP2T.js.map} +1 -1
  72. package/dist/{chunk-CVDL6C2O.cjs → chunk-6EPM5JG7.cjs} +3 -3
  73. package/dist/{chunk-CVDL6C2O.cjs.map → chunk-6EPM5JG7.cjs.map} +1 -1
  74. package/dist/{chunk-FVQO75KY.cjs → chunk-6GOPFKGC.cjs} +10 -4
  75. package/dist/chunk-6GOPFKGC.cjs.map +1 -0
  76. package/dist/{chunk-QTS4Q2NK.js → chunk-6RXEWM3V.js} +4 -3
  77. package/dist/chunk-6RXEWM3V.js.map +1 -0
  78. package/dist/{chunk-TLRFXSPA.cjs → chunk-73REG7KM.cjs} +13 -13
  79. package/dist/{chunk-TLRFXSPA.cjs.map → chunk-73REG7KM.cjs.map} +1 -1
  80. package/dist/{chunk-MI57NAKF.js → chunk-7B3Z4NVM.js} +6 -5
  81. package/dist/chunk-7B3Z4NVM.js.map +1 -0
  82. package/dist/{chunk-J2BWXCES.js → chunk-7GRIO5AZ.js} +3 -3
  83. package/dist/{chunk-J2BWXCES.js.map → chunk-7GRIO5AZ.js.map} +1 -1
  84. package/dist/{chunk-V5JTTLJP.cjs → chunk-7K2C744H.cjs} +3 -3
  85. package/dist/{chunk-V5JTTLJP.cjs.map → chunk-7K2C744H.cjs.map} +1 -1
  86. package/dist/{chunk-AJPYGRLA.cjs → chunk-7NRG77U5.cjs} +12 -4
  87. package/dist/chunk-7NRG77U5.cjs.map +1 -0
  88. package/dist/{chunk-GDF6XTHC.js → chunk-7OUBFO4D.js} +7 -5
  89. package/dist/chunk-7OUBFO4D.js.map +1 -0
  90. package/dist/{chunk-6H7ZN23X.cjs → chunk-7PK3OUKR.cjs} +6 -6
  91. package/dist/{chunk-6H7ZN23X.cjs.map → chunk-7PK3OUKR.cjs.map} +1 -1
  92. package/dist/{chunk-EUVWYDFN.js → chunk-AE6ICNJR.js} +14 -9
  93. package/dist/chunk-AE6ICNJR.js.map +1 -0
  94. package/dist/{chunk-YJXP6AOL.cjs → chunk-AF33UCTN.cjs} +4 -4
  95. package/dist/{chunk-YJXP6AOL.cjs.map → chunk-AF33UCTN.cjs.map} +1 -1
  96. package/dist/{chunk-PM5I5ZHK.cjs → chunk-AFFR7HHZ.cjs} +8 -7
  97. package/dist/chunk-AFFR7HHZ.cjs.map +1 -0
  98. package/dist/{chunk-F4OYQ2XZ.js → chunk-AR5DLM4K.js} +9 -6
  99. package/dist/chunk-AR5DLM4K.js.map +1 -0
  100. package/dist/{chunk-DJB3N4G3.cjs → chunk-AVGZ4PPC.cjs} +9 -9
  101. package/dist/{chunk-DJB3N4G3.cjs.map → chunk-AVGZ4PPC.cjs.map} +1 -1
  102. package/dist/{chunk-RANTYGKW.js → chunk-AXW55PQG.js} +3 -3
  103. package/dist/chunk-AXW55PQG.js.map +1 -0
  104. package/dist/{chunk-OASSZI6M.cjs → chunk-AZ5DWOQY.cjs} +5 -4
  105. package/dist/chunk-AZ5DWOQY.cjs.map +1 -0
  106. package/dist/{chunk-NSJBVV7R.js → chunk-BPTCMI3E.js} +21 -10
  107. package/dist/chunk-BPTCMI3E.js.map +1 -0
  108. package/dist/{chunk-PDVU2PXR.js → chunk-BQENLOEV.js} +10 -10
  109. package/dist/chunk-BQENLOEV.js.map +1 -0
  110. package/dist/{chunk-25HRO7HQ.cjs → chunk-BYMOPR7P.cjs} +7 -7
  111. package/dist/chunk-BYMOPR7P.cjs.map +1 -0
  112. package/dist/{chunk-FKZB27OM.cjs → chunk-C6EVRWXZ.cjs} +11 -8
  113. package/dist/chunk-C6EVRWXZ.cjs.map +1 -0
  114. package/dist/{chunk-GTS3QA7M.js → chunk-CO2NEUFK.js} +5 -5
  115. package/dist/chunk-CO2NEUFK.js.map +1 -0
  116. package/dist/{chunk-ESCIXKFT.js → chunk-D6NISIKV.js} +17 -7
  117. package/dist/chunk-D6NISIKV.js.map +1 -0
  118. package/dist/{chunk-MRZXTL46.cjs → chunk-DFROB5TW.cjs} +20 -20
  119. package/dist/{chunk-MRZXTL46.cjs.map → chunk-DFROB5TW.cjs.map} +1 -1
  120. package/dist/{chunk-KFA7B6WP.cjs → chunk-DPPDZOMY.cjs} +17 -7
  121. package/dist/chunk-DPPDZOMY.cjs.map +1 -0
  122. package/dist/{chunk-BXPLERIJ.js → chunk-DW2PHLOA.js} +5 -4
  123. package/dist/chunk-DW2PHLOA.js.map +1 -0
  124. package/dist/{chunk-BYO5RUDE.cjs → chunk-DXLPBLNC.cjs} +6 -5
  125. package/dist/chunk-DXLPBLNC.cjs.map +1 -0
  126. package/dist/{chunk-5WQ6FPSP.js → chunk-E2AEU5SP.js} +4 -4
  127. package/dist/{chunk-5WQ6FPSP.js.map → chunk-E2AEU5SP.js.map} +1 -1
  128. package/dist/{chunk-3QCAOD2W.cjs → chunk-EC4ZYZNK.cjs} +3 -3
  129. package/dist/{chunk-3QCAOD2W.cjs.map → chunk-EC4ZYZNK.cjs.map} +1 -1
  130. package/dist/{chunk-KXYMMNNV.js → chunk-EDIX6EXQ.js} +20 -20
  131. package/dist/{chunk-KXYMMNNV.js.map → chunk-EDIX6EXQ.js.map} +1 -1
  132. package/dist/{chunk-KOAMRCSC.cjs → chunk-ETUDUDSL.cjs} +14 -11
  133. package/dist/chunk-ETUDUDSL.cjs.map +1 -0
  134. package/dist/{chunk-LY3RQB3H.js → chunk-F3U4AVGF.js} +3 -3
  135. package/dist/{chunk-LY3RQB3H.js.map → chunk-F3U4AVGF.js.map} +1 -1
  136. package/dist/{chunk-AE53RKWR.cjs → chunk-FF5G3E76.cjs} +407 -22
  137. package/dist/chunk-FF5G3E76.cjs.map +1 -0
  138. package/dist/{chunk-WNWEC5OU.cjs → chunk-FKHYJ5IC.cjs} +3 -3
  139. package/dist/{chunk-WNWEC5OU.cjs.map → chunk-FKHYJ5IC.cjs.map} +1 -1
  140. package/dist/{chunk-QP6VNKLW.cjs → chunk-FNPII6TF.cjs} +9 -5
  141. package/dist/chunk-FNPII6TF.cjs.map +1 -0
  142. package/dist/{chunk-JY2RC6I4.js → chunk-FQCLJZZS.js} +13 -10
  143. package/dist/chunk-FQCLJZZS.js.map +1 -0
  144. package/dist/{chunk-EQ7G5F6K.js → chunk-FRUHEDZN.js} +3 -3
  145. package/dist/{chunk-EQ7G5F6K.js.map → chunk-FRUHEDZN.js.map} +1 -1
  146. package/dist/{chunk-BJL3VDRK.cjs → chunk-FY2WDVKF.cjs} +3 -3
  147. package/dist/{chunk-BJL3VDRK.cjs.map → chunk-FY2WDVKF.cjs.map} +1 -1
  148. package/dist/{chunk-SKMORSBO.cjs → chunk-FZQWFDUV.cjs} +5 -5
  149. package/dist/chunk-FZQWFDUV.cjs.map +1 -0
  150. package/dist/{chunk-HNJXBMHI.cjs → chunk-G5MDMQVQ.cjs} +40 -39
  151. package/dist/chunk-G5MDMQVQ.cjs.map +1 -0
  152. package/dist/{chunk-4DL2U23D.cjs → chunk-GE2ZGE3A.cjs} +21 -13
  153. package/dist/chunk-GE2ZGE3A.cjs.map +1 -0
  154. package/dist/{chunk-THMFLRDW.cjs → chunk-GE6TSA3M.cjs} +17 -17
  155. package/dist/{chunk-THMFLRDW.cjs.map → chunk-GE6TSA3M.cjs.map} +1 -1
  156. package/dist/{chunk-MQ6VGG62.js → chunk-GJWNZMJT.js} +14 -11
  157. package/dist/chunk-GJWNZMJT.js.map +1 -0
  158. package/dist/{chunk-5TP642UT.js → chunk-GODJVIIO.js} +12 -11
  159. package/dist/chunk-GODJVIIO.js.map +1 -0
  160. package/dist/{chunk-RLE5WYY6.js → chunk-GZSRKBYI.js} +406 -24
  161. package/dist/chunk-GZSRKBYI.js.map +1 -0
  162. package/dist/{chunk-FR4RHVPR.js → chunk-H7IQVCTX.js} +6 -4
  163. package/dist/chunk-H7IQVCTX.js.map +1 -0
  164. package/dist/{chunk-KOTUFZJ6.cjs → chunk-H7OTLGRD.cjs} +14 -11
  165. package/dist/chunk-H7OTLGRD.cjs.map +1 -0
  166. package/dist/{chunk-K5MQZTDW.cjs → chunk-HKLBCA5X.cjs} +4 -4
  167. package/dist/{chunk-K5MQZTDW.cjs.map → chunk-HKLBCA5X.cjs.map} +1 -1
  168. package/dist/{chunk-5QKQXM5V.cjs → chunk-HYU46SOE.cjs} +5 -5
  169. package/dist/{chunk-5QKQXM5V.cjs.map → chunk-HYU46SOE.cjs.map} +1 -1
  170. package/dist/{chunk-X2A3NAJW.js → chunk-I65KXHYL.js} +4 -4
  171. package/dist/chunk-I65KXHYL.js.map +1 -0
  172. package/dist/{chunk-USWQAMI3.js → chunk-IF6EITB5.js} +3 -3
  173. package/dist/{chunk-USWQAMI3.js.map → chunk-IF6EITB5.js.map} +1 -1
  174. package/dist/{chunk-DXZCKDYS.js → chunk-IG2UDCBA.js} +9 -9
  175. package/dist/chunk-IG2UDCBA.js.map +1 -0
  176. package/dist/{chunk-YQZB5Z7C.cjs → chunk-INC35VEE.cjs} +3 -2
  177. package/dist/chunk-INC35VEE.cjs.map +1 -0
  178. package/dist/{chunk-AQ4DZT4Y.cjs → chunk-ISAHWGMD.cjs} +6 -6
  179. package/dist/{chunk-AQ4DZT4Y.cjs.map → chunk-ISAHWGMD.cjs.map} +1 -1
  180. package/dist/{chunk-PJNUGSKI.js → chunk-IYG436ZY.js} +26 -25
  181. package/dist/chunk-IYG436ZY.js.map +1 -0
  182. package/dist/{chunk-Z4UXLQSK.cjs → chunk-JDFJK5GO.cjs} +16 -16
  183. package/dist/chunk-JDFJK5GO.cjs.map +1 -0
  184. package/dist/{chunk-MAZEX4EZ.cjs → chunk-JQIFCWNZ.cjs} +13 -13
  185. package/dist/{chunk-MAZEX4EZ.cjs.map → chunk-JQIFCWNZ.cjs.map} +1 -1
  186. package/dist/{chunk-MKGWHSNV.cjs → chunk-JV2HEOCB.cjs} +5 -4
  187. package/dist/chunk-JV2HEOCB.cjs.map +1 -0
  188. package/dist/{chunk-GDH43QH6.js → chunk-KAKKZDCE.js} +6 -6
  189. package/dist/{chunk-GDH43QH6.js.map → chunk-KAKKZDCE.js.map} +1 -1
  190. package/dist/{chunk-DJYG7DXS.js → chunk-KDRBUF5S.js} +4 -4
  191. package/dist/chunk-KDRBUF5S.js.map +1 -0
  192. package/dist/{chunk-ZVDW2VX5.cjs → chunk-KGSL6SVX.cjs} +3 -3
  193. package/dist/chunk-KGSL6SVX.cjs.map +1 -0
  194. package/dist/{chunk-YAPGHVBZ.js → chunk-KRECSPD3.js} +4 -4
  195. package/dist/{chunk-YAPGHVBZ.js.map → chunk-KRECSPD3.js.map} +1 -1
  196. package/dist/{chunk-NPSKZ7ZB.cjs → chunk-L5NDZEL6.cjs} +12 -12
  197. package/dist/{chunk-NPSKZ7ZB.cjs.map → chunk-L5NDZEL6.cjs.map} +1 -1
  198. package/dist/{chunk-UE3QO7R3.js → chunk-LAQT5FFV.js} +3 -3
  199. package/dist/{chunk-UE3QO7R3.js.map → chunk-LAQT5FFV.js.map} +1 -1
  200. package/dist/{chunk-YH75G6SP.cjs → chunk-LHHELLMT.cjs} +3 -3
  201. package/dist/{chunk-YH75G6SP.cjs.map → chunk-LHHELLMT.cjs.map} +1 -1
  202. package/dist/{chunk-UK6BGM74.cjs → chunk-LREJ7AV2.cjs} +17 -4
  203. package/dist/chunk-LREJ7AV2.cjs.map +1 -0
  204. package/dist/{chunk-Y3QAEF2P.cjs → chunk-LVNCNMKD.cjs} +9 -7
  205. package/dist/chunk-LVNCNMKD.cjs.map +1 -0
  206. package/dist/{chunk-UZCR7DK5.js → chunk-LXEOBSEZ.js} +3 -3
  207. package/dist/{chunk-UZCR7DK5.js.map → chunk-LXEOBSEZ.js.map} +1 -1
  208. package/dist/{chunk-HLI6RB5V.cjs → chunk-M5ER3Y5I.cjs} +32 -31
  209. package/dist/chunk-M5ER3Y5I.cjs.map +1 -0
  210. package/dist/{chunk-CEFK54WP.cjs → chunk-MDAI54AG.cjs} +7 -5
  211. package/dist/chunk-MDAI54AG.cjs.map +1 -0
  212. package/dist/{chunk-WE5WGVVX.js → chunk-MKDTXMCE.js} +3 -3
  213. package/dist/{chunk-WE5WGVVX.js.map → chunk-MKDTXMCE.js.map} +1 -1
  214. package/dist/{chunk-SXXDTW7S.js → chunk-NETUI353.js} +10 -4
  215. package/dist/chunk-NETUI353.js.map +1 -0
  216. package/dist/{chunk-XHUV3VSM.cjs → chunk-NIFHAFKK.cjs} +3 -3
  217. package/dist/{chunk-XHUV3VSM.cjs.map → chunk-NIFHAFKK.cjs.map} +1 -1
  218. package/dist/{chunk-LKN7FYW6.js → chunk-NW2LQRUP.js} +4 -4
  219. package/dist/chunk-NW2LQRUP.js.map +1 -0
  220. package/dist/{chunk-ONHT2PDW.cjs → chunk-NWP5EGSR.cjs} +3 -3
  221. package/dist/{chunk-ONHT2PDW.cjs.map → chunk-NWP5EGSR.cjs.map} +1 -1
  222. package/dist/{chunk-RSLZL6VP.js → chunk-OBA2LR4I.js} +3 -3
  223. package/dist/chunk-OBA2LR4I.js.map +1 -0
  224. package/dist/{chunk-VSTUGU7W.js → chunk-PIYQPXLT.js} +8 -8
  225. package/dist/{chunk-VSTUGU7W.js.map → chunk-PIYQPXLT.js.map} +1 -1
  226. package/dist/{chunk-WX5XYDVN.js → chunk-PZTFGPQJ.js} +3 -3
  227. package/dist/{chunk-WX5XYDVN.js.map → chunk-PZTFGPQJ.js.map} +1 -1
  228. package/dist/{chunk-4GPH7HOR.js → chunk-Q4CNEHVN.js} +3 -3
  229. package/dist/{chunk-4GPH7HOR.js.map → chunk-Q4CNEHVN.js.map} +1 -1
  230. package/dist/{chunk-I2VAGZXY.cjs → chunk-Q62RDKRA.cjs} +11 -11
  231. package/dist/{chunk-I2VAGZXY.cjs.map → chunk-Q62RDKRA.cjs.map} +1 -1
  232. package/dist/{chunk-QF7CD4JH.cjs → chunk-Q7XL37T3.cjs} +5 -5
  233. package/dist/{chunk-QF7CD4JH.cjs.map → chunk-Q7XL37T3.cjs.map} +1 -1
  234. package/dist/{chunk-XZOBGKZL.cjs → chunk-QAM6N3VG.cjs} +6 -5
  235. package/dist/chunk-QAM6N3VG.cjs.map +1 -0
  236. package/dist/{chunk-BLOX7MRO.js → chunk-QE7KXMUZ.js} +3 -3
  237. package/dist/{chunk-BLOX7MRO.js.map → chunk-QE7KXMUZ.js.map} +1 -1
  238. package/dist/{chunk-ZPBKRJMH.js → chunk-QEJBMXRQ.js} +7 -7
  239. package/dist/chunk-QEJBMXRQ.js.map +1 -0
  240. package/dist/{chunk-PCNJJVTF.cjs → chunk-QMZK7SRS.cjs} +3 -3
  241. package/dist/chunk-QMZK7SRS.cjs.map +1 -0
  242. package/dist/{chunk-TFX4LL7V.js → chunk-QSRYTWQN.js} +3 -2
  243. package/dist/chunk-QSRYTWQN.js.map +1 -0
  244. package/dist/{chunk-Z7SQMQTF.cjs → chunk-QU6HZH6V.cjs} +21 -10
  245. package/dist/chunk-QU6HZH6V.cjs.map +1 -0
  246. package/dist/{chunk-GR2WKBER.js → chunk-QUZOGRZS.js} +4 -3
  247. package/dist/chunk-QUZOGRZS.js.map +1 -0
  248. package/dist/{chunk-WGRLNXNB.js → chunk-R3PCZSBQ.js} +3 -3
  249. package/dist/{chunk-WGRLNXNB.js.map → chunk-R3PCZSBQ.js.map} +1 -1
  250. package/dist/{chunk-EZZKHMR4.js → chunk-R6O6SLXK.js} +3 -3
  251. package/dist/{chunk-EZZKHMR4.js.map → chunk-R6O6SLXK.js.map} +1 -1
  252. package/dist/{chunk-5EW47IH7.js → chunk-RCTPN5QK.js} +9 -7
  253. package/dist/chunk-RCTPN5QK.js.map +1 -0
  254. package/dist/{chunk-JSD6IEBW.js → chunk-RFTDMQ56.js} +3 -3
  255. package/dist/{chunk-JSD6IEBW.js.map → chunk-RFTDMQ56.js.map} +1 -1
  256. package/dist/{chunk-6PRXG7L6.js → chunk-RSB2P3JK.js} +4 -4
  257. package/dist/{chunk-6PRXG7L6.js.map → chunk-RSB2P3JK.js.map} +1 -1
  258. package/dist/{chunk-2G6TIX5Q.cjs → chunk-RVBA4LEB.cjs} +13 -13
  259. package/dist/{chunk-2G6TIX5Q.cjs.map → chunk-RVBA4LEB.cjs.map} +1 -1
  260. package/dist/{chunk-UVUBV4VZ.js → chunk-S2ID4NNQ.js} +6 -6
  261. package/dist/{chunk-UVUBV4VZ.js.map → chunk-S2ID4NNQ.js.map} +1 -1
  262. package/dist/{chunk-TMQF2CRN.js → chunk-S4JQPOBR.js} +7 -7
  263. package/dist/chunk-S4JQPOBR.js.map +1 -0
  264. package/dist/{chunk-ETNQ4AEQ.cjs → chunk-S6TVSQDT.cjs} +5 -5
  265. package/dist/{chunk-ETNQ4AEQ.cjs.map → chunk-S6TVSQDT.cjs.map} +1 -1
  266. package/dist/{chunk-SSCW67KA.cjs → chunk-SD6YAMDH.cjs} +4 -4
  267. package/dist/chunk-SD6YAMDH.cjs.map +1 -0
  268. package/dist/{chunk-MLZGGAXQ.js → chunk-SOIGBPK6.js} +21 -13
  269. package/dist/chunk-SOIGBPK6.js.map +1 -0
  270. package/dist/{chunk-7QENPLOP.cjs → chunk-TQDZZIOW.cjs} +5 -5
  271. package/dist/{chunk-7QENPLOP.cjs.map → chunk-TQDZZIOW.cjs.map} +1 -1
  272. package/dist/{chunk-MPCZUZ4O.cjs → chunk-U4KUW3RK.cjs} +19 -15
  273. package/dist/chunk-U4KUW3RK.cjs.map +1 -0
  274. package/dist/{chunk-AZQXPI5S.js → chunk-UBLMYH6C.js} +3 -3
  275. package/dist/{chunk-AZQXPI5S.js.map → chunk-UBLMYH6C.js.map} +1 -1
  276. package/dist/{chunk-P53432AK.cjs → chunk-UIBAIWUR.cjs} +4 -4
  277. package/dist/{chunk-P53432AK.cjs.map → chunk-UIBAIWUR.cjs.map} +1 -1
  278. package/dist/{chunk-KKYILQTG.cjs → chunk-UORN3Z7R.cjs} +7 -7
  279. package/dist/{chunk-KKYILQTG.cjs.map → chunk-UORN3Z7R.cjs.map} +1 -1
  280. package/dist/{chunk-UXYFM2XT.cjs → chunk-UQABXIQV.cjs} +6 -4
  281. package/dist/chunk-UQABXIQV.cjs.map +1 -0
  282. package/dist/chunk-US5R36TQ.js +17 -0
  283. package/dist/chunk-US5R36TQ.js.map +1 -0
  284. package/dist/{chunk-CS2ZYMYP.js → chunk-UZZJJ3HJ.js} +3 -3
  285. package/dist/{chunk-CS2ZYMYP.js.map → chunk-UZZJJ3HJ.js.map} +1 -1
  286. package/dist/{chunk-Y7RGUUTS.cjs → chunk-V3EKI3VV.cjs} +3 -3
  287. package/dist/{chunk-Y7RGUUTS.cjs.map → chunk-V3EKI3VV.cjs.map} +1 -1
  288. package/dist/{chunk-U4Y7ZXME.js → chunk-V64XIPYG.js} +6 -6
  289. package/dist/{chunk-U4Y7ZXME.js.map → chunk-V64XIPYG.js.map} +1 -1
  290. package/dist/{chunk-RWU2MFUL.js → chunk-VGUAIFGE.js} +5 -4
  291. package/dist/chunk-VGUAIFGE.js.map +1 -0
  292. package/dist/{chunk-LIVC3WUU.cjs → chunk-VH34IZ7R.cjs} +3 -3
  293. package/dist/{chunk-LIVC3WUU.cjs.map → chunk-VH34IZ7R.cjs.map} +1 -1
  294. package/dist/{chunk-WNUAGRQN.cjs → chunk-VOAC5OKY.cjs} +4 -4
  295. package/dist/chunk-VOAC5OKY.cjs.map +1 -0
  296. package/dist/{chunk-H7ELUIF6.cjs → chunk-W53SZTPX.cjs} +10 -10
  297. package/dist/{chunk-H7ELUIF6.cjs.map → chunk-W53SZTPX.cjs.map} +1 -1
  298. package/dist/{chunk-4FH2JHUY.js → chunk-WAEOIEDI.js} +5 -5
  299. package/dist/{chunk-4FH2JHUY.js.map → chunk-WAEOIEDI.js.map} +1 -1
  300. package/dist/{chunk-ICMLLZKZ.js → chunk-WJE7UX2G.js} +4 -4
  301. package/dist/{chunk-ICMLLZKZ.js.map → chunk-WJE7UX2G.js.map} +1 -1
  302. package/dist/{chunk-DTOIO42M.js → chunk-WLRKE4HC.js} +9 -5
  303. package/dist/chunk-WLRKE4HC.js.map +1 -0
  304. package/dist/{chunk-7ZCNZUZK.cjs → chunk-WOURDD4U.cjs} +4 -4
  305. package/dist/{chunk-7ZCNZUZK.cjs.map → chunk-WOURDD4U.cjs.map} +1 -1
  306. package/dist/{chunk-OTM7RL2L.js → chunk-WSU36HJM.js} +4 -4
  307. package/dist/{chunk-OTM7RL2L.js.map → chunk-WSU36HJM.js.map} +1 -1
  308. package/dist/{chunk-TAYJSIOP.js → chunk-X4NXS42J.js} +5 -5
  309. package/dist/{chunk-TAYJSIOP.js.map → chunk-X4NXS42J.js.map} +1 -1
  310. package/dist/{chunk-2UTN3EFK.js → chunk-XALAQZCD.js} +5 -5
  311. package/dist/{chunk-2UTN3EFK.js.map → chunk-XALAQZCD.js.map} +1 -1
  312. package/dist/{chunk-RZUYCZ5D.cjs → chunk-XCFBMHQD.cjs} +6 -4
  313. package/dist/chunk-XCFBMHQD.cjs.map +1 -0
  314. package/dist/{chunk-NZHVDWOM.cjs → chunk-XEI5JG7C.cjs} +3 -3
  315. package/dist/{chunk-NZHVDWOM.cjs.map → chunk-XEI5JG7C.cjs.map} +1 -1
  316. package/dist/{chunk-O3F6DYWR.cjs → chunk-XG6J5MOK.cjs} +3 -3
  317. package/dist/{chunk-O3F6DYWR.cjs.map → chunk-XG6J5MOK.cjs.map} +1 -1
  318. package/dist/{chunk-J2DI6RMR.cjs → chunk-XGGAAG74.cjs} +14 -11
  319. package/dist/chunk-XGGAAG74.cjs.map +1 -0
  320. package/dist/{chunk-GVMWJ4NI.js → chunk-XH24BGEK.js} +6 -6
  321. package/dist/{chunk-GVMWJ4NI.js.map → chunk-XH24BGEK.js.map} +1 -1
  322. package/dist/{chunk-3S5ED522.js → chunk-XO4GHRA2.js} +11 -8
  323. package/dist/chunk-XO4GHRA2.js.map +1 -0
  324. package/dist/{chunk-O5ORO2RX.cjs → chunk-XQF4HCOV.cjs} +13 -11
  325. package/dist/chunk-XQF4HCOV.cjs.map +1 -0
  326. package/dist/{chunk-VZTXUYPM.cjs → chunk-XT4WBBCD.cjs} +20 -20
  327. package/dist/chunk-XT4WBBCD.cjs.map +1 -0
  328. package/dist/{chunk-Z44A7NPD.cjs → chunk-YBBBX5H2.cjs} +40 -39
  329. package/dist/chunk-YBBBX5H2.cjs.map +1 -0
  330. package/dist/{chunk-IUCYRQ4J.js → chunk-YPYZZLZ5.js} +5 -5
  331. package/dist/{chunk-IUCYRQ4J.js.map → chunk-YPYZZLZ5.js.map} +1 -1
  332. package/dist/{chunk-NVXTHTJI.js → chunk-YTWMIVRI.js} +10 -10
  333. package/dist/chunk-YTWMIVRI.js.map +1 -0
  334. package/dist/{chunk-WZAKEJDL.js → chunk-YZW7HQXH.js} +13 -11
  335. package/dist/chunk-YZW7HQXH.js.map +1 -0
  336. package/dist/{chunk-AYBKPAI2.cjs → chunk-Z5MNYYUJ.cjs} +3 -3
  337. package/dist/{chunk-AYBKPAI2.cjs.map → chunk-Z5MNYYUJ.cjs.map} +1 -1
  338. package/dist/{chunk-GOE36IXL.js → chunk-Z6M3UELD.js} +3 -3
  339. package/dist/{chunk-GOE36IXL.js.map → chunk-Z6M3UELD.js.map} +1 -1
  340. package/dist/{chunk-PXZRYL5I.js → chunk-ZBXJDQXN.js} +12 -4
  341. package/dist/chunk-ZBXJDQXN.js.map +1 -0
  342. package/dist/{chunk-M5SEYDSS.cjs → chunk-ZDHLEHYR.cjs} +6 -6
  343. package/dist/{chunk-M5SEYDSS.cjs.map → chunk-ZDHLEHYR.cjs.map} +1 -1
  344. package/dist/{chunk-SCGTO3PX.js → chunk-ZHTK4IPQ.js} +3 -3
  345. package/dist/{chunk-SCGTO3PX.js.map → chunk-ZHTK4IPQ.js.map} +1 -1
  346. package/dist/{chunk-QF2FODTG.js → chunk-ZL5QVNKG.js} +10 -6
  347. package/dist/chunk-ZL5QVNKG.js.map +1 -0
  348. package/dist/{chunk-6GVOW3UL.js → chunk-ZUJVGHFW.js} +12 -11
  349. package/dist/chunk-ZUJVGHFW.js.map +1 -0
  350. package/dist/code-block.cjs +4 -4
  351. package/dist/code-block.js +3 -3
  352. package/dist/code-view.cjs +2 -2
  353. package/dist/code-view.js +1 -1
  354. package/dist/command.cjs +3 -3
  355. package/dist/command.js +1 -1
  356. package/dist/composer.cjs +7 -6
  357. package/dist/composer.js +5 -4
  358. package/dist/content-renderer.cjs +6 -6
  359. package/dist/content-renderer.js +3 -3
  360. package/dist/context-menu.cjs +4 -3
  361. package/dist/context-menu.d.cts +2 -0
  362. package/dist/context-menu.d.ts +2 -0
  363. package/dist/context-menu.js +2 -1
  364. package/dist/date-picker.cjs +5 -5
  365. package/dist/date-picker.js +4 -4
  366. package/dist/drawer.cjs +3 -3
  367. package/dist/drawer.d.cts +10 -4
  368. package/dist/drawer.d.ts +10 -4
  369. package/dist/drawer.js +1 -1
  370. package/dist/dropdown.cjs +5 -4
  371. package/dist/dropdown.js +3 -2
  372. package/dist/editor.cjs +9 -8
  373. package/dist/editor.js +7 -6
  374. package/dist/emoji-select.cjs +2 -2
  375. package/dist/emoji-select.js +1 -1
  376. package/dist/eyebrow.cjs +2 -2
  377. package/dist/eyebrow.js +1 -1
  378. package/dist/faux-client.cjs +2 -2
  379. package/dist/faux-client.js +1 -1
  380. package/dist/field.cjs +3 -3
  381. package/dist/field.js +2 -2
  382. package/dist/file-browser.cjs +6 -5
  383. package/dist/file-browser.js +2 -1
  384. package/dist/file-upload.cjs +3 -3
  385. package/dist/file-upload.js +1 -1
  386. package/dist/image-viewer.cjs +3 -3
  387. package/dist/image-viewer.js +2 -2
  388. package/dist/index-list.cjs +2 -2
  389. package/dist/index-list.js +1 -1
  390. package/dist/index.cjs +222 -209
  391. package/dist/index.cjs.map +1 -1
  392. package/dist/index.d.cts +20 -2
  393. package/dist/index.d.ts +20 -2
  394. package/dist/index.js +78 -77
  395. package/dist/index.js.map +1 -1
  396. package/dist/input-tag.cjs +7 -6
  397. package/dist/input-tag.d.cts +6 -2
  398. package/dist/input-tag.d.ts +6 -2
  399. package/dist/input-tag.js +2 -1
  400. package/dist/input.cjs +10 -9
  401. package/dist/input.js +9 -8
  402. package/dist/inputs.cjs +32 -31
  403. package/dist/inputs.js +19 -18
  404. package/dist/json-editor.cjs +27 -26
  405. package/dist/json-editor.js +16 -15
  406. package/dist/magic-wand.cjs +8 -8
  407. package/dist/magic-wand.js +7 -7
  408. package/dist/marquee.cjs +2 -2
  409. package/dist/marquee.js +1 -1
  410. package/dist/media-viewer.cjs +5 -5
  411. package/dist/media-viewer.js +4 -4
  412. package/dist/menu.cjs +3 -3
  413. package/dist/menu.js +1 -1
  414. package/dist/mobile-menu.cjs +5 -4
  415. package/dist/mobile-menu.d.cts +2 -1
  416. package/dist/mobile-menu.d.ts +2 -1
  417. package/dist/mobile-menu.js +3 -2
  418. package/dist/mode.cjs +3 -3
  419. package/dist/mode.js +2 -2
  420. package/dist/multi-switch.cjs +6 -5
  421. package/dist/multi-switch.js +5 -4
  422. package/dist/number-field.cjs +11 -10
  423. package/dist/number-field.js +10 -9
  424. package/dist/otp-input.cjs +3 -2
  425. package/dist/otp-input.js +2 -1
  426. package/dist/pagination.cjs +2 -2
  427. package/dist/pagination.js +1 -1
  428. package/dist/paste-pills.cjs +17 -16
  429. package/dist/paste-pills.js +4 -3
  430. package/dist/pdf-viewer.cjs +3 -3
  431. package/dist/pdf-viewer.js +2 -2
  432. package/dist/popover.cjs +5 -4
  433. package/dist/popover.js +3 -2
  434. package/dist/profile.cjs +3 -3
  435. package/dist/profile.js +2 -2
  436. package/dist/progress.cjs +2 -2
  437. package/dist/progress.js +1 -1
  438. package/dist/prompt-input.cjs +10 -9
  439. package/dist/prompt-input.js +7 -6
  440. package/dist/qr-code.cjs +19 -4
  441. package/dist/qr-code.d.cts +221 -2
  442. package/dist/qr-code.d.ts +221 -2
  443. package/dist/qr-code.js +4 -1
  444. package/dist/radio-group.cjs +5 -5
  445. package/dist/radio-group.js +4 -4
  446. package/dist/reason-tag.cjs +6 -5
  447. package/dist/reason-tag.js +5 -4
  448. package/dist/reorderable-grid.cjs +4 -3
  449. package/dist/reorderable-grid.js +2 -1
  450. package/dist/resizable-panels.cjs +3 -2
  451. package/dist/resizable-panels.js +2 -1
  452. package/dist/select.cjs +8 -7
  453. package/dist/select.js +7 -6
  454. package/dist/separator.cjs +2 -2
  455. package/dist/separator.js +1 -1
  456. package/dist/sidebar.cjs +6 -5
  457. package/dist/sidebar.js +4 -3
  458. package/dist/slider.cjs +5 -5
  459. package/dist/slider.js +4 -4
  460. package/dist/stat-list.cjs +2 -2
  461. package/dist/stat-list.d.cts +5 -2
  462. package/dist/stat-list.d.ts +5 -2
  463. package/dist/stat-list.js +1 -1
  464. package/dist/stepper.cjs +3 -2
  465. package/dist/stepper.js +2 -1
  466. package/dist/styles.css +24 -0
  467. package/dist/styles.css.map +1 -1
  468. package/dist/switch.cjs +3 -3
  469. package/dist/switch.js +2 -2
  470. package/dist/table.cjs +11 -11
  471. package/dist/table.js +1 -1
  472. package/dist/tabs.cjs +4 -3
  473. package/dist/tabs.js +2 -1
  474. package/dist/textarea.cjs +6 -6
  475. package/dist/textarea.js +5 -5
  476. package/dist/time-grid.cjs +3 -2
  477. package/dist/time-grid.js +2 -1
  478. package/dist/time-picker.cjs +2 -2
  479. package/dist/time-picker.js +1 -1
  480. package/dist/timeline.cjs +4 -4
  481. package/dist/timeline.js +1 -1
  482. package/dist/toast.cjs +4 -3
  483. package/dist/toast.d.cts +6 -2
  484. package/dist/toast.d.ts +6 -2
  485. package/dist/toast.js +2 -1
  486. package/dist/tooltip.cjs +4 -3
  487. package/dist/tooltip.js +3 -2
  488. package/dist/tree-nav.cjs +3 -3
  489. package/dist/tree-nav.js +1 -1
  490. package/docs/Dropdown.md +1 -1
  491. package/docs/InputTag.md +1 -1
  492. package/docs/MobileMenu.md +2 -2
  493. package/docs/Popover.md +1 -1
  494. package/docs/QrCode.md +108 -0
  495. package/docs/ReorderableGrid.md +2 -0
  496. package/docs/ResizablePanels.md +2 -0
  497. package/docs/Toast.md +2 -2
  498. package/package.json +1 -1
  499. package/dist/chunk-25HRO7HQ.cjs.map +0 -1
  500. package/dist/chunk-2O5UXH5R.cjs.map +0 -1
  501. package/dist/chunk-37D5PYEF.js.map +0 -1
  502. package/dist/chunk-3S5ED522.js.map +0 -1
  503. package/dist/chunk-4DL2U23D.cjs.map +0 -1
  504. package/dist/chunk-5EW47IH7.js.map +0 -1
  505. package/dist/chunk-5TP642UT.js.map +0 -1
  506. package/dist/chunk-6GVOW3UL.js.map +0 -1
  507. package/dist/chunk-AE53RKWR.cjs.map +0 -1
  508. package/dist/chunk-AJPYGRLA.cjs.map +0 -1
  509. package/dist/chunk-BXPLERIJ.js.map +0 -1
  510. package/dist/chunk-BYO5RUDE.cjs.map +0 -1
  511. package/dist/chunk-CEFK54WP.cjs.map +0 -1
  512. package/dist/chunk-CQ7QXZLR.cjs.map +0 -1
  513. package/dist/chunk-DJYG7DXS.js.map +0 -1
  514. package/dist/chunk-DTOIO42M.js.map +0 -1
  515. package/dist/chunk-DXZCKDYS.js.map +0 -1
  516. package/dist/chunk-ESCIXKFT.js.map +0 -1
  517. package/dist/chunk-EUVWYDFN.js.map +0 -1
  518. package/dist/chunk-F4OYQ2XZ.js.map +0 -1
  519. package/dist/chunk-FKZB27OM.cjs.map +0 -1
  520. package/dist/chunk-FR4RHVPR.js.map +0 -1
  521. package/dist/chunk-FVQO75KY.cjs.map +0 -1
  522. package/dist/chunk-GDF6XTHC.js.map +0 -1
  523. package/dist/chunk-GR2WKBER.js.map +0 -1
  524. package/dist/chunk-GTS3QA7M.js.map +0 -1
  525. package/dist/chunk-HLI6RB5V.cjs.map +0 -1
  526. package/dist/chunk-HNJXBMHI.cjs.map +0 -1
  527. package/dist/chunk-J2DI6RMR.cjs.map +0 -1
  528. package/dist/chunk-JY2RC6I4.js.map +0 -1
  529. package/dist/chunk-KFA7B6WP.cjs.map +0 -1
  530. package/dist/chunk-KOAMRCSC.cjs.map +0 -1
  531. package/dist/chunk-KOTUFZJ6.cjs.map +0 -1
  532. package/dist/chunk-LFC2DL6H.cjs.map +0 -1
  533. package/dist/chunk-LKN7FYW6.js.map +0 -1
  534. package/dist/chunk-MI57NAKF.js.map +0 -1
  535. package/dist/chunk-MKGWHSNV.cjs.map +0 -1
  536. package/dist/chunk-MLZGGAXQ.js.map +0 -1
  537. package/dist/chunk-MPCZUZ4O.cjs.map +0 -1
  538. package/dist/chunk-MQ6VGG62.js.map +0 -1
  539. package/dist/chunk-NSJBVV7R.js.map +0 -1
  540. package/dist/chunk-NVXTHTJI.js.map +0 -1
  541. package/dist/chunk-O5ORO2RX.cjs.map +0 -1
  542. package/dist/chunk-OASSZI6M.cjs.map +0 -1
  543. package/dist/chunk-PCNJJVTF.cjs.map +0 -1
  544. package/dist/chunk-PDVU2PXR.js.map +0 -1
  545. package/dist/chunk-PJNUGSKI.js.map +0 -1
  546. package/dist/chunk-PM5I5ZHK.cjs.map +0 -1
  547. package/dist/chunk-PXZRYL5I.js.map +0 -1
  548. package/dist/chunk-QF2FODTG.js.map +0 -1
  549. package/dist/chunk-QGY5FPVM.js.map +0 -1
  550. package/dist/chunk-QP6VNKLW.cjs.map +0 -1
  551. package/dist/chunk-QTS4Q2NK.js.map +0 -1
  552. package/dist/chunk-RANTYGKW.js.map +0 -1
  553. package/dist/chunk-RLE5WYY6.js.map +0 -1
  554. package/dist/chunk-RSLZL6VP.js.map +0 -1
  555. package/dist/chunk-RWU2MFUL.js.map +0 -1
  556. package/dist/chunk-RZUYCZ5D.cjs.map +0 -1
  557. package/dist/chunk-SKMORSBO.cjs.map +0 -1
  558. package/dist/chunk-SSCW67KA.cjs.map +0 -1
  559. package/dist/chunk-SXXDTW7S.js.map +0 -1
  560. package/dist/chunk-TFX4LL7V.js.map +0 -1
  561. package/dist/chunk-TMQF2CRN.js.map +0 -1
  562. package/dist/chunk-UK6BGM74.cjs.map +0 -1
  563. package/dist/chunk-UXYFM2XT.cjs.map +0 -1
  564. package/dist/chunk-VZTXUYPM.cjs.map +0 -1
  565. package/dist/chunk-WMANILKC.cjs.map +0 -1
  566. package/dist/chunk-WNUAGRQN.cjs.map +0 -1
  567. package/dist/chunk-WZAKEJDL.js.map +0 -1
  568. package/dist/chunk-X2A3NAJW.js.map +0 -1
  569. package/dist/chunk-XZOBGKZL.cjs.map +0 -1
  570. package/dist/chunk-Y3QAEF2P.cjs.map +0 -1
  571. package/dist/chunk-YQZB5Z7C.cjs.map +0 -1
  572. package/dist/chunk-Z44A7NPD.cjs.map +0 -1
  573. package/dist/chunk-Z4UXLQSK.cjs.map +0 -1
  574. package/dist/chunk-Z7SQMQTF.cjs.map +0 -1
  575. package/dist/chunk-ZPBKRJMH.js.map +0 -1
  576. package/dist/chunk-ZVDW2VX5.cjs.map +0 -1
@@ -1,8 +1,8 @@
1
- import { InputWrapper } from './chunk-KXYMMNNV.js';
2
- import { DisplayValue } from './chunk-WX5XYDVN.js';
3
- import { Field } from './chunk-5WQ6FPSP.js';
4
- import { inputBaseClasses, inputSizeClasses, dirtyClasses, errorClasses } from './chunk-USWQAMI3.js';
5
- import { useInlinePaste, InlinePasteEditor, PastedFilesInput } from './chunk-6PRXG7L6.js';
1
+ import { InputWrapper } from './chunk-EDIX6EXQ.js';
2
+ import { DisplayValue } from './chunk-PZTFGPQJ.js';
3
+ import { Field } from './chunk-E2AEU5SP.js';
4
+ import { inputBaseClasses, inputSizeClasses, dirtyClasses, errorClasses } from './chunk-IF6EITB5.js';
5
+ import { useInlinePaste, InlinePasteEditor, PastedFilesInput } from './chunk-RSB2P3JK.js';
6
6
  import { useInlineEdit } from './chunk-OL53XYHF.js';
7
7
  import { useFieldMode } from './chunk-NRXK42LO.js';
8
8
  import { useControllableState } from './chunk-EDYAXGUM.js';
@@ -128,7 +128,7 @@ var Input = forwardRef(
128
128
  "span",
129
129
  {
130
130
  ref: leadingRef,
131
- className: "pointer-events-none absolute left-3 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))]",
131
+ className: "pointer-events-none absolute start-3 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))]",
132
132
  children: leading
133
133
  }
134
134
  ),
@@ -152,10 +152,10 @@ var Input = forwardRef(
152
152
  disabled: disabled === true,
153
153
  ariaLabelledBy: label ? labelId : props["aria-labelledby"],
154
154
  ariaInvalid: Boolean(error),
155
- placeholderClassName: cn(pastePlaceholderClasses[size], leading ? "left-9" : void 0),
155
+ placeholderClassName: cn(pastePlaceholderClasses[size], leading ? "start-9" : void 0),
156
156
  style: {
157
- ...leadingWidth ? { paddingLeft: leadingWidth + 20 } : null,
158
- ...trailingWidth ? { paddingRight: trailingWidth + 20 } : null
157
+ ...leadingWidth ? { paddingInlineStart: leadingWidth + 20 } : null,
158
+ ...trailingWidth ? { paddingInlineEnd: trailingWidth + 20 } : null
159
159
  },
160
160
  className: cn(
161
161
  inputBaseClasses,
@@ -164,8 +164,8 @@ var Input = forwardRef(
164
164
  errorClasses(error),
165
165
  // One line, like the <input> it stands in for.
166
166
  "min-h-0 max-h-none w-full overflow-x-auto overflow-y-hidden whitespace-nowrap break-normal",
167
- leading && !leadingWidth && "pl-9",
168
- trailing && !trailingWidth && "pr-9",
167
+ leading && !leadingWidth && "ps-9",
168
+ trailing && !trailingWidth && "pe-9",
169
169
  className,
170
170
  pasteClassNames?.input
171
171
  )
@@ -206,14 +206,15 @@ var Input = forwardRef(
206
206
  // with its real width -- a fixed 36px is correct for one icon and
207
207
  // wrong for anything wider, which is how `https://` came to
208
208
  // render on top of the value.
209
- leading && !leadingWidth && "pl-9",
210
- (trailing || canReveal) && !trailingWidth && "pr-9",
209
+ leading && !leadingWidth && "ps-9",
210
+ (trailing || canReveal) && !trailingWidth && "pe-9",
211
211
  className
212
212
  ),
213
213
  style: {
214
- // 12px clears `left-3`/`right-3`; 8px is the gap to the text.
215
- ...leadingWidth ? { paddingLeft: leadingWidth + 20 } : null,
216
- ...trailingWidth ? { paddingRight: trailingWidth + 20 } : null,
214
+ // 12px clears `start-3`/`end-3`; 8px is the gap to the text. Logical,
215
+ // like the adornments, so both sides swap in RTL.
216
+ ...leadingWidth ? { paddingInlineStart: leadingWidth + 20 } : null,
217
+ ...trailingWidth ? { paddingInlineEnd: trailingWidth + 20 } : null,
217
218
  ...props.style
218
219
  },
219
220
  onChange: (e) => {
@@ -241,14 +242,14 @@ var Input = forwardRef(
241
242
  "aria-label": shown ? hideLabel : revealLabel,
242
243
  title: shown ? hideLabel : revealLabel,
243
244
  tabIndex: -1,
244
- className: "absolute right-2 inline-flex items-center justify-center rounded p-1 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] transition-colors hover:text-zinc-600 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500/40 disabled:cursor-not-allowed disabled:opacity-50 dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))] dark:hover:text-zinc-300",
245
+ className: "absolute end-2 inline-flex items-center justify-center rounded p-1 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] transition-colors hover:text-zinc-600 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500/40 disabled:cursor-not-allowed disabled:opacity-50 dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))] dark:hover:text-zinc-300",
245
246
  children: shown ? /* @__PURE__ */ jsx(EyeOffIcon, {}) : /* @__PURE__ */ jsx(EyeIcon, {})
246
247
  }
247
248
  ) : trailing && /* @__PURE__ */ jsx(
248
249
  "span",
249
250
  {
250
251
  ref: trailingRef,
251
- className: "pointer-events-none absolute right-3 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))]",
252
+ className: "pointer-events-none absolute end-3 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))]",
252
253
  children: trailing
253
254
  }
254
255
  )
@@ -276,11 +277,11 @@ var Input = forwardRef(
276
277
  );
277
278
  Input.displayName = "Input";
278
279
  var pastePlaceholderClasses = {
279
- xs: "left-2 top-1 text-xs",
280
- sm: "left-2.5 top-1.5 text-sm",
281
- md: "left-3 top-2 text-sm",
282
- lg: "left-4 top-2.5 text-base",
283
- xl: "left-5 top-3 text-lg"
280
+ xs: "start-2 top-1 text-xs",
281
+ sm: "start-2.5 top-1.5 text-sm",
282
+ md: "start-3 top-2 text-sm",
283
+ lg: "start-4 top-2.5 text-base",
284
+ xl: "start-5 top-3 text-lg"
284
285
  };
285
286
  function EyeIcon() {
286
287
  return /* @__PURE__ */ jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [
@@ -298,5 +299,5 @@ function EyeOffIcon() {
298
299
  }
299
300
 
300
301
  export { Input };
301
- //# sourceMappingURL=chunk-PJNUGSKI.js.map
302
- //# sourceMappingURL=chunk-PJNUGSKI.js.map
302
+ //# sourceMappingURL=chunk-IYG436ZY.js.map
303
+ //# sourceMappingURL=chunk-IYG436ZY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks/use-adornment-width.ts","../src/components/inputs/Input/Input.tsx"],"names":[],"mappings":"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","file":"chunk-IYG436ZY.js","sourcesContent":["import { useCallback, useEffect, useState } from \"react\";\n\n/**\n * Measure an inline adornment so the input can reserve exactly its width.\n *\n * ## Why this exists\n *\n * `leading` / `trailing` render ABSOLUTELY over the input, so they take no\n * space in flow and the input must be padded by hand to keep text clear of\n * them. That padding used to be a fixed `pl-9` / `pr-9` (now `ps-9` / `pe-9`) — 36px, sized for a\n * single icon. Any wider adornment ran straight under the value: `leading =\n * \"https://\"` is roughly 50px, so `https://` and `fancy.app` rendered on top of\n * one another.\n *\n * A fixed padding cannot be right for arbitrary content, and these props accept\n * arbitrary content — a currency code, a unit, a protocol, a short label. So\n * the width is measured rather than assumed.\n *\n * Returns `0` until measured (and on the server), which is the signal to keep\n * the old fixed padding as a fallback: an unmeasured render is then no worse\n * than it was before, rather than unpadded.\n *\n * `ResizeObserver` rather than a one-shot read, because the width changes after\n * first paint for reasons the first paint cannot see — a webfont swapping in,\n * the adornment's own content changing, a container query resizing the text.\n */\nexport function useAdornmentWidth(): [(node: HTMLElement | null) => void, number] {\n const [width, setWidth] = useState(0);\n const [node, setNode] = useState<HTMLElement | null>(null);\n\n const ref = useCallback((n: HTMLElement | null) => setNode(n), []);\n\n useEffect(() => {\n if (!node) {\n setWidth(0);\n\n return;\n }\n\n const read = () => setWidth(node.getBoundingClientRect().width);\n read();\n\n if (typeof ResizeObserver === \"undefined\") return;\n\n const observer = new ResizeObserver(read);\n observer.observe(node);\n\n return () => observer.disconnect();\n }, [node]);\n\n return [ref, width];\n}\n","import { forwardRef, useId, useMemo, useRef } from \"react\";\nimport { cn } from \"../../../utils/cn\";\nimport { useControllableState } from \"../../../hooks/use-controllable-state\";\nimport { useAdornmentWidth } from \"../../../hooks/use-adornment-width\";\nimport { Field } from \"../Field\";\nimport { InputWrapper } from \"../InputWrapper\";\nimport {\n dirtyClasses,\n errorClasses,\n inputBaseClasses,\n inputSizeClasses,\n} from \"../inputs.utils\";\nimport { useFieldMode } from \"../mode/FieldMode.context\";\nimport { DisplayValue } from \"../mode/DisplayValue\";\nimport { useInlineEdit } from \"../mode/useInlineEdit\";\nimport {\n InlinePasteEditor,\n PastedFilesInput,\n useInlinePaste,\n type InlinePasteEditorHandle,\n} from \"../../PastePills\";\nimport type { InputProps } from \"./Input.types\";\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n type = \"text\",\n size = \"md\",\n dirty,\n error,\n label,\n labelHidden,\n description,\n required,\n disabled,\n className,\n id,\n leading,\n trailing,\n prefix,\n suffix,\n prefixPosition,\n suffixPosition,\n mode,\n onValueChange,\n onChange,\n reveal,\n revealed,\n onRevealedChange,\n revealLabel = \"Show password\",\n hideLabel = \"Hide password\",\n pasteThreshold,\n pasteImages = false,\n pasteFilesName,\n previewChars = 20,\n renderPastePreview,\n pasteClassNames,\n heldPastes,\n onHeldPastesChange,\n heldImages,\n onHeldImagesChange,\n ...props\n },\n ref,\n ) => {\n const autoId = useId();\n const inputId = id ?? autoId;\n const resolvedMode = useFieldMode(mode);\n const { showControl, interactive, enterEdit, exitEdit } = useInlineEdit(resolvedMode, disabled);\n\n // Measured, not assumed: `leading`/`trailing` take arbitrary content, and a\n // fixed padding can only ever be right for one width. See\n // `useAdornmentWidth` for what went wrong with the fixed version.\n const [leadingRef, leadingWidth] = useAdornmentWidth();\n const [trailingRef, trailingWidth] = useAdornmentWidth();\n\n // Only meaningful on a password field: a reveal on an already-visible input\n // is a button that does nothing.\n const canReveal = reveal === true && type === \"password\";\n const [isRevealed, setRevealed] = useControllableState(revealed, false, onRevealedChange);\n const shown = canReveal && isRevealed;\n // The rendered type, NOT the declared one — `type` stays \"password\" so the\n // display-mode masking below and any caller reading props are unaffected.\n const renderedType = shown ? \"text\" : type;\n\n /*\n * Paste pills: the same core `Composer` and `PromptInput` use, so the three\n * cannot disagree about what a pill holds or what a send carries. Hooks run\n * whether or not it is on (Rules of Hooks); nothing is rendered unless asked.\n */\n const pasting = pasteThreshold !== undefined || pasteImages;\n const editorRef = useRef<InlinePasteEditorHandle>(null);\n const hiddenRef = useRef<HTMLInputElement | null>(null);\n const paste = useInlinePaste({\n pasteThreshold,\n pasteImages,\n previewChars,\n renderPastePreview,\n classNames: pasteClassNames,\n disabled: disabled === true,\n heldPastes,\n onHeldPastesChange,\n heldImages,\n onHeldImagesChange,\n editorRef,\n blockText: false,\n });\n const [pasteValue, setPasteValue] = useControllableState<string>(\n props.value === undefined ? undefined : String(props.value),\n props.defaultValue === undefined ? \"\" : String(props.defaultValue),\n onValueChange,\n );\n const filesName = pasteFilesName ?? (props.name ? `${props.name}_files[]` : undefined);\n const pastedFiles = useMemo(\n () => (pasteImages ? paste.imagesIn(pasteValue).map((i) => i.file) : []),\n [pasteImages, paste, pasteValue],\n );\n const labelId = `${inputId}-label`;\n\n const input = !showControl ? (\n <DisplayValue\n size={size}\n interactive={interactive}\n onActivate={enterEdit}\n leading={leading ?? prefix}\n trailing={trailing ?? suffix}\n >\n {type === \"password\" ? (props.value ? \"••••••\" : \"\") : (props.value as string | undefined)}\n </DisplayValue>\n ) : (\n <InputWrapper\n prefix={prefix}\n suffix={suffix}\n prefixPosition={prefixPosition}\n suffixPosition={suffixPosition}\n size={size}\n >\n <div data-react-fancy-input=\"\" className=\"relative flex items-center\">\n {leading && (\n <span\n ref={leadingRef}\n className=\"pointer-events-none absolute start-3 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))]\"\n >\n {leading}\n </span>\n )}\n {pasting ? (\n <>\n <div className=\"min-w-0 flex-1\">\n <InlinePasteEditor\n ref={editorRef}\n id={inputId}\n value={pasteValue}\n known={paste.known}\n onChange={(next) => {\n setPasteValue(next);\n paste.prune(next);\n }}\n // Enter in a text field submits its form; keep that.\n onSubmit={() => hiddenRef.current?.form?.requestSubmit()}\n multiline={false}\n onPaste={paste.decidePaste}\n onHostsChange={paste.onHostsChange}\n placeholder={props.placeholder ?? \"\"}\n disabled={disabled === true}\n ariaLabelledBy={label ? labelId : props[\"aria-labelledby\"]}\n ariaInvalid={Boolean(error)}\n placeholderClassName={cn(pastePlaceholderClasses[size], leading ? \"start-9\" : undefined)}\n style={{\n ...(leadingWidth ? { paddingInlineStart: leadingWidth + 20 } : null),\n ...(trailingWidth ? { paddingInlineEnd: trailingWidth + 20 } : null),\n }}\n className={cn(\n inputBaseClasses,\n inputSizeClasses[size],\n dirtyClasses(dirty),\n errorClasses(error),\n // One line, like the <input> it stands in for.\n \"min-h-0 max-h-none w-full overflow-x-auto overflow-y-hidden whitespace-nowrap break-normal\",\n leading && !leadingWidth && \"ps-9\",\n trailing && !trailingWidth && \"pe-9\",\n className,\n pasteClassNames?.input,\n )}\n />\n </div>\n {paste.portals}\n {/* What a native submit posts: the value with every pill expanded. */}\n <input\n ref={(el) => {\n hiddenRef.current = el;\n if (typeof ref === \"function\") ref(el);\n else if (ref) ref.current = el;\n }}\n type=\"hidden\"\n name={props.name}\n form={props.form}\n value={paste.expand(pasteValue)}\n />\n {pasteImages && filesName && (\n <PastedFilesInput name={filesName} files={pastedFiles} form={props.form} />\n )}\n </>\n ) : (\n <input\n ref={ref}\n id={inputId}\n type={renderedType}\n disabled={disabled}\n required={required}\n className={cn(\n inputBaseClasses,\n inputSizeClasses[size],\n dirtyClasses(dirty),\n errorClasses(error),\n \"w-full\",\n // The fixed classes are the PRE-MEASURE fallback only. Once the\n // adornment is measured, the inline style below overrides them\n // with its real width -- a fixed 36px is correct for one icon and\n // wrong for anything wider, which is how `https://` came to\n // render on top of the value.\n leading && !leadingWidth && \"ps-9\",\n (trailing || canReveal) && !trailingWidth && \"pe-9\",\n className,\n )}\n style={{\n // 12px clears `start-3`/`end-3`; 8px is the gap to the text. Logical,\n // like the adornments, so both sides swap in RTL.\n ...(leadingWidth ? { paddingInlineStart: leadingWidth + 20 } : null),\n ...(trailingWidth ? { paddingInlineEnd: trailingWidth + 20 } : null),\n ...props.style,\n }}\n onChange={(e) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n }}\n {...props}\n // Inline click-to-edit: focus on entering edit, return to the display\n // (and run the host's onBlur) when focus leaves.\n autoFocus={interactive || props.autoFocus}\n onBlur={(e) => {\n props.onBlur?.(e);\n if (interactive) exitEdit();\n }}\n />\n )}\n {canReveal ? (\n <button\n type=\"button\"\n // type=\"button\" is load-bearing: the default is \"submit\", so a\n // reveal inside a login form would submit it on every click.\n id={`${inputId}-reveal`}\n data-react-fancy-reveal=\"\"\n onClick={() => setRevealed((v) => !v)}\n disabled={disabled}\n aria-controls={inputId}\n aria-pressed={shown}\n aria-label={shown ? hideLabel : revealLabel}\n title={shown ? hideLabel : revealLabel}\n // Not focusable by tab: the field and the submit button are the\n // path through a login form, and a reveal in between is a stop\n // most people do not want. Still reachable by click and by\n // screen readers.\n tabIndex={-1}\n className=\"absolute end-2 inline-flex items-center justify-center rounded p-1 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] transition-colors hover:text-zinc-600 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500/40 disabled:cursor-not-allowed disabled:opacity-50 dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))] dark:hover:text-zinc-300\"\n >\n {shown ? <EyeOffIcon /> : <EyeIcon />}\n </button>\n ) : (\n trailing && (\n <span\n ref={trailingRef}\n className=\"pointer-events-none absolute end-3 text-[color:var(--fancy-text-faint,var(--color-zinc-400))] dark:text-[color:var(--fancy-text-faint-dark,var(--color-zinc-500))]\"\n >\n {trailing}\n </span>\n )\n )}\n </div>\n </InputWrapper>\n );\n\n if (label || error || description) {\n return (\n <Field\n label={label}\n labelId={pasting ? labelId : undefined}\n labelHidden={labelHidden}\n description={description}\n error={error}\n required={required}\n htmlFor={inputId}\n size={size}\n >\n {input}\n </Field>\n );\n }\n\n return input;\n },\n);\n\nInput.displayName = \"Input\";\n\n/** Where the placeholder sits over the paste editor, matching `inputSizeClasses`. */\nconst pastePlaceholderClasses = {\n xs: \"start-2 top-1 text-xs\",\n sm: \"start-2.5 top-1.5 text-sm\",\n md: \"start-3 top-2 text-sm\",\n lg: \"start-4 top-2.5 text-base\",\n xl: \"start-5 top-3 text-lg\",\n} as const;\n\n/**\n * Inline SVGs rather than the Icon component: Input is the most-installed\n * primitive in the kit, and routing it through the icon registry would make\n * every consumer's password field depend on an icon set being configured.\n */\nfunction EyeIcon() {\n return (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0\" />\n <circle cx=\"12\" cy=\"12\" r=\"3\" />\n </svg>\n );\n}\n\nfunction EyeOffIcon() {\n return (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49\" />\n <path d=\"M14.084 14.158a3 3 0 0 1-4.242-4.242\" />\n <path d=\"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143\" />\n <path d=\"m2 2 20 20\" />\n </svg>\n );\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var chunkP53432AK_cjs = require('./chunk-P53432AK.cjs');
4
- var chunkQF7CD4JH_cjs = require('./chunk-QF7CD4JH.cjs');
5
- var chunkO3F6DYWR_cjs = require('./chunk-O3F6DYWR.cjs');
3
+ var chunkUIBAIWUR_cjs = require('./chunk-UIBAIWUR.cjs');
4
+ var chunkQ7XL37T3_cjs = require('./chunk-Q7XL37T3.cjs');
5
+ var chunkXG6J5MOK_cjs = require('./chunk-XG6J5MOK.cjs');
6
6
  var chunkKJ22KE56_cjs = require('./chunk-KJ22KE56.cjs');
7
7
  var chunkL3V3BYVS_cjs = require('./chunk-L3V3BYVS.cjs');
8
8
  var chunkSNHU2AI4_cjs = require('./chunk-SNHU2AI4.cjs');
@@ -86,7 +86,7 @@ var SingleSlider = react.forwardRef(
86
86
  singleProps.onValueChange
87
87
  );
88
88
  const slider = !showControl ? /* @__PURE__ */ jsxRuntime.jsx(
89
- chunkP53432AK_cjs.DisplayValue,
89
+ chunkUIBAIWUR_cjs.DisplayValue,
90
90
  {
91
91
  size,
92
92
  className,
@@ -115,7 +115,7 @@ var SingleSlider = react.forwardRef(
115
115
  onChange: (e) => setValue(Number(e.target.value)),
116
116
  className: chunkZU5Q77OT_cjs.cn(
117
117
  "w-full cursor-pointer accent-blue-600 disabled:cursor-not-allowed disabled:opacity-50",
118
- chunkO3F6DYWR_cjs.dirtyRingClasses(dirty),
118
+ chunkXG6J5MOK_cjs.dirtyRingClasses(dirty),
119
119
  {
120
120
  xs: "h-1",
121
121
  sm: "h-1.5",
@@ -126,7 +126,7 @@ var SingleSlider = react.forwardRef(
126
126
  )
127
127
  }
128
128
  ),
129
- showValue && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "min-w-[3ch] shrink-0 whitespace-nowrap text-right text-sm font-medium text-[color:var(--fancy-text-soft,var(--color-zinc-700))] dark:text-[color:var(--fancy-text-soft-dark,var(--color-zinc-300))]", children: [
129
+ showValue && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "min-w-[3ch] shrink-0 whitespace-nowrap text-end text-sm font-medium text-[color:var(--fancy-text-soft,var(--color-zinc-700))] dark:text-[color:var(--fancy-text-soft-dark,var(--color-zinc-300))]", children: [
130
130
  prefix,
131
131
  value,
132
132
  suffix
@@ -135,7 +135,7 @@ var SingleSlider = react.forwardRef(
135
135
  marks && marks.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(SliderMarks, { marks, min, max })
136
136
  ] });
137
137
  if (label || error || description) {
138
- return /* @__PURE__ */ jsxRuntime.jsx(chunkQF7CD4JH_cjs.Field, { label, labelHidden, description, error, required, htmlFor: id, size, children: slider });
138
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQ7XL37T3_cjs.Field, { label, labelHidden, description, error, required, htmlFor: id, size, children: slider });
139
139
  }
140
140
  return slider;
141
141
  }
@@ -181,7 +181,7 @@ var RangeSlider = react.forwardRef(
181
181
  const leftPercent = (value[0] - min) / (max - min) * 100;
182
182
  const rightPercent = (value[1] - min) / (max - min) * 100;
183
183
  const slider = !showControl ? /* @__PURE__ */ jsxRuntime.jsx(
184
- chunkP53432AK_cjs.DisplayValue,
184
+ chunkUIBAIWUR_cjs.DisplayValue,
185
185
  {
186
186
  size,
187
187
  className,
@@ -205,7 +205,7 @@ var RangeSlider = react.forwardRef(
205
205
  "div",
206
206
  {
207
207
  className: "pointer-events-none absolute top-1/2 h-1.5 -translate-y-1/2 rounded-full bg-blue-500",
208
- style: { left: `${leftPercent}%`, width: `${rightPercent - leftPercent}%` }
208
+ style: { insetInlineStart: `${leftPercent}%`, width: `${rightPercent - leftPercent}%` }
209
209
  }
210
210
  ),
211
211
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -222,7 +222,7 @@ var RangeSlider = react.forwardRef(
222
222
  onChange: (e) => handleMin(Number(e.target.value)),
223
223
  className: chunkZU5Q77OT_cjs.cn(
224
224
  "pointer-events-none absolute w-full cursor-pointer appearance-none bg-transparent [&::-webkit-slider-thumb]:pointer-events-auto [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-blue-600 [&::-webkit-slider-thumb]:shadow",
225
- chunkO3F6DYWR_cjs.dirtyRingClasses(dirty)
225
+ chunkXG6J5MOK_cjs.dirtyRingClasses(dirty)
226
226
  )
227
227
  }
228
228
  ),
@@ -241,7 +241,7 @@ var RangeSlider = react.forwardRef(
241
241
  ),
242
242
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-6" })
243
243
  ] }),
244
- showValue && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "min-w-[6ch] shrink-0 whitespace-nowrap text-right text-sm font-medium text-[color:var(--fancy-text-soft,var(--color-zinc-700))] dark:text-[color:var(--fancy-text-soft-dark,var(--color-zinc-300))]", children: [
244
+ showValue && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "min-w-[6ch] shrink-0 whitespace-nowrap text-end text-sm font-medium text-[color:var(--fancy-text-soft,var(--color-zinc-700))] dark:text-[color:var(--fancy-text-soft-dark,var(--color-zinc-300))]", children: [
245
245
  prefix,
246
246
  value[0],
247
247
  suffix,
@@ -256,7 +256,7 @@ var RangeSlider = react.forwardRef(
256
256
  }
257
257
  );
258
258
  if (label || error || description) {
259
- return /* @__PURE__ */ jsxRuntime.jsx(chunkQF7CD4JH_cjs.Field, { label, labelHidden, description, error, required, htmlFor: id, size, children: slider });
259
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQ7XL37T3_cjs.Field, { label, labelHidden, description, error, required, htmlFor: id, size, children: slider });
260
260
  }
261
261
  return slider;
262
262
  }
@@ -272,8 +272,8 @@ function SliderMarks({
272
272
  return /* @__PURE__ */ jsxRuntime.jsx(
273
273
  "span",
274
274
  {
275
- className: "absolute -translate-x-1/2 text-xs text-[color:var(--fancy-text-muted,var(--color-zinc-500))] dark:text-[color:var(--fancy-text-muted-dark,var(--color-zinc-400))]",
276
- style: { left: `${percent}%` },
275
+ className: "absolute -translate-x-1/2 rtl:translate-x-1/2 text-xs text-[color:var(--fancy-text-muted,var(--color-zinc-500))] dark:text-[color:var(--fancy-text-muted-dark,var(--color-zinc-400))]",
276
+ style: { insetInlineStart: `${percent}%` },
277
277
  children: mark.label ?? mark.value
278
278
  },
279
279
  mark.value
@@ -282,5 +282,5 @@ function SliderMarks({
282
282
  }
283
283
 
284
284
  exports.Slider = Slider;
285
- //# sourceMappingURL=chunk-Z4UXLQSK.cjs.map
286
- //# sourceMappingURL=chunk-Z4UXLQSK.cjs.map
285
+ //# sourceMappingURL=chunk-JDFJK5GO.cjs.map
286
+ //# sourceMappingURL=chunk-JDFJK5GO.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/inputs/Slider/Slider.tsx"],"names":["forwardRef","useId","jsx","useFieldMode","useInlineEdit","useControllableState","DisplayValue","cn","jsxs","dirtyRingClasses","Field"],"mappings":"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","file":"chunk-JDFJK5GO.cjs","sourcesContent":["import { forwardRef, useId } from \"react\";\nimport { cn } from \"../../../utils/cn\";\nimport { useControllableState } from \"../../../hooks/use-controllable-state\";\nimport { Field } from \"../Field\";\nimport { useFieldMode } from \"../mode/FieldMode.context\";\nimport { DisplayValue } from \"../mode/DisplayValue\";\nimport { useInlineEdit } from \"../mode/useInlineEdit\";\nimport { dirtyRingClasses } from \"../inputs.utils\";\nimport type { SliderProps } from \"./Slider.types\";\n\nexport const Slider = forwardRef<HTMLInputElement, SliderProps>(\n (props, ref) => {\n const {\n size = \"md\",\n dirty,\n error,\n label,\n labelHidden,\n description,\n required,\n disabled,\n className,\n id,\n name,\n min = 0,\n max = 100,\n step = 1,\n showValue,\n marks,\n } = props;\n\n const autoId = useId();\n const sliderId = id ?? autoId;\n\n if (props.range) {\n return (\n <RangeSlider\n {...props}\n id={sliderId}\n ref={ref}\n />\n );\n }\n\n return (\n <SingleSlider\n {...props}\n range={false}\n id={sliderId}\n ref={ref}\n />\n );\n },\n);\n\nSlider.displayName = \"Slider\";\n\nconst SingleSlider = forwardRef<HTMLInputElement, SliderProps & { range?: false }>(\n (\n {\n size = \"md\",\n dirty,\n error,\n label,\n labelHidden,\n description,\n required,\n disabled,\n className,\n id,\n name,\n min = 0,\n max = 100,\n step = 1,\n showValue,\n marks,\n prefix,\n suffix,\n mode,\n ...rest\n },\n ref,\n ) => {\n const singleProps = rest as { value?: number; defaultValue?: number; onValueChange?: (v: number) => void };\n const resolvedMode = useFieldMode(mode);\n const { showControl, interactive, enterEdit, exitEdit } = useInlineEdit(resolvedMode, disabled);\n const [value, setValue] = useControllableState(\n singleProps.value,\n singleProps.defaultValue ?? min,\n singleProps.onValueChange,\n );\n\n const slider = !showControl ? (\n <DisplayValue\n size={size}\n className={className}\n interactive={interactive}\n onActivate={enterEdit}\n >\n {`${prefix ?? \"\"}${value}${suffix ?? \"\"}`}\n </DisplayValue>\n ) : (\n <div data-react-fancy-slider=\"\" className={cn(\"flex flex-col gap-1\", className)}>\n <div className=\"flex items-center gap-3\">\n <input\n ref={ref}\n id={id}\n type=\"range\"\n name={name}\n min={min}\n max={max}\n step={step}\n value={value}\n disabled={disabled}\n autoFocus={interactive}\n onBlur={() => {\n if (interactive) exitEdit();\n }}\n onChange={(e) => setValue(Number(e.target.value))}\n className={cn(\n \"w-full cursor-pointer accent-blue-600 disabled:cursor-not-allowed disabled:opacity-50\",\n dirtyRingClasses(dirty),\n {\n xs: \"h-1\",\n sm: \"h-1.5\",\n md: \"h-2\",\n lg: \"h-2.5\",\n xl: \"h-3\",\n }[size],\n )}\n />\n {showValue && (\n <span className=\"min-w-[3ch] shrink-0 whitespace-nowrap text-end text-sm font-medium text-[color:var(--fancy-text-soft,var(--color-zinc-700))] dark:text-[color:var(--fancy-text-soft-dark,var(--color-zinc-300))]\">\n {prefix}{value}{suffix}\n </span>\n )}\n </div>\n {marks && marks.length > 0 && <SliderMarks marks={marks} min={min} max={max} />}\n </div>\n );\n\n if (label || error || description) {\n return (\n <Field label={label} labelHidden={labelHidden} description={description} error={error} required={required} htmlFor={id} size={size}>\n {slider}\n </Field>\n );\n }\n\n return slider;\n },\n);\n\nSingleSlider.displayName = \"SingleSlider\";\n\nconst RangeSlider = forwardRef<HTMLInputElement, SliderProps & { range: true }>(\n (\n {\n size = \"md\",\n dirty,\n error,\n label,\n labelHidden,\n description,\n required,\n disabled,\n className,\n id,\n name,\n min = 0,\n max = 100,\n step = 1,\n showValue,\n marks,\n prefix,\n suffix,\n mode,\n ...rest\n },\n ref,\n ) => {\n const rangeProps = rest as { value?: [number, number]; defaultValue?: [number, number]; onValueChange?: (v: [number, number]) => void };\n const resolvedMode = useFieldMode(mode);\n const { showControl, interactive, enterEdit, exitEdit } = useInlineEdit(resolvedMode, disabled);\n const [value, setValue] = useControllableState(\n rangeProps.value,\n rangeProps.defaultValue ?? [min, max] as [number, number],\n rangeProps.onValueChange,\n );\n\n const handleMin = (n: number) => {\n setValue([Math.min(n, value[1]), value[1]]);\n };\n\n const handleMax = (n: number) => {\n setValue([value[0], Math.max(n, value[0])]);\n };\n\n const leftPercent = ((value[0] - min) / (max - min)) * 100;\n const rightPercent = ((value[1] - min) / (max - min)) * 100;\n\n const slider = !showControl ? (\n <DisplayValue\n size={size}\n className={className}\n interactive={interactive}\n onActivate={enterEdit}\n >\n {`${prefix ?? \"\"}${value[0]}${suffix ?? \"\"}–${prefix ?? \"\"}${value[1]}${suffix ?? \"\"}`}\n </DisplayValue>\n ) : (\n <div\n data-react-fancy-slider=\"\"\n className={cn(\"flex flex-col gap-1\", className)}\n onBlur={(e) => {\n if (interactive && !e.currentTarget.contains(e.relatedTarget as Node)) exitEdit();\n }}\n >\n <div className=\"flex items-center gap-3\">\n <div className=\"relative w-full\">\n <div className=\"pointer-events-none absolute top-1/2 h-1.5 w-full -translate-y-1/2 rounded-full bg-[color:var(--fancy-border,var(--color-zinc-200))] dark:bg-[color:var(--fancy-border-dark,var(--color-zinc-700))]\" />\n <div\n className=\"pointer-events-none absolute top-1/2 h-1.5 -translate-y-1/2 rounded-full bg-blue-500\"\n // A native range runs right-to-left in RTL, so the fill is\n // placed from the inline start to match it.\n style={{ insetInlineStart: `${leftPercent}%`, width: `${rightPercent - leftPercent}%` }}\n />\n <input\n ref={ref}\n type=\"range\"\n min={min}\n max={max}\n step={step}\n value={value[0]}\n disabled={disabled}\n autoFocus={interactive}\n onChange={(e) => handleMin(Number(e.target.value))}\n className={cn(\n \"pointer-events-none absolute w-full cursor-pointer appearance-none bg-transparent [&::-webkit-slider-thumb]:pointer-events-auto [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-blue-600 [&::-webkit-slider-thumb]:shadow\",\n dirtyRingClasses(dirty),\n )}\n />\n <input\n type=\"range\"\n min={min}\n max={max}\n step={step}\n value={value[1]}\n disabled={disabled}\n onChange={(e) => handleMax(Number(e.target.value))}\n className=\"pointer-events-none absolute w-full cursor-pointer appearance-none bg-transparent [&::-webkit-slider-thumb]:pointer-events-auto [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-blue-600 [&::-webkit-slider-thumb]:shadow\"\n />\n <div className=\"h-6\" />\n </div>\n {showValue && (\n <span className=\"min-w-[6ch] shrink-0 whitespace-nowrap text-end text-sm font-medium text-[color:var(--fancy-text-soft,var(--color-zinc-700))] dark:text-[color:var(--fancy-text-soft-dark,var(--color-zinc-300))]\">\n {prefix}{value[0]}{suffix}–{prefix}{value[1]}{suffix}\n </span>\n )}\n </div>\n {marks && marks.length > 0 && <SliderMarks marks={marks} min={min} max={max} />}\n </div>\n );\n\n if (label || error || description) {\n return (\n <Field label={label} labelHidden={labelHidden} description={description} error={error} required={required} htmlFor={id} size={size}>\n {slider}\n </Field>\n );\n }\n\n return slider;\n },\n);\n\nRangeSlider.displayName = \"RangeSlider\";\n\nfunction SliderMarks({\n marks,\n min,\n max,\n}: {\n marks: { value: number; label?: string }[];\n min: number;\n max: number;\n}) {\n return (\n <div className=\"relative h-5 w-full\">\n {marks.map((mark) => {\n const percent = ((mark.value - min) / (max - min)) * 100;\n return (\n <span\n key={mark.value}\n // Centred on its value, measured from the inline start like the\n // native range above it; the centring shift flips with it.\n className=\"absolute -translate-x-1/2 rtl:translate-x-1/2 text-xs text-[color:var(--fancy-text-muted,var(--color-zinc-500))] dark:text-[color:var(--fancy-text-muted-dark,var(--color-zinc-400))]\"\n style={{ insetInlineStart: `${percent}%` }}\n >\n {mark.label ?? mark.value}\n </span>\n );\n })}\n </div>\n );\n}\n"]}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkMRZXTL46_cjs = require('./chunk-MRZXTL46.cjs');
4
- var chunkP53432AK_cjs = require('./chunk-P53432AK.cjs');
5
- var chunkQF7CD4JH_cjs = require('./chunk-QF7CD4JH.cjs');
6
- var chunkO3F6DYWR_cjs = require('./chunk-O3F6DYWR.cjs');
3
+ var chunkDFROB5TW_cjs = require('./chunk-DFROB5TW.cjs');
4
+ var chunkUIBAIWUR_cjs = require('./chunk-UIBAIWUR.cjs');
5
+ var chunkQ7XL37T3_cjs = require('./chunk-Q7XL37T3.cjs');
6
+ var chunkXG6J5MOK_cjs = require('./chunk-XG6J5MOK.cjs');
7
7
  var chunkKJ22KE56_cjs = require('./chunk-KJ22KE56.cjs');
8
8
  var chunkL3V3BYVS_cjs = require('./chunk-L3V3BYVS.cjs');
9
9
  var chunkZU5Q77OT_cjs = require('./chunk-ZU5Q77OT.cjs');
@@ -51,7 +51,7 @@ var Textarea = react.forwardRef(
51
51
  el.style.height = `${Math.min(Math.max(el.scrollHeight, minHeight), maxHeight)}px`;
52
52
  }, [autoResize, minRows, maxRows, value, defaultValue]);
53
53
  const textarea = !showControl ? /* @__PURE__ */ jsxRuntime.jsx(
54
- chunkP53432AK_cjs.DisplayValue,
54
+ chunkUIBAIWUR_cjs.DisplayValue,
55
55
  {
56
56
  size,
57
57
  className: "whitespace-pre-wrap",
@@ -60,7 +60,7 @@ var Textarea = react.forwardRef(
60
60
  children: value ?? defaultValue
61
61
  }
62
62
  ) : /* @__PURE__ */ jsxRuntime.jsx(
63
- chunkMRZXTL46_cjs.InputWrapper,
63
+ chunkDFROB5TW_cjs.InputWrapper,
64
64
  {
65
65
  prefix,
66
66
  suffix,
@@ -86,10 +86,10 @@ var Textarea = react.forwardRef(
86
86
  value,
87
87
  defaultValue,
88
88
  className: chunkZU5Q77OT_cjs.cn(
89
- chunkO3F6DYWR_cjs.inputBaseClasses,
90
- chunkO3F6DYWR_cjs.inputSizeClasses[size],
91
- chunkO3F6DYWR_cjs.dirtyClasses(dirty),
92
- chunkO3F6DYWR_cjs.errorClasses(error),
89
+ chunkXG6J5MOK_cjs.inputBaseClasses,
90
+ chunkXG6J5MOK_cjs.inputSizeClasses[size],
91
+ chunkXG6J5MOK_cjs.dirtyClasses(dirty),
92
+ chunkXG6J5MOK_cjs.errorClasses(error),
93
93
  "w-full resize-y",
94
94
  autoResize && "resize-none overflow-hidden",
95
95
  className
@@ -110,7 +110,7 @@ var Textarea = react.forwardRef(
110
110
  );
111
111
  if (label || error || description) {
112
112
  return /* @__PURE__ */ jsxRuntime.jsx(
113
- chunkQF7CD4JH_cjs.Field,
113
+ chunkQ7XL37T3_cjs.Field,
114
114
  {
115
115
  label,
116
116
  labelHidden,
@@ -129,5 +129,5 @@ var Textarea = react.forwardRef(
129
129
  Textarea.displayName = "Textarea";
130
130
 
131
131
  exports.Textarea = Textarea;
132
- //# sourceMappingURL=chunk-MAZEX4EZ.cjs.map
133
- //# sourceMappingURL=chunk-MAZEX4EZ.cjs.map
132
+ //# sourceMappingURL=chunk-JQIFCWNZ.cjs.map
133
+ //# sourceMappingURL=chunk-JQIFCWNZ.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/inputs/Textarea/Textarea.tsx"],"names":["forwardRef","useId","useRef","useFieldMode","useInlineEdit","useEffect","jsx","DisplayValue","InputWrapper","cn","inputBaseClasses","inputSizeClasses","dirtyClasses","errorClasses","Field"],"mappings":"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","file":"chunk-MAZEX4EZ.cjs","sourcesContent":["import { forwardRef, useEffect, useId, useRef } from \"react\";\nimport { cn } from \"../../../utils/cn\";\nimport { Field } from \"../Field\";\nimport { InputWrapper } from \"../InputWrapper\";\nimport {\n dirtyClasses,\n errorClasses,\n inputBaseClasses,\n inputSizeClasses,\n} from \"../inputs.utils\";\nimport { useFieldMode } from \"../mode/FieldMode.context\";\nimport { DisplayValue } from \"../mode/DisplayValue\";\nimport { useInlineEdit } from \"../mode/useInlineEdit\";\nimport type { TextareaProps } from \"./Textarea.types\";\n\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n size = \"md\",\n dirty,\n error,\n label,\n labelHidden,\n description,\n required,\n disabled,\n className,\n id,\n autoResize,\n minRows = 3,\n maxRows,\n prefix,\n suffix,\n prefixPosition: _prefixPosition,\n suffixPosition: _suffixPosition,\n mode,\n onValueChange,\n onChange,\n value,\n defaultValue,\n ...props\n },\n ref,\n ) => {\n const autoId = useId();\n const textareaId = id ?? autoId;\n const internalRef = useRef<HTMLTextAreaElement | null>(null);\n const resolvedMode = useFieldMode(mode);\n const { showControl, interactive, enterEdit, exitEdit } = useInlineEdit(resolvedMode, disabled);\n\n useEffect(() => {\n const el = internalRef.current;\n if (!autoResize || !el) return;\n el.style.height = \"auto\";\n const lineHeight = parseInt(getComputedStyle(el).lineHeight) || 20;\n const minHeight = minRows * lineHeight;\n const maxHeight = maxRows ? maxRows * lineHeight : Infinity;\n el.style.height = `${Math.min(Math.max(el.scrollHeight, minHeight), maxHeight)}px`;\n }, [autoResize, minRows, maxRows, value, defaultValue]);\n\n const textarea = !showControl ? (\n <DisplayValue\n size={size}\n className=\"whitespace-pre-wrap\"\n interactive={interactive}\n onActivate={enterEdit}\n >\n {(value ?? defaultValue) as string | undefined}\n </DisplayValue>\n ) : (\n <InputWrapper\n prefix={prefix}\n suffix={suffix}\n prefixPosition=\"outside\"\n suffixPosition=\"outside\"\n size={size}\n >\n <textarea\n data-react-fancy-textarea=\"\"\n ref={(node) => {\n internalRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n ref.current = node;\n }\n }}\n id={textareaId}\n disabled={disabled}\n required={required}\n rows={autoResize ? minRows : minRows}\n value={value}\n defaultValue={defaultValue}\n className={cn(\n inputBaseClasses,\n inputSizeClasses[size],\n dirtyClasses(dirty),\n errorClasses(error),\n \"w-full resize-y\",\n autoResize && \"resize-none overflow-hidden\",\n className,\n )}\n onChange={(e) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n }}\n {...props}\n autoFocus={interactive || props.autoFocus}\n onBlur={(e) => {\n props.onBlur?.(e);\n if (interactive) exitEdit();\n }}\n />\n </InputWrapper>\n );\n\n if (label || error || description) {\n return (\n <Field\n label={label}\n labelHidden={labelHidden}\n description={description}\n error={error}\n required={required}\n htmlFor={textareaId}\n size={size}\n >\n {textarea}\n </Field>\n );\n }\n\n return textarea;\n },\n);\n\nTextarea.displayName = \"Textarea\";\n"]}
1
+ {"version":3,"sources":["../src/components/inputs/Textarea/Textarea.tsx"],"names":["forwardRef","useId","useRef","useFieldMode","useInlineEdit","useEffect","jsx","DisplayValue","InputWrapper","cn","inputBaseClasses","inputSizeClasses","dirtyClasses","errorClasses","Field"],"mappings":"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","file":"chunk-JQIFCWNZ.cjs","sourcesContent":["import { forwardRef, useEffect, useId, useRef } from \"react\";\nimport { cn } from \"../../../utils/cn\";\nimport { Field } from \"../Field\";\nimport { InputWrapper } from \"../InputWrapper\";\nimport {\n dirtyClasses,\n errorClasses,\n inputBaseClasses,\n inputSizeClasses,\n} from \"../inputs.utils\";\nimport { useFieldMode } from \"../mode/FieldMode.context\";\nimport { DisplayValue } from \"../mode/DisplayValue\";\nimport { useInlineEdit } from \"../mode/useInlineEdit\";\nimport type { TextareaProps } from \"./Textarea.types\";\n\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n size = \"md\",\n dirty,\n error,\n label,\n labelHidden,\n description,\n required,\n disabled,\n className,\n id,\n autoResize,\n minRows = 3,\n maxRows,\n prefix,\n suffix,\n prefixPosition: _prefixPosition,\n suffixPosition: _suffixPosition,\n mode,\n onValueChange,\n onChange,\n value,\n defaultValue,\n ...props\n },\n ref,\n ) => {\n const autoId = useId();\n const textareaId = id ?? autoId;\n const internalRef = useRef<HTMLTextAreaElement | null>(null);\n const resolvedMode = useFieldMode(mode);\n const { showControl, interactive, enterEdit, exitEdit } = useInlineEdit(resolvedMode, disabled);\n\n useEffect(() => {\n const el = internalRef.current;\n if (!autoResize || !el) return;\n el.style.height = \"auto\";\n const lineHeight = parseInt(getComputedStyle(el).lineHeight) || 20;\n const minHeight = minRows * lineHeight;\n const maxHeight = maxRows ? maxRows * lineHeight : Infinity;\n el.style.height = `${Math.min(Math.max(el.scrollHeight, minHeight), maxHeight)}px`;\n }, [autoResize, minRows, maxRows, value, defaultValue]);\n\n const textarea = !showControl ? (\n <DisplayValue\n size={size}\n className=\"whitespace-pre-wrap\"\n interactive={interactive}\n onActivate={enterEdit}\n >\n {(value ?? defaultValue) as string | undefined}\n </DisplayValue>\n ) : (\n <InputWrapper\n prefix={prefix}\n suffix={suffix}\n prefixPosition=\"outside\"\n suffixPosition=\"outside\"\n size={size}\n >\n <textarea\n data-react-fancy-textarea=\"\"\n ref={(node) => {\n internalRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n ref.current = node;\n }\n }}\n id={textareaId}\n disabled={disabled}\n required={required}\n rows={autoResize ? minRows : minRows}\n value={value}\n defaultValue={defaultValue}\n className={cn(\n inputBaseClasses,\n inputSizeClasses[size],\n dirtyClasses(dirty),\n errorClasses(error),\n \"w-full resize-y\",\n autoResize && \"resize-none overflow-hidden\",\n className,\n )}\n onChange={(e) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n }}\n {...props}\n autoFocus={interactive || props.autoFocus}\n onBlur={(e) => {\n props.onBlur?.(e);\n if (interactive) exitEdit();\n }}\n />\n </InputWrapper>\n );\n\n if (label || error || description) {\n return (\n <Field\n label={label}\n labelHidden={labelHidden}\n description={description}\n error={error}\n required={required}\n htmlFor={textareaId}\n size={size}\n >\n {textarea}\n </Field>\n );\n }\n\n return textarea;\n },\n);\n\nTextarea.displayName = \"Textarea\";\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkJ2DI6RMR_cjs = require('./chunk-J2DI6RMR.cjs');
3
+ var chunkXGGAAG74_cjs = require('./chunk-XGGAAG74.cjs');
4
4
  var chunkTI7D4QDM_cjs = require('./chunk-TI7D4QDM.cjs');
5
5
  var chunk57FQGQJK_cjs = require('./chunk-57FQGQJK.cjs');
6
6
  var chunkOUYC6EIL_cjs = require('./chunk-OUYC6EIL.cjs');
@@ -38,7 +38,7 @@ PopoverTrigger.displayName = "PopoverTrigger";
38
38
  function PopoverContent({ children, className, style, ...rest }) {
39
39
  const { open, setOpen, anchorRef, floatingRef, placement, offset, hover, onHoverEnter, onHoverLeave } = usePopover();
40
40
  const outsideRef = react.useRef(null);
41
- const position = chunkJ2DI6RMR_cjs.useFloatingPosition(anchorRef, floatingRef, {
41
+ const position = chunkXGGAAG74_cjs.useFloatingPosition(anchorRef, floatingRef, {
42
42
  placement,
43
43
  offset,
44
44
  enabled: open
@@ -62,6 +62,7 @@ function PopoverContent({ children, className, style, ...rest }) {
62
62
  positioned ? "fancy-scale-in" : "invisible",
63
63
  className
64
64
  ),
65
+ dir: rest.dir ?? position.dir,
65
66
  style: { ...style, left: position.x, top: position.y },
66
67
  onMouseEnter: hover ? onHoverEnter : void 0,
67
68
  onMouseLeave: hover ? onHoverLeave : void 0,
@@ -117,5 +118,5 @@ var Popover = Object.assign(PopoverRoot, {
117
118
 
118
119
  exports.Popover = Popover;
119
120
  exports.usePopover = usePopover;
120
- //# sourceMappingURL=chunk-MKGWHSNV.cjs.map
121
- //# sourceMappingURL=chunk-MKGWHSNV.cjs.map
121
+ //# sourceMappingURL=chunk-JV2HEOCB.cjs.map
122
+ //# sourceMappingURL=chunk-JV2HEOCB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Popover/Popover.context.ts","../src/components/Popover/PopoverTrigger.tsx","../src/components/Popover/PopoverContent.tsx","../src/components/Popover/Popover.tsx"],"names":["createContext","useContext","jsx","cn","useRef","useFloatingPosition","useCallback","useOutsideClick","useEscapeKey","Portal","useState","useMemo"],"mappings":"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","file":"chunk-JV2HEOCB.cjs","sourcesContent":["import { createContext, useContext } from \"react\";\nimport type { PopoverContextValue } from \"./Popover.types\";\n\nexport const PopoverContext = createContext<PopoverContextValue | null>(null);\n\nexport function usePopover(): PopoverContextValue {\n const ctx = useContext(PopoverContext);\n if (!ctx) {\n throw new Error(\"Popover compound components must be used within <Popover>\");\n }\n return ctx;\n}\n","import { cn } from \"../../utils/cn\";\nimport { usePopover } from \"./Popover.context\";\nimport type { PopoverTriggerProps } from \"./Popover.types\";\n\nexport function PopoverTrigger({ children, className, ...rest }: PopoverTriggerProps) {\n const { setOpen, open, anchorRef, hover, onHoverEnter, onHoverLeave } = usePopover();\n\n return (\n <span\n {...rest}\n ref={anchorRef as React.RefObject<HTMLSpanElement>}\n data-react-fancy-popover-trigger=\"\"\n className={cn(\"inline-flex\", className)}\n onClick={hover ? undefined : () => setOpen(!open)}\n onMouseEnter={hover ? onHoverEnter : undefined}\n onMouseLeave={hover ? onHoverLeave : undefined}\n aria-expanded={open}\n aria-haspopup\n >\n {children}\n </span>\n );\n}\n\nPopoverTrigger.displayName = \"PopoverTrigger\";\n","import { useCallback, useRef } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport { Portal } from \"../Portal\";\nimport { usePopover } from \"./Popover.context\";\nimport { useFloatingPosition } from \"../../hooks/use-floating-position\";\nimport { useOutsideClick } from \"../../hooks/use-outside-click\";\nimport { useEscapeKey } from \"../../hooks/use-escape-key\";\nimport type { PopoverContentProps } from \"./Popover.types\";\n\nexport function PopoverContent({ children, className, style, ...rest }: PopoverContentProps) {\n const { open, setOpen, anchorRef, floatingRef, placement, offset, hover, onHoverEnter, onHoverLeave } = usePopover();\n const outsideRef = useRef<HTMLDivElement>(null);\n\n const position = useFloatingPosition(anchorRef, floatingRef, {\n placement,\n offset,\n enabled: open,\n });\n\n const close = useCallback(() => setOpen(false), [setOpen]);\n useOutsideClick(outsideRef, close, open && !hover, anchorRef);\n useEscapeKey(close, open);\n\n // Hide until position is calculated to prevent flash at (-9999, -9999)\n const positioned = position.x !== -9999 && position.y !== -9999;\n\n if (!open) return null;\n\n return (\n <Portal>\n <div\n {...rest}\n ref={(node) => {\n outsideRef.current = node;\n (floatingRef as React.MutableRefObject<HTMLDivElement | null>).current = node;\n }}\n data-react-fancy-popover=\"\"\n className={cn(\n \"fixed z-50 rounded-xl border border-[color:var(--fancy-border,var(--color-zinc-200))] bg-[color:var(--fancy-surface,var(--color-white))] p-4 text-zinc-700 shadow-lg dark:border-[color:var(--fancy-border-dark,var(--color-zinc-700))] dark:bg-[color:var(--fancy-surface-dark,var(--color-zinc-900))] dark:text-zinc-200 dark:shadow-zinc-950/50\",\n positioned ? \"fancy-scale-in\" : \"invisible\",\n className,\n )}\n dir={rest.dir ?? position.dir}\n style={{ ...style, left: position.x, top: position.y }}\n onMouseEnter={hover ? onHoverEnter : undefined}\n onMouseLeave={hover ? onHoverLeave : undefined}\n >\n {children}\n </div>\n </Portal>\n );\n}\n\nPopoverContent.displayName = \"PopoverContent\";\n","import { useCallback, useMemo, useRef, useState } from \"react\";\nimport { PopoverContext } from \"./Popover.context\";\nimport { PopoverTrigger } from \"./PopoverTrigger\";\nimport { PopoverContent } from \"./PopoverContent\";\nimport type { PopoverProps } from \"./Popover.types\";\n\nfunction PopoverRoot({\n children,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n placement = \"bottom\",\n offset = 8,\n hover = false,\n hoverDelay = 200,\n hoverCloseDelay = 300,\n}: PopoverProps) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen);\n const isControlled = controlledOpen !== undefined;\n const open = isControlled ? controlledOpen : internalOpen;\n\n const anchorRef = useRef<HTMLElement>(null);\n const floatingRef = useRef<HTMLDivElement>(null);\n const hoverTimeoutRef = useRef<ReturnType<typeof setTimeout>>(undefined);\n\n const setOpen = useCallback(\n (next: boolean) => {\n if (!isControlled) setInternalOpen(next);\n onOpenChange?.(next);\n },\n [isControlled, onOpenChange],\n );\n\n const onHoverEnter = useCallback(() => {\n if (!hover) return;\n clearTimeout(hoverTimeoutRef.current);\n hoverTimeoutRef.current = setTimeout(() => setOpen(true), hoverDelay);\n }, [hover, hoverDelay, setOpen]);\n\n const onHoverLeave = useCallback(() => {\n if (!hover) return;\n clearTimeout(hoverTimeoutRef.current);\n hoverTimeoutRef.current = setTimeout(() => setOpen(false), hoverCloseDelay);\n }, [hover, hoverCloseDelay, setOpen]);\n\n const ctx = useMemo(\n () => ({ open, setOpen, anchorRef, floatingRef, placement, offset, hover, onHoverEnter, onHoverLeave }),\n [open, setOpen, placement, offset, hover, onHoverEnter, onHoverLeave],\n );\n\n return (\n <PopoverContext.Provider value={ctx}>{children}</PopoverContext.Provider>\n );\n}\n\nexport const Popover = Object.assign(PopoverRoot, {\n Trigger: PopoverTrigger,\n Content: PopoverContent,\n});\n"]}
@@ -1,5 +1,5 @@
1
1
  import { useAcknowledgedSubmit } from './chunk-J6IQHJET.js';
2
- import { useInlinePaste, withSeparators, endsOf, InlinePasteEditor, PastedFilesInput } from './chunk-6PRXG7L6.js';
2
+ import { useInlinePaste, withSeparators, endsOf, InlinePasteEditor, PastedFilesInput } from './chunk-RSB2P3JK.js';
3
3
  import { visuallyHidden } from './chunk-I3LAFKJU.js';
4
4
  import { isImeComposing } from './chunk-S42OGG43.js';
5
5
  import { useControllableState } from './chunk-EDYAXGUM.js';
@@ -156,7 +156,7 @@ ${text}` : text);
156
156
  "aria-label": `Insert this pasted text, ${withSeparators(paste2.text.length)} characters`,
157
157
  "aria-describedby": `${paste2.id}-preview`,
158
158
  className: cn(
159
- "inline-flex items-center gap-1.5 rounded-full border border-[color:var(--fancy-border,var(--color-zinc-200))] bg-zinc-50 py-1 pl-2.5 pr-7 text-xs text-zinc-700 transition-colors hover:bg-zinc-100 dark:border-[color:var(--fancy-border-dark,var(--color-zinc-700))] dark:bg-zinc-800 dark:text-zinc-200 dark:hover:bg-zinc-700",
159
+ "inline-flex items-center gap-1.5 rounded-full border border-[color:var(--fancy-border,var(--color-zinc-200))] bg-zinc-50 py-1 ps-2.5 pe-7 text-xs text-zinc-700 transition-colors hover:bg-zinc-100 dark:border-[color:var(--fancy-border-dark,var(--color-zinc-700))] dark:bg-zinc-800 dark:text-zinc-200 dark:hover:bg-zinc-700",
160
160
  classNames?.pill,
161
161
  classNames?.textPill
162
162
  ),
@@ -176,7 +176,7 @@ ${text}` : text);
176
176
  disabled,
177
177
  "aria-label": "Discard this pasted text",
178
178
  className: cn(
179
- "absolute right-1 top-1/2 -translate-y-1/2 rounded-full px-1 text-xs text-zinc-400 transition-colors hover:text-zinc-700 dark:hover:text-zinc-100",
179
+ "absolute end-1 top-1/2 -translate-y-1/2 rounded-full px-1 text-xs text-zinc-400 transition-colors hover:text-zinc-700 dark:hover:text-zinc-100",
180
180
  classNames?.remove
181
181
  ),
182
182
  children: "\xD7"
@@ -189,7 +189,7 @@ ${text}` : text);
189
189
  "data-react-fancy-composer-paste-pill-preview": paste2.id,
190
190
  role: "tooltip",
191
191
  className: cn(
192
- "pointer-events-none absolute bottom-full left-0 z-10 mb-1 hidden max-w-xs whitespace-pre-wrap break-all rounded-md bg-zinc-900 px-2 py-1 text-xs text-white group-hover:block dark:bg-zinc-100 dark:text-zinc-900",
192
+ "pointer-events-none absolute bottom-full start-0 z-10 mb-1 hidden max-w-xs whitespace-pre-wrap break-all rounded-md bg-zinc-900 px-2 py-1 text-xs text-white group-hover:block dark:bg-zinc-100 dark:text-zinc-900",
193
193
  classNames?.preview
194
194
  ),
195
195
  children: renderPastePreview?.({ kind: "text", paste: paste2 }) ?? endsOf(paste2.text, previewChars)
@@ -279,5 +279,5 @@ function sameImages(a, b) {
279
279
  }
280
280
 
281
281
  export { Composer };
282
- //# sourceMappingURL=chunk-GDH43QH6.js.map
283
- //# sourceMappingURL=chunk-GDH43QH6.js.map
282
+ //# sourceMappingURL=chunk-KAKKZDCE.js.map
283
+ //# sourceMappingURL=chunk-KAKKZDCE.js.map