You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
714 B
TypeScript

import { authjsHandler, authjsSessionMiddleware } from "./server/authjs-handler";
import { vikeHandler } from "./server/vike-handler";
import { Hono } from "hono";
import { createHandler, createMiddleware } from "@universal-middleware/hono";
import { trpcHandler } from "./server/trpc-handler";
const app = new Hono();
app.use(createMiddleware(authjsSessionMiddleware)());
/**
* Auth.js route
* @link {@see https://authjs.dev/getting-started/installation}
**/
app.use("/api/auth/**", createHandler(authjsHandler)());
app.use("/api/trpc/*", createHandler(trpcHandler)("/api/trpc"));
/**
* Vike route
*
* @link {@see https://vike.dev}
**/
app.all("*", createHandler(vikeHandler)());
export default app;