Files
familysync/apps/pwa/package.json
T
Lucas Berger 5d82f859fd fix(02): wire calendar-controls plugin and Zustand selectors
Bug A — navigation no-op: replace $app.calendarState private-API poking
with the official @schedule-x/calendar-controls plugin. CalendarShell
creates the plugin once via useState stable initialiser and passes it to
ViewToolbar as `controls`. ViewToolbar calls controls.setDate(PlainDate)
and controls.setView(id) for all navigation and view-switching. Step size
matches the active view: day→±1 day, week→±1 week, month-*→±1 month.

Bug B — popover-open calendar flash: replace the unselected
useCalendarStore() destructuring in CalendarShell and ViewToolbar with
per-field selectors. Neither component now subscribes to openEventId, so
popover open/close no longer triggers a re-render that rebuilds the
Schedule-X config.

- Add @schedule-x/calendar-controls@4.6.0 dependency
- Update CalendarShell.test.tsx: add vi.mock for calendar-controls
- typecheck, vitest (37/37), build all pass
2026-06-05 14:45:27 -04:00

40 lines
1.0 KiB
JSON

{
"name": "@familysync/pwa",
"version": "0.1.0",
"private": true,
"type": "module",
"scripts": {
"dev": "vite",
"build": "tsc && vite build",
"preview": "vite preview",
"typecheck": "tsc --noEmit",
"test": "vitest run"
},
"dependencies": {
"@schedule-x/calendar": "4.6.0",
"@schedule-x/calendar-controls": "4.6.0",
"@schedule-x/event-modal": "4.6.0",
"@schedule-x/events-service": "4.6.0",
"@schedule-x/react": "4.1.0",
"@schedule-x/theme-default": "4.6.0",
"@tanstack/react-query": "5.101.0",
"ical.js": "2.2.1",
"lucide-react": "1.17.0",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"temporal-polyfill": "0.3.2",
"zustand": "5.0.14"
},
"devDependencies": {
"@testing-library/jest-dom": "^6.6.3",
"@testing-library/react": "^16.3.0",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitejs/plugin-react": "^4.3.0",
"jsdom": "^26.1.0",
"typescript": "^5.5.0",
"vite": "8.0.16",
"vitest": "^4.1.8"
}
}