From 79679b8a0716d1e9365886b9b6f8144e1694871b Mon Sep 17 00:00:00 2001 From: mickeypause Date: Mon, 17 Mar 2025 10:20:07 +0200 Subject: [PATCH] fix: all-day events calculation --- packages/react-native-calendar-kit/src/utils/eventUtils.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/react-native-calendar-kit/src/utils/eventUtils.ts b/packages/react-native-calendar-kit/src/utils/eventUtils.ts index 87be73df..b070aee5 100644 --- a/packages/react-native-calendar-kit/src/utils/eventUtils.ts +++ b/packages/react-native-calendar-kit/src/utils/eventUtils.ts @@ -231,8 +231,11 @@ export const divideAllDayEvents = ( ).toMillis(); const weekEndUnix = startOfWeek(eventEnd.toISODate(), firstDay).toMillis(); + const startWeekNumber = Math.floor(weekStartUnix / (7 * MILLISECONDS_IN_DAY)); + const endWeekNumber = Math.floor(weekEndUnix / (7 * MILLISECONDS_IN_DAY)); const diffWeeks = - Math.floor((weekEndUnix - weekStartUnix) / (7 * MILLISECONDS_IN_DAY)) + 1; + startWeekNumber === endWeekNumber ? 1 : endWeekNumber - startWeekNumber + 1; + const isSameDay = event._internal.startUnix === event._internal.endUnix; let eventStartUnix = eventStart.startOf('day').toMillis(); const eventEndUnix = isSameDay