from fastapi import APIRouter, Depends, HTTPException, status from sqlalchemy.orm import Session from core.database import get_db from schemas.user import UserLogin from helpers.user_helpers import authenticate_user router = APIRouter() @router.post("/login", status_code=status.HTTP_200_OK, response_model=UserLogin) async def login( user_data: UserLogin, db: Session = Depends(get_db) ): """Login a user""" user = authenticate_user(db=db, user_data=user_data) if not user: raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid credentials") return user