aboutsummaryrefslogtreecommitdiff
path: root/src/lib/mangadex.ts
diff options
context:
space:
mode:
authorFuwn <[email protected]>2023-09-14 14:37:17 -0700
committerFuwn <[email protected]>2023-09-14 14:37:17 -0700
commit5ba4e5c625a7d582ff124044149fd5d8355209a7 (patch)
tree77bc59de89dd5afb9c95c02a6a18c07c2d7fe832 /src/lib/mangadex.ts
parentfix(mangadex): better estimates (diff)
downloaddue.moe-5ba4e5c625a7d582ff124044149fd5d8355209a7.tar.xz
due.moe-5ba4e5c625a7d582ff124044149fd5d8355209a7.zip
refactor(manga): rename from mangadex
Diffstat (limited to 'src/lib/mangadex.ts')
-rw-r--r--src/lib/mangadex.ts69
1 files changed, 0 insertions, 69 deletions
diff --git a/src/lib/mangadex.ts b/src/lib/mangadex.ts
deleted file mode 100644
index 5c73aced..00000000
--- a/src/lib/mangadex.ts
+++ /dev/null
@@ -1,69 +0,0 @@
-import { recentMediaActivities, type Media } from '$lib/AniList/media';
-import type { UserIdentity } from './AniList/identity';
-import { chapterDatabase } from './chapterDatabase';
-
-export const chapterCount = async (
- identity: UserIdentity,
- manga: Media,
- preferActivity = false
-): Promise<number | null> => {
- const chapters = await chapterDatabase.chapters.get(manga.id);
-
- if (chapters !== undefined) {
- return chapters.chapters === -1 ? null : chapters.chapters;
- }
-
- if (preferActivity) {
- return await recentMediaActivities(identity, manga);
- }
-
- const tryRecentMediaActivities = async () => {
- const anilistData = await recentMediaActivities(identity, manga);
-
- await chapterDatabase.chapters.put({
- id: manga.id,
- chapters: anilistData ? anilistData : -1
- });
-
- return anilistData;
- };
-
- const mangadexData = await (
- await fetch(
- `/api/mangadex/manga?english=${manga.title.english}&year=${manga.startDate.year}&romaji=${manga.title.romaji}&native=${manga.title.native}`
- )
- ).json();
-
- if (mangadexData['data'] === undefined || mangadexData['data'].length === 0) {
- return await tryRecentMediaActivities();
- }
-
- const lastChapterData = await (
- await fetch(`/api/mangadex/feed?id=${mangadexData['data'][0]['id']}`)
- ).json();
-
- if (lastChapterData['data'] === undefined || lastChapterData['data'].length === 0) {
- return await tryRecentMediaActivities();
- }
-
- let lastChapter = lastChapterData['data'][0]['attributes']['chapter'];
-
- if ((manga.mediaListEntry || { progress: 0 }).progress > lastChapter) {
- const anilistData = await recentMediaActivities(identity, manga);
-
- if (anilistData !== null && anilistData > lastChapter) {
- lastChapter = anilistData;
- }
- }
-
- if (lastChapter == 0) {
- lastChapter = -1;
- }
-
- await chapterDatabase.chapters.put({
- id: manga.id,
- chapters: Number(lastChapter)
- });
-
- return Number(lastChapter);
-};