forked from pinks/eris
1
0
Fork 0
nyx/api/mod.ts

28 lines
850 B
TypeScript
Raw Normal View History

2023-10-05 09:00:51 +00:00
import { route } from "reroute";
import { serveSpa } from "serve_spa";
import { api } from "./serveApi.ts";
2023-10-19 21:37:03 +00:00
import { fromFileUrl } from "std/path/mod.ts";
2024-01-26 07:42:44 +00:00
// New function that handles the webhook
import { handleWebhook } from "../bot/mod.ts";
2023-10-05 09:00:51 +00:00
2023-10-05 09:00:51 +00:00
export async function serveUi() {
const server = Deno.serve({ port: 8443 }, (request) =>
2023-10-05 09:00:51 +00:00
route(request, {
"/api/*": (request) => api.fetch(request),
2024-01-26 07:42:44 +00:00
"/webhook": handleWebhook, // Create the webhook route handle
2023-10-05 09:00:51 +00:00
"/*": (request) =>
serveSpa(request, {
2023-10-13 18:56:16 +00:00
fsRoot: fromFileUrl(new URL("../ui/", import.meta.url)),
2023-10-05 09:00:51 +00:00
indexFallback: true,
importMapFile: "../deno.json",
aliasMap: {
"/utils/*": "../utils/",
2023-09-26 10:43:36 +00:00
},
2023-10-09 19:03:31 +00:00
log: (_request, response) => response.status >= 400,
2023-10-05 09:00:51 +00:00
}),
}));
2023-09-26 10:43:36 +00:00
await server.finished;
}