aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFuwn <[email protected]>2023-09-28 16:27:08 -0700
committerFuwn <[email protected]>2023-09-28 16:27:18 -0700
commit567357210b4b23929e0e6d13de925601964269ea (patch)
tree0a67c6e9f897d838d341ae5c84663e00c4c07991
parentfix(tools): fix wrapped width (diff)
downloaddue.moe-567357210b4b23929e0e6d13de925601964269ea.tar.xz
due.moe-567357210b4b23929e0e6d13de925601964269ea.zip
fix(wrapped): filter highest by current year
-rw-r--r--src/lib/AniList/media.ts5
-rw-r--r--src/lib/Tools/Wrapped.svelte17
2 files changed, 18 insertions, 4 deletions
diff --git a/src/lib/AniList/media.ts b/src/lib/AniList/media.ts
index d9ce5e57..5c59e5e9 100644
--- a/src/lib/AniList/media.ts
+++ b/src/lib/AniList/media.ts
@@ -29,6 +29,9 @@ export interface Media {
progress: number;
status: string;
score: number;
+ startedAt: {
+ year: number;
+ };
};
startDate: {
year: number;
@@ -120,7 +123,7 @@ export const mediaListCollection = async (
format
title { romaji english native }
nextAiringEpisode { episode timeUntilAiring }
- mediaListEntry { progress status score(format: POINT_100) }
+ mediaListEntry { progress status score(format: POINT_100) startedAt { year } }
startDate { year }
coverImage { extraLarge }
} } }
diff --git a/src/lib/Tools/Wrapped.svelte b/src/lib/Tools/Wrapped.svelte
index ea17fefc..93d68521 100644
--- a/src/lib/Tools/Wrapped.svelte
+++ b/src/lib/Tools/Wrapped.svelte
@@ -30,6 +30,9 @@
currentUserIdentity = JSON.parse($userIdentity);
currentUserIdentity.name = currentUserIdentity.name;
+
+ const currentYear = new Date(Date.now()).getFullYear();
+
animeList = (
await mediaListCollection(
user,
@@ -40,7 +43,11 @@
true,
true
)
- ).filter((m) => m.mediaListEntry?.status === 'COMPLETED');
+ ).filter(
+ (m) =>
+ m.mediaListEntry?.status === 'COMPLETED' &&
+ m.mediaListEntry.startedAt.year === currentYear
+ );
mangaList = (
await mediaListCollection(
user,
@@ -51,7 +58,11 @@
true,
true
)
- ).filter((m) => m.mediaListEntry?.status === 'COMPLETED');
+ ).filter(
+ (m) =>
+ m.mediaListEntry?.status === 'COMPLETED' &&
+ m.mediaListEntry.startedAt.year === currentYear
+ );
animeList = animeList.sort((a, b) => {
if (a.mediaListEntry?.score === undefined) {
return 1;
@@ -72,7 +83,7 @@
});
for (const media of animeList) {
- if (media.startDate.year === new Date(Date.now()).getFullYear()) {
+ if (media.startDate.year === currentYear) {
episodes += media.mediaListEntry?.progress || 0;
}
}