aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Tools/Wrapped.svelte
diff options
context:
space:
mode:
authorFuwn <[email protected]>2023-11-10 15:48:37 -0800
committerFuwn <[email protected]>2023-11-10 15:48:37 -0800
commitc0e77139755565ba0aa0ee25772bb118c3153a64 (patch)
tree0386557383f5a3651c9eda4efd3fec50bdc2e4f7 /src/lib/Tools/Wrapped.svelte
parentci(docker): bump bun image (diff)
downloaddue.moe-c0e77139755565ba0aa0ee25772bb118c3153a64.tar.xz
due.moe-c0e77139755565ba0aa0ee25772bb118c3153a64.zip
fix(wrapped): remove duplicates
Diffstat (limited to 'src/lib/Tools/Wrapped.svelte')
-rw-r--r--src/lib/Tools/Wrapped.svelte50
1 files changed, 30 insertions, 20 deletions
diff --git a/src/lib/Tools/Wrapped.svelte b/src/lib/Tools/Wrapped.svelte
index 8dd448bd..479e4f7f 100644
--- a/src/lib/Tools/Wrapped.svelte
+++ b/src/lib/Tools/Wrapped.svelte
@@ -45,7 +45,21 @@
true,
true
)
- ).filter((m) => m.mediaListEntry?.startedAt.year === currentYear);
+ )
+ .filter(
+ (item, index, self) =>
+ self.findIndex((itemToCompare) => itemToCompare.id === item.id) === index
+ )
+ .filter((m) => m.mediaListEntry?.startedAt.year === currentYear)
+ .sort((a, b) => {
+ if (a.mediaListEntry?.score === undefined) {
+ return 1;
+ } else if (b.mediaListEntry?.score === undefined) {
+ return -1;
+ } else {
+ return b.mediaListEntry?.score - a.mediaListEntry?.score;
+ }
+ });
mangaList = (
await mediaListCollection(
user,
@@ -56,25 +70,21 @@
true,
true
)
- ).filter((m) => m.mediaListEntry?.startedAt.year === currentYear);
- animeList = animeList.sort((a, b) => {
- if (a.mediaListEntry?.score === undefined) {
- return 1;
- } else if (b.mediaListEntry?.score === undefined) {
- return -1;
- } else {
- return b.mediaListEntry?.score - a.mediaListEntry?.score;
- }
- });
- mangaList = mangaList.sort((a, b) => {
- if (a.mediaListEntry?.score === undefined) {
- return 1;
- } else if (b.mediaListEntry?.score === undefined) {
- return -1;
- } else {
- return b.mediaListEntry?.score - a.mediaListEntry?.score;
- }
- });
+ )
+ .filter(
+ (item, index, self) =>
+ self.findIndex((itemToCompare) => itemToCompare.id === item.id) === index
+ )
+ .filter((m) => m.mediaListEntry?.startedAt.year === currentYear)
+ .sort((a, b) => {
+ if (a.mediaListEntry?.score === undefined) {
+ return 1;
+ } else if (b.mediaListEntry?.score === undefined) {
+ return -1;
+ } else {
+ return b.mediaListEntry?.score - a.mediaListEntry?.score;
+ }
+ });
for (const media of animeList) {
episodes += media.mediaListEntry?.progress || 0;