diff --git a/frontend/src/lib/components/ArgInput.svelte b/frontend/src/lib/components/ArgInput.svelte index 41bc117cae..3ad4a6f3f9 100644 --- a/frontend/src/lib/components/ArgInput.svelte +++ b/frontend/src/lib/components/ArgInput.svelte @@ -568,7 +568,7 @@ /> {:else if inputCat == 'date'} - + {:else if inputCat == 'sql' || inputCat == 'yaml'}
+ import { createEventDispatcher } from 'svelte' + import { Button } from './common' + export let value: string | undefined = undefined export let autofocus: boolean = false + export let useDropdown: boolean = false - let dateFromValue: Date | undefined = value ? new Date(value) : undefined + let date: string | undefined = undefined + let time: string | undefined = undefined + function parseValue(value: string | undefined = undefined) { + 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' + date = isValidDate(dateFromValue) ? dateFromValue!.toISOString().split('T')[0] : undefined + time = isValidDate(dateFromValue) + ? `${dateFromValue!.getHours().toString().padStart(2, '0')}:${dateFromValue! + .getMinutes() + .toString() + .padStart(2, '0')}` + : undefined + } - $: { - if (date && time) { + $: parseValue(value) + + let initialDate = date + let initialTime = time + + function parseDateAndTime(date: string | undefined, time: string | undefined) { + if (date && time && (initialDate != date || initialTime != time)) { let newDate = new Date(`${date}T${time}`) value = newDate.toISOString() + dispatch('change', value) } } + $: parseDateAndTime(date, time) + function isValidDate(d: Date | undefined): boolean { return d instanceof Date && !isNaN(d as any) } + + const dispatch = createEventDispatcher() + + function setTimeLater(mins: number) { + let newDate = new Date() + newDate.setMinutes(newDate.getMinutes() + mins) + value = newDate.toISOString() + dispatch('change', value) + } -
+
- + +
diff --git a/frontend/src/lib/components/RunChart.svelte b/frontend/src/lib/components/RunChart.svelte index 9fc6bf6a58..83227dbaf7 100644 --- a/frontend/src/lib/components/RunChart.svelte +++ b/frontend/src/lib/components/RunChart.svelte @@ -75,7 +75,6 @@ enabled: true, modifierKey: 'ctrl' as 'ctrl', onPanComplete: ({ chart }) => { - console.log(chart.scales.x.min) dispatch('zoom', { min: addSeconds(new Date(chart.scales.x.min), -1), max: addSeconds(new Date(chart.scales.x.max), 1) diff --git a/frontend/src/lib/components/RunFormAdvancedPopup.svelte b/frontend/src/lib/components/RunFormAdvancedPopup.svelte index 12838a1e5f..9e62698c1b 100644 --- a/frontend/src/lib/components/RunFormAdvancedPopup.svelte +++ b/frontend/src/lib/components/RunFormAdvancedPopup.svelte @@ -6,8 +6,8 @@ import Tooltip from './Tooltip.svelte' import { userStore, workerTags } from '$lib/stores' import { Button } from './common' - import { getToday } from '$lib/utils' import { WorkerService } from '$lib/gen' + import DateTimeInput from './DateTimeInput.svelte' export let runnable: | { @@ -50,13 +50,12 @@
{/if} - {#if dropdownItems} + {#if dropdownItems && dropdownItems.length > 0}
- + {#each computeDropdowns() ?? [] as item} diff --git a/frontend/src/lib/components/common/calendarPicker/CalendarPicker.svelte b/frontend/src/lib/components/common/calendarPicker/CalendarPicker.svelte index 7cb0d25488..ff1a68e583 100644 --- a/frontend/src/lib/components/common/calendarPicker/CalendarPicker.svelte +++ b/frontend/src/lib/components/common/calendarPicker/CalendarPicker.svelte @@ -1,36 +1,20 @@ - + + />
diff --git a/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte b/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte index 8a12cc5556..7948844be5 100644 --- a/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte @@ -345,14 +345,16 @@ on:click={async () => (cancelAllJobs = true)}>Cancel All
-
+
Min datetime @@ -368,7 +370,11 @@
Max datetime - + (cancelAllJobs = true)}>Cancel All
-
+
Min datetime @@ -530,7 +538,11 @@
Max datetime - + { if (templatePath) {