Skip to content

Commit

Permalink
update date error message date formatting
Browse files Browse the repository at this point in the history
  • Loading branch information
joakbjerk committed Jan 22, 2025
1 parent 8f5f778 commit fdecfdf
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -884,7 +884,7 @@ function DatePicker(externalProps: DatePickerAllProps) {
minDate: dates.minDate,
maxDate: dates.maxDate,
isRange: range,
dateFormat,
localeKey: context.locale,
})

const { status, statusState } = useMemo(() => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,36 @@ import { DatePickerDates } from './useDates'
import { format, isAfter, isBefore } from 'date-fns'
import { DatePickerProps } from '../DatePicker'
import { Li, Ul } from '../../../elements'
import { enGB, nb } from 'date-fns/locale'
import { ProviderProps } from '../../../shared/Provider'

type DateLimitValidation = {
status: DatePickerProps['status']
statusState: DatePickerProps['statusState']
}

const locales = {
'nb-NO': nb,
'en-GB': enGB,
}

export default function useDateLimitValidation({
minDate,
maxDate,
endDate,
startDate,
isRange,
dateFormat,
localeKey = 'nbNO',
}: Pick<
DatePickerDates,
'startDate' | 'endDate' | 'minDate' | 'maxDate'
> & {
isRange: DatePickerProps['range']
dateFormat: DatePickerProps['dateFormat']
localeKey: ProviderProps['locale']
}) {
const translation = useTranslation().DatePicker
const dateFormat = 'PPP'
const locale = locales[localeKey]

const validationMessage = useMemo<
DateLimitValidation | undefined
Expand All @@ -41,7 +50,7 @@ export default function useDateLimitValidation({
return {
status: translation.errorMinDate.replace(
/%s/,
format(minDate, dateFormat)
format(minDate, dateFormat, { locale })
),
statusState,
}
Expand All @@ -51,7 +60,7 @@ export default function useDateLimitValidation({
return {
status: translation.errorMaxDate.replace(
/%s/,
format(maxDate, dateFormat)
format(maxDate, dateFormat, { locale })
),
statusState,
}
Expand All @@ -64,7 +73,7 @@ export default function useDateLimitValidation({
messages.push(
translation.errorRangeStartDateMinDate.replace(
/%s/,
format(minDate, dateFormat)
format(minDate, dateFormat, { locale })
)
)
}
Expand All @@ -73,7 +82,7 @@ export default function useDateLimitValidation({
messages.push(
translation.errorRangeStartDateMaxDate.replace(
/%s/,
format(maxDate, dateFormat)
format(maxDate, dateFormat, { locale })
)
)
}
Expand All @@ -82,7 +91,7 @@ export default function useDateLimitValidation({
messages.push(
translation.errorRangeEndDateMinDate.replace(
/%s/,
format(minDate, dateFormat)
format(minDate, dateFormat, { locale })
)
)
}
Expand All @@ -91,7 +100,7 @@ export default function useDateLimitValidation({
messages.push(
translation.errorRangeEndDateMaxDate.replace(
/%s/,
format(maxDate, dateFormat)
format(maxDate, dateFormat, { locale })
)
)
}
Expand All @@ -102,15 +111,7 @@ export default function useDateLimitValidation({
: messages[0]

return status ? { status, statusState } : undefined
}, [
startDate,
endDate,
minDate,
maxDate,
isRange,
dateFormat,
translation,
])
}, [startDate, endDate, minDate, maxDate, isRange, translation, locale])

return validationMessage
}
Expand Down

0 comments on commit fdecfdf

Please sign in to comment.