const jwt = require('jsonwebtoken'); const JWT_SECRET = process.env.JWT_SECRET || 'your-secret-key-change-in-production'; const authMiddleware = (req, res, next) => { const token = req.headers.authorization?.split(' ')[1]; if (!token) { return res.status(401).json({ error: 'No token provided' }); } try { const decoded = jwt.verify(token, JWT_SECRET); req.userId = decoded.userId; next(); } catch (error) { return res.status(401).json({ error: 'Invalid token' }); } }; const generateToken = (userId) => { return jwt.sign({ userId }, JWT_SECRET, { expiresIn: '24h' }); }; module.exports = { authMiddleware, generateToken };