diff options
| author | Fuwn <[email protected]> | 2023-09-12 16:47:11 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-09-12 16:47:11 -0700 |
| commit | d6e737f207d0d5df3c7aa2726cde889536dbb566 (patch) | |
| tree | 2c12f7c1602f4075ddb86ae0ef1e55c552691776 /src/lib/AniList/activity.ts | |
| parent | feat(layout): navigation (diff) | |
| download | due.moe-d6e737f207d0d5df3c7aa2726cde889536dbb566.tar.xz due.moe-d6e737f207d0d5df3c7aa2726cde889536dbb566.zip | |
feat: activity history risk
Diffstat (limited to 'src/lib/AniList/activity.ts')
| -rw-r--r-- | src/lib/AniList/activity.ts | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/lib/AniList/activity.ts b/src/lib/AniList/activity.ts index 0d79bf72..bd4bafc0 100644 --- a/src/lib/AniList/activity.ts +++ b/src/lib/AniList/activity.ts @@ -1,7 +1,14 @@ import type { UserIdentity } from './identity'; -export const lastActivityDate = async (userIdentity: UserIdentity): Promise<Date> => { - const activityHistory = ( +export interface ActivityHistoryEntry { + date: number; + amount: number; +} + +export const activityHistory = async ( + userIdentity: UserIdentity +): Promise<ActivityHistoryEntry[]> => { + return ( await ( await fetch('https://graphql.anilist.co', { method: 'POST', @@ -11,15 +18,18 @@ export const lastActivityDate = async (userIdentity: UserIdentity): Promise<Date }, body: JSON.stringify({ query: `{ User(id: ${userIdentity.id}) { - stats { activityHistory { date } } + stats { activityHistory { date amount } } } }` }) }) ).json() )['data']['User']['stats']['activityHistory']; +}; + +export const lastActivityDate = async (userIdentity: UserIdentity): Promise<Date> => { + const history = await activityHistory(userIdentity); const date = new Date( - Number(activityHistory[activityHistory.length - 1]['date']) * 1000 + - new Date().getTimezoneOffset() + Number(history[history.length - 1]['date']) * 1000 + new Date().getTimezoneOffset() ); date.setDate(date.getDate() + 1); |