unstale

npm / @ark-ui/svelte

@ark-ui/svelte

What changed in @ark-ui/svelte 5, from its official release notes, upgrade guides and advisories. Sources checked 2026-11-02.

22 breaking156 new APIs and options1 performance19 behavior and defaults258 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli on npm

@ark-ui/svelte 5456 changes

Breaking changes 22

  • Replaced the amPmLabels object prop with separate amLabel and pmLabel props.

    5.25.1release notes

  • The experimental TimePicker component was removed; the notes recommend building a custom picker using Select or a time grid pattern.

    5.25.1release notes

  • Replaced BottomSheet with the new Drawer component.

    5.25.0release notesrelease notes

  • Tooltip's default closeDelay changes from 500ms to 150ms.

    5.25.0release notesrelease notes

  • Enter no longer submits the form when an item is highlighted or when allowCustomValue: false will reject the typed value.

    5.25.0release notes

  • Min/max validation preserves entered segments and clamps values segment by segment on blur.

    5.25.0release notes

  • Removed formattedDate; use valueText instead.

    5.25.0release notesrelease notes

  • Replaced BottomSheet with Drawer, supporting multidirectional swipe, Positioner, and snapToSequentialPoints.

    5.25.0release notesrelease notes

  • Rejects duplicate files with a FILE_EXISTS error instead of accepting duplicates and removing them together.

    5.25.0release notes

  • Format.Time now accepts separate amLabel and pmLabel props instead of the amPmLabels object.

    5.25.0release notesrelease notes

  • Now returns { node, indexPath }[] instead of node[].

    5.25.0release notesrelease notes

  • Regions no longer have an id; select them with [data-live-announcer] instead of #__live-region__.

    5.25.0release notes

  • Speed now reflects real pixel speed based on content size and translation distance, including when content is narrower than the viewport.

    5.25.0release notesrelease notes

  • Hover Card's default openDelay changes from 700ms to 600ms.

    5.25.0release notesrelease notes

  • Tooltip's default openDelay changes from 1000ms to 400ms.

    5.25.0release notesrelease notes

  • Tabbing out of portalled content now moves to the next tabbable element after the trigger instead of looping back into the content.

    5.25.0release notesrelease notes

  • Controlled paths no longer include the in-progress stroke; it remains in onDraw.currentPath until the stroke ends.

    5.25.0release notes

  • Adds data-current, data-complete and data-incomplete to the item, and moves aria-current="step" to the trigger.

    5.25.0release notes

  • Raises the minimum Svelte peer version to 5.29.0.

    5.25.0release notes

  • Fixes machines missing early prop changes and popups losing styles on re-render.

    5.25.0release notes

  • Uses data-part="nav" instead of data-part="root"; update styles that target the nav through [data-part="root"].

    5.25.0release notes

  • Reads the Toc context from Toc.Root; it no longer accepts useToc props or creates its own Toc, so wrap standalone navigation in Toc.Root.

    5.25.0release notes

