diff options
| author | Fuwn <[email protected]> | 2023-12-28 17:29:11 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-12-28 17:29:11 -0800 |
| commit | a7c611ff57c99846a74bce374937a07851d7b388 (patch) | |
| tree | 604bf56bcd99a18084468f2383471e1663cb9856 /src/routes/api/mangadex/manga/+server.ts | |
| parent | chore(manga): no proxy dev (diff) | |
| download | due.moe-a7c611ff57c99846a74bce374937a07851d7b388.tar.xz due.moe-a7c611ff57c99846a74bce374937a07851d7b388.zip | |
refactor(api): remove unused api and mangadex
Diffstat (limited to 'src/routes/api/mangadex/manga/+server.ts')
| -rw-r--r-- | src/routes/api/mangadex/manga/+server.ts | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/src/routes/api/mangadex/manga/+server.ts b/src/routes/api/mangadex/manga/+server.ts deleted file mode 100644 index 381e2a5a..00000000 --- a/src/routes/api/mangadex/manga/+server.ts +++ /dev/null @@ -1,72 +0,0 @@ -import { checkRateLimit } from '$lib/rateLimit'; - -export const GET = async (event) => { - const limit = await checkRateLimit(event); - const { url } = event; - - if (limit) return limit; - - let status = ''; - let error = false; - - switch (url.searchParams.get('status')) { - case 'FINISHED': - { - status = 'completed'; - } - break; - case 'RELEASING': - { - status = 'ongoing'; - } - break; - case 'HIATUS': - { - status = 'hiatus'; - } - break; - case 'CANCELLED': - { - status = 'cancelled'; - } - break; - } - - const nullIfNullString = (s: string | null) => (s == 'null' ? null : s); - const get = async (title: string) => { - try { - return await ( - await fetch( - `https://api.mangadex.org/manga?title=${encodeURIComponent( - title - )}&year=${url.searchParams.get('year')}&status[]=${status}` - ) - ).json(); - } catch { - error = true; - } - }; - - let mangadexData = await get( - nullIfNullString(url.searchParams.get('native')) || - nullIfNullString(url.searchParams.get('english')) || - nullIfNullString(url.searchParams.get('romaji')) || - '' - ); - - if (error) return new Response('rate-limited'); - - if (mangadexData['data'] === undefined || mangadexData['data'].length === 0) { - mangadexData = await get(nullIfNullString(url.searchParams.get('english')) || ''); - - if (mangadexData['data'] === undefined || mangadexData['data'].length === 0) { - mangadexData = await get(nullIfNullString(url.searchParams.get('romaji')) || ''); - } - } - - return Response.json(mangadexData, { - headers: { - 'Cache-Control': 'max-age=300' - } - }); -}; |