1.2 KiB
1.2 KiB
Task: Curated catalog and ICS import sync
Goal
Add searchable curated calendar catalog metadata and background .ics import sync.
Feature Spec
docs/FEATURES/calendar-integrations.md
Scope
- Add curated calendar catalog storage or seed data for trusted external calendar sources.
- Add catalog search/filter APIs by country, region, language, category, culture/religion, and provider.
- Add
.icsfetch, parse, recurrence expansion, and normalized event storage. - Support manual refresh for manageable sources.
- Track last attempted sync, last successful sync, and last sync error.
- Preserve all-day events without timezone date shifting.
- Respect timezone-bearing timed events and floating timed events according to the feature spec.
- Add backend tests for parsing, recurrence expansion, timezone behavior, and sync error handling.
Relevant Files
backend/src/Socialize.Api/Modules/CalendarIntegrations/backend/src/Socialize.Api/Data/AppDbContext.csbackend/tests/Socialize.Tests/docs/FEATURES/calendar-integrations.mdshared/openapi/openapi.jsonfrontend/src/api/schema.d.ts
Validation
dotnet build backend/Socialize.slnx
dotnet test backend/Socialize.slnx
./scripts/update-openapi.sh