diff --git a/src/features/HeaderFilters/components/DateFilter/helpers.tsx b/src/features/HeaderFilters/components/DateFilter/helpers.tsx index 7abcde87..1177b901 100644 --- a/src/features/HeaderFilters/components/DateFilter/helpers.tsx +++ b/src/features/HeaderFilters/components/DateFilter/helpers.tsx @@ -29,7 +29,7 @@ export const getDisplayDate = ({ year: date.getFullYear(), }) -const getWeekName = (date: Date, locale: string) => ( +export const getWeekName = (date: Date, locale: string) => ( new Intl.DateTimeFormat(locale || 'en', { weekday: 'short' }).format(date) ) diff --git a/src/features/HeaderFilters/components/DateFilter/hooks/index.tsx b/src/features/HeaderFilters/components/DateFilter/hooks/index.tsx index cb0c7fdf..8baecd1b 100644 --- a/src/features/HeaderFilters/components/DateFilter/hooks/index.tsx +++ b/src/features/HeaderFilters/components/DateFilter/hooks/index.tsx @@ -1,3 +1,5 @@ +/* eslint-disable no-console */ +/* eslint-disable no-debugger */ import { MouseEvent, useEffect, @@ -11,7 +13,11 @@ import { useToggle } from 'hooks' import { useLexicsStore } from 'features/LexicsStore' import { useHeaderFiltersStore } from 'features/HeaderFilters' -import { getDisplayDate, getWeeks } from '../helpers' +import { + getDisplayDate, + getWeekName, + getWeeks, +} from '../helpers' export const useDateFilter = () => { const { @@ -41,6 +47,7 @@ export const useDateFilter = () => { const filters = localStorage.getItem('filters') const parseFilters = filters && JSON.parse(filters) const lastDate = parseFilters?.selectedDate + const weekName = getWeekName(selectedDate, 'en') useEffect(() => { if (lastDate === selectedDate.getDate() && parseFilters @@ -57,11 +64,13 @@ export const useDateFilter = () => { }, [selectedDate]) const onPreviousClick = () => { - setSelectedDate(addDays(selectedDate, -7)) + const numberAddDays = weekName === 'Mon' ? -1 : -7 + setSelectedDate(addDays(selectedDate, numberAddDays)) } const onNextClick = () => { - setSelectedDate(addDays(selectedDate, 7)) + const numberAddDays = weekName === 'Sun' ? 1 : 7 + setSelectedDate(addDays(selectedDate, numberAddDays)) } const onDateChange = (newDate: Date | null) => {