TofuStack/src/lib/server/api/middlewares/require-auth.middleware.ts
2024-09-03 22:18:38 -05:00

15 lines
No EOL
470 B
TypeScript

import type { MiddlewareHandler } from "hono";
import { createMiddleware } from "hono/factory";
import type { Session, User } from "lucia";
import { Unauthorized } from "../common/exceptions";
export const requireAuth: MiddlewareHandler<{
Variables: {
session: Session;
user: User;
};
}> = createMiddleware(async (c, next) => {
const user = c.var.user;
if (!user) throw Unauthorized('You must be logged in to access this resource');
return next();
});