init
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
from datetime import datetime
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class SessionCreate(BaseModel):
|
||||
title: str = "Новый чат"
|
||||
|
||||
|
||||
class SessionOut(BaseModel):
|
||||
id: int
|
||||
title: str
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class MessageOut(BaseModel):
|
||||
id: int
|
||||
role: str
|
||||
content: str
|
||||
created_at: datetime
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class SessionDetailOut(SessionOut):
|
||||
messages: list[MessageOut]
|
||||
|
||||
|
||||
class MessageCreate(BaseModel):
|
||||
content: str = Field(min_length=1)
|
||||
|
||||
|
||||
class PomodoroStart(BaseModel):
|
||||
duration_min: int = Field(default=25, ge=1, le=180)
|
||||
task_note: str = ""
|
||||
|
||||
|
||||
class PomodoroStop(BaseModel):
|
||||
result: str = ""
|
||||
completed: bool = False
|
||||
Reference in New Issue
Block a user