aboutsummaryrefslogtreecommitdiff
path: root/src/routes/api/animeschedule/+server.ts
blob: 75257569230311f36dfc007050aec6debb0fe537 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { env } from "$env/dynamic/private";
import { fetchTimetables } from "$lib/Media/Anime/Airing/animeSchedule";
import { appOriginHeaders } from "$lib/Utility/appOrigin";

export const GET = async () => {
	const token = env.ANIMESCHEDULE_CLIENT_TOKEN;
	const generatedAt = Math.floor(Date.now() / 1000);

	if (!token)
		return Response.json(
			{ generatedAt, native: [], sub: [], dub: [] },
			{ headers: appOriginHeaders({ "Cache-Control": "max-age=60" }) },
		);

	const { native, sub, dub } = await fetchTimetables(token);

	return Response.json(
		{ generatedAt, native, sub, dub },
		{
			headers: appOriginHeaders({
				"Cache-Control": "max-age=86400, s-maxage=86400",
			}),
		},
	);
};