aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFuwn <[email protected]>2025-06-09 19:40:54 -0700
committerFuwn <[email protected]>2025-06-09 19:40:54 -0700
commitd34dcff331649e19956ad7d1c49e95236d042525 (patch)
tree2f0878b63c1ea904252ea97b9f4824aa92c4dd85 /src
parentfeat(List): Store list filter in stateBin (diff)
downloaddue.moe-d34dcff331649e19956ad7d1c49e95236d042525.tar.xz
due.moe-d34dcff331649e19956ad7d1c49e95236d042525.zip
fix(List): Properly isolate list filter keys
Diffstat (limited to 'src')
-rw-r--r--src/lib/List/Anime/CleanAnimeList.svelte14
-rw-r--r--src/lib/List/Manga/CleanMangaList.svelte8
2 files changed, 16 insertions, 6 deletions
diff --git a/src/lib/List/Anime/CleanAnimeList.svelte b/src/lib/List/Anime/CleanAnimeList.svelte
index 64b8fe55..eb887999 100644
--- a/src/lib/List/Anime/CleanAnimeList.svelte
+++ b/src/lib/List/Anime/CleanAnimeList.svelte
@@ -58,17 +58,25 @@
.map(([key]) => key)
)
);
- let selectedList = stateBin.get().animeListFilter || 'All';
+ let filterKind = upcoming
+ ? 'Upcoming'
+ : notYetReleased
+ ? 'NotYetReleased'
+ : completed
+ ? 'Completed'
+ : 'Due';
+ const filterKey = `${filterKind}AnimeListFilter`;
+ let selectedList = stateBin.get()[filterKey] || 'All';
onMount(() => {
if (browser) {
- const storedValue = stateBin.get().animeListFilter;
+ const storedValue = stateBin.get()[filterKey];
if (typeof storedValue === 'string') selectedList = storedValue;
}
});
- $: stateBin.setKey('animeListFilter', selectedList);
+ $: stateBin.setKey(filterKey, selectedList);
$: filteredMedia =
selectedList === 'All'
diff --git a/src/lib/List/Manga/CleanMangaList.svelte b/src/lib/List/Manga/CleanMangaList.svelte
index 41a085d8..76abb0fc 100644
--- a/src/lib/List/Manga/CleanMangaList.svelte
+++ b/src/lib/List/Manga/CleanMangaList.svelte
@@ -48,17 +48,19 @@
.map(([key]) => key)
)
);
- let selectedList = stateBin.get().mangaListFilter || 'All';
+ const filterKind = due ? 'due' : 'completed';
+ const filterKey = `${filterKind}MangaListFilter`;
+ let selectedList = stateBin.get()[filterKey] || 'All';
onMount(() => {
if (browser) {
- const storedValue = stateBin.get().mangaListFilter;
+ const storedValue = stateBin.get()[filterKey];
if (typeof storedValue === 'string') selectedList = storedValue;
}
});
- $: stateBin.setKey('mangaListFilter', selectedList);
+ $: stateBin.setKey(filterKey, selectedList);
$: filteredMedia =
selectedList === 'All'