diff --git a/libs/common/src/lib/helper.spec.ts b/libs/common/src/lib/helper.spec.ts index 727672a23a..58ac417c4a 100644 --- a/libs/common/src/lib/helper.spec.ts +++ b/libs/common/src/lib/helper.spec.ts @@ -436,6 +436,16 @@ describe('Helper', () => { expect(isValidDateAfter1970('0000-01-01')).toEqual(false); }); + it('Date object', () => { + expect( + isValidDateAfter1970(new Date('2024-01-01T12:00:00.000Z')) + ).toEqual(true); + }); + + it('Date object of 1970', () => { + expect(isValidDateAfter1970(new Date(0))).toEqual(false); + }); + it('Date of 1970', () => { expect(isValidDateAfter1970('1970-01-01T00:00:00.000Z')).toEqual(false); }); diff --git a/libs/common/src/lib/helper.ts b/libs/common/src/lib/helper.ts index 48ecc5ac8c..f0f9e979cc 100644 --- a/libs/common/src/lib/helper.ts +++ b/libs/common/src/lib/helper.ts @@ -685,8 +685,8 @@ export function isValidCustomAssetProfileSymbol(aSymbol: string) { return hasGhostfolioPrefix(aSymbol) || isUUID(aSymbol); } -export function isValidDateAfter1970(aDate: string) { - const date = parseISO(aDate, { in: utc }); +export function isValidDateAfter1970(aDate: Date | string) { + const date = isString(aDate) ? parseISO(aDate, { in: utc }) : aDate; return isValid(date) && isAfter(date, new Date(0)); } diff --git a/libs/common/src/lib/validator-constraints/is-after-1970.ts b/libs/common/src/lib/validator-constraints/is-after-1970.ts index 61214e848b..d55dc67c54 100644 --- a/libs/common/src/lib/validator-constraints/is-after-1970.ts +++ b/libs/common/src/lib/validator-constraints/is-after-1970.ts @@ -12,7 +12,7 @@ export class IsAfter1970Constraint implements ValidatorConstraintInterface { return `date must be after ${format(new Date(0), 'yyyy')}`; } - public validate(aDate: string) { + public validate(aDate: Date | string) { return isValidDateAfter1970(aDate); } }