30 lines
633 B
Python
30 lines
633 B
Python
from datetime import datetime
|
|
from typing import List, Optional
|
|
|
|
from pydantic import BaseModel
|
|
|
|
from models.Inspiration import Inspiration
|
|
|
|
|
|
class InspirationCreateRequest(BaseModel):
|
|
source_url: str
|
|
caption: Optional[str] = None
|
|
project_id: Optional[str] = None
|
|
|
|
|
|
class InspirationResponse(BaseModel):
|
|
id: str
|
|
source_url: str
|
|
caption: str | None = None
|
|
asset_id: str
|
|
is_completed: bool
|
|
created_by: str
|
|
project_id: str | None = None
|
|
created_at: datetime
|
|
updated_at: datetime
|
|
|
|
|
|
class InspirationListResponse(BaseModel):
|
|
inspirations: List[InspirationResponse]
|
|
total_count: int
|