diff --git a/package.json b/package.json index a26720f..c9d925f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "my-weekly-todo-list", - "version": "1.62.1", + "version": "1.62.2", "description": "A web-based weekly task management application that organizes to-dos and calendar events in a single, intuitive weekly view", "main": "index.js", "scripts": { diff --git a/src/components/WeeklyView.tsx b/src/components/WeeklyView.tsx index ffe8f05..f59d666 100644 --- a/src/components/WeeklyView.tsx +++ b/src/components/WeeklyView.tsx @@ -169,6 +169,10 @@ interface CalendarEvent { calendarColor?: string; editable?: boolean; recurringEventId?: string; + isRecurring?: boolean; + description?: string; + location?: string; + url?: string; } interface SomedayList { diff --git a/src/lib/calendar-events.ts b/src/lib/calendar-events.ts index 147aa43..c6e0ce5 100644 --- a/src/lib/calendar-events.ts +++ b/src/lib/calendar-events.ts @@ -367,6 +367,8 @@ export const getCalendarEvents = async ( start: event.start, end: event.end, location: event.location, + recurringEventId: event.recurringEventId, + isRecurring: !!event.recurringEventId, source: 'google' as const, calendarId, calendarTitle: calendarData?.summary || calendarData?.title || 'Google Calendar', @@ -625,6 +627,8 @@ export const getCalendarEvents = async ( start: event.start, end: event.end, location: event.location || '', + recurringEventId: event.recurringEventId, + isRecurring: event.isRecurring ?? false, source: 'outlook' as const, calendarId, calendarTitle: calendarData?.title || 'Outlook Calendar', diff --git a/src/lib/outlook-calendar.ts b/src/lib/outlook-calendar.ts index ff87bd9..04c2d9a 100644 --- a/src/lib/outlook-calendar.ts +++ b/src/lib/outlook-calendar.ts @@ -227,6 +227,8 @@ export const getUpcomingEvents = async ( location: event.location?.displayName, htmlLink: event.webLink, allDay: event.isAllDay, + recurringEventId: event.seriesMasterId || undefined, + isRecurring: event.type === 'occurrence' || event.type === 'exception' || event.type === 'seriesMaster', reminders: event.isReminderOn && event.reminderMinutesBeforeStart != null ? [{ method: 'popup', minutes: event.reminderMinutesBeforeStart }] : undefined,