From f695e93f208c81eb96a79bfa136276d2b554c80c Mon Sep 17 00:00:00 2001 From: RoccoSmit Date: Mon, 9 Sep 2024 11:19:12 +1000 Subject: [PATCH] fix: update first day logic for months starting on Sunday (#3896) * Update calendar logic to accomodate for months starting on Sunday * Apply suggestions from code review --------- Co-authored-by: boojack --- web/src/components/ActivityCalendar.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/src/components/ActivityCalendar.tsx b/web/src/components/ActivityCalendar.tsx index 9aaf3ad08..d59445ce0 100644 --- a/web/src/components/ActivityCalendar.tsx +++ b/web/src/components/ActivityCalendar.tsx @@ -39,7 +39,7 @@ const ActivityCalendar = (props: Props) => { const year = dayjs(monthStr).toDate().getFullYear(); const month = dayjs(monthStr).toDate().getMonth() + 1; const dayInMonth = new Date(year, month, 0).getDate(); - const firstDay = (new Date(year, month - 1, 1).getDay() - weekStartDayOffset) % 7; + const firstDay = ((new Date(year, month - 1, 1).getDay() - weekStartDayOffset) % 7 + 7) % 7; const lastDay = new Date(year, month - 1, dayInMonth).getDay() - weekStartDayOffset; const WEEK_DAYS = [t("days.sun"), t("days.mon"), t("days.tue"), t("days.wed"), t("days.thu"), t("days.fri"), t("days.sat")]; const weekDays = WEEK_DAYS.slice(weekStartDayOffset).concat(WEEK_DAYS.slice(0, weekStartDayOffset));