all repos — kōi @ 4a48ccfcb2820e792122c1a2d62d209c30239e47

Minimalist task manager

src/lib/components/NewTask.svelte (view raw)

 1<script lang="ts">
 2  import tasksStore from "../store/tasksStore";
 3
 4  let value = $state("");
 5
 6  const onKeyDown = (e: KeyboardEvent) => {
 7    const enterKeys = ["Enter", "NumpadEnter"];
 8    if (value && enterKeys.includes(e.code)) {
 9      tasksStore.addTask({ name: value, startTime: new Date() });
10      value = "";
11    }
12  };
13
14  const onClickButton = () => {
15    if (value) {
16      tasksStore.addTask({ name: value, startTime: new Date() });
17      value = "";
18    }
19  };
20</script>
21
22<div class="join w-full">
23  <input
24    class="input w-full join-item"
25    type="text"
26    placeholder="Ajouter une tâche"
27    onkeydown={onKeyDown}
28    bind:value
29  />
30  <button class="btn btn-neutral btn-soft join-item" onclick={onClickButton}
31    >+</button
32  >
33</div>