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 input-bordered 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>