@@ -4,6 +4,66 @@ All notable changes to this project will be documented in this file.
44
55> For v0.x changelog, see the [ v0 branch] ( https://github.com/chakra-ui/zag/blob/v0/CHANGELOG.md )
66
7+ ## [ 1.31.0] ( ./#1.31.0 ) - 2025-12-05
8+
9+ ### Added
10+
11+ - ** Number Input** : Add ` onValueCommit ` callback that fires when the input loses focus or Enter is pressed
12+
13+ - ** Pagination**
14+ - Add ` getFirstTriggerProps() ` and ` getLastTriggerProps() ` methods for navigating to first/last page
15+ - Add ` boundaryCount ` parameter for controlling boundary pages (start/end)
16+ - Implement balanced pagination algorithm for consistent UI elements
17+ - Maintain visual consistency with max 7 elements regardless of total pages
18+
19+ - ** Tree View** : Added ` scrollToIndexFn ` prop to enable keyboard navigation in virtualized trees
20+
21+ ### Fixed
22+
23+ - ** Color Picker**
24+ - Add ` role="dialog" ` to color picker content when not inline to ensure proper ` aria-controls ` detection
25+ - Add ` aria-haspopup="dialog" ` to color picker trigger when not inline for better accessibility
26+
27+ - ** Date Picker** : Fix issue where date picker input does not update format when locale changes
28+
29+ - ** Listbox**
30+ - Fix issue in React where filtering items with an input would throw a
31+ ` flushSync was called from inside a lifecycle method ` warning
32+ - Fix issue where ` data-highlighted ` wasn't applied to the first item when using ` autoHighlight ` with input filtering
33+
34+ - ** Number Input**
35+ - Fixed issue where input element doesn't sync when ` formatOptions ` changes dynamically
36+ - Ensure cursor position is preserved when ` Enter ` key is pressed and formatting is triggered
37+ - Fix cursor jumping to start when value is changed externally via props while user is typing
38+
39+ - ** Pagination** : Fix ellipsis showing when only 1 page gap
40+
41+ - ** Radio Group**
42+ - Fix issue where ` radio-group ` machine no longer shows the ` indicator ` prematurely
43+ - Improve accessibility of radio group by adding ` invalid ` and ` required ` props with corresponding ` data-* ` and
44+ ` aria-* ` attributes
45+
46+ - ** Tabs** : Fix issue where ` tabs ` machine no longer shows the ` indicator ` prematurely
47+
48+ - ** Tooltip** : Fix tooltip not showing when scrolling with pointer over trigger
49+
50+ - ** Collapsible, Presence, Tour** : Fix machines setting reactive state in exit actions
51+
52+ ### Changed
53+
54+ - ** Tree View** : ` getVisibleNodes() ` now returns ` { node, indexPath }[] ` instead of ` node[] ` . Returning the index path
55+ perhaps the most useful use of this function, hence the change.
56+
57+ ``` tsx
58+ // Before
59+ const nodes = api .getVisibleNodes ()
60+ nodes .forEach ((node ) => console .log (node .id ))
61+
62+ // After
63+ const visibleNodes = api .getVisibleNodes ()
64+ visibleNodes .forEach (({ node }) => console .log (node .id ))
65+ ```
66+
767## [ 1.30.0] ( ./#1.30.0 ) - 2025-11-26
868
969### Added
0 commit comments