27 lines
773 B
Markdown
27 lines
773 B
Markdown
---
|
|
id: task-8
|
|
title: Implement calendar sync functionality
|
|
status: Done
|
|
assignee: []
|
|
created_date: '2026-01-02 14:29'
|
|
updated_date: '2026-01-02 17:00'
|
|
labels: []
|
|
dependencies: []
|
|
priority: medium
|
|
---
|
|
|
|
## Description
|
|
|
|
<!-- SECTION:DESCRIPTION:BEGIN -->
|
|
Wire up the 'Sync all calendars' button to trigger a re-sync of all Google Calendar sources via the backend API
|
|
<!-- SECTION:DESCRIPTION:END -->
|
|
|
|
## Implementation Notes
|
|
|
|
- Added `syncAllSources()` function to api.ts that fetches active sources and syncs each in parallel
|
|
- Updated CalendarSidebar with sync button handler:
|
|
- Shows loading spinner during sync
|
|
- Shows success (green) or error (red) status
|
|
- Invalidates React Query cache to refetch events and sources
|
|
- Auto-resets to idle state after 3 seconds
|