Spaces:
Sleeping
Sleeping
| from fastapi import APIRouter, Depends, status | |
| from app.api.dependencies import get_auth_service, get_current_user | |
| from app.db.models import User | |
| from app.schemas.auth import LoginRequest, RegisterRequest, TokenResponse, UserResponse | |
| from app.services.auth import AuthService | |
| router = APIRouter(prefix="/auth", tags=["Authentication"]) | |
| def register( | |
| payload: RegisterRequest, | |
| auth_service: AuthService = Depends(get_auth_service), | |
| ) -> UserResponse: | |
| return auth_service.register(payload) | |
| def login( | |
| payload: LoginRequest, | |
| auth_service: AuthService = Depends(get_auth_service), | |
| ) -> TokenResponse: | |
| return auth_service.login(payload) | |
| def me(current_user: User = Depends(get_current_user)) -> UserResponse: | |
| return UserResponse.model_validate(current_user) | |