npm @base-ui-components/react 1.0.0-beta.0
v1.0.0-beta.0

latest releases: 1.0.0-beta.3, 1.0.0-beta.2, 1.0.0-beta.1...
3 months ago

May 29, 2025

General changes

Accordion

  • Stop event propagation to allow composite components to be used within popups (#1871) by @atomiks

Alert Dialog

  • Breaking change: Refine OpenChangeReason. hover is now trigger-hover; click is now trigger-press; focus is now trigger-focus.
    (#1782) by @atomiks
  • Use basic scroll lock on iOS
    (#1890) by @atomiks

Checkbox

Checkbox Group

  • Breaking change: Enable submitting checkbox group value as one field.
    For parent checkboxes, use value instead of name on each Checkbox.Root part to link as the values.
    (#1948) by @mj12albert
  • Fix validate fn incorrectly running twice (#1959) by @mj12albert

Context Menu

Dialog

  • Breaking change: Refine OpenChangeReason. hover is now trigger-hover; click is now trigger-press; focus is now trigger-focus.
    (#1782) by @atomiks
  • Use basic scroll lock on iOS
    (#1890) by @atomiks

Field

  • Breaking change: Consolidate Field.Error forceShow into match prop.
    Use match={true} (or implicit boolean) instead of forceShow.
    (#1919) by @atomiks
  • Improve Label logic that prevents text selection on double click (#1784) by @atomiks
  • Fix validation inconsistency (#1779) by @atomiks
  • Fix integration of Base UI components (#1755) by @atomiks
  • Set valueMissing to false if only error and not dirtied (#1810) by @atomiks
  • validate with latest value on blur (#1850) by @atomiks
  • Revalidate only required on change (#1840) by @atomiks
  • Run validate function after native validations (#1926) by @mj12albert
  • Fix validate fn incorrectly running twice (#1959) by @mj12albert
  • Integrate range sliders with Form and Field (#1929) by @mj12albert

Form

Input

Menu

  • Breaking change: Refine OpenChangeReason. hover is now trigger-hover; click is now trigger-press; focus is now trigger-focus.
    (#1782) by @atomiks
  • Fix function dependency handling (#1787) by @atomiks
  • Add missing 'use client' to RadioGroup part (#1851) by @atomiks
  • Ensure null items are removed from composite lists (#1847) by @atomiks
  • Avoid :focus-visible style appearing (#1846) by @atomiks
  • Better handle dynamic and non-string items (#1861) by @atomiks
  • Add collisionAvoidance prop (#1849) by @atomiks
  • Add finalFocus and closeDelay props (#1918) by @atomiks
  • Use basic scroll lock on iOS
    (#1890) by @atomiks

Menubar

Navigation Menu

Number Field

  • validate with latest value on blur (#1850) by @atomiks
  • Move scrubbing logic to ScrubArea component (#1859) by @atomiks
  • Remove floating point errors when snapOnStep is disabled (#1857) by @atomiks
  • Stop event propagation to allow composite components to be used within popups (#1871) by @atomiks
  • Exclude number formatting from form value (#1957) by @mj12albert

Popover

  • Breaking change: Refine OpenChangeReason. hover is now trigger-hover; click is now trigger-press; focus is now trigger-focus.
    (#1782) by @atomiks
  • Fix function dependency handling (#1787) by @atomiks
  • Avoid prop getters when merging props (#1852) by @atomiks
  • Add collisionAvoidance prop (#1849) by @atomiks
  • Fix nested openOnHover (#1938) by @atomiks
  • Use basic scroll lock on iOS
    (#1890) by @atomiks

Preview Card

  • Breaking change: Refine OpenChangeReason. hover is now trigger-hover; click is now trigger-press; focus is now trigger-focus.
    (#1782) by @atomiks
  • Fix function dependency handling (#1787) by @atomiks
  • Add collisionAvoidance prop (#1849) by @atomiks

Radio Group

  • Fix composite focus of initially selected radio item (#1753) by @atomiks
  • Add inputRef props (#1683) by @atomiks
  • Stop event propagation to allow composite components to be used within popups (#1871) by @atomiks

Select

  • Breaking change: Move item anchoring prop to Positioner.
    Use <Select.Positioner alignItemWithTrigger={false}> instead of <Select.Root alignItemToTrigger={false}> (note the With instead of To).
    (#1713) by @atomiks
  • 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) by @atomiks
  • Breaking change: Refine OpenChangeReason. hover is now trigger-hover; click is now trigger-press; focus is now trigger-focus.
    (#1782) by @atomiks
  • Fix function dependency handling (#1787) by @atomiks
  • Add inputRef props (#1683) by @atomiks
  • Refactor to useRenderElement (#1797) by @atomiks
  • Ensure null items are removed from composite lists (#1847) by @atomiks
  • Fix id prop forwarding to hidden input (#1862) by @atomiks
  • Avoid :focus-visible style appearing (#1846) by @atomiks
  • Fix transitionStatus mapping on ItemIndicator (#1925) by @atomiks
  • Better handle dynamic and non-string items (#1861) by @atomiks
  • Use Select.ItemText ref to grab default text content (#1943) by @atomiks
  • Add collisionAvoidance prop (#1849) by @atomiks
  • Use basic scroll lock on iOS
    (#1890) by @atomiks

Slider

Toast

  • Breaking change: Add Portal part.
    Place <Toast.Viewport> inside of <Toast.Portal>.
    (#1962) by @atomiks
  • 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) by @atomiks
  • Fix swipe jump on iOS (#1785) by @atomiks

Toggle

  • Stop event propagation to allow composite components to be used within popups (#1871) by @atomiks

Toolbar

  • Stop event propagation to allow composite components to be used within popups (#1871) by @atomiks

Tooltip

  • Breaking change: Refine OpenChangeReason. hover is now trigger-hover; click is now trigger-press; focus is now trigger-focus.
    (#1782) by @atomiks
  • Fix function dependency handling (#1787) by @atomiks
  • Avoid prop getters when merging props (#1852) by @atomiks
  • Remove trackCursorAxis type from Positioner (#1895) by @atomiks
  • Apply pointer-events: none to Positioner when not hoverable (#1917) by @atomiks
  • Add collisionAvoidance prop (#1849) by @atomiks

useRender

  • Breaking change: Performance/refactor: useRender. An object with a renderElement property is no longer returned; instead, the hook returns the element directly (const element = useRender(...)). The refs option was also renamed to ref.
    (#1934) by @romgrk
  • Skip most of useRenderElement logic when unnecessary (#1967) by @michaldudak

All contributors of this release in alphabetical order: @aarongarciah, @atomiks, @brijeshb42, @DarthSim, @flaviendelangle, @Janpot, @JCQuintas, @michaldudak, @mj12albert, @oliviertassinari, @romgrk, @Yonava, @ZeeshanTamboli

Don't miss a new react release

NewReleases is sending notifications on new releases.