diff options
| author | Fuwn <[email protected]> | 2024-01-12 08:13:44 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-01-12 08:13:44 -0800 |
| commit | 01b6b55313e41977f2e16b4df6104b5772ec12e8 (patch) | |
| tree | e72befde31a9e208341d2224a37d4f9a6ce55f5e /src/lib/List | |
| parent | feat(css): autoprefixer (diff) | |
| download | due.moe-01b6b55313e41977f2e16b4df6104b5772ec12e8.tar.xz due.moe-01b6b55313e41977f2e16b4df6104b5772ec12e8.zip | |
feat(manga): more reactive loading progress
Diffstat (limited to 'src/lib/List')
| -rw-r--r-- | src/lib/List/Manga/MangaListTemplate.svelte | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/lib/List/Manga/MangaListTemplate.svelte b/src/lib/List/Manga/MangaListTemplate.svelte index 388ef543..c27e3a26 100644 --- a/src/lib/List/Manga/MangaListTemplate.svelte +++ b/src/lib/List/Manga/MangaListTemplate.svelte @@ -84,9 +84,11 @@ ($settings.displayNotStarted === true ? 0 : 1) ); let finalMedia = releasingMedia; - const progressStep = 100 / finalMedia.length; + const progressStep = 100 / finalMedia.length / 3; const chapterPromises = finalMedia.map((m: Media) => database.chapters.get(m.id).then((c) => { + if (progress < 100) progress += progressStep; + if (c !== undefined) return chapterCount(identity, m, $settings.calculateGuessingDisabled); else { // A = On 1 second interval, @@ -115,7 +117,11 @@ if (progress < 100) progress += progressStep; } - finalMedia.forEach((m: Media, i) => (m.episodes = chapterCounts[i] || -1337)); + finalMedia.forEach((m: Media, i) => { + m.episodes = chapterCounts[i] || -1337; + + if (progress < 100) progress += progressStep; + }); if (!displayUnresolved) finalMedia = finalMedia.filter((m: Media) => m.episodes !== -1337); |