Skip to content

Version Packages - #2183

Merged
huntabyte merged 1 commit into
mainfrom
changeset-release/main
Oct 20, 2026
Merged

huntabyte merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

bits-ui@2.20.0

Minor Changes

  • feat(RadioGroup): set autocomplete="off" on the hidden input by default to discourage browser autofill, and add an autocomplete prop to RadioGroup.Root to override it (#2198)

Patch Changes

  • fix(Calendar): fall back to the default placeholder when spread props are reassigned and placeholder is not bound, preventing Cannot read properties of undefined (reading 'set'). Also applies to RangeCalendar, DatePicker, DateRangePicker, DateRangeField, TimeField, and TimeRangeField. (#2226)

  • fix(Select): open the trigger on a click that no pointer press precedes (detail: 0), such as element.click() or a VoiceOver activation in Safari (#2227)

  • fix(Calendar/RangeCalendar): prevent weekday headers, heading, and cell labels from shifting by a day when using a ZonedDateTime in a time zone ahead of the local one (#2215)

  • fix(Collapsible/Accordion): prevent content mounted open from playing its open animation (#2209)

  • fix(Command): skip deferred root work after Command.Root is destroyed (#2210)

  • fix(Command): scroll the first item into view when items aren't grouped (#2003)

  • fix(DatePicker): respect preventDefault() in Content's onOpenAutoFocus so the calendar day is not auto-focused (also applies to DateRangePicker) (#2219)

  • fix: prevent content from flashing visible for a frame after its exit animation when Svelte async mode is enabled (#2193)

  • fix(Select/Combobox/DropdownMenu): don't open the trigger when it's disabled by an ancestor <fieldset disabled> (#2214)

  • fix(body-scroll-lock): restore body pointer-events as soon as the last lock is released so clicks right after a layer closes aren't lost (#2221)

  • fix(FocusScope): keep focus on elements inside an open shadow root nested in the scope (e.g. a web component's <input>) instead of treating it as escaping the trap (#2223)

  • fix(FocusScope): prevent page scroll when auto-focusing on open, trapping focus, and restoring focus on close (#2217)

  • fix(LinkPreview): always remove the document pointerup listener registered while open. When the content node wasn't attached yet, the open watcher returned early before its cleanup, so the listener was never unsubscribed and kept firing after the preview closed or unmounted. (#2194)

  • fix(NavigationMenu): only register a NavigationMenu.Content's dismiss/escape layers while it is open so closed forceMount content no longer closes the open item on inside clicks or steals escape focus (#2218)

  • fix(Command): item selection logic (#2074)

  • fix: call onOpenChangeComplete with true after content opens and its animations finish, not only on close (#2199)

  • fix(HiddenInput): keep hidden form inputs in sync with component state after a form reset. A native form reset now restores the current value instead of clearing the input, so setting a value right after form.reset() (e.g. SvelteKit use:enhance's update()) is no longer lost. Applies to RadioGroup, Select, Combobox, Checkbox, Switch, RatingGroup, and the date/time fields (RadioGroup hidden input out of sync on form reset #1942) (#2212)

  • fix(DateField): reset the segments when value is cleared externally after a date was typed in (#2196)

  • fix(Select/Combobox): highlight the selected item on open when its value is an empty string, and allow selecting it with Enter in Combobox (#2213)

  • fix(Tabs, Accordion, ToggleGroup, RadioGroup, Toolbar, Menubar): ignore the items and triggers of a nested root of the same kind during keyboard navigation, so arrow keys, Home, End and wrapping stay within the outer group (#2190)

  • Resume a paused focus scope when it registers again, so a menu whose trigger sits in a tooltip moves focus into its content when opened. (#2201)

  • fix(DismissibleLayer): close an open layer when a second outside pointerdown lands within its 10ms dismissal debounce. The second event replaced the pending one and was judged against the newly opened layer, so rapidly right clicking across ContextMenu triggers left earlier menus open. (#2229)

  • Set aria-selected="false" on unselected Select.Item and Combobox.Item options so every option exposes its selection state per the APG listbox pattern. (#2188)

  • fix(Select): give Select.Trigger the combobox role and point aria-controls at the mounted listbox (#2216)

  • fix(Select, Combobox): keep aligning the highlighted item while the content settles after positioning. Chrome that mounts once the content is placed (scroll buttons in the flex flow, a header, a footer) shrinks the viewport under the open-time alignment and left a far-down selection below the fold; the content now realigns on every viewport resize until the user scrolls, which also retires the scroll down button's own mount-time realign. (#2157)

  • fix(Checkbox): pass the form prop to the button again and submit the linked form when Enter is pressed with type="submit" (#2204)

  • fix(Slider): throw a descriptive error for non-finite min/max/step (or a step of 0) instead of hanging the browser (#2211)

  • fix: skip deferred animation-complete callbacks when the owning component is destroyed before they run (#2210)

  • fix(Select, Combobox): stop the scroll button auto scroll when the content closes while the button is hovered (#2197)

  • fix(AlertDialog): prevent delayed open autofocus from focusing replaced content (#2220)

  • fix(DateField): keep the day period when typing or deleting the hour in 12-hour mode (#2228)

  • fix(Tooltip): close when any scrolling ancestor of the trigger scrolls (#2206)

@github-actions
github-actions Bot force-pushed the changeset-release/main branch 11 times, most recently from 60f439d to a49fd0f Compare October 20, 2026 17:11
@github-actions
github-actions Bot force-pushed the changeset-release/main branch from a49fd0f to d89ec6a Compare October 20, 2026 17:27
@huntabyte
huntabyte merged commit cd055a1 into main Oct 20, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant