diff --git a/src/hooks/useDatePicker.spec.tsx b/src/hooks/useDatePicker.spec.tsx index cc853c3..ba97c14 100644 --- a/src/hooks/useDatePicker.spec.tsx +++ b/src/hooks/useDatePicker.spec.tsx @@ -271,24 +271,16 @@ describe('useDatePicker hook', () => { }) }) describe('highlighting today', () => { - const getDayByDate: ( + const getDayByDate = ( calendarWeekDays: { isToday: boolean - zdt: Temporal.ZonedDateTime + dateValue: string }[][], dayToFind: string - ) => { calendarDate: string; isToday: boolean }[] = ( - calendarWeekDays, - dayToFind ) => { - const days = calendarWeekDays - .flatMap((week) => week) - .map((day) => ({ - ...day, - calendarDate: formatDate(day.zdt, undefined, 'YYYY-MM-DD'), - })) - - return days.filter((day) => day.calendarDate === dayToFind) + const days = calendarWeekDays.flatMap((week) => week) + + return days.filter((day) => day.dateValue === dayToFind) } it('should highlight today date in a an ethiopic calendar', () => { @@ -494,11 +486,7 @@ describe('clicking a day', () => { // find and click the day passed to the calendar for (let i = 0; i < days.length; i++) { - const formattedDate = formatDate( - days[i].zdt, - undefined, - 'YYYY-MM-DD' - ) + const formattedDate = days[i].dateValue if (formattedDate === date) { days[i].onClick() break @@ -528,7 +516,7 @@ describe('clicking a day', () => { }) it('should call the callback with correct info for a custom (Nepali) calendar', () => { const date = '2077-12-30' - const { calendarDate, calendarDateString } = renderForClick({ + const { calendarDateString } = renderForClick({ calendar: 'nepali', date, }) diff --git a/src/hooks/useDatePicker.ts b/src/hooks/useDatePicker.ts index 5288854..8174bed 100644 --- a/src/hooks/useDatePicker.ts +++ b/src/hooks/useDatePicker.ts @@ -34,7 +34,7 @@ type DatePickerOptions = { export type UseDatePickerReturn = UseNavigationReturnType & { weekDayLabels: string[] calendarWeekDays: { - zdt: Temporal.ZonedDateTime + dateValue: string label: string | number onClick: () => void isSelected: boolean | undefined @@ -185,10 +185,10 @@ export const useDatePicker: UseDatePickerHookType = ({ temporalCalendar, temporalTimeZone, ]) - return { + const result: UseDatePickerReturn = { calendarWeekDays: calendarWeekDaysZdts.map((week) => week.map((weekDayZdt) => ({ - zdt: weekDayZdt, + dateValue: formatDate(weekDayZdt, undefined, format), label: localisationHelpers.localiseWeekLabel( weekDayZdt.withCalendar(localeOptions.calendar), localeOptions @@ -208,4 +208,6 @@ export const useDatePicker: UseDatePickerHookType = ({ ...navigation, weekDayLabels, } + + return result } diff --git a/src/utils/localisationHelpers.ts b/src/utils/localisationHelpers.ts index 01258d0..1157dc2 100644 --- a/src/utils/localisationHelpers.ts +++ b/src/utils/localisationHelpers.ts @@ -131,7 +131,7 @@ const localiseMonth = ( ) return isCustom - ? customLocale?.monthNames[zdt.month - 1] + ? customLocale?.monthNames[zdt.month! - 1] : zdt.toLocaleString(localeOptions.locale, format) }