@stevederico/skateboard-ui 3.12.0 → 4.1.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 (339) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +37 -31
  3. package/dist/components/core/Command.js +33 -7
  4. package/dist/shadcn/ui/accordion.d.ts +1 -6
  5. package/dist/shadcn/ui/accordion.js +3 -17
  6. package/dist/shadcn/ui/alert-dialog.d.ts +1 -18
  7. package/dist/shadcn/ui/alert-dialog.js +3 -43
  8. package/dist/shadcn/ui/alert.d.ts +1 -13
  9. package/dist/shadcn/ui/alert.js +3 -28
  10. package/dist/shadcn/ui/aspect-ratio.d.ts +1 -4
  11. package/dist/shadcn/ui/aspect-ratio.js +3 -8
  12. package/dist/shadcn/ui/avatar.d.ts +1 -11
  13. package/dist/shadcn/ui/avatar.js +3 -24
  14. package/dist/shadcn/ui/badge.d.ts +1 -14
  15. package/dist/shadcn/ui/badge.js +3 -33
  16. package/dist/shadcn/ui/breadcrumb.d.ts +1 -10
  17. package/dist/shadcn/ui/breadcrumb.js +3 -37
  18. package/dist/shadcn/ui/button-group.d.ts +1 -13
  19. package/dist/shadcn/ui/button-group.js +3 -36
  20. package/dist/shadcn/ui/button.d.ts +1 -34
  21. package/dist/shadcn/ui/button.js +3 -53
  22. package/dist/shadcn/ui/calendar.d.ts +1 -13
  23. package/dist/shadcn/ui/calendar.js +3 -75
  24. package/dist/shadcn/ui/card.d.ts +1 -11
  25. package/dist/shadcn/ui/card.js +3 -25
  26. package/dist/shadcn/ui/checkbox.d.ts +1 -3
  27. package/dist/shadcn/ui/checkbox.js +3 -9
  28. package/dist/shadcn/ui/collapsible.d.ts +1 -5
  29. package/dist/shadcn/ui/collapsible.js +3 -13
  30. package/dist/shadcn/ui/command.d.ts +1 -19
  31. package/dist/shadcn/ui/command.js +3 -35
  32. package/dist/shadcn/ui/context-menu.d.ts +1 -29
  33. package/dist/shadcn/ui/context-menu.js +3 -52
  34. package/dist/shadcn/ui/dialog.d.ts +1 -17
  35. package/dist/shadcn/ui/dialog.js +3 -38
  36. package/dist/shadcn/ui/drawer.d.ts +1 -13
  37. package/dist/shadcn/ui/drawer.js +3 -196
  38. package/dist/shadcn/ui/dropdown-menu.d.ts +1 -29
  39. package/dist/shadcn/ui/dropdown-menu.js +3 -52
  40. package/dist/shadcn/ui/empty.d.ts +1 -14
  41. package/dist/shadcn/ui/empty.js +3 -33
  42. package/dist/shadcn/ui/field.d.ts +1 -28
  43. package/dist/shadcn/ui/field.js +3 -68
  44. package/dist/shadcn/ui/hover-card.d.ts +1 -5
  45. package/dist/shadcn/ui/hover-card.js +3 -14
  46. package/dist/shadcn/ui/input-group.d.ts +1 -28
  47. package/dist/shadcn/ui/input-group.js +3 -58
  48. package/dist/shadcn/ui/input.d.ts +1 -3
  49. package/dist/shadcn/ui/input.js +3 -8
  50. package/dist/shadcn/ui/item.d.ts +1 -34
  51. package/dist/shadcn/ui/item.js +3 -79
  52. package/dist/shadcn/ui/kbd.d.ts +1 -3
  53. package/dist/shadcn/ui/kbd.js +3 -9
  54. package/dist/shadcn/ui/label.d.ts +1 -3
  55. package/dist/shadcn/ui/label.js +3 -8
  56. package/dist/shadcn/ui/menubar.d.ts +1 -29
  57. package/dist/shadcn/ui/menubar.js +3 -57
  58. package/dist/shadcn/ui/navigation-menu.d.ts +1 -13
  59. package/dist/shadcn/ui/navigation-menu.js +3 -31
  60. package/dist/shadcn/ui/pagination.d.ts +1 -17
  61. package/dist/shadcn/ui/pagination.js +3 -27
  62. package/dist/shadcn/ui/popover.d.ts +1 -9
  63. package/dist/shadcn/ui/popover.js +3 -24
  64. package/dist/shadcn/ui/progress.d.ts +1 -7
  65. package/dist/shadcn/ui/progress.js +3 -20
  66. package/dist/shadcn/ui/radio-group.d.ts +1 -5
  67. package/dist/shadcn/ui/radio-group.js +3 -12
  68. package/dist/shadcn/ui/scroll-area.d.ts +1 -5
  69. package/dist/shadcn/ui/scroll-area.js +3 -12
  70. package/dist/shadcn/ui/select.d.ts +1 -15
  71. package/dist/shadcn/ui/select.js +3 -35
  72. package/dist/shadcn/ui/separator.d.ts +1 -3
  73. package/dist/shadcn/ui/separator.js +3 -8
  74. package/dist/shadcn/ui/sheet.d.ts +1 -14
  75. package/dist/shadcn/ui/sheet.js +3 -38
  76. package/dist/shadcn/ui/sidebar.d.ts +1 -70
  77. package/dist/shadcn/ui/sidebar.js +3 -256
  78. package/dist/shadcn/ui/skeleton.d.ts +1 -2
  79. package/dist/shadcn/ui/skeleton.js +3 -6
  80. package/dist/shadcn/ui/slider.d.ts +1 -3
  81. package/dist/shadcn/ui/slider.js +3 -12
  82. package/dist/shadcn/ui/spinner.d.ts +1 -2
  83. package/dist/shadcn/ui/spinner.js +3 -7
  84. package/dist/shadcn/ui/switch.d.ts +1 -5
  85. package/dist/shadcn/ui/switch.js +3 -8
  86. package/dist/shadcn/ui/table.d.ts +1 -10
  87. package/dist/shadcn/ui/table.js +3 -29
  88. package/dist/shadcn/ui/tabs.d.ts +1 -13
  89. package/dist/shadcn/ui/tabs.js +3 -29
  90. package/dist/shadcn/ui/textarea.d.ts +1 -3
  91. package/dist/shadcn/ui/textarea.js +3 -7
  92. package/dist/shadcn/ui/toggle-group.d.ts +1 -11
  93. package/dist/shadcn/ui/toggle-group.js +3 -25
  94. package/dist/shadcn/ui/toggle.d.ts +1 -15
  95. package/dist/shadcn/ui/toggle.js +3 -26
  96. package/dist/shadcn/ui/tooltip.d.ts +1 -6
  97. package/dist/shadcn/ui/tooltip.js +3 -17
  98. package/dist/ui/accordion.d.ts +21 -0
  99. package/dist/ui/accordion.js +67 -0
  100. package/dist/ui/alert-dialog.d.ts +32 -0
  101. package/dist/ui/alert-dialog.js +102 -0
  102. package/dist/ui/alert.d.ts +13 -0
  103. package/dist/ui/alert.js +28 -0
  104. package/dist/ui/aspect-ratio.d.ts +5 -0
  105. package/dist/ui/aspect-ratio.js +9 -0
  106. package/dist/ui/avatar.d.ts +14 -0
  107. package/dist/ui/avatar.js +49 -0
  108. package/dist/ui/badge.d.ts +22 -0
  109. package/dist/ui/badge.js +26 -0
  110. package/dist/ui/breadcrumb.d.ts +13 -0
  111. package/dist/ui/breadcrumb.js +29 -0
  112. package/dist/ui/button-group.d.ts +21 -0
  113. package/dist/ui/button-group.js +29 -0
  114. package/dist/ui/button.d.ts +38 -0
  115. package/dist/ui/button.js +49 -0
  116. package/dist/ui/calendar.d.ts +13 -0
  117. package/dist/ui/calendar.js +75 -0
  118. package/dist/ui/card.d.ts +11 -0
  119. package/dist/ui/card.js +25 -0
  120. package/dist/ui/checkbox.d.ts +17 -0
  121. package/dist/ui/checkbox.js +25 -0
  122. package/dist/ui/collapsible.d.ts +11 -0
  123. package/dist/ui/collapsible.js +40 -0
  124. package/dist/ui/command.d.ts +19 -0
  125. package/dist/ui/command.js +35 -0
  126. package/dist/ui/context-menu.d.ts +53 -0
  127. package/dist/ui/context-menu.js +372 -0
  128. package/dist/ui/dialog.d.ts +40 -0
  129. package/dist/ui/dialog.js +109 -0
  130. package/dist/ui/drawer.d.ts +36 -0
  131. package/dist/ui/drawer.js +243 -0
  132. package/dist/ui/dropdown-menu.d.ts +61 -0
  133. package/dist/ui/dropdown-menu.js +347 -0
  134. package/dist/ui/empty.d.ts +14 -0
  135. package/dist/ui/empty.js +33 -0
  136. package/dist/ui/field.d.ts +28 -0
  137. package/dist/ui/field.js +68 -0
  138. package/dist/ui/hover-card.d.ts +32 -0
  139. package/dist/ui/hover-card.js +119 -0
  140. package/dist/ui/input-group.d.ts +28 -0
  141. package/dist/ui/input-group.js +58 -0
  142. package/dist/ui/input.d.ts +3 -0
  143. package/dist/ui/input.js +7 -0
  144. package/dist/ui/item.d.ts +41 -0
  145. package/dist/ui/item.js +69 -0
  146. package/dist/ui/kbd.d.ts +4 -0
  147. package/dist/ui/kbd.js +10 -0
  148. package/dist/ui/label.d.ts +3 -0
  149. package/dist/ui/label.js +8 -0
  150. package/dist/ui/menubar.d.ts +59 -0
  151. package/dist/ui/menubar.js +397 -0
  152. package/dist/ui/navigation-menu.d.ts +24 -0
  153. package/dist/ui/navigation-menu.js +203 -0
  154. package/dist/ui/pagination.d.ts +17 -0
  155. package/dist/ui/pagination.js +36 -0
  156. package/dist/ui/popover.d.ts +25 -0
  157. package/dist/ui/popover.js +126 -0
  158. package/dist/ui/portal.d.ts +7 -0
  159. package/dist/ui/portal.js +12 -0
  160. package/dist/ui/progress.d.ts +15 -0
  161. package/dist/ui/progress.js +36 -0
  162. package/dist/ui/radio-group.d.ts +17 -0
  163. package/dist/ui/radio-group.js +66 -0
  164. package/dist/ui/scroll-area.d.ts +9 -0
  165. package/dist/ui/scroll-area.js +72 -0
  166. package/dist/ui/select.d.ts +37 -0
  167. package/dist/ui/select.js +226 -0
  168. package/dist/ui/separator.d.ts +14 -0
  169. package/dist/ui/separator.js +13 -0
  170. package/dist/ui/sheet.d.ts +31 -0
  171. package/dist/ui/sheet.js +121 -0
  172. package/dist/ui/sidebar.d.ts +86 -0
  173. package/dist/ui/sidebar.js +211 -0
  174. package/dist/ui/skeleton.d.ts +3 -0
  175. package/dist/ui/skeleton.js +7 -0
  176. package/dist/ui/slider.d.ts +18 -0
  177. package/dist/ui/slider.js +94 -0
  178. package/dist/ui/slot.d.ts +27 -0
  179. package/dist/ui/slot.js +62 -0
  180. package/dist/ui/spinner.d.ts +3 -0
  181. package/dist/ui/spinner.js +8 -0
  182. package/dist/ui/switch.d.ts +17 -0
  183. package/dist/ui/switch.js +23 -0
  184. package/dist/ui/table.d.ts +10 -0
  185. package/dist/ui/table.js +29 -0
  186. package/dist/ui/tabs.d.ts +29 -0
  187. package/dist/ui/tabs.js +96 -0
  188. package/dist/ui/textarea.d.ts +3 -0
  189. package/dist/ui/textarea.js +7 -0
  190. package/dist/ui/toggle-group.d.ts +23 -0
  191. package/dist/ui/toggle-group.js +52 -0
  192. package/dist/ui/toggle.d.ts +25 -0
  193. package/dist/ui/toggle.js +41 -0
  194. package/dist/ui/tooltip.d.ts +25 -0
  195. package/dist/ui/tooltip.js +90 -0
  196. package/dist/ui/use-controllable-state.d.ts +10 -0
  197. package/dist/ui/use-controllable-state.js +17 -0
  198. package/dist/ui/use-dismiss.d.ts +10 -0
  199. package/dist/ui/use-dismiss.js +51 -0
  200. package/dist/ui/use-floating.d.ts +42 -0
  201. package/dist/ui/use-floating.js +136 -0
  202. package/dist/ui/use-presence.d.ts +8 -0
  203. package/dist/ui/use-presence.js +48 -0
  204. package/dist/ui/use-typeahead.d.ts +19 -0
  205. package/dist/ui/use-typeahead.js +64 -0
  206. package/package.json +6 -1
  207. package/dist/shadcn/lib/base-ui/LICENSE +0 -21
  208. package/dist/shadcn/lib/base-ui/_chunk-000kmre8.js +0 -150
  209. package/dist/shadcn/lib/base-ui/_chunk-1vw45v38.js +0 -64
  210. package/dist/shadcn/lib/base-ui/_chunk-23rx7haq.js +0 -81
  211. package/dist/shadcn/lib/base-ui/_chunk-242gh8ph.js +0 -230
  212. package/dist/shadcn/lib/base-ui/_chunk-26cc610z.js +0 -6
  213. package/dist/shadcn/lib/base-ui/_chunk-2z044bba.js +0 -5890
  214. package/dist/shadcn/lib/base-ui/_chunk-3cpd1vjz.js +0 -13
  215. package/dist/shadcn/lib/base-ui/_chunk-3enq1vat.js +0 -82
  216. package/dist/shadcn/lib/base-ui/_chunk-3xpke33f.js +0 -23
  217. package/dist/shadcn/lib/base-ui/_chunk-451nqgsa.js +0 -6
  218. package/dist/shadcn/lib/base-ui/_chunk-4maf6pas.js +0 -11
  219. package/dist/shadcn/lib/base-ui/_chunk-4zhfq4d3.js +0 -16
  220. package/dist/shadcn/lib/base-ui/_chunk-5gaqyne5.js +0 -21
  221. package/dist/shadcn/lib/base-ui/_chunk-5tt5hk59.js +0 -4
  222. package/dist/shadcn/lib/base-ui/_chunk-5tze5c8q.js +0 -13
  223. package/dist/shadcn/lib/base-ui/_chunk-5xmdvndx.js +0 -225
  224. package/dist/shadcn/lib/base-ui/_chunk-6adaer33.js +0 -435
  225. package/dist/shadcn/lib/base-ui/_chunk-6ejf1z1r.js +0 -9
  226. package/dist/shadcn/lib/base-ui/_chunk-6kqramh9.js +0 -27
  227. package/dist/shadcn/lib/base-ui/_chunk-7b9dc493.js +0 -14
  228. package/dist/shadcn/lib/base-ui/_chunk-8a9vv8am.js +0 -89
  229. package/dist/shadcn/lib/base-ui/_chunk-8ctgmf06.js +0 -129
  230. package/dist/shadcn/lib/base-ui/_chunk-8ganmsbg.js +0 -54
  231. package/dist/shadcn/lib/base-ui/_chunk-8xaqxgck.js +0 -15
  232. package/dist/shadcn/lib/base-ui/_chunk-95tf2rxq.js +0 -62
  233. package/dist/shadcn/lib/base-ui/_chunk-9x63vfqj.js +0 -70
  234. package/dist/shadcn/lib/base-ui/_chunk-ase0ydtt.js +0 -9
  235. package/dist/shadcn/lib/base-ui/_chunk-b0nc8wq7.js +0 -34
  236. package/dist/shadcn/lib/base-ui/_chunk-b5ya6xds.js +0 -10
  237. package/dist/shadcn/lib/base-ui/_chunk-b6dkjkbw.js +0 -43
  238. package/dist/shadcn/lib/base-ui/_chunk-c2bz952e.js +0 -19
  239. package/dist/shadcn/lib/base-ui/_chunk-cdgfsr3q.js +0 -15
  240. package/dist/shadcn/lib/base-ui/_chunk-cdj8cpx5.js +0 -347
  241. package/dist/shadcn/lib/base-ui/_chunk-cgptgywc.js +0 -104
  242. package/dist/shadcn/lib/base-ui/_chunk-cwvtvwc7.js +0 -35
  243. package/dist/shadcn/lib/base-ui/_chunk-dan0mva4.js +0 -23
  244. package/dist/shadcn/lib/base-ui/_chunk-dzvjwv25.js +0 -0
  245. package/dist/shadcn/lib/base-ui/_chunk-e13rsb6b.js +0 -184
  246. package/dist/shadcn/lib/base-ui/_chunk-e56mpvk1.js +0 -118
  247. package/dist/shadcn/lib/base-ui/_chunk-e6k2ecs7.js +0 -48
  248. package/dist/shadcn/lib/base-ui/_chunk-ebyxgtb4.js +0 -29
  249. package/dist/shadcn/lib/base-ui/_chunk-f2wttwrf.js +0 -39
  250. package/dist/shadcn/lib/base-ui/_chunk-fdzctasg.js +0 -38
  251. package/dist/shadcn/lib/base-ui/_chunk-ffpjy0ta.js +0 -39
  252. package/dist/shadcn/lib/base-ui/_chunk-fqry7pew.js +0 -603
  253. package/dist/shadcn/lib/base-ui/_chunk-ghn1tzt8.js +0 -84
  254. package/dist/shadcn/lib/base-ui/_chunk-gy0bpkmx.js +0 -12
  255. package/dist/shadcn/lib/base-ui/_chunk-hm5h9vsk.js +0 -16
  256. package/dist/shadcn/lib/base-ui/_chunk-htdj1jps.js +0 -833
  257. package/dist/shadcn/lib/base-ui/_chunk-j29xjete.js +0 -146
  258. package/dist/shadcn/lib/base-ui/_chunk-j3qkyd10.js +0 -50
  259. package/dist/shadcn/lib/base-ui/_chunk-ktvsd5k6.js +0 -2386
  260. package/dist/shadcn/lib/base-ui/_chunk-kw8nnq00.js +0 -546
  261. package/dist/shadcn/lib/base-ui/_chunk-m307wpdj.js +0 -18
  262. package/dist/shadcn/lib/base-ui/_chunk-mnd0j7v9.js +0 -15
  263. package/dist/shadcn/lib/base-ui/_chunk-n11h505c.js +0 -32
  264. package/dist/shadcn/lib/base-ui/_chunk-p0e2qacz.js +0 -26
  265. package/dist/shadcn/lib/base-ui/_chunk-pv7b791x.js +0 -106
  266. package/dist/shadcn/lib/base-ui/_chunk-q5cg71p7.js +0 -83
  267. package/dist/shadcn/lib/base-ui/_chunk-qbezxj1g.js +0 -385
  268. package/dist/shadcn/lib/base-ui/_chunk-qmsqz6nt.js +0 -15
  269. package/dist/shadcn/lib/base-ui/_chunk-rrh8rt4v.js +0 -65
  270. package/dist/shadcn/lib/base-ui/_chunk-s5pwkz8v.js +0 -25
  271. package/dist/shadcn/lib/base-ui/_chunk-svxv97ph.js +0 -218
  272. package/dist/shadcn/lib/base-ui/_chunk-t7ppm3t0.js +0 -68
  273. package/dist/shadcn/lib/base-ui/_chunk-vg16xxmb.js +0 -52
  274. package/dist/shadcn/lib/base-ui/_chunk-vgkfmtbe.js +0 -21
  275. package/dist/shadcn/lib/base-ui/_chunk-watha94s.js +0 -14
  276. package/dist/shadcn/lib/base-ui/_chunk-wdqynnjf.js +0 -35
  277. package/dist/shadcn/lib/base-ui/_chunk-wx2nxg0p.js +0 -15
  278. package/dist/shadcn/lib/base-ui/_chunk-x11e1k9r.js +0 -0
  279. package/dist/shadcn/lib/base-ui/_chunk-x8xehj6d.js +0 -302
  280. package/dist/shadcn/lib/base-ui/_chunk-xcqbtm2f.js +0 -28
  281. package/dist/shadcn/lib/base-ui/_chunk-ytnp24gq.js +0 -328
  282. package/dist/shadcn/lib/base-ui/_chunk-yzr7eg4b.js +0 -6
  283. package/dist/shadcn/lib/base-ui/_chunk-zk4mtm9m.js +0 -9
  284. package/dist/shadcn/lib/base-ui/accordion.d.ts +0 -447
  285. package/dist/shadcn/lib/base-ui/accordion.js +0 -630
  286. package/dist/shadcn/lib/base-ui/alert-dialog.d.ts +0 -1467
  287. package/dist/shadcn/lib/base-ui/alert-dialog.js +0 -98
  288. package/dist/shadcn/lib/base-ui/avatar.d.ts +0 -123
  289. package/dist/shadcn/lib/base-ui/avatar.js +0 -235
  290. package/dist/shadcn/lib/base-ui/button.d.ts +0 -84
  291. package/dist/shadcn/lib/base-ui/button.js +0 -51
  292. package/dist/shadcn/lib/base-ui/checkbox.d.ts +0 -341
  293. package/dist/shadcn/lib/base-ui/checkbox.js +0 -501
  294. package/dist/shadcn/lib/base-ui/collapsible.d.ts +0 -291
  295. package/dist/shadcn/lib/base-ui/collapsible.js +0 -264
  296. package/dist/shadcn/lib/base-ui/context-menu.d.ts +0 -2213
  297. package/dist/shadcn/lib/base-ui/context-menu.js +0 -323
  298. package/dist/shadcn/lib/base-ui/dialog.d.ts +0 -1448
  299. package/dist/shadcn/lib/base-ui/dialog.js +0 -79
  300. package/dist/shadcn/lib/base-ui/input.d.ts +0 -506
  301. package/dist/shadcn/lib/base-ui/input.js +0 -1027
  302. package/dist/shadcn/lib/base-ui/menu.d.ts +0 -2275
  303. package/dist/shadcn/lib/base-ui/menu.js +0 -60
  304. package/dist/shadcn/lib/base-ui/menubar.d.ts +0 -48
  305. package/dist/shadcn/lib/base-ui/menubar.js +0 -156
  306. package/dist/shadcn/lib/base-ui/merge-props.d.ts +0 -70
  307. package/dist/shadcn/lib/base-ui/merge-props.js +0 -15
  308. package/dist/shadcn/lib/base-ui/navigation-menu.d.ts +0 -825
  309. package/dist/shadcn/lib/base-ui/navigation-menu.js +0 -1849
  310. package/dist/shadcn/lib/base-ui/popover.d.ts +0 -1743
  311. package/dist/shadcn/lib/base-ui/popover.js +0 -1089
  312. package/dist/shadcn/lib/base-ui/preview-card.d.ts +0 -1608
  313. package/dist/shadcn/lib/base-ui/preview-card.js +0 -919
  314. package/dist/shadcn/lib/base-ui/progress.d.ts +0 -172
  315. package/dist/shadcn/lib/base-ui/progress.js +0 -272
  316. package/dist/shadcn/lib/base-ui/radio-group.d.ts +0 -260
  317. package/dist/shadcn/lib/base-ui/radio-group.js +0 -239
  318. package/dist/shadcn/lib/base-ui/radio.d.ts +0 -176
  319. package/dist/shadcn/lib/base-ui/radio.js +0 -387
  320. package/dist/shadcn/lib/base-ui/scroll-area.d.ts +0 -241
  321. package/dist/shadcn/lib/base-ui/scroll-area.js +0 -1055
  322. package/dist/shadcn/lib/base-ui/select.d.ts +0 -1266
  323. package/dist/shadcn/lib/base-ui/select.js +0 -2450
  324. package/dist/shadcn/lib/base-ui/separator.d.ts +0 -76
  325. package/dist/shadcn/lib/base-ui/separator.js +0 -11
  326. package/dist/shadcn/lib/base-ui/slider.d.ts +0 -551
  327. package/dist/shadcn/lib/base-ui/slider.js +0 -1583
  328. package/dist/shadcn/lib/base-ui/switch.d.ts +0 -313
  329. package/dist/shadcn/lib/base-ui/switch.js +0 -326
  330. package/dist/shadcn/lib/base-ui/tabs.d.ts +0 -406
  331. package/dist/shadcn/lib/base-ui/tabs.js +0 -915
  332. package/dist/shadcn/lib/base-ui/toggle-group.d.ts +0 -235
  333. package/dist/shadcn/lib/base-ui/toggle-group.js +0 -145
  334. package/dist/shadcn/lib/base-ui/toggle.d.ts +0 -224
  335. package/dist/shadcn/lib/base-ui/toggle.js +0 -127
  336. package/dist/shadcn/lib/base-ui/tooltip.d.ts +0 -1656
  337. package/dist/shadcn/lib/base-ui/tooltip.js +0 -920
  338. package/dist/shadcn/lib/base-ui/use-render.d.ts +0 -87
  339. package/dist/shadcn/lib/base-ui/use-render.js +0 -15
