From f1f08dd85d1f2717f0898d1275bdef329b18cd5f Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 4 Aug 2021 14:33:09 +0100 Subject: [PATCH] Add default value for date field --- .../src/forms/DateTimeField.svelte | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/packages/standard-components/src/forms/DateTimeField.svelte b/packages/standard-components/src/forms/DateTimeField.svelte index 9332cfa721..4d722786fb 100644 --- a/packages/standard-components/src/forms/DateTimeField.svelte +++ b/packages/standard-components/src/forms/DateTimeField.svelte @@ -7,12 +7,43 @@ export let placeholder export let disabled = false export let enableTime = false + export let defaultValue let fieldState let fieldApi + + const parseDate = val => { + if (!val) { + return null + } + let date + if (isNaN(val)) { + // Treat as date string of some sort + date = new Date(val) + } else { + // Treat as numerical timestamp + date = new Date(parseInt(val)) + } + const time = date.getTime() + if (isNaN(time)) { + return null + } + // By rounding to the nearest second we avoid locking up in an endless + // loop in the builder, caused by potentially enriching {{ now }} to every + // millisecond. + return new Date(Math.floor(time / 1000) * 1000) + } - + {#if fieldState}