from fastapi import APIRouter, Depends, HTTPException from typing import Optional from schemas.user import UserLogin from helpers.user_helpers import authenticate_user from db import get_db, Session router = APIRouter() @router.post("/login", status_code=200, response_model=Optional[dict]) async def login(user_data: UserLogin, db: Session = Depends(get_db)): user = authenticate_user(db, user_data) if not user: raise HTTPException(status_code=401, detail="Invalid credentials") return user