@base-ui/react 1.2.0 → 1.3.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 (938) hide show
  1. package/CHANGELOG.md +148 -1
  2. package/accordion/header/AccordionHeader.d.ts +4 -2
  3. package/accordion/item/AccordionItem.d.ts +10 -4
  4. package/accordion/item/AccordionItemContext.d.ts +2 -2
  5. package/accordion/item/stateAttributesMapping.d.ts +2 -2
  6. package/accordion/panel/AccordionPanel.d.ts +6 -3
  7. package/accordion/root/AccordionRoot.d.ts +19 -10
  8. package/accordion/root/AccordionRootContext.d.ts +7 -7
  9. package/accordion/trigger/AccordionTrigger.d.ts +4 -2
  10. package/accordion/trigger/AccordionTrigger.js +3 -1
  11. package/alert-dialog/root/AlertDialogRoot.d.ts +2 -0
  12. package/autocomplete/index.d.ts +1 -0
  13. package/autocomplete/index.parts.d.ts +1 -0
  14. package/autocomplete/index.parts.js +7 -0
  15. package/autocomplete/root/AutocompleteRoot.d.ts +4 -4
  16. package/autocomplete/root/AutocompleteRoot.js +4 -1
  17. package/avatar/fallback/AvatarFallback.d.ts +3 -6
  18. package/avatar/fallback/AvatarFallback.js +4 -32
  19. package/avatar/image/AvatarImage.d.ts +6 -3
  20. package/avatar/image/AvatarImage.js +2 -3
  21. package/avatar/image/AvatarImageDataAttributes.d.ts +10 -0
  22. package/avatar/image/AvatarImageDataAttributes.js +18 -0
  23. package/avatar/root/AvatarRoot.d.ts +4 -1
  24. package/checkbox/indicator/CheckboxIndicator.d.ts +6 -3
  25. package/checkbox/root/CheckboxRoot.d.ts +3 -3
  26. package/checkbox/root/CheckboxRoot.js +4 -1
  27. package/checkbox/root/CheckboxRootContext.d.ts +4 -4
  28. package/checkbox/utils/useStateAttributesMapping.d.ts +2 -2
  29. package/checkbox-group/CheckboxGroup.d.ts +3 -3
  30. package/checkbox-group/CheckboxGroupContext.d.ts +2 -2
  31. package/checkbox-group/useCheckboxGroupParent.d.ts +2 -5
  32. package/collapsible/panel/CollapsiblePanel.d.ts +6 -3
  33. package/collapsible/panel/useCollapsiblePanel.d.ts +2 -5
  34. package/collapsible/root/CollapsibleRoot.d.ts +3 -3
  35. package/collapsible/root/CollapsibleRootContext.d.ts +4 -4
  36. package/collapsible/root/stateAttributesMapping.d.ts +2 -2
  37. package/collapsible/root/useCollapsibleRoot.d.ts +2 -5
  38. package/collapsible/trigger/CollapsibleTrigger.d.ts +4 -2
  39. package/combobox/arrow/ComboboxArrow.d.ts +10 -1
  40. package/combobox/backdrop/ComboboxBackdrop.d.ts +4 -1
  41. package/combobox/chip/ComboboxChip.d.ts +1 -1
  42. package/combobox/chip-remove/ComboboxChipRemove.d.ts +1 -1
  43. package/combobox/chips/ComboboxChips.d.ts +1 -1
  44. package/combobox/clear/ComboboxClear.d.ts +4 -1
  45. package/combobox/collection/ComboboxCollection.d.ts +2 -0
  46. package/combobox/empty/ComboboxEmpty.d.ts +1 -1
  47. package/combobox/group/ComboboxGroup.d.ts +1 -1
  48. package/combobox/group-label/ComboboxGroupLabel.d.ts +1 -1
  49. package/combobox/icon/ComboboxIcon.d.ts +1 -1
  50. package/combobox/index.d.ts +2 -0
  51. package/combobox/index.parts.d.ts +2 -0
  52. package/combobox/index.parts.js +14 -0
  53. package/combobox/input/ComboboxInput.d.ts +3 -3
  54. package/combobox/input/ComboboxInput.js +22 -5
  55. package/combobox/input-group/ComboboxInputGroup.d.ts +40 -0
  56. package/combobox/input-group/ComboboxInputGroup.js +68 -0
  57. package/combobox/input-group/ComboboxInputGroupDataAttributes.d.ts +55 -0
  58. package/combobox/input-group/ComboboxInputGroupDataAttributes.js +62 -0
  59. package/combobox/item/ComboboxItem.d.ts +1 -1
  60. package/combobox/item/ComboboxItem.js +2 -1
  61. package/combobox/item-indicator/ComboboxItemIndicator.d.ts +7 -1
  62. package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.ts +10 -0
  63. package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.js +18 -0
  64. package/combobox/label/ComboboxLabel.d.ts +16 -0
  65. package/combobox/label/ComboboxLabel.js +68 -0
  66. package/combobox/list/ComboboxList.d.ts +1 -1
  67. package/combobox/popup/ComboboxPopup.d.ts +21 -3
  68. package/combobox/popup/ComboboxPopup.js +10 -2
  69. package/combobox/portal/ComboboxPortal.d.ts +3 -4
  70. package/combobox/positioner/ComboboxPositioner.d.ts +14 -2
  71. package/combobox/positioner/ComboboxPositioner.js +3 -2
  72. package/combobox/root/AriaCombobox.d.ts +9 -8
  73. package/combobox/root/AriaCombobox.js +14 -6
  74. package/combobox/root/ComboboxRoot.d.ts +4 -4
  75. package/combobox/row/ComboboxRow.d.ts +1 -1
  76. package/combobox/status/ComboboxStatus.d.ts +1 -1
  77. package/combobox/store.d.ts +10 -4
  78. package/combobox/store.js +2 -0
  79. package/combobox/trigger/ComboboxTrigger.d.ts +3 -3
  80. package/combobox/trigger/ComboboxTrigger.js +5 -2
  81. package/combobox/utils/ComboboxInternalDismissButton.d.ts +5 -0
  82. package/combobox/utils/ComboboxInternalDismissButton.js +44 -0
  83. package/composite/item/CompositeItem.d.ts +3 -1
  84. package/composite/list/CompositeList.d.ts +3 -1
  85. package/composite/list/useCompositeListItem.d.ts +1 -1
  86. package/composite/root/CompositeRoot.d.ts +4 -2
  87. package/composite/root/useCompositeRoot.d.ts +1 -1
  88. package/context-menu/trigger/ContextMenuTrigger.d.ts +3 -3
  89. package/dialog/backdrop/DialogBackdrop.d.ts +4 -1
  90. package/dialog/close/DialogClose.d.ts +1 -1
  91. package/dialog/description/DialogDescription.d.ts +1 -1
  92. package/dialog/popup/DialogPopup.d.ts +6 -3
  93. package/dialog/portal/DialogPortal.d.ts +4 -5
  94. package/dialog/root/DialogRoot.d.ts +8 -3
  95. package/dialog/root/useDialogRoot.d.ts +3 -7
  96. package/dialog/root/useDialogRoot.js +2 -5
  97. package/dialog/title/DialogTitle.d.ts +1 -1
  98. package/dialog/trigger/DialogTrigger.d.ts +1 -1
  99. package/dialog/viewport/DialogViewport.d.ts +3 -0
  100. package/direction-provider/DirectionProvider.d.ts +2 -0
  101. package/drawer/backdrop/DrawerBackdrop.d.ts +4 -1
  102. package/drawer/backdrop/DrawerBackdropDataAttributes.d.ts +18 -0
  103. package/drawer/backdrop/DrawerBackdropDataAttributes.js +26 -0
  104. package/drawer/close/DrawerClose.d.ts +1 -1
  105. package/drawer/content/DrawerContent.d.ts +1 -1
  106. package/drawer/content/DrawerContent.js +2 -1
  107. package/drawer/content/DrawerContentDataAttributes.d.ts +1 -0
  108. package/drawer/content/DrawerContentDataAttributes.js +7 -0
  109. package/drawer/description/DrawerDescription.d.ts +1 -1
  110. package/drawer/indent/DrawerIndent.d.ts +3 -2
  111. package/drawer/indent/DrawerIndent.js +2 -1
  112. package/drawer/indent-background/DrawerIndentBackground.d.ts +5 -3
  113. package/drawer/indent-background/DrawerIndentBackground.js +4 -2
  114. package/drawer/index.d.ts +2 -1
  115. package/drawer/index.js +3 -3
  116. package/drawer/index.parts.d.ts +1 -0
  117. package/drawer/index.parts.js +7 -0
  118. package/drawer/popup/DrawerPopup.d.ts +6 -3
  119. package/drawer/popup/DrawerPopup.js +59 -2
  120. package/drawer/popup/DrawerPopupDataAttributes.d.ts +16 -0
  121. package/drawer/popup/DrawerPopupDataAttributes.js +18 -1
  122. package/drawer/portal/DrawerPortal.d.ts +2 -2
  123. package/drawer/provider/DrawerProvider.d.ts +2 -2
  124. package/drawer/provider/DrawerProvider.js +2 -2
  125. package/drawer/root/DrawerRoot.d.ts +5 -3
  126. package/drawer/root/DrawerRoot.js +6 -2
  127. package/drawer/swipe-area/DrawerSwipeArea.d.ts +1 -1
  128. package/drawer/swipe-area/DrawerSwipeArea.js +12 -10
  129. package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.ts +23 -0
  130. package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.js +31 -0
  131. package/drawer/title/DrawerTitle.d.ts +1 -1
  132. package/drawer/trigger/DrawerTrigger.d.ts +1 -1
  133. package/drawer/viewport/DrawerViewport.d.ts +4 -1
  134. package/drawer/viewport/DrawerViewport.js +165 -43
  135. package/drawer/viewport/DrawerViewportDataAttributes.d.ts +22 -0
  136. package/drawer/viewport/DrawerViewportDataAttributes.js +30 -0
  137. package/esm/accordion/header/AccordionHeader.d.ts +4 -2
  138. package/esm/accordion/item/AccordionItem.d.ts +10 -4
  139. package/esm/accordion/item/AccordionItemContext.d.ts +2 -2
  140. package/esm/accordion/item/stateAttributesMapping.d.ts +2 -2
  141. package/esm/accordion/panel/AccordionPanel.d.ts +6 -3
  142. package/esm/accordion/root/AccordionRoot.d.ts +19 -10
  143. package/esm/accordion/root/AccordionRootContext.d.ts +7 -7
  144. package/esm/accordion/trigger/AccordionTrigger.d.ts +4 -2
  145. package/esm/accordion/trigger/AccordionTrigger.js +3 -1
  146. package/esm/alert-dialog/root/AlertDialogRoot.d.ts +2 -0
  147. package/esm/autocomplete/index.d.ts +1 -0
  148. package/esm/autocomplete/index.parts.d.ts +1 -0
  149. package/esm/autocomplete/index.parts.js +1 -0
  150. package/esm/autocomplete/root/AutocompleteRoot.d.ts +4 -4
  151. package/esm/autocomplete/root/AutocompleteRoot.js +4 -1
  152. package/esm/avatar/fallback/AvatarFallback.d.ts +3 -6
  153. package/esm/avatar/fallback/AvatarFallback.js +4 -31
  154. package/esm/avatar/image/AvatarImage.d.ts +6 -3
  155. package/esm/avatar/image/AvatarImage.js +2 -3
  156. package/esm/avatar/image/AvatarImageDataAttributes.d.ts +10 -0
  157. package/esm/avatar/image/AvatarImageDataAttributes.js +12 -0
  158. package/esm/avatar/root/AvatarRoot.d.ts +4 -1
  159. package/esm/checkbox/indicator/CheckboxIndicator.d.ts +6 -3
  160. package/esm/checkbox/root/CheckboxRoot.d.ts +3 -3
  161. package/esm/checkbox/root/CheckboxRoot.js +4 -1
  162. package/esm/checkbox/root/CheckboxRootContext.d.ts +4 -4
  163. package/esm/checkbox/utils/useStateAttributesMapping.d.ts +2 -2
  164. package/esm/checkbox-group/CheckboxGroup.d.ts +3 -3
  165. package/esm/checkbox-group/CheckboxGroupContext.d.ts +2 -2
  166. package/esm/checkbox-group/useCheckboxGroupParent.d.ts +2 -5
  167. package/esm/collapsible/panel/CollapsiblePanel.d.ts +6 -3
  168. package/esm/collapsible/panel/useCollapsiblePanel.d.ts +2 -5
  169. package/esm/collapsible/root/CollapsibleRoot.d.ts +3 -3
  170. package/esm/collapsible/root/CollapsibleRootContext.d.ts +4 -4
  171. package/esm/collapsible/root/stateAttributesMapping.d.ts +2 -2
  172. package/esm/collapsible/root/useCollapsibleRoot.d.ts +2 -5
  173. package/esm/collapsible/trigger/CollapsibleTrigger.d.ts +4 -2
  174. package/esm/combobox/arrow/ComboboxArrow.d.ts +10 -1
  175. package/esm/combobox/backdrop/ComboboxBackdrop.d.ts +4 -1
  176. package/esm/combobox/chip/ComboboxChip.d.ts +1 -1
  177. package/esm/combobox/chip-remove/ComboboxChipRemove.d.ts +1 -1
  178. package/esm/combobox/chips/ComboboxChips.d.ts +1 -1
  179. package/esm/combobox/clear/ComboboxClear.d.ts +4 -1
  180. package/esm/combobox/collection/ComboboxCollection.d.ts +2 -0
  181. package/esm/combobox/empty/ComboboxEmpty.d.ts +1 -1
  182. package/esm/combobox/group/ComboboxGroup.d.ts +1 -1
  183. package/esm/combobox/group-label/ComboboxGroupLabel.d.ts +1 -1
  184. package/esm/combobox/icon/ComboboxIcon.d.ts +1 -1
  185. package/esm/combobox/index.d.ts +2 -0
  186. package/esm/combobox/index.parts.d.ts +2 -0
  187. package/esm/combobox/index.parts.js +2 -0
  188. package/esm/combobox/input/ComboboxInput.d.ts +3 -3
  189. package/esm/combobox/input/ComboboxInput.js +22 -5
  190. package/esm/combobox/input-group/ComboboxInputGroup.d.ts +40 -0
  191. package/esm/combobox/input-group/ComboboxInputGroup.js +63 -0
  192. package/esm/combobox/input-group/ComboboxInputGroupDataAttributes.d.ts +55 -0
  193. package/esm/combobox/input-group/ComboboxInputGroupDataAttributes.js +56 -0
  194. package/esm/combobox/item/ComboboxItem.d.ts +1 -1
  195. package/esm/combobox/item/ComboboxItem.js +2 -1
  196. package/esm/combobox/item-indicator/ComboboxItemIndicator.d.ts +7 -1
  197. package/esm/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.ts +10 -0
  198. package/esm/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.js +12 -0
  199. package/esm/combobox/label/ComboboxLabel.d.ts +16 -0
  200. package/esm/combobox/label/ComboboxLabel.js +63 -0
  201. package/esm/combobox/list/ComboboxList.d.ts +1 -1
  202. package/esm/combobox/popup/ComboboxPopup.d.ts +21 -3
  203. package/esm/combobox/popup/ComboboxPopup.js +11 -3
  204. package/esm/combobox/portal/ComboboxPortal.d.ts +3 -4
  205. package/esm/combobox/positioner/ComboboxPositioner.d.ts +14 -2
  206. package/esm/combobox/positioner/ComboboxPositioner.js +3 -2
  207. package/esm/combobox/root/AriaCombobox.d.ts +9 -8
  208. package/esm/combobox/root/AriaCombobox.js +14 -6
  209. package/esm/combobox/root/ComboboxRoot.d.ts +4 -4
  210. package/esm/combobox/row/ComboboxRow.d.ts +1 -1
  211. package/esm/combobox/status/ComboboxStatus.d.ts +1 -1
  212. package/esm/combobox/store.d.ts +10 -4
  213. package/esm/combobox/store.js +2 -0
  214. package/esm/combobox/trigger/ComboboxTrigger.d.ts +3 -3
  215. package/esm/combobox/trigger/ComboboxTrigger.js +5 -2
  216. package/esm/combobox/utils/ComboboxInternalDismissButton.d.ts +5 -0
  217. package/esm/combobox/utils/ComboboxInternalDismissButton.js +38 -0
  218. package/esm/composite/item/CompositeItem.d.ts +3 -1
  219. package/esm/composite/list/CompositeList.d.ts +3 -1
  220. package/esm/composite/list/useCompositeListItem.d.ts +1 -1
  221. package/esm/composite/root/CompositeRoot.d.ts +4 -2
  222. package/esm/composite/root/useCompositeRoot.d.ts +1 -1
  223. package/esm/context-menu/trigger/ContextMenuTrigger.d.ts +3 -3
  224. package/esm/dialog/backdrop/DialogBackdrop.d.ts +4 -1
  225. package/esm/dialog/close/DialogClose.d.ts +1 -1
  226. package/esm/dialog/description/DialogDescription.d.ts +1 -1
  227. package/esm/dialog/popup/DialogPopup.d.ts +6 -3
  228. package/esm/dialog/portal/DialogPortal.d.ts +4 -5
  229. package/esm/dialog/root/DialogRoot.d.ts +8 -3
  230. package/esm/dialog/root/useDialogRoot.d.ts +3 -7
  231. package/esm/dialog/root/useDialogRoot.js +2 -5
  232. package/esm/dialog/title/DialogTitle.d.ts +1 -1
  233. package/esm/dialog/trigger/DialogTrigger.d.ts +1 -1
  234. package/esm/dialog/viewport/DialogViewport.d.ts +3 -0
  235. package/esm/direction-provider/DirectionProvider.d.ts +2 -0
  236. package/esm/drawer/backdrop/DrawerBackdrop.d.ts +4 -1
  237. package/esm/drawer/backdrop/DrawerBackdropDataAttributes.d.ts +18 -0
  238. package/esm/drawer/backdrop/DrawerBackdropDataAttributes.js +20 -0
  239. package/esm/drawer/close/DrawerClose.d.ts +1 -1
  240. package/esm/drawer/content/DrawerContent.d.ts +1 -1
  241. package/esm/drawer/content/DrawerContent.js +2 -1
  242. package/esm/drawer/content/DrawerContentDataAttributes.d.ts +1 -0
  243. package/esm/drawer/content/DrawerContentDataAttributes.js +1 -0
  244. package/esm/drawer/description/DrawerDescription.d.ts +1 -1
  245. package/esm/drawer/indent/DrawerIndent.d.ts +3 -2
  246. package/esm/drawer/indent/DrawerIndent.js +2 -1
  247. package/esm/drawer/indent-background/DrawerIndentBackground.d.ts +5 -3
  248. package/esm/drawer/indent-background/DrawerIndentBackground.js +4 -2
  249. package/esm/drawer/index.d.ts +2 -1
  250. package/esm/drawer/index.js +1 -1
  251. package/esm/drawer/index.parts.d.ts +1 -0
  252. package/esm/drawer/index.parts.js +1 -0
  253. package/esm/drawer/popup/DrawerPopup.d.ts +6 -3
  254. package/esm/drawer/popup/DrawerPopup.js +59 -2
  255. package/esm/drawer/popup/DrawerPopupDataAttributes.d.ts +16 -0
  256. package/esm/drawer/popup/DrawerPopupDataAttributes.js +18 -1
  257. package/esm/drawer/portal/DrawerPortal.d.ts +2 -2
  258. package/esm/drawer/provider/DrawerProvider.d.ts +2 -2
  259. package/esm/drawer/provider/DrawerProvider.js +2 -2
  260. package/esm/drawer/root/DrawerRoot.d.ts +5 -3
  261. package/esm/drawer/root/DrawerRoot.js +6 -2
  262. package/esm/drawer/swipe-area/DrawerSwipeArea.d.ts +1 -1
  263. package/esm/drawer/swipe-area/DrawerSwipeArea.js +12 -10
  264. package/esm/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.ts +23 -0
  265. package/esm/drawer/swipe-area/DrawerSwipeAreaDataAttributes.js +25 -0
  266. package/esm/drawer/title/DrawerTitle.d.ts +1 -1
  267. package/esm/drawer/trigger/DrawerTrigger.d.ts +1 -1
  268. package/esm/drawer/viewport/DrawerViewport.d.ts +4 -1
  269. package/esm/drawer/viewport/DrawerViewport.js +165 -43
  270. package/esm/drawer/viewport/DrawerViewportDataAttributes.d.ts +22 -0
  271. package/esm/drawer/viewport/DrawerViewportDataAttributes.js +24 -0
  272. package/esm/field/control/FieldControl.d.ts +3 -3
  273. package/esm/field/description/FieldDescription.d.ts +3 -3
  274. package/esm/field/error/FieldError.d.ts +7 -4
  275. package/esm/field/error/FieldErrorDataAttributes.d.ts +8 -0
  276. package/esm/field/error/FieldErrorDataAttributes.js +10 -1
  277. package/esm/field/item/FieldItem.d.ts +4 -3
  278. package/esm/field/item/FieldItem.js +2 -2
  279. package/esm/field/label/FieldLabel.d.ts +3 -3
  280. package/esm/field/label/FieldLabel.js +6 -51
  281. package/esm/field/root/FieldRoot.d.ts +19 -2
  282. package/esm/field/root/FieldRoot.js +2 -1
  283. package/esm/field/root/FieldRootContext.d.ts +2 -2
  284. package/esm/field/root/FieldRootContext.js +6 -13
  285. package/esm/field/root/useFieldValidation.js +5 -4
  286. package/esm/field/utils/constants.d.ts +3 -0
  287. package/esm/field/utils/constants.js +11 -0
  288. package/esm/field/validity/FieldValidity.d.ts +7 -1
  289. package/esm/fieldset/legend/FieldsetLegend.d.ts +1 -1
  290. package/esm/fieldset/root/FieldsetRoot.d.ts +1 -1
  291. package/esm/floating-ui-react/components/FloatingDelayGroup.js +1 -1
  292. package/esm/floating-ui-react/components/FloatingFocusManager.d.ts +12 -7
  293. package/esm/floating-ui-react/components/FloatingFocusManager.js +31 -27
  294. package/esm/floating-ui-react/components/FloatingPortal.d.ts +6 -4
  295. package/esm/floating-ui-react/hooks/useClick.d.ts +2 -2
  296. package/esm/floating-ui-react/hooks/useClientPoint.d.ts +1 -1
  297. package/esm/floating-ui-react/hooks/useDismiss.d.ts +8 -12
  298. package/esm/floating-ui-react/hooks/useDismiss.js +320 -261
  299. package/esm/floating-ui-react/hooks/useFloatingRootContext.d.ts +2 -2
  300. package/esm/floating-ui-react/hooks/useFocus.d.ts +1 -1
  301. package/esm/floating-ui-react/hooks/useHover.d.ts +6 -14
  302. package/esm/floating-ui-react/hooks/useHover.js +2 -27
  303. package/esm/floating-ui-react/hooks/useHoverFloatingInteraction.d.ts +2 -3
  304. package/esm/floating-ui-react/hooks/useHoverFloatingInteraction.js +55 -71
  305. package/esm/floating-ui-react/hooks/useHoverInteractionSharedState.d.ts +12 -3
  306. package/esm/floating-ui-react/hooks/useHoverInteractionSharedState.js +30 -3
  307. package/esm/floating-ui-react/hooks/useHoverReferenceInteraction.d.ts +8 -3
  308. package/esm/floating-ui-react/hooks/useHoverReferenceInteraction.js +59 -81
  309. package/esm/floating-ui-react/hooks/useHoverShared.d.ts +28 -0
  310. package/esm/floating-ui-react/hooks/useHoverShared.js +26 -0
  311. package/esm/floating-ui-react/hooks/useListNavigation.d.ts +4 -4
  312. package/esm/floating-ui-react/hooks/useListNavigation.js +7 -3
  313. package/esm/floating-ui-react/hooks/useRole.d.ts +1 -1
  314. package/esm/floating-ui-react/hooks/useTypeahead.d.ts +7 -1
  315. package/esm/floating-ui-react/hooks/useTypeahead.js +30 -14
  316. package/esm/floating-ui-react/safePolygon.d.ts +2 -6
  317. package/esm/floating-ui-react/safePolygon.js +149 -119
  318. package/esm/floating-ui-react/types.d.ts +5 -4
  319. package/esm/floating-ui-react/utils/composite.d.ts +1 -0
  320. package/esm/floating-ui-react/utils/composite.js +128 -129
  321. package/esm/floating-ui-react/utils/markOthers.d.ts +7 -1
  322. package/esm/floating-ui-react/utils/markOthers.js +119 -81
  323. package/esm/form/Form.d.ts +1 -1
  324. package/esm/global.d.ts +1 -1
  325. package/esm/index.js +1 -1
  326. package/esm/input/Input.d.ts +10 -3
  327. package/esm/labelable-provider/LabelableProvider.d.ts +4 -1
  328. package/esm/labelable-provider/LabelableProvider.js +3 -2
  329. package/esm/labelable-provider/useAriaLabelledBy.d.ts +9 -0
  330. package/esm/labelable-provider/useAriaLabelledBy.js +56 -0
  331. package/esm/labelable-provider/useLabel.d.ts +25 -0
  332. package/esm/labelable-provider/useLabel.js +74 -0
  333. package/esm/labelable-provider/useLabelableId.d.ts +2 -5
  334. package/esm/menu/arrow/MenuArrow.d.ts +10 -1
  335. package/esm/menu/backdrop/MenuBackdrop.d.ts +4 -1
  336. package/esm/menu/checkbox-item/MenuCheckboxItem.d.ts +3 -3
  337. package/esm/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.d.ts +7 -1
  338. package/esm/menu/group/MenuGroup.d.ts +1 -1
  339. package/esm/menu/group-label/MenuGroupLabel.d.ts +1 -1
  340. package/esm/menu/index.d.ts +2 -1
  341. package/esm/menu/index.parts.d.ts +1 -0
  342. package/esm/menu/index.parts.js +1 -0
  343. package/esm/menu/item/MenuItem.d.ts +1 -1
  344. package/esm/menu/item/useMenuItem.d.ts +8 -7
  345. package/esm/menu/item/useMenuItem.js +5 -7
  346. package/esm/menu/item/useMenuItemCommonProps.d.ts +7 -4
  347. package/esm/menu/item/useMenuItemCommonProps.js +16 -2
  348. package/esm/menu/link-item/MenuLinkItem.d.ts +1 -1
  349. package/esm/menu/link-item/MenuLinkItem.js +16 -2
  350. package/esm/menu/popup/MenuPopup.d.ts +20 -5
  351. package/esm/menu/popup/MenuPopup.js +4 -1
  352. package/esm/menu/popup/MenuPopupDataAttributes.d.ts +1 -1
  353. package/esm/menu/popup/MenuPopupDataAttributes.js +1 -1
  354. package/esm/menu/portal/MenuPortal.d.ts +3 -4
  355. package/esm/menu/positioner/MenuPositioner.d.ts +18 -2
  356. package/esm/menu/positioner/MenuPositioner.js +58 -5
  357. package/esm/menu/radio-group/MenuRadioGroup.d.ts +6 -3
  358. package/esm/menu/radio-item/MenuRadioItem.d.ts +3 -3
  359. package/esm/menu/radio-item-indicator/MenuRadioItemIndicator.d.ts +7 -1
  360. package/esm/menu/root/MenuRoot.d.ts +4 -2
  361. package/esm/menu/root/MenuRoot.js +2 -3
  362. package/esm/menu/store/MenuStore.d.ts +4 -2
  363. package/esm/menu/store/MenuStore.js +15 -1
  364. package/esm/menu/submenu-trigger/MenuSubmenuTrigger.js +1 -0
  365. package/esm/menu/trigger/MenuTrigger.d.ts +3 -3
  366. package/esm/menu/viewport/MenuViewport.d.ts +30 -0
  367. package/esm/menu/viewport/MenuViewport.js +60 -0
  368. package/esm/menu/viewport/MenuViewportCssVars.d.ts +14 -0
  369. package/esm/menu/viewport/MenuViewportCssVars.js +15 -0
  370. package/esm/menu/viewport/MenuViewportDataAttributes.d.ts +26 -0
  371. package/esm/menu/viewport/MenuViewportDataAttributes.js +27 -0
  372. package/esm/menubar/Menubar.d.ts +1 -1
  373. package/esm/menubar/Menubar.js +1 -7
  374. package/esm/meter/indicator/MeterIndicator.d.ts +4 -2
  375. package/esm/meter/label/MeterLabel.d.ts +4 -2
  376. package/esm/meter/label/MeterLabel.js +4 -8
  377. package/esm/meter/root/MeterRoot.d.ts +1 -1
  378. package/esm/meter/root/MeterRoot.js +11 -2
  379. package/esm/meter/track/MeterTrack.d.ts +4 -2
  380. package/esm/meter/value/MeterValue.d.ts +5 -3
  381. package/esm/navigation-menu/arrow/NavigationMenuArrow.d.ts +10 -1
  382. package/esm/navigation-menu/backdrop/NavigationMenuBackdrop.d.ts +1 -1
  383. package/esm/navigation-menu/content/NavigationMenuContent.d.ts +1 -1
  384. package/esm/navigation-menu/content/NavigationMenuContent.js +11 -0
  385. package/esm/navigation-menu/icon/NavigationMenuIcon.d.ts +1 -1
  386. package/esm/navigation-menu/item/NavigationMenuItem.d.ts +1 -1
  387. package/esm/navigation-menu/link/NavigationMenuLink.d.ts +1 -1
  388. package/esm/navigation-menu/list/NavigationMenuList.d.ts +1 -1
  389. package/esm/navigation-menu/list/NavigationMenuList.js +11 -2
  390. package/esm/navigation-menu/popup/NavigationMenuPopup.d.ts +1 -1
  391. package/esm/navigation-menu/portal/NavigationMenuPortal.d.ts +4 -5
  392. package/esm/navigation-menu/positioner/NavigationMenuPositioner.d.ts +11 -2
  393. package/esm/navigation-menu/root/NavigationMenuRoot.d.ts +4 -4
  394. package/esm/navigation-menu/root/NavigationMenuRoot.js +27 -8
  395. package/esm/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -1
  396. package/esm/navigation-menu/trigger/NavigationMenuTrigger.js +364 -20
  397. package/esm/navigation-menu/utils/isOutsideMenuEvent.d.ts +1 -1
  398. package/esm/navigation-menu/viewport/NavigationMenuViewport.d.ts +1 -1
  399. package/esm/navigation-menu/viewport/NavigationMenuViewport.js +0 -19
  400. package/esm/number-field/decrement/NumberFieldDecrement.d.ts +3 -3
  401. package/esm/number-field/group/NumberFieldGroup.d.ts +3 -3
  402. package/esm/number-field/increment/NumberFieldIncrement.d.ts +3 -3
  403. package/esm/number-field/input/NumberFieldInput.d.ts +3 -3
  404. package/esm/number-field/root/NumberFieldRoot.d.ts +4 -4
  405. package/esm/number-field/root/NumberFieldRoot.js +1 -1
  406. package/esm/number-field/root/NumberFieldRootContext.d.ts +2 -2
  407. package/esm/number-field/root/useNumberFieldButton.d.ts +2 -5
  408. package/esm/number-field/scrub-area/NumberFieldScrubArea.d.ts +4 -4
  409. package/esm/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.d.ts +3 -3
  410. package/esm/number-field/utils/stateAttributesMapping.d.ts +2 -2
  411. package/esm/number-field/utils/types.d.ts +2 -2
  412. package/esm/popover/arrow/PopoverArrow.d.ts +10 -1
  413. package/esm/popover/backdrop/PopoverBackdrop.d.ts +4 -1
  414. package/esm/popover/close/PopoverClose.d.ts +1 -1
  415. package/esm/popover/close/PopoverClose.js +5 -3
  416. package/esm/popover/description/PopoverDescription.d.ts +1 -1
  417. package/esm/popover/popup/PopoverPopup.d.ts +15 -3
  418. package/esm/popover/popup/PopoverPopup.js +11 -2
  419. package/esm/popover/portal/PopoverPortal.d.ts +3 -4
  420. package/esm/popover/positioner/PopoverPositioner.d.ts +11 -2
  421. package/esm/popover/root/PopoverRoot.d.ts +10 -3
  422. package/esm/popover/root/PopoverRoot.js +1 -3
  423. package/esm/popover/title/PopoverTitle.d.ts +1 -1
  424. package/esm/popover/viewport/PopoverViewport.d.ts +16 -12
  425. package/esm/preview-card/arrow/PreviewCardArrow.d.ts +10 -1
  426. package/esm/preview-card/backdrop/PreviewCardBackdrop.d.ts +4 -1
  427. package/esm/preview-card/popup/PreviewCardPopup.d.ts +13 -1
  428. package/esm/preview-card/portal/PreviewCardPortal.d.ts +3 -4
  429. package/esm/preview-card/positioner/PreviewCardPositioner.d.ts +14 -2
  430. package/esm/preview-card/positioner/PreviewCardPositioner.js +7 -1
  431. package/esm/preview-card/root/PreviewCardRoot.d.ts +3 -3
  432. package/esm/preview-card/root/PreviewCardRoot.js +22 -9
  433. package/esm/preview-card/trigger/PreviewCardTrigger.d.ts +1 -1
  434. package/esm/preview-card/viewport/PreviewCardViewport.d.ts +16 -9
  435. package/esm/progress/indicator/ProgressIndicator.d.ts +4 -2
  436. package/esm/progress/label/ProgressLabel.d.ts +4 -2
  437. package/esm/progress/label/ProgressLabel.js +4 -8
  438. package/esm/progress/root/ProgressRoot.d.ts +4 -1
  439. package/esm/progress/root/ProgressRoot.js +11 -2
  440. package/esm/progress/root/ProgressRootContext.d.ts +2 -2
  441. package/esm/progress/root/stateAttributesMapping.d.ts +2 -2
  442. package/esm/progress/track/ProgressTrack.d.ts +4 -2
  443. package/esm/progress/value/ProgressValue.d.ts +5 -3
  444. package/esm/radio/indicator/RadioIndicator.d.ts +4 -1
  445. package/esm/radio/indicator/RadioIndicatorDataAttributes.d.ts +8 -0
  446. package/esm/radio/indicator/RadioIndicatorDataAttributes.js +10 -1
  447. package/esm/radio/root/RadioRoot.d.ts +3 -3
  448. package/esm/radio/root/RadioRoot.js +4 -1
  449. package/esm/radio-group/RadioGroup.d.ts +3 -3
  450. package/esm/scroll-area/content/ScrollAreaContent.d.ts +3 -3
  451. package/esm/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
  452. package/esm/scroll-area/root/ScrollAreaRoot.d.ts +27 -11
  453. package/esm/scroll-area/root/ScrollAreaRoot.js +7 -4
  454. package/esm/scroll-area/root/ScrollAreaRootContext.d.ts +4 -2
  455. package/esm/scroll-area/root/stateAttributes.d.ts +2 -2
  456. package/esm/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +13 -7
  457. package/esm/scroll-area/scrollbar/ScrollAreaScrollbar.js +4 -1
  458. package/esm/scroll-area/thumb/ScrollAreaThumb.d.ts +5 -2
  459. package/esm/scroll-area/thumb/ScrollAreaThumb.js +3 -1
  460. package/esm/scroll-area/viewport/ScrollAreaViewport.d.ts +3 -3
  461. package/esm/scroll-area/viewport/ScrollAreaViewport.js +46 -27
  462. package/esm/select/arrow/SelectArrow.d.ts +10 -1
  463. package/esm/select/backdrop/SelectBackdrop.d.ts +7 -1
  464. package/esm/select/group/SelectGroup.d.ts +1 -1
  465. package/esm/select/group-label/SelectGroupLabel.d.ts +1 -1
  466. package/esm/select/icon/SelectIcon.d.ts +1 -1
  467. package/esm/select/index.d.ts +1 -0
  468. package/esm/select/index.parts.d.ts +1 -0
  469. package/esm/select/index.parts.js +1 -0
  470. package/esm/select/item/SelectItem.d.ts +1 -1
  471. package/esm/select/item/SelectItem.js +10 -4
  472. package/esm/select/item-indicator/SelectItemIndicator.d.ts +10 -2
  473. package/esm/select/item-indicator/SelectItemIndicatorDataAttributes.d.ts +10 -0
  474. package/esm/select/item-indicator/SelectItemIndicatorDataAttributes.js +12 -0
  475. package/esm/select/item-text/SelectItemText.d.ts +1 -1
  476. package/esm/select/label/SelectLabel.d.ts +16 -0
  477. package/esm/select/label/SelectLabel.js +49 -0
  478. package/esm/select/list/SelectList.d.ts +1 -1
  479. package/esm/select/popup/SelectPopup.d.ts +14 -2
  480. package/esm/select/popup/SelectPopup.js +23 -9
  481. package/esm/select/portal/SelectPortal.d.ts +3 -4
  482. package/esm/select/positioner/SelectPositioner.d.ts +14 -2
  483. package/esm/select/positioner/SelectPositionerContext.d.ts +2 -2
  484. package/esm/select/root/SelectRoot.d.ts +5 -4
  485. package/esm/select/root/SelectRoot.js +5 -6
  486. package/esm/select/scroll-arrow/SelectScrollArrow.d.ts +13 -1
  487. package/esm/select/scroll-down-arrow/SelectScrollDownArrow.d.ts +1 -1
  488. package/esm/select/scroll-up-arrow/SelectScrollUpArrow.d.ts +1 -1
  489. package/esm/select/store.d.ts +5 -2
  490. package/esm/select/store.js +1 -0
  491. package/esm/select/trigger/SelectTrigger.d.ts +6 -4
  492. package/esm/select/trigger/SelectTrigger.js +5 -2
  493. package/esm/select/value/SelectValue.d.ts +1 -1
  494. package/esm/separator/Separator.d.ts +1 -1
  495. package/esm/slider/control/SliderControl.d.ts +4 -3
  496. package/esm/slider/control/SliderControl.js +0 -2
  497. package/esm/slider/index.d.ts +1 -0
  498. package/esm/slider/index.parts.d.ts +1 -0
  499. package/esm/slider/index.parts.js +1 -0
  500. package/esm/slider/indicator/SliderIndicator.d.ts +4 -2
  501. package/esm/slider/label/SliderLabel.d.ts +16 -0
  502. package/esm/slider/label/SliderLabel.js +58 -0
  503. package/esm/slider/root/SliderRoot.d.ts +11 -5
  504. package/esm/slider/root/SliderRoot.js +8 -3
  505. package/esm/slider/root/SliderRootContext.d.ts +4 -2
  506. package/esm/slider/root/stateAttributesMapping.d.ts +2 -2
  507. package/esm/slider/thumb/SliderThumb.d.ts +5 -5
  508. package/esm/slider/thumb/SliderThumb.js +3 -2
  509. package/esm/slider/track/SliderTrack.d.ts +4 -2
  510. package/esm/slider/utils/resolveThumbCollision.d.ts +2 -2
  511. package/esm/slider/value/SliderValue.d.ts +5 -3
  512. package/esm/switch/root/SwitchRoot.d.ts +3 -3
  513. package/esm/switch/root/SwitchRoot.js +4 -1
  514. package/esm/switch/root/SwitchRootContext.d.ts +4 -4
  515. package/esm/switch/stateAttributesMapping.d.ts +2 -2
  516. package/esm/switch/thumb/SwitchThumb.d.ts +3 -3
  517. package/esm/tabs/indicator/TabsIndicator.d.ts +12 -3
  518. package/esm/tabs/indicator/TabsIndicator.js +5 -14
  519. package/esm/tabs/indicator/TabsIndicatorCssVars.d.ts +1 -1
  520. package/esm/tabs/indicator/TabsIndicatorCssVars.js +1 -1
  521. package/esm/tabs/list/TabsList.d.ts +3 -3
  522. package/esm/tabs/list/TabsList.js +48 -3
  523. package/esm/tabs/list/TabsListContext.d.ts +2 -0
  524. package/esm/tabs/panel/TabsPanel.d.ts +9 -3
  525. package/esm/tabs/panel/TabsPanelDataAttributes.d.ts +8 -0
  526. package/esm/tabs/panel/TabsPanelDataAttributes.js +10 -1
  527. package/esm/tabs/root/TabsRoot.d.ts +7 -1
  528. package/esm/tabs/root/TabsRootContext.d.ts +1 -1
  529. package/esm/tabs/root/stateAttributesMapping.d.ts +2 -2
  530. package/esm/tabs/tab/TabsTab.d.ts +7 -1
  531. package/esm/tabs/tab/TabsTab.js +10 -1
  532. package/esm/toast/action/ToastAction.d.ts +1 -1
  533. package/esm/toast/arrow/ToastArrow.d.ts +10 -1
  534. package/esm/toast/close/ToastClose.d.ts +1 -1
  535. package/esm/toast/content/ToastContent.d.ts +1 -1
  536. package/esm/toast/createToastManager.d.ts +1 -1
  537. package/esm/toast/description/ToastDescription.d.ts +1 -1
  538. package/esm/toast/portal/ToastPortal.d.ts +3 -4
  539. package/esm/toast/positioner/ToastPositioner.d.ts +12 -3
  540. package/esm/toast/provider/ToastProvider.d.ts +2 -0
  541. package/esm/toast/provider/ToastProvider.js +1 -1
  542. package/esm/toast/root/ToastRoot.d.ts +20 -7
  543. package/esm/toast/root/ToastRoot.js +3 -1
  544. package/esm/toast/store.d.ts +1 -1
  545. package/esm/toast/store.js +37 -8
  546. package/esm/toast/title/ToastTitle.d.ts +1 -1
  547. package/esm/toast/useToastManager.d.ts +3 -3
  548. package/esm/toast/viewport/ToastViewport.d.ts +1 -1
  549. package/esm/toggle/Toggle.d.ts +1 -1
  550. package/esm/toggle-group/ToggleGroup.d.ts +1 -1
  551. package/esm/toolbar/button/ToolbarButton.d.ts +9 -3
  552. package/esm/toolbar/group/ToolbarGroup.d.ts +4 -2
  553. package/esm/toolbar/input/ToolbarInput.d.ts +9 -3
  554. package/esm/toolbar/link/ToolbarLink.d.ts +4 -1
  555. package/esm/toolbar/root/ToolbarRoot.d.ts +7 -1
  556. package/esm/toolbar/separator/ToolbarSeparator.d.ts +4 -2
  557. package/esm/tooltip/arrow/TooltipArrow.d.ts +13 -1
  558. package/esm/tooltip/popup/TooltipPopup.d.ts +13 -1
  559. package/esm/tooltip/portal/TooltipPortal.d.ts +3 -4
  560. package/esm/tooltip/positioner/TooltipPositioner.d.ts +11 -2
  561. package/esm/tooltip/provider/TooltipProvider.d.ts +2 -0
  562. package/esm/tooltip/root/TooltipRoot.d.ts +3 -3
  563. package/esm/tooltip/root/TooltipRoot.js +1 -1
  564. package/esm/tooltip/store/TooltipStore.d.ts +2 -0
  565. package/esm/tooltip/store/TooltipStore.js +2 -0
  566. package/esm/tooltip/trigger/TooltipTrigger.d.ts +6 -1
  567. package/esm/tooltip/trigger/TooltipTrigger.js +5 -0
  568. package/esm/tooltip/viewport/TooltipViewport.d.ts +16 -12
  569. package/esm/types/index.d.ts +16 -1
  570. package/esm/unstable-use-media-query/index.d.ts +2 -0
  571. package/esm/use-button/useButton.d.ts +8 -5
  572. package/esm/use-button/useButton.js +49 -20
  573. package/esm/use-render/useRender.d.ts +7 -5
  574. package/esm/utils/FloatingPortalLite.d.ts +4 -2
  575. package/esm/utils/InternalBackdrop.d.ts +3 -1
  576. package/esm/utils/closePart.d.ts +16 -0
  577. package/esm/utils/closePart.js +40 -0
  578. package/esm/utils/constants.d.ts +4 -0
  579. package/esm/utils/constants.js +4 -0
  580. package/esm/utils/createBaseUIEventDetails.d.ts +1 -1
  581. package/esm/utils/getElementAtPoint.d.ts +1 -0
  582. package/esm/utils/getElementAtPoint.js +3 -0
  583. package/esm/utils/resolveAriaLabelledBy.d.ts +2 -0
  584. package/esm/utils/resolveAriaLabelledBy.js +8 -0
  585. package/esm/utils/resolveValueLabel.d.ts +4 -4
  586. package/esm/utils/resolveValueLabel.js +7 -5
  587. package/esm/utils/types.d.ts +7 -20
  588. package/esm/utils/useAnchorPositioning.d.ts +53 -18
  589. package/esm/utils/useAnchorPositioning.js +15 -6
  590. package/esm/utils/useFocusableWhenDisabled.d.ts +2 -5
  591. package/esm/utils/useMixedToggleClickHandler.d.ts +2 -4
  592. package/esm/utils/useOpenChangeComplete.d.ts +2 -4
  593. package/esm/utils/useOpenInteractionType.d.ts +0 -1
  594. package/esm/utils/useOpenInteractionType.js +7 -5
  595. package/esm/utils/usePopupAutoResize.js +1 -2
  596. package/esm/utils/usePopupViewport.js +11 -8
  597. package/esm/utils/useRegisteredLabelId.d.ts +1 -0
  598. package/esm/utils/useRegisteredLabelId.js +14 -0
  599. package/esm/utils/useRenderElement.d.ts +6 -9
  600. package/esm/utils/useRenderElement.js +15 -0
  601. package/esm/utils/useSwipeDismiss.d.ts +91 -92
  602. package/esm/utils/useSwipeDismiss.js +2 -1
  603. package/field/control/FieldControl.d.ts +3 -3
  604. package/field/description/FieldDescription.d.ts +3 -3
  605. package/field/error/FieldError.d.ts +7 -4
  606. package/field/error/FieldErrorDataAttributes.d.ts +8 -0
  607. package/field/error/FieldErrorDataAttributes.js +10 -1
  608. package/field/item/FieldItem.d.ts +4 -3
  609. package/field/item/FieldItem.js +2 -2
  610. package/field/label/FieldLabel.d.ts +3 -3
  611. package/field/label/FieldLabel.js +6 -51
  612. package/field/root/FieldRoot.d.ts +19 -2
  613. package/field/root/FieldRoot.js +2 -1
  614. package/field/root/FieldRootContext.d.ts +2 -2
  615. package/field/root/FieldRootContext.js +5 -12
  616. package/field/root/useFieldValidation.js +5 -4
  617. package/field/utils/constants.d.ts +3 -0
  618. package/field/utils/constants.js +12 -1
  619. package/field/validity/FieldValidity.d.ts +7 -1
  620. package/fieldset/legend/FieldsetLegend.d.ts +1 -1
  621. package/fieldset/root/FieldsetRoot.d.ts +1 -1
  622. package/floating-ui-react/components/FloatingDelayGroup.js +2 -2
  623. package/floating-ui-react/components/FloatingFocusManager.d.ts +12 -7
  624. package/floating-ui-react/components/FloatingFocusManager.js +29 -25
  625. package/floating-ui-react/components/FloatingPortal.d.ts +6 -4
  626. package/floating-ui-react/hooks/useClick.d.ts +2 -2
  627. package/floating-ui-react/hooks/useClientPoint.d.ts +1 -1
  628. package/floating-ui-react/hooks/useDismiss.d.ts +8 -12
  629. package/floating-ui-react/hooks/useDismiss.js +319 -260
  630. package/floating-ui-react/hooks/useFloatingRootContext.d.ts +2 -2
  631. package/floating-ui-react/hooks/useFocus.d.ts +1 -1
  632. package/floating-ui-react/hooks/useHover.d.ts +6 -14
  633. package/floating-ui-react/hooks/useHover.js +6 -32
  634. package/floating-ui-react/hooks/useHoverFloatingInteraction.d.ts +2 -3
  635. package/floating-ui-react/hooks/useHoverFloatingInteraction.js +53 -70
  636. package/floating-ui-react/hooks/useHoverInteractionSharedState.d.ts +12 -3
  637. package/floating-ui-react/hooks/useHoverInteractionSharedState.js +32 -4
  638. package/floating-ui-react/hooks/useHoverReferenceInteraction.d.ts +8 -3
  639. package/floating-ui-react/hooks/useHoverReferenceInteraction.js +60 -82
  640. package/floating-ui-react/hooks/useHoverShared.d.ts +28 -0
  641. package/floating-ui-react/hooks/useHoverShared.js +34 -0
  642. package/floating-ui-react/hooks/useListNavigation.d.ts +4 -4
  643. package/floating-ui-react/hooks/useListNavigation.js +7 -3
  644. package/floating-ui-react/hooks/useRole.d.ts +1 -1
  645. package/floating-ui-react/hooks/useTypeahead.d.ts +7 -1
  646. package/floating-ui-react/hooks/useTypeahead.js +29 -13
  647. package/floating-ui-react/safePolygon.d.ts +2 -6
  648. package/floating-ui-react/safePolygon.js +149 -119
  649. package/floating-ui-react/types.d.ts +5 -4
  650. package/floating-ui-react/utils/composite.d.ts +1 -0
  651. package/floating-ui-react/utils/composite.js +129 -129
  652. package/floating-ui-react/utils/markOthers.d.ts +7 -1
  653. package/floating-ui-react/utils/markOthers.js +118 -80
  654. package/form/Form.d.ts +1 -1
  655. package/global.d.ts +1 -1
  656. package/index.js +1 -1
  657. package/input/Input.d.ts +10 -3
  658. package/labelable-provider/LabelableProvider.d.ts +4 -1
  659. package/labelable-provider/LabelableProvider.js +3 -2
  660. package/labelable-provider/useAriaLabelledBy.d.ts +9 -0
  661. package/labelable-provider/useAriaLabelledBy.js +61 -0
  662. package/labelable-provider/useLabel.d.ts +25 -0
  663. package/labelable-provider/useLabel.js +80 -0
  664. package/labelable-provider/useLabelableId.d.ts +2 -5
  665. package/menu/arrow/MenuArrow.d.ts +10 -1
  666. package/menu/backdrop/MenuBackdrop.d.ts +4 -1
  667. package/menu/checkbox-item/MenuCheckboxItem.d.ts +3 -3
  668. package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.d.ts +7 -1
  669. package/menu/group/MenuGroup.d.ts +1 -1
  670. package/menu/group-label/MenuGroupLabel.d.ts +1 -1
  671. package/menu/index.d.ts +2 -1
  672. package/menu/index.parts.d.ts +1 -0
  673. package/menu/index.parts.js +7 -0
  674. package/menu/item/MenuItem.d.ts +1 -1
  675. package/menu/item/useMenuItem.d.ts +8 -7
  676. package/menu/item/useMenuItem.js +5 -7
  677. package/menu/item/useMenuItemCommonProps.d.ts +7 -4
  678. package/menu/item/useMenuItemCommonProps.js +16 -2
  679. package/menu/link-item/MenuLinkItem.d.ts +1 -1
  680. package/menu/link-item/MenuLinkItem.js +16 -2
  681. package/menu/popup/MenuPopup.d.ts +20 -5
  682. package/menu/popup/MenuPopup.js +4 -1
  683. package/menu/popup/MenuPopupDataAttributes.d.ts +1 -1
  684. package/menu/popup/MenuPopupDataAttributes.js +1 -1
  685. package/menu/portal/MenuPortal.d.ts +3 -4
  686. package/menu/positioner/MenuPositioner.d.ts +18 -2
  687. package/menu/positioner/MenuPositioner.js +56 -4
  688. package/menu/radio-group/MenuRadioGroup.d.ts +6 -3
  689. package/menu/radio-item/MenuRadioItem.d.ts +3 -3
  690. package/menu/radio-item-indicator/MenuRadioItemIndicator.d.ts +7 -1
  691. package/menu/root/MenuRoot.d.ts +4 -2
  692. package/menu/root/MenuRoot.js +2 -3
  693. package/menu/store/MenuStore.d.ts +4 -2
  694. package/menu/store/MenuStore.js +15 -1
  695. package/menu/submenu-trigger/MenuSubmenuTrigger.js +1 -0
  696. package/menu/trigger/MenuTrigger.d.ts +3 -3
  697. package/menu/viewport/MenuViewport.d.ts +30 -0
  698. package/menu/viewport/MenuViewport.js +66 -0
  699. package/menu/viewport/MenuViewportCssVars.d.ts +14 -0
  700. package/menu/viewport/MenuViewportCssVars.js +21 -0
  701. package/menu/viewport/MenuViewportDataAttributes.d.ts +26 -0
  702. package/menu/viewport/MenuViewportDataAttributes.js +33 -0
  703. package/menubar/Menubar.d.ts +1 -1
  704. package/menubar/Menubar.js +1 -7
  705. package/meter/indicator/MeterIndicator.d.ts +4 -2
  706. package/meter/label/MeterLabel.d.ts +4 -2
  707. package/meter/label/MeterLabel.js +4 -8
  708. package/meter/root/MeterRoot.d.ts +1 -1
  709. package/meter/root/MeterRoot.js +10 -1
  710. package/meter/track/MeterTrack.d.ts +4 -2
  711. package/meter/value/MeterValue.d.ts +5 -3
  712. package/navigation-menu/arrow/NavigationMenuArrow.d.ts +10 -1
  713. package/navigation-menu/backdrop/NavigationMenuBackdrop.d.ts +1 -1
  714. package/navigation-menu/content/NavigationMenuContent.d.ts +1 -1
  715. package/navigation-menu/content/NavigationMenuContent.js +11 -0
  716. package/navigation-menu/icon/NavigationMenuIcon.d.ts +1 -1
  717. package/navigation-menu/item/NavigationMenuItem.d.ts +1 -1
  718. package/navigation-menu/link/NavigationMenuLink.d.ts +1 -1
  719. package/navigation-menu/list/NavigationMenuList.d.ts +1 -1
  720. package/navigation-menu/list/NavigationMenuList.js +10 -1
  721. package/navigation-menu/popup/NavigationMenuPopup.d.ts +1 -1
  722. package/navigation-menu/portal/NavigationMenuPortal.d.ts +4 -5
  723. package/navigation-menu/positioner/NavigationMenuPositioner.d.ts +11 -2
  724. package/navigation-menu/root/NavigationMenuRoot.d.ts +4 -4
  725. package/navigation-menu/root/NavigationMenuRoot.js +26 -7
  726. package/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -1
  727. package/navigation-menu/trigger/NavigationMenuTrigger.js +362 -17
  728. package/navigation-menu/utils/isOutsideMenuEvent.d.ts +1 -1
  729. package/navigation-menu/viewport/NavigationMenuViewport.d.ts +1 -1
  730. package/navigation-menu/viewport/NavigationMenuViewport.js +0 -19
  731. package/number-field/decrement/NumberFieldDecrement.d.ts +3 -3
  732. package/number-field/group/NumberFieldGroup.d.ts +3 -3
  733. package/number-field/increment/NumberFieldIncrement.d.ts +3 -3
  734. package/number-field/input/NumberFieldInput.d.ts +3 -3
  735. package/number-field/root/NumberFieldRoot.d.ts +4 -4
  736. package/number-field/root/NumberFieldRoot.js +1 -1
  737. package/number-field/root/NumberFieldRootContext.d.ts +2 -2
  738. package/number-field/root/useNumberFieldButton.d.ts +2 -5
  739. package/number-field/scrub-area/NumberFieldScrubArea.d.ts +4 -4
  740. package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.d.ts +3 -3
  741. package/number-field/utils/stateAttributesMapping.d.ts +2 -2
  742. package/number-field/utils/types.d.ts +2 -2
  743. package/package.json +183 -7
  744. package/popover/arrow/PopoverArrow.d.ts +10 -1
  745. package/popover/backdrop/PopoverBackdrop.d.ts +4 -1
  746. package/popover/close/PopoverClose.d.ts +1 -1
  747. package/popover/close/PopoverClose.js +5 -3
  748. package/popover/description/PopoverDescription.d.ts +1 -1
  749. package/popover/popup/PopoverPopup.d.ts +15 -3
  750. package/popover/popup/PopoverPopup.js +11 -2
  751. package/popover/portal/PopoverPortal.d.ts +3 -4
  752. package/popover/positioner/PopoverPositioner.d.ts +11 -2
  753. package/popover/root/PopoverRoot.d.ts +10 -3
  754. package/popover/root/PopoverRoot.js +1 -3
  755. package/popover/title/PopoverTitle.d.ts +1 -1
  756. package/popover/viewport/PopoverViewport.d.ts +16 -12
  757. package/preview-card/arrow/PreviewCardArrow.d.ts +10 -1
  758. package/preview-card/backdrop/PreviewCardBackdrop.d.ts +4 -1
  759. package/preview-card/popup/PreviewCardPopup.d.ts +13 -1
  760. package/preview-card/portal/PreviewCardPortal.d.ts +3 -4
  761. package/preview-card/positioner/PreviewCardPositioner.d.ts +14 -2
  762. package/preview-card/positioner/PreviewCardPositioner.js +7 -1
  763. package/preview-card/root/PreviewCardRoot.d.ts +3 -3
  764. package/preview-card/root/PreviewCardRoot.js +20 -7
  765. package/preview-card/trigger/PreviewCardTrigger.d.ts +1 -1
  766. package/preview-card/viewport/PreviewCardViewport.d.ts +16 -9
  767. package/progress/indicator/ProgressIndicator.d.ts +4 -2
  768. package/progress/label/ProgressLabel.d.ts +4 -2
  769. package/progress/label/ProgressLabel.js +4 -8
  770. package/progress/root/ProgressRoot.d.ts +4 -1
  771. package/progress/root/ProgressRoot.js +10 -1
  772. package/progress/root/ProgressRootContext.d.ts +2 -2
  773. package/progress/root/stateAttributesMapping.d.ts +2 -2
  774. package/progress/track/ProgressTrack.d.ts +4 -2
  775. package/progress/value/ProgressValue.d.ts +5 -3
  776. package/radio/indicator/RadioIndicator.d.ts +4 -1
  777. package/radio/indicator/RadioIndicatorDataAttributes.d.ts +8 -0
  778. package/radio/indicator/RadioIndicatorDataAttributes.js +10 -1
  779. package/radio/root/RadioRoot.d.ts +3 -3
  780. package/radio/root/RadioRoot.js +4 -1
  781. package/radio-group/RadioGroup.d.ts +3 -3
  782. package/scroll-area/content/ScrollAreaContent.d.ts +3 -3
  783. package/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
  784. package/scroll-area/root/ScrollAreaRoot.d.ts +27 -11
  785. package/scroll-area/root/ScrollAreaRoot.js +7 -4
  786. package/scroll-area/root/ScrollAreaRootContext.d.ts +4 -2
  787. package/scroll-area/root/stateAttributes.d.ts +2 -2
  788. package/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +13 -7
  789. package/scroll-area/scrollbar/ScrollAreaScrollbar.js +4 -1
  790. package/scroll-area/thumb/ScrollAreaThumb.d.ts +5 -2
  791. package/scroll-area/thumb/ScrollAreaThumb.js +3 -1
  792. package/scroll-area/viewport/ScrollAreaViewport.d.ts +3 -3
  793. package/scroll-area/viewport/ScrollAreaViewport.js +46 -27
  794. package/select/arrow/SelectArrow.d.ts +10 -1
  795. package/select/backdrop/SelectBackdrop.d.ts +7 -1
  796. package/select/group/SelectGroup.d.ts +1 -1
  797. package/select/group-label/SelectGroupLabel.d.ts +1 -1
  798. package/select/icon/SelectIcon.d.ts +1 -1
  799. package/select/index.d.ts +1 -0
  800. package/select/index.parts.d.ts +1 -0
  801. package/select/index.parts.js +7 -0
  802. package/select/item/SelectItem.d.ts +1 -1
  803. package/select/item/SelectItem.js +10 -4
  804. package/select/item-indicator/SelectItemIndicator.d.ts +10 -2
  805. package/select/item-indicator/SelectItemIndicatorDataAttributes.d.ts +10 -0
  806. package/select/item-indicator/SelectItemIndicatorDataAttributes.js +18 -0
  807. package/select/item-text/SelectItemText.d.ts +1 -1
  808. package/select/label/SelectLabel.d.ts +16 -0
  809. package/select/label/SelectLabel.js +54 -0
  810. package/select/list/SelectList.d.ts +1 -1
  811. package/select/popup/SelectPopup.d.ts +14 -2
  812. package/select/popup/SelectPopup.js +26 -12
  813. package/select/portal/SelectPortal.d.ts +3 -4
  814. package/select/positioner/SelectPositioner.d.ts +14 -2
  815. package/select/positioner/SelectPositionerContext.d.ts +2 -2
  816. package/select/root/SelectRoot.d.ts +5 -4
  817. package/select/root/SelectRoot.js +5 -6
  818. package/select/scroll-arrow/SelectScrollArrow.d.ts +13 -1
  819. package/select/scroll-down-arrow/SelectScrollDownArrow.d.ts +1 -1
  820. package/select/scroll-up-arrow/SelectScrollUpArrow.d.ts +1 -1
  821. package/select/store.d.ts +5 -2
  822. package/select/store.js +1 -0
  823. package/select/trigger/SelectTrigger.d.ts +6 -4
  824. package/select/trigger/SelectTrigger.js +5 -2
  825. package/select/value/SelectValue.d.ts +1 -1
  826. package/separator/Separator.d.ts +1 -1
  827. package/slider/control/SliderControl.d.ts +4 -3
  828. package/slider/control/SliderControl.js +0 -2
  829. package/slider/index.d.ts +1 -0
  830. package/slider/index.parts.d.ts +1 -0
  831. package/slider/index.parts.js +7 -0
  832. package/slider/indicator/SliderIndicator.d.ts +4 -2
  833. package/slider/label/SliderLabel.d.ts +16 -0
  834. package/slider/label/SliderLabel.js +63 -0
  835. package/slider/root/SliderRoot.d.ts +11 -5
  836. package/slider/root/SliderRoot.js +8 -3
  837. package/slider/root/SliderRootContext.d.ts +4 -2
  838. package/slider/root/stateAttributesMapping.d.ts +2 -2
  839. package/slider/thumb/SliderThumb.d.ts +5 -5
  840. package/slider/thumb/SliderThumb.js +3 -2
  841. package/slider/track/SliderTrack.d.ts +4 -2
  842. package/slider/utils/resolveThumbCollision.d.ts +2 -2
  843. package/slider/value/SliderValue.d.ts +5 -3
  844. package/switch/root/SwitchRoot.d.ts +3 -3
  845. package/switch/root/SwitchRoot.js +4 -1
  846. package/switch/root/SwitchRootContext.d.ts +4 -4
  847. package/switch/stateAttributesMapping.d.ts +2 -2
  848. package/switch/thumb/SwitchThumb.d.ts +3 -3
  849. package/tabs/indicator/TabsIndicator.d.ts +12 -3
  850. package/tabs/indicator/TabsIndicator.js +5 -14
  851. package/tabs/indicator/TabsIndicatorCssVars.d.ts +1 -1
  852. package/tabs/indicator/TabsIndicatorCssVars.js +1 -1
  853. package/tabs/list/TabsList.d.ts +3 -3
  854. package/tabs/list/TabsList.js +48 -3
  855. package/tabs/list/TabsListContext.d.ts +2 -0
  856. package/tabs/panel/TabsPanel.d.ts +9 -3
  857. package/tabs/panel/TabsPanelDataAttributes.d.ts +8 -0
  858. package/tabs/panel/TabsPanelDataAttributes.js +10 -1
  859. package/tabs/root/TabsRoot.d.ts +7 -1
  860. package/tabs/root/TabsRootContext.d.ts +1 -1
  861. package/tabs/root/stateAttributesMapping.d.ts +2 -2
  862. package/tabs/tab/TabsTab.d.ts +7 -1
  863. package/tabs/tab/TabsTab.js +10 -1
  864. package/toast/action/ToastAction.d.ts +1 -1
  865. package/toast/arrow/ToastArrow.d.ts +10 -1
  866. package/toast/close/ToastClose.d.ts +1 -1
  867. package/toast/content/ToastContent.d.ts +1 -1
  868. package/toast/createToastManager.d.ts +1 -1
  869. package/toast/description/ToastDescription.d.ts +1 -1
  870. package/toast/portal/ToastPortal.d.ts +3 -4
  871. package/toast/positioner/ToastPositioner.d.ts +12 -3
  872. package/toast/provider/ToastProvider.d.ts +2 -0
  873. package/toast/provider/ToastProvider.js +1 -1
  874. package/toast/root/ToastRoot.d.ts +20 -7
  875. package/toast/root/ToastRoot.js +3 -1
  876. package/toast/store.d.ts +1 -1
  877. package/toast/store.js +37 -8
  878. package/toast/title/ToastTitle.d.ts +1 -1
  879. package/toast/useToastManager.d.ts +3 -3
  880. package/toast/viewport/ToastViewport.d.ts +1 -1
  881. package/toggle/Toggle.d.ts +1 -1
  882. package/toggle-group/ToggleGroup.d.ts +1 -1
  883. package/toolbar/button/ToolbarButton.d.ts +9 -3
  884. package/toolbar/group/ToolbarGroup.d.ts +4 -2
  885. package/toolbar/input/ToolbarInput.d.ts +9 -3
  886. package/toolbar/link/ToolbarLink.d.ts +4 -1
  887. package/toolbar/root/ToolbarRoot.d.ts +7 -1
  888. package/toolbar/separator/ToolbarSeparator.d.ts +4 -2
  889. package/tooltip/arrow/TooltipArrow.d.ts +13 -1
  890. package/tooltip/popup/TooltipPopup.d.ts +13 -1
  891. package/tooltip/portal/TooltipPortal.d.ts +3 -4
  892. package/tooltip/positioner/TooltipPositioner.d.ts +11 -2
  893. package/tooltip/provider/TooltipProvider.d.ts +2 -0
  894. package/tooltip/root/TooltipRoot.d.ts +3 -3
  895. package/tooltip/root/TooltipRoot.js +1 -1
  896. package/tooltip/store/TooltipStore.d.ts +2 -0
  897. package/tooltip/store/TooltipStore.js +2 -0
  898. package/tooltip/trigger/TooltipTrigger.d.ts +6 -1
  899. package/tooltip/trigger/TooltipTrigger.js +5 -0
  900. package/tooltip/viewport/TooltipViewport.d.ts +16 -12
  901. package/types/index.d.ts +16 -1
  902. package/unstable-use-media-query/index.d.ts +2 -0
  903. package/use-button/useButton.d.ts +8 -5
  904. package/use-button/useButton.js +49 -20
  905. package/use-render/useRender.d.ts +7 -5
  906. package/utils/FloatingPortalLite.d.ts +4 -2
  907. package/utils/InternalBackdrop.d.ts +3 -1
  908. package/utils/closePart.d.ts +16 -0
  909. package/utils/closePart.js +48 -0
  910. package/utils/constants.d.ts +4 -0
  911. package/utils/constants.js +6 -2
  912. package/utils/createBaseUIEventDetails.d.ts +1 -1
  913. package/utils/getElementAtPoint.d.ts +1 -0
  914. package/utils/getElementAtPoint.js +9 -0
  915. package/utils/resolveAriaLabelledBy.d.ts +2 -0
  916. package/utils/resolveAriaLabelledBy.js +14 -0
  917. package/utils/resolveValueLabel.d.ts +4 -4
  918. package/utils/resolveValueLabel.js +7 -5
  919. package/utils/types.d.ts +7 -20
  920. package/utils/useAnchorPositioning.d.ts +53 -18
  921. package/utils/useAnchorPositioning.js +15 -6
  922. package/utils/useFocusableWhenDisabled.d.ts +2 -5
  923. package/utils/useMixedToggleClickHandler.d.ts +2 -4
  924. package/utils/useOpenChangeComplete.d.ts +2 -4
  925. package/utils/useOpenInteractionType.d.ts +0 -1
  926. package/utils/useOpenInteractionType.js +7 -5
  927. package/utils/usePopupAutoResize.js +1 -2
  928. package/utils/usePopupViewport.js +11 -8
  929. package/utils/useRegisteredLabelId.d.ts +1 -0
  930. package/utils/useRegisteredLabelId.js +19 -0
  931. package/utils/useRenderElement.d.ts +6 -9
  932. package/utils/useRenderElement.js +15 -0
  933. package/utils/useSwipeDismiss.d.ts +91 -92
  934. package/utils/useSwipeDismiss.js +2 -1
  935. package/esm/navigation-menu/utils/setFixedSize.d.ts +0 -1
  936. package/esm/navigation-menu/utils/setFixedSize.js +0 -11
  937. package/navigation-menu/utils/setFixedSize.d.ts +0 -1
  938. package/navigation-menu/utils/setFixedSize.js +0 -17
