diff options
Diffstat (limited to 'src/lib/Tools/Tracker/Tool.svelte')
| -rw-r--r-- | src/lib/Tools/Tracker/Tool.svelte | 75 |
1 files changed, 38 insertions, 37 deletions
diff --git a/src/lib/Tools/Tracker/Tool.svelte b/src/lib/Tools/Tracker/Tool.svelte index 1849cbb1..8f7a3197 100644 --- a/src/lib/Tools/Tracker/Tool.svelte +++ b/src/lib/Tools/Tracker/Tool.svelte @@ -1,69 +1,70 @@ <script lang="ts"> -import Spacer from '$lib/Layout/Spacer.svelte'; -import { v6 as uuidv6 } from 'uuid'; -import { database, type TrackerEntry } from '$lib/Database/IDB/tracker'; -import { onMount } from 'svelte'; -import Message from '$lib/Loading/Message.svelte'; - -let url = ''; -let title = ''; +import Spacer from "$lib/Layout/Spacer.svelte"; +import { v6 as uuidv6 } from "uuid"; +import { database, type TrackerEntry } from "$lib/Database/IDB/tracker"; +import { onMount } from "svelte"; +import Message from "$lib/Loading/Message.svelte"; + +let url = ""; +let title = ""; let progress = 0; -let error = ''; +let error = ""; let masterList: TrackerEntry[] | null = null; let confirmDelete = 0; $: listAccess = masterList || []; onMount(async () => { - masterList = await database.entries.toArray(); + masterList = await database.entries.toArray(); }); const adjustEntry = (id: string, to: number) => { - const entry = listAccess.find((entry) => entry.id === id); + const entry = listAccess.find((entry) => entry.id === id); - if (!entry) return; + if (!entry) return; - entry.progress = Math.max(0, to); + entry.progress = Math.max(0, to); - database.entries.update(id, { progress: entry.progress }); + database.entries.update(id, { progress: entry.progress }); - masterList = listAccess.map((entry) => - entry.id === id ? { ...entry, progress: entry.progress } : entry - ); + masterList = listAccess.map((entry) => + entry.id === id ? { ...entry, progress: entry.progress } : entry, + ); }; const addEntry = async (url: string, title: string, progress: number) => { - if (!url || !title) { - error = 'URL and title are required fields'; + if (!url || !title) { + error = "URL and title are required fields"; - return; - } + return; + } - if (listAccess.some((entry) => entry.url === url)) { - error = - 'Entry with URL already exists: ' + listAccess.find((entry) => entry.url === url)?.title; + if (listAccess.some((entry) => entry.url === url)) { + error = + "Entry with URL already exists: " + + listAccess.find((entry) => entry.url === url)?.title; - return; - } + return; + } - await database.entries.add({ url, title, progress, id: uuidv6() }); + await database.entries.add({ url, title, progress, id: uuidv6() }); - masterList = await database.entries.toArray(); + masterList = await database.entries.toArray(); }; const deleteEntry = async (id: string) => { - if (confirmDelete !== 1) { - confirmDelete = 1; - error = 'Click again to confirm deletion'; + if (confirmDelete !== 1) { + confirmDelete = 1; + error = "Click again to confirm deletion"; - return; - } + return; + } - await database.entries.delete(id); + await database.entries.delete(id); - masterList = await database.entries.toArray(); - confirmDelete = 0; - error = ''; + masterList = await database.entries.toArray(); + confirmDelete = 0; + error = ""; }; </script> |