- Adds strikes (0-3) to Child model with migration
- New PATCH /api/children/{id}/strikes endpoint with WebSocket broadcast
- TV dashboard shows red ✕ marks next to child name when strikes > 0
- 3 Strikes card on Dashboard page (removed from Admin)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
28 lines
565 B
Python
28 lines
565 B
Python
from datetime import date
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class ChildCreate(BaseModel):
|
|
name: str
|
|
birth_date: date | None = None
|
|
color: str = "#4F46E5"
|
|
|
|
|
|
class ChildUpdate(BaseModel):
|
|
name: str | None = None
|
|
birth_date: date | None = None
|
|
color: str | None = None
|
|
is_active: bool | None = None
|
|
strikes: int | None = Field(None, ge=0, le=3)
|
|
|
|
|
|
class ChildOut(BaseModel):
|
|
id: int
|
|
name: str
|
|
birth_date: date | None
|
|
is_active: bool
|
|
color: str
|
|
strikes: int = 0
|
|
|
|
model_config = {"from_attributes": True}
|