import jwt from 'jsonwebtoken'; import { PrismaClient } from '@prisma/client'; const prisma = new PrismaClient(); export const auth = async (req, res, next) => { try { const token = req.header('Authorization')?.replace('Bearer ', ''); if (!token) { throw new Error(); } const decoded = jwt.verify(token, process.env.JWT_SECRET); const user = await prisma.user.findUnique({ where: { id: decoded.id } }); if (!user) { throw new Error(); } req.user = user; next(); } catch (error) { res.status(401).json({ error: 'Please authenticate' }); } };