Releases: chakra-ui/ark
Releases · chakra-ui/ark
@ark-ui/solid@5.33.0
Added
-
Date Picker: Added non-Gregorian calendar support via
createCalendarprop (Persian, Buddhist, Islamic, Hebrew,
and other calendar systems)import { PersianCalendar } from "@internationalized/date" function createCalendar(identifier) { switch (identifier) { case "persian": return new PersianCalendar() default: throw new Error(`Unsupported calendar: ${identifier}`) } } <DatePicker.Root locale="fa-IR" createCalendar={createCalendar}> {/* ... */} </DatePicker.Root>
-
Date Picker: Added
data-typeattribute to weekend table header and cell
Fixed
- Combobox: Fixed
onValueChangereturning emptyitemsarray when using controlled value - Popover: Fixed nested popover z-index layering
- Toast: Fixed types to ensure
parent/indexare exposed as props andexpand/collapseare exposed on the
store - Radio Group, Listbox, Progress, Segment Group: Fixed group labels rendering orphan label elements; now render as
spanper W3C ARIA pattern
@ark-ui/react@5.33.0
Added
-
Date Picker: Added non-Gregorian calendar support via
createCalendarprop (Persian, Buddhist, Islamic, Hebrew,
and other calendar systems)import { PersianCalendar } from "@internationalized/date" function createCalendar(identifier) { switch (identifier) { case "persian": return new PersianCalendar() default: throw new Error(`Unsupported calendar: ${identifier}`) } } <DatePicker.Root locale="fa-IR" createCalendar={createCalendar}> {/* ... */} </DatePicker.Root>
-
Date Picker: Added
data-typeattribute to weekend table header and cell
Fixed
- Combobox: Fixed
onValueChangereturning emptyitemsarray when using controlled value - Popover: Fixed nested popover z-index layering
- Toast: Fixed types to ensure
parent/indexare exposed as props andexpand/collapseare exposed on the
store - Radio Group, Listbox, Progress, Segment Group: Fixed group labels rendering orphan label elements; now render as
spanper W3C ARIA pattern
@ark-ui/vue@5.32.0
Added
- Locale: Added
useDateFormatterhook for localized date formatting using@internationalized/date - Swap: Added new
Swapcomponent for toggling between two visual states with CSS animations using dual presence
instances - Checkbox: Added
maxSelectedValuesprop toCheckboxGroupto limit the number of selected values - Drawer: Replaced
BottomSheetwith newDrawercomponent supporting multi-directional swipe viaswipeDirection
prop (up,down,left,right), a newPositionerpart, andsnapToSequentialPointsoption - Date Picker:
- Added
focusoption toapi.clearValue({ focus?: boolean }) - Added
api.setTime(time, index?)for date-time picker support - Added
maxSelectedDatesprop to limit selected dates inmultipleselection mode - Added
api.isMaxSelectedto check if maximum number of dates has been selected - Added
openOnClickprop to open the calendar when clicking the input field - Added
showWeekNumberssupport to display ISO 8601 week number column in the day view
- Added
- Popover: Added
sizeMiddlewarepositioning option to optionally disable the size middleware - Select: Added
autoCompleteprop for browser autofill hints
Fixed
- useForwardExpose: Fixed crash when element bound with
forwardRefdoes not exist (e.g. conditionally rendered
withv-if) - Combobox:
- Fixed
aria-selectedbeing set on highlighted items instead of selected items - Fixed
selectedItemsgetting out of sync withvaluein controlled mode - Fixed item disabled state not accounting for root-level
disabledprop
- Fixed
- Date Picker:
- Fixed
api.selectToday()sending incorrect value format - Preserve time/timezone when selecting new dates (
CalendarDateTimeandZonedDateTime) - Improved focus management in trigger-only mode
- Fixed
- Dialog: Fixed non-modal dialog closing on outside click when
modalisfalse - Listbox: Fixed DOM IDs
- Number Input: Fixed
invalidprop being ignored when value is out of range - Popover: Improved performance by reducing style recalculations when scrolling
- Select: Fixed autofill not updating value when hidden select value changes
@ark-ui/solid@5.32.0
Added
- Locale: Added
useDateFormatterhook for localized date formatting using@internationalized/date - Swap: Added new
Swapcomponent for toggling between two visual states with CSS animations using dual presence
instances - Checkbox: Added
maxSelectedValuesprop toCheckboxGroupto limit the number of selected values - Drawer: Replaced
BottomSheetwith newDrawercomponent supporting multi-directional swipe viaswipeDirection
prop (up,down,left,right), a newPositionerpart, andsnapToSequentialPointsoption - Date Picker:
- Added
focusoption toapi.clearValue({ focus?: boolean }) - Added
api.setTime(time, index?)for date-time picker support - Added
maxSelectedDatesprop to limit selected dates inmultipleselection mode - Added
api.isMaxSelectedto check if maximum number of dates has been selected - Added
openOnClickprop to open the calendar when clicking the input field - Added
showWeekNumberssupport to display ISO 8601 week number column in the day view
- Added
- Popover: Added
sizeMiddlewarepositioning option to optionally disable the size middleware - Select: Added
autoCompleteprop for browser autofill hints
Fixed
- Combobox:
- Fixed
aria-selectedbeing set on highlighted items instead of selected items - Fixed
selectedItemsgetting out of sync withvaluein controlled mode - Fixed item disabled state not accounting for root-level
disabledprop
- Fixed
- Date Picker:
- Fixed
api.selectToday()sending incorrect value format - Preserve time/timezone when selecting new dates (
CalendarDateTimeandZonedDateTime) - Improved focus management in trigger-only mode
- Fixed
- Dialog: Fixed non-modal dialog closing on outside click when
modalisfalse - Listbox: Fixed DOM IDs
- Number Input: Fixed
invalidprop being ignored when value is out of range - Popover: Improved performance by reducing style recalculations when scrolling
- Select: Fixed autofill not updating value when hidden select value changes
@ark-ui/react@5.32.0
Added
- Locale: Added
useDateFormatterhook for localized date formatting using@internationalized/date - Swap: Added new
Swapcomponent for toggling between two visual states with CSS animations using dual presence
instances - Checkbox: Added
maxSelectedValuesprop toCheckboxGroupto limit the number of selected values - Drawer: Replaced
BottomSheetwith newDrawercomponent supporting multi-directional swipe viaswipeDirection
prop (up,down,left,right), a newPositionerpart, andsnapToSequentialPointsoption - Date Picker:
- Added
focusoption toapi.clearValue({ focus?: boolean }) - Added
api.setTime(time, index?)for date-time picker support - Added
maxSelectedDatesprop to limit selected dates inmultipleselection mode - Added
api.isMaxSelectedto check if maximum number of dates has been selected - Added
openOnClickprop to open the calendar when clicking the input field - Added
showWeekNumberssupport to display ISO 8601 week number column in the day view
- Added
- Popover: Added
sizeMiddlewarepositioning option to optionally disable the size middleware - Select: Added
autoCompleteprop for browser autofill hints
Fixed
- Combobox:
- Fixed
aria-selectedbeing set on highlighted items instead of selected items - Fixed
selectedItemsgetting out of sync withvaluein controlled mode - Fixed item disabled state not accounting for root-level
disabledprop
- Fixed
- Date Picker:
- Fixed
api.selectToday()sending incorrect value format - Preserve time/timezone when selecting new dates (
CalendarDateTimeandZonedDateTime) - Improved focus management in trigger-only mode
- Fixed
- Dialog: Fixed non-modal dialog closing on outside click when
modalisfalse - Listbox: Fixed DOM IDs
- Number Input: Fixed
invalidprop being ignored when value is out of range - Popover: Improved performance by reducing style recalculations when scrolling
- Select: Fixed autofill not updating value when hidden select value changes
@ark-ui/vue@5.31.0
Added
- Date Picker: Added
ValueTextcomponent for displaying selected date value(s) with placeholder support and scoped
slot for custom formatting - Scroll Area: Added overflow CSS variables (
--scroll-area-overflow-{x,y}-{start,end}) for scroll fade effects - Slider: Added
thumbCollisionBehaviorprop (none,push,swap) - Steps: Added
isStepValid,isStepSkippable, andonStepInvalidfor validation support - Tags Input: Added
placeholderprop (shown only when no tags exist) - Tooltip: Added
data-instantattribute for instant animations
Fixed
- Auto Resize: Fixed change event not emitted after clearing controlled textarea
- Color Picker, Combobox, Date Picker, Dialog, Hover Card, Menu, Popover, Select, Tooltip, Tour: Fixed
exitCompleteevent not being exposed from root component - Date Picker: Fixed
visibleRangeTextto show correct format based on current view (year/month/day) - Dismissable: Fixed issue where closing a nested dialog/popover would incorrectly close its parent layers
- Menu: Fixed glitchy submenu behavior when hovering between trigger items quickly
- Checkbox: Fixed individual checkbox props being overridden by
CheckboxGroup - Factory: Fixed error when first child doesn't exist before merging props
- Scroll Area: Fixed
ScrollAreaRootProvidernot bindingrootPropscorrectly - Collection, Tree View: Fixed initial focus when first node/branch is disabled
- Color Picker: Fixed color not updating when selecting black shades in controlled mode
- Floating Panel: Fixed double-click on minimized title bar incorrectly maximizing
- Image Cropper: Fixed
reset()destroying cropper, prop changes not updating instantly, and panning bounds - Number Input: Fixed cursor positioning after clicking label or scrubbing
- Pagination: Fixed next trigger not disabled when
countis0 - Slider: Fixed thumb drag from edge in
thumbAlignment="contain"mode - Switch: Fixed
api.toggleChecked()not working - Toast: Fixed toasts created before state machine connects not showing
- Tour: Fixed janky scroll between steps
@ark-ui/svelte@5.16.0
Added
- Date Picker: Added
ValueTextcomponent for displaying selected date value(s) with placeholder support and
snippet for custom formatting - Scroll Area: Added overflow CSS variables (
--scroll-area-overflow-{x,y}-{start,end}) for scroll fade effects - Slider: Added
thumbCollisionBehaviorprop (none,push,swap) - Steps: Added
isStepValid,isStepSkippable, andonStepInvalidfor validation support - Tags Input: Added
placeholderprop (shown only when no tags exist) - Tooltip: Added
data-instantattribute for instant animations
Fixed
- Auto Resize: Fixed change event not emitted after clearing controlled textarea
- Date Picker: Fixed
visibleRangeTextto show correct format based on current view (year/month/day) - Dismissable: Fixed issue where closing a nested dialog/popover would incorrectly close its parent layers
- Menu: Fixed glitchy submenu behavior when hovering between trigger items quickly
- Checkbox: Fixed individual checkbox props being overridden by
CheckboxGroup - Factory: Fixed textarea hydration marker issue
- Collection, Tree View: Fixed initial focus when first node/branch is disabled
- Color Picker: Fixed color not updating when selecting black shades in controlled mode
- Floating Panel: Fixed double-click on minimized title bar incorrectly maximizing
- Image Cropper: Fixed
reset()destroying cropper, prop changes not updating instantly, and panning bounds - Number Input: Fixed cursor positioning after clicking label or scrubbing
- Pagination: Fixed next trigger not disabled when
countis0 - Slider: Fixed thumb drag from edge in
thumbAlignment="contain"mode - Switch: Fixed
api.toggleChecked()not working - Toast: Fixed toasts created before state machine connects not showing
- Tour: Fixed janky scroll between steps
@ark-ui/solid@5.31.0
Added
- Date Picker: Added
ValueTextcomponent for displaying selected date value(s) with placeholder support and render
prop for custom formatting - Scroll Area: Added overflow CSS variables (
--scroll-area-overflow-{x,y}-{start,end}) for scroll fade effects - Slider: Added
thumbCollisionBehaviorprop (none,push,swap) - Steps: Added
isStepValid,isStepSkippable, andonStepInvalidfor validation support - Tags Input: Added
placeholderprop (shown only when no tags exist) - Tooltip: Added
data-instantattribute for instant animations
Fixed
- Auto Resize: Fixed change event not emitted after clearing controlled textarea
- Date Picker: Fixed
visibleRangeTextto show correct format based on current view (year/month/day) - Dismissable: Fixed issue where closing a nested dialog/popover would incorrectly close its parent layers
- Menu: Fixed glitchy submenu behavior when hovering between trigger items quickly
- SSR: Fixed Deno SSR crashes by replacing native HTML elements with
arkfactory components - Checkbox: Fixed individual checkbox props being overridden by
CheckboxGroup - Collection, Tree View: Fixed initial focus when first node/branch is disabled
- Color Picker: Fixed color not updating when selecting black shades in controlled mode
- Floating Panel: Fixed double-click on minimized title bar incorrectly maximizing
- Image Cropper: Fixed
reset()destroying cropper, prop changes not updating instantly, and panning bounds - Number Input: Fixed cursor positioning after clicking label or scrubbing
- Pagination: Fixed next trigger not disabled when
countis0 - Slider: Fixed thumb drag from edge in
thumbAlignment="contain"mode - Switch: Fixed
api.toggleChecked()not working - Toast: Fixed toasts created before state machine connects not showing
- Tour: Fixed janky scroll between steps
@ark-ui/react@5.31.0
Added
- Date Picker: Added
ValueTextcomponent for displaying selected date value(s) with placeholder support and render
prop for custom formatting - Scroll Area: Added overflow CSS variables (
--scroll-area-overflow-{x,y}-{start,end}) for scroll fade effects - Slider: Added
thumbCollisionBehaviorprop (none,push,swap) - Steps: Added
isStepValid,isStepSkippable, andonStepInvalidfor validation support - Tags Input: Added
placeholderprop (shown only when no tags exist) - Tooltip: Added
data-instantattribute for instant animations
Fixed
- Auto Resize: Fixed change event not emitted after clearing controlled textarea
- Date Picker: Fixed
visibleRangeTextto show correct format based on current view (year/month/day) - Dismissable: Fixed issue where closing a nested dialog/popover would incorrectly close its parent layers
- Menu: Fixed glitchy submenu behavior when hovering between trigger items quickly
- Checkbox: Fixed individual checkbox props being overridden by
CheckboxGroup - Collection, Tree View: Fixed initial focus when first node/branch is disabled
- Color Picker: Fixed color not updating when selecting black shades in controlled mode
- Floating Panel: Fixed double-click on minimized title bar incorrectly maximizing
- Image Cropper: Fixed
reset()destroying cropper, prop changes not updating instantly, and panning bounds - Number Input: Fixed cursor positioning after clicking label or scrubbing
- Pagination: Fixed next trigger not disabled when
countis0 - Slider: Fixed thumb drag from edge in
thumbAlignment="contain"mode - Switch: Fixed
api.toggleChecked()not working - Toast: Fixed toasts created before state machine connects not showing
- Tour: Fixed janky scroll between steps
@ark-ui/vue@5.30.0
Added
- Date Picker: Added
requiredandinvalidprops - Number Input: Added
onValueCommitcallback that fires when the input loses focus or Enter is pressed - Pagination:
- Added
FirstTriggerandLastTriggercomponents for navigating to first/last page - Added
boundaryCountparameter for controlling boundary pages (start/end) - Implemented balanced pagination algorithm for consistent UI with max 7 elements
- Added
- Radio Group: Added
invalidandrequiredprops with correspondingdata-*andaria-*attributes - Tree View: Added
scrollToIndexFnprop to enable keyboard navigation in virtualized trees
Fixed
- Accordion, Menu: Fixed issue where querying elements by
aria-controlsattribute could fail when lazy mounting the content - Color Picker: Added
role="dialog"to content andaria-haspopup="dialog"to trigger when not inline for better accessibility - Date Picker: Fixed issue where date picker input does not update format when locale changes
- Floating Panel:
- Fixed
dirprop now properly delegated to all panel parts - Fixed double-click behavior improvements and to check
event.defaultPreventedfor custom behavior
- Fixed
- Listbox:
- Fixed issue where
data-highlightedwasn't applied to the first item when usingautoHighlightwith input filtering
- Fixed issue where
- Number Input:
- Fixed improved controlled usage sync
- Fixed issue where input element doesn't sync when
formatOptionschanges dynamically - Ensured cursor position is preserved when
Enterkey is pressed and formatting is triggered - Fixed cursor jumping to start when value is changed externally via props while user is typing
- Pagination: Fixed ellipsis showing when only 1 page gap
- Rating Group: Fixed issue where rating group becomes unfocusable via keyboard when value is 0
- Tooltip: Fixed tooltip not showing when scrolling with pointer over trigger
Changed
- Tree View:
getVisibleNodes()now returns{ node, indexPath }[]instead ofnode[]