diff options
Diffstat (limited to 'apps/files_reminders/src/shared/utils.ts')
-rw-r--r-- | apps/files_reminders/src/shared/utils.ts | 39 |
1 files changed, 19 insertions, 20 deletions
diff --git a/apps/files_reminders/src/shared/utils.ts b/apps/files_reminders/src/shared/utils.ts index 453e94e76d9..605b429a378 100644 --- a/apps/files_reminders/src/shared/utils.ts +++ b/apps/files_reminders/src/shared/utils.ts @@ -37,7 +37,10 @@ export const getDateTime = (dateTime: DateTimePreset): null | Date => { const evening = moment() .startOf('day') .add(18, 'hour') - if (now.isSameOrAfter(evening)) { + const cutoff = evening + .clone() + .subtract(1, 'hour') + if (now.isSameOrAfter(cutoff)) { return null } return evening.toDate() @@ -53,36 +56,32 @@ export const getDateTime = (dateTime: DateTimePreset): null | Date => { [DateTimePreset.ThisWeekend]: () => { const today = moment() + if ( + [ + 5, // Friday + 6, // Saturday + 7, // Sunday + ].includes(today.isoWeekday()) + ) { + return null + } const saturday = moment() .startOf('isoWeek') .add(5, 'day') .add(8, 'hour') - const sunday = moment() - .startOf('isoWeek') - .add(6, 'day') - .add(8, 'hour') - if (today.isSame(saturday, 'date')) { - return saturday - .add(1, 'day') - .toDate() - } - if (today.isSame(sunday, 'date')) { - return sunday - .add(1, 'week') - .startOf('isoWeek') - .add(5, 'day') - .add(8, 'hour') - .toDate() - } return saturday.toDate() }, [DateTimePreset.NextWeek]: () => { - const day = moment() + const today = moment() + if (today.isoWeekday() === 7) { // Sunday + return null + } + const workday = moment() .startOf('isoWeek') .add(1, 'week') .add(8, 'hour') - return day.toDate() + return workday.toDate() }, } |