@anoki/fse-ui 1.0.0-beta1.44.1 → 1.0.0-beta1.44.2

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 (397) hide show
  1. package/dist/components/ui/SupportBanner/SupportBanner.css +1 -1
  2. package/dist/index.cjs255.js +1 -1
  3. package/dist/index.cjs256.js +1 -1
  4. package/dist/index.cjs257.js +1 -1
  5. package/dist/index.cjs285.js +1 -1
  6. package/dist/index.cjs290.js +1 -1
  7. package/dist/index.cjs298.js +1 -1
  8. package/dist/index.cjs316.js +1 -1
  9. package/dist/index.cjs32.js +1 -1
  10. package/dist/index.cjs33.js +1 -1
  11. package/dist/index.cjs347.js +1 -1
  12. package/dist/index.cjs365.js +1 -1
  13. package/dist/index.cjs366.js +1 -1
  14. package/dist/index.cjs388.js +1 -1
  15. package/dist/index.cjs406.js +1 -1
  16. package/dist/index.cjs437.js +1 -1
  17. package/dist/index.cjs453.js +1 -1
  18. package/dist/index.cjs457.js +1 -1
  19. package/dist/index.cjs457.js.map +1 -1
  20. package/dist/index.cjs458.js +2 -0
  21. package/dist/index.cjs458.js.map +1 -0
  22. package/dist/index.cjs459.js +2 -0
  23. package/dist/index.cjs459.js.map +1 -0
  24. package/dist/index.cjs460.js +1 -1
  25. package/dist/index.cjs460.js.map +1 -1
  26. package/dist/index.cjs461.js +1 -1
  27. package/dist/index.cjs461.js.map +1 -1
  28. package/dist/index.cjs462.js +1 -1
  29. package/dist/index.cjs462.js.map +1 -1
  30. package/dist/index.cjs463.js +1 -1
  31. package/dist/index.cjs463.js.map +1 -1
  32. package/dist/index.cjs464.js +1 -1
  33. package/dist/index.cjs464.js.map +1 -1
  34. package/dist/index.cjs468.js +1 -1
  35. package/dist/index.cjs469.js +1 -1
  36. package/dist/index.cjs473.js +1 -1
  37. package/dist/index.cjs473.js.map +1 -1
  38. package/dist/index.cjs474.js +1 -1
  39. package/dist/index.cjs475.js +1 -1
  40. package/dist/index.cjs475.js.map +1 -1
  41. package/dist/index.cjs476.js +1 -1
  42. package/dist/index.cjs476.js.map +1 -1
  43. package/dist/index.cjs477.js +1 -1
  44. package/dist/index.cjs478.js +1 -1
  45. package/dist/index.cjs479.js +1 -1
  46. package/dist/index.cjs483.js +1 -1
  47. package/dist/index.cjs497.js +1 -1
  48. package/dist/index.cjs497.js.map +1 -1
  49. package/dist/index.cjs498.js +1 -1
  50. package/dist/index.cjs498.js.map +1 -1
  51. package/dist/index.cjs499.js +1 -1
  52. package/dist/index.cjs499.js.map +1 -1
  53. package/dist/index.cjs500.js +2 -0
  54. package/dist/index.cjs500.js.map +1 -0
  55. package/dist/index.cjs501.js +2 -0
  56. package/dist/index.cjs501.js.map +1 -0
  57. package/dist/index.cjs502.js +2 -0
  58. package/dist/index.cjs502.js.map +1 -0
  59. package/dist/index.cjs508.js +1 -1
  60. package/dist/index.cjs510.js +1 -1
  61. package/dist/index.cjs511.js +1 -1
  62. package/dist/index.cjs516.js +1 -1
  63. package/dist/index.cjs517.js +1 -1
  64. package/dist/index.cjs518.js +1 -1
  65. package/dist/index.cjs520.js +1 -1
  66. package/dist/index.cjs520.js.map +1 -1
  67. package/dist/index.cjs521.js +1 -1
  68. package/dist/index.cjs521.js.map +1 -1
  69. package/dist/index.cjs522.js +1 -1
  70. package/dist/index.cjs522.js.map +1 -1
  71. package/dist/index.cjs523.js +1 -1
  72. package/dist/index.cjs523.js.map +1 -1
  73. package/dist/index.cjs524.js +38 -1
  74. package/dist/index.cjs524.js.map +1 -1
  75. package/dist/index.cjs525.js +1 -1
  76. package/dist/index.cjs525.js.map +1 -1
  77. package/dist/index.cjs526.js +1 -1
  78. package/dist/index.cjs526.js.map +1 -1
  79. package/dist/index.cjs527.js +1 -1
  80. package/dist/index.cjs527.js.map +1 -1
  81. package/dist/index.cjs528.js +1 -1
  82. package/dist/index.cjs528.js.map +1 -1
  83. package/dist/index.cjs529.js +1 -1
  84. package/dist/index.cjs529.js.map +1 -1
  85. package/dist/index.cjs530.js +1 -1
  86. package/dist/index.cjs530.js.map +1 -1
  87. package/dist/index.cjs531.js +1 -1
  88. package/dist/index.cjs531.js.map +1 -1
  89. package/dist/index.cjs532.js +1 -1
  90. package/dist/index.cjs532.js.map +1 -1
  91. package/dist/index.cjs533.js +1 -1
  92. package/dist/index.cjs533.js.map +1 -1
  93. package/dist/index.cjs534.js +1 -1
  94. package/dist/index.cjs534.js.map +1 -1
  95. package/dist/index.cjs535.js +1 -1
  96. package/dist/index.cjs535.js.map +1 -1
  97. package/dist/index.cjs536.js +1 -1
  98. package/dist/index.cjs536.js.map +1 -1
  99. package/dist/index.cjs537.js +1 -1
  100. package/dist/index.cjs537.js.map +1 -1
  101. package/dist/index.cjs538.js +1 -1
  102. package/dist/index.cjs538.js.map +1 -1
  103. package/dist/index.cjs539.js +1 -1
  104. package/dist/index.cjs539.js.map +1 -1
  105. package/dist/index.cjs540.js +1 -1
  106. package/dist/index.cjs540.js.map +1 -1
  107. package/dist/index.cjs541.js +1 -1
  108. package/dist/index.cjs541.js.map +1 -1
  109. package/dist/index.cjs542.js +1 -1
  110. package/dist/index.cjs542.js.map +1 -1
  111. package/dist/index.cjs543.js +1 -1
  112. package/dist/index.cjs543.js.map +1 -1
  113. package/dist/index.cjs544.js +1 -1
  114. package/dist/index.cjs544.js.map +1 -1
  115. package/dist/index.cjs545.js +1 -1
  116. package/dist/index.cjs545.js.map +1 -1
  117. package/dist/index.cjs546.js +1 -1
  118. package/dist/index.cjs546.js.map +1 -1
  119. package/dist/index.cjs547.js +1 -1
  120. package/dist/index.cjs547.js.map +1 -1
  121. package/dist/index.cjs548.js +1 -1
  122. package/dist/index.cjs548.js.map +1 -1
  123. package/dist/index.cjs549.js +1 -38
  124. package/dist/index.cjs549.js.map +1 -1
  125. package/dist/index.cjs550.js +1 -1
  126. package/dist/index.cjs550.js.map +1 -1
  127. package/dist/index.cjs551.js +1 -1
  128. package/dist/index.cjs551.js.map +1 -1
  129. package/dist/index.cjs552.js +1 -1
  130. package/dist/index.cjs552.js.map +1 -1
  131. package/dist/index.cjs553.js +1 -1
  132. package/dist/index.cjs553.js.map +1 -1
  133. package/dist/index.cjs554.js +1 -5
  134. package/dist/index.cjs554.js.map +1 -1
  135. package/dist/index.cjs555.js +1 -1
  136. package/dist/index.cjs555.js.map +1 -1
  137. package/dist/index.cjs556.js +5 -1
  138. package/dist/index.cjs556.js.map +1 -1
  139. package/dist/index.cjs557.js +1 -1
  140. package/dist/index.cjs557.js.map +1 -1
  141. package/dist/index.cjs558.js +1 -1
  142. package/dist/index.cjs558.js.map +1 -1
  143. package/dist/index.cjs559.js +1 -1
  144. package/dist/index.cjs559.js.map +1 -1
  145. package/dist/index.cjs560.js +1 -1
  146. package/dist/index.cjs560.js.map +1 -1
  147. package/dist/index.cjs561.js +1 -1
  148. package/dist/index.cjs561.js.map +1 -1
  149. package/dist/index.cjs562.js +1 -1
  150. package/dist/index.cjs562.js.map +1 -1
  151. package/dist/index.cjs563.js +1 -1
  152. package/dist/index.cjs563.js.map +1 -1
  153. package/dist/index.cjs564.js +1 -1
  154. package/dist/index.cjs564.js.map +1 -1
  155. package/dist/index.cjs565.js +1 -1
  156. package/dist/index.cjs565.js.map +1 -1
  157. package/dist/index.cjs566.js +1 -1
  158. package/dist/index.cjs566.js.map +1 -1
  159. package/dist/index.cjs567.js +2 -0
  160. package/dist/index.cjs567.js.map +1 -0
  161. package/dist/index.cjs568.js +2 -0
  162. package/dist/index.cjs568.js.map +1 -0
  163. package/dist/index.cjs576.js +1 -1
  164. package/dist/index.cjs576.js.map +1 -1
  165. package/dist/index.cjs577.js +1 -1
  166. package/dist/index.cjs577.js.map +1 -1
  167. package/dist/index.cjs578.js +1 -1
  168. package/dist/index.cjs578.js.map +1 -1
  169. package/dist/{index.cjs584.js → index.cjs579.js} +1 -1
  170. package/dist/{index.cjs584.js.map → index.cjs579.js.map} +1 -1
  171. package/dist/index.cjs580.js +2 -0
  172. package/dist/index.cjs580.js.map +1 -0
  173. package/dist/index.cjs581.js +2 -0
  174. package/dist/index.cjs581.js.map +1 -0
  175. package/dist/index.cjs582.js +2 -0
  176. package/dist/index.cjs582.js.map +1 -0
  177. package/dist/index.cjs587.js +1 -1
  178. package/dist/index.cjs587.js.map +1 -1
  179. package/dist/index.es255.js +1 -1
  180. package/dist/index.es256.js +2 -2
  181. package/dist/index.es257.js +2 -2
  182. package/dist/index.es285.js +7 -7
  183. package/dist/index.es290.js +1 -1
  184. package/dist/index.es298.js +5 -5
  185. package/dist/index.es316.js +6 -6
  186. package/dist/index.es32.js +1 -1
  187. package/dist/index.es33.js +1 -1
  188. package/dist/index.es347.js +5 -5
  189. package/dist/index.es365.js +6 -6
  190. package/dist/index.es366.js +2 -2
  191. package/dist/index.es388.js +3 -3
  192. package/dist/index.es406.js +8 -8
  193. package/dist/index.es437.js +1 -1
  194. package/dist/index.es453.js +1 -1
  195. package/dist/index.es457.js +7 -15
  196. package/dist/index.es457.js.map +1 -1
  197. package/dist/index.es458.js +30 -0
  198. package/dist/index.es458.js.map +1 -0
  199. package/dist/index.es459.js +71 -0
  200. package/dist/index.es459.js.map +1 -0
  201. package/dist/index.es460.js +51 -6
  202. package/dist/index.es460.js.map +1 -1
  203. package/dist/index.es461.js +33 -26
  204. package/dist/index.es461.js.map +1 -1
  205. package/dist/index.es462.js +617 -63
  206. package/dist/index.es462.js.map +1 -1
  207. package/dist/index.es463.js +10 -51
  208. package/dist/index.es463.js.map +1 -1
  209. package/dist/index.es464.js +15 -34
  210. package/dist/index.es464.js.map +1 -1
  211. package/dist/index.es468.js +1 -1
  212. package/dist/index.es469.js +2 -2
  213. package/dist/index.es473.js +131 -8
  214. package/dist/index.es473.js.map +1 -1
  215. package/dist/index.es474.js +1 -1
  216. package/dist/index.es475.js +9 -3
  217. package/dist/index.es475.js.map +1 -1
  218. package/dist/index.es476.js +2 -131
  219. package/dist/index.es476.js.map +1 -1
  220. package/dist/index.es477.js +4 -4
  221. package/dist/index.es478.js +3 -3
  222. package/dist/index.es479.js +2 -2
  223. package/dist/index.es483.js +1 -1
  224. package/dist/index.es497.js +3 -217
  225. package/dist/index.es497.js.map +1 -1
  226. package/dist/index.es498.js +41 -176
  227. package/dist/index.es498.js.map +1 -1
  228. package/dist/index.es499.js +13 -10
  229. package/dist/index.es499.js.map +1 -1
  230. package/dist/index.es500.js +221 -0
  231. package/dist/index.es500.js.map +1 -0
  232. package/dist/index.es501.js +184 -0
  233. package/dist/index.es501.js.map +1 -0
  234. package/dist/index.es502.js +14 -0
  235. package/dist/index.es502.js.map +1 -0
  236. package/dist/index.es508.js +1 -1
  237. package/dist/index.es510.js +1 -1
  238. package/dist/index.es511.js +3 -3
  239. package/dist/index.es516.js +1 -1
  240. package/dist/index.es517.js +2 -2
  241. package/dist/index.es518.js +4 -4
  242. package/dist/index.es520.js +527 -5
  243. package/dist/index.es520.js.map +1 -1
  244. package/dist/index.es521.js +127 -16
  245. package/dist/index.es521.js.map +1 -1
  246. package/dist/index.es522.js +129 -13
  247. package/dist/index.es522.js.map +1 -1
  248. package/dist/index.es523.js +60 -31
  249. package/dist/index.es523.js.map +1 -1
  250. package/dist/index.es524.js +69 -5
  251. package/dist/index.es524.js.map +1 -1
  252. package/dist/index.es525.js +9 -2
  253. package/dist/index.es525.js.map +1 -1
  254. package/dist/index.es526.js +14 -3
  255. package/dist/index.es526.js.map +1 -1
  256. package/dist/index.es527.js +62 -7
  257. package/dist/index.es527.js.map +1 -1
  258. package/dist/index.es528.js +5 -6
  259. package/dist/index.es528.js.map +1 -1
  260. package/dist/index.es529.js +16 -5
  261. package/dist/index.es529.js.map +1 -1
  262. package/dist/index.es530.js +12 -31
  263. package/dist/index.es530.js.map +1 -1
  264. package/dist/index.es531.js +31 -238
  265. package/dist/index.es531.js.map +1 -1
  266. package/dist/index.es532.js +5 -4
  267. package/dist/index.es532.js.map +1 -1
  268. package/dist/index.es533.js +2 -5
  269. package/dist/index.es533.js.map +1 -1
  270. package/dist/index.es534.js +3 -10
  271. package/dist/index.es534.js.map +1 -1
  272. package/dist/index.es535.js +6 -55
  273. package/dist/index.es535.js.map +1 -1
  274. package/dist/index.es536.js +6 -8
  275. package/dist/index.es536.js.map +1 -1
  276. package/dist/index.es537.js +5 -6
  277. package/dist/index.es537.js.map +1 -1
  278. package/dist/index.es538.js +31 -532
  279. package/dist/index.es538.js.map +1 -1
  280. package/dist/index.es539.js +243 -14
  281. package/dist/index.es539.js.map +1 -1
  282. package/dist/index.es540.js +4 -2
  283. package/dist/index.es540.js.map +1 -1
  284. package/dist/index.es541.js +4 -36
  285. package/dist/index.es541.js.map +1 -1
  286. package/dist/index.es542.js +10 -2
  287. package/dist/index.es542.js.map +1 -1
  288. package/dist/index.es543.js +47 -264
  289. package/dist/index.es543.js.map +1 -1
  290. package/dist/index.es544.js +8 -3
  291. package/dist/index.es544.js.map +1 -1
  292. package/dist/index.es545.js +6 -30
  293. package/dist/index.es545.js.map +1 -1
  294. package/dist/index.es546.js +506 -500
  295. package/dist/index.es546.js.map +1 -1
  296. package/dist/index.es547.js +14 -127
  297. package/dist/index.es547.js.map +1 -1
  298. package/dist/index.es548.js +2 -129
  299. package/dist/index.es548.js.map +1 -1
  300. package/dist/index.es549.js +36 -68
  301. package/dist/index.es549.js.map +1 -1
  302. package/dist/index.es550.js +2 -9
  303. package/dist/index.es550.js.map +1 -1
  304. package/dist/index.es551.js +271 -12
  305. package/dist/index.es551.js.map +1 -1
  306. package/dist/index.es552.js +3 -62
  307. package/dist/index.es552.js.map +1 -1
  308. package/dist/index.es553.js +29 -64
  309. package/dist/index.es553.js.map +1 -1
  310. package/dist/index.es554.js +3 -39
  311. package/dist/index.es554.js.map +1 -1
  312. package/dist/index.es555.js +23 -2
  313. package/dist/index.es555.js.map +1 -1
  314. package/dist/index.es556.js +39 -4
  315. package/dist/index.es556.js.map +1 -1
  316. package/dist/index.es557.js +2 -16
  317. package/dist/index.es557.js.map +1 -1
  318. package/dist/index.es558.js +5 -2
  319. package/dist/index.es558.js.map +1 -1
  320. package/dist/index.es559.js +2 -2
  321. package/dist/index.es559.js.map +1 -1
  322. package/dist/index.es560.js +2 -2
  323. package/dist/index.es560.js.map +1 -1
  324. package/dist/index.es561.js +2 -6
  325. package/dist/index.es561.js.map +1 -1
  326. package/dist/index.es562.js +6 -2
  327. package/dist/index.es562.js.map +1 -1
  328. package/dist/index.es563.js +16 -2
  329. package/dist/index.es563.js.map +1 -1
  330. package/dist/index.es564.js +2 -3
  331. package/dist/index.es564.js.map +1 -1
  332. package/dist/index.es565.js +2 -2
  333. package/dist/index.es565.js.map +1 -1
  334. package/dist/index.es566.js +3 -4
  335. package/dist/index.es566.js.map +1 -1
  336. package/dist/index.es567.js +5 -0
  337. package/dist/index.es567.js.map +1 -0
  338. package/dist/index.es568.js +7 -0
  339. package/dist/index.es568.js.map +1 -0
  340. package/dist/index.es576.js +13 -4
  341. package/dist/index.es576.js.map +1 -1
  342. package/dist/index.es577.js +28 -3
  343. package/dist/index.es577.js.map +1 -1
  344. package/dist/index.es578.js +5 -2
  345. package/dist/index.es578.js.map +1 -1
  346. package/dist/{index.es584.js → index.es579.js} +1 -1
  347. package/dist/{index.es584.js.map → index.es579.js.map} +1 -1
  348. package/dist/index.es580.js +7 -0
  349. package/dist/index.es580.js.map +1 -0
  350. package/dist/index.es581.js +6 -0
  351. package/dist/index.es581.js.map +1 -0
  352. package/dist/index.es582.js +5 -0
  353. package/dist/index.es582.js.map +1 -0
  354. package/dist/index.es587.js +5 -5
  355. package/dist/index.es587.js.map +1 -1
  356. package/package.json +1 -1
  357. package/dist/index.cjs465.js +0 -2
  358. package/dist/index.cjs465.js.map +0 -1
  359. package/dist/index.cjs466.js +0 -2
  360. package/dist/index.cjs466.js.map +0 -1
  361. package/dist/index.cjs494.js +0 -2
  362. package/dist/index.cjs494.js.map +0 -1
  363. package/dist/index.cjs495.js +0 -2
  364. package/dist/index.cjs495.js.map +0 -1
  365. package/dist/index.cjs496.js +0 -2
  366. package/dist/index.cjs496.js.map +0 -1
  367. package/dist/index.cjs574.js +0 -2
  368. package/dist/index.cjs574.js.map +0 -1
  369. package/dist/index.cjs575.js +0 -2
  370. package/dist/index.cjs575.js.map +0 -1
  371. package/dist/index.cjs583.js +0 -2
  372. package/dist/index.cjs583.js.map +0 -1
  373. package/dist/index.cjs585.js +0 -2
  374. package/dist/index.cjs585.js.map +0 -1
  375. package/dist/index.cjs586.js +0 -2
  376. package/dist/index.cjs586.js.map +0 -1
  377. package/dist/index.es465.js +0 -625
  378. package/dist/index.es465.js.map +0 -1
  379. package/dist/index.es466.js +0 -14
  380. package/dist/index.es466.js.map +0 -1
  381. package/dist/index.es494.js +0 -7
  382. package/dist/index.es494.js.map +0 -1
  383. package/dist/index.es495.js +0 -49
  384. package/dist/index.es495.js.map +0 -1
  385. package/dist/index.es496.js +0 -17
  386. package/dist/index.es496.js.map +0 -1
  387. package/dist/index.es574.js +0 -7
  388. package/dist/index.es574.js.map +0 -1
  389. package/dist/index.es575.js +0 -26
  390. package/dist/index.es575.js.map +0 -1
  391. package/dist/index.es583.js +0 -8
  392. package/dist/index.es583.js.map +0 -1
  393. package/dist/index.es585.js +0 -16
  394. package/dist/index.es585.js.map +0 -1
  395. package/dist/index.es586.js +0 -31
  396. package/dist/index.es586.js.map +0 -1
  397. /package/dist/components/ui/{CardMapDoctor/CardMapDoctor.css → CardMapDoctorV2/CardMapDoctorV2.css} +0 -0
