diff --git a/src/xlcalendar.tsx b/src/xlcalendar.tsx index d17376d..2a963a0 100644 --- a/src/xlcalendar.tsx +++ b/src/xlcalendar.tsx @@ -55,8 +55,14 @@ interface Data { const processCalendar = (cal: ProcessedEvent[]): Data => { const data: Data = { concurrent_event_count: 0, upcoming_count: 0 }; const now = Date.now(); + const seen = new Set(); for (let event of cal) { + const eventToken = `${event.start.valueOf()}|${event.summary}|${event.end.valueOf()}`; + if (seen.has(eventToken)) continue; + + seen.add(eventToken); + if (event.start.valueOf() > now) data.upcoming_count++; if (event.isFullDay) continue; @@ -299,7 +305,7 @@ const Main = ({ data, events }: { data: Data; events: ProcessedEvent[] }) => {