diff --git a/src/lib/client/ui/form/Input.svelte b/src/lib/client/ui/form/Input.svelte index a3eb1e5..c914ae5 100644 --- a/src/lib/client/ui/form/Input.svelte +++ b/src/lib/client/ui/form/Input.svelte @@ -1,16 +1,27 @@ + import { createEventDispatcher } from 'svelte'; + export let checked: boolean = false; export let color: 'accent' | 'amber' | 'green' | 'red' = 'accent'; export let disabled: boolean = false; export let label: string = 'Toggle'; + const dispatch = createEventDispatcher<{ change: boolean }>(); + const colors = { accent: 'bg-accent-500', amber: 'bg-amber-500', @@ -12,6 +16,12 @@ }; $: colorClass = colors[color]; + + function handleClick() { + if (disabled) return; + checked = !checked; + dispatch('change', checked); + }