aboutsummaryrefslogtreecommitdiff
path: root/lib/anilist
diff options
context:
space:
mode:
authorFactiven <[email protected]>2023-09-25 00:44:40 +0700
committerGitHub <[email protected]>2023-09-25 00:44:40 +0700
commit1a85c2571690ba592ac5183d5eadaf9846fe532b (patch)
tree3f3552c00cd49c0eeab5275275cf5cf5666e5027 /lib/anilist
parentDelete .github/workflows/deploy.yml (diff)
downloadmoopa-4.1.0.tar.xz
moopa-4.1.0.zip
Update v4.1.0 (#79)v4.1.0
* Update v4.1.0 * Update pages/_app.js
Diffstat (limited to 'lib/anilist')
-rw-r--r--lib/anilist/getMedia.js43
1 files changed, 37 insertions, 6 deletions
diff --git a/lib/anilist/getMedia.js b/lib/anilist/getMedia.js
index c4628ab..66bb1b0 100644
--- a/lib/anilist/getMedia.js
+++ b/lib/anilist/getMedia.js
@@ -1,9 +1,10 @@
import { useEffect, useState } from "react";
export default function GetMedia(session, stats) {
- const [media, setMedia] = useState([]);
+ const [anime, setAnime] = useState([]);
+ const [manga, setManga] = useState([]);
const [recommendations, setRecommendations] = useState([]);
- const accessToken = session?.user?.token;
+ const accessToken = session?.user?.token || null;
const username = session?.user?.name;
const status = stats || null;
@@ -12,7 +13,7 @@ export default function GetMedia(session, stats) {
method: "POST",
headers: {
"Content-Type": "application/json",
- Authorization: accessToken ? `Bearer ${accessToken}` : undefined,
+ ...(accessToken && { Authorization: `Bearer ${accessToken}` }),
},
body: JSON.stringify({ query, variables }),
});
@@ -42,7 +43,36 @@ export default function GetMedia(session, stats) {
}
}
}
- MediaListCollection(userName: $username, type: ANIME, status: $status, sort: UPDATED_TIME_DESC) {
+ anime: MediaListCollection(userName: $username, type: ANIME, status: $status, sort: UPDATED_TIME_DESC) {
+ lists {
+ status
+ name
+ entries {
+ id
+ mediaId
+ status
+ progress
+ score
+ media {
+ id
+ status
+ nextAiringEpisode {
+ timeUntilAiring
+ episode
+ }
+ title {
+ english
+ romaji
+ }
+ episodes
+ coverImage {
+ large
+ }
+ }
+ }
+ }
+ }
+ manga: MediaListCollection(userName: $username, type: MANGA, status: $status, sort: UPDATED_TIME_DESC) {
lists {
status
name
@@ -79,12 +109,13 @@ export default function GetMedia(session, stats) {
status: status?.stats,
sort: "ID_DESC",
}).then((data) => {
- setMedia(data.data.MediaListCollection.lists);
+ setAnime(data.data.anime?.lists);
+ setManga(data.data.manga?.lists);
setRecommendations(
data.data.Page.recommendations.map((i) => i.mediaRecommendation)
);
});
}, [username, accessToken, status?.stats]);
- return { media, recommendations };
+ return { anime, manga, recommendations };
}