From 455e86571a9402359e38090c83455384c60b342f Mon Sep 17 00:00:00 2001 From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Wed, 5 Nov 2025 08:11:24 -0800 Subject: [PATCH] Chore: improve event hash generation in iCal integration (#5938) --- src/widgets/calendar/integrations/ical.jsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/widgets/calendar/integrations/ical.jsx b/src/widgets/calendar/integrations/ical.jsx index 764e57f41..1bf5ebee6 100644 --- a/src/widgets/calendar/integrations/ical.jsx +++ b/src/widgets/calendar/integrations/ical.jsx @@ -106,13 +106,19 @@ export default function Integration({ config, params, setEvents, hideErrors, tim }; const eventsToAdd = []; - events.forEach((event, index) => { + events.forEach((event) => { const occurrences = getOcurrencesFromRange(event); occurrences.forEach((icalDate) => { const date = icalDate.toJSDate(); - const hash = simpleHash(`${event.id}-${event.title}-${index}-${date.toString()}`); + const occurrenceTimestamp = date.getTime(); + const eventIdentifier = + event.id ?? + simpleHash( + `${event.title ?? ""}-${event.type ?? ""}-${event.status ?? ""}-${event.url ?? ""}-${event.location ?? ""}`, + ); + const hash = simpleHash(`${eventIdentifier}-${occurrenceTimestamp}`); let title = event.title; if (showName) {