PR_IRminiSaaS / app /schemas.py
Corin1998's picture
Update app/schemas.py
0e6eb22 verified
raw
history blame contribute delete
899 Bytes
from pydantic import BaseModel, Field
from typing import Optional, List
from app.models import Tone, ContentType, DraftStatus
class DraftCreate(BaseModel):
source_type: str # pdf/url/text
source_ref: Optional[str] = None
raw_text: Optional[str] = None
content_type: ContentType
tone: Tone = Tone.neutral
class DraftOut(BaseModel):
id: int
title: Optional[str]
body_md: Optional[str]
tone: Tone
content_type: ContentType
status: DraftStatus
class Config:
from_attributes = True
class ApproveInput(BaseModel):
approve: bool = True
subject_a: Optional[str] = None
subject_b: Optional[str] = None
deliver_email_list: Optional[List[str]] = Field(default_factory=list)
deliver_x: Optional[bool] = False
deliver_note: Optional[bool] = False
class DeliverInput(BaseModel):
channels: List[str] # ["email","x","note"]