2024-02-27 04:07:49 +01:00
|
|
|
<script lang="ts">
|
|
|
|
|
import type { HTMLInputAttributes } from 'svelte/elements';
|
|
|
|
|
|
|
|
|
|
interface $$Props extends HTMLInputAttributes {
|
|
|
|
|
type: 'date' | 'datetime-local';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export let value: $$Props['value'] = undefined;
|
2024-03-06 12:47:15 +01:00
|
|
|
|
|
|
|
|
// Updating `value` directly causes the date input to reset itself or
|
|
|
|
|
// interfere with user changes.
|
2024-02-27 04:07:49 +01:00
|
|
|
$: updatedValue = value;
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<input
|
|
|
|
|
{...$$restProps}
|
|
|
|
|
{value}
|
2024-03-06 12:47:15 +01:00
|
|
|
on:input={(e) => (updatedValue = e.currentTarget.value)}
|
2024-02-27 04:07:49 +01:00
|
|
|
on:blur={() => (value = updatedValue)}
|
|
|
|
|
/>
|