From 88ae4a102b317e93b8e35cc8dee59423db39365f Mon Sep 17 00:00:00 2001 From: idaho <664101+idaho@users.noreply.github.com> Date: Sat, 30 Dec 2023 20:22:30 +0100 Subject: [PATCH] fix all days event doesn't work anymore (#150) --- src/utils/findActiveEvent.test.ts | 2 +- src/utils/isTodayAfter.test.ts | 7 ++----- src/utils/isTodayAfter.ts | 20 ++++++++++++++------ 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/src/utils/findActiveEvent.test.ts b/src/utils/findActiveEvent.test.ts index 243ec3e..5f39c09 100644 --- a/src/utils/findActiveEvent.test.ts +++ b/src/utils/findActiveEvent.test.ts @@ -17,7 +17,7 @@ describe('findActiveEvent', (): void => { test('the whole day event today cause its before 10 o`clock', async () => { const events = normaliseEvents(calendarEvents as RawCalendarEvent[]); - const now = new Date(`2023-12-10T09:59:59${offset}`); + const now = new Date(`2023-12-10T09:59:59`); const dropAfter = isTodayAfter(now, '10:00:00'); const result = findActiveEvent(events, { diff --git a/src/utils/isTodayAfter.test.ts b/src/utils/isTodayAfter.test.ts index f8c160d..68b6b1f 100644 --- a/src/utils/isTodayAfter.test.ts +++ b/src/utils/isTodayAfter.test.ts @@ -1,12 +1,9 @@ /* eslint-disable @typescript-eslint/naming-convention */ -import { getTimeZoneOffset } from './getTimeZoneOffset'; import { isTodayAfter } from './isTodayAfter'; describe('isTodayAfter', (): void => { - const offset = getTimeZoneOffset(); - test('11:10:00 is after 11:00:00', async () => { - const date = new Date(`1970-01-01T11:10:00.000${offset}`); + const date = new Date(`1970-01-01T11:10:00.000`); const result = isTodayAfter(date, '11:00:00'); @@ -14,7 +11,7 @@ describe('isTodayAfter', (): void => { }); test('11:10:00 is before 11:10:01', async () => { - const date = new Date(`1970-01-01T11:10:00.000${offset}`); + const date = new Date(`1970-01-01T11:10:00.000`); const result = isTodayAfter(date, '11:10:01'); diff --git a/src/utils/isTodayAfter.ts b/src/utils/isTodayAfter.ts index 04446b6..98ba8fa 100644 --- a/src/utils/isTodayAfter.ts +++ b/src/utils/isTodayAfter.ts @@ -1,13 +1,21 @@ -import { getDayFromDate } from './getDayFromDate'; -import { getTimeZoneOffset } from './getTimeZoneOffset'; - const isTodayAfter = (now: Date, dropAfter: string): boolean => { const [ hours, minutes, seconds ] = dropAfter.split(':'); - const dropAfterDateString = `${getDayFromDate(now)}T${hours}:${minutes}:${seconds}.000${getTimeZoneOffset()}`; - const dropAfterDate = new Date(dropAfterDateString); + if (now.getHours() < Number(hours)) { + return false; + } + if (now.getHours() > Number(hours)) { + return true; + } + + if (now.getMinutes() > Number(minutes)) { + return true; + } + if (now.getSeconds() >= Number(seconds)) { + return true; + } - return now > dropAfterDate; + return false; }; export {