diff options
| author | Fuwn <[email protected]> | 2023-11-09 21:38:43 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-11-09 21:38:43 -0800 |
| commit | 454e71080dcfa7e90621df77907373d3443033ec (patch) | |
| tree | c0b0745e5be3d88f705f04b905a5cddfd721c5b8 /src/routes/api/mangadex | |
| parent | refactor(media): collection to common template (diff) | |
| download | due.moe-454e71080dcfa7e90621df77907373d3443033ec.tar.xz due.moe-454e71080dcfa7e90621df77907373d3443033ec.zip | |
feat(manga): add status filter
Diffstat (limited to 'src/routes/api/mangadex')
| -rw-r--r-- | src/routes/api/mangadex/manga/+server.ts | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/routes/api/mangadex/manga/+server.ts b/src/routes/api/mangadex/manga/+server.ts index 5bfa1882..c2c75082 100644 --- a/src/routes/api/mangadex/manga/+server.ts +++ b/src/routes/api/mangadex/manga/+server.ts @@ -1,11 +1,36 @@ export const GET = async ({ url }) => { + let status = ''; + + 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) => { return await ( await fetch( `https://api.mangadex.org/manga?title=${encodeURIComponent( title - )}&year=${url.searchParams.get('year')}` + )}&year=${url.searchParams.get('year')}&status[]=${status}` ) ).json(); }; |