@@ -1,530 +1,536 @@
1
- import { evaluate as T, getSideAxis as B, getSide as W, clamp as X, getOppositePlacement as ee, getExpandedPlacements as te, getOppositeAxisPlacements as ne, getAlignmentSides as ie, getAlignment as I, min as $, max as Y, getPaddingObject as K, rectToClientRect as _, getOppositeAxis as N, getAlignmentAxis as Q, sides as se, getAxisLength as U } from "./index.es547.js";
2
- function q(t, e, d) {
3
- let {
4
- reference: a,
5
- floating: r
6
- } = t;
7
- const n = B(e), o = Q(e), m = U(o), u = W(e), h = n === "y", c = a.x + a.width / 2 - r.width / 2, s = a.y + a.height / 2 - r.height / 2, f = a[m] / 2 - r[m] / 2;
8
- let i;
9
- switch (u) {
10
- case "top":
11
- i = {
12
- x: c,
13
- y: a.y - r.height
14
- };
15
- break;
16
- case "bottom":
17
- i = {
18
- x: c,
19
- y: a.y + a.height
20
- };
21
- break;
22
- case "right":
23
- i = {
24
- x: a.x + a.width,
25
- y: s
26
- };
27
- break;
28
- case "left":
29
- i = {
30
- x: a.x - r.width,
31
- y: s
32
- };
33
- break;
34
- default:
35
- i = {
36
- x: a.x,
37
- y: a.y
38
- };
39
- }
40
- switch (I(e)) {
41
- case "start":
42
- i[o] -= f * (d && h ? -1 : 1);
43
- break;
44
- case "end":
45
- i[o] += f * (d && h ? -1 : 1);
46
- break;
47
- }
48
- return i;
1
+ import * as c from "react";
2
+ import { Primitive as L } from "./index.es461.js";
3
+ import { Presence as O } from "./index.es469.js";
4
+ import { createContextScope as le } from "./index.es459.js";
5
+ import { useComposedRefs as T } from "./index.es458.js";
6
+ import { useCallbackRef as x } from "./index.es502.js";
7
+ import { useDirection as ce } from "./index.es499.js";
8
+ import { useLayoutEffect as se } from "./index.es497.js";
9
+ import { clamp as ie } from "./index.es580.js";
10
+ import { composeEventHandlers as C } from "./index.es457.js";
11
+ import { j as b } from "./index.es237.js";
12
+ function ae(e, t) {
13
+ return c.useReducer((r, l) => t[r][l] ?? r, e);
49
14
  }
50
- const ce = async (t, e, d) => {
51
- const {
52
- placement: a = "bottom",
53
- strategy: r = "absolute",
54
- middleware: n = [],
55
- platform: o
56
- } = d, m = n.filter(Boolean), u = await (o.isRTL == null ? void 0 : o.isRTL(e));
57
- let h = await o.getElementRects({
58
- reference: t,
59
- floating: e,
60
- strategy: r
61
- }), {
62
- x: c,
63
- y: s
64
- } = q(h, a, u), f = a, i = {}, l = 0;
65
- for (let g = 0; g < m.length; g++) {
15
+ var U = "ScrollArea", [F, De] = le(U), [de, v] = F(U), q = c.forwardRef(
16
+ (e, t) => {
66
17
  const {
67
- name: x,
68
- fn: A
69
- } = m[g], {
70
- x: v,
71
- y: p,
72
- data: y,
73
- reset: w
74
- } = await A({
75
- x: c,
76
- y: s,
77
- initialPlacement: a,
78
- placement: f,
79
- strategy: r,
80
- middlewareData: i,
81
- rects: h,
82
- platform: o,
83
- elements: {
84
- reference: t,
85
- floating: e
86
- }
87
- });
88
- c = v ?? c, s = p ?? s, i = {
89
- ...i,
90
- [x]: {
91
- ...i[x],
92
- ...y
18
+ __scopeScrollArea: r,
19
+ type: l = "hover",
20
+ dir: o,
21
+ scrollHideDelay: n = 600,
22
+ ...s
23
+ } = e, [i, a] = c.useState(null), [f, d] = c.useState(null), [h, u] = c.useState(null), [S, p] = c.useState(null), [A, Y] = c.useState(null), [P, _] = c.useState(0), [M, D] = c.useState(0), [j, y] = c.useState(!1), [W, H] = c.useState(!1), m = T(t, (R) => a(R)), w = ce(o);
24
+ return /* @__PURE__ */ b.jsx(
25
+ de,
26
+ {
27
+ scope: r,
28
+ type: l,
29
+ dir: w,
30
+ scrollHideDelay: n,
31
+ scrollArea: i,
32
+ viewport: f,
33
+ onViewportChange: d,
34
+ content: h,
35
+ onContentChange: u,
36
+ scrollbarX: S,
37
+ onScrollbarXChange: p,
38
+ scrollbarXEnabled: j,
39
+ onScrollbarXEnabledChange: y,
40
+ scrollbarY: A,
41
+ onScrollbarYChange: Y,
42
+ scrollbarYEnabled: W,
43
+ onScrollbarYEnabledChange: H,
44
+ onCornerWidthChange: _,
45
+ onCornerHeightChange: D,
46
+ children: /* @__PURE__ */ b.jsx(
47
+ L.div,
48
+ {
49
+ dir: w,
50
+ ...s,
51
+ ref: m,
52
+ style: {
53
+ position: "relative",
54
+ // Pass corner sizes as CSS vars to reduce re-renders of context consumers
55
+ "--radix-scroll-area-corner-width": P + "px",
56
+ "--radix-scroll-area-corner-height": M + "px",
57
+ ...e.style
58
+ }
59
+ }
60
+ )
93
61
  }
94
- }, w && l <= 50 && (l++, typeof w == "object" && (w.placement && (f = w.placement), w.rects && (h = w.rects === !0 ? await o.getElementRects({
95
- reference: t,
96
- floating: e,
97
- strategy: r
98
- }) : w.rects), {
99
- x: c,
100
- y: s
101
- } = q(h, f, u)), g = -1);
62
+ );
102
63
  }
103
- return {
104
- x: c,
105
- y: s,
106
- placement: f,
107
- strategy: r,
108
- middlewareData: i
109
- };
110
- };
111
- async function z(t, e) {
112
- var d;
113
- e === void 0 && (e = {});
114
- const {
115
- x: a,
116
- y: r,
117
- platform: n,
118
- rects: o,
119
- elements: m,
120
- strategy: u
121
- } = t, {
122
- boundary: h = "clippingAncestors",
123
- rootBoundary: c = "viewport",
124
- elementContext: s = "floating",
125
- altBoundary: f = !1,
126
- padding: i = 0
127
- } = T(e, t), l = K(i), x = m[f ? s === "floating" ? "reference" : "floating" : s], A = _(await n.getClippingRect({
128
- element: (d = await (n.isElement == null ? void 0 : n.isElement(x))) == null || d ? x : x.contextElement || await (n.getDocumentElement == null ? void 0 : n.getDocumentElement(m.floating)),
129
- boundary: h,
130
- rootBoundary: c,
131
- strategy: u
132
- })), v = s === "floating" ? {
133
- x: a,
134
- y: r,
135
- width: o.floating.width,
136
- height: o.floating.height
137
- } : o.reference, p = await (n.getOffsetParent == null ? void 0 : n.getOffsetParent(m.floating)), y = await (n.isElement == null ? void 0 : n.isElement(p)) ? await (n.getScale == null ? void 0 : n.getScale(p)) || {
138
- x: 1,
139
- y: 1
140
- } : {
141
- x: 1,
142
- y: 1
143
- }, w = _(n.convertOffsetParentRelativeRectToViewportRelativeRect ? await n.convertOffsetParentRelativeRectToViewportRelativeRect({
144
- elements: m,
145
- rect: v,
146
- offsetParent: p,
147
- strategy: u
148
- }) : v);
149
- return {
150
- top: (A.top - w.top + l.top) / y.y,
151
- bottom: (w.bottom - A.bottom + l.bottom) / y.y,
152
- left: (A.left - w.left + l.left) / y.x,
153
- right: (w.right - A.right + l.right) / y.x
64
+ );
65
+ q.displayName = U;
66
+ var $ = "ScrollAreaViewport", G = c.forwardRef(
67
+ (e, t) => {
68
+ const { __scopeScrollArea: r, children: l, nonce: o, ...n } = e, s = v($, r), i = c.useRef(null), a = T(t, i, s.onViewportChange);
69
+ return /* @__PURE__ */ b.jsxs(b.Fragment, { children: [
70
+ /* @__PURE__ */ b.jsx(
71
+ "style",
72
+ {
73
+ dangerouslySetInnerHTML: {
74
+ __html: "[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"
75
+ },
76
+ nonce: o
77
+ }
78
+ ),
79
+ /* @__PURE__ */ b.jsx(
80
+ L.div,
81
+ {
82
+ "data-radix-scroll-area-viewport": "",
83
+ ...n,
84
+ ref: a,
85
+ style: {
86
+ /**
87
+ * We don't support `visible` because the intention is to have at least one scrollbar
88
+ * if this component is used and `visible` will behave like `auto` in that case
89
+ * https://developer.mozilla.org/en-US/docs/Web/CSS/overflow#description
90
+ *
91
+ * We don't handle `auto` because the intention is for the native implementation
92
+ * to be hidden if using this component. We just want to ensure the node is scrollable
93
+ * so could have used either `scroll` or `auto` here. We picked `scroll` to prevent
94
+ * the browser from having to work out whether to render native scrollbars or not,
95
+ * we tell it to with the intention of hiding them in CSS.
96
+ */
97
+ overflowX: s.scrollbarXEnabled ? "scroll" : "hidden",
98
+ overflowY: s.scrollbarYEnabled ? "scroll" : "hidden",
99
+ ...e.style
100
+ },
101
+ children: /* @__PURE__ */ b.jsx("div", { ref: s.onContentChange, style: { minWidth: "100%", display: "table" }, children: l })
102
+ }
103
+ )
104
+ ] });
105
+ }
106
+ );
107
+ G.displayName = $;
108
+ var g = "ScrollAreaScrollbar", J = c.forwardRef(
109
+ (e, t) => {
110
+ const { forceMount: r, ...l } = e, o = v(g, e.__scopeScrollArea), { onScrollbarXEnabledChange: n, onScrollbarYEnabledChange: s } = o, i = e.orientation === "horizontal";
111
+ return c.useEffect(() => (i ? n(!0) : s(!0), () => {
112
+ i ? n(!1) : s(!1);
113
+ }), [i, n, s]), o.type === "hover" ? /* @__PURE__ */ b.jsx(ue, { ...l, ref: t, forceMount: r }) : o.type === "scroll" ? /* @__PURE__ */ b.jsx(fe, { ...l, ref: t, forceMount: r }) : o.type === "auto" ? /* @__PURE__ */ b.jsx(K, { ...l, ref: t, forceMount: r }) : o.type === "always" ? /* @__PURE__ */ b.jsx(V, { ...l, ref: t }) : null;
114
+ }
115
+ );
116
+ J.displayName = g;
117
+ var ue = c.forwardRef((e, t) => {
118
+ const { forceMount: r, ...l } = e, o = v(g, e.__scopeScrollArea), [n, s] = c.useState(!1);
119
+ return c.useEffect(() => {
120
+ const i = o.scrollArea;
121
+ let a = 0;
122
+ if (i) {
123
+ const f = () => {
124
+ window.clearTimeout(a), s(!0);
125
+ }, d = () => {
126
+ a = window.setTimeout(() => s(!1), o.scrollHideDelay);
127
+ };
128
+ return i.addEventListener("pointerenter", f), i.addEventListener("pointerleave", d), () => {
129
+ window.clearTimeout(a), i.removeEventListener("pointerenter", f), i.removeEventListener("pointerleave", d);
130
+ };
131
+ }
132
+ }, [o.scrollArea, o.scrollHideDelay]), /* @__PURE__ */ b.jsx(O, { present: r || n, children: /* @__PURE__ */ b.jsx(
133
+ K,
134
+ {
135
+ "data-state": n ? "visible" : "hidden",
136
+ ...l,
137
+ ref: t
138
+ }
139
+ ) });
140
+ }), fe = c.forwardRef((e, t) => {
141
+ const { forceMount: r, ...l } = e, o = v(g, e.__scopeScrollArea), n = e.orientation === "horizontal", s = X(() => a("SCROLL_END"), 100), [i, a] = ae("hidden", {
142
+ hidden: {
143
+ SCROLL: "scrolling"
144
+ },
145
+ scrolling: {
146
+ SCROLL_END: "idle",
147
+ POINTER_ENTER: "interacting"
148
+ },
149
+ interacting: {
150
+ SCROLL: "interacting",
151
+ POINTER_LEAVE: "idle"
152
+ },
153
+ idle: {
154
+ HIDE: "hidden",
155
+ SCROLL: "scrolling",
156
+ POINTER_ENTER: "interacting"
157
+ }
158
+ });
159
+ return c.useEffect(() => {
160
+ if (i === "idle") {
161
+ const f = window.setTimeout(() => a("HIDE"), o.scrollHideDelay);
162
+ return () => window.clearTimeout(f);
163
+ }
164
+ }, [i, o.scrollHideDelay, a]), c.useEffect(() => {
165
+ const f = o.viewport, d = n ? "scrollLeft" : "scrollTop";
166
+ if (f) {
167
+ let h = f[d];
168
+ const u = () => {
169
+ const S = f[d];
170
+ h !== S && (a("SCROLL"), s()), h = S;
171
+ };
172
+ return f.addEventListener("scroll", u), () => f.removeEventListener("scroll", u);
173
+ }
174
+ }, [o.viewport, n, a, s]), /* @__PURE__ */ b.jsx(O, { present: r || i !== "hidden", children: /* @__PURE__ */ b.jsx(
175
+ V,
176
+ {
177
+ "data-state": i === "hidden" ? "hidden" : "visible",
178
+ ...l,
179
+ ref: t,
180
+ onPointerEnter: C(e.onPointerEnter, () => a("POINTER_ENTER")),
181
+ onPointerLeave: C(e.onPointerLeave, () => a("POINTER_LEAVE"))
182
+ }
183
+ ) });
184
+ }), K = c.forwardRef((e, t) => {
185
+ const r = v(g, e.__scopeScrollArea), { forceMount: l, ...o } = e, [n, s] = c.useState(!1), i = e.orientation === "horizontal", a = X(() => {
186
+ if (r.viewport) {
187
+ const f = r.viewport.offsetWidth < r.viewport.scrollWidth, d = r.viewport.offsetHeight < r.viewport.scrollHeight;
188
+ s(i ? f : d);
189
+ }
190
+ }, 10);
191
+ return E(r.viewport, a), E(r.content, a), /* @__PURE__ */ b.jsx(O, { present: l || n, children: /* @__PURE__ */ b.jsx(
192
+ V,
193
+ {
194
+ "data-state": n ? "visible" : "hidden",
195
+ ...o,
196
+ ref: t
197
+ }
198
+ ) });
199
+ }), V = c.forwardRef((e, t) => {
200
+ const { orientation: r = "vertical", ...l } = e, o = v(g, e.__scopeScrollArea), n = c.useRef(null), s = c.useRef(0), [i, a] = c.useState({
201
+ content: 0,
202
+ viewport: 0,
203
+ scrollbar: { size: 0, paddingStart: 0, paddingEnd: 0 }
204
+ }), f = oe(i.viewport, i.content), d = {
205
+ ...l,
206
+ sizes: i,
207
+ onSizesChange: a,
208
+ hasThumb: f > 0 && f < 1,
209
+ onThumbChange: (u) => n.current = u,
210
+ onThumbPointerUp: () => s.current = 0,
211
+ onThumbPointerDown: (u) => s.current = u
154
212
  };
155
- }
156
- const le = (t) => ({
157
- name: "arrow",
158
- options: t,
159
- async fn(e) {
160
- const {
161
- x: d,
162
- y: a,
163
- placement: r,
164
- rects: n,
165
- platform: o,
166
- elements: m,
167
- middlewareData: u
168
- } = e, {
169
- element: h,
170
- padding: c = 0
171
- } = T(t, e) || {};
172
- if (h == null)
173
- return {};
174
- const s = K(c), f = {
175
- x: d,
176
- y: a
177
- }, i = Q(r), l = U(i), g = await o.getDimensions(h), x = i === "y", A = x ? "top" : "left", v = x ? "bottom" : "right", p = x ? "clientHeight" : "clientWidth", y = n.reference[l] + n.reference[i] - f[i] - n.floating[l], w = f[i] - n.reference[i], O = await (o.getOffsetParent == null ? void 0 : o.getOffsetParent(h));
178
- let P = O ? O[p] : 0;
179
- (!P || !await (o.isElement == null ? void 0 : o.isElement(O))) && (P = m.floating[p] || n.floating[l]);
180
- const M = y / 2 - w / 2, R = P / 2 - g[l] / 2 - 1, b = $(s[A], R), L = $(s[v], R), S = b, H = P - g[l] - L, k = P / 2 - g[l] / 2 + M, C = X(S, k, H), j = !u.arrow && I(r) != null && k !== C && n.reference[l] / 2 - (k < S ? b : L) - g[l] / 2 < 0, E = j ? k < S ? k - S : k - H : 0;
181
- return {
182
- [i]: f[i] + E,
183
- data: {
184
- [i]: C,
185
- centerOffset: k - C - E,
186
- ...j && {
187
- alignmentOffset: E
213
+ function h(u, S) {
214
+ return ve(u, s.current, i, S);
215
+ }
216
+ return r === "horizontal" ? /* @__PURE__ */ b.jsx(
217
+ he,
218
+ {
219
+ ...d,
220
+ ref: t,
221
+ onThumbPositionChange: () => {
222
+ if (o.viewport && n.current) {
223
+ const u = o.viewport.scrollLeft, S = B(u, i, o.dir);
224
+ n.current.style.transform = `translate3d(${S}px, 0, 0)`;
188
225
  }
189
226
  },
190
- reset: j
191
- };
192
- }
193
- }), re = function(t) {
194
- return t === void 0 && (t = {}), {
195
- name: "flip",
196
- options: t,
197
- async fn(e) {
198
- var d, a;
199
- const {
200
- placement: r,
201
- middlewareData: n,
202
- rects: o,
203
- initialPlacement: m,
204
- platform: u,
205
- elements: h
206
- } = e, {
207
- mainAxis: c = !0,
208
- crossAxis: s = !0,
209
- fallbackPlacements: f,
210
- fallbackStrategy: i = "bestFit",
211
- fallbackAxisSideDirection: l = "none",
212
- flipAlignment: g = !0,
213
- ...x
214
- } = T(t, e);
215
- if ((d = n.arrow) != null && d.alignmentOffset)
216
- return {};
217
- const A = W(r), v = B(m), p = W(m) === m, y = await (u.isRTL == null ? void 0 : u.isRTL(h.floating)), w = f || (p || !g ? [ee(m)] : te(m)), O = l !== "none";
218
- !f && O && w.push(...ne(m, g, l, y));
219
- const P = [m, ...w], M = await z(e, x), R = [];
220
- let b = ((a = n.flip) == null ? void 0 : a.overflows) || [];
221
- if (c && R.push(M[A]), s) {
222
- const C = ie(r, o, y);
223
- R.push(M[C[0]], M[C[1]]);
227
+ onWheelScroll: (u) => {
228
+ o.viewport && (o.viewport.scrollLeft = u);
229
+ },
230
+ onDragScroll: (u) => {
231
+ o.viewport && (o.viewport.scrollLeft = h(u, o.dir));
224
232
  }
225
- if (b = [...b, {
226
- placement: r,
227
- overflows: R
228
- }], !R.every((C) => C <= 0)) {
229
- var L, S;
230
- const C = (((L = n.flip) == null ? void 0 : L.index) || 0) + 1, j = P[C];
231
- if (j) {
232
- var H;
233
- const F = s === "alignment" ? v !== B(j) : !1, D = ((H = b[0]) == null ? void 0 : H.overflows[0]) > 0;
234
- if (!F || D)
235
- return {
236
- data: {
237
- index: C,
238
- overflows: b
239
- },
240
- reset: {
241
- placement: j
242
- }
243
- };
233
+ }
234
+ ) : r === "vertical" ? /* @__PURE__ */ b.jsx(
235
+ be,
236
+ {
237
+ ...d,
238
+ ref: t,
239
+ onThumbPositionChange: () => {
240
+ if (o.viewport && n.current) {
241
+ const u = o.viewport.scrollTop, S = B(u, i);
242
+ n.current.style.transform = `translate3d(0, ${S}px, 0)`;
244
243
  }
245
- let E = (S = b.filter((F) => F.overflows[0] <= 0).sort((F, D) => F.overflows[1] - D.overflows[1])[0]) == null ? void 0 : S.placement;
246
- if (!E)
247
- switch (i) {
248
- case "bestFit": {
249
- var k;
250
- const F = (k = b.filter((D) => {
251
- if (O) {
252
- const V = B(D.placement);
253
- return V === v || // Create a bias to the `y` side axis due to horizontal
254
- // reading directions favoring greater width.
255
- V === "y";
256
- }
257
- return !0;
258
- }).map((D) => [D.placement, D.overflows.filter((V) => V > 0).reduce((V, Z) => V + Z, 0)]).sort((D, V) => D[1] - V[1])[0]) == null ? void 0 : k[0];
259
- F && (E = F);
260
- break;
261
- }
262
- case "initialPlacement":
263
- E = m;
264
- break;
265
- }
266
- if (r !== E)
267
- return {
268
- reset: {
269
- placement: E
270
- }
271
- };
244
+ },
245
+ onWheelScroll: (u) => {
246
+ o.viewport && (o.viewport.scrollTop = u);
247
+ },
248
+ onDragScroll: (u) => {
249
+ o.viewport && (o.viewport.scrollTop = h(u));
272
250
  }
273
- return {};
274
251
  }
275
- };
276
- };
277
- function G(t, e) {
278
- return {
279
- top: t.top - e.height,
280
- right: t.right - e.width,
281
- bottom: t.bottom - e.height,
282
- left: t.left - e.width
283
- };
284
- }
285
- function J(t) {
286
- return se.some((e) => t[e] >= 0);
287
- }
288
- const fe = function(t) {
289
- return t === void 0 && (t = {}), {
290
- name: "hide",
291
- options: t,
292
- async fn(e) {
293
- const {
294
- rects: d
295
- } = e, {
296
- strategy: a = "referenceHidden",
297
- ...r
298
- } = T(t, e);
299
- switch (a) {
300
- case "referenceHidden": {
301
- const n = await z(e, {
302
- ...r,
303
- elementContext: "reference"
304
- }), o = G(n, d.reference);
305
- return {
306
- data: {
307
- referenceHiddenOffsets: o,
308
- referenceHidden: J(o)
309
- }
310
- };
252
+ ) : null;
253
+ }), he = c.forwardRef((e, t) => {
254
+ const { sizes: r, onSizesChange: l, ...o } = e, n = v(g, e.__scopeScrollArea), [s, i] = c.useState(), a = c.useRef(null), f = T(t, a, n.onScrollbarXChange);
255
+ return c.useEffect(() => {
256
+ a.current && i(getComputedStyle(a.current));
257
+ }, [a]), /* @__PURE__ */ b.jsx(
258
+ Z,
259
+ {
260
+ "data-orientation": "horizontal",
261
+ ...o,
262
+ ref: f,
263
+ sizes: r,
264
+ style: {
265
+ bottom: 0,
266
+ left: n.dir === "rtl" ? "var(--radix-scroll-area-corner-width)" : 0,
267
+ right: n.dir === "ltr" ? "var(--radix-scroll-area-corner-width)" : 0,
268
+ "--radix-scroll-area-thumb-width": I(r) + "px",
269
+ ...e.style
270
+ },
271
+ onThumbPointerDown: (d) => e.onThumbPointerDown(d.x),
272
+ onDragScroll: (d) => e.onDragScroll(d.x),
273
+ onWheelScroll: (d, h) => {
274
+ if (n.viewport) {
275
+ const u = n.viewport.scrollLeft + d.deltaX;
276
+ e.onWheelScroll(u), ne(u, h) && d.preventDefault();
311
277
  }
312
- case "escaped": {
313
- const n = await z(e, {
314
- ...r,
315
- altBoundary: !0
316
- }), o = G(n, d.floating);
317
- return {
318
- data: {
319
- escapedOffsets: o,
320
- escaped: J(o)
321
- }
322
- };
278
+ },
279
+ onResize: () => {
280
+ a.current && n.viewport && s && l({
281
+ content: n.viewport.scrollWidth,
282
+ viewport: n.viewport.offsetWidth,
283
+ scrollbar: {
284
+ size: a.current.clientWidth,
285
+ paddingStart: N(s.paddingLeft),
286
+ paddingEnd: N(s.paddingRight)
287
+ }
288
+ });
289
+ }
290
+ }
291
+ );
292
+ }), be = c.forwardRef((e, t) => {
293
+ const { sizes: r, onSizesChange: l, ...o } = e, n = v(g, e.__scopeScrollArea), [s, i] = c.useState(), a = c.useRef(null), f = T(t, a, n.onScrollbarYChange);
294
+ return c.useEffect(() => {
295
+ a.current && i(getComputedStyle(a.current));
296
+ }, [a]), /* @__PURE__ */ b.jsx(
297
+ Z,
298
+ {
299
+ "data-orientation": "vertical",
300
+ ...o,
301
+ ref: f,
302
+ sizes: r,
303
+ style: {
304
+ top: 0,
305
+ right: n.dir === "ltr" ? 0 : void 0,
306
+ left: n.dir === "rtl" ? 0 : void 0,
307
+ bottom: "var(--radix-scroll-area-corner-height)",
308
+ "--radix-scroll-area-thumb-height": I(r) + "px",
309
+ ...e.style
310
+ },
311
+ onThumbPointerDown: (d) => e.onThumbPointerDown(d.y),
312
+ onDragScroll: (d) => e.onDragScroll(d.y),
313
+ onWheelScroll: (d, h) => {
314
+ if (n.viewport) {
315
+ const u = n.viewport.scrollTop + d.deltaY;
316
+ e.onWheelScroll(u), ne(u, h) && d.preventDefault();
323
317
  }
324
- default:
325
- return {};
318
+ },
319
+ onResize: () => {
320
+ a.current && n.viewport && s && l({
321
+ content: n.viewport.scrollHeight,
322
+ viewport: n.viewport.offsetHeight,
323
+ scrollbar: {
324
+ size: a.current.clientHeight,
325
+ paddingStart: N(s.paddingTop),
326
+ paddingEnd: N(s.paddingBottom)
327
+ }
328
+ });
326
329
  }
327
330
  }
328
- };
329
- };
330
- async function oe(t, e) {
331
+ );
332
+ }), [Se, Q] = F(g), Z = c.forwardRef((e, t) => {
331
333
  const {
332
- placement: d,
333
- platform: a,
334
- elements: r
335
- } = t, n = await (a.isRTL == null ? void 0 : a.isRTL(r.floating)), o = W(d), m = I(d), u = B(d) === "y", h = ["left", "top"].includes(o) ? -1 : 1, c = n && u ? -1 : 1, s = T(e, t);
336
- let {
337
- mainAxis: f,
338
- crossAxis: i,
339
- alignmentAxis: l
340
- } = typeof s == "number" ? {
341
- mainAxis: s,
342
- crossAxis: 0,
343
- alignmentAxis: null
344
- } : {
345
- mainAxis: s.mainAxis || 0,
346
- crossAxis: s.crossAxis || 0,
347
- alignmentAxis: s.alignmentAxis
348
- };
349
- return m && typeof l == "number" && (i = m === "end" ? l * -1 : l), u ? {
350
- x: i * c,
351
- y: f * h
352
- } : {
353
- x: f * h,
354
- y: i * c
355
- };
356
- }
357
- const me = function(t) {
358
- return t === void 0 && (t = 0), {
359
- name: "offset",
360
- options: t,
361
- async fn(e) {
362
- var d, a;
363
- const {
364
- x: r,
365
- y: n,
366
- placement: o,
367
- middlewareData: m
368
- } = e, u = await oe(e, t);
369
- return o === ((d = m.offset) == null ? void 0 : d.placement) && (a = m.arrow) != null && a.alignmentOffset ? {} : {
370
- x: r + u.x,
371
- y: n + u.y,
372
- data: {
334
+ __scopeScrollArea: r,
335
+ sizes: l,
336
+ hasThumb: o,
337
+ onThumbChange: n,
338
+ onThumbPointerUp: s,
339
+ onThumbPointerDown: i,
340
+ onThumbPositionChange: a,
341
+ onDragScroll: f,
342
+ onWheelScroll: d,
343
+ onResize: h,
344
+ ...u
345
+ } = e, S = v(g, r), [p, A] = c.useState(null), Y = T(t, (m) => A(m)), P = c.useRef(null), _ = c.useRef(""), M = S.viewport, D = l.content - l.viewport, j = x(d), y = x(a), W = X(h, 10);
346
+ function H(m) {
347
+ if (P.current) {
348
+ const w = m.clientX - P.current.left, R = m.clientY - P.current.top;
349
+ f({ x: w, y: R });
350
+ }
351
+ }
352
+ return c.useEffect(() => {
353
+ const m = (w) => {
354
+ const R = w.target;
355
+ (p == null ? void 0 : p.contains(R)) && j(w, D);
356
+ };
357
+ return document.addEventListener("wheel", m, { passive: !1 }), () => document.removeEventListener("wheel", m, { passive: !1 });
358
+ }, [M, p, D, j]), c.useEffect(y, [l, y]), E(p, W), E(S.content, W), /* @__PURE__ */ b.jsx(
359
+ Se,
360
+ {
361
+ scope: r,
362
+ scrollbar: p,
363
+ hasThumb: o,
364
+ onThumbChange: x(n),
365
+ onThumbPointerUp: x(s),
366
+ onThumbPositionChange: y,
367
+ onThumbPointerDown: x(i),
368
+ children: /* @__PURE__ */ b.jsx(
369
+ L.div,
370
+ {
373
371
  ...u,
374
- placement: o
372
+ ref: Y,
373
+ style: { position: "absolute", ...u.style },
374
+ onPointerDown: C(e.onPointerDown, (m) => {
375
+ m.button === 0 && (m.target.setPointerCapture(m.pointerId), P.current = p.getBoundingClientRect(), _.current = document.body.style.webkitUserSelect, document.body.style.webkitUserSelect = "none", S.viewport && (S.viewport.style.scrollBehavior = "auto"), H(m));
376
+ }),
377
+ onPointerMove: C(e.onPointerMove, H),
378
+ onPointerUp: C(e.onPointerUp, (m) => {
379
+ const w = m.target;
380
+ w.hasPointerCapture(m.pointerId) && w.releasePointerCapture(m.pointerId), document.body.style.webkitUserSelect = _.current, S.viewport && (S.viewport.style.scrollBehavior = ""), P.current = null;
381
+ })
375
382
  }
376
- };
383
+ )
377
384
  }
378
- };
379
- }, de = function(t) {
380
- return t === void 0 && (t = {}), {
381
- name: "shift",
382
- options: t,
383
- async fn(e) {
384
- const {
385
- x: d,
386
- y: a,
387
- placement: r
388
- } = e, {
389
- mainAxis: n = !0,
390
- crossAxis: o = !1,
391
- limiter: m = {
392
- fn: (x) => {
393
- let {
394
- x: A,
395
- y: v
396
- } = x;
397
- return {
398
- x: A,
399
- y: v
400
- };
385
+ );
386
+ }), z = "ScrollAreaThumb", ee = c.forwardRef(
387
+ (e, t) => {
388
+ const { forceMount: r, ...l } = e, o = Q(z, e.__scopeScrollArea);
389
+ return /* @__PURE__ */ b.jsx(O, { present: r || o.hasThumb, children: /* @__PURE__ */ b.jsx(me, { ref: t, ...l }) });
390
+ }
391
+ ), me = c.forwardRef(
392
+ (e, t) => {
393
+ const { __scopeScrollArea: r, style: l, ...o } = e, n = v(z, r), s = Q(z, r), { onThumbPositionChange: i } = s, a = T(
394
+ t,
395
+ (h) => s.onThumbChange(h)
396
+ ), f = c.useRef(void 0), d = X(() => {
397
+ f.current && (f.current(), f.current = void 0);
398
+ }, 100);
399
+ return c.useEffect(() => {
400
+ const h = n.viewport;
401
+ if (h) {
402
+ const u = () => {
403
+ if (d(), !f.current) {
404
+ const S = we(h, i);
405
+ f.current = S, i();
401
406
  }
402
- },
403
- ...u
404
- } = T(t, e), h = {
405
- x: d,
406
- y: a
407
- }, c = await z(e, u), s = B(W(r)), f = N(s);
408
- let i = h[f], l = h[s];
409
- if (n) {
410
- const x = f === "y" ? "top" : "left", A = f === "y" ? "bottom" : "right", v = i + c[x], p = i - c[A];
411
- i = X(v, i, p);
412
- }
413
- if (o) {
414
- const x = s === "y" ? "top" : "left", A = s === "y" ? "bottom" : "right", v = l + c[x], p = l - c[A];
415
- l = X(v, l, p);
407
+ };
408
+ return i(), h.addEventListener("scroll", u), () => h.removeEventListener("scroll", u);
416
409
  }
417
- const g = m.fn({
418
- ...e,
419
- [f]: i,
420
- [s]: l
421
- });
422
- return {
423
- ...g,
424
- data: {
425
- x: g.x - d,
426
- y: g.y - a,
427
- enabled: {
428
- [f]: n,
429
- [s]: o
430
- }
431
- }
432
- };
433
- }
434
- };
435
- }, xe = function(t) {
436
- return t === void 0 && (t = {}), {
437
- options: t,
438
- fn(e) {
439
- const {
440
- x: d,
441
- y: a,
442
- placement: r,
443
- rects: n,
444
- middlewareData: o
445
- } = e, {
446
- offset: m = 0,
447
- mainAxis: u = !0,
448
- crossAxis: h = !0
449
- } = T(t, e), c = {
450
- x: d,
451
- y: a
452
- }, s = B(r), f = N(s);
453
- let i = c[f], l = c[s];
454
- const g = T(m, e), x = typeof g == "number" ? {
455
- mainAxis: g,
456
- crossAxis: 0
457
- } : {
458
- mainAxis: 0,
459
- crossAxis: 0,
460
- ...g
461
- };
462
- if (u) {
463
- const p = f === "y" ? "height" : "width", y = n.reference[f] - n.floating[p] + x.mainAxis, w = n.reference[f] + n.reference[p] - x.mainAxis;
464
- i < y ? i = y : i > w && (i = w);
410
+ }, [n.viewport, d, i]), /* @__PURE__ */ b.jsx(
411
+ L.div,
412
+ {
413
+ "data-state": s.hasThumb ? "visible" : "hidden",
414
+ ...o,
415
+ ref: a,
416
+ style: {
417
+ width: "var(--radix-scroll-area-thumb-width)",
418
+ height: "var(--radix-scroll-area-thumb-height)",
419
+ ...l
420
+ },
421
+ onPointerDownCapture: C(e.onPointerDownCapture, (h) => {
422
+ const S = h.target.getBoundingClientRect(), p = h.clientX - S.left, A = h.clientY - S.top;
423
+ s.onThumbPointerDown({ x: p, y: A });
424
+ }),
425
+ onPointerUp: C(e.onPointerUp, s.onThumbPointerUp)
465
426
  }
466
- if (h) {
467
- var A, v;
468
- const p = f === "y" ? "width" : "height", y = ["top", "left"].includes(W(r)), w = n.reference[s] - n.floating[p] + (y && ((A = o.offset) == null ? void 0 : A[s]) || 0) + (y ? 0 : x.crossAxis), O = n.reference[s] + n.reference[p] + (y ? 0 : ((v = o.offset) == null ? void 0 : v[s]) || 0) - (y ? x.crossAxis : 0);
469
- l < w ? l = w : l > O && (l = O);
427
+ );
428
+ }
429
+ );
430
+ ee.displayName = z;
431
+ var k = "ScrollAreaCorner", re = c.forwardRef(
432
+ (e, t) => {
433
+ const r = v(k, e.__scopeScrollArea), l = !!(r.scrollbarX && r.scrollbarY);
434
+ return r.type !== "scroll" && l ? /* @__PURE__ */ b.jsx(pe, { ...e, ref: t }) : null;
435
+ }
436
+ );
437
+ re.displayName = k;
438
+ var pe = c.forwardRef((e, t) => {
439
+ const { __scopeScrollArea: r, ...l } = e, o = v(k, r), [n, s] = c.useState(0), [i, a] = c.useState(0), f = !!(n && i);
440
+ return E(o.scrollbarX, () => {
441
+ var h;
442
+ const d = ((h = o.scrollbarX) == null ? void 0 : h.offsetHeight) || 0;
443
+ o.onCornerHeightChange(d), a(d);
444
+ }), E(o.scrollbarY, () => {
445
+ var h;
446
+ const d = ((h = o.scrollbarY) == null ? void 0 : h.offsetWidth) || 0;
447
+ o.onCornerWidthChange(d), s(d);
448
+ }), f ? /* @__PURE__ */ b.jsx(
449
+ L.div,
450
+ {
451
+ ...l,
452
+ ref: t,
453
+ style: {
454
+ width: n,
455
+ height: i,
456
+ position: "absolute",
457
+ right: o.dir === "ltr" ? 0 : void 0,
458
+ left: o.dir === "rtl" ? 0 : void 0,
459
+ bottom: 0,
460
+ ...e.style
470
461
  }
471
- return {
472
- [f]: i,
473
- [s]: l
474
- };
475
462
  }
463
+ ) : null;
464
+ });
465
+ function N(e) {
466
+ return e ? parseInt(e, 10) : 0;
467
+ }
468
+ function oe(e, t) {
469
+ const r = e / t;
470
+ return isNaN(r) ? 0 : r;
471
+ }
472
+ function I(e) {
473
+ const t = oe(e.viewport, e.content), r = e.scrollbar.paddingStart + e.scrollbar.paddingEnd, l = (e.scrollbar.size - r) * t;
474
+ return Math.max(l, 18);
475
+ }
476
+ function ve(e, t, r, l = "ltr") {
477
+ const o = I(r), n = o / 2, s = t || n, i = o - s, a = r.scrollbar.paddingStart + s, f = r.scrollbar.size - r.scrollbar.paddingEnd - i, d = r.content - r.viewport, h = l === "ltr" ? [0, d] : [d * -1, 0];
478
+ return te([a, f], h)(e);
479
+ }
480
+ function B(e, t, r = "ltr") {
481
+ const l = I(t), o = t.scrollbar.paddingStart + t.scrollbar.paddingEnd, n = t.scrollbar.size - o, s = t.content - t.viewport, i = n - l, a = r === "ltr" ? [0, s] : [s * -1, 0], f = ie(e, a);
482
+ return te([0, s], [0, i])(f);
483
+ }
484
+ function te(e, t) {
485
+ return (r) => {
486
+ if (e[0] === e[1] || t[0] === t[1]) return t[0];
487
+ const l = (t[1] - t[0]) / (e[1] - e[0]);
488
+ return t[0] + l * (r - e[0]);
476
489
  };
477
- }, ge = function(t) {
478
- return t === void 0 && (t = {}), {
479
- name: "size",
480
- options: t,
481
- async fn(e) {
482
- var d, a;
483
- const {
484
- placement: r,
485
- rects: n,
486
- platform: o,
487
- elements: m
488
- } = e, {
489
- apply: u = () => {
490
- },
491
- ...h
492
- } = T(t, e), c = await z(e, h), s = W(r), f = I(r), i = B(r) === "y", {
493
- width: l,
494
- height: g
495
- } = n.floating;
496
- let x, A;
497
- s === "top" || s === "bottom" ? (x = s, A = f === (await (o.isRTL == null ? void 0 : o.isRTL(m.floating)) ? "start" : "end") ? "left" : "right") : (A = s, x = f === "end" ? "top" : "bottom");
498
- const v = g - c.top - c.bottom, p = l - c.left - c.right, y = $(g - c[x], v), w = $(l - c[A], p), O = !e.middlewareData.shift;
499
- let P = y, M = w;
500
- if ((d = e.middlewareData.shift) != null && d.enabled.x && (M = p), (a = e.middlewareData.shift) != null && a.enabled.y && (P = v), O && !f) {
501
- const b = Y(c.left, 0), L = Y(c.right, 0), S = Y(c.top, 0), H = Y(c.bottom, 0);
502
- i ? M = l - 2 * (b !== 0 || L !== 0 ? b + L : Y(c.left, c.right)) : P = g - 2 * (S !== 0 || H !== 0 ? S + H : Y(c.top, c.bottom));
503
- }
504
- await u({
505
- ...e,
506
- availableWidth: M,
507
- availableHeight: P
490
+ }
491
+ function ne(e, t) {
492
+ return e > 0 && e < t;
493
+ }
494
+ var we = (e, t = () => {
495
+ }) => {
496
+ let r = { left: e.scrollLeft, top: e.scrollTop }, l = 0;
497
+ return function o() {
498
+ const n = { left: e.scrollLeft, top: e.scrollTop }, s = r.left !== n.left, i = r.top !== n.top;
499
+ (s || i) && t(), r = n, l = window.requestAnimationFrame(o);
500
+ }(), () => window.cancelAnimationFrame(l);
501
+ };
502
+ function X(e, t) {
503
+ const r = x(e), l = c.useRef(0);
504
+ return c.useEffect(() => () => window.clearTimeout(l.current), []), c.useCallback(() => {
505
+ window.clearTimeout(l.current), l.current = window.setTimeout(r, t);
506
+ }, [r, t]);
507
+ }
508
+ function E(e, t) {
509
+ const r = x(t);
510
+ se(() => {
511
+ let l = 0;
512
+ if (e) {
513
+ const o = new ResizeObserver(() => {
514
+ cancelAnimationFrame(l), l = window.requestAnimationFrame(r);
508
515
  });
509
- const R = await o.getDimensions(m.floating);
510
- return l !== R.width || g !== R.height ? {
511
- reset: {
512
- rects: !0
513
- }
514
- } : {};
516
+ return o.observe(e), () => {
517
+ window.cancelAnimationFrame(l), o.unobserve(e);
518
+ };
515
519
  }
516
- };
517
- };
520
+ }, [e, r]);
521
+ }
522
+ var je = q, We = G, He = J, ze = ee, Ne = re;
518
523
  export {
519
- le as arrow,
520
- ce as computePosition,
521
- z as detectOverflow,
522
- re as flip,
523
- fe as hide,
524
- xe as limitShift,
525
- me as offset,
526
- _ as rectToClientRect,
527
- de as shift,
528
- ge as size
524
+ Ne as Corner,
525
+ je as Root,
526
+ q as ScrollArea,
527
+ re as ScrollAreaCorner,
528
+ J as ScrollAreaScrollbar,
529
+ ee as ScrollAreaThumb,
530
+ G as ScrollAreaViewport,
531
+ He as Scrollbar,
532
+ ze as Thumb,
533
+ We as Viewport,
534
+ De as createScrollAreaScope
529
535
  };
530
536
  //# sourceMappingURL=index.es546.js.map