aboutsummaryrefslogtreecommitdiff
path: root/src/routes
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-03-01 14:20:08 -0800
committerFuwn <[email protected]>2026-03-01 15:24:03 -0800
commit3b10a1f47fd5838fe3b94c19673a52610b88cf1e (patch)
treed468a1fc12290e38686b255194ff6596b58cbf01 /src/routes
parentperf(match): fast-path exact normalised title matches (diff)
downloaddue.moe-3b10a1f47fd5838fe3b94c19673a52610b88cf1e.tar.xz
due.moe-3b10a1f47fd5838fe3b94c19673a52610b88cf1e.zip
perf: optimise list hot paths and shared timers
Diffstat (limited to 'src/routes')
-rw-r--r--src/routes/+page.svelte6
-rw-r--r--src/routes/completed/+page.svelte6
-rw-r--r--src/routes/updates/+page.svelte6
3 files changed, 9 insertions, 9 deletions
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index fb80bbdd..f382f078 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -18,15 +18,15 @@
export let data;
- let heightObserver: ReturnType<typeof setInterval>;
+ let removeHeightObserver: (() => void) | undefined;
onMount(() => {
- heightObserver = setInterval(() => createHeightObserver(), 0);
+ removeHeightObserver = createHeightObserver();
$stateBin.upcomingAnimeListOpen ??= true;
$stateBin.dueMangaListOpen ??= true;
});
- onDestroy(() => clearInterval(heightObserver));
+ onDestroy(() => removeHeightObserver?.());
</script>
<HeadTitle />
diff --git a/src/routes/completed/+page.svelte b/src/routes/completed/+page.svelte
index 3c6b3b4d..8d5eff52 100644
--- a/src/routes/completed/+page.svelte
+++ b/src/routes/completed/+page.svelte
@@ -16,15 +16,15 @@
export let data;
- let heightObserver: ReturnType<typeof setInterval>;
+ let removeHeightObserver: (() => void) | undefined;
onMount(() => {
- heightObserver = setInterval(() => createHeightObserver(), 0);
+ removeHeightObserver = createHeightObserver();
$stateBin.completedAnimeListOpen ??= true;
$stateBin.completedMangaListOpen ??= true;
});
- onDestroy(() => clearInterval(heightObserver));
+ onDestroy(() => removeHeightObserver?.());
</script>
<HeadTitle route="Completed" path="/completed" />
diff --git a/src/routes/updates/+page.svelte b/src/routes/updates/+page.svelte
index 22fcd3a7..a08e4966 100644
--- a/src/routes/updates/+page.svelte
+++ b/src/routes/updates/+page.svelte
@@ -21,10 +21,10 @@
let mangaEndTime: number;
let novelEndTime: number;
let directLink = browser ? new URLSearchParams(window.location.search).has('d') : false;
- let heightObserver: ReturnType<typeof setInterval>;
+ let removeHeightObserver: (() => void) | undefined;
onMount(async () => {
- heightObserver = setInterval(() => createHeightObserver(false), 0);
+ removeHeightObserver = createHeightObserver(false);
startTime = performance.now();
novelFeed = await (await fetch(root('/api/updates/all-novels'))).json();
@@ -34,7 +34,7 @@
mangaEndTime = performance.now() - startTime;
});
- onDestroy(() => clearInterval(heightObserver));
+ onDestroy(() => removeHeightObserver?.());
const reformatChapter = (title: string) =>
title