diff --git a/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParseJSDateToIMaskDateInputString.ts b/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParseJSDateToIMaskDateInputString.ts index 52977e63995..8b809f068c0 100644 --- a/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParseJSDateToIMaskDateInputString.ts +++ b/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParseJSDateToIMaskDateInputString.ts @@ -1,12 +1,17 @@ import { useDateTimeFormat } from '@/localization/hooks/useDateTimeFormat'; -import { format } from 'date-fns'; +import { format, isValid } from 'date-fns'; +import { isDefined } from 'twenty-shared/utils'; import { getDateFormatStringForDatePickerInputMask } from '~/utils/date-utils'; export const useParseJSDateToIMaskDateInputString = () => { const { dateFormat } = useDateTimeFormat(); const parseIMaskJSDateIMaskDateInputString = (jsDate: Date) => { + if (!isDefined(jsDate) || !isValid(jsDate)) { + return ''; + } + const parsingFormat = getDateFormatStringForDatePickerInputMask(dateFormat); const formattedDate = format(jsDate, parsingFormat); diff --git a/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParsePlainDateToDateInputString.ts b/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParsePlainDateToDateInputString.ts index 131929c5b47..26e4f6bce57 100644 --- a/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParsePlainDateToDateInputString.ts +++ b/packages/twenty-front/src/modules/ui/input/components/internal/date/hooks/useParsePlainDateToDateInputString.ts @@ -1,6 +1,6 @@ import { useDateTimeFormat } from '@/localization/hooks/useDateTimeFormat'; -import { format, parse } from 'date-fns'; +import { format, isValid, parse } from 'date-fns'; import { DATE_TYPE_FORMAT } from 'twenty-shared/constants'; import { getDateFormatStringForDatePickerInputMask } from '~/utils/date-utils'; @@ -12,6 +12,10 @@ export const useParsePlainDateToDateInputString = () => { const parsedDate = parse(plainDate, DATE_TYPE_FORMAT, new Date()); + if (!isValid(parsedDate)) { + return ''; + } + const formattedDate = format(parsedDate, parsingFormat); return formattedDate;