aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Tools/Tracker/Tool.svelte
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/Tools/Tracker/Tool.svelte')
-rw-r--r--src/lib/Tools/Tracker/Tool.svelte75
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>