v1.0.0-beta.3
Sep 3, 2025
View as MarkdownGeneral changes
- Breaking change: Base UI event details.
Custom event callbacks provide BaseUIChangeEventDetails object as their second parameter.
This object contains the source event, reason and methods to customize the behavior (where applicable).
For example,
onOpenChange(open, event, reason)becomesonOpenChange(open, eventDetails), whereeventDetailscontainseventandreasonproperties. (#2382)
Alert Dialog
- Breaking change: Support
initialFocusandfinalFocusfunctions. TheinitialFocusandfinalFocusprops can be functions that return DOM elements to focus. This is a new feature forfinalFocusand a breaking change forinitialFocusas the element must be returned directly (not as a ref). (#2536)
Autocomplete
- New Autocomplete component (#2105)
Checkbox
- Fix missing validity attributes when wrapped in
<Field>(#2572)
Combobox
- New Combobox component (#2105)
Context Menu
- Fix default offsets when
align="center"orsidediffers (#2601)
Dialog
- Breaking change: Support
initialFocusandfinalFocusfunctions. TheinitialFocusandfinalFocusprops can be functions that return DOM elements to focus. This is a new feature forfinalFocusand a breaking change forinitialFocusas the element must be returned directly (not as a ref). (#2536) - Restore focus to popup when focused element is removed (#2479)
Field
- Prevent defaultValue reset on focus for uncontrolled inputs (#2543)
- Allow
onValueChangeto fire whendefaultValue/valueare not set (#2600)
Input
- Allow
onValueChangeto fire whendefaultValue/valueare not set (#2600)
Menu
- Breaking change: Fix
closeParentOnEscdefault value. The default value ofcloseParentOnEscin Menu.SubmenuRoot is now false. When the Esc key is pressed in a Submenu, the Submenu closes, and the focus correctly moves to the SubmenuTrigger. (#2493) - Breaking change: Support
initialFocusandfinalFocusfunctions. TheinitialFocusandfinalFocusprops can be functions that return DOM elements to focus. This is a new feature forfinalFocusand a breaking change forinitialFocusas the element must be returned directly (not as a ref). (#2536) - Fix menu not opening when inside context menu trigger (#2506)
- Fix
transform-originvariable calculation when PositionersideOffsetis a function (#2511) - Fix submenu events (#2483)
- Fix
limitShiftoffset based on arrow size (#2571)
Navigation Menu
- Breaking change: Semantic element structure and
activepage prop.<NavigationMenu.List>renders<ul>and<NavigationMenu.Item>renders<li>by default. (#2526) - Unshare
AbortControllerinstance (#2441) - Close on link click by default (#2535)
Number Field
- Fix duplicate
onValueChangecalls (#2591)
Popover
- Breaking change: Support
initialFocusandfinalFocusfunctions. TheinitialFocusandfinalFocusprops can be functions that return DOM elements to focus. This is a new feature forfinalFocusand a breaking change forinitialFocusas the element must be returned directly (not as a ref). (#2536) - Fix outside click after right clicking in popup (#2508)
- Fix unexpected close when nested inside two popovers (#2481)
- Fix
transform-originvariable calculation when PositionersideOffsetis a function (#2511) - Restore focus to popup when focused element is removed (#2479)
- Fix
limitShiftoffset based on arrow size (#2571)
Preview Card
- Fix
transform-originvariable calculation when PositionersideOffsetis a function (#2511) - Fix
limitShiftoffset based on arrow size (#2571)
Radio Group
- Return null in form data when no option selected (#2473)
Scroll Area
- Prevent pointer events from sibling portals triggering hover (#2542)
Select
- Fix stale
itemsprop (#2397) - Fix unexpected close when nested inside two popovers (#2481)
- Fix
onValueChangetype inference (#2372) - Fix
transform-originvariable calculation when PositionersideOffsetis a function (#2511) - Reset state when selected item is removed (#2577)
- Fix
data-highlightedand DOM focus item desync (#2569) - Fix item click with
defaultOpenprop (#2570) - Fix scroll arrows not propagating scroll fully to start/end of list (#2523)
- Fix
limitShiftoffset based on arrow size (#2571)
Slider
- Breaking change: Instead of the thumb div, the
input type="range"element receives focus. Focus styles that were targeting the thumb, should be updated. For example.Thumb:focus-visibleshould be replaced with.Thumb:has(:focus-visible). ThetabIndexprop is moved from Root to Thumb where it gets forwarded to the input. The thumb’srenderprop no longer contains the thirdinputPropsargument; the input element is instead merged with children. (#2578) - Reduce bundle size (#2551)
- Fix thumb
:focus-visiblewith mixed keyboard and pointer modality (#2584) - Add
indexprop to<Slider.Thumb>(#2593)
Tabs
Tooltip
- Fix
transform-originvariable calculation when PositionersideOffsetis a function (#2511) - Fix
limitShiftoffset based on arrow size (#2571)