Frontmatter
| id | 8098 |
| title | Calendar: Fix YearComponent state regression & enhance State Provider |
| state | Closed |
| labels | bugairegression |
| assignees | tobiu |
| createdAt | Dec 12, 2025, 10:17 PM |
| updatedAt | Dec 12, 2025, 10:18 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8098 |
| author | tobiu |
| commentsCount | 0 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Dec 12, 2025, 10:18 PM |
Description
The calendar's
YearComponentexhibited a regression where changing the year resulted in visual artifacts or reverted state. This was caused by in-place mutation ofDateobjects which are shared by reference with theStateProvider.Changes
onNavButtonClickandonWheelto usestateProvider.setData()instead of modifying the local config.Neo.state.Providerto automatically cloneDateobjects when setting data. This ensures the provider maintains a clean source of truth and prevents mutation-by-reference bugs.adjustValue(value)method.processDataObjectand#setConfigValueto useadjustValue.Acceptance Criteria
YearComponentnavigation works correctly (no double logs, no reverted state).StateProviderclonesDateobjects on set.