a fun bot for the hc slack
1import { recentTakes } from "./routes/recentTakes";
2import video from "./routes/video";
3import { handleApiError } from "../../libs/apiError";
4import { projects } from "./routes/projects";
5import { time } from "./routes/time";
6
7export { default as video } from "./routes/video";
8
9export async function apiRouter(url: URL) {
10 try {
11 const path = url.pathname.split("/")[2];
12
13 switch (path) {
14 case "video":
15 return await video(url);
16 case "recentTakes":
17 return await recentTakes(url);
18 case "projects":
19 return await projects(url);
20 case "time":
21 return await time(url);
22 default:
23 return new Response(
24 JSON.stringify({ error: "Route not found" }),
25 {
26 status: 404,
27 headers: { "Content-Type": "application/json" },
28 },
29 );
30 }
31 } catch (error) {
32 return handleApiError(error, "apiRouter");
33 }
34}