diff options
| author | Fuwn <[email protected]> | 2025-06-09 19:40:54 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-06-09 19:40:54 -0700 |
| commit | d34dcff331649e19956ad7d1c49e95236d042525 (patch) | |
| tree | 2f0878b63c1ea904252ea97b9f4824aa92c4dd85 /src | |
| parent | feat(List): Store list filter in stateBin (diff) | |
| download | due.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.svelte | 14 | ||||
| -rw-r--r-- | src/lib/List/Manga/CleanMangaList.svelte | 8 |
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' |