From 7cdd6db3feeb99a0055ab187348aabfc7a979915 Mon Sep 17 00:00:00 2001 From: Faton Ramadani Date: Fri, 11 Aug 2023 19:04:49 +0200 Subject: [PATCH] fix(frontend): Handle invalid string defaults for date values. (#2033) --- frontend/src/lib/components/DateTimeInput.svelte | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/frontend/src/lib/components/DateTimeInput.svelte b/frontend/src/lib/components/DateTimeInput.svelte index 135ae94697..7524e1f724 100644 --- a/frontend/src/lib/components/DateTimeInput.svelte +++ b/frontend/src/lib/components/DateTimeInput.svelte @@ -3,9 +3,10 @@ export let autofocus: boolean = false - let dateFromValue = value ? new Date(value) : undefined - let date = dateFromValue ? dateFromValue.toISOString().split('T')[0] : undefined - let time = dateFromValue ? dateFromValue.toISOString().split('T')[1] : '00:00' + let dateFromValue: Date | undefined = value ? new Date(value) : undefined + + let date = isValidDate(dateFromValue) ? dateFromValue!.toISOString().split('T')[0] : undefined + let time = isValidDate(dateFromValue) ? dateFromValue!.toISOString().split('T')[1] : '00:00' $: { if (date && time) { @@ -13,6 +14,10 @@ value = newDate.toISOString() } } + + function isValidDate(d: Date | undefined): boolean { + return d instanceof Date && !isNaN(d as any) + }