implement calendar event display with day indicators and overlay
- Add ExpandedEvent type to shared package for recurring event instances - Implement EventController and EventService with full CRUD operations - Server-side recurring event expansion via recurrenceExpander - Calendar grid shows orange dot indicator for days with events - Tap on day opens modal overlay with EventCards - EventCard component with Feather icons (calendar, clock, repeat, edit, trash) - EventsStore with Zustand for client-side event state management - Load events for visible grid range including adjacent month days - Add textPrimary, borderPrimary, eventIndicator to theme - Update test responses for multiple events on Saturdays
This commit is contained in:
@@ -4,9 +4,10 @@ import {
|
||||
DAY_TO_GERMAN,
|
||||
DAY_TO_GERMAN_SHORT,
|
||||
MONTH_TO_GERMAN,
|
||||
ExpandedEvent,
|
||||
} from "@caldav/shared";
|
||||
import { EventRepository } from "../services/interfaces";
|
||||
import { expandRecurringEvents, ExpandedEvent } from "./recurrenceExpander";
|
||||
import { expandRecurringEvents } from "./recurrenceExpander";
|
||||
|
||||
// Private formatting helpers
|
||||
|
||||
|
||||
@@ -1,10 +1,5 @@
|
||||
import { RRule, rrulestr } from "rrule";
|
||||
import { CalendarEvent } from "@caldav/shared";
|
||||
|
||||
export interface ExpandedEvent extends CalendarEvent {
|
||||
occurrenceStart: Date;
|
||||
occurrenceEnd: Date;
|
||||
}
|
||||
import { CalendarEvent, ExpandedEvent } from "@caldav/shared";
|
||||
|
||||
// Convert local time to "fake UTC" for rrule
|
||||
// rrule interprets all dates as UTC internally, so we need to trick it
|
||||
|
||||
Reference in New Issue
Block a user