diff options
| author | Fuwn <[email protected]> | 2024-11-18 19:03:53 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-11-18 19:03:53 -0800 |
| commit | 8b95d6f67eadb29e5b4c28ef9a79f8c146acf145 (patch) | |
| tree | 764833dd4f8525aace117d95c75aeca7cf3da89c /src/lib/List/Anime/CleanAnimeList.svelte | |
| parent | feat(List): display total episodes everywhere toggle (diff) | |
| download | due.moe-8b95d6f67eadb29e5b4c28ef9a79f8c146acf145.tar.xz due.moe-8b95d6f67eadb29e5b4c28ef9a79f8c146acf145.zip | |
fix(CleanAnimeList): total chapter count calculation
Diffstat (limited to 'src/lib/List/Anime/CleanAnimeList.svelte')
| -rw-r--r-- | src/lib/List/Anime/CleanAnimeList.svelte | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/lib/List/Anime/CleanAnimeList.svelte b/src/lib/List/Anime/CleanAnimeList.svelte index b8079f7a..b533e943 100644 --- a/src/lib/List/Anime/CleanAnimeList.svelte +++ b/src/lib/List/Anime/CleanAnimeList.svelte @@ -32,11 +32,16 @@ let keyCacher: NodeJS.Timeout; let totalEpisodeDueCount = media .map((anime) => { - if ($settings.displayTotalEpisodes && anime.status === 'FINISHED') return anime.episodes; + if ($settings.displayTotalEpisodes && anime.status === 'FINISHED') + return anime.episodes - (anime.mediaListEntry?.progress || 0); - if (anime.mediaListEntry?.status === 'COMPLETED') return 0; + if (anime.status === 'NOT_YET_RELEASED') return 1; - return (anime.nextAiringEpisode?.episode || 1) - (anime.mediaListEntry?.progress || 0) - 1; + return ( + (anime.nextAiringEpisode?.episode || 1) - + (anime.mediaListEntry?.progress || 0) - + (upcoming || notYetReleased ? 0 : 1) + ); }) .reduce((a, b) => a + b, 0); @@ -102,8 +107,7 @@ <ListTitle time={endTime / 1000} - count={($settings.displayTotalDueEpisodes && !notYetReleased && !completed && !upcoming) || - $settings.displayTotalEpisodes + count={$settings.displayTotalDueEpisodes || $settings.displayTotalEpisodes ? totalEpisodeDueCount : media.length} {title} |