Files
twimg-backend/app/models.py
2025-07-13 12:56:16 -04:00

40 lines
887 B
Python

from pydantic import BaseModel, Field, EmailStr
from typing import Optional, List
class LoginRequest(BaseModel):
id_token: str
class UserCreate(BaseModel):
email: EmailStr
password: str = Field(..., min_length=6)
full_name: str = Field(..., min_length=3)
class UserRecord(BaseModel):
uid: str
email: EmailStr
full_name: str
role: str = "member"
class Token(BaseModel):
access_token: str
token_type: str = "bearer"
class Video(BaseModel):
id: str
file_path: str
person: str
game: Optional[str] = None
has_been_voted: bool = False
class VoteCreate(BaseModel):
decision: str
reason: str
recommended_game: Optional[str] = None
class Vote(BaseModel):
id: str
video_id: str
user_id: str
decision: str
reason: str
recommended_game: Optional[str] = None