Releases
Changelogs for each Base UI release.
View as Markdownv1.0.0-beta.3
Sep 3, 2025
General changes
- Breaking change: Base UI event details.
Custom event callbacks provide BaseUIEventDetails 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)
, whereeventDetails
containsevent
andreason
properties. (#2382)
Alert Dialog
- Breaking change: Support
initialFocus
andfinalFocus
functions. TheinitialFocus
andfinalFocus
props can be functions that return DOM elements to focus. This is a new feature forfinalFocus
and a breaking change forinitialFocus
as 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"
orside
differs (#2601)
Dialog
- Breaking change: Support
initialFocus
andfinalFocus
functions. TheinitialFocus
andfinalFocus
props can be functions that return DOM elements to focus. This is a new feature forfinalFocus
and a breaking change forinitialFocus
as 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
onValueChange
to fire whendefaultValue
/value
are not set (#2600)
Input
- Allow
onValueChange
to fire whendefaultValue
/value
are not set (#2600)
Menu
- Breaking change: Fix
closeParentOnEsc
default value. The default value ofcloseParentOnEsc
in 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
initialFocus
andfinalFocus
functions. TheinitialFocus
andfinalFocus
props can be functions that return DOM elements to focus. This is a new feature forfinalFocus
and a breaking change forinitialFocus
as the element must be returned directly (not as a ref). (#2536) - Fix menu not opening when inside context menu trigger (#2506)
- Fix
transform-origin
variable calculation when PositionersideOffset
is a function (#2511) - Fix submenu events (#2483)
- Fix
limitShift
offset based on arrow size (#2571)
Navigation Menu
- Breaking change: Semantic element structure and
active
page prop.NavigationMenu.List
renders<ul>
andNavigationMenu.Item
renders<li>
by default. (#2526) - Unshare
AbortController
instance (#2441) - Close on link click by default (#2535)
Number Field
- Fix duplicate
onValueChange
calls (#2591)
Popover
- Breaking change: Support
initialFocus
andfinalFocus
functions. TheinitialFocus
andfinalFocus
props can be functions that return DOM elements to focus. This is a new feature forfinalFocus
and a breaking change forinitialFocus
as 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-origin
variable calculation when PositionersideOffset
is a function (#2511) - Restore focus to popup when focused element is removed (#2479)
- Fix
limitShift
offset based on arrow size (#2571)
Preview Card
- Fix
transform-origin
variable calculation when PositionersideOffset
is a function (#2511) - Fix
limitShift
offset 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
items
prop (#2397) - Fix unexpected close when nested inside two popovers (#2481)
- Fix
onValueChange
type inference (#2372) - Fix
transform-origin
variable calculation when PositionersideOffset
is a function (#2511) - Reset state when selected item is removed (#2577)
- Fix
data-highlighted
and DOM focus item desync (#2569) - Fix item click with
defaultOpen
prop (#2570) - Fix scroll arrows not propagating scroll fully to start/end of list (#2523)
- Fix
limitShift
offset 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-visible
should be replaced with.Thumb:has(:focus-visible)
. ThetabIndex
prop is moved from Root to Thumb where it gets forwarded to the input. The thumb’srender
prop no longer contains the thirdinputProps
argument; the input element is instead merged with children. (#2578) - Reduce bundle size (#2551)
- Fix thumb
:focus-visible
with mixed keyboard and pointer modality (#2584) - Add
index
prop toSlider.Thumb
(#2593)
Tabs
Tooltip
- Fix
transform-origin
variable calculation when PositionersideOffset
is a function (#2511) - Fix
limitShift
offset based on arrow size (#2571)
useRender
v1.0.0-beta.2
Jul 30, 2025
General changes
- Fix navigator checks and ensure safe platform retrieval (#2273)
- Prevent
Space
key default on keydown (#2295) - Check for
performance
existence on server (#2316)
Accordion
- Destructure
render
prop (#2280) - Fix keyboard interactions with elements in the panel (#2321)
- Fix open transitions in Safari/Firefox (#2327)
Alert Dialog
- Support
ShadowRoot
containers (#2236) - Add
forceRender
prop toBackdrop
part (#2037) - Improve outside press behavior with touch input (#2334)
Checkbox
- Fix focusing form controls with
inputRef
(#2252)
Collapsible
Dialog
- Support
ShadowRoot
containers (#2236) - Add
forceRender
prop toBackdrop
part (#2037) - Improve outside press behavior with touch input (#2334)
- Use
click
event for outside press dismissal (#2275)
Field
- Deregister fields from
Form
when unmounting (#2231)
Form
- Deregister fields from
Form
when unmounting (#2231)
Menu
- Support
ShadowRoot
containers (#2236) - Avoid double
useRenderElement
passes (#2256) - Improve outside press behavior with touch input (#2334)
- Close submenus when focus is lost by shift-tabbing (#2290)
Menubar
- Fix triggers role (#2317)
Meter
- Fix ARIA attributes and update docs (#2267)
Navigation Menu
- Breaking change: Support inlined nesting.
Ensure the popup’s
width
is set tovar(--popup-width)
unconditionally (without the media query) on the.Popup
class. (#2269) - Avoid double
useRenderElement
passes (#2256) - Add
useButton
integration toTrigger
(#2296) - Fix popup size transitions on iOS (#2387)
Number Field
Popover
- Support
ShadowRoot
containers (#2236) - Remove ancestor nodes from inside elements for outside press detection (#2339)
- Improve outside press behavior with touch input (#2334)
- Use
click
event for outside press dismissal (#2275)
Preview Card
- Support
ShadowRoot
containers (#2236)
Progress
- Fix ARIA attributes and update docs (#2267)
Radio Group
- Add aria-required attribute (#2227)
- Extend state with
FieldRoot.State
(#2251) - Fix focusing form controls with
inputRef
(#2252) - Avoid double
useRenderElement
passes (#2256)
Scroll Area
- Disable
user-select
on scrollbar and non-main button interactions (#2338)
Select
- Support
ShadowRoot
containers (#2236) - Add
value
andreadOnly
toSelect.Trigger
state (#2237) - Add
multiple
prop (#2173) - Allow typeahead while open for
multiple
mode (#2274) - Ensure positionerElement is available in document mouseup (#2276)
- Fix
alignItemWithTrigger
fallback scroll jump (#2241) - Support conditional
multiple
prop in types (#2369) - Fix multiple ARIA behavior on touch (#2333)
- Improve outside press behavior with touch input (#2334)
Slider
- Fix focusing form controls with
inputRef
(#2252)
Toast
- Fix
promise
method timeout option handling (#2294) - Make
Toast.Viewport
an announce container (#2246)
Toggle
- Avoid double
useRenderElement
passes (#2256)
Toggle Group
- Avoid double
useRenderElement
passes (#2256)
Toolbar
- Avoid double
useRenderElement
passes (#2256)
Tooltip
- Support
ShadowRoot
containers (#2236) - Memoize leftover object in tooltip (#2250)
- Fix error when combining
defaultOpen
anddisabled
(#2374)
v1.0.0-beta.1
Jul 1, 2025
General changes
- Make error messages consistent (#2049)
- Do not overwrite event handler when
undefined
is passed explicitly (#2151)
Accordion
- Allow content to resize naturally (#2043)
- Fix transition status mapping (#2169)
- Fix
aria-controls
reference (#2170) - Fix test warning about mixed animation types (#2180)
Checkbox
- Breaking change: Support implicit
Field.Label
. IfField.Label
encloses Switch/Checkbox/Radio, thehtmlFor
/id
attributes are no longer explicitly set to associate them. (#2036) - Refactor to
useRenderElement
(#2053) - Always set
id
on the<input>
element (#2115)
Checkbox Group
- Fix
onCheckedChange
not running when parent checkbox is present (#2155)
Collapsible
- Allow content to resize naturally (#2043)
- Fix
aria-controls
reference (#2170) - Fix test warning about mixed animation types (#2180)
Context Menu
- Breaking change: Add
SubmenuRoot
part. Nested menus should be defined withMenu.SubmenuRoot
instead ofMenu.Root
to to avoid ambiguity. (#2042) - Fix CheckboxItemIndicator export (#2009)
Dialog
- Fix popup prop merging (#2119)
Field
- Breaking change: Support implicit
Field.Label
. IfField.Label
encloses Switch/Checkbox/Radio, thehtmlFor
/id
attributes are no longer explicitly set to associate them. (#2036) - Enable custom validation based on other form values (#1941)
- Fix
onValueChange
value
type (#2112) - Fix
Field.Label
focusing trigger (#2118) - Fix slider field label (#2154)
Fieldset
- Refactor to
useRenderElement
(#2053)
Form
- Enable custom validation based on other form values (#1941)
Input
- Fix
onValueChange
value
type (#2112)
Menu
- Breaking change: Add
SubmenuRoot
part. Nested menus should be defined withMenu.SubmenuRoot
instead ofMenu.Root
to to avoid ambiguity. (#2042) - Unset
role
from Trigger (#2047) - Emit
close
event oncancel-open
(#2067) - Fix close toggle when rendering non-native button (#2071)
- Add
highlighted
to itemState
(#2079) - Remove highlighted effect (#2162)
- Cut out internal backdrop to allow interacting with triggers (#2141)
- Fix active index sync on hover (#2163)
- Fix focus returning to root when submenus have exit transitions (#2171)
Menubar
- Fix
closeOnClick: false
not working in nested menus (#2094)
Navigation Menu
- Breaking change: Handle layout resize while open (#2070).
For large scrollable content, add the
max-height
style toContent
in addition toPopup
. - Fix positioner height when opening menu using the keyboard arrows (#2060)
Number Field
- Ensure
onValueChange
is called with already-formatted parsed value (#1905) - Fix revalidation on change (#2174)
Popover
- Fix close toggle when rendering non-native button (#2071)
- Cut out internal backdrop to allow interacting with triggers (#2141)
Radio Group
- Breaking change: Support implicit
Field.Label
. IfField.Label
encloses Radio, thehtmlFor
/id
attributes are no longer explicitly set to associate them. (#2036) - Refactor to
useRenderElement
(#2053)
Scroll Area
- Ignore
data-scrolling
during programmatic scroll (#1908)
Select
- Breaking change: Print raw value in
Select.Value
.<Select.Value>
now prints the raw value by default unless anitems
prop is specified onSelect.Root
. See https://base-ui.com/react/components/select#formatting-the-value for more information. (#2087) - Performance: avoid re-renders (#1961)
- Fix close toggle when rendering non-native button (#2071)
- Fix
Field.Label
focusing trigger (#2118) - Fix programmatic value changes and autofill handling (#2084)
- Add
highlighted
to itemState
(#2079) - Cut out internal backdrop to allow interacting with triggers (#2141)
- Pass
value
as state (#2153) - Extend
FieldRoot.State
type (#2192)
Slider
Switch
- Breaking change: Support implicit
Field.Label
. IfField.Label
encloses Switch, thehtmlFor
/id
attributes are no longer explicitly set to associate them. (#2036)
Tabs
- Fix indicator positioning when TabsList overflows (#2093)
- Fix focus going out of sync when selected value is changed externally (#2107)
- Remove highlighted state (#2164)
Toolbar
- Set
disabled
attr on toolbar button whenfocusableWhenDisabled={false}
(#2176)
useRender
- Make useRender RSC-friendly (#2134)
v1.0.0-beta.0
May 29, 2025
General changes
- Remove proptypes (#1760)
- Unify component export patterns (#1478)
- Default
tabIndex
to0
on<button>
parts (#1939)
Accordion
- Stop event propagation to allow composite components to be used within popups (#1871)
Alert Dialog
- Breaking change: Refine
OpenChangeReason
.hover
is nowtrigger-hover
;click
is nowtrigger-press
;focus
is nowtrigger-focus
. (#1782) - Use basic scroll lock on iOS (#1890)
Checkbox
- Set
aria-required
, useuseButton
(#1777)
Checkbox Group
- Breaking change: Enable submitting checkbox group value as one field.
For parent checkboxes, use
value
instead ofname
on eachCheckbox.Root
part to link as the values. (#1948) - Fix
validate
fn incorrectly running twice (#1959)
Context Menu
- New
ContextMenu
component (#1665)
Dialog
- Breaking change: Refine
OpenChangeReason
.hover
is nowtrigger-hover
;click
is nowtrigger-press
;focus
is nowtrigger-focus
. (#1782) - Use basic scroll lock on iOS (#1890)
Field
- Breaking change: Consolidate
Field.Error
forceShow
intomatch
prop. Usematch={true}
(or implicit boolean) instead offorceShow
. (#1919) - Improve
Label
logic that prevents text selection on double click (#1784) - Fix validation inconsistency (#1779)
- Fix integration of Base UI components (#1755)
- Set
valueMissing
to false if only error and not dirtied (#1810) validate
with latest value on blur (#1850)- Revalidate only
required
on change (#1840) - Run validate function after native validations (#1926)
- Fix
validate
fn incorrectly running twice (#1959) - Integrate range sliders with Form and Field (#1929)
Form
- Fix integration of Base UI components (#1755)
- Select inputs on focus (#1858)
- Exclude number formatting from form value (#1957)
- Integrate range sliders with Form and Field (#1929)
Input
Menu
- Breaking change: Refine
OpenChangeReason
.hover
is nowtrigger-hover
;click
is nowtrigger-press
;focus
is nowtrigger-focus
. (#1782) - Fix function dependency handling (#1787)
- Add missing
'use client'
toRadioGroup
part (#1851) - Ensure
null
items are removed from composite lists (#1847) - Avoid
:focus-visible
style appearing (#1846) - Better handle dynamic and non-string items (#1861)
- Add
collisionAvoidance
prop (#1849) - Add
finalFocus
andcloseDelay
props (#1918) - Use basic scroll lock on iOS (#1890)
Menubar
- New
Menubar
component (#1684)
Navigation Menu
- New
NavigationMenu
component (#1741)
Number Field
validate
with latest value on blur (#1850)- Move scrubbing logic to
ScrubArea
component (#1859) - Remove floating point errors when
snapOnStep
is disabled (#1857) - Stop event propagation to allow composite components to be used within popups (#1871)
- Exclude number formatting from form value (#1957)
Popover
- Breaking change: Refine
OpenChangeReason
.hover
is nowtrigger-hover
;click
is nowtrigger-press
;focus
is nowtrigger-focus
. (#1782) - Fix function dependency handling (#1787)
- Avoid prop getters when merging props (#1852)
- Add
collisionAvoidance
prop (#1849) - Fix nested
openOnHover
(#1938) - Use basic scroll lock on iOS (#1890)
Preview Card
- Breaking change: Refine
OpenChangeReason
.hover
is nowtrigger-hover
;click
is nowtrigger-press
;focus
is nowtrigger-focus
. (#1782) - Fix function dependency handling (#1787)
- Add
collisionAvoidance
prop (#1849)
Radio Group
- Fix composite focus of initially selected radio item (#1753)
- Add
inputRef
props (#1683) - Stop event propagation to allow composite components to be used within popups (#1871)
Select
- Breaking change: Move item anchoring prop to
Positioner
. Use<Select.Positioner alignItemWithTrigger={false}>
instead of<Select.Root alignItemToTrigger={false}>
(note theWith
instead ofTo
). (#1713) - Breaking change: Defer mounting until typeahead is needed.
The
placeholder
prop is now required. Previously, only SSR needed it to prevent a hydration flash, but client-side rendering now also requires it. (#1906) - Breaking change: Refine
OpenChangeReason
.hover
is nowtrigger-hover
;click
is nowtrigger-press
;focus
is nowtrigger-focus
. (#1782) - Fix function dependency handling (#1787)
- Add
inputRef
props (#1683) - Refactor to
useRenderElement
(#1797) - Ensure
null
items are removed from composite lists (#1847) - Fix
id
prop forwarding to hidden input (#1862) - Avoid
:focus-visible
style appearing (#1846) - Fix
transitionStatus
mapping onItemIndicator
(#1925) - Better handle dynamic and non-string items (#1861)
- Use
Select.ItemText
ref to grab default text content (#1943) - Add
collisionAvoidance
prop (#1849) - Use basic scroll lock on iOS (#1890)
Slider
- Breaking change: Drop
inputId
prop from Thumb. (#1914) - Position thumb based on value instead of pointer location when dragging (#1750)
- Use
useRenderElement
(#1772) - Add
inputRef
props (#1683) - Add
locale
prop (#1796) - Stop event propagation to allow composite components to be used within popups (#1871)
- set
data-dragging
on touchstart and pointerdown (#1874) - Integrate range sliders with Form and Field (#1929)
Toast
- Breaking change: Add
Portal
part. Place<Toast.Viewport>
inside of<Toast.Portal>
. (#1962) - Breaking change: Avoid removing limited toasts from the DOM.
The
[data-limited]
styles in the demos were updated to handle limited toasts remaining in the DOM. They should now be a standalone style as&[data-limited] { opacity: 0 }
. (#1953) - Fix swipe jump on iOS (#1785)
Toggle
- Stop event propagation to allow composite components to be used within popups (#1871)
Toolbar
- Stop event propagation to allow composite components to be used within popups (#1871)
Tooltip
- Breaking change: Refine
OpenChangeReason
.hover
is nowtrigger-hover
;click
is nowtrigger-press
;focus
is nowtrigger-focus
. (#1782) - Fix function dependency handling (#1787)
- Avoid prop getters when merging props (#1852)
- Remove
trackCursorAxis
type fromPositioner
(#1895) - Apply
pointer-events: none
toPositioner
when not hoverable (#1917) - Add
collisionAvoidance
prop (#1849)
useRender
- Breaking change: Performance/refactor:
useRender
. An object with arenderElement
property is no longer returned; instead, the hook returns the element directly (const element = useRender(...)
). Therefs
option was also renamed toref
. (#1934) - Skip most of useRenderElement logic when unnecessary (#1967)
v1.0.0-alpha.8
Apr 17, 2025
Accordion
AlertDialog
- Breaking change: Rename
data-has-nested-dialogs
todata-nested-dialog-open
(#1686) - Fix
onOpenChange
types forevent
/reason
passing (#1721) - Use consistent
inert
attr and map[data-popup-open]
back toopen
(#1650) - Fix text selection & right-clicks (#1702)
CheckboxGroup
- Parent checkbox/nested demos (#1610)
Collapsible
- Fix ForwardedRef type of CollapsiblePanel (#1595)
- Recalculate panel dimensions on layout resize (#1704)
- Rework animations and transitions (#1601)
Dialog
- Breaking change: Rename
data-has-nested-dialogs
todata-nested-dialog-open
(#1686) - Breaking change: Add new
trap-focus
value tomodal
prop. Dialogs withmodal=false
no longer trap focus. (#1571) - Fix
onOpenChange
types forevent
/reason
passing (#1721) - Use consistent
inert
attr and map[data-popup-open]
back toopen
(#1650) - Fix text selection & right-clicks (#1702)
- Allow document to slide input into view on iOS when keyboard opens (#1735)
Field
- Fix forwarding of
name
anddisabled
props (#1616)
Menu
- Add missing item data attributes docs (#1691)
- Fix
inert
prop compatibility in React <19 (#1618) - Fix stuck highlight on submenu trigger when submenu opens with keyboard (#1698)
- Fix
onOpenChange
types forevent
/reason
passing (#1721) - Use consistent
inert
attr and map[data-popup-open]
back toopen
(#1650) - Fix text selection & right-clicks (#1702)
Meter
- New Meter component (#1435)
NumberField
Popover
- Breaking change: Add new
trap-focus
value tomodal
prop (#1571) - Fix
inert
prop compatibility in React <19 (#1618) - Fix
onOpenChange
types forevent
/reason
passing (#1721) - Use consistent
inert
attr and map[data-popup-open]
back toopen
(#1650) - Fix text selection & right-clicks (#1702)
Progress
- Breaking change: Add
Progress.Label
andlocale
prop. ThegetAriaLabel
prop was removed asProgress.Label
should be used to provide an accessible name. (#1666)
Radio
- Fix value forwarding and null handling (#1697)
ScrollArea
- Breaking change: Add
Content
part. It is now required to include theScrollArea.Content
withinScrollArea.Viewport
part when the content is horizontally scrollable. (#1607) - Handle visibility change and nesting (#1598)
- Correct thumb sizing with scrollbar margins (#1606)
Select
- Breaking change: Improve item highlight performance.
The highlighted state is now removed. It’s not possible to customize the
data-highlighted
attribute anymore. (#1570) - Avoid double commit on value change (#1597)
- Reset
selectedIndex
when set tonull
(#1596) - Add missing item data attributes docs (#1691)
- Fix
onOpenChange
types forevent
/reason
passing (#1721) - Use consistent
inert
attr and map[data-popup-open]
back toopen
(#1650) - Fix text selection & right-clicks (#1702)
Slider
- Correct thumb positioning when control has padding (#1661)
- Prevent range slider thumbs from being dragged past each other (#1612)
- Fix incorrect CSS position on vertical slider indicator (#1599)
- Fix overlapping slider thumbs stuck at min or max (#1732)
Toast
- New Toast component (#1467)
Tooltip
- Avoid re-rendering unrelated consumers (#1677)
- Add
disabled
prop (#1682) - Fix
onOpenChange
types forevent
/reason
passing (#1721) - Use consistent
inert
attr and map[data-popup-open]
back toopen
(#1650) - Fix text selection & right-clicks (#1702)
v1.0.0-alpha.7
Mar 20, 2025
Accordion
- Fix
aria-labelledby
on accordion panel (#1544)
AlertDialog
- Fix selection on outside press on Firefox with modal prop (#1573)
- Fix non-interactive button disabled state (#1473)
actionsRef
prop (#1236)
Avatar
Collapsible
- Update props destructuring to fix Trigger disabled state (#1469)
Dialog
- Fix selection on outside press on Firefox with modal prop (#1573)
- Fix non-interactive button disabled state (#1473)
actionsRef
prop (#1236)
Field
- Fix
FieldControl
[data-filled] not reacting to external value changes (#1565)
Menu
- Ensure submenu triggers respond to clicks when
openOnHover=false
(#1583) - Ensure
stickIfOpen
is reset totrue
correctly (#1548) - Fix selection on outside press on Firefox with modal prop (#1573)
- Reset
hoverEnabled
state on close (#1461) - Fix prop merging issues (#1445)
- Set
pointer-events: none
style on backdrops when hoverable (#1351) actionsRef
prop (#1236)
NumberField
- Fix ScrubArea on Safari ([#1584])(https://github.com/mui/base-ui/pull/1584/))
- Fix
large/smallStep
getting stuck (#1578) - Fix parse of numbers with spaces as thousands separators (#1577)
- Prevent virtual cursor overlapping native one (#1491)
- Fix disabled state on increment/decrement buttons (#1462)
- Correct virtual cursor rendering (#1484)
- Add
locale
prop (#1488) - Improve virtual cursor perf (#1485)
Popover
- Ensure
stickIfOpen
is reset totrue
correctly (#1548) - Fix selection on outside press on Firefox with modal prop (#1573)
- Set
pointer-events: none
style on backdrops when hoverable (#1351) - Fix non-interactive button disabled state (#1473)
modal
prop (#1459)actionsRef
prop (#1236)
PreviewCard
RadioGroup
Select
- Fix selection on outside press on Firefox with modal prop (#1573)
actionsRef
prop (#1236)- Improve
ScrollArrow
behavior (#1564) - Ensure switching controlled value to
null
updatesSelect.Value
label (#1561) - Pass
value
as second argument to function childrenSelect.Value
(#1562) - Fix focus jump while hovering while navigating with keyboard (#1563)
- Fix disabled state changing (#1526)
Slider
- Fix thumb positioning when controlled value violates min/max/step (#1541)
- Warn when
min
is not less thanmax
(#1475) - Narrow the type of
value
in callbacks (#1241)
Tabs
Toolbar
- Add Toolbar components (#1349)
Tooltip
useRender
v1.0.0-alpha.6
Feb 6, 2025
AlertDialog
Avatar
- Add Avatar component (#1210)
Checkbox
- Avoid applying
hidden
attr whenkeepMounted=true
for indicators (#1329)
Dialog
- Remove
modal={open}
state (#1352) - Support multiple non-nested modal backdrops (#1327)
- Fix missing
id
s on Title and Description (#1326) onOpenChangeComplete
prop (#1305)- Fix jump with
scroll-behavior
style (#1343)
Field
Form
- Fix focusing of invalid field controls on errors prop change (#1364)
Menu
- Avoid applying
hidden
attr whenkeepMounted=true
for indicators (#1329) - Support submenus with
openOnHover
prop (#1338) - Fix iPad detection when applying scroll lock (#1342)
onOpenChangeComplete
prop (#1305)- Fix jump with
scroll-behavior
style (#1343) - Add
OffsetFunction
forsideOffset
andalignOffset
(#1223) - Ensure
keepMounted
is a private param onPositioner
(#1410)
Popover
onOpenChangeComplete
prop (#1305)- Add
OffsetFunction
forsideOffset
andalignOffset
(#1223) - Ensure
keepMounted
is a private param onPositioner
(#1410)
PreviewCard
onOpenChangeComplete
prop (#1305)- Add
OffsetFunction
forsideOffset
andalignOffset
(#1223) - Ensure
keepMounted
is a private param onPositioner
(#1410)
Progress
- Add
format
prop andValue
component (#1355)
Radio
- Avoid applying
hidden
attr whenkeepMounted=true
for indicators (#1329)
Select
onOpenChangeComplete
prop (#1305)- Fix jump with
scroll-behavior
style (#1343) - Add
OffsetFunction
forsideOffset
andalignOffset
(#1223) - Ensure
keepMounted
is a private param onPositioner
(#1410)
Slider
- Fix thumb positioning (#1411)
Tabs
- Fix being able to activate a disabled tab (#1359)
- Fix tabs activating incorrectly on non-primary button clicks (#1318)
Tooltip
onOpenChangeComplete
prop (#1305)- Add
OffsetFunction
forsideOffset
andalignOffset
(#1223) - Ensure
keepMounted
is a private param onPositioner
(#1410)
v1.0.0-alpha.5
Jan 10, 2025
AlertDialog
- Breaking change: Require
Portal
part. The AlertDialog must explicitly include the Portal part wrapping the Popup. ThekeepMounted
prop was removed from the Popup. It’s only present on the Portal part. #1222 - Don’t call
onNestedDialogOpen
when unmounting a closed nested dialog #1280 - Fix the nesting of different dialogs #1167
- Remove
useFloating
call from the Popup #1300 - Set
pointer-events
onInternalBackdrop
based onopen
state #1221 - Use internal backdrop for pointer modality #1161
Dialog
- Breaking change: Require
Portal
part. The Dialog must explicitly include the Portal part wrapping the Popup. ThekeepMounted
prop was removed from the Popup. It’s only present on the Portal part. #1222 - Don’t call
onNestedDialogOpen
when unmounting a closed nested dialog #1280 - Fix the nesting of different dialogs #1167
- Remove
useFloating
call from the Popup #1300 - Set
pointer-events
onInternalBackdrop
based onopen
state #1221 - Use internal backdrop for pointer modality #1161
Menu
- Breaking change: Require
Portal
part. The Menu must explicitly include the Portal part wrapping the Positioner. ThekeepMounted
prop was removed from the Positioner. It’s only present on the Portal part. #1222 - Apply
aria-hidden
toArrow
parts #1196 - Fix
focusableWhenDisabled
components #1313 - Fix
openOnHover
issues #1191 - Fix closing the menu when clicking on checkboxitem/radioitem #1301
- Fix Enter key preventDefault when rendering links #1251
- Handle pseudo-element bounds in mouseup detection #1250
- Set
pointer-events
onInternalBackdrop
based onopen
state #1221 - Use internal backdrop for pointer modality #1161
NumberField
- Correctly handle quick touches #1294
Popover
- Breaking change: Require
Portal
part. The Popover must explicitly include the Portal part wrapping the Positioner. ThekeepMounted
prop was removed from the Positioner. It’s only present on the Portal part. #1222 - Apply
aria-hidden
toArrow
parts #1196 - Fix PopoverTrigger and TooltipTrigger prop types #1209
PreviewCard
- Breaking change: Require
Portal
part. The PreviewCard must explicitly include the Portal part wrapping the Positioner. ThekeepMounted
prop was removed from the Positioner. It’s only present on the Portal part. #1222 - Apply
aria-hidden
toArrow
parts #1196 - Use
FloatingPortalLite
#1278
Progress
- Set zero width when value is zero #1204
ScrollArea
- Differentiate
x
/y
orientationdata-scrolling
#1188 - Read
DirectionProvider
and use logical positioning CSS props #1194
Select
- Breaking change: Require
Portal
part. The Select must explicitly include the Portal part wrapping the Positioner. ThekeepMounted
prop was removed from the Positioner. It’s only present on the Portal part. #1222 - Allow
id
to be passed to trigger #1174 - Fallback to standard positioning when pinch-zoomed in Safari #1139
- Fix
focusableWhenDisabled
components #1313 - Fix highlight flash on Safari #1233
- Handle pseudo-element bounds in mouseup detection #1250
- Use internal backdrop for pointer modality #1161
Separator
- Support vertical orientation #1304
Slider
- Ensure
onValueCommitted
is called with the same value as latestonValueChange
#1296 - Replace internal map with
Composite
metadata #1082 - Set
position: relative
on range slider indicator #1175 - Use un-rounded values to position thumbs #1219
Tabs
- Expose width/height state in tabs indicator #1288
Tooltip
- Breaking change: Require
Portal
part. The Tooltip must explicitly include the Portal part wrapping the Positioner. ThekeepMounted
prop was removed from the Positioner. It’s only present on the Portal part. #1222 - Apply
aria-hidden
toArrow
parts #1196 - Fix PopoverTrigger and TooltipTrigger prop types #1209
- Use
FloatingPortalLite
#1278
1.0.0-alpha.4
December 17, 2024
Public alpha launch 🐣 Merry Xmas! 🎁