from datetime import date, datetime from pydantic import BaseModel class ActivityLogCreate(BaseModel): child_id: int subject_id: int | None = None session_id: int | None = None log_date: date notes: str | None = None duration_minutes: int | None = None class ActivityLogUpdate(BaseModel): notes: str | None = None duration_minutes: int | None = None subject_id: int | None = None class ActivityLogOut(BaseModel): id: int child_id: int subject_id: int | None session_id: int | None log_date: date notes: str | None duration_minutes: int | None model_config = {"from_attributes": True} class TimelineEventUpdate(BaseModel): event_type: str | None = None occurred_at: datetime | None = None class TimelineEventOut(BaseModel): id: int event_type: str occurred_at: datetime session_date: date child_id: int child_name: str block_label: str | None = None subject_name: str | None = None subject_icon: str | None = None subject_color: str | None = None