aboutsummaryrefslogtreecommitdiff
path: root/src/lib/List/Anime/CleanAnimeList.svelte
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-11-18 19:03:53 -0800
committerFuwn <[email protected]>2024-11-18 19:03:53 -0800
commit8b95d6f67eadb29e5b4c28ef9a79f8c146acf145 (patch)
tree764833dd4f8525aace117d95c75aeca7cf3da89c /src/lib/List/Anime/CleanAnimeList.svelte
parentfeat(List): display total episodes everywhere toggle (diff)
downloaddue.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.svelte14
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}