aboutsummaryrefslogtreecommitdiff
path: root/src/lib/AniList/activity.ts
diff options
context:
space:
mode:
authorFuwn <[email protected]>2023-09-12 16:47:11 -0700
committerFuwn <[email protected]>2023-09-12 16:47:11 -0700
commitd6e737f207d0d5df3c7aa2726cde889536dbb566 (patch)
tree2c12f7c1602f4075ddb86ae0ef1e55c552691776 /src/lib/AniList/activity.ts
parentfeat(layout): navigation (diff)
downloaddue.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.ts20
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);