@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,1266 +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 * as React$1 from 'react';
5
-
6
- declare const none: "none";
7
- declare const triggerPress: "trigger-press";
8
- declare const triggerHover: "trigger-hover";
9
- declare const triggerFocus: "trigger-focus";
10
- declare const outsidePress: "outside-press";
11
- declare const itemPress: "item-press";
12
- declare const closePress: "close-press";
13
- declare const linkPress: "link-press";
14
- declare const clearPress: "clear-press";
15
- declare const chipRemovePress: "chip-remove-press";
16
- declare const trackPress: "track-press";
17
- declare const incrementPress: "increment-press";
18
- declare const decrementPress: "decrement-press";
19
- declare const inputChange: "input-change";
20
- declare const inputClear: "input-clear";
21
- declare const inputBlur: "input-blur";
22
- declare const inputPaste: "input-paste";
23
- declare const inputPress: "input-press";
24
- declare const focusOut: "focus-out";
25
- declare const escapeKey: "escape-key";
26
- declare const closeWatcher: "close-watcher";
27
- declare const listNavigation: "list-navigation";
28
- declare const keyboard: "keyboard";
29
- declare const pointer: "pointer";
30
- declare const drag: "drag";
31
- declare const wheel: "wheel";
32
- declare const scrub: "scrub";
33
- declare const cancelOpen: "cancel-open";
34
- declare const siblingOpen: "sibling-open";
35
- declare const disabled: "disabled";
36
- declare const missing: "missing";
37
- declare const initial: "initial";
38
- declare const imperativeAction: "imperative-action";
39
- declare const swipe: "swipe";
40
- declare const windowResize: "window-resize";
41
- export interface ReasonToEventMap {
42
- [none]: Event;
43
- [triggerPress]: MouseEvent | PointerEvent | TouchEvent | KeyboardEvent;
44
- [triggerHover]: MouseEvent;
45
- [triggerFocus]: FocusEvent;
46
- [outsidePress]: MouseEvent | PointerEvent | TouchEvent;
47
- [itemPress]: MouseEvent | KeyboardEvent | PointerEvent;
48
- [closePress]: MouseEvent | KeyboardEvent | PointerEvent;
49
- [linkPress]: MouseEvent | PointerEvent;
50
- [clearPress]: PointerEvent | MouseEvent | KeyboardEvent;
51
- [chipRemovePress]: PointerEvent | MouseEvent | KeyboardEvent;
52
- [trackPress]: PointerEvent | MouseEvent | TouchEvent;
53
- [incrementPress]: PointerEvent | MouseEvent | TouchEvent;
54
- [decrementPress]: PointerEvent | MouseEvent | TouchEvent;
55
- [inputChange]: InputEvent | Event;
56
- [inputClear]: InputEvent | FocusEvent | Event;
57
- [inputBlur]: FocusEvent;
58
- [inputPaste]: ClipboardEvent;
59
- [inputPress]: MouseEvent | PointerEvent | TouchEvent | KeyboardEvent;
60
- [focusOut]: FocusEvent | KeyboardEvent;
61
- [escapeKey]: KeyboardEvent;
62
- [closeWatcher]: Event;
63
- [listNavigation]: KeyboardEvent;
64
- [keyboard]: KeyboardEvent;
65
- [pointer]: PointerEvent;
66
- [drag]: PointerEvent | TouchEvent;
67
- [swipe]: PointerEvent | TouchEvent;
68
- [wheel]: WheelEvent;
69
- [scrub]: PointerEvent;
70
- [cancelOpen]: MouseEvent;
71
- [siblingOpen]: Event;
72
- [disabled]: Event;
73
- [missing]: Event;
74
- [initial]: Event;
75
- [imperativeAction]: Event;
76
- [windowResize]: UIEvent;
77
- }
78
- /**
79
- * Maps a change `reason` string to the corresponding native event type.
80
- */
81
- export type ReasonToEvent<Reason extends string> = Reason extends keyof ReasonToEventMap ? ReasonToEventMap[Reason] : Event;
82
- export type BaseUIChangeEventDetail<Reason extends string, CustomProperties extends object> = {
83
- /**
84
- * The reason for the event.
85
- */
86
- reason: Reason;
87
- /**
88
- * The native event associated with the custom event.
89
- */
90
- event: ReasonToEvent<Reason>;
91
- /**
92
- * Cancels Base UI from handling the event.
93
- */
94
- cancel: () => void;
95
- /**
96
- * Allows the event to propagate in cases where Base UI will stop the propagation.
97
- */
98
- allowPropagation: () => void;
99
- /**
100
- * Indicates whether the event has been canceled.
101
- */
102
- isCanceled: boolean;
103
- /**
104
- * Indicates whether the event is allowed to propagate.
105
- */
106
- isPropagationAllowed: boolean;
107
- /**
108
- * The element that triggered the event, if applicable.
109
- */
110
- trigger: Element | undefined;
111
- } & CustomProperties;
112
- /**
113
- * Details of custom change events emitted by Base UI components.
114
- */
115
- export type BaseUIChangeEventDetails<Reason extends string, CustomProperties extends object = {}> = Reason extends string ? BaseUIChangeEventDetail<Reason, CustomProperties> & {} : never;
116
- /**
117
- * Details of custom generic events emitted by Base UI components.
118
- */
119
- export type BaseUIGenericEventDetail<Reason extends string, CustomProperties extends object> = {
120
- /**
121
- * The reason for the event.
122
- */
123
- reason: Reason;
124
- /**
125
- * The native event associated with the custom event.
126
- */
127
- event: ReasonToEvent<Reason>;
128
- } & CustomProperties;
129
- export type BaseUIGenericEventDetails<Reason extends string, CustomProperties extends object = {}> = Reason extends string ? BaseUIGenericEventDetail<Reason, CustomProperties> & {} : never;
130
- export interface Group<Item = any> {
131
- [key: string]: unknown;
132
- items: ReadonlyArray<Item>;
133
- }
134
- /**
135
- * Groups all parts of the select.
136
- * Doesn't render its own HTML element.
137
- *
138
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
139
- */
140
- export declare function SelectRoot<Value, Multiple extends boolean | undefined = false>(props: SelectRoot.Props<Value, Multiple>): React$1.JSX.Element;
141
- export type SelectValueType<Value, Multiple extends boolean | undefined> = Multiple extends true ? Value[] : Value;
142
- export interface SelectRootProps<Value, Multiple extends boolean | undefined = false> {
143
- children?: React$1.ReactNode;
144
- /**
145
- * A ref to access the hidden input element.
146
- */
147
- inputRef?: React$1.Ref<HTMLInputElement> | undefined;
148
- /**
149
- * Identifies the field when a form is submitted.
150
- */
151
- name?: string | undefined;
152
- /**
153
- * Identifies the form that owns the hidden input.
154
- * Useful when the select is rendered outside the form.
155
- */
156
- form?: string | undefined;
157
- /**
158
- * Provides a hint to the browser for autofill.
159
- * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/autocomplete
160
- */
161
- autoComplete?: string | undefined;
162
- /**
163
- * The id of the Select.
164
- */
165
- id?: string | undefined;
166
- /**
167
- * Whether the user must choose a value before submitting a form.
168
- * @default false
169
- */
170
- required?: boolean | undefined;
171
- /**
172
- * Whether the user should be unable to choose a different option from the select popup.
173
- * @default false
174
- */
175
- readOnly?: boolean | undefined;
176
- /**
177
- * Whether the component should ignore user interaction.
178
- * @default false
179
- */
180
- disabled?: boolean | undefined;
181
- /**
182
- * Whether multiple items can be selected.
183
- * @default false
184
- */
185
- multiple?: Multiple | undefined;
186
- /**
187
- * Whether moving the pointer over items should highlight them.
188
- * Disabling this prop allows CSS `:hover` to be differentiated from the `:focus` (`data-highlighted`) state.
189
- * @default true
190
- */
191
- highlightItemOnHover?: boolean | undefined;
192
- /**
193
- * Whether the select popup is initially open.
194
- *
195
- * To render a controlled select popup, use the `open` prop instead.
196
- * @default false
197
- */
198
- defaultOpen?: boolean | undefined;
199
- /**
200
- * Event handler called when the select popup is opened or closed.
201
- */
202
- onOpenChange?: ((open: boolean, eventDetails: SelectRootChangeEventDetails) => void) | undefined;
203
- /**
204
- * Event handler called after any animations complete when the select popup is opened or closed.
205
- */
206
- onOpenChangeComplete?: ((open: boolean) => void) | undefined;
207
- /**
208
- * Whether the select popup is currently open.
209
- */
210
- open?: boolean | undefined;
211
- /**
212
- * Determines if the select enters a modal state when open.
213
- * - `true`: user interaction is limited to the select: document page scroll is locked and pointer interactions on outside elements are disabled.
214
- * - `false`: user interaction with the rest of the document is allowed.
215
- * @default true
216
- */
217
- modal?: boolean | undefined;
218
- /**
219
- * A ref to imperative actions.
220
- * - `unmount`: When specified, the select will not be unmounted when closed.
221
- * Instead, the `unmount` function must be called to unmount the select manually.
222
- * Useful when the select's animation is controlled by an external library.
223
- */
224
- actionsRef?: React$1.RefObject<SelectRootActions | null> | undefined;
225
- /**
226
- * Data structure of the items rendered in the select popup.
227
- * When specified, `<Select.Value>` renders the label of the selected item instead of the raw value.
228
- * @example
229
- * ```tsx
230
- * const items = {
231
- * sans: 'Sans-serif',
232
- * serif: 'Serif',
233
- * mono: 'Monospace',
234
- * cursive: 'Cursive',
235
- * };
236
- * <Select.Root items={items} />
237
- * ```
238
- */
239
- items?: Record<string, React$1.ReactNode> | ReadonlyArray<{
240
- label: React$1.ReactNode;
241
- value: any;
242
- }> | ReadonlyArray<Group<any>> | undefined;
243
- /**
244
- * When the item values are objects (`<Select.Item value={object}>`), this function converts the object value to a string representation for display in the trigger.
245
- * If the shape of the object is `{ value, label }`, the label will be used automatically without needing to specify this prop.
246
- */
247
- itemToStringLabel?: ((itemValue: Value) => string) | undefined;
248
- /**
249
- * When the item values are objects (`<Select.Item value={object}>`), this function converts the object value to a string representation for form submission.
250
- * If the shape of the object is `{ value, label }`, the value will be used automatically without needing to specify this prop.
251
- */
252
- itemToStringValue?: ((itemValue: Value) => string) | undefined;
253
- /**
254
- * Custom comparison logic used to determine if a select item value matches the current selected value. Useful when item values are objects without matching referentially.
255
- * Defaults to `Object.is` comparison.
256
- */
257
- isItemEqualToValue?: ((itemValue: Value, value: Value) => boolean) | undefined;
258
- /**
259
- * The uncontrolled value of the select when it's initially rendered.
260
- *
261
- * To render a controlled select, use the `value` prop instead.
262
- */
263
- defaultValue?: SelectValueType<Value, Multiple> | null | undefined;
264
- /**
265
- * The value of the select. Use when controlled.
266
- */
267
- value?: SelectValueType<Value, Multiple> | null | undefined;
268
- /**
269
- * Event handler called when the value of the select changes.
270
- */
271
- onValueChange?: ((value: SelectValueType<Value, Multiple> | (Multiple extends true ? never : null), eventDetails: SelectRootChangeEventDetails) => void) | undefined;
272
- }
273
- export interface SelectRootState {
274
- }
275
- export interface SelectRootActions {
276
- unmount: () => void;
277
- }
278
- export type SelectRootChangeEventReason = typeof triggerPress | typeof outsidePress | typeof escapeKey | typeof windowResize | typeof itemPress | typeof focusOut | typeof listNavigation | typeof cancelOpen | typeof none;
279
- export type SelectRootChangeEventDetails = BaseUIChangeEventDetails<SelectRootChangeEventReason>;
280
- export declare namespace SelectRoot {
281
- type Props<Value, Multiple extends boolean | undefined = false> = SelectRootProps<Value, Multiple>;
282
- type State = SelectRootState;
283
- type Actions = SelectRootActions;
284
- type ChangeEventReason = SelectRootChangeEventReason;
285
- type ChangeEventDetails = SelectRootChangeEventDetails;
286
- }
287
- export type HTMLProps<T = any> = React$1.HTMLAttributes<T> & {
288
- ref?: React$1.Ref<T> | undefined;
289
- };
290
- /**
291
- * Shape of the render prop: a function that takes props to be spread on the element and component's state and returns a React element.
292
- *
293
- * @template Props Props to be spread on the rendered element.
294
- * @template State Component's internal state.
295
- */
296
- export type ComponentRenderFn<Props, State> = (props: Props, state: State) => React$1.ReactElement<unknown>;
297
- export type BaseUIEvent<E extends React$1.SyntheticEvent<Element, Event>> = E & {
298
- preventBaseUIHandler: () => void;
299
- readonly baseUIHandlerPrevented?: boolean | undefined;
300
- };
301
- export type WithPreventBaseUIHandler<T> = T extends ((event: infer E) => any) ? E extends React$1.SyntheticEvent<Element, Event> ? (event: BaseUIEvent<E>) => ReturnType<T> : T : T extends undefined ? undefined : T;
302
- /**
303
- * Adds a `preventBaseUIHandler` method to all event handlers.
304
- */
305
- export type WithBaseUIEvent<T> = {
306
- [K in keyof T]: WithPreventBaseUIHandler<T[K]>;
307
- };
308
- /**
309
- * Props shared by all Base UI components.
310
- * Contains `className` (string or callback taking the component's state as an argument) and `render` (function to customize rendering).
311
- */
312
- export type BaseUIComponentProps<ElementType extends React$1.ElementType, State, RenderFunctionProps = HTMLProps> = Omit<WithBaseUIEvent<React$1.ComponentPropsWithRef<ElementType>>, "className" | "color" | "defaultValue" | "defaultChecked" | "style"> & {
313
- /**
314
- * CSS class applied to the element, or a function that
315
- * returns a class based on the component's state.
316
- */
317
- className?: string | ((state: State) => string | undefined) | undefined;
318
- /**
319
- * Allows you to replace the component's HTML element
320
- * with a different tag, or compose it with another component.
321
- *
322
- * Accepts a `ReactElement` or a function that returns the element to render.
323
- */
324
- render?: React$1.ReactElement | ComponentRenderFn<RenderFunctionProps, State> | undefined;
325
- /**
326
- * Style applied to the element, or a function that
327
- * returns a style object based on the component's state.
328
- */
329
- style?: React$1.CSSProperties | ((state: State) => React$1.CSSProperties | undefined) | undefined;
330
- };
331
- export interface NativeButtonProps {
332
- /**
333
- * Whether the component renders a native `<button>` element when replacing it
334
- * via the `render` prop.
335
- * Set to `false` if the rendered element is not a button (for example, `<div>`).
336
- * @default true
337
- */
338
- nativeButton?: boolean | undefined;
339
- }
340
- export interface NonNativeButtonProps {
341
- /**
342
- * Whether the component renders a native `<button>` element when replacing it
343
- * via the `render` prop.
344
- * Set to `true` if the rendered element is a native button.
345
- * @default false
346
- */
347
- nativeButton?: boolean | undefined;
348
- }
349
- export type Orientation = "horizontal" | "vertical";
350
- export type Errors = Record<string, string | string[]>;
351
- export interface FormContext {
352
- errors: Errors;
353
- clearErrors: (name: string | undefined) => void;
354
- formRef: React$1.RefObject<{
355
- fields: Map<string, {
356
- name: string | undefined;
357
- /**
358
- * After this returns, the field registry entry reflects the latest synchronous
359
- * validity verdict. Async validators do not block submit.
360
- */
361
- validate: () => void;
362
- validityData: FieldValidityData;
363
- controlRef: React$1.RefObject<HTMLElement | null>;
364
- getValue: () => unknown;
365
- }>;
366
- }>;
367
- validationMode: Form.ValidationMode;
368
- submitAttemptedRef: React$1.RefObject<boolean>;
369
- }
370
- declare const FormContext: React$1.Context<FormContext>;
371
- declare const Form: {
372
- <FormValues extends Record<string, any> = Record<string, any>>(props: Form.Props<FormValues> & {
373
- ref?: React$1.Ref<HTMLFormElement> | undefined;
374
- }): React$1.JSX.Element;
375
- };
376
- export type FormSubmitEventReason = typeof none;
377
- export type FormSubmitEventDetails = BaseUIGenericEventDetails<Form.SubmitEventReason>;
378
- export type FormValidationMode = "onSubmit" | "onBlur" | "onChange";
379
- export interface FormActions {
380
- validate: (fieldName?: string | undefined) => void;
381
- }
382
- export interface FormState {
383
- }
384
- export interface FormProps<FormValues extends Record<string, any> = Record<string, any>> extends BaseUIComponentProps<"form", FormState> {
385
- /**
386
- * Determines when the form should be validated.
387
- * The `validationMode` prop on `<Field.Root>` takes precedence over this.
388
- *
389
- * - `onSubmit` (default): validates the field when the form is submitted, afterwards fields will re-validate on change.
390
- * - `onBlur`: validates a field when it loses focus.
391
- * - `onChange`: validates the field on every change to its value.
392
- *
393
- * @default 'onSubmit'
394
- */
395
- validationMode?: FormValidationMode | undefined;
396
- /**
397
- * Validation errors returned externally, typically after submission by a server or a form action.
398
- * This should be an object where keys correspond to the `name` attribute on `<Field.Root>`,
399
- * and values correspond to error(s) related to that field.
400
- */
401
- errors?: FormContext["errors"] | undefined;
402
- /**
403
- * Event handler called when the form is submitted.
404
- * `preventDefault()` is called on the native submit event when used.
405
- */
406
- onFormSubmit?: ((formValues: FormValues, eventDetails: Form.SubmitEventDetails) => void) | undefined;
407
- /**
408
- * A ref to imperative actions.
409
- * - `validate`: Validates all fields when called. Optionally pass a field name to validate a single field.
410
- * @example
411
- * ```tsx
412
- * // validate all fields
413
- * actionsRef.current.validate();
414
- *
415
- * // validate one field
416
- * actionsRef.current.validate('email');
417
- * ```
418
- */
419
- actionsRef?: React$1.RefObject<Form.Actions | null> | undefined;
420
- }
421
- declare namespace Form {
422
- type Props<FormValues extends Record<string, any> = Record<string, any>> = FormProps<FormValues>;
423
- type State = FormState;
424
- type Actions = FormActions;
425
- type ValidationMode = FormValidationMode;
426
- type SubmitEventReason = FormSubmitEventReason;
427
- type SubmitEventDetails = FormSubmitEventDetails;
428
- type Values<FormValues extends Record<string, any> = Record<string, any>> = FormValues;
429
- }
430
- declare const FieldRoot: React$1.ForwardRefExoticComponent<Omit<FieldRootProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
431
- export interface FieldValidityData {
432
- state: {
433
- badInput: boolean;
434
- customError: boolean;
435
- patternMismatch: boolean;
436
- rangeOverflow: boolean;
437
- rangeUnderflow: boolean;
438
- stepMismatch: boolean;
439
- tooLong: boolean;
440
- tooShort: boolean;
441
- typeMismatch: boolean;
442
- valueMissing: boolean;
443
- valid: boolean | null;
444
- };
445
- error: string;
446
- errors: string[];
447
- value: unknown;
448
- initialValue: unknown;
449
- }
450
- export interface FieldRootActions {
451
- validate: () => void;
452
- }
453
- export interface FieldRootState {
454
- /**
455
- * Whether the component should ignore user interaction.
456
- */
457
- disabled: boolean;
458
- /**
459
- * Whether the field has been touched.
460
- */
461
- touched: boolean;
462
- /**
463
- * Whether the field value has changed from its initial value.
464
- */
465
- dirty: boolean;
466
- /**
467
- * Whether the field is valid.
468
- */
469
- valid: boolean | null;
470
- /**
471
- * Whether the field has a value.
472
- */
473
- filled: boolean;
474
- /**
475
- * Whether the field is focused.
476
- */
477
- focused: boolean;
478
- }
479
- export interface FieldRootProps extends BaseUIComponentProps<"div", FieldRootState> {
480
- /**
481
- * Whether the component should ignore user interaction.
482
- * Takes precedence over the `disabled` prop on the `<Field.Control>` component.
483
- * @default false
484
- */
485
- disabled?: boolean | undefined;
486
- /**
487
- * Identifies the field when a form is submitted.
488
- * Takes precedence over the `name` prop on the `<Field.Control>` component.
489
- */
490
- name?: string | undefined;
491
- /**
492
- * A function for custom validation. Return a string or an array of strings with
493
- * the error message(s) if the value is invalid, or `null` if the value is valid.
494
- * Asynchronous functions are supported, but they do not prevent form submission
495
- * when using `validationMode="onSubmit"`.
496
- */
497
- validate?: ((value: unknown, formValues: Form.Values) => string | string[] | null | Promise<string | string[] | null>) | undefined;
498
- /**
499
- * Determines when the field should be validated.
500
- * This takes precedence over the `validationMode` prop on `<Form>`.
501
- *
502
- * - `onSubmit`: triggers validation when the form is submitted, and re-validates on change after submission.
503
- * - `onBlur`: triggers validation when the control loses focus.
504
- * - `onChange`: triggers validation on every change to the control value.
505
- *
506
- * @default 'onSubmit'
507
- */
508
- validationMode?: Form.ValidationMode | undefined;
509
- /**
510
- * How long to wait between `validate` callbacks if
511
- * `validationMode="onChange"` is used. Specified in milliseconds.
512
- * @default 0
513
- */
514
- validationDebounceTime?: number | undefined;
515
- /**
516
- * Whether the field is invalid.
517
- * Useful when the field state is controlled by an external library.
518
- */
519
- invalid?: boolean | undefined;
520
- /**
521
- * Whether the field's value has been changed from its initial value.
522
- * Useful when the field state is controlled by an external library.
523
- */
524
- dirty?: boolean | undefined;
525
- /**
526
- * Whether the field has been touched.
527
- * Useful when the field state is controlled by an external library.
528
- */
529
- touched?: boolean | undefined;
530
- /**
531
- * A ref to imperative actions.
532
- * - `validate`: Validates the field when called.
533
- */
534
- actionsRef?: React$1.RefObject<FieldRoot.Actions | null> | undefined;
535
- }
536
- declare namespace FieldRoot {
537
- type State = FieldRootState;
538
- type Props = FieldRootProps;
539
- type Actions = FieldRootActions;
540
- }
541
- /**
542
- * An accessible label that is automatically associated with the select trigger.
543
- * Renders a `<div>` element.
544
- *
545
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
546
- */
547
- export declare const SelectLabel: React$1.ForwardRefExoticComponent<Omit<SelectLabelProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
548
- export type SelectLabelState = FieldRoot.State;
549
- export interface SelectLabelProps extends Omit<BaseUIComponentProps<"div", SelectLabel.State>, "id"> {
550
- }
551
- export declare namespace SelectLabel {
552
- type State = SelectLabelState;
553
- type Props = SelectLabelProps;
554
- }
555
- export declare type Axis = "x" | "y";
556
- export declare type ClientRectObject = Prettify<Rect & SideObject>;
557
- export declare type Coords = {
558
- [key in Axis]: number;
559
- };
560
- export declare type Dimensions = {
561
- [key in Length]: number;
562
- };
563
- export declare type Length = "width" | "height";
564
- export declare type Padding = number | Prettify<Partial<SideObject>>;
565
- export declare type Prettify<T> = {
566
- [K in keyof T]: T[K];
567
- } & {};
568
- export declare type Rect = Prettify<Coords & Dimensions>;
569
- export declare type Side = "top" | "right" | "bottom" | "left";
570
- export declare type SideObject = {
571
- [key in Side]: number;
572
- };
573
- /**
574
- * Custom positioning reference element.
575
- * @see https://floating-ui.com/docs/virtual-elements
576
- */
577
- export declare interface VirtualElement {
578
- getBoundingClientRect(): ClientRectObject;
579
- getClientRects?(): Array<ClientRectObject> | DOMRectList;
580
- contextElement?: Element;
581
- }
582
- export type InteractionType = "mouse" | "touch" | "pen" | "keyboard" | "";
583
- export type TransitionStatus = "starting" | "ending" | "idle" | undefined;
584
- export interface UseRenderElementComponentProps<State> {
585
- /**
586
- * The class name to apply to the rendered element.
587
- * Can be a string or a function that accepts the state and returns a string.
588
- */
589
- className?: string | ((state: State) => string | undefined) | undefined;
590
- /**
591
- * The render prop or React element to override the default element.
592
- */
593
- render?: undefined | React$1.ReactElement | ComponentRenderFn<React$1.HTMLAttributes<any>, State>;
594
- /**
595
- * The style to apply to the rendered element.
596
- * Can be a style object or a function that accepts the state and returns a style object.
597
- */
598
- style?: React$1.CSSProperties | ((state: State) => React$1.CSSProperties | undefined) | undefined;
599
- }
600
- export interface UseFloatingPortalNodeProps {
601
- ref?: React$1.Ref<HTMLDivElement> | undefined;
602
- container?: HTMLElement | ShadowRoot | null | React$1.RefObject<HTMLElement | ShadowRoot | null> | undefined;
603
- componentProps?: UseRenderElementComponentProps<any> | undefined;
604
- elementProps?: React$1.HTMLAttributes<HTMLDivElement> | undefined;
605
- }
606
- declare const FloatingPortal: React$1.ForwardRefExoticComponent<Omit<FloatingPortal.Props<any> & {
607
- renderGuards?: boolean | undefined;
608
- }, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
609
- export interface FloatingPortalState {
610
- }
611
- declare namespace FloatingPortal {
612
- type State = FloatingPortalState;
613
- interface Props<TState> extends BaseUIComponentProps<"div", TState> {
614
- /**
615
- * A parent element to render the portal element into.
616
- */
617
- container?: UseFloatingPortalNodeProps["container"] | undefined;
618
- }
619
- }
620
- type Side$1 = "top" | "bottom" | "left" | "right" | "inline-end" | "inline-start";
621
- export type Align = "start" | "center" | "end";
622
- export type Boundary = "clipping-ancestors" | Element | Element[] | Rect;
623
- export type OffsetFunction = (data: {
624
- side: Side$1;
625
- align: Align;
626
- anchor: {
627
- width: number;
628
- height: number;
629
- };
630
- positioner: {
631
- width: number;
632
- height: number;
633
- };
634
- }) => number;
635
- export interface SideFlipMode {
636
- /**
637
- * How to avoid collisions on the side axis.
638
- * - `'flip'`: If there is not enough space, place the popup on the opposite side.
639
- * - `'none'`: Keep the preferred side even if it overflows.
640
- */
641
- side?: "flip" | "none" | undefined;
642
- /**
643
- * How to avoid collisions on the align axis.
644
- * - `'flip'`: If there is not enough space, swap `'start'` and `'end'` alignment.
645
- * - `'shift'`: Keep the alignment and shift the popup to fit within the boundary.
646
- * - `'none'`: Keep the preferred alignment even if it overflows.
647
- */
648
- align?: "flip" | "shift" | "none" | undefined;
649
- /**
650
- * If both sides on the preferred axis do not fit, determines whether to fallback
651
- * to a side on the perpendicular axis and which logical side to prefer.
652
- * - `'start'`: Prefer the logical start side on the perpendicular axis.
653
- * - `'end'`: Prefer the logical end side on the perpendicular axis.
654
- * - `'none'`: Do not fallback to the perpendicular axis.
655
- */
656
- fallbackAxisSide?: "start" | "end" | "none" | undefined;
657
- }
658
- export interface SideShiftMode {
659
- /**
660
- * How to avoid collisions on the side axis.
661
- * - `'shift'`: Keep the preferred side and shift the popup to fit within the boundary.
662
- * - `'none'`: Keep the preferred side even if it overflows.
663
- */
664
- side?: "shift" | "none" | undefined;
665
- /**
666
- * How to avoid collisions on the align axis.
667
- * - `'shift'`: Keep the alignment and shift the popup to fit within the boundary.
668
- * - `'none'`: Keep the preferred alignment even if it overflows.
669
- */
670
- align?: "shift" | "none" | undefined;
671
- /**
672
- * If both sides on the preferred axis do not fit, determines whether to fallback
673
- * to a side on the perpendicular axis and which logical side to prefer.
674
- * - `'start'`: Prefer the logical start side on the perpendicular axis.
675
- * - `'end'`: Prefer the logical end side on the perpendicular axis.
676
- * - `'none'`: Do not fallback to the perpendicular axis.
677
- */
678
- fallbackAxisSide?: "start" | "end" | "none" | undefined;
679
- }
680
- export type CollisionAvoidance = SideFlipMode | SideShiftMode;
681
- export interface UseAnchorPositioningSharedParameters {
682
- /**
683
- * An element to position the popup against.
684
- * By default, the popup will be positioned against the trigger.
685
- */
686
- anchor?: Element | null | VirtualElement | React$1.RefObject<Element | null> | (() => Element | VirtualElement | null) | undefined;
687
- /**
688
- * Determines which CSS `position` property to use.
689
- * @default 'absolute'
690
- */
691
- positionMethod?: "absolute" | "fixed" | undefined;
692
- /**
693
- * Which side of the anchor element to align the popup against.
694
- * May automatically change to avoid collisions.
695
- * @default 'bottom'
696
- */
697
- side?: Side$1 | undefined;
698
- /**
699
- * Distance between the anchor and the popup in pixels.
700
- * Also accepts a function that returns the distance to read the dimensions of the anchor
701
- * and positioner elements, along with its side and alignment.
702
- *
703
- * The function takes a `data` object parameter with the following properties:
704
- * - `data.anchor`: the dimensions of the anchor element with properties `width` and `height`.
705
- * - `data.positioner`: the dimensions of the positioner element with properties `width` and `height`.
706
- * - `data.side`: which side of the anchor element the positioner is aligned against.
707
- * - `data.align`: how the positioner is aligned relative to the specified side.
708
- *
709
- * @example
710
- * ```jsx
711
- * <Positioner
712
- * sideOffset={({ side, align, anchor, positioner }) => {
713
- * return side === 'top' || side === 'bottom'
714
- * ? anchor.height
715
- * : anchor.width;
716
- * }}
717
- * />
718
- * ```
719
- *
720
- * @default 0
721
- */
722
- sideOffset?: number | OffsetFunction | undefined;
723
- /**
724
- * How to align the popup relative to the specified side.
725
- * @default 'center'
726
- */
727
- align?: Align | undefined;
728
- /**
729
- * Additional offset along the alignment axis in pixels.
730
- * Also accepts a function that returns the offset to read the dimensions of the anchor
731
- * and positioner elements, along with its side and alignment.
732
- *
733
- * The function takes a `data` object parameter with the following properties:
734
- * - `data.anchor`: the dimensions of the anchor element with properties `width` and `height`.
735
- * - `data.positioner`: the dimensions of the positioner element with properties `width` and `height`.
736
- * - `data.side`: which side of the anchor element the positioner is aligned against.
737
- * - `data.align`: how the positioner is aligned relative to the specified side.
738
- *
739
- * @example
740
- * ```jsx
741
- * <Positioner
742
- * alignOffset={({ side, align, anchor, positioner }) => {
743
- * return side === 'top' || side === 'bottom'
744
- * ? anchor.width
745
- * : anchor.height;
746
- * }}
747
- * />
748
- * ```
749
- *
750
- * @default 0
751
- */
752
- alignOffset?: number | OffsetFunction | undefined;
753
- /**
754
- * An element or a rectangle that delimits the area that the popup is confined to.
755
- * @default 'clipping-ancestors'
756
- */
757
- collisionBoundary?: Boundary | undefined;
758
- /**
759
- * Additional space to maintain from the edge of the collision boundary.
760
- * @default 5
761
- */
762
- collisionPadding?: Padding | undefined;
763
- /**
764
- * Whether to maintain the popup in the viewport after
765
- * the anchor element was scrolled out of view.
766
- * @default false
767
- */
768
- sticky?: boolean | undefined;
769
- /**
770
- * Minimum distance to maintain between the arrow and the edges of the popup.
771
- *
772
- * Use it to prevent the arrow element from hanging out of the rounded corners of a popup.
773
- * @default 5
774
- */
775
- arrowPadding?: number | undefined;
776
- /**
777
- * Whether to disable the popup from tracking any layout shift of its positioning anchor.
778
- * @default false
779
- */
780
- disableAnchorTracking?: boolean | undefined;
781
- /**
782
- * Determines how to handle collisions when positioning the popup.
783
- *
784
- * `side` controls overflow on the preferred placement axis (`top`/`bottom` or `left`/`right`):
785
- * - `'flip'`: keep the requested side when it fits; otherwise try the opposite side
786
- * (`top` and `bottom`, or `left` and `right`).
787
- * - `'shift'`: never change side; keep the requested side and move the popup within
788
- * the clipping boundary so it stays visible.
789
- * - `'none'`: do not correct side-axis overflow.
790
- *
791
- * `align` controls overflow on the alignment axis (`start`/`center`/`end`):
792
- * - `'flip'`: keep side, but swap `start` and `end` when the requested alignment overflows.
793
- * - `'shift'`: keep side and requested alignment, then nudge the popup along the
794
- * alignment axis to fit.
795
- * - `'none'`: do not correct alignment-axis overflow.
796
- *
797
- * `fallbackAxisSide` controls fallback behavior on the perpendicular axis when the
798
- * preferred axis cannot fit:
799
- * - `'start'`: allow perpendicular fallback and try the logical start side first
800
- * (`top` before `bottom`, or `left` before `right` in LTR).
801
- * - `'end'`: allow perpendicular fallback and try the logical end side first
802
- * (`bottom` before `top`, or `right` before `left` in LTR).
803
- * - `'none'`: do not fallback to the perpendicular axis.
804
- *
805
- * When `side` is `'shift'`, explicitly setting `align` only supports `'shift'` or `'none'`.
806
- * If `align` is omitted, it defaults to `'flip'`.
807
- *
808
- * @example
809
- * ```jsx
810
- * <Positioner
811
- * collisionAvoidance={{
812
- * side: 'shift',
813
- * align: 'shift',
814
- * fallbackAxisSide: 'none',
815
- * }}
816
- * />
817
- * ```
818
- *
819
- */
820
- collisionAvoidance?: CollisionAvoidance | undefined;
821
- }
822
- /**
823
- * A button that opens the select popup.
824
- * Renders a `<button>` element.
825
- *
826
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
827
- */
828
- export declare const SelectTrigger: React$1.ForwardRefExoticComponent<Omit<SelectTriggerProps, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
829
- export interface SelectTriggerState extends FieldRootState {
830
- /**
831
- * Whether the select popup is currently open.
832
- */
833
- open: boolean;
834
- /**
835
- * Whether the select popup is readonly.
836
- */
837
- readOnly: boolean;
838
- /**
839
- * Indicates which side the corresponding popup is positioned relative to its anchor.
840
- */
841
- popupSide: Side$1 | null;
842
- /**
843
- * The value of the currently selected item.
844
- */
845
- value: any;
846
- /**
847
- * Whether the select doesn't have a value.
848
- */
849
- placeholder: boolean;
850
- }
851
- export interface SelectTriggerProps extends NativeButtonProps, BaseUIComponentProps<"button", SelectTriggerState> {
852
- children?: React$1.ReactNode;
853
- /**
854
- * Whether the component should ignore user interaction.
855
- */
856
- disabled?: boolean | undefined;
857
- }
858
- export declare namespace SelectTrigger {
859
- type State = SelectTriggerState;
860
- type Props = SelectTriggerProps;
861
- }
862
- /**
863
- * A text label of the currently selected item.
864
- * Renders a `<span>` element.
865
- *
866
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
867
- */
868
- export declare const SelectValue: React$1.ForwardRefExoticComponent<Omit<SelectValueProps, "ref"> & React$1.RefAttributes<HTMLSpanElement>>;
869
- export interface SelectValueState {
870
- /**
871
- * The value of the currently selected item.
872
- */
873
- value: any;
874
- /**
875
- * Whether the placeholder is being displayed.
876
- */
877
- placeholder: boolean;
878
- }
879
- export interface SelectValueProps extends Omit<BaseUIComponentProps<"span", SelectValueState>, "children"> {
880
- /**
881
- * Accepts a function that returns a `ReactNode` to format the selected value.
882
- * @example
883
- * ```tsx
884
- * <Select.Value>
885
- * {(value: string | null) => value ? labels[value] : 'No value'}
886
- * </Select.Value>
887
- * ```
888
- */
889
- children?: React$1.ReactNode | ((value: any) => React$1.ReactNode);
890
- /**
891
- * The placeholder value to display when no value is selected.
892
- * This is overridden by `children` if specified, or by a null item's label in `items`.
893
- */
894
- placeholder?: React$1.ReactNode;
895
- }
896
- export declare namespace SelectValue {
897
- type State = SelectValueState;
898
- type Props = SelectValueProps;
899
- }
900
- /**
901
- * An icon that indicates that the trigger button opens a select popup.
902
- * Renders a `<span>` element.
903
- *
904
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
905
- */
906
- export declare const SelectIcon: React$1.ForwardRefExoticComponent<Omit<SelectIconProps, "ref"> & React$1.RefAttributes<HTMLSpanElement>>;
907
- export interface SelectIconState {
908
- /**
909
- * Whether the select popup is currently open.
910
- */
911
- open: boolean;
912
- }
913
- export interface SelectIconProps extends BaseUIComponentProps<"span", SelectIconState> {
914
- }
915
- export declare namespace SelectIcon {
916
- type State = SelectIconState;
917
- type Props = SelectIconProps;
918
- }
919
- /**
920
- * A portal element that moves the popup to a different part of the DOM.
921
- * By default, the portal element is appended to `<body>`.
922
- * Renders a `<div>` element.
923
- *
924
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
925
- */
926
- export declare const SelectPortal: React$1.ForwardRefExoticComponent<Omit<SelectPortalProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
927
- export interface SelectPortalState {
928
- }
929
- export interface SelectPortalProps extends FloatingPortal.Props<SelectPortalState> {
930
- }
931
- export declare namespace SelectPortal {
932
- type State = SelectPortalState;
933
- type Props = SelectPortalProps;
934
- }
935
- /**
936
- * An overlay displayed beneath the menu popup.
937
- * Renders a `<div>` element.
938
- *
939
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
940
- */
941
- export declare const SelectBackdrop: React$1.ForwardRefExoticComponent<Omit<SelectBackdropProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
942
- export interface SelectBackdropState {
943
- /**
944
- * Whether the component is open.
945
- */
946
- open: boolean;
947
- /**
948
- * The transition status of the component.
949
- */
950
- transitionStatus: TransitionStatus;
951
- }
952
- export interface SelectBackdropProps extends BaseUIComponentProps<"div", SelectBackdropState> {
953
- }
954
- export declare namespace SelectBackdrop {
955
- type State = SelectBackdropState;
956
- type Props = SelectBackdropProps;
957
- }
958
- /**
959
- * Positions the select popup.
960
- * Renders a `<div>` element.
961
- *
962
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
963
- */
964
- export declare const SelectPositioner: React$1.ForwardRefExoticComponent<Omit<SelectPositionerProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
965
- export interface SelectPositionerState {
966
- /**
967
- * Whether the component is open.
968
- */
969
- open: boolean;
970
- /**
971
- * The side of the anchor the component is placed on.
972
- */
973
- side: Side$1 | "none";
974
- /**
975
- * The alignment of the component relative to the anchor.
976
- */
977
- align: Align;
978
- /**
979
- * Whether the anchor element is hidden.
980
- */
981
- anchorHidden: boolean;
982
- }
983
- export interface SelectPositionerProps extends UseAnchorPositioningSharedParameters, BaseUIComponentProps<"div", SelectPositionerState> {
984
- /**
985
- * Whether the positioner overlaps the trigger so the selected item's text is aligned with the trigger's value text. This only applies to mouse input and is automatically disabled if there is not enough space.
986
- * @default true
987
- */
988
- alignItemWithTrigger?: boolean | undefined;
989
- }
990
- export declare namespace SelectPositioner {
991
- type State = SelectPositionerState;
992
- type Props = SelectPositionerProps;
993
- }
994
- /**
995
- * A container for the select list.
996
- * Renders a `<div>` element.
997
- *
998
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
999
- */
1000
- export declare const SelectPopup: React$1.ForwardRefExoticComponent<Omit<SelectPopupProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1001
- export interface SelectPopupProps extends BaseUIComponentProps<"div", SelectPopupState> {
1002
- children?: React$1.ReactNode;
1003
- /**
1004
- * Determines the element to focus when the select popup is closed.
1005
- *
1006
- * - `false`: Do not move focus.
1007
- * - `true`: Move focus based on the default behavior (trigger or previously focused element).
1008
- * - `RefObject`: Move focus to the ref element.
1009
- * - `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).
1010
- * Return an element to focus, `true` to use the default behavior, or `false`/`undefined` to do nothing.
1011
- */
1012
- finalFocus?: boolean | React$1.RefObject<HTMLElement | null> | ((closeType: InteractionType) => boolean | HTMLElement | null | void) | undefined;
1013
- }
1014
- export interface SelectPopupState {
1015
- /**
1016
- * The side of the anchor the component is placed on.
1017
- */
1018
- side: Side$1 | "none";
1019
- /**
1020
- * The alignment of the component relative to the anchor.
1021
- */
1022
- align: Align;
1023
- /**
1024
- * Whether the component is open.
1025
- */
1026
- open: boolean;
1027
- /**
1028
- * The transition status of the component.
1029
- */
1030
- transitionStatus: TransitionStatus;
1031
- }
1032
- export declare namespace SelectPopup {
1033
- type Props = SelectPopupProps;
1034
- type State = SelectPopupState;
1035
- }
1036
- /**
1037
- * A container for the select items.
1038
- * Renders a `<div>` element.
1039
- *
1040
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1041
- */
1042
- export declare const SelectList: React$1.ForwardRefExoticComponent<Omit<SelectListProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1043
- export interface SelectListProps extends BaseUIComponentProps<"div", SelectListState> {
1044
- }
1045
- export interface SelectListState {
1046
- }
1047
- export declare namespace SelectList {
1048
- type Props = SelectListProps;
1049
- type State = SelectListState;
1050
- }
1051
- /**
1052
- * An individual option in the select popup.
1053
- * Renders a `<div>` element.
1054
- *
1055
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1056
- */
1057
- export declare const SelectItem: React$1.NamedExoticComponent<Omit<SelectItemProps, "ref"> & React$1.RefAttributes<HTMLElement>>;
1058
- export interface SelectItemState {
1059
- /**
1060
- * Whether the item should ignore user interaction.
1061
- */
1062
- disabled: boolean;
1063
- /**
1064
- * Whether the item is selected.
1065
- */
1066
- selected: boolean;
1067
- /**
1068
- * Whether the item is highlighted.
1069
- */
1070
- highlighted: boolean;
1071
- }
1072
- export interface SelectItemProps extends NonNativeButtonProps, Omit<BaseUIComponentProps<"div", SelectItemState>, "id"> {
1073
- children?: React$1.ReactNode;
1074
- /**
1075
- * A unique value that identifies this select item.
1076
- * @default null
1077
- */
1078
- value?: any;
1079
- /**
1080
- * Whether the component should ignore user interaction.
1081
- * @default false
1082
- */
1083
- disabled?: boolean | undefined;
1084
- /**
1085
- * Specifies the text label to use when the item is matched during keyboard text navigation.
1086
- *
1087
- * Defaults to the item text content if not provided.
1088
- */
1089
- label?: string | undefined;
1090
- }
1091
- export declare namespace SelectItem {
1092
- type State = SelectItemState;
1093
- type Props = SelectItemProps;
1094
- }
1095
- /**
1096
- * Indicates whether the select item is selected.
1097
- * Renders a `<span>` element.
1098
- *
1099
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1100
- */
1101
- export declare const SelectItemIndicator: React$1.ForwardRefExoticComponent<Omit<SelectItemIndicatorProps, "ref"> & React$1.RefAttributes<HTMLSpanElement>>;
1102
- export interface SelectItemIndicatorState {
1103
- /**
1104
- * Whether the item is selected.
1105
- */
1106
- selected: boolean;
1107
- /**
1108
- * The transition status of the component.
1109
- */
1110
- transitionStatus: TransitionStatus;
1111
- }
1112
- export interface SelectItemIndicatorProps extends BaseUIComponentProps<"span", SelectItemIndicatorState> {
1113
- children?: React$1.ReactNode;
1114
- /**
1115
- * Whether to keep the HTML element in the DOM when the item is not selected.
1116
- */
1117
- keepMounted?: boolean | undefined;
1118
- }
1119
- export declare namespace SelectItemIndicator {
1120
- type State = SelectItemIndicatorState;
1121
- type Props = SelectItemIndicatorProps;
1122
- }
1123
- /**
1124
- * A text label of the select item.
1125
- * Renders a `<div>` element.
1126
- *
1127
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1128
- */
1129
- export declare const SelectItemText: React$1.NamedExoticComponent<Omit<SelectItemTextProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1130
- export interface SelectItemTextState {
1131
- }
1132
- export interface SelectItemTextProps extends BaseUIComponentProps<"div", SelectItemTextState> {
1133
- }
1134
- export declare namespace SelectItemText {
1135
- type State = SelectItemTextState;
1136
- type Props = SelectItemTextProps;
1137
- }
1138
- /**
1139
- * Displays an element positioned against the select popup anchor.
1140
- * Renders a `<div>` element.
1141
- *
1142
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1143
- */
1144
- export declare const SelectArrow: React$1.ForwardRefExoticComponent<Omit<SelectArrowProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1145
- export interface SelectArrowState {
1146
- /**
1147
- * Whether the select popup is currently open.
1148
- */
1149
- open: boolean;
1150
- /**
1151
- * The side of the anchor the component is placed on.
1152
- */
1153
- side: Side$1 | "none";
1154
- /**
1155
- * The alignment of the component relative to the anchor.
1156
- */
1157
- align: Align;
1158
- /**
1159
- * Whether the arrow cannot be centered on the anchor.
1160
- */
1161
- uncentered: boolean;
1162
- }
1163
- export interface SelectArrowProps extends BaseUIComponentProps<"div", SelectArrowState> {
1164
- }
1165
- export declare namespace SelectArrow {
1166
- type State = SelectArrowState;
1167
- type Props = SelectArrowProps;
1168
- }
1169
- /**
1170
- * An element that scrolls the select popup down when hovered. Does not render when using touch input.
1171
- * Renders a `<div>` element.
1172
- *
1173
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1174
- */
1175
- export declare const SelectScrollDownArrow: React$1.ForwardRefExoticComponent<Omit<SelectScrollDownArrowProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1176
- export interface SelectScrollDownArrowState {
1177
- }
1178
- export interface SelectScrollDownArrowProps extends BaseUIComponentProps<"div", SelectScrollDownArrowState> {
1179
- /**
1180
- * Whether to keep the HTML element in the DOM while the select popup is not scrollable.
1181
- * @default false
1182
- */
1183
- keepMounted?: boolean | undefined;
1184
- }
1185
- export declare namespace SelectScrollDownArrow {
1186
- type State = SelectScrollDownArrowState;
1187
- type Props = SelectScrollDownArrowProps;
1188
- }
1189
- /**
1190
- * An element that scrolls the select popup up when hovered. Does not render when using touch input.
1191
- * Renders a `<div>` element.
1192
- *
1193
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1194
- */
1195
- export declare const SelectScrollUpArrow: React$1.ForwardRefExoticComponent<Omit<SelectScrollUpArrowProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1196
- export interface SelectScrollUpArrowState {
1197
- }
1198
- export interface SelectScrollUpArrowProps extends BaseUIComponentProps<"div", SelectScrollUpArrowState> {
1199
- /**
1200
- * Whether to keep the HTML element in the DOM while the select popup is not scrollable.
1201
- * @default false
1202
- */
1203
- keepMounted?: boolean | undefined;
1204
- }
1205
- export declare namespace SelectScrollUpArrow {
1206
- type State = SelectScrollUpArrowState;
1207
- type Props = SelectScrollUpArrowProps;
1208
- }
1209
- /**
1210
- * Groups related select items with the corresponding label.
1211
- * Renders a `<div>` element.
1212
- *
1213
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1214
- */
1215
- export declare const SelectGroup: React$1.ForwardRefExoticComponent<Omit<SelectGroupProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1216
- export interface SelectGroupState {
1217
- }
1218
- export interface SelectGroupProps extends BaseUIComponentProps<"div", SelectGroupState> {
1219
- }
1220
- export declare namespace SelectGroup {
1221
- type State = SelectGroupState;
1222
- type Props = SelectGroupProps;
1223
- }
1224
- /**
1225
- * An accessible label that is automatically associated with its parent group.
1226
- * Renders a `<div>` element.
1227
- *
1228
- * Documentation: [Base UI Select](https://base-ui.com/react/components/select)
1229
- */
1230
- export declare const SelectGroupLabel: React$1.ForwardRefExoticComponent<Omit<SelectGroupLabelProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1231
- export interface SelectGroupLabelState {
1232
- }
1233
- export interface SelectGroupLabelProps extends BaseUIComponentProps<"div", SelectGroupLabelState> {
1234
- }
1235
- export declare namespace SelectGroupLabel {
1236
- type State = SelectGroupLabelState;
1237
- type Props = SelectGroupLabelProps;
1238
- }
1239
- declare const Separator: React$1.ForwardRefExoticComponent<Omit<SeparatorProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1240
- export interface SeparatorProps extends BaseUIComponentProps<"div", SeparatorState> {
1241
- /**
1242
- * The orientation of the separator.
1243
- * @default 'horizontal'
1244
- */
1245
- orientation?: Orientation | undefined;
1246
- }
1247
- export interface SeparatorState {
1248
- /**
1249
- * The orientation of the separator.
1250
- */
1251
- orientation: Orientation;
1252
- }
1253
- declare namespace Separator {
1254
- type Props = SeparatorProps;
1255
- type State = SeparatorState;
1256
- }
1257
-
1258
- declare namespace Select {
1259
- export { SelectArrow as Arrow, SelectBackdrop as Backdrop, SelectGroup as Group, SelectGroupLabel as GroupLabel, SelectIcon as Icon, SelectItem as Item, SelectItemIndicator as ItemIndicator, SelectItemText as ItemText, SelectLabel as Label, SelectList as List, SelectPopup as Popup, SelectPortal as Portal, SelectPositioner as Positioner, SelectRoot as Root, SelectScrollDownArrow as ScrollDownArrow, SelectScrollUpArrow as ScrollUpArrow, SelectTrigger as Trigger, SelectValue as Value, Separator };
1260
- }
1261
-
1262
- export {
1263
- Select,
1264
- };
1265
-
1266
- export {};