@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
@@ -10,6 +10,7 @@ import { type PayloadChildRenderFunction } from "../../utils/popups/index.js";
10
10
  * Documentation: [Base UI Dialog](https://base-ui.com/react/components/dialog)
11
11
  */
12
12
  export declare function DialogRoot<Payload>(props: DialogRoot.Props<Payload>): import("react/jsx-runtime").JSX.Element;
13
+ export interface DialogRootState {}
13
14
  export interface DialogRootProps<Payload = unknown> {
14
15
  /**
15
16
  * Whether the dialog is currently open.
@@ -27,9 +28,12 @@ export interface DialogRootProps<Payload = unknown> {
27
28
  * - `true`: user interaction is limited to just the dialog: focus is trapped, document page scroll is locked, and pointer interactions on outside elements are disabled.
28
29
  * - `false`: user interaction with the rest of the document is allowed.
29
30
  * - `'trap-focus'`: focus is trapped inside the dialog, but document page scroll is not locked and pointer interactions outside of it remain enabled.
31
+ *
32
+ * When `modal` is `true` or `'trap-focus'`, render `<Dialog.Close>` inside `<Dialog.Popup>` so
33
+ * touch screen readers can escape the popup.
30
34
  * @default true
31
35
  */
32
- modal?: (boolean | 'trap-focus') | undefined;
36
+ modal?: boolean | 'trap-focus' | undefined;
33
37
  /**
34
38
  * Event handler called when the dialog is opened or closed.
35
39
  */
@@ -67,12 +71,12 @@ export interface DialogRootProps<Payload = unknown> {
67
71
  * This is useful in conjunction with the `open` prop to create a controlled dialog.
68
72
  * There's no need to specify this prop when the popover is uncontrolled (i.e. when the `open` prop is not set).
69
73
  */
70
- triggerId?: (string | null) | undefined;
74
+ triggerId?: string | null | undefined;
71
75
  /**
72
76
  * ID of the trigger that the dialog is associated with.
73
77
  * This is useful in conjunction with the `defaultOpen` prop to create an initially open dialog.
74
78
  */
75
- defaultTriggerId?: (string | null) | undefined;
79
+ defaultTriggerId?: string | null | undefined;
76
80
  }
77
81
  export interface DialogRootActions {
78
82
  unmount: () => void;
@@ -83,6 +87,7 @@ export type DialogRootChangeEventDetails = BaseUIChangeEventDetails<DialogRoot.C
83
87
  preventUnmountOnClose(): void;
84
88
  };
85
89
  export declare namespace DialogRoot {
90
+ type State = DialogRootState;
86
91
  type Props<Payload = unknown> = DialogRootProps<Payload>;
87
92
  type Actions = DialogRootActions;
88
93
  type ChangeEventReason = DialogRootChangeEventReason;
@@ -1,17 +1,13 @@
1
1
  import { type DialogRoot } from "./DialogRoot.js";
2
2
  import { DialogStore } from "../store/DialogStore.js";
3
- export declare function useDialogRoot(params: useDialogRoot.Parameters): useDialogRoot.ReturnValue;
3
+ export declare function useDialogRoot(params: UseDialogRootParameters): UseDialogRootReturnValue;
4
4
  export interface UseDialogRootSharedParameters {}
5
5
  export interface UseDialogRootParameters {
6
6
  store: DialogStore<any>;
7
7
  actionsRef?: DialogRoot.Props['actionsRef'] | undefined;
8
8
  parentContext?: DialogStore<unknown>['context'] | undefined;
9
9
  onOpenChange: DialogRoot.Props['onOpenChange'];
10
- triggerIdProp?: (string | null) | undefined;
10
+ triggerIdProp?: string | null | undefined;
11
11
  }
12
12
  export type UseDialogRootReturnValue = void;
13
- export declare namespace useDialogRoot {
14
- type SharedParameters = UseDialogRootSharedParameters;
15
- type Parameters = UseDialogRootParameters;
16
- type ReturnValue = UseDialogRootReturnValue;
17
- }
13
+ export interface UseDialogRootState {}
@@ -27,15 +27,12 @@ function useDialogRoot(params) {
27
27
  const popupElement = store.useState('popupElement');
28
28
  const {
29
29
  openMethod,
30
- triggerProps,
31
- reset: resetOpenInteractionType
30
+ triggerProps
32
31
  } = (0, _useOpenInteractionType.useOpenInteractionType)(open);
33
32
  (0, _popups.useImplicitActiveTrigger)(store);
34
33
  const {
35
34
  forceUnmount
36
- } = (0, _popups.useOpenStateTransitions)(open, store, () => {
37
- resetOpenInteractionType();
38
- });
35
+ } = (0, _popups.useOpenStateTransitions)(open, store);
39
36
  const createDialogEventDetails = (0, _useStableCallback.useStableCallback)(reason => {
40
37
  const details = (0, _createBaseUIEventDetails.createChangeEventDetails)(reason);
41
38
  details.preventUnmountOnClose = () => {
@@ -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 DialogTitle: React.ForwardRefExoticComponent<Omit<DialogTitleProps, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
10
- export interface DialogTitleProps extends BaseUIComponentProps<'h2', DialogTitle.State> {}
10
+ export interface DialogTitleProps extends BaseUIComponentProps<'h2', DialogTitleState> {}
11
11
  export interface DialogTitleState {}
12
12
  export declare namespace DialogTitle {
13
13
  type Props = DialogTitleProps;
@@ -11,7 +11,7 @@ export declare const DialogTrigger: DialogTrigger;
11
11
  export interface DialogTrigger {
12
12
  <Payload>(componentProps: DialogTriggerProps<Payload> & React.RefAttributes<HTMLElement>): React.JSX.Element;
13
13
  }
14
- export interface DialogTriggerProps<Payload = unknown> extends NativeButtonProps, BaseUIComponentProps<'button', DialogTrigger.State> {
14
+ export interface DialogTriggerProps<Payload = unknown> extends NativeButtonProps, BaseUIComponentProps<'button', DialogTriggerState> {
15
15
  /**
16
16
  * A handle to associate the trigger with a dialog.
17
17
  * Can be created with the Dialog.createHandle() method.
@@ -13,6 +13,9 @@ export interface DialogViewportState {
13
13
  * Whether the dialog is currently open.
14
14
  */
15
15
  open: boolean;
16
+ /**
17
+ * The transition status of the component.
18
+ */
16
19
  transitionStatus: TransitionStatus;
17
20
  /**
18
21
  * Whether the dialog is nested within another dialog.
@@ -6,6 +6,7 @@ import { type TextDirection } from "./DirectionContext.js";
6
6
  * Documentation: [Base UI Direction Provider](https://base-ui.com/react/utils/direction-provider)
7
7
  */
8
8
  export declare const DirectionProvider: React.FC<DirectionProvider.Props>;
9
+ export interface DirectionProviderState {}
9
10
  export interface DirectionProviderProps {
10
11
  children?: React.ReactNode;
11
12
  /**
@@ -15,5 +16,6 @@ export interface DirectionProviderProps {
15
16
  direction?: TextDirection | undefined;
16
17
  }
17
18
  export declare namespace DirectionProvider {
19
+ type State = DirectionProviderState;
18
20
  type Props = DirectionProviderProps;
19
21
  }
@@ -8,7 +8,7 @@ import { type BaseUIComponentProps } from "../../utils/types.js";
8
8
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
9
9
  */
10
10
  export declare const DrawerBackdrop: React.ForwardRefExoticComponent<Omit<DrawerBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
- export interface DrawerBackdropProps extends BaseUIComponentProps<'div', DrawerBackdrop.State> {
11
+ export interface DrawerBackdropProps extends BaseUIComponentProps<'div', DrawerBackdropState> {
12
12
  /**
13
13
  * Whether the backdrop is forced to render even when nested.
14
14
  * @default false
@@ -20,6 +20,9 @@ export interface DrawerBackdropState {
20
20
  * Whether the drawer 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 DrawerBackdrop {
@@ -0,0 +1,18 @@
1
+ export declare enum DrawerBackdropDataAttributes {
2
+ /**
3
+ * Present when the drawer is open.
4
+ */
5
+ open = "data-open",
6
+ /**
7
+ * Present when the drawer is closed.
8
+ */
9
+ closed = "data-closed",
10
+ /**
11
+ * Present when the drawer is animating in.
12
+ */
13
+ startingStyle = "data-starting-style",
14
+ /**
15
+ * Present when the drawer is animating out.
16
+ */
17
+ endingStyle = "data-ending-style",
18
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DrawerBackdropDataAttributes = void 0;
7
+ var _popupStateMapping = require("../../utils/popupStateMapping");
8
+ let DrawerBackdropDataAttributes = exports.DrawerBackdropDataAttributes = function (DrawerBackdropDataAttributes) {
9
+ /**
10
+ * Present when the drawer is open.
11
+ */
12
+ DrawerBackdropDataAttributes[DrawerBackdropDataAttributes["open"] = _popupStateMapping.CommonPopupDataAttributes.open] = "open";
13
+ /**
14
+ * Present when the drawer is closed.
15
+ */
16
+ DrawerBackdropDataAttributes[DrawerBackdropDataAttributes["closed"] = _popupStateMapping.CommonPopupDataAttributes.closed] = "closed";
17
+ /**
18
+ * Present when the drawer is animating in.
19
+ */
20
+ DrawerBackdropDataAttributes[DrawerBackdropDataAttributes["startingStyle"] = _popupStateMapping.CommonPopupDataAttributes.startingStyle] = "startingStyle";
21
+ /**
22
+ * Present when the drawer is animating out.
23
+ */
24
+ DrawerBackdropDataAttributes[DrawerBackdropDataAttributes["endingStyle"] = _popupStateMapping.CommonPopupDataAttributes.endingStyle] = "endingStyle";
25
+ return DrawerBackdropDataAttributes;
26
+ }({});
@@ -7,7 +7,7 @@ import type { BaseUIComponentProps, NativeButtonProps } from "../../utils/types.
7
7
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
8
8
  */
9
9
  export declare const DrawerClose: DrawerClose;
10
- export interface DrawerCloseProps extends NativeButtonProps, BaseUIComponentProps<'button', DrawerClose.State> {}
10
+ export interface DrawerCloseProps extends NativeButtonProps, BaseUIComponentProps<'button', DrawerCloseState> {}
11
11
  export interface DrawerCloseState {
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 Drawer](https://base-ui.com/react/components/drawer)
8
8
  */
9
9
  export declare const DrawerContent: React.ForwardRefExoticComponent<Omit<DrawerContentProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
- export interface DrawerContentProps extends BaseUIComponentProps<'div', DrawerContent.State> {}
10
+ export interface DrawerContentProps extends BaseUIComponentProps<'div', DrawerContentState> {}
11
11
  export interface DrawerContentState {}
12
12
  export declare namespace DrawerContent {
13
13
  type Props = DrawerContentProps;
@@ -9,6 +9,7 @@ exports.DrawerContent = void 0;
9
9
  var React = _interopRequireWildcard(require("react"));
10
10
  var _DialogRootContext = require("../../dialog/root/DialogRootContext");
11
11
  var _useRenderElement = require("../../utils/useRenderElement");
12
+ var _DrawerContentDataAttributes = require("./DrawerContentDataAttributes");
12
13
  /**
13
14
  * A container for the drawer contents.
14
15
  * Renders a `<div>` element.
@@ -25,7 +26,7 @@ const DrawerContent = exports.DrawerContent = /*#__PURE__*/React.forwardRef(func
25
26
  return (0, _useRenderElement.useRenderElement)('div', componentProps, {
26
27
  ref: forwardedRef,
27
28
  props: [{
28
- ['data-swipe-ignore']: ''
29
+ [_DrawerContentDataAttributes.DRAWER_CONTENT_ATTRIBUTE]: ''
29
30
  }, elementProps]
30
31
  });
31
32
  });
@@ -0,0 +1 @@
1
+ export declare const DRAWER_CONTENT_ATTRIBUTE = "data-drawer-content";
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DRAWER_CONTENT_ATTRIBUTE = void 0;
7
+ const DRAWER_CONTENT_ATTRIBUTE = exports.DRAWER_CONTENT_ATTRIBUTE = 'data-drawer-content';
@@ -7,7 +7,7 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
7
7
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
8
8
  */
9
9
  export declare const DrawerDescription: DrawerDescription;
10
- export interface DrawerDescriptionProps extends BaseUIComponentProps<'p', DrawerDescription.State> {}
10
+ export interface DrawerDescriptionProps extends BaseUIComponentProps<'p', DrawerDescriptionState> {}
11
11
  export interface DrawerDescriptionState {}
12
12
  export interface DrawerDescription {
13
13
  (componentProps: DrawerDescriptionProps): React.JSX.Element;
@@ -2,7 +2,8 @@ import * as React from 'react';
2
2
  import { BaseUIComponentProps } from "../../utils/types.js";
3
3
  /**
4
4
  * A wrapper element intended to contain your app's main UI.
5
- * Applies `data-active` when any drawer within the nearest <Drawer.Provider> is open.
5
+ * Applies `data-active` when any drawer within the nearest `<Drawer.Provider>` is open.
6
+ * Renders a `<div>` element.
6
7
  *
7
8
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
8
9
  */
@@ -13,7 +14,7 @@ export interface DrawerIndentState {
13
14
  */
14
15
  active: boolean;
15
16
  }
16
- export interface DrawerIndentProps extends BaseUIComponentProps<'div', DrawerIndent.State> {}
17
+ export interface DrawerIndentProps extends BaseUIComponentProps<'div', DrawerIndentState> {}
17
18
  export declare namespace DrawerIndent {
18
19
  type State = DrawerIndentState;
19
20
  type Props = DrawerIndentProps;
@@ -27,7 +27,8 @@ const stateAttributesMapping = {
27
27
 
28
28
  /**
29
29
  * A wrapper element intended to contain your app's main UI.
30
- * Applies `data-active` when any drawer within the nearest <Drawer.Provider> is open.
30
+ * Applies `data-active` when any drawer within the nearest `<Drawer.Provider>` is open.
31
+ * Renders a `<div>` element.
31
32
  *
32
33
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
33
34
  */
@@ -1,8 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { BaseUIComponentProps } from "../../utils/types.js";
3
3
  /**
4
- * An element placed before <Drawer.Indent> to render a background layer
5
- * that can be styled based on whether any drawer is open.
4
+ * An element placed before `<Drawer.Indent>` to render a background layer that can be styled based on whether any drawer is open.
5
+ * Renders a `<div>` element.
6
+ *
7
+ * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
6
8
  */
7
9
  export declare const DrawerIndentBackground: React.ForwardRefExoticComponent<Omit<DrawerIndentBackgroundProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
10
  export interface DrawerIndentBackgroundState {
@@ -11,7 +13,7 @@ export interface DrawerIndentBackgroundState {
11
13
  */
12
14
  active: boolean;
13
15
  }
14
- export interface DrawerIndentBackgroundProps extends BaseUIComponentProps<'div', DrawerIndentBackground.State> {}
16
+ export interface DrawerIndentBackgroundProps extends BaseUIComponentProps<'div', DrawerIndentBackgroundState> {}
15
17
  export declare namespace DrawerIndentBackground {
16
18
  type State = DrawerIndentBackgroundState;
17
19
  type Props = DrawerIndentBackgroundProps;
@@ -23,8 +23,10 @@ const stateAttributesMapping = {
23
23
  };
24
24
 
25
25
  /**
26
- * An element placed before <Drawer.Indent> to render a background layer
27
- * that can be styled based on whether any drawer is open.
26
+ * An element placed before `<Drawer.Indent>` to render a background layer that can be styled based on whether any drawer is open.
27
+ * Renders a `<div>` element.
28
+ *
29
+ * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
28
30
  */
29
31
  const DrawerIndentBackground = exports.DrawerIndentBackground = /*#__PURE__*/React.forwardRef(function DrawerIndentBackground(componentProps, forwardedRef) {
30
32
  const {
package/drawer/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export * as DrawerPreview from "./index.parts.js";
1
+ export * as Drawer from "./index.parts.js";
2
2
  export type * from "./root/DrawerRoot.js";
3
3
  export type * from "./provider/DrawerProvider.js";
4
4
  export type * from "./indent/DrawerIndent.js";
@@ -6,6 +6,7 @@ export type * from "./indent-background/DrawerIndentBackground.js";
6
6
  export type * from "./trigger/DrawerTrigger.js";
7
7
  export type * from "./portal/DrawerPortal.js";
8
8
  export type * from "./popup/DrawerPopup.js";
9
+ export type * from "./swipe-area/DrawerSwipeArea.js";
9
10
  export type * from "./content/DrawerContent.js";
10
11
  export type * from "./backdrop/DrawerBackdrop.js";
11
12
  export type * from "./viewport/DrawerViewport.js";
package/drawer/index.js CHANGED
@@ -4,6 +4,6 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.DrawerPreview = void 0;
8
- var _DrawerPreview = _interopRequireWildcard(require("./index.parts"));
9
- exports.DrawerPreview = _DrawerPreview;
7
+ exports.Drawer = void 0;
8
+ var _Drawer = _interopRequireWildcard(require("./index.parts"));
9
+ exports.Drawer = _Drawer;
@@ -8,6 +8,7 @@ export { DrawerPopup as Popup } from "./popup/DrawerPopup.js";
8
8
  export { DrawerPortal as Portal } from "./portal/DrawerPortal.js";
9
9
  export { DrawerProvider as Provider } from "./provider/DrawerProvider.js";
10
10
  export { DrawerRoot as Root } from "./root/DrawerRoot.js";
11
+ export { DrawerSwipeArea as SwipeArea } from "./swipe-area/DrawerSwipeArea.js";
11
12
  export { DrawerTitle as Title } from "./title/DrawerTitle.js";
12
13
  export { DrawerTrigger as Trigger } from "./trigger/DrawerTrigger.js";
13
14
  export { DrawerViewport as Viewport } from "./viewport/DrawerViewport.js";
@@ -69,6 +69,12 @@ Object.defineProperty(exports, "Root", {
69
69
  return _DrawerRoot.DrawerRoot;
70
70
  }
71
71
  });
72
+ Object.defineProperty(exports, "SwipeArea", {
73
+ enumerable: true,
74
+ get: function () {
75
+ return _DrawerSwipeArea.DrawerSwipeArea;
76
+ }
77
+ });
72
78
  Object.defineProperty(exports, "Title", {
73
79
  enumerable: true,
74
80
  get: function () {
@@ -103,6 +109,7 @@ var _DrawerPopup = require("./popup/DrawerPopup");
103
109
  var _DrawerPortal = require("./portal/DrawerPortal");
104
110
  var _DrawerProvider = require("./provider/DrawerProvider");
105
111
  var _DrawerRoot = require("./root/DrawerRoot");
112
+ var _DrawerSwipeArea = require("./swipe-area/DrawerSwipeArea");
106
113
  var _DrawerTitle = require("./title/DrawerTitle");
107
114
  var _DrawerTrigger = require("./trigger/DrawerTrigger");
108
115
  var _DrawerViewport = require("./viewport/DrawerViewport");
@@ -10,7 +10,7 @@ import { type DrawerSwipeDirection } from "../root/DrawerRootContext.js";
10
10
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
11
11
  */
12
12
  export declare const DrawerPopup: React.ForwardRefExoticComponent<Omit<DrawerPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
- export interface DrawerPopupProps extends BaseUIComponentProps<'div', DrawerPopup.State> {
13
+ export interface DrawerPopupProps extends BaseUIComponentProps<'div', DrawerPopupState> {
14
14
  /**
15
15
  * Determines the element to focus when the drawer is opened.
16
16
  *
@@ -20,7 +20,7 @@ export interface DrawerPopupProps extends BaseUIComponentProps<'div', DrawerPopu
20
20
  * - `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).
21
21
  * Return an element to focus, `true` to use the default behavior, or `false`/`undefined` to do nothing.
22
22
  */
23
- initialFocus?: (boolean | React.RefObject<HTMLElement | null> | ((openType: InteractionType) => boolean | HTMLElement | null | void)) | undefined;
23
+ initialFocus?: boolean | React.RefObject<HTMLElement | null> | ((openType: InteractionType) => boolean | HTMLElement | null | void) | undefined;
24
24
  /**
25
25
  * Determines the element to focus when the drawer is closed.
26
26
  *
@@ -30,13 +30,16 @@ export interface DrawerPopupProps extends BaseUIComponentProps<'div', DrawerPopu
30
30
  * - `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).
31
31
  * Return an element to focus, `true` to use the default behavior, or `false`/`undefined` to do nothing.
32
32
  */
33
- finalFocus?: (boolean | React.RefObject<HTMLElement | null> | ((closeType: InteractionType) => boolean | HTMLElement | null | void)) | undefined;
33
+ finalFocus?: boolean | React.RefObject<HTMLElement | null> | ((closeType: InteractionType) => boolean | HTMLElement | null | void) | undefined;
34
34
  }
35
35
  export interface DrawerPopupState {
36
36
  /**
37
37
  * Whether the drawer is currently open.
38
38
  */
39
39
  open: boolean;
40
+ /**
41
+ * The transition status of the component.
42
+ */
40
43
  transitionStatus: TransitionStatus;
41
44
  /**
42
45
  * Whether the active snap point is the full-height expanded state.
@@ -25,6 +25,63 @@ var _useDrawerSnapPoints = require("../root/useDrawerSnapPoints");
25
25
  var _DrawerViewportContext = require("../viewport/DrawerViewportContext");
26
26
  var _constants = require("../../utils/constants");
27
27
  var _jsxRuntime = require("react/jsx-runtime");
28
+ // Module-level flag to ensure we only register the CSS properties once,
29
+ // regardless of how many Drawer components are mounted.
30
+ let drawerSwipeVarsRegistered = false;
31
+
32
+ /**
33
+ * Removes inheritance of high-frequency drawer swipe CSS variables, which
34
+ * reduces style recalculation cost in complex drawers with deep subtrees.
35
+ * Child elements that need these values can still opt-in by using `inherit`.
36
+ * See https://motion.dev/blog/web-animation-performance-tier-list
37
+ * under the "Improving CSS variable performance" section.
38
+ */
39
+ function removeCSSVariableInheritance() {
40
+ if (drawerSwipeVarsRegistered) {
41
+ return;
42
+ }
43
+
44
+ // Intentionally keep inheritance disabled on WebKit as well. Safari doesn't support
45
+ // opting descendants back in via `--var: inherit` for custom properties registered
46
+ // with `inherits: false`, but Drawer does not rely on descendant access to these vars
47
+ // (unlike ScrollArea), so we keep the performance optimization enabled.
48
+ if (typeof CSS !== 'undefined' && 'registerProperty' in CSS) {
49
+ [_DrawerPopupCssVars.DrawerPopupCssVars.swipeMovementX, _DrawerPopupCssVars.DrawerPopupCssVars.swipeMovementY, _DrawerPopupCssVars.DrawerPopupCssVars.snapPointOffset].forEach(name => {
50
+ try {
51
+ CSS.registerProperty({
52
+ name,
53
+ syntax: '<length>',
54
+ inherits: false,
55
+ initialValue: '0px'
56
+ });
57
+ } catch {
58
+ /* ignore already-registered */
59
+ }
60
+ });
61
+ [{
62
+ name: _DrawerBackdropCssVars.DrawerBackdropCssVars.swipeProgress,
63
+ initialValue: '0'
64
+ }, {
65
+ name: _DrawerPopupCssVars.DrawerPopupCssVars.swipeStrength,
66
+ initialValue: '1'
67
+ }].forEach(({
68
+ name,
69
+ initialValue
70
+ }) => {
71
+ try {
72
+ CSS.registerProperty({
73
+ name,
74
+ syntax: '<number>',
75
+ inherits: false,
76
+ initialValue
77
+ });
78
+ } catch {
79
+ /* ignore already-registered */
80
+ }
81
+ });
82
+ }
83
+ drawerSwipeVarsRegistered = true;
84
+ }
28
85
  const stateAttributesMapping = {
29
86
  ..._popupStateMapping.popupStateMapping,
30
87
  ..._stateAttributesMapping.transitionStatusMapping,
@@ -125,8 +182,7 @@ const DrawerPopup = exports.DrawerPopup = /*#__PURE__*/React.forwardRef(function
125
182
  onPopupHeightChange(oldHeight);
126
183
  return;
127
184
  }
128
- const scrollHeight = popupElement.scrollHeight;
129
- const nextHeight = scrollHeight > 0 ? Math.min(offsetHeight, scrollHeight) : offsetHeight;
185
+ const nextHeight = offsetHeight;
130
186
  if (nextHeight === popupHeightRef.current) {
131
187
  return;
132
188
  }
@@ -145,6 +201,7 @@ const DrawerPopup = exports.DrawerPopup = /*#__PURE__*/React.forwardRef(function
145
201
  if (!popupElement) {
146
202
  return undefined;
147
203
  }
204
+ removeCSSVariableInheritance();
148
205
  measureHeight();
149
206
  if (typeof ResizeObserver !== 'function') {
150
207
  return undefined;
@@ -1,4 +1,20 @@
1
1
  export declare enum DrawerPopupDataAttributes {
2
+ /**
3
+ * Present when the drawer is open.
4
+ */
5
+ open = "data-open",
6
+ /**
7
+ * Present when the drawer is closed.
8
+ */
9
+ closed = "data-closed",
10
+ /**
11
+ * Present when the drawer is animating in.
12
+ */
13
+ startingStyle = "data-starting-style",
14
+ /**
15
+ * Present when the drawer is animating out.
16
+ */
17
+ endingStyle = "data-ending-style",
2
18
  /**
3
19
  * Present when the drawer is at the expanded (full-height) snap point.
4
20
  */
@@ -4,7 +4,24 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.DrawerPopupDataAttributes = void 0;
7
- let DrawerPopupDataAttributes = exports.DrawerPopupDataAttributes = /*#__PURE__*/function (DrawerPopupDataAttributes) {
7
+ var _popupStateMapping = require("../../utils/popupStateMapping");
8
+ let DrawerPopupDataAttributes = exports.DrawerPopupDataAttributes = function (DrawerPopupDataAttributes) {
9
+ /**
10
+ * Present when the drawer is open.
11
+ */
12
+ DrawerPopupDataAttributes[DrawerPopupDataAttributes["open"] = _popupStateMapping.CommonPopupDataAttributes.open] = "open";
13
+ /**
14
+ * Present when the drawer is closed.
15
+ */
16
+ DrawerPopupDataAttributes[DrawerPopupDataAttributes["closed"] = _popupStateMapping.CommonPopupDataAttributes.closed] = "closed";
17
+ /**
18
+ * Present when the drawer is animating in.
19
+ */
20
+ DrawerPopupDataAttributes[DrawerPopupDataAttributes["startingStyle"] = _popupStateMapping.CommonPopupDataAttributes.startingStyle] = "startingStyle";
21
+ /**
22
+ * Present when the drawer is animating out.
23
+ */
24
+ DrawerPopupDataAttributes[DrawerPopupDataAttributes["endingStyle"] = _popupStateMapping.CommonPopupDataAttributes.endingStyle] = "endingStyle";
8
25
  /**
9
26
  * Present when the drawer is at the expanded (full-height) snap point.
10
27
  */
@@ -9,7 +9,7 @@ import type { FloatingPortal } from "../../floating-ui-react/index.js";
9
9
  */
10
10
  export declare const DrawerPortal: DrawerPortal;
11
11
  export interface DrawerPortalState {}
12
- export interface DrawerPortalProps extends FloatingPortal.Props<DrawerPortal.State> {
12
+ export interface DrawerPortalProps extends FloatingPortal.Props<DrawerPortalState> {
13
13
  /**
14
14
  * Whether to keep the portal mounted in the DOM while the popup is hidden.
15
15
  * @default false
@@ -18,7 +18,7 @@ export interface DrawerPortalProps extends FloatingPortal.Props<DrawerPortal.Sta
18
18
  /**
19
19
  * A parent element to render the portal element into.
20
20
  */
21
- container?: FloatingPortal.Props<DrawerPortal.State>['container'] | undefined;
21
+ container?: FloatingPortal.Props<DrawerPortalState>['container'] | undefined;
22
22
  }
23
23
  export interface DrawerPortal {
24
24
  (componentProps: DrawerPortalProps & React.RefAttributes<HTMLDivElement>): React.JSX.Element | null;
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  /**
3
- * Provides a shared context for coordinating global Drawer UI,
4
- * such as indent/background effects based on whether any Drawer is open.
3
+ * Provides a shared context for coordinating global Drawer UI, such as indent/background effects based on whether any Drawer is open.
4
+ * Doesn't render its own HTML element.
5
5
  *
6
6
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
7
7
  */
@@ -11,8 +11,8 @@ var _useStableCallback = require("@base-ui/utils/useStableCallback");
11
11
  var _DrawerProviderContext = require("./DrawerProviderContext");
12
12
  var _jsxRuntime = require("react/jsx-runtime");
13
13
  /**
14
- * Provides a shared context for coordinating global Drawer UI,
15
- * such as indent/background effects based on whether any Drawer is open.
14
+ * Provides a shared context for coordinating global Drawer UI, such as indent/background effects based on whether any Drawer is open.
15
+ * Doesn't render its own HTML element.
16
16
  *
17
17
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
18
18
  */
@@ -11,6 +11,7 @@ import type { PayloadChildRenderFunction } from "../../utils/popups/index.js";
11
11
  * Documentation: [Base UI Drawer](https://base-ui.com/react/components/drawer)
12
12
  */
13
13
  export declare function DrawerRoot<Payload = unknown>(props: DrawerRoot.Props<Payload>): import("react/jsx-runtime").JSX.Element;
14
+ export interface DrawerRootState {}
14
15
  export interface DrawerRootProps<Payload = unknown> {
15
16
  /**
16
17
  * Whether the drawer is currently open.
@@ -30,7 +31,7 @@ export interface DrawerRootProps<Payload = unknown> {
30
31
  * - `'trap-focus'`: focus is trapped inside the drawer, but document page scroll is not locked and pointer interactions outside of it remain enabled.
31
32
  * @default true
32
33
  */
33
- modal?: (boolean | 'trap-focus') | undefined;
34
+ modal?: boolean | 'trap-focus' | undefined;
34
35
  /**
35
36
  * Event handler called when the drawer is opened or closed.
36
37
  */
@@ -63,12 +64,12 @@ export interface DrawerRootProps<Payload = unknown> {
63
64
  * This is useful in conjunction with the `open` prop to create a controlled drawer.
64
65
  * There's no need to specify this prop when the drawer is uncontrolled (i.e. when the `open` prop is not set).
65
66
  */
66
- triggerId?: (string | null) | undefined;
67
+ triggerId?: string | null | undefined;
67
68
  /**
68
69
  * ID of the trigger that the drawer is associated with.
69
70
  * This is useful in conjunction with the `defaultOpen` prop to create an initially open drawer.
70
71
  */
71
- defaultTriggerId?: (string | null) | undefined;
72
+ defaultTriggerId?: string | null | undefined;
72
73
  /**
73
74
  * The content of the drawer.
74
75
  */
@@ -114,6 +115,7 @@ export type DrawerRootChangeEventDetails = BaseUIChangeEventDetails<DrawerRoot.C
114
115
  export type DrawerRootSnapPointChangeEventReason = DrawerRootChangeEventReason;
115
116
  export type DrawerRootSnapPointChangeEventDetails = BaseUIChangeEventDetails<DrawerRootSnapPointChangeEventReason>;
116
117
  export declare namespace DrawerRoot {
118
+ type State = DrawerRootState;
117
119
  type Props<Payload = unknown> = DrawerRootProps<Payload>;
118
120
  type Actions = DrawerRootActions;
119
121
  type ChangeEventReason = DrawerRootChangeEventReason;