the best lightweight web dev stack built on bun
1import { getSessionFromRequest, getUserBySession } from "./auth";
2
3/**
4 * Middleware to require authentication
5 */
6export async function requireAuth(req: Request): Promise<number> {
7 const sessionId = getSessionFromRequest(req);
8 if (!sessionId) {
9 throw new Error("Not authenticated");
10 }
11
12 const user = getUserBySession(sessionId);
13 if (!user) {
14 throw new Error("Invalid session");
15 }
16
17 return user.id;
18}