@@ -1,1055 +0,0 @@
1
- /* @base-ui/react 1.5.0 — vendored (MIT — MUI Inc).
2
- * Refresh: scripts/vendor-base-ui.js (see header for instructions).
3
- * Do not edit by hand. */
4
- import {
5
- normalizeScrollOffset,
6
- styleDisableScrollbar
7
- } from "./_chunk-e6k2ecs7.js";
8
- import {
9
- clamp
10
- } from "./_chunk-yzr7eg4b.js";
11
- import {
12
- useCSPContext
13
- } from "./_chunk-watha94s.js";
14
- import {
15
- useDirection
16
- } from "./_chunk-gy0bpkmx.js";
17
- import {
18
- contains,
19
- getTarget
20
- } from "./_chunk-cgptgywc.js";
21
- import {
22
- isWebKit
23
- } from "./_chunk-rrh8rt4v.js";
24
- import {
25
- useTimeout
26
- } from "./_chunk-b6dkjkbw.js";
27
- import {
28
- addEventListener
29
- } from "./_chunk-ase0ydtt.js";
30
- import {
31
- useBaseUiId
32
- } from "./_chunk-wdqynnjf.js";
33
- import"./_chunk-6ejf1z1r.js";
34
- import"./_chunk-000kmre8.js";
35
- import {
36
- useStableCallback
37
- } from "./_chunk-cwvtvwc7.js";
38
- import {
39
- useIsoLayoutEffect
40
- } from "./_chunk-5tze5c8q.js";
41
- import {
42
- useRenderElement
43
- } from "./_chunk-x8xehj6d.js";
44
- import {
45
- __export
46
- } from "./_chunk-svxv97ph.js";
47
-
48
- // node_modules/@base-ui/react/esm/scroll-area/index.parts.js
49
- var exports_index_parts = {};
50
- __export(exports_index_parts, {
51
- Viewport: () => ScrollAreaViewport,
52
- Thumb: () => ScrollAreaThumb,
53
- Scrollbar: () => ScrollAreaScrollbar,
54
- Root: () => ScrollAreaRoot,
55
- Corner: () => ScrollAreaCorner,
56
- Content: () => ScrollAreaContent
57
- });
58
-
59
- // node_modules/@base-ui/react/esm/scroll-area/root/ScrollAreaRoot.js
60
- import * as React2 from "react";
61
-
62
- // node_modules/@base-ui/react/esm/scroll-area/root/ScrollAreaRootContext.js
63
- import * as React from "react";
64
- "use client";
65
- var ScrollAreaRootContext = /* @__PURE__ */ React.createContext(undefined);
66
- if (true)
67
- ScrollAreaRootContext.displayName = "ScrollAreaRootContext";
68
- function useScrollAreaRootContext() {
69
- const context = React.useContext(ScrollAreaRootContext);
70
- if (context === undefined) {
71
- throw new Error("Base UI: ScrollAreaRootContext is missing. ScrollArea parts must be placed within <ScrollArea.Root>.");
72
- }
73
- return context;
74
- }
75
-
76
- // node_modules/@base-ui/react/esm/scroll-area/root/ScrollAreaRootCssVars.js
77
- var ScrollAreaRootCssVars = /* @__PURE__ */ function(ScrollAreaRootCssVars2) {
78
- ScrollAreaRootCssVars2["scrollAreaCornerHeight"] = "--scroll-area-corner-height";
79
- ScrollAreaRootCssVars2["scrollAreaCornerWidth"] = "--scroll-area-corner-width";
80
- return ScrollAreaRootCssVars2;
81
- }({});
82
-
83
- // node_modules/@base-ui/react/esm/scroll-area/constants.js
84
- var SCROLL_TIMEOUT = 500;
85
- var MIN_THUMB_SIZE = 16;
86
-
87
- // node_modules/@base-ui/react/esm/scroll-area/utils/getOffset.js
88
- function getOffset(element, prop, axis) {
89
- if (!element) {
90
- return 0;
91
- }
92
- const styles = getComputedStyle(element);
93
- const propAxis = axis === "x" ? "Inline" : "Block";
94
- if (axis === "x" && prop === "margin") {
95
- return parseFloat(styles[`${prop}InlineStart`]) * 2;
96
- }
97
- return parseFloat(styles[`${prop}${propAxis}Start`]) + parseFloat(styles[`${prop}${propAxis}End`]);
98
- }
99
-
100
- // node_modules/@base-ui/react/esm/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.js
101
- var ScrollAreaScrollbarDataAttributes = /* @__PURE__ */ function(ScrollAreaScrollbarDataAttributes2) {
102
- ScrollAreaScrollbarDataAttributes2["orientation"] = "data-orientation";
103
- ScrollAreaScrollbarDataAttributes2["hovering"] = "data-hovering";
104
- ScrollAreaScrollbarDataAttributes2["scrolling"] = "data-scrolling";
105
- ScrollAreaScrollbarDataAttributes2["hasOverflowX"] = "data-has-overflow-x";
106
- ScrollAreaScrollbarDataAttributes2["hasOverflowY"] = "data-has-overflow-y";
107
- ScrollAreaScrollbarDataAttributes2["overflowXStart"] = "data-overflow-x-start";
108
- ScrollAreaScrollbarDataAttributes2["overflowXEnd"] = "data-overflow-x-end";
109
- ScrollAreaScrollbarDataAttributes2["overflowYStart"] = "data-overflow-y-start";
110
- ScrollAreaScrollbarDataAttributes2["overflowYEnd"] = "data-overflow-y-end";
111
- return ScrollAreaScrollbarDataAttributes2;
112
- }({});
113
-
114
- // node_modules/@base-ui/react/esm/scroll-area/root/ScrollAreaRootDataAttributes.js
115
- var ScrollAreaRootDataAttributes = /* @__PURE__ */ function(ScrollAreaRootDataAttributes2) {
116
- ScrollAreaRootDataAttributes2["scrolling"] = "data-scrolling";
117
- ScrollAreaRootDataAttributes2["hasOverflowX"] = "data-has-overflow-x";
118
- ScrollAreaRootDataAttributes2["hasOverflowY"] = "data-has-overflow-y";
119
- ScrollAreaRootDataAttributes2["overflowXStart"] = "data-overflow-x-start";
120
- ScrollAreaRootDataAttributes2["overflowXEnd"] = "data-overflow-x-end";
121
- ScrollAreaRootDataAttributes2["overflowYStart"] = "data-overflow-y-start";
122
- ScrollAreaRootDataAttributes2["overflowYEnd"] = "data-overflow-y-end";
123
- return ScrollAreaRootDataAttributes2;
124
- }({});
125
-
126
- // node_modules/@base-ui/react/esm/scroll-area/root/stateAttributes.js
127
- var scrollAreaStateAttributesMapping = {
128
- hasOverflowX: (value) => value ? {
129
- [ScrollAreaRootDataAttributes.hasOverflowX]: ""
130
- } : null,
131
- hasOverflowY: (value) => value ? {
132
- [ScrollAreaRootDataAttributes.hasOverflowY]: ""
133
- } : null,
134
- overflowXStart: (value) => value ? {
135
- [ScrollAreaRootDataAttributes.overflowXStart]: ""
136
- } : null,
137
- overflowXEnd: (value) => value ? {
138
- [ScrollAreaRootDataAttributes.overflowXEnd]: ""
139
- } : null,
140
- overflowYStart: (value) => value ? {
141
- [ScrollAreaRootDataAttributes.overflowYStart]: ""
142
- } : null,
143
- overflowYEnd: (value) => value ? {
144
- [ScrollAreaRootDataAttributes.overflowYEnd]: ""
145
- } : null,
146
- cornerHidden: () => null
147
- };
148
-
149
- // node_modules/@base-ui/react/esm/scroll-area/root/ScrollAreaRoot.js
150
- import { jsxs as _jsxs } from "react/jsx-runtime";
151
- "use client";
152
- var DEFAULT_COORDS = {
153
- x: 0,
154
- y: 0
155
- };
156
- var DEFAULT_SIZE = {
157
- width: 0,
158
- height: 0
159
- };
160
- var DEFAULT_OVERFLOW_EDGES = {
161
- xStart: false,
162
- xEnd: false,
163
- yStart: false,
164
- yEnd: false
165
- };
166
- var DEFAULT_HIDDEN_STATE = {
167
- x: true,
168
- y: true,
169
- corner: true
170
- };
171
- var ScrollAreaRoot = /* @__PURE__ */ React2.forwardRef(function ScrollAreaRoot2(componentProps, forwardedRef) {
172
- const {
173
- render,
174
- className,
175
- overflowEdgeThreshold: overflowEdgeThresholdProp,
176
- style,
177
- ...elementProps
178
- } = componentProps;
179
- const overflowEdgeThreshold = normalizeOverflowEdgeThreshold(overflowEdgeThresholdProp);
180
- const rootId = useBaseUiId();
181
- const scrollYTimeout = useTimeout();
182
- const scrollXTimeout = useTimeout();
183
- const {
184
- nonce,
185
- disableStyleElements
186
- } = useCSPContext();
187
- const [hovering, setHovering] = React2.useState(false);
188
- const [scrollingX, setScrollingX] = React2.useState(false);
189
- const [scrollingY, setScrollingY] = React2.useState(false);
190
- const [touchModality, setTouchModality] = React2.useState(false);
191
- const [hasMeasuredScrollbar, setHasMeasuredScrollbar] = React2.useState(false);
192
- const [cornerSize, setCornerSize] = React2.useState(DEFAULT_SIZE);
193
- const [thumbSize, setThumbSize] = React2.useState(DEFAULT_SIZE);
194
- const [overflowEdges, setOverflowEdges] = React2.useState(DEFAULT_OVERFLOW_EDGES);
195
- const [hiddenState, setHiddenState] = React2.useState(DEFAULT_HIDDEN_STATE);
196
- const rootRef = React2.useRef(null);
197
- const viewportRef = React2.useRef(null);
198
- const scrollbarYRef = React2.useRef(null);
199
- const scrollbarXRef = React2.useRef(null);
200
- const thumbYRef = React2.useRef(null);
201
- const thumbXRef = React2.useRef(null);
202
- const cornerRef = React2.useRef(null);
203
- const thumbDraggingRef = React2.useRef(false);
204
- const startYRef = React2.useRef(0);
205
- const startXRef = React2.useRef(0);
206
- const startScrollTopRef = React2.useRef(0);
207
- const startScrollLeftRef = React2.useRef(0);
208
- const currentOrientationRef = React2.useRef("vertical");
209
- const scrollPositionRef = React2.useRef(DEFAULT_COORDS);
210
- const handleScroll = useStableCallback((scrollPosition) => {
211
- const offsetX = scrollPosition.x - scrollPositionRef.current.x;
212
- const offsetY = scrollPosition.y - scrollPositionRef.current.y;
213
- scrollPositionRef.current = scrollPosition;
214
- if (offsetY !== 0) {
215
- setScrollingY(true);
216
- scrollYTimeout.start(SCROLL_TIMEOUT, () => {
217
- setScrollingY(false);
218
- });
219
- }
220
- if (offsetX !== 0) {
221
- setScrollingX(true);
222
- scrollXTimeout.start(SCROLL_TIMEOUT, () => {
223
- setScrollingX(false);
224
- });
225
- }
226
- });
227
- const handlePointerDown = useStableCallback((event) => {
228
- if (event.button !== 0) {
229
- return;
230
- }
231
- thumbDraggingRef.current = true;
232
- startYRef.current = event.clientY;
233
- startXRef.current = event.clientX;
234
- currentOrientationRef.current = event.currentTarget.getAttribute(ScrollAreaScrollbarDataAttributes.orientation);
235
- if (viewportRef.current) {
236
- startScrollTopRef.current = viewportRef.current.scrollTop;
237
- startScrollLeftRef.current = viewportRef.current.scrollLeft;
238
- }
239
- if (thumbYRef.current && currentOrientationRef.current === "vertical") {
240
- thumbYRef.current.setPointerCapture(event.pointerId);
241
- }
242
- if (thumbXRef.current && currentOrientationRef.current === "horizontal") {
243
- thumbXRef.current.setPointerCapture(event.pointerId);
244
- }
245
- });
246
- const handlePointerMove = useStableCallback((event) => {
247
- if (!thumbDraggingRef.current) {
248
- return;
249
- }
250
- const deltaY = event.clientY - startYRef.current;
251
- const deltaX = event.clientX - startXRef.current;
252
- if (viewportRef.current) {
253
- const scrollableContentHeight = viewportRef.current.scrollHeight;
254
- const viewportHeight = viewportRef.current.clientHeight;
255
- const scrollableContentWidth = viewportRef.current.scrollWidth;
256
- const viewportWidth = viewportRef.current.clientWidth;
257
- if (thumbYRef.current && scrollbarYRef.current && currentOrientationRef.current === "vertical") {
258
- const scrollbarYOffset = getOffset(scrollbarYRef.current, "padding", "y");
259
- const thumbYOffset = getOffset(thumbYRef.current, "margin", "y");
260
- const thumbHeight = thumbYRef.current.offsetHeight;
261
- const maxThumbOffsetY = scrollbarYRef.current.offsetHeight - thumbHeight - scrollbarYOffset - thumbYOffset;
262
- const scrollRatioY = deltaY / maxThumbOffsetY;
263
- viewportRef.current.scrollTop = startScrollTopRef.current + scrollRatioY * (scrollableContentHeight - viewportHeight);
264
- event.preventDefault();
265
- setScrollingY(true);
266
- scrollYTimeout.start(SCROLL_TIMEOUT, () => {
267
- setScrollingY(false);
268
- });
269
- }
270
- if (thumbXRef.current && scrollbarXRef.current && currentOrientationRef.current === "horizontal") {
271
- const scrollbarXOffset = getOffset(scrollbarXRef.current, "padding", "x");
272
- const thumbXOffset = getOffset(thumbXRef.current, "margin", "x");
273
- const thumbWidth = thumbXRef.current.offsetWidth;
274
- const maxThumbOffsetX = scrollbarXRef.current.offsetWidth - thumbWidth - scrollbarXOffset - thumbXOffset;
275
- const scrollRatioX = deltaX / maxThumbOffsetX;
276
- viewportRef.current.scrollLeft = startScrollLeftRef.current + scrollRatioX * (scrollableContentWidth - viewportWidth);
277
- event.preventDefault();
278
- setScrollingX(true);
279
- scrollXTimeout.start(SCROLL_TIMEOUT, () => {
280
- setScrollingX(false);
281
- });
282
- }
283
- }
284
- });
285
- const handlePointerUp = useStableCallback((event) => {
286
- thumbDraggingRef.current = false;
287
- if (thumbYRef.current && currentOrientationRef.current === "vertical") {
288
- thumbYRef.current.releasePointerCapture(event.pointerId);
289
- }
290
- if (thumbXRef.current && currentOrientationRef.current === "horizontal") {
291
- thumbXRef.current.releasePointerCapture(event.pointerId);
292
- }
293
- });
294
- function handleTouchModalityChange(event) {
295
- setTouchModality(event.pointerType === "touch");
296
- }
297
- function handlePointerEnterOrMove(event) {
298
- handleTouchModalityChange(event);
299
- if (event.pointerType !== "touch") {
300
- const isTargetRootChild = contains(rootRef.current, event.target);
301
- setHovering(isTargetRootChild);
302
- }
303
- }
304
- const state = React2.useMemo(() => ({
305
- scrolling: scrollingX || scrollingY,
306
- hasOverflowX: !hiddenState.x,
307
- hasOverflowY: !hiddenState.y,
308
- overflowXStart: overflowEdges.xStart,
309
- overflowXEnd: overflowEdges.xEnd,
310
- overflowYStart: overflowEdges.yStart,
311
- overflowYEnd: overflowEdges.yEnd,
312
- cornerHidden: hiddenState.corner
313
- }), [scrollingX, scrollingY, hiddenState.x, hiddenState.y, hiddenState.corner, overflowEdges]);
314
- const props = {
315
- role: "presentation",
316
- onPointerEnter: handlePointerEnterOrMove,
317
- onPointerMove: handlePointerEnterOrMove,
318
- onPointerDown: handleTouchModalityChange,
319
- onPointerLeave() {
320
- setHovering(false);
321
- },
322
- style: {
323
- position: "relative",
324
- [ScrollAreaRootCssVars.scrollAreaCornerHeight]: `${cornerSize.height}px`,
325
- [ScrollAreaRootCssVars.scrollAreaCornerWidth]: `${cornerSize.width}px`
326
- }
327
- };
328
- const element = useRenderElement("div", componentProps, {
329
- state,
330
- ref: [forwardedRef, rootRef],
331
- props: [props, elementProps],
332
- stateAttributesMapping: scrollAreaStateAttributesMapping
333
- });
334
- const contextValue = React2.useMemo(() => ({
335
- handlePointerDown,
336
- handlePointerMove,
337
- handlePointerUp,
338
- handleScroll,
339
- cornerSize,
340
- setCornerSize,
341
- thumbSize,
342
- setThumbSize,
343
- hasMeasuredScrollbar,
344
- setHasMeasuredScrollbar,
345
- touchModality,
346
- cornerRef,
347
- scrollingX,
348
- setScrollingX,
349
- scrollingY,
350
- setScrollingY,
351
- hovering,
352
- setHovering,
353
- viewportRef,
354
- rootRef,
355
- scrollbarYRef,
356
- scrollbarXRef,
357
- thumbYRef,
358
- thumbXRef,
359
- rootId,
360
- hiddenState,
361
- setHiddenState,
362
- overflowEdges,
363
- setOverflowEdges,
364
- viewportState: state,
365
- overflowEdgeThreshold
366
- }), [handlePointerDown, handlePointerMove, handlePointerUp, handleScroll, cornerSize, thumbSize, hasMeasuredScrollbar, touchModality, scrollingX, setScrollingX, scrollingY, setScrollingY, hovering, setHovering, rootId, hiddenState, overflowEdges, state, overflowEdgeThreshold]);
367
- return /* @__PURE__ */ _jsxs(ScrollAreaRootContext.Provider, {
368
- value: contextValue,
369
- children: [!disableStyleElements && styleDisableScrollbar.getElement(nonce), element]
370
- });
371
- });
372
- if (true)
373
- ScrollAreaRoot.displayName = "ScrollAreaRoot";
374
- function normalizeOverflowEdgeThreshold(threshold) {
375
- if (typeof threshold === "number") {
376
- const value = Math.max(0, threshold);
377
- return {
378
- xStart: value,
379
- xEnd: value,
380
- yStart: value,
381
- yEnd: value
382
- };
383
- }
384
- return {
385
- xStart: Math.max(0, threshold?.xStart || 0),
386
- xEnd: Math.max(0, threshold?.xEnd || 0),
387
- yStart: Math.max(0, threshold?.yStart || 0),
388
- yEnd: Math.max(0, threshold?.yEnd || 0)
389
- };
390
- }
391
- // node_modules/@base-ui/react/esm/scroll-area/viewport/ScrollAreaViewport.js
392
- import * as React4 from "react";
393
-
394
- // node_modules/@base-ui/react/esm/scroll-area/viewport/ScrollAreaViewportContext.js
395
- import * as React3 from "react";
396
- "use client";
397
- var ScrollAreaViewportContext = /* @__PURE__ */ React3.createContext(undefined);
398
- if (true)
399
- ScrollAreaViewportContext.displayName = "ScrollAreaViewportContext";
400
- function useScrollAreaViewportContext() {
401
- const context = React3.useContext(ScrollAreaViewportContext);
402
- if (context === undefined) {
403
- throw new Error("Base UI: ScrollAreaViewportContext missing. ScrollAreaViewport parts must be placed within <ScrollArea.Viewport>.");
404
- }
405
- return context;
406
- }
407
-
408
- // node_modules/@base-ui/react/esm/scroll-area/viewport/ScrollAreaViewportCssVars.js
409
- var ScrollAreaViewportCssVars = /* @__PURE__ */ function(ScrollAreaViewportCssVars2) {
410
- ScrollAreaViewportCssVars2["scrollAreaOverflowXStart"] = "--scroll-area-overflow-x-start";
411
- ScrollAreaViewportCssVars2["scrollAreaOverflowXEnd"] = "--scroll-area-overflow-x-end";
412
- ScrollAreaViewportCssVars2["scrollAreaOverflowYStart"] = "--scroll-area-overflow-y-start";
413
- ScrollAreaViewportCssVars2["scrollAreaOverflowYEnd"] = "--scroll-area-overflow-y-end";
414
- return ScrollAreaViewportCssVars2;
415
- }({});
416
-
417
- // node_modules/@base-ui/react/esm/scroll-area/viewport/ScrollAreaViewport.js
418
- import { jsx as _jsx } from "react/jsx-runtime";
419
- "use client";
420
- var scrollAreaOverflowVarsRegistered = false;
421
- function removeCSSVariableInheritance() {
422
- if (scrollAreaOverflowVarsRegistered || isWebKit) {
423
- return;
424
- }
425
- if (typeof CSS !== "undefined" && "registerProperty" in CSS) {
426
- [ScrollAreaViewportCssVars.scrollAreaOverflowXStart, ScrollAreaViewportCssVars.scrollAreaOverflowXEnd, ScrollAreaViewportCssVars.scrollAreaOverflowYStart, ScrollAreaViewportCssVars.scrollAreaOverflowYEnd].forEach((name) => {
427
- try {
428
- CSS.registerProperty({
429
- name,
430
- syntax: "<length>",
431
- inherits: false,
432
- initialValue: "0px"
433
- });
434
- } catch {}
435
- });
436
- }
437
- scrollAreaOverflowVarsRegistered = true;
438
- }
439
- var ScrollAreaViewport = /* @__PURE__ */ React4.forwardRef(function ScrollAreaViewport2(componentProps, forwardedRef) {
440
- const {
441
- render,
442
- className,
443
- style,
444
- ...elementProps
445
- } = componentProps;
446
- const {
447
- viewportRef,
448
- scrollbarYRef,
449
- scrollbarXRef,
450
- thumbYRef,
451
- thumbXRef,
452
- cornerRef,
453
- cornerSize,
454
- setCornerSize,
455
- setThumbSize,
456
- rootId,
457
- setHiddenState,
458
- hiddenState,
459
- setHasMeasuredScrollbar,
460
- handleScroll,
461
- setHovering,
462
- setOverflowEdges,
463
- overflowEdges,
464
- overflowEdgeThreshold,
465
- scrollingX,
466
- scrollingY
467
- } = useScrollAreaRootContext();
468
- const direction = useDirection();
469
- const programmaticScrollRef = React4.useRef(true);
470
- const lastMeasuredViewportMetricsRef = React4.useRef([NaN, NaN, NaN, NaN]);
471
- const scrollEndTimeout = useTimeout();
472
- const waitForAnimationsTimeout = useTimeout();
473
- const computeThumbPosition = useStableCallback(() => {
474
- const viewportEl = viewportRef.current;
475
- const scrollbarYEl = scrollbarYRef.current;
476
- const scrollbarXEl = scrollbarXRef.current;
477
- const thumbYEl = thumbYRef.current;
478
- const thumbXEl = thumbXRef.current;
479
- const cornerEl = cornerRef.current;
480
- if (!viewportEl) {
481
- return;
482
- }
483
- const scrollableContentHeight = viewportEl.scrollHeight;
484
- const scrollableContentWidth = viewportEl.scrollWidth;
485
- const viewportHeight = viewportEl.clientHeight;
486
- const viewportWidth = viewportEl.clientWidth;
487
- const scrollTop = viewportEl.scrollTop;
488
- const scrollLeft = viewportEl.scrollLeft;
489
- const lastMeasuredViewportMetrics = lastMeasuredViewportMetricsRef.current;
490
- const isFirstMeasurement = Number.isNaN(lastMeasuredViewportMetrics[0]);
491
- lastMeasuredViewportMetrics[0] = viewportHeight;
492
- lastMeasuredViewportMetrics[1] = scrollableContentHeight;
493
- lastMeasuredViewportMetrics[2] = viewportWidth;
494
- lastMeasuredViewportMetrics[3] = scrollableContentWidth;
495
- if (isFirstMeasurement) {
496
- setHasMeasuredScrollbar(true);
497
- }
498
- if (scrollableContentHeight === 0 || scrollableContentWidth === 0) {
499
- return;
500
- }
501
- const nextHiddenState = getHiddenState(viewportEl);
502
- const scrollbarYHidden = nextHiddenState.y;
503
- const scrollbarXHidden = nextHiddenState.x;
504
- const ratioX = viewportWidth / scrollableContentWidth;
505
- const ratioY = viewportHeight / scrollableContentHeight;
506
- const maxScrollLeft = Math.max(0, scrollableContentWidth - viewportWidth);
507
- const maxScrollTop = Math.max(0, scrollableContentHeight - viewportHeight);
508
- let scrollLeftFromStart = 0;
509
- let scrollLeftFromEnd = 0;
510
- if (!scrollbarXHidden) {
511
- let rawScrollLeftFromStart = 0;
512
- if (direction === "rtl") {
513
- rawScrollLeftFromStart = clamp(-scrollLeft, 0, maxScrollLeft);
514
- } else {
515
- rawScrollLeftFromStart = clamp(scrollLeft, 0, maxScrollLeft);
516
- }
517
- scrollLeftFromStart = normalizeScrollOffset(rawScrollLeftFromStart, maxScrollLeft);
518
- scrollLeftFromEnd = maxScrollLeft - scrollLeftFromStart;
519
- }
520
- const rawScrollTopFromStart = !scrollbarYHidden ? clamp(scrollTop, 0, maxScrollTop) : 0;
521
- const scrollTopFromStart = !scrollbarYHidden ? normalizeScrollOffset(rawScrollTopFromStart, maxScrollTop) : 0;
522
- const scrollTopFromEnd = !scrollbarYHidden ? maxScrollTop - scrollTopFromStart : 0;
523
- const nextWidth = scrollbarXHidden ? 0 : viewportWidth;
524
- const nextHeight = scrollbarYHidden ? 0 : viewportHeight;
525
- let nextCornerWidth = 0;
526
- let nextCornerHeight = 0;
527
- if (!scrollbarXHidden && !scrollbarYHidden) {
528
- nextCornerWidth = scrollbarYEl?.offsetWidth || 0;
529
- nextCornerHeight = scrollbarXEl?.offsetHeight || 0;
530
- }
531
- const cornerNotYetSized = cornerSize.width === 0 && cornerSize.height === 0;
532
- const cornerWidthOffset = cornerNotYetSized ? nextCornerWidth : 0;
533
- const cornerHeightOffset = cornerNotYetSized ? nextCornerHeight : 0;
534
- const scrollbarXOffset = getOffset(scrollbarXEl, "padding", "x");
535
- const scrollbarYOffset = getOffset(scrollbarYEl, "padding", "y");
536
- const thumbXOffset = getOffset(thumbXEl, "margin", "x");
537
- const thumbYOffset = getOffset(thumbYEl, "margin", "y");
538
- const idealNextWidth = nextWidth - scrollbarXOffset - thumbXOffset;
539
- const idealNextHeight = nextHeight - scrollbarYOffset - thumbYOffset;
540
- const maxNextWidth = scrollbarXEl ? Math.min(scrollbarXEl.offsetWidth - cornerWidthOffset, idealNextWidth) : idealNextWidth;
541
- const maxNextHeight = scrollbarYEl ? Math.min(scrollbarYEl.offsetHeight - cornerHeightOffset, idealNextHeight) : idealNextHeight;
542
- const clampedNextWidth = Math.max(MIN_THUMB_SIZE, maxNextWidth * ratioX);
543
- const clampedNextHeight = Math.max(MIN_THUMB_SIZE, maxNextHeight * ratioY);
544
- setThumbSize((prevSize) => {
545
- if (prevSize.height === clampedNextHeight && prevSize.width === clampedNextWidth) {
546
- return prevSize;
547
- }
548
- return {
549
- width: clampedNextWidth,
550
- height: clampedNextHeight
551
- };
552
- });
553
- if (scrollbarYEl && thumbYEl) {
554
- const maxThumbOffsetY = scrollbarYEl.offsetHeight - clampedNextHeight - scrollbarYOffset - thumbYOffset;
555
- const scrollRangeY = scrollableContentHeight - viewportHeight;
556
- const scrollRatioY = scrollRangeY === 0 ? 0 : scrollTop / scrollRangeY;
557
- const thumbOffsetY = Math.min(maxThumbOffsetY, Math.max(0, scrollRatioY * maxThumbOffsetY));
558
- thumbYEl.style.transform = `translate3d(0,${thumbOffsetY}px,0)`;
559
- }
560
- if (scrollbarXEl && thumbXEl) {
561
- const maxThumbOffsetX = scrollbarXEl.offsetWidth - clampedNextWidth - scrollbarXOffset - thumbXOffset;
562
- const scrollRangeX = scrollableContentWidth - viewportWidth;
563
- const scrollRatioX = scrollRangeX === 0 ? 0 : scrollLeft / scrollRangeX;
564
- const thumbOffsetX = direction === "rtl" ? clamp(scrollRatioX * maxThumbOffsetX, -maxThumbOffsetX, 0) : clamp(scrollRatioX * maxThumbOffsetX, 0, maxThumbOffsetX);
565
- thumbXEl.style.transform = `translate3d(${thumbOffsetX}px,0,0)`;
566
- }
567
- const overflowMetricsPx = [[ScrollAreaViewportCssVars.scrollAreaOverflowXStart, scrollLeftFromStart], [ScrollAreaViewportCssVars.scrollAreaOverflowXEnd, scrollLeftFromEnd], [ScrollAreaViewportCssVars.scrollAreaOverflowYStart, scrollTopFromStart], [ScrollAreaViewportCssVars.scrollAreaOverflowYEnd, scrollTopFromEnd]];
568
- for (const [cssVar, value] of overflowMetricsPx) {
569
- viewportEl.style.setProperty(cssVar, `${value}px`);
570
- }
571
- if (cornerEl) {
572
- if (scrollbarXHidden || scrollbarYHidden) {
573
- setCornerSize({
574
- width: 0,
575
- height: 0
576
- });
577
- } else if (!scrollbarXHidden && !scrollbarYHidden) {
578
- setCornerSize({
579
- width: nextCornerWidth,
580
- height: nextCornerHeight
581
- });
582
- }
583
- }
584
- setHiddenState((prevState) => mergeHiddenState(prevState, nextHiddenState));
585
- const nextOverflowEdges = {
586
- xStart: !scrollbarXHidden && scrollLeftFromStart > overflowEdgeThreshold.xStart,
587
- xEnd: !scrollbarXHidden && scrollLeftFromEnd > overflowEdgeThreshold.xEnd,
588
- yStart: !scrollbarYHidden && scrollTopFromStart > overflowEdgeThreshold.yStart,
589
- yEnd: !scrollbarYHidden && scrollTopFromEnd > overflowEdgeThreshold.yEnd
590
- };
591
- setOverflowEdges((prev) => {
592
- if (prev.xStart === nextOverflowEdges.xStart && prev.xEnd === nextOverflowEdges.xEnd && prev.yStart === nextOverflowEdges.yStart && prev.yEnd === nextOverflowEdges.yEnd) {
593
- return prev;
594
- }
595
- return nextOverflowEdges;
596
- });
597
- });
598
- useIsoLayoutEffect(() => {
599
- if (!viewportRef.current) {
600
- return;
601
- }
602
- removeCSSVariableInheritance();
603
- }, [viewportRef]);
604
- useIsoLayoutEffect(() => {
605
- queueMicrotask(computeThumbPosition);
606
- }, [computeThumbPosition, hiddenState, direction]);
607
- useIsoLayoutEffect(() => {
608
- if (viewportRef.current?.matches(":hover")) {
609
- setHovering(true);
610
- }
611
- }, [viewportRef, setHovering]);
612
- React4.useEffect(() => {
613
- const viewport = viewportRef.current;
614
- if (typeof ResizeObserver === "undefined" || !viewport) {
615
- return;
616
- }
617
- let hasInitialized = false;
618
- const resizeObserver = new ResizeObserver(() => {
619
- if (!hasInitialized) {
620
- hasInitialized = true;
621
- const lastMeasuredViewportMetrics = lastMeasuredViewportMetricsRef.current;
622
- if (lastMeasuredViewportMetrics[0] === viewport.clientHeight && lastMeasuredViewportMetrics[1] === viewport.scrollHeight && lastMeasuredViewportMetrics[2] === viewport.clientWidth && lastMeasuredViewportMetrics[3] === viewport.scrollWidth) {
623
- return;
624
- }
625
- }
626
- computeThumbPosition();
627
- });
628
- resizeObserver.observe(viewport);
629
- waitForAnimationsTimeout.start(0, () => {
630
- const animations = viewport.getAnimations({
631
- subtree: true
632
- });
633
- if (animations.length === 0) {
634
- return;
635
- }
636
- Promise.allSettled(animations.map((animation) => animation.finished)).then(computeThumbPosition).catch(() => {});
637
- });
638
- return () => {
639
- resizeObserver.disconnect();
640
- waitForAnimationsTimeout.clear();
641
- };
642
- }, [computeThumbPosition, viewportRef, waitForAnimationsTimeout]);
643
- function handleUserInteraction() {
644
- programmaticScrollRef.current = false;
645
- }
646
- const props = {
647
- role: "presentation",
648
- ...rootId && {
649
- "data-id": `${rootId}-viewport`
650
- },
651
- tabIndex: hiddenState.x && hiddenState.y ? -1 : 0,
652
- className: styleDisableScrollbar.className,
653
- style: {
654
- overflow: "scroll"
655
- },
656
- onScroll() {
657
- if (!viewportRef.current) {
658
- return;
659
- }
660
- computeThumbPosition();
661
- if (!programmaticScrollRef.current) {
662
- handleScroll({
663
- x: viewportRef.current.scrollLeft,
664
- y: viewportRef.current.scrollTop
665
- });
666
- }
667
- scrollEndTimeout.start(100, () => {
668
- programmaticScrollRef.current = true;
669
- });
670
- },
671
- onWheel: handleUserInteraction,
672
- onTouchMove: handleUserInteraction,
673
- onPointerMove: handleUserInteraction,
674
- onPointerEnter: handleUserInteraction,
675
- onKeyDown: handleUserInteraction
676
- };
677
- const viewportState = React4.useMemo(() => ({
678
- scrolling: scrollingX || scrollingY,
679
- hasOverflowX: !hiddenState.x,
680
- hasOverflowY: !hiddenState.y,
681
- overflowXStart: overflowEdges.xStart,
682
- overflowXEnd: overflowEdges.xEnd,
683
- overflowYStart: overflowEdges.yStart,
684
- overflowYEnd: overflowEdges.yEnd,
685
- cornerHidden: hiddenState.corner
686
- }), [scrollingX, scrollingY, hiddenState.x, hiddenState.y, hiddenState.corner, overflowEdges]);
687
- const element = useRenderElement("div", componentProps, {
688
- ref: [forwardedRef, viewportRef],
689
- state: viewportState,
690
- props: [props, elementProps],
691
- stateAttributesMapping: scrollAreaStateAttributesMapping
692
- });
693
- const contextValue = React4.useMemo(() => ({
694
- computeThumbPosition
695
- }), [computeThumbPosition]);
696
- return /* @__PURE__ */ _jsx(ScrollAreaViewportContext.Provider, {
697
- value: contextValue,
698
- children: element
699
- });
700
- });
701
- if (true)
702
- ScrollAreaViewport.displayName = "ScrollAreaViewport";
703
- function getHiddenState(viewport) {
704
- const y = viewport.clientHeight >= viewport.scrollHeight;
705
- const x = viewport.clientWidth >= viewport.scrollWidth;
706
- return {
707
- y,
708
- x,
709
- corner: y || x
710
- };
711
- }
712
- function mergeHiddenState(prevState, nextState) {
713
- if (prevState.y === nextState.y && prevState.x === nextState.x && prevState.corner === nextState.corner) {
714
- return prevState;
715
- }
716
- return nextState;
717
- }
718
- // node_modules/@base-ui/react/esm/scroll-area/scrollbar/ScrollAreaScrollbar.js
719
- import * as React6 from "react";
720
-
721
- // node_modules/@base-ui/react/esm/scroll-area/scrollbar/ScrollAreaScrollbarContext.js
722
- import * as React5 from "react";
723
- "use client";
724
- var ScrollAreaScrollbarContext = /* @__PURE__ */ React5.createContext(undefined);
725
- if (true)
726
- ScrollAreaScrollbarContext.displayName = "ScrollAreaScrollbarContext";
727
- function useScrollAreaScrollbarContext() {
728
- const context = React5.useContext(ScrollAreaScrollbarContext);
729
- if (context === undefined) {
730
- throw new Error("Base UI: ScrollAreaScrollbarContext is missing. ScrollAreaScrollbar parts must be placed within <ScrollArea.Scrollbar>.");
731
- }
732
- return context;
733
- }
734
-
735
- // node_modules/@base-ui/react/esm/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.js
736
- var ScrollAreaScrollbarCssVars = /* @__PURE__ */ function(ScrollAreaScrollbarCssVars2) {
737
- ScrollAreaScrollbarCssVars2["scrollAreaThumbHeight"] = "--scroll-area-thumb-height";
738
- ScrollAreaScrollbarCssVars2["scrollAreaThumbWidth"] = "--scroll-area-thumb-width";
739
- return ScrollAreaScrollbarCssVars2;
740
- }({});
741
-
742
- // node_modules/@base-ui/react/esm/scroll-area/scrollbar/ScrollAreaScrollbar.js
743
- import { jsx as _jsx2 } from "react/jsx-runtime";
744
- "use client";
745
- var ScrollAreaScrollbar = /* @__PURE__ */ React6.forwardRef(function ScrollAreaScrollbar2(componentProps, forwardedRef) {
746
- const {
747
- render,
748
- className,
749
- orientation = "vertical",
750
- keepMounted = false,
751
- style,
752
- ...elementProps
753
- } = componentProps;
754
- const {
755
- hovering,
756
- scrollingX,
757
- scrollingY,
758
- hiddenState,
759
- overflowEdges,
760
- scrollbarYRef,
761
- scrollbarXRef,
762
- viewportRef,
763
- thumbYRef,
764
- thumbXRef,
765
- handlePointerDown,
766
- handlePointerUp,
767
- rootId,
768
- thumbSize,
769
- hasMeasuredScrollbar
770
- } = useScrollAreaRootContext();
771
- const state = {
772
- hovering,
773
- scrolling: {
774
- horizontal: scrollingX,
775
- vertical: scrollingY
776
- }[orientation],
777
- orientation,
778
- hasOverflowX: !hiddenState.x,
779
- hasOverflowY: !hiddenState.y,
780
- overflowXStart: overflowEdges.xStart,
781
- overflowXEnd: overflowEdges.xEnd,
782
- overflowYStart: overflowEdges.yStart,
783
- overflowYEnd: overflowEdges.yEnd,
784
- cornerHidden: hiddenState.corner
785
- };
786
- const direction = useDirection();
787
- const hideTrackUntilMeasured = !hasMeasuredScrollbar && !keepMounted;
788
- const isHidden = orientation === "vertical" ? hiddenState.y : hiddenState.x;
789
- const shouldRender = keepMounted || !isHidden;
790
- React6.useEffect(() => {
791
- if (!shouldRender) {
792
- return;
793
- }
794
- const viewportEl = viewportRef.current;
795
- const scrollbarEl = orientation === "vertical" ? scrollbarYRef.current : scrollbarXRef.current;
796
- if (!scrollbarEl) {
797
- return;
798
- }
799
- function handleWheel(event) {
800
- if (!viewportEl || !scrollbarEl || event.ctrlKey) {
801
- return;
802
- }
803
- event.preventDefault();
804
- const horizontal = orientation === "horizontal";
805
- const scrollProperty = horizontal ? "scrollLeft" : "scrollTop";
806
- const delta = horizontal ? event.deltaX : event.deltaY;
807
- const maxScroll = horizontal ? viewportEl.scrollWidth - viewportEl.clientWidth : viewportEl.scrollHeight - viewportEl.clientHeight;
808
- const minScroll = horizontal && direction === "rtl" ? -maxScroll : 0;
809
- const maxScrollValue = horizontal && direction === "rtl" ? 0 : maxScroll;
810
- const scrollValue = viewportEl[scrollProperty];
811
- if (scrollValue <= minScroll && delta < 0 || scrollValue >= maxScrollValue && delta > 0) {
812
- return;
813
- }
814
- viewportEl[scrollProperty] = Math.min(maxScrollValue, Math.max(minScroll, scrollValue + delta));
815
- }
816
- return addEventListener(scrollbarEl, "wheel", handleWheel, {
817
- passive: false
818
- });
819
- }, [direction, orientation, scrollbarXRef, scrollbarYRef, shouldRender, viewportRef]);
820
- const props = {
821
- ...rootId && {
822
- "data-id": `${rootId}-scrollbar`
823
- },
824
- onPointerDown(event) {
825
- if (event.button !== 0) {
826
- return;
827
- }
828
- const target = getTarget(event.nativeEvent);
829
- const thumb = orientation === "vertical" ? thumbYRef.current : thumbXRef.current;
830
- if (thumb && contains(thumb, target)) {
831
- return;
832
- }
833
- if (!viewportRef.current) {
834
- return;
835
- }
836
- if (thumbYRef.current && scrollbarYRef.current && orientation === "vertical") {
837
- const thumbYOffset = getOffset(thumbYRef.current, "margin", "y");
838
- const scrollbarYOffset = getOffset(scrollbarYRef.current, "padding", "y");
839
- const thumbHeight = thumbYRef.current.offsetHeight;
840
- const trackRectY = scrollbarYRef.current.getBoundingClientRect();
841
- const clickY = event.clientY - trackRectY.top - thumbHeight / 2 - scrollbarYOffset + thumbYOffset / 2;
842
- const scrollableContentHeight = viewportRef.current.scrollHeight;
843
- const viewportHeight = viewportRef.current.clientHeight;
844
- const maxThumbOffsetY = scrollbarYRef.current.offsetHeight - thumbHeight - scrollbarYOffset - thumbYOffset;
845
- const scrollRatioY = clickY / maxThumbOffsetY;
846
- const newScrollTop = scrollRatioY * (scrollableContentHeight - viewportHeight);
847
- viewportRef.current.scrollTop = newScrollTop;
848
- }
849
- if (thumbXRef.current && scrollbarXRef.current && orientation === "horizontal") {
850
- const thumbXOffset = getOffset(thumbXRef.current, "margin", "x");
851
- const scrollbarXOffset = getOffset(scrollbarXRef.current, "padding", "x");
852
- const thumbWidth = thumbXRef.current.offsetWidth;
853
- const trackRectX = scrollbarXRef.current.getBoundingClientRect();
854
- const clickX = event.clientX - trackRectX.left - thumbWidth / 2 - scrollbarXOffset + thumbXOffset / 2;
855
- const scrollableContentWidth = viewportRef.current.scrollWidth;
856
- const viewportWidth = viewportRef.current.clientWidth;
857
- const maxThumbOffsetX = scrollbarXRef.current.offsetWidth - thumbWidth - scrollbarXOffset - thumbXOffset;
858
- const scrollRatioX = clickX / maxThumbOffsetX;
859
- let newScrollLeft;
860
- if (direction === "rtl") {
861
- newScrollLeft = (1 - scrollRatioX) * (scrollableContentWidth - viewportWidth);
862
- if (viewportRef.current.scrollLeft <= 0) {
863
- newScrollLeft = -newScrollLeft;
864
- }
865
- } else {
866
- newScrollLeft = scrollRatioX * (scrollableContentWidth - viewportWidth);
867
- }
868
- viewportRef.current.scrollLeft = newScrollLeft;
869
- }
870
- handlePointerDown(event);
871
- },
872
- onPointerUp: handlePointerUp,
873
- style: {
874
- position: "absolute",
875
- touchAction: "none",
876
- WebkitUserSelect: "none",
877
- userSelect: "none",
878
- visibility: hideTrackUntilMeasured ? "hidden" : undefined,
879
- ...orientation === "vertical" && {
880
- top: 0,
881
- bottom: `var(${ScrollAreaRootCssVars.scrollAreaCornerHeight})`,
882
- insetInlineEnd: 0,
883
- [ScrollAreaScrollbarCssVars.scrollAreaThumbHeight]: `${thumbSize.height}px`
884
- },
885
- ...orientation === "horizontal" && {
886
- insetInlineStart: 0,
887
- insetInlineEnd: `var(${ScrollAreaRootCssVars.scrollAreaCornerWidth})`,
888
- bottom: 0,
889
- [ScrollAreaScrollbarCssVars.scrollAreaThumbWidth]: `${thumbSize.width}px`
890
- }
891
- }
892
- };
893
- const element = useRenderElement("div", componentProps, {
894
- ref: [forwardedRef, orientation === "vertical" ? scrollbarYRef : scrollbarXRef],
895
- state,
896
- props: [props, elementProps],
897
- stateAttributesMapping: scrollAreaStateAttributesMapping
898
- });
899
- const contextValue = React6.useMemo(() => ({
900
- orientation
901
- }), [orientation]);
902
- if (!shouldRender) {
903
- return null;
904
- }
905
- return /* @__PURE__ */ _jsx2(ScrollAreaScrollbarContext.Provider, {
906
- value: contextValue,
907
- children: element
908
- });
909
- });
910
- if (true)
911
- ScrollAreaScrollbar.displayName = "ScrollAreaScrollbar";
912
- // node_modules/@base-ui/react/esm/scroll-area/content/ScrollAreaContent.js
913
- import * as React7 from "react";
914
- "use client";
915
- var ScrollAreaContent = /* @__PURE__ */ React7.forwardRef(function ScrollAreaContent2(componentProps, forwardedRef) {
916
- const {
917
- render,
918
- className,
919
- style,
920
- ...elementProps
921
- } = componentProps;
922
- const {
923
- computeThumbPosition
924
- } = useScrollAreaViewportContext();
925
- const {
926
- viewportState
927
- } = useScrollAreaRootContext();
928
- const contentWrapperRef = React7.useRef(null);
929
- useIsoLayoutEffect(() => {
930
- if (typeof ResizeObserver === "undefined") {
931
- return;
932
- }
933
- let hasInitialized = false;
934
- const resizeObserver = new ResizeObserver(() => {
935
- if (!hasInitialized) {
936
- hasInitialized = true;
937
- return;
938
- }
939
- computeThumbPosition();
940
- });
941
- if (contentWrapperRef.current) {
942
- resizeObserver.observe(contentWrapperRef.current);
943
- }
944
- return () => {
945
- resizeObserver.disconnect();
946
- };
947
- }, [computeThumbPosition]);
948
- const element = useRenderElement("div", componentProps, {
949
- ref: [forwardedRef, contentWrapperRef],
950
- state: viewportState,
951
- stateAttributesMapping: scrollAreaStateAttributesMapping,
952
- props: [{
953
- role: "presentation",
954
- style: {
955
- minWidth: "fit-content"
956
- }
957
- }, elementProps]
958
- });
959
- return element;
960
- });
961
- if (true)
962
- ScrollAreaContent.displayName = "ScrollAreaContent";
963
- // node_modules/@base-ui/react/esm/scroll-area/thumb/ScrollAreaThumb.js
964
- import * as React8 from "react";
965
- "use client";
966
- var ScrollAreaThumb = /* @__PURE__ */ React8.forwardRef(function ScrollAreaThumb2(componentProps, forwardedRef) {
967
- const {
968
- render,
969
- className,
970
- style,
971
- ...elementProps
972
- } = componentProps;
973
- const {
974
- thumbYRef,
975
- thumbXRef,
976
- handlePointerDown,
977
- handlePointerMove,
978
- handlePointerUp,
979
- setScrollingX,
980
- setScrollingY,
981
- hasMeasuredScrollbar
982
- } = useScrollAreaRootContext();
983
- const {
984
- orientation
985
- } = useScrollAreaScrollbarContext();
986
- const state = {
987
- orientation
988
- };
989
- const element = useRenderElement("div", componentProps, {
990
- ref: [forwardedRef, orientation === "vertical" ? thumbYRef : thumbXRef],
991
- state,
992
- props: [{
993
- onPointerDown: handlePointerDown,
994
- onPointerMove: handlePointerMove,
995
- onPointerUp(event) {
996
- if (orientation === "vertical") {
997
- setScrollingY(false);
998
- }
999
- if (orientation === "horizontal") {
1000
- setScrollingX(false);
1001
- }
1002
- handlePointerUp(event);
1003
- },
1004
- style: {
1005
- visibility: hasMeasuredScrollbar ? undefined : "hidden",
1006
- ...orientation === "vertical" && {
1007
- height: `var(${ScrollAreaScrollbarCssVars.scrollAreaThumbHeight})`
1008
- },
1009
- ...orientation === "horizontal" && {
1010
- width: `var(${ScrollAreaScrollbarCssVars.scrollAreaThumbWidth})`
1011
- }
1012
- }
1013
- }, elementProps]
1014
- });
1015
- return element;
1016
- });
1017
- if (true)
1018
- ScrollAreaThumb.displayName = "ScrollAreaThumb";
1019
- // node_modules/@base-ui/react/esm/scroll-area/corner/ScrollAreaCorner.js
1020
- import * as React9 from "react";
1021
- "use client";
1022
- var ScrollAreaCorner = /* @__PURE__ */ React9.forwardRef(function ScrollAreaCorner2(componentProps, forwardedRef) {
1023
- const {
1024
- render,
1025
- className,
1026
- style,
1027
- ...elementProps
1028
- } = componentProps;
1029
- const {
1030
- cornerRef,
1031
- cornerSize,
1032
- hiddenState
1033
- } = useScrollAreaRootContext();
1034
- const element = useRenderElement("div", componentProps, {
1035
- ref: [forwardedRef, cornerRef],
1036
- props: [{
1037
- style: {
1038
- position: "absolute",
1039
- bottom: 0,
1040
- insetInlineEnd: 0,
1041
- width: cornerSize.width,
1042
- height: cornerSize.height
1043
- }
1044
- }, elementProps]
1045
- });
1046
- if (hiddenState.corner) {
1047
- return null;
1048
- }
1049
- return element;
1050
- });
1051
- if (true)
1052
- ScrollAreaCorner.displayName = "ScrollAreaCorner";
1053
- export {
1054
- exports_index_parts as ScrollArea
1055
- };