@@ -69,7 +69,7 @@ interface ComboboxRootProps<ItemValue> {
69
69
  * - `'always'`: highlight the first item as soon as the list opens.
70
70
  * @default false
71
71
  */
72
- autoHighlight?: (boolean | 'always') | undefined;
72
+ autoHighlight?: boolean | 'always' | undefined;
73
73
  /**
74
74
  * Whether the highlighted item should be preserved when the pointer leaves the list.
75
75
  * @default false
@@ -132,17 +132,17 @@ interface ComboboxRootProps<ItemValue> {
132
132
  * The items to be displayed in the list.
133
133
  * Can be either a flat array of items or an array of groups with items.
134
134
  */
135
- items?: (readonly any[] | readonly Group<any>[]) | undefined;
135
+ items?: readonly any[] | readonly Group<any>[] | undefined;
136
136
  /**
137
137
  * Filtered items to display in the list.
138
138
  * When provided, the list will use these items instead of filtering the `items` prop internally.
139
139
  * Use when you want to control filtering logic externally with the `useFilter()` hook.
140
140
  */
141
- filteredItems?: (readonly any[] | readonly Group<any>[]) | undefined;
141
+ filteredItems?: readonly any[] | readonly Group<any>[] | undefined;
142
142
  /**
143
143
  * Filter function used to match items vs input query.
144
144
  */
145
- filter?: (null | ((itemValue: ItemValue, query: string, itemToString?: (itemValue: ItemValue) => string) => boolean)) | undefined;
145
+ filter?: null | ((itemValue: ItemValue, query: string, itemToString?: (itemValue: ItemValue) => string) => boolean) | undefined;
146
146
  /**
147
147
  * When the item values are objects (`<Combobox.Item value={object}>`), this function converts the object value to a string representation for display in the input.
148
148
  * If the shape of the object is `{ value, label }`, the label will be used automatically without needing to specify this prop.
@@ -188,7 +188,7 @@ interface ComboboxRootProps<ItemValue> {
188
188
  * - `none`: items are static (not filtered), and the input value will not change based on the active item.
189
189
  * @default 'list'
190
190
  */
191
- autoComplete?: ('list' | 'both' | 'inline' | 'none') | undefined;
191
+ autoComplete?: 'list' | 'both' | 'inline' | 'none' | undefined;
192
192
  /**
193
193
  * Provides a hint to the browser for autofill on the hidden input element.
194
194
  * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/autocomplete
@@ -209,6 +209,7 @@ interface ComboboxRootProps<ItemValue> {
209
209
  */
210
210
  fillInputOnItemPress?: boolean | undefined;
211
211
  }
212
+ export interface AriaComboboxState {}
212
213
  export type AriaComboboxProps<Value, Mode extends SelectionMode = 'none'> = ComboboxRootProps<Value> & {
213
214
  /**
214
215
  * How the combobox should remember the selected value.
@@ -227,7 +228,7 @@ export type AriaComboboxProps<Value, Mode extends SelectionMode = 'none'> = Comb
227
228
  *
228
229
  * To render a controlled combobox, use the `selectedValue` prop instead.
229
230
  */
230
- defaultSelectedValue?: (ComboboxItemValueType<Value, Mode> | null) | undefined;
231
+ defaultSelectedValue?: ComboboxItemValueType<Value, Mode> | null | undefined;
231
232
  /**
232
233
  * Callback fired when the selected value of the combobox changes.
233
234
  */
@@ -235,7 +236,7 @@ export type AriaComboboxProps<Value, Mode extends SelectionMode = 'none'> = Comb
235
236
  };
236
237
  export declare namespace AriaCombobox {
237
238
  type Props<Value, Mode extends SelectionMode = 'none'> = AriaComboboxProps<Value, Mode>;
238
- interface State {}
239
+ type State = AriaComboboxState;
239
240
  interface Actions {
240
241
  unmount: () => void;
241
242
  }
@@ -243,7 +244,7 @@ export declare namespace AriaCombobox {
243
244
  type HighlightEventDetails = BaseUIGenericEventDetails<HighlightEventReason, {
244
245
  index: number;
245
246
  }>;
246
- type ChangeEventReason = typeof REASONS.triggerPress | typeof REASONS.outsidePress | typeof REASONS.itemPress | typeof REASONS.escapeKey | typeof REASONS.listNavigation | typeof REASONS.focusOut | typeof REASONS.inputChange | typeof REASONS.inputClear | typeof REASONS.clearPress | typeof REASONS.chipRemovePress | typeof REASONS.none;
247
+ type ChangeEventReason = typeof REASONS.triggerPress | typeof REASONS.outsidePress | typeof REASONS.itemPress | typeof REASONS.closePress | typeof REASONS.escapeKey | typeof REASONS.listNavigation | typeof REASONS.focusOut | typeof REASONS.inputChange | typeof REASONS.inputClear | typeof REASONS.clearPress | typeof REASONS.chipRemovePress | typeof REASONS.none;
247
248
  type ChangeEventDetails = BaseUIChangeEventDetails<ChangeEventReason>;
248
249
  }
249
250
  export {};
@@ -107,6 +107,8 @@ function AriaCombobox(props) {
107
107
  const labelsRef = React.useRef([]);
108
108
  const popupRef = React.useRef(null);
109
109
  const inputRef = React.useRef(null);
110
+ const startDismissRef = React.useRef(null);
111
+ const endDismissRef = React.useRef(null);
110
112
  const emptyRef = React.useRef(null);
111
113
  const keyboardActiveRef = React.useRef(true);
112
114
  const hadInputClearRef = React.useRef(false);
@@ -259,6 +261,7 @@ function AriaCombobox(props) {
259
261
  }, [filteredItems, isGrouped]);
260
262
  const store = (0, _useRefWithInit.useRefWithInit)(() => new _store.Store({
261
263
  id,
264
+ labelId: undefined,
262
265
  selectedValue,
263
266
  open,
264
267
  filter,
@@ -270,6 +273,8 @@ function AriaCombobox(props) {
270
273
  popupRef,
271
274
  emptyRef,
272
275
  inputRef,
276
+ startDismissRef,
277
+ endDismissRef,
273
278
  keyboardActiveRef,
274
279
  chipsContainerRef,
275
280
  clearRef,
@@ -303,6 +308,7 @@ function AriaCombobox(props) {
303
308
  listElement: null,
304
309
  triggerElement: null,
305
310
  inputElement: null,
311
+ inputGroupElement: null,
306
312
  popupSide: null,
307
313
  openMethod: null,
308
314
  inputInsidePopup: true,
@@ -336,6 +342,7 @@ function AriaCombobox(props) {
336
342
  const listElement = (0, _store.useStore)(store, _store2.selectors.listElement);
337
343
  const triggerElement = (0, _store.useStore)(store, _store2.selectors.triggerElement);
338
344
  const inputElement = (0, _store.useStore)(store, _store2.selectors.inputElement);
345
+ const inputGroupElement = (0, _store.useStore)(store, _store2.selectors.inputGroupElement);
339
346
  const inline = (0, _store.useStore)(store, _store2.selectors.inline);
340
347
  const inputInsidePopup = (0, _store.useStore)(store, _store2.selectors.inputInsidePopup);
341
348
  const triggerRef = (0, _useValueAsRef.useValueAsRef)(triggerElement);
@@ -346,8 +353,7 @@ function AriaCombobox(props) {
346
353
  } = (0, _useTransitionStatus.useTransitionStatus)(open);
347
354
  const {
348
355
  openMethod,
349
- triggerProps,
350
- reset: resetOpenInteractionType
356
+ triggerProps
351
357
  } = (0, _useOpenInteractionType.useOpenInteractionType)(open);
352
358
  (0, _useField.useField)({
353
359
  id,
@@ -545,7 +551,6 @@ function AriaCombobox(props) {
545
551
  setMounted(false);
546
552
  onOpenChangeComplete?.(false);
547
553
  setQueryChangedAfterOpen(false);
548
- resetOpenInteractionType();
549
554
  setCloseQuery(null);
550
555
  if (selectionMode === 'none') {
551
556
  setIndices({
@@ -766,8 +771,11 @@ function AriaCombobox(props) {
766
771
  }
767
772
  const role = React.useMemo(() => {
768
773
  const isPlainInput = inputElement?.tagName === 'INPUT';
769
- const shouldApplyAria = isPlainInput || open;
770
- const reference = isPlainInput ? {
774
+ // During SSR and initial hydration, the input ref is not available yet.
775
+ // Assume an input-like control so combobox ARIA attributes are present.
776
+ const shouldTreatAsInput = inputElement == null || isPlainInput;
777
+ const shouldApplyAria = shouldTreatAsInput || open;
778
+ const reference = shouldTreatAsInput ? {
771
779
  autoComplete: 'off',
772
780
  spellCheck: 'false',
773
781
  autoCorrect: 'off',
@@ -809,7 +817,7 @@ function AriaCombobox(props) {
809
817
  bubbles: inline ? true : undefined,
810
818
  outsidePress(event) {
811
819
  const target = (0, _utils.getTarget)(event);
812
- return !(0, _utils.contains)(triggerElement, target) && !(0, _utils.contains)(clearRef.current, target) && !(0, _utils.contains)(chipsContainerRef.current, target);
820
+ return !(0, _utils.contains)(triggerElement, target) && !(0, _utils.contains)(clearRef.current, target) && !(0, _utils.contains)(chipsContainerRef.current, target) && !(0, _utils.contains)(inputGroupElement, target);
813
821
  }
814
822
  });
815
823
  const listNavigation = (0, _floatingUiReact.useListNavigation)(floatingRootContext, {
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { AriaCombobox } from "./AriaCombobox.js";
2
+ import { AriaCombobox, type AriaComboboxState } from "./AriaCombobox.js";
3
3
  /**
4
4
  * Groups all parts of the combobox.
5
5
  * Doesn't render its own HTML element.
@@ -51,7 +51,7 @@ export type ComboboxRootProps<Value, Multiple extends boolean | undefined = fals
51
51
  *
52
52
  * To render a controlled combobox, use the `value` prop instead.
53
53
  */
54
- defaultValue?: (ComboboxValueType<Value, Multiple> | null) | undefined;
54
+ defaultValue?: ComboboxValueType<Value, Multiple> | null | undefined;
55
55
  /**
56
56
  * A ref to imperative actions.
57
57
  * - `unmount`: When specified, the combobox will not be unmounted when closed.
@@ -79,13 +79,13 @@ export type ComboboxRootProps<Value, Multiple extends boolean | undefined = fals
79
79
  /**
80
80
  * The selected value of the combobox. Use when controlled.
81
81
  */
82
- value?: (ComboboxValueType<Value, Multiple> | null) | undefined;
82
+ value?: ComboboxValueType<Value, Multiple> | null | undefined;
83
83
  /**
84
84
  * Event handler called when the selected value of the combobox changes.
85
85
  */
86
86
  onValueChange?: ((value: ComboboxValueType<Value, Multiple> | (Multiple extends true ? never : null), eventDetails: ComboboxRoot.ChangeEventDetails) => void) | undefined;
87
87
  };
88
- export type ComboboxRootState = AriaCombobox.State;
88
+ export interface ComboboxRootState extends AriaComboboxState {}
89
89
  export type ComboboxRootActions = AriaCombobox.Actions;
90
90
  export type ComboboxRootChangeEventReason = AriaCombobox.ChangeEventReason;
91
91
  export type ComboboxRootChangeEventDetails = AriaCombobox.ChangeEventDetails;
@@ -7,7 +7,7 @@ import { BaseUIComponentProps } from "../../utils/types.js";
7
7
  */
8
8
  export declare const ComboboxRow: React.ForwardRefExoticComponent<Omit<ComboboxRowProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
9
  export interface ComboboxRowState {}
10
- export interface ComboboxRowProps extends BaseUIComponentProps<'div', ComboboxRow.State> {}
10
+ export interface ComboboxRowProps extends BaseUIComponentProps<'div', ComboboxRowState> {}
11
11
  export declare namespace ComboboxRow {
12
12
  type State = ComboboxRowState;
13
13
  type Props = ComboboxRowProps;
@@ -7,7 +7,7 @@ import { BaseUIComponentProps } from "../../utils/types.js";
7
7
  */
8
8
  export declare const ComboboxStatus: React.ForwardRefExoticComponent<Omit<ComboboxStatusProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
9
  export interface ComboboxStatusState {}
10
- export interface ComboboxStatusProps extends BaseUIComponentProps<'div', ComboboxStatus.State> {}
10
+ export interface ComboboxStatusProps extends BaseUIComponentProps<'div', ComboboxStatusState> {}
11
11
  export declare namespace ComboboxStatus {
12
12
  type State = ComboboxStatusState;
13
13
  type Props = ComboboxStatusProps;
@@ -6,6 +6,7 @@ import type { Side } from "../utils/useAnchorPositioning.js";
6
6
  import type { AriaCombobox } from "./root/AriaCombobox.js";
7
7
  export type State = {
8
8
  id: string | undefined;
9
+ labelId: string | undefined;
9
10
  query: string;
10
11
  filter: (item: any, query: string) => boolean;
11
12
  items: readonly any[] | undefined;
@@ -24,6 +25,7 @@ export type State = {
24
25
  listElement: HTMLElement | null;
25
26
  triggerElement: HTMLElement | null;
26
27
  inputElement: HTMLInputElement | null;
28
+ inputGroupElement: HTMLDivElement | null;
27
29
  popupSide: Side | null;
28
30
  openMethod: InteractionType | null;
29
31
  inputInsidePopup: boolean;
@@ -33,6 +35,8 @@ export type State = {
33
35
  popupRef: React.RefObject<HTMLDivElement | null>;
34
36
  emptyRef: React.RefObject<HTMLDivElement | null>;
35
37
  inputRef: React.RefObject<HTMLInputElement | null>;
38
+ startDismissRef: React.RefObject<HTMLSpanElement | null>;
39
+ endDismissRef: React.RefObject<HTMLSpanElement | null>;
36
40
  keyboardActiveRef: React.RefObject<boolean>;
37
41
  chipsContainerRef: React.RefObject<HTMLDivElement | null>;
38
42
  clearRef: React.RefObject<HTMLButtonElement | null>;
@@ -43,9 +47,9 @@ export type State = {
43
47
  setInputValue: (value: string, eventDetails: AriaCombobox.ChangeEventDetails) => void;
44
48
  setSelectedValue: (value: any, eventDetails: AriaCombobox.ChangeEventDetails) => void;
45
49
  setIndices: (indices: {
46
- activeIndex?: (number | null) | undefined;
47
- selectedIndex?: (number | null) | undefined;
48
- type?: ('keyboard' | 'pointer' | 'none') | undefined;
50
+ activeIndex?: number | null | undefined;
51
+ selectedIndex?: number | null | undefined;
52
+ type?: 'keyboard' | 'pointer' | 'none' | undefined;
49
53
  }) => void;
50
54
  onItemHighlighted: (item: any, eventDetails: AriaCombobox.HighlightEventDetails) => void;
51
55
  forceMount: () => void;
@@ -74,6 +78,7 @@ export type State = {
74
78
  export type ComboboxStore = Store<State>;
75
79
  export declare const selectors: {
76
80
  id: (state: State) => string | undefined;
81
+ labelId: (state: State) => string | undefined;
77
82
  query: (state: State) => string;
78
83
  items: (state: State) => readonly any[] | undefined;
79
84
  selectedValue: (state: State) => any;
@@ -100,6 +105,7 @@ export declare const selectors: {
100
105
  listElement: (state: State) => HTMLElement | null;
101
106
  triggerElement: (state: State) => HTMLElement | null;
102
107
  inputElement: (state: State) => HTMLInputElement | null;
108
+ inputGroupElement: (state: State) => HTMLDivElement | null;
103
109
  popupSide: (state: State) => Side | null;
104
110
  openMethod: (state: State) => InteractionType | null;
105
111
  inputInsidePopup: (state: State) => boolean;
@@ -126,6 +132,6 @@ export declare const selectors: {
126
132
  itemToStringLabel: (state: State) => ((item: any) => string) | undefined;
127
133
  isItemEqualToValue: (state: State) => (itemValue: any, selectedValue: any) => boolean;
128
134
  modal: (state: State) => boolean;
129
- autoHighlight: (state: State) => false | "always" | "input-change";
135
+ autoHighlight: (state: State) => false | "input-change" | "always";
130
136
  submitOnItemClick: (state: State) => boolean;
131
137
  };
package/combobox/store.js CHANGED
@@ -9,6 +9,7 @@ var _itemEquality = require("../utils/itemEquality");
9
9
  var _resolveValueLabel = require("../utils/resolveValueLabel");
10
10
  const selectors = exports.selectors = {
11
11
  id: (0, _store.createSelector)(state => state.id),
12
+ labelId: (0, _store.createSelector)(state => state.labelId),
12
13
  query: (0, _store.createSelector)(state => state.query),
13
14
  items: (0, _store.createSelector)(state => state.items),
14
15
  selectedValue: (0, _store.createSelector)(state => state.selectedValue),
@@ -56,6 +57,7 @@ const selectors = exports.selectors = {
56
57
  listElement: (0, _store.createSelector)(state => state.listElement),
57
58
  triggerElement: (0, _store.createSelector)(state => state.triggerElement),
58
59
  inputElement: (0, _store.createSelector)(state => state.inputElement),
60
+ inputGroupElement: (0, _store.createSelector)(state => state.inputGroupElement),
59
61
  popupSide: (0, _store.createSelector)(state => state.popupSide),
60
62
  openMethod: (0, _store.createSelector)(state => state.openMethod),
61
63
  inputInsidePopup: (0, _store.createSelector)(state => state.inputInsidePopup),
@@ -1,13 +1,13 @@
1
1
  import * as React from 'react';
2
2
  import { BaseUIComponentProps, NativeButtonProps } from "../../utils/types.js";
3
- import type { FieldRoot } from "../../field/root/FieldRoot.js";
3
+ import type { FieldRootState } from "../../field/root/FieldRoot.js";
4
4
  import type { Side } from "../../utils/useAnchorPositioning.js";
5
5
  /**
6
6
  * A button that opens the popup.
7
7
  * Renders a `<button>` element.
8
8
  */
9
9
  export declare const ComboboxTrigger: React.ForwardRefExoticComponent<Omit<ComboboxTriggerProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
10
- export interface ComboboxTriggerState extends FieldRoot.State {
10
+ export interface ComboboxTriggerState extends FieldRootState {
11
11
  /**
12
12
  * Whether the popup is open.
13
13
  */
@@ -29,7 +29,7 @@ export interface ComboboxTriggerState extends FieldRoot.State {
29
29
  */
30
30
  placeholder: boolean;
31
31
  }
32
- export interface ComboboxTriggerProps extends NativeButtonProps, BaseUIComponentProps<'button', ComboboxTrigger.State> {
32
+ export interface ComboboxTriggerProps extends NativeButtonProps, BaseUIComponentProps<'button', ComboboxTriggerState> {
33
33
  /**
34
34
  * Whether the component should ignore user interaction.
35
35
  * @default false
@@ -24,6 +24,7 @@ var _createBaseUIEventDetails = require("../../utils/createBaseUIEventDetails");
24
24
  var _reasons = require("../../utils/reasons");
25
25
  var _floatingUiReact = require("../../floating-ui-react");
26
26
  var _useLabelableId = require("../../labelable-provider/useLabelableId");
27
+ var _resolveAriaLabelledBy = require("../../utils/resolveAriaLabelledBy");
27
28
  const BOUNDARY_OFFSET = 2;
28
29
 
29
30
  /**
@@ -48,7 +49,7 @@ const ComboboxTrigger = exports.ComboboxTrigger = /*#__PURE__*/React.forwardRef(
48
49
  validation
49
50
  } = (0, _FieldRootContext.useFieldRootContext)();
50
51
  const {
51
- labelId
52
+ labelId: fieldLabelId
52
53
  } = (0, _LabelableContext.useLabelableContext)();
53
54
  const store = (0, _ComboboxRootContext.useComboboxRootContext)();
54
55
  const {
@@ -66,6 +67,7 @@ const ComboboxTrigger = exports.ComboboxTrigger = /*#__PURE__*/React.forwardRef(
66
67
  const triggerElement = (0, _store.useStore)(store, _store2.selectors.triggerElement);
67
68
  const inputInsidePopup = (0, _store.useStore)(store, _store2.selectors.inputInsidePopup);
68
69
  const rootId = (0, _store.useStore)(store, _store2.selectors.id);
70
+ const comboboxLabelId = (0, _store.useStore)(store, _store2.selectors.labelId);
69
71
  const open = (0, _store.useStore)(store, _store2.selectors.open);
70
72
  const selectedValue = (0, _store.useStore)(store, _store2.selectors.selectedValue);
71
73
  const activeIndex = (0, _store.useStore)(store, _store2.selectors.activeIndex);
@@ -81,6 +83,7 @@ const ComboboxTrigger = exports.ComboboxTrigger = /*#__PURE__*/React.forwardRef(
81
83
  id: inputInsidePopup ? idProp : undefined
82
84
  });
83
85
  const id = inputInsidePopup ? idProp ?? rootId : idProp;
86
+ const ariaLabelledBy = (0, _resolveAriaLabelledBy.resolveAriaLabelledBy)(fieldLabelId, comboboxLabelId);
84
87
  const currentPointerTypeRef = React.useRef('');
85
88
  function trackPointerType(event) {
86
89
  currentPointerTypeRef.current = event.pointerType;
@@ -146,7 +149,7 @@ const ComboboxTrigger = exports.ComboboxTrigger = /*#__PURE__*/React.forwardRef(
146
149
  'aria-haspopup': inputInsidePopup ? 'dialog' : 'listbox',
147
150
  'aria-controls': open ? listElement?.id : undefined,
148
151
  'aria-required': inputInsidePopup ? required || undefined : undefined,
149
- 'aria-labelledby': labelId,
152
+ 'aria-labelledby': ariaLabelledBy,
150
153
  onPointerDown: trackPointerType,
151
154
  onPointerEnter: trackPointerType,
152
155
  onFocus() {
@@ -0,0 +1,5 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * @internal
4
+ */
5
+ export declare const ComboboxInternalDismissButton: React.ForwardRefExoticComponent<React.RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.ComboboxInternalDismissButton = void 0;
9
+ var React = _interopRequireWildcard(require("react"));
10
+ var _useMergedRefs = require("@base-ui/utils/useMergedRefs");
11
+ var _useStableCallback = require("@base-ui/utils/useStableCallback");
12
+ var _visuallyHidden = require("@base-ui/utils/visuallyHidden");
13
+ var _useButton = require("../../use-button");
14
+ var _createBaseUIEventDetails = require("../../utils/createBaseUIEventDetails");
15
+ var _reasons = require("../../utils/reasons");
16
+ var _ComboboxRootContext = require("../root/ComboboxRootContext");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ /**
19
+ * @internal
20
+ */
21
+ const ComboboxInternalDismissButton = exports.ComboboxInternalDismissButton = /*#__PURE__*/React.forwardRef(function ComboboxInternalDismissButton(_, forwardedRef) {
22
+ const store = (0, _ComboboxRootContext.useComboboxRootContext)();
23
+ const {
24
+ buttonRef,
25
+ getButtonProps
26
+ } = (0, _useButton.useButton)({
27
+ native: false
28
+ });
29
+ const mergedRef = (0, _useMergedRefs.useMergedRefs)(forwardedRef, buttonRef);
30
+ const handleDismiss = (0, _useStableCallback.useStableCallback)(event => {
31
+ store.state.setOpen(false, (0, _createBaseUIEventDetails.createChangeEventDetails)(_reasons.REASONS.closePress, event.nativeEvent, event.currentTarget));
32
+ });
33
+ const dismissProps = getButtonProps({
34
+ onClick: handleDismiss
35
+ });
36
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
37
+ ref: mergedRef,
38
+ ...dismissProps,
39
+ "aria-label": "Dismiss",
40
+ tabIndex: undefined,
41
+ style: _visuallyHidden.visuallyHiddenInput
42
+ });
43
+ });
44
+ if (process.env.NODE_ENV !== "production") ComboboxInternalDismissButton.displayName = "ComboboxInternalDismissButton";
@@ -5,6 +5,7 @@ import { StateAttributesMapping } from "../../utils/getStateAttributesProps.js";
5
5
  * @internal
6
6
  */
7
7
  export declare function CompositeItem<Metadata, State extends Record<string, any>>(componentProps: CompositeItem.Props<Metadata, State>): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
8
+ export interface CompositeItemState {}
8
9
  export interface CompositeItemProps<Metadata, State extends Record<string, any>> extends Pick<BaseUIComponentProps<any, State>, 'render' | 'className'> {
9
10
  children?: React.ReactNode;
10
11
  metadata?: Metadata | undefined;
@@ -15,5 +16,6 @@ export interface CompositeItemProps<Metadata, State extends Record<string, any>>
15
16
  tag?: keyof React.JSX.IntrinsicElements | undefined;
16
17
  }
17
18
  export declare namespace CompositeItem {
18
- type Props<Metadata, State extends Record<string, any>> = CompositeItemProps<Metadata, State>;
19
+ type State = CompositeItemState;
20
+ type Props<Metadata, TState extends Record<string, any>> = CompositeItemProps<Metadata, TState>;
19
21
  }
@@ -1,12 +1,13 @@
1
1
  import * as React from 'react';
2
2
  export type CompositeMetadata<CustomMetadata> = {
3
- index?: (number | null) | undefined;
3
+ index?: number | null | undefined;
4
4
  } & CustomMetadata;
5
5
  /**
6
6
  * Provides context for a list of items in a composite component.
7
7
  * @internal
8
8
  */
9
9
  export declare function CompositeList<Metadata>(props: CompositeList.Props<Metadata>): import("react/jsx-runtime").JSX.Element;
10
+ export interface CompositeListState {}
10
11
  export interface CompositeListProps<Metadata> {
11
12
  children: React.ReactNode;
12
13
  /**
@@ -22,5 +23,6 @@ export interface CompositeListProps<Metadata> {
22
23
  onMapChange?: ((newMap: Map<Element, CompositeMetadata<Metadata> | null>) => void) | undefined;
23
24
  }
24
25
  export declare namespace CompositeList {
26
+ type State = CompositeListState;
25
27
  type Props<Metadata> = CompositeListProps<Metadata>;
26
28
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  export interface UseCompositeListItemParameters<Metadata> {
3
3
  index?: number | undefined;
4
- label?: (string | null) | undefined;
4
+ label?: string | null | undefined;
5
5
  metadata?: Metadata | undefined;
6
6
  textRef?: React.RefObject<HTMLElement | null> | undefined;
7
7
  /** Enables guessing the indexes. This avoids a re-render after mount, which is useful for
@@ -7,13 +7,14 @@ import { StateAttributesMapping } from "../../utils/getStateAttributesProps.js";
7
7
  * @internal
8
8
  */
9
9
  export declare function CompositeRoot<Metadata extends {}, State extends Record<string, any>>(componentProps: CompositeRoot.Props<Metadata, State>): import("react/jsx-runtime").JSX.Element;
10
+ export interface CompositeRootState {}
10
11
  export interface CompositeRootProps<Metadata, State extends Record<string, any>> extends Pick<BaseUIComponentProps<'div', State>, 'render' | 'className' | 'children'> {
11
12
  props?: Array<Record<string, any> | (() => Record<string, any>)> | undefined;
12
13
  state?: State | undefined;
13
14
  stateAttributesMapping?: StateAttributesMapping<State> | undefined;
14
15
  refs?: React.Ref<HTMLElement | null>[] | undefined;
15
16
  tag?: keyof React.JSX.IntrinsicElements | undefined;
16
- orientation?: ('horizontal' | 'vertical' | 'both') | undefined;
17
+ orientation?: 'horizontal' | 'vertical' | 'both' | undefined;
17
18
  cols?: number | undefined;
18
19
  loopFocus?: boolean | undefined;
19
20
  highlightedIndex?: number | undefined;
@@ -29,5 +30,6 @@ export interface CompositeRootProps<Metadata, State extends Record<string, any>>
29
30
  highlightItemOnHover?: boolean | undefined;
30
31
  }
31
32
  export declare namespace CompositeRoot {
32
- type Props<Metadata, State extends Record<string, any>> = CompositeRootProps<Metadata, State>;
33
+ type State = CompositeRootState;
34
+ type Props<Metadata, TState extends Record<string, any>> = CompositeRootProps<Metadata, TState>;
33
35
  }
@@ -4,7 +4,7 @@ import { type Dimensions, type ModifierKey } from "../composite.js";
4
4
  import { CompositeMetadata } from "../list/CompositeList.js";
5
5
  import { HTMLProps } from "../../utils/types.js";
6
6
  export interface UseCompositeRootParameters {
7
- orientation?: ('horizontal' | 'vertical' | 'both') | undefined;
7
+ orientation?: 'horizontal' | 'vertical' | 'both' | undefined;
8
8
  cols?: number | undefined;
9
9
  loopFocus?: boolean | undefined;
10
10
  highlightedIndex?: number | undefined;
@@ -7,13 +7,13 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
7
7
  * Documentation: [Base UI Context Menu](https://base-ui.com/react/components/context-menu)
8
8
  */
9
9
  export declare const ContextMenuTrigger: React.ForwardRefExoticComponent<Omit<ContextMenuTriggerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
- export type ContextMenuTriggerState = {
10
+ export interface ContextMenuTriggerState {
11
11
  /**
12
12
  * Whether the context menu is currently open.
13
13
  */
14
14
  open: boolean;
15
- };
16
- export interface ContextMenuTriggerProps extends BaseUIComponentProps<'div', ContextMenuTrigger.State> {}
15
+ }
16
+ export interface ContextMenuTriggerProps extends BaseUIComponentProps<'div', ContextMenuTriggerState> {}
17
17
  export declare namespace ContextMenuTrigger {
18
18
  type State = ContextMenuTriggerState;
19
19
  type Props = ContextMenuTriggerProps;
@@ -8,7 +8,7 @@ import { type BaseUIComponentProps } from "../../utils/types.js";
8
8
  * Documentation: [Base UI Dialog](https://base-ui.com/react/components/dialog)
9
9
  */
10
10
  export declare const DialogBackdrop: React.ForwardRefExoticComponent<Omit<DialogBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
- export interface DialogBackdropProps extends BaseUIComponentProps<'div', DialogBackdrop.State> {
11
+ export interface DialogBackdropProps extends BaseUIComponentProps<'div', DialogBackdropState> {
12
12
  /**
13
13
  * Whether the backdrop is forced to render even when nested.
14
14
  * @default false
@@ -20,6 +20,9 @@ export interface DialogBackdropState {
20
20
  * Whether the dialog is currently open.
21
21
  */
22
22
  open: boolean;
23
+ /**
24
+ * The transition status of the component.
25
+ */
23
26
  transitionStatus: TransitionStatus;
24
27
  }
25
28
  export declare namespace DialogBackdrop {
@@ -7,7 +7,7 @@ import type { BaseUIComponentProps, NativeButtonProps } from "../../utils/types.
7
7
  * Documentation: [Base UI Dialog](https://base-ui.com/react/components/dialog)
8
8
  */
9
9
  export declare const DialogClose: React.ForwardRefExoticComponent<Omit<DialogCloseProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
10
- export interface DialogCloseProps extends NativeButtonProps, BaseUIComponentProps<'button', DialogClose.State> {}
10
+ export interface DialogCloseProps extends NativeButtonProps, BaseUIComponentProps<'button', DialogCloseState> {}
11
11
  export interface DialogCloseState {
12
12
  /**
13
13
  * Whether the button is currently disabled.
@@ -7,7 +7,7 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
7
7
  * Documentation: [Base UI Dialog](https://base-ui.com/react/components/dialog)
8
8
  */
9
9
  export declare const DialogDescription: React.ForwardRefExoticComponent<Omit<DialogDescriptionProps, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
10
- export interface DialogDescriptionProps extends BaseUIComponentProps<'p', DialogDescription.State> {}
10
+ export interface DialogDescriptionProps extends BaseUIComponentProps<'p', DialogDescriptionState> {}
11
11
  export interface DialogDescriptionState {}
12
12
  export declare namespace DialogDescription {
13
13
  type Props = DialogDescriptionProps;
@@ -9,7 +9,7 @@ import { type TransitionStatus } from "../../utils/useTransitionStatus.js";
9
9
  * Documentation: [Base UI Dialog](https://base-ui.com/react/components/dialog)
10
10
  */
11
11
  export declare const DialogPopup: React.ForwardRefExoticComponent<Omit<DialogPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
12
- export interface DialogPopupProps extends BaseUIComponentProps<'div', DialogPopup.State> {
12
+ export interface DialogPopupProps extends BaseUIComponentProps<'div', DialogPopupState> {
13
13
  /**
14
14
  * Determines the element to focus when the dialog is opened.
15
15
  *
@@ -19,7 +19,7 @@ export interface DialogPopupProps extends BaseUIComponentProps<'div', DialogPopu
19
19
  * - `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).
20
20
  * Return an element to focus, `true` to use the default behavior, or `false`/`undefined` to do nothing.
21
21
  */
22
- initialFocus?: (boolean | React.RefObject<HTMLElement | null> | ((openType: InteractionType) => boolean | HTMLElement | null | void)) | undefined;
22
+ initialFocus?: boolean | React.RefObject<HTMLElement | null> | ((openType: InteractionType) => boolean | HTMLElement | null | void) | undefined;
23
23
  /**
24
24
  * Determines the element to focus when the dialog is closed.
25
25
  *
@@ -29,13 +29,16 @@ export interface DialogPopupProps extends BaseUIComponentProps<'div', DialogPopu
29
29
  * - `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).
30
30
  * Return an element to focus, `true` to use the default behavior, or `false`/`undefined` to do nothing.
31
31
  */
32
- finalFocus?: (boolean | React.RefObject<HTMLElement | null> | ((closeType: InteractionType) => boolean | HTMLElement | null | void)) | undefined;
32
+ finalFocus?: boolean | React.RefObject<HTMLElement | null> | ((closeType: InteractionType) => boolean | HTMLElement | null | void) | undefined;
33
33
  }
34
34
  export interface DialogPopupState {
35
35
  /**
36
36
  * Whether the dialog is currently open.
37
37
  */
38
38
  open: boolean;
39
+ /**
40
+ * The transition status of the component.
41
+ */
39
42
  transitionStatus: TransitionStatus;
40
43
  /**
41
44
  * Whether the dialog is nested within a parent dialog.
@@ -8,10 +8,8 @@ import { FloatingPortal } from "../../floating-ui-react/index.js";
8
8
  * Documentation: [Base UI Dialog](https://base-ui.com/react/components/dialog)
9
9
  */
10
10
  export declare const DialogPortal: React.ForwardRefExoticComponent<Omit<DialogPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
- export declare namespace DialogPortal {
12
- interface State {}
13
- }
14
- export interface DialogPortalProps extends FloatingPortal.Props<DialogPortal.State> {
11
+ export interface DialogPortalState {}
12
+ export interface DialogPortalProps extends FloatingPortal.Props<DialogPortalState> {
15
13
  /**
16
14
  * Whether to keep the portal mounted in the DOM while the popup is hidden.
17
15
  * @default false
@@ -20,8 +18,9 @@ export interface DialogPortalProps extends FloatingPortal.Props<DialogPortal.Sta
20
18
  /**
21
19
  * A parent element to render the portal element into.
22
20
  */
23
- container?: FloatingPortal.Props<DialogPortal.State>['container'] | undefined;
21
+ container?: FloatingPortal.Props<DialogPortalState>['container'] | undefined;
24
22
  }
25
23
  export declare namespace DialogPortal {
24
+ type State = DialogPortalState;
26
25
  type Props = DialogPortalProps;
27
26
  }