diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/anilist/AniList.js | 1 | ||||
| -rw-r--r-- | lib/anilist/useAnilist.js | 18 | ||||
| -rw-r--r-- | lib/useCountdownSeconds.js | 37 |
3 files changed, 18 insertions, 38 deletions
diff --git a/lib/anilist/AniList.js b/lib/anilist/AniList.js index f602dad..f5fe19c 100644 --- a/lib/anilist/AniList.js +++ b/lib/anilist/AniList.js @@ -24,6 +24,7 @@ export async function aniListData({ sort, page = 1 }) { media(id: $id, search: $search, sort: $sort type: ANIME) { id idMal + status title { romaji english diff --git a/lib/anilist/useAnilist.js b/lib/anilist/useAnilist.js index 4ec55a9..bedb4a5 100644 --- a/lib/anilist/useAnilist.js +++ b/lib/anilist/useAnilist.js @@ -92,6 +92,22 @@ export function useAniList(session, stats) { ); }; + const markPlanning = (mediaId) => { + if (!accessToken) return; + const completeQuery = ` + mutation($mediaId: Int ) { + SaveMediaListEntry(mediaId: $mediaId, status: PLANNING) { + id + mediaId + status + } + } + `; + fetchGraphQL(completeQuery, { mediaId }).then((data) => + console.log({ added_to_list: data }) + ); + }; + const markProgress = (mediaId, progress, stats, volumeProgress) => { if (!accessToken) return; const progressWatched = ` @@ -122,5 +138,5 @@ export function useAniList(session, stats) { }); }; - return { media, markComplete, markProgress }; + return { media, markComplete, markProgress, markPlanning }; } diff --git a/lib/useCountdownSeconds.js b/lib/useCountdownSeconds.js deleted file mode 100644 index df3cb63..0000000 --- a/lib/useCountdownSeconds.js +++ /dev/null @@ -1,37 +0,0 @@ -import { useEffect, useState } from "react"; - -const useCountdown = (targetDate, update) => { - const countDownDate = new Date(targetDate).getTime(); - - const [countDown, setCountDown] = useState( - countDownDate - new Date().getTime() - ); - - useEffect(() => { - const interval = setInterval(() => { - const newCountDown = countDownDate - new Date().getTime(); - setCountDown(newCountDown); - if (newCountDown <= 0 && newCountDown > -1000) { - update(); - } - }, 1000); - - return () => clearInterval(interval); - }, [countDownDate, update]); - - return getReturnValues(countDown); -}; - -const getReturnValues = (countDown) => { - // calculate time left - const days = Math.floor(countDown / (1000 * 60 * 60 * 24)); - const hours = Math.floor( - (countDown % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60) - ); - const minutes = Math.floor((countDown % (1000 * 60 * 60)) / (1000 * 60)); - const seconds = Math.floor((countDown % (1000 * 60)) / 1000); - - return [days, hours, minutes, seconds]; -}; - -export { useCountdown }; |