New APIs and options 156

  • Angle Slider thumb supports aria-label and falls back to the label element's ID when needed for accessible labeling.

    5.25.1release notes

  • Angle Slider thumb supports aria-labelledby and falls back to the label element's ID when needed for accessible labeling.

    5.25.1release notes

  • The Ark factory component was added for the asChild prop.

    5.25.1release notes

  • The Avatar component was added.

    5.25.1release notes

  • Exports a type for TreeView checked-change details.

    5.25.1release notes

  • Collapsible adds a prop to control the content's height while collapsed.

    5.25.1release notes

  • Collapsible adds a prop to control the content's width while collapsed.

    5.25.1release notes

  • Collection helpers were added.

    5.25.1release notes

  • All components were added to match the React and Vue packages.

    5.25.1release notes

  • Marks the preferred focus target when a Dialog or Drawer opens.

    5.25.1release notes

  • Adds a data attribute for styling the end of a hovered date range.

    5.25.1release notes

  • Adds a data attribute for styling the start of a hovered date range.

    5.25.1release notes

  • Adds a data attribute for styling days within a hovered date range.

    5.25.1release notes

  • Excludes an element from the automatic focus search when a Dialog or Drawer opens.

    5.25.1release notes

  • Added required and invalid props to Date Picker.

    5.25.1release notes

  • Added required and invalid props to Date Picker.

    5.25.1release notes

  • Added ValueText for displaying selected date values with placeholder support and custom formatting.

    5.25.1release notes

  • Adds hover-range state to date picker range selection, including firstInHoveredRange and corresponding data attributes.

    5.25.1release notes

  • Adds hover-range state to date picker range selection, including inHoveredRange and corresponding data attributes.

    5.25.1release notes

  • Adds hover-range state to date picker range selection, including lastInHoveredRange and corresponding data attributes.

    5.25.1release notes

  • File Upload adds defaultAcceptedFiles for programmatic control of accepted files.

    5.25.1release notes

  • Tree View adds checkbox-state support for checkbox trees via defaultCheckedValue, checkedValue, and onCheckedChange.

    5.25.1release notes

  • Signature Pad adds defaultPaths for programmatic control of paths.

    5.25.1release notes

  • Supports multiple triggers with individual values while sharing one Dialog instance.

    5.25.1release notes

  • The Environment component was added.

    5.25.1release notes

  • Added Field.Item with a value to scope controls in multi-control fields.

    5.25.1release notes

  • The Format component was added.

    5.25.1release notes

  • The Highlight component was added.

    5.25.1release notes

  • Exported event types for improved type safety.

    5.25.1release notes

  • Added step validation support.

    5.25.1release notes

  • Exports a type for TreeView load-children error details.

    5.25.1release notes

  • Adds a utility for combining props objects with event handler and className merging.

    5.25.1release notes

  • Adds configurable keyboard stepping with Shift; the default is 10 times step.

    5.25.1release notes

  • Adds configurable keyboard stepping with Alt; the default is step divided by 10.

    5.25.1release notes

  • Adds a callback for the TreeView rename lifecycle before a rename proceeds.

    5.25.1release notes

  • Adds a callback for completion of the TreeView rename lifecycle.

    5.25.1release notes

  • Added a trigger for navigating to the last page.

    5.25.1release notes

  • The Progress component was added.

    5.25.1release notes

  • The QrCode component was added.

    5.25.1release notes

  • Added invalid and required props with corresponding data and aria attributes.

    5.25.1release notes

  • Added invalid and required props with corresponding data and aria attributes.

    5.25.1release notes

  • Exports a type for TreeView rename-complete details.

    5.25.1release notes

  • Exports a type for TreeView rename-start details.

    5.25.1release notes

  • Added Scroll Area overflow CSS variables for scroll fade effects.

    5.25.1release notes

  • Added range state properties to TableCellState.

    5.25.1release notes

  • Added range state properties to TableCellState.

    5.25.1release notes

  • The Timer component was added.

    5.25.1release notes

  • Exposed viewport offset as CSS variables on the toast group element.

    5.25.1release notes

  • Exported Toast types for better type safety.

    5.25.1release notes

  • Extracts reusable browser-download behavior from DownloadTrigger into a hook.

    5.25.1release notes

  • Added a Tags Input prop to allow duplicate tags.

    5.25.0release notesrelease notes

  • Combobox adds a prop to submit a form immediately on Enter instead of using the default two-step behavior.

    5.25.0release notesrelease notes

  • Added a focus option to control focus when clearing a Date Picker value.

    5.25.0release notesrelease notes

  • Added a check for whether the maximum number of dates has been selected.

    5.25.0release notesrelease notes

  • Added setTime for date-time picker support.

    5.25.0release notesrelease notes

  • Angle Slider thumb supports aria-label and aria-labelledby, and falls back to the label element's ID for accessible naming.

    5.25.0release notes

  • Added Select autoComplete prop for browser autofill hints.

    5.25.0release notesrelease notes

  • Added a prop to automatically submit the owning form when all inputs are filled.

    5.25.0release notesrelease notes

  • File Upload adds bindable accepted files for programmatic control.

    5.25.0release notesrelease notes

  • Signature Pad adds bindable paths for programmatic control.

    5.25.0release notesrelease notes

  • Added a parameter for controlling boundary pages at the start and end.

    5.25.0release notesrelease notes

  • TreeView adds a prop for controlling which nodes can be renamed.

    5.25.0release notesrelease notes

  • Added support for variable width or height slide items.

    5.25.0release notesrelease notes

  • Added a component for conditionally rendering content based on autoplay state.

    5.25.0release notesrelease notes

  • Added a component for displaying current page progress.

    5.25.0release notesrelease notes

  • Added maxSelectedValues to limit selected values.

    5.25.0release notesrelease notes

  • Adds a component for external checkbox group state management.

    5.25.0release notesrelease notes

  • TreeView exports additional detail types, including checked-change and rename lifecycle details.

    5.25.0release notes

  • Tree View adds support for checkbox state in checkbox trees through checkedValue.

    5.25.0release notes

  • Adds collapsedHeight and collapsedWidth props to control content dimensions while the collapsible is collapsed.

    5.25.0release notes

  • Adds a loading prop that sets aria-busy on the list and delays the No results message; result-count announcements are configurable through translations.

    5.25.0release notes

  • Adds modifiers to navigate and onSelect details; onSelect also runs when a link item is modifier-clicked.

    5.25.0release notes

  • Adds configurable translations for announcing result counts after typing, alongside noResults and loading.

    5.25.0release notes

  • Adds a component for displaying content when the Combobox has no items.

    5.25.0release notes

  • Exports a type for composing Combobox root component props.

    5.25.0release notesrelease notes

  • Added Date Picker support for non-Gregorian calendars via createCalendar.

    5.25.0release notesrelease notes

  • Marks the element to receive focus when an overlay opens, after initialFocusEl.

    5.25.0release notes

  • Date Picker Content exposes data-inline to distinguish inline date pickers from popover date pickers for styling.

    5.25.0release notesrelease notes

  • Added Tooltip data-instant attribute for instant animations.

    5.25.0release notesrelease notes

  • Excludes an element from the overlay's fallback search for the first tabbable element.

    5.25.0release notes

  • Adds a data-scrubbing attribute to Number Input parts.

    5.25.0release notes

  • Adds placement attributes to floating component parts for styling by current placement.

    5.25.0release notesrelease notes

  • Added data-type to weekend table headers and cells.

    5.25.0release notesrelease notes

  • Added required and invalid props to Date Picker.

    5.25.0release notes

  • Adds a prop to hide the automatically rendered timeZoneName segment for ZonedDateTime values.

    5.25.0release notesrelease notes

  • Adds a component for entering dates with keyboard input.

    5.25.0release notesrelease notes

  • Tree View adds support for checkbox state in checkbox trees through defaultCheckedValue.

    5.25.0release notes

  • Added a Drawer anatomy part with aria-describedby support on the content element.

    5.25.0release notesrelease notes

  • Hover Card adds support for the disabled prop.

    5.25.0release notes

  • data-no-drag now supports axis values x or y.

    5.25.0release notes

  • Highlight Word adds an option for whole-word matching using regex word boundaries.

    5.25.0release notesrelease notes

  • Added Field.Item for scoping controls in multi-control fields.

    5.25.0release notes

  • Added target to specify which Field.Item the label should focus when clicked.

    5.25.0release notesrelease notes

  • Lets callers choose which element receives focus when the panel closes.

    5.25.0release notesrelease notes

  • Lets callers choose which element receives focus when the panel opens.

    5.25.0release notesrelease notes

  • Adds control over focus restoration when the panel closes.

    5.25.0release notesrelease notes

  • Added Format.Time for formatting time values.

    5.25.0release notesrelease notes

  • Caps output dimensions while preserving aspect ratio and scaling the crop down to fit.

    5.25.0release notesrelease notes

  • Exported functions for calculating splitter panel layouts.

    5.25.0release notesrelease notes

  • Pagination adds a prop for generating href attributes when used as links.

    5.25.0release notesrelease notes

  • Added programmatic highlight navigation to the Listbox API.

    5.25.0release notesrelease notes

  • Date Picker range selection adds hover-preview state properties and corresponding data attributes, active when the preview does not overlap the selected range.

    5.25.0release notes

  • Exported the event type for improved type safety.

    5.25.0release notes

  • Added input prop to control whether key handling prioritizes text editing or list navigation.

    5.25.0release notesrelease notes

  • Adds a component for displaying content when the Listbox has no items.

    5.25.0release notes

  • Exports a type for composing Listbox root component props.

    5.25.0release notesrelease notes

  • Released the Marquee component for continuously scrolling content.

    5.25.0release notesrelease notes

  • Added a prop to limit selected dates in multiple selection mode.

    5.25.0release notesrelease notes

  • Adds modifiers to navigate and onSelect details; onSelect also runs when a link item is modifier-clicked or activated with Enter.

    5.25.0release notes

  • Adds configurable keyboard stepping with Shift; defaults to 10 * step, matching previous behavior.

    5.25.0release notes

  • Tree View adds onCheckedChange for checkbox state changes in checkbox trees.

    5.25.0release notes

  • Tree View adds a callback for when loadChildren fails.

    5.25.0release notesrelease notes

  • Adds a callback for the start of the TreeView rename lifecycle.

    5.25.0release notesrelease notes

  • Dismissable exposes a custom event handler for parent layers requesting child dismissal; preventing the event keeps the child open.

    5.25.0release notes

  • Added a Number Input callback fired when input loses focus or Enter is pressed.

    5.25.0release notesrelease notes

  • Added value to OpenChangeDetails for Carousel, Color Picker, Combobox, Date Picker, and Select.

    5.25.0release notesrelease notes

  • Added a prop to open the calendar when clicking the input field.

    5.25.0release notesrelease notes

  • Added a trigger for navigating to the first page.

    5.25.0release notesrelease notes

  • Lets FocusTrap treat lazily resolved portalled content as part of the trap when aria-controls or aria-expanded cannot reach it.

    5.25.0release notesrelease notes

  • Added a Tags Input placeholder shown only when no tags exist.

    5.25.0release notesrelease notes

  • Lets callers choose the element that receives focus when the popover closes.

    5.25.0release notesrelease notes

  • Controls whether focus returns to the trigger when the popover closes; defaults to true.

    5.25.0release notesrelease notes

  • Added invalid and required props with corresponding data and ARIA attributes.

    5.25.0release notes

  • Select, Combobox, Listbox, and TreeView export RootComponent types for type-safe compositions.

    5.25.0release notes

  • Added a prop to sanitize pasted values before validation.

    5.25.0release notesrelease notes

  • Adds support for the ScrollArea component.

    5.25.0release notesrelease notes

  • Added a prop enabling keyboard navigation in virtualized trees.

    5.25.0release notesrelease notes

  • Exports a type for composing Select root component props.

    5.25.0release notesrelease notes

  • Added support for displaying the ISO 8601 week number column in the day view.

    5.25.0release notesrelease notes

  • Added a Popover positioning option to optionally disable the size middleware.

    5.25.0release notesrelease notes

  • Adds a larger keyboard step for Shift and PageUp/PageDown; the default is 10 times step.

    5.25.0release notesrelease notes

  • Added an option for sequential Drawer snap points.

    5.25.0release notes

  • Adds per-panel resize behavior; preserve-pixel-size keeps a panel's pixel size constant when the parent group resizes.

    5.25.0release notesrelease notes

  • Connects nested splitters so intersecting horizontal and vertical splitters can be dragged in both directions.

    5.25.0release notesrelease notes

  • Added a component to render an indicator when resizing.

    5.25.0release notesrelease notes

  • Added validation APIs and callback for Steps.

    5.25.0release notes

  • Added a component for toggling between two visual states with CSS animations using dual presence instances.

    5.25.0release notesrelease notes

  • Added a Drawer part for swipe-to-open gestures from screen edges.

    5.25.0release notesrelease notes

  • Added Drawer swipe directions up, down, left, and right.

    5.25.0release notes

  • Added state properties for range boundaries, hovered ranges, and dates outside the range.

    5.25.0release notes

  • Cleans tag values before they are added; defaults to trimming whitespace.

    5.25.0release notesrelease notes

  • Added Slider thumbCollisionBehavior with none, push, and swap modes.

    5.25.0release notesrelease notes

  • Exported Toast option and store prop types for improved type safety.

    5.25.0release notes

  • Adds multiple; set it to false to keep only the topmost visible heading active. Clicked items activate immediately, and the reader's section remains active after its heading scrolls out of view.

    5.25.0release notes

  • Adds scrollToTargetFn and data-instant, and uses the dialog role for content.

    5.25.0release notes

  • Added translations props for localizing hardcoded accessibility labels in Clipboard, Navigation Menu, Popover, Select, Timer, and Tree View.

    5.25.0release notesrelease notes

  • Adds data-checked and data-indeterminate attributes to item and branch controls for checked-state styling.

    5.25.0release notes

  • Adds a TreeView component for inline editing of a node label.

    5.25.0release notesrelease notes

  • Exports a type for composing TreeView root component props.

    5.25.0release notesrelease notes

  • FormatByte supports choosing decimal or binary byte units through unitSystem.

    5.25.0release notesrelease notes

  • Added a hook for localized date formatting using @internationalized/date.

    5.25.0release notesrelease notes

  • Provides reusable browser-download behavior outside DownloadTrigger.

    5.25.0release notes

  • Added a hook for conditionally showing focus rings.

    5.25.0release notesrelease notes

  • Added a hook for tracking whether user input is keyboard, pointer, or virtual.

    5.25.0release notesrelease notes

  • Adds a function for managing collection item selection in single or multiple selection modes.

    5.25.0release notesrelease notes

  • Adds getNavProps() for rendering Toc.Nav with the navigation props.

    5.25.0release notes

Performance 1

Behavior and default changes 19

  • Elements referenced by aria-controls are included in the focus trap scope, supporting portalled menus, popovers, and similar components.

    5.25.1release notes

  • Drawer swipes require intentional movement before showing, settle smoothly from the release point, and preserve cross-axis scrolling.

    5.25.1release notes

  • File Upload infers a file's MIME type from its extension when the browser cannot infer it.

    5.25.1release notes

  • Added initial focus management for Drawer non-modal mode.

    5.25.1release notes

  • Focus selection tries initialFocusEl, data-autofocus, the first eligible tabbable element, and then the content root.

    5.25.1release notes

  • Allows non-panel children inside the root, with partial trigger ids to bind handles around fixed elements.

    5.25.1release notes

  • Drawer gestures require intentional movement before showing, settle smoothly from the release point, preserve cross-axis scrolling, and support initial focus in non-modal mode.

    5.25.0release notes

  • Added enterKeyHint showing next on intermediate slots and done on the last.

    5.25.0release notesrelease notes

  • Pin Input Home and End jump to the first slot or last filled slot.

    5.25.0release notesrelease notes

  • One component instance can be shared across multiple triggers, each with a value; the component repositions when switching triggers.

    5.25.0release notes

  • Adds Ctrl/Cmd+arrow and up/down arrow navigation, and runs native form validation when Enter is pressed.

    5.25.0release notes

  • Range boundary dates now announce starting and ending context for screen readers.

    5.25.0release notesrelease notes

  • Accepts CSS units in addition to percentages.

    5.25.0release notesrelease notes

  • Accepts CSS units in addition to percentages.

    5.25.0release notesrelease notes

  • Accepts CSS units in addition to percentages.

    5.25.0release notesrelease notes

  • Sets the input enterKeyHint to done so mobile keyboards show a Done button that adds a tag.

    5.25.0release notesrelease notes

  • Queues incoming toasts at the visible limit and sorts queued items by priority.

    5.25.0release notesrelease notes

  • The loading option is now required; a warning is logged if it is not provided.

    5.25.0release notesrelease notes

  • initialItems now accepts readonly arrays for immutable data compatibility.

    5.25.0release notesrelease notes

Fixes and other changes 258

  • Fixed Switch api.toggleChecked() not working.

    5.25.1release notes

  • Dialog aria-modal now reflects the modal prop instead of being hardcoded true.

    5.25.1release notes

  • Fixed change event not being emitted after clearing a controlled textarea.

    5.25.1release notes

  • Fixed dragging, page and indicator synchronization, mixed interactions, state validity after option changes, and slidesPerMove progression.

    5.25.1release notes

  • Fixed individual Checkbox props being overridden by CheckboxGroup.

    5.25.1release notes

  • Fixed initial focus when the first node or branch is disabled.

    5.25.1release notes

  • Fixed color not updating when selecting black shades in controlled mode.

    5.25.1release notes

  • Enter no longer submits the form when an item is highlighted or a typed value will be rejected.

    5.25.1release notes

  • Fixed onValueChange returning an empty items array when using a controlled value.

    5.25.1release notes

  • Combobox item disabled state now accounts for the root-level disabled prop.

    5.25.1release notes

  • Fixed focus stealing in controlled open mode and removed problematic aria-hidden behavior.

    5.25.1release notes

  • Fixed callback not being invoked when the collection is filtered to empty.

    5.25.1release notes

  • Fixed selectToday value format, preserved time and timezone when selecting dates, and improved focus management in trigger-only mode.

    5.25.1release notes

  • Fixes segment placeholders for locales with explicit script subtags.

    5.25.1release notes

  • Returns current text when multiple pickers share a visible range, preventing stale values and SSR hydration mismatches.

    5.25.1release notes

  • Hovering outside-month days no longer changes the visible month when outsideDaySelectable is enabled, while end-date hover preview still updates.

    5.25.1release notes

  • Respects minView, maxView, and defaultView when resolving the initial view.

    5.25.1release notes

  • Reopening with only a start date resumes the existing range instead of restarting it.

    5.25.1release notes

  • Date input is writable in locales with multi-character separators.

    5.25.1release notes

  • The native month/year select remains interactive in Firefox when the picker is inside a modal dialog.

    5.25.1release notes

  • Svelte now resolves value before defaultValue, matching React and Solid.

    5.25.1release notes

  • Dismissable layers no longer lose pointer-events in Svelte when spread updates rewrite the style attribute.

    5.25.1release notes

  • lazyMount and unmountOnExit now work for the backdrop.

    5.25.1release notes

  • Fixed closing nested dialogs or popovers incorrectly closing their parent layers.

    5.25.1release notes

  • Fixed the package distribution shipping unresolved $lib/ imports that broke consumer builds in 5.25.0.

    5.25.1release notes

  • Fixed window resolution to use environment context in custom environments such as iframes.

    5.25.1release notes

  • Type declarations now include presence properties such as onExitComplete.

    5.25.1release notes

  • Prevents flicker when a controlled drawer is swiped or backdrop-closed while its open setter is asynchronous.

    5.25.1release notes

  • Dismissable layers no longer lose pointer-events in Svelte when spread updates rewrite the style attribute.

    5.25.1release notes

  • The indent and indent background transition in sync with the close animation.

    5.25.1release notes

  • Dragging no longer freezes on release when content mounts lazily and snap points were not yet measured.

    5.25.1release notes

  • Fixes bind:value behavior in Field.Input.

    5.25.1release notes

  • Fixes bind:value behavior in Field.Select.

    5.25.1release notes

  • Fixes bind:value behavior in Field.Textarea.

    5.25.1release notes

  • Exports the FileError type.

    5.25.1release notes

  • Exports the FileMimeType type.

    5.25.1release notes

  • Exports the FileRejection type.

    5.25.1release notes

  • Fixed initialization precedence, independent positioning and sizing, controlled restore behavior, ResizeObserver update depth errors, and Escape cancellation during drag or resize.

    5.25.1release notes

  • Fixed double-click on a minimized title bar incorrectly maximizing.

    5.25.1release notes

  • Closing an overlay no longer steals focus from an element focused by the app in the meantime.

    5.25.1release notes

  • Closing a nested overlay no longer throws when the outer container has no connected focusable element.

    5.25.1release notes

  • The focus ring now appears on the returned-to element after closing with Escape.

    5.25.1release notes

  • Returns the same region shown after rotating or flipping the image.

    5.25.1release notes

  • Returns the correct crop region when the displayed image differs in size from its natural resolution.

    5.25.1release notes

  • Fixed reset destroying the cropper, prop changes not updating instantly, and panning bounds.

    5.25.1release notes

  • Fixed Listbox DOM IDs.

    5.25.1release notes

  • mergeProps no longer throws when props is undefined or null.

    5.25.1release notes

  • Fixed cursor positioning after clicking the label or scrubbing.

    5.25.1release notes

  • Fixed invalid being ignored when the value is out of range.

    5.25.1release notes

  • Passes the LocaleProvider locale to the underlying machine.

    5.25.1release notes

  • Makes blur behavior consistent when the input is cleared and min is greater than zero.

    5.25.1release notes

  • Node details are exposed in onExpandChange, onSelectionChange, and onFocusChange.

    5.25.1release notes

  • Fixed the next trigger not being disabled when count is zero.

    5.25.1release notes

  • Fixes bind:value behavior in PasswordInput.Input.

    5.25.1release notes

  • The data-filled attribute is no longer set on every input on first render.

    5.25.1release notes

  • Dismissable layers no longer lose pointer-events in Svelte when spread updates rewrite the style attribute.

    5.25.1release notes

  • Passes the LocaleProvider locale to the underlying machine.

    5.25.1release notes

  • Closing dialogs, drawers, and popovers no longer leaves body scroll-lock and interaction attributes behind.

    5.25.1release notes

  • Prevents unwanted props from being forwarded to DOM elements.

    5.25.1release notes

  • Fixed autofill not updating the value when the hidden select value changes.

    5.25.1release notes

  • Forwards the dir prop to the DOM.

    5.25.1release notes

  • Controlled paths no longer include an in-progress stroke; it stays in onDraw.currentPath until the stroke ends.

    5.25.1release notes

  • Fixed thumb dragging from the edge in thumbAlignment="contain" mode.

    5.25.1release notes

  • Fixed disabled Splitter showing a resize cursor and allowing dragging.

    5.25.1release notes

  • Keyboard resizing works when a resize trigger receives focus while hovered.

    5.25.1release notes

  • Machine exit actions no longer run when a component is disposed before the machine starts.

    5.25.1release notes

  • Fixed the state_unsafe_mutation warning during component teardown.

    5.25.1release notes

  • Restored offsetLeft/offsetTop calculations for correct indicator positioning in scrollable containers.

    5.25.1release notes

  • Fixed toasts created before the state machine connects not showing.

    5.25.1release notes

  • Toast types now expose parent and index as props and expand and collapse on the store.

    5.25.1release notes

  • Fixed janky scrolling between Tour steps.

    5.25.1release notes

  • Corrected effect cleanup, fixed wait steps, and added step validation on mount.

    5.25.1release notes

  • Adds checked-state data attributes to item and branch controls for styling.

    5.25.1release notes

  • Adds indeterminate-state data attributes to item and branch controls for styling.

    5.25.1release notes

  • Fixed initial focus when the first node or branch is disabled.

    5.25.1release notes

  • Clicking a branch with indeterminate state now checks its child nodes.

    5.25.1release notes

  • Exports the UseListCollectionReturn type.

    5.25.1release notes

  • Fixed formatting to reflect the current year, month, or day view.

    5.25.1release notes

  • Item triggers no longer render redundant aria-disabled attributes.

    5.25.0release notesrelease notes

  • Fixed querying elements by aria-controls when content is lazy mounted.

    5.25.0release notes

  • Adds the missing data-focus attribute to getItemTriggerProps.

    5.25.0release notesrelease notes

  • Accordion.ItemContext now works.

    5.25.0release notesrelease notes

  • Thumb maintains consistent positioning relative to the initial click point when dragging from a non-center position.

    5.25.0release notesrelease notes

  • Scrubbing feels smoother on touch devices.

    5.25.0release notesrelease notes

  • The branch trigger no longer has the aria-busy attribute when children are not loading.

    5.25.0release notesrelease notes

  • Menu trigger now keeps aria-expanded="false" when closed.

    5.25.0release notesrelease notes

  • Combobox now sets aria-selected on selected items rather than highlighted items.

    5.25.0release notesrelease notes

  • Fixes the missing default export condition that prevented Node.js programs such as PandaCSS from resolving the anatomy entrypoint.

    5.25.0release notesrelease notes

  • The root now respects the id prop.

    5.25.0release notes

  • bind:ref works with components, allowing access to the underlying DOM element.

    5.25.0release notesrelease notes

  • Fixes bind:value behavior in Field.Textarea, Field.Input, Field.Select, and PasswordInput.Input.

    5.25.0release notes

  • Fixed controlled carousel page jumps in dialogs, navigation in CSS-transformed containers, and scroll drift when layout shifts.

    5.25.0release notesrelease notes

  • Fixed dragging after browser tab switches, page scrolling, or mouse-wheel scrolling when allowMouseDrag is enabled.

    5.25.0release notes

  • Fixed incorrect page count when Carousel is inside a Portal and DOM layout is incomplete at mount.

    5.25.0release notes

  • Carousel page and indicators stay synchronized after drag release and scrolling settles; rapid mixed interactions are handled more consistently.

    5.25.0release notes

  • Improved page and indicator synchronization, interaction consistency, and state validity when Carousel configuration changes.

    5.25.0release notes

  • Carousel page state remains valid when slide counts, direction, or orientation change.

    5.25.0release notes

  • Syncs the hidden input when initially indeterminate.

    5.25.0release notes

  • Initial indeterminate state works, and api.checkedState returns boolean | "indeterminate" correctly.

    5.25.0release notes

  • The dir prop now uses the provided value instead of being hardcoded to ltr.

    5.25.0release notes

  • Non-inline Color Picker content now has role="dialog", and its trigger has aria-haspopup="dialog".

    5.25.0release notes

  • Color values set through props or setValue now respect the specified format.

    5.25.0release notes

  • Fixed vertical slider orientation not being preserved on pointer updates.

    5.25.0release notesrelease notes

  • Pressing Enter to confirm an IME composition no longer commits a partial channel value.

    5.25.0release notesrelease notes

  • api.setFormat now changes the format.

    5.25.0release notes

  • The format prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Fires onValueChangeEnd when a color is selected with the EyeDropper API.

    5.25.0release notesrelease notes

  • The highlightedValue prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Uses a live region on Apple devices to announce highlighted options to VoiceOver during arrow-key navigation.

    5.25.0release notesrelease notes

  • Controlled Drawer with open: true and no onOpenChange now blocks swipe-to-dismiss.

    5.25.0release notesrelease notes

  • Improved controlled-mode synchronization and callback/item resolution across filtered Combobox, Listbox, and Select collections.

    5.25.0release notesrelease notes

  • Exposes the toast content generic so CreateToasterReturn<T> can type custom toast data.

    5.25.0release notesrelease notes

  • Scroll Area parts expose data-dragging.

    5.25.0release notes

  • Scroll Area exposes data-hover for styling.

    5.25.0release notes

  • Added range data attributes to month and year cell triggers.

    5.25.0release notesrelease notes

  • Improved Date Input focus management.

    5.25.0release notesrelease notes

  • Fixed a crash when typing the end date first and blurring repeatedly.

    5.25.0release notesrelease notes

  • Fixed a crash when entering the end date first by checking for null or undefined date properties.

    5.25.0release notes

  • Avoids stale visibleRangeText when multiple pickers share a visible range, which could cause SSR hydration mismatches.

    5.25.0release notes

  • Keyboard selection of an unavailable date now behaves like mouse selection in the month view.

    5.25.0release notesrelease notes

  • Initial view resolution now respects minView, maxView, and defaultView instead of being hardcoded to day through year.

    5.25.0release notes

  • Date input is writable in locales with multi-character separators.

    5.25.0release notes

  • Accepts locale-native numerals when typing dates.

    5.25.0release notesrelease notes

  • The placeholderValue prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • No longer reads stale display values.

    5.25.0release notesrelease notes

  • Timezone-naive values now round-trip unchanged with a custom formatter that omits timeZone.

    5.25.0release notesrelease notes

  • Keeps segment text in sync while replacing a committed date and preserves edits while focus catches up after auto-advance.

    5.25.0release notesrelease notes

  • Arrow navigation and auto-advance after typing now reach read-only focusable segments.

    5.25.0release notesrelease notes

  • Defers min/max validation until a segment is fully typed or the input blurs, preserving other entered segments.

    5.25.0release notesrelease notes

  • Range-mode keyboard navigation moves from the start date's last segment to the end date's first segment.

    5.25.0release notesrelease notes

  • Time-only formatters now fire onValueChange even when there is no year segment.

    5.25.0release notesrelease notes

  • Accepts locale-native numerals when typing dates.

    5.25.0release notesrelease notes

  • Enforces the selection limit on month and year cells in multiple-selection mode.

    5.25.0release notesrelease notes

  • The controlled open prop now takes precedence over defaultOpen.

    5.25.0release notesrelease notes

  • onValueChange now fires when only time segments change in CalendarDateTime or ZonedDateTime values.

    5.25.0release notesrelease notes

  • Reorders dates on blur in range selection, matching other selection paths.

    5.25.0release notesrelease notes

  • Disabled and read-only pickers no longer react to cell clicks, clear triggers, or presets; read-only navigation remains available.

    5.25.0release notesrelease notes

  • Keyboard range selection now matches pointer behavior, including restarting on a third date and updating hover previews for keyboard navigation.

    5.25.0release notesrelease notes

  • Clearing range values resets activeIndex and hoveredValue even when input parts are not rendered.

    5.25.0release notesrelease notes

  • Progress now shows the indeterminate state when defaultValue is null.

    5.25.0release notesrelease notes

  • Vue and Svelte now resolve value before defaultValue, matching React and Solid.

    5.25.0release notes

  • Improved shadow DOM support for interaction-outside handling and focus-trap detection.

    5.25.0release notes

  • Exposes api.modal.

    5.25.0release notes

  • Dismissable layers no longer lose pointer-events in Svelte and Vue when spread updates rewrite the style attribute.

    5.25.0release notes

  • Improved non-modal behavior with interactive page content, initial focus management, and aria-modal reflecting modal.

    5.25.0release notesrelease notes

  • Fixed non-modal Dialog closing on outside click when modal is false.

    5.25.0release notesrelease notes

  • The triggerValue prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Prevents backdrop flicker during controlled closes when the open setter is asynchronous.

    5.25.0release notesrelease notes

  • The swipe-progress custom property now moves smoothly from rest to fully dismissed.

    5.25.0release notesrelease notes

  • The snapPoint prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • The triggerValue prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Controlled drawers no longer snap open before the close animation after swipe dismissal.

    5.25.0release notesrelease notes

  • The edit prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Helper and error text is announced on the focused element for Select, TagsInput, ColorPicker, FileUpload, SignaturePad, RatingGroup and PinInput.

    5.25.0release notes

  • PasswordInput, PinInput, and FileUpload now consume Field context and receive invalid, disabled, readOnly, required, and ids.

    5.25.0release notesrelease notes

  • The readOnly prop now makes FileUpload read-only.

    5.25.0release notes

  • Programmatic value changes no longer dispatch a synthetic input event that can break controlled state.

    5.25.0release notesrelease notes

  • Exports the FieldItem component from the top-level package.

    5.25.0release notesrelease notes

  • Clicking non-interactive dropzone children now opens the file picker.

    5.25.0release notesrelease notes

  • File Upload exports FileError, FileMimeType, and FileRejection types.

    5.25.0release notes

  • Escape during drag or resize now cancels the operation and restores the original position or size.

    5.25.0release notes

  • Fixed open taking precedence over defaultOpen during initialization.

    5.25.0release notes

  • Fixed maximize/minimize restore reverting to (0, 0) in controlled mode.

    5.25.0release notes

  • Overlay close no longer steals focus from an element focused by the app, nested overlay close no longer throws in the described case, and Escape-returned elements show the focus ring.

    5.25.0release notes

  • Fixed trapping with a single effective tab stop and safer handling of disconnected initialFocus nodes.

    5.25.0release notesrelease notes

  • Number Input preserves the cursor's relative position while typing in the middle of a formatted value.

    5.25.0release notes

  • Returns the crop corners and output size in natural-image pixels for use with server-side croppers.

    5.25.0release notesrelease notes

  • Custom trigger elements now work when IDs are shared across floating components, including inside shadow roots.

    5.25.0release notesrelease notes

  • getCroppedImage() and getCropData() now return the region shown after rotating or flipping the image.

    5.25.0release notes

  • A controlled single-select Combobox now propagates its initial value to inputValue.

    5.25.0release notes

  • Fixed Safari focusin and pointer interaction races affecting nested popovers and selects within popovers.

    5.25.0release notesrelease notes

  • RootProvider strips options from value before forwarding it and no longer renders children twice.

    5.25.0release notes

  • Presence exit animations now work on subsequent toggles when lazyMount and unmountOnExit are used together.

    5.25.0release notesrelease notes

  • lazyMount and unmountOnExit now work for backdrops in Dialog, Drawer, NavigationMenu, Tabs, and Tour.

    5.25.0release notes

  • Pressing Enter with no highlighted item no longer calls event.preventDefault().

    5.25.0release notes

  • Listbox.ItemContext is now exported.

    5.25.0release notesrelease notes

  • Rehydrating defaultValue or value after fetching items now updates valueAsString.

    5.25.0release notes

  • NumberInput and Progress now pass locale from LocaleProvider to the underlying machine.

    5.25.0release notes

  • Carousel autoplay now respects loop: false and stops at the last slide.

    5.25.0release notes

  • In Solid and Svelte, machine exit actions no longer run when a component is disposed before the machine starts.

    5.25.0release notes

  • The paused prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Fixed Firefox flicker and added GPU acceleration.

    5.25.0release notes

  • Tags Input maxLength now applies to the edit input as well.

    5.25.0release notes

  • Context menus no longer flash at the top-left or remain stuck at (0,0) after a touch long-press.

    5.25.0release notesrelease notes

  • The highlightedValue prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • The triggerValue prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Quick diagonal pointer movement toward an open submenu no longer flashes highlights across sibling items.

    5.25.0release notesrelease notes

  • Removes the aggressive and redundant default aria-label.

    5.25.0release notesrelease notes

  • Cmd/Ctrl plus arrow keys now produce values on the step grid.

    5.25.0release notesrelease notes

  • setValue no longer throws when passed a number while formatOptions is set.

    5.25.0release notesrelease notes

  • Tree View now exposes node details in the callback.

    5.25.0release notes

  • Progress now works when orientation is set to vertical.

    5.25.0release notesrelease notes

  • Link triggers are marked disabled when they cannot navigate.

    5.25.0release notes

  • Fixed ellipsis display when there is only one page gap.

    5.25.0release notes

  • Pagination link-mode items and triggers render as anchors, so their hrefs navigate correctly.

    5.25.0release notes

  • Makes the visibility trigger keyboard accessible and removes its aria-expanded attribute.

    5.25.0release notes

  • RootProvider no longer spreads the machine value onto the root DOM element or renders children twice.

    5.25.0release notes

  • Number Input omits the input pattern when formatOptions is provided, avoiding native validation conflicts with formatted values.

    5.25.0release notes

  • Fixed a crash when typing the same character in a completed pin input.

    5.25.0release notesrelease notes

  • Delete and Backspace splice values left rather than leaving empty gaps.

    5.25.0release notesrelease notes

  • Backspace, click, ArrowRight, same-key skip, and roving tabIndex focus behavior were improved.

    5.25.0release notesrelease notes

  • Renders as a labelled group.

    5.25.0release notes

  • Drawer positioner uses pointer-events: none in non-modal mode so the page stays interactive.

    5.25.0release notesrelease notes

  • Fixed nested Popover z-index layering.

    5.25.0release notesrelease notes

  • Fixed elements becoming stuck in unmountSuspended during rapid state updates.

    5.25.0release notesrelease notes

  • The progressPercent calculation is fixed for countdown timers.

    5.25.0release notesrelease notes

  • Fixed inconsistent application of data-focus-visible and data-focus attributes.

    5.25.0release notesrelease notes

  • Fixed indicator animation on initial render and resize.

    5.25.0release notesrelease notes

  • Restored offsetLeft/offsetTop calculations for correct indicator positioning in scrollable containers.

    5.25.0release notesrelease notes

  • Group labels now render as span rather than orphan label elements, following the W3C ARIA pattern.

    5.25.0release notes

  • Fixed Rating Group becoming unfocusable by keyboard when its value is 0.

    5.25.0release notes

  • RootProvider now merges getRootProps() onto the root element.

    5.25.0release notes

  • Locks the actual scroll container when html, rather than body, scrolls.

    5.25.0release notesrelease notes

  • The highlightedValue prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • The open prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • The required state is now set correctly on the Select trigger.

    5.25.0release notesrelease notes

  • Prevents unwanted props from being forwarded to DOM elements.

    5.25.0release notes

  • HiddenSelect now emits correct values when custom objects are used with itemToValue.

    5.25.0release notesrelease notes

  • Rehydrating defaultValue or value after fetching items now updates valueAsString.

    5.25.0release notes

  • Fixed inverted year cell selectable state for years outside the visible decade or min/max range.

    5.25.0release notesrelease notes

  • Fixed selectedItems getting out of sync with value in controlled mode.

    5.25.0release notesrelease notes

  • Fixed setPosition and setSize so they work independently of drag or resize state.

    5.25.0release notes

  • Cmd/Ctrl plus arrow keys now produce values on the step grid.

    5.25.0release notesrelease notes

  • Thumb offset remains constant from the pointer during dragging to prevent value jumps.

    5.25.0release notesrelease notes

  • Fixed onValueChangeEnd not triggering for programmatic value changes.

    5.25.0release notes

  • Fixed thumb offset shifts during dragging and value jumps when dragging from an edge in contain alignment.

    5.25.0release notes

  • Fixes abrupt stopping while scrubbing and range thumbs getting stuck when dragged to the same position without minStepsBetweenThumbs.

    5.25.0release notes

  • Made slidesPerMove progression more predictable.

    5.25.0release notes

  • A null value is now recognized as controlled instead of falling back to internal state.

    5.25.0release notesrelease notes

  • Collapsed panels now size to collapsedSize rather than minSize.

    5.25.0release notesrelease notes

  • Applies data-focus only when the resize trigger is focused, not hovered.

    5.25.0release notesrelease notes

  • Disabled Splitter no longer shows a resize cursor or allows dragging.

    5.25.0release notes

  • Clicking a resize trigger now focuses it so arrow keys can resize the splitter.

    5.25.0release notesrelease notes

  • Fixed global cursor styles when Splitter is used in a shadow root.

    5.25.0release notesrelease notes

  • onResizeStart and onResizeEnd now fire for programmatic resizes.

    5.25.0release notes

  • Validation ensures startMs and targetMs are configured correctly.

    5.25.0release notesrelease notes

  • Observes the tab list size so the indicator updates when the list resizes without individual triggers changing size.

    5.25.0release notesrelease notes

  • Fixed indicator animation on initial render and resize.

    5.25.0release notesrelease notes

  • Fixed indicator position not updating when inactive tabs change size.

    5.25.0release notesrelease notes

  • Fixed indicator positioning when inactive tabs change size.

    5.25.0release notes

  • Custom values can be added with one Enter press when the integrated combobox has no highlighted item.

    5.25.0release notesrelease notes

  • Fixed item delete trigger not having data attributes attached.

    5.25.0release notesrelease notes

  • Native form submission now includes the current tags in FormData after tags are added, removed, or cleared.

    5.25.0release notesrelease notes

  • Timer configuration now validates startMs and targetMs.

    5.25.0release notes

  • The timer no longer continues beyond targetMs when the window is not visible.

    5.25.0release notesrelease notes

  • Prevents height flicker when expanding an overlapping toast stack by measuring heights without the scale transform.

    5.25.0release notesrelease notes

  • Restores role=region on the toast group so its aria-label is valid.

    5.25.0release notesrelease notes

  • Supports functional store updates and references the title and description only when they render.

    5.25.0release notes

  • A toast store can now be created without arguments.

    5.25.0release notes

  • The activeIds prop now writes changes back to the caller's variable when used with bind:.

    5.25.0release notes

  • Moves aria-labelledby from Root to Nav.

    5.25.0release notes

  • Fixed Tooltip not showing when scrolling with the pointer over its trigger.

    5.25.0release notes

  • Dismissing a tour from a step effect now runs cleanup and can fire the completed status.

    5.25.0release notesrelease notes

  • Tooltip step positioning no longer resets unexpectedly when the tour closes.

    5.25.0release notesrelease notes

  • A step action with action: skip now works when clicked.

    5.25.0release notesrelease notes

  • Step navigation events no longer fire while the tour is inactive, and popper styles are cleaned up when transitioning from tooltip to dialog steps.

    5.25.0release notesrelease notes

  • Tree traversal for querying the last node is fixed.

    5.25.0release notesrelease notes

  • Rehydrating defaultValue or value after fetching items now updates valueAsString for Combobox, Select, and Listbox.

    5.25.0release notesrelease notes