AnuragShirke's picture
Full Project
3b5d2e9
import uuid
from typing import Optional
from fastapi_users import schemas
from pydantic import BaseModel, EmailStr
from datetime import datetime
class UserRead(schemas.BaseUser[uuid.UUID]):
"""User schema for reading user data"""
created_at: datetime
updated_at: datetime
class UserCreate(schemas.BaseUserCreate):
"""User schema for creating new users"""
email: EmailStr
password: str
class UserUpdate(schemas.BaseUserUpdate):
"""User schema for updating user data"""
password: Optional[str] = None
email: Optional[EmailStr] = None
class DocumentMetadataRead(BaseModel):
"""Document metadata schema for reading"""
id: uuid.UUID
filename: str
original_size: Optional[int]
chunks_count: Optional[int]
upload_date: datetime
file_hash: Optional[str]
class Config:
from_attributes = True
class DocumentMetadataCreate(BaseModel):
"""Document metadata schema for creation"""
filename: str
original_size: Optional[int] = None
chunks_count: Optional[int] = None
file_hash: Optional[str] = None