- Admin: per-block "Break Time" checkbox + duration (min) setting; new Break Activities section (global list, same pattern as Morning Routine) - Dashboard: break timer section appears on blocks with break enabled; Start/Pause/Resume/Reset controls work independently of the main timer - TV: left column switches to amber break badge + countdown during break; center column shows configurable Break Activities list - Backend: break_time_enabled/break_time_minutes columns on schedule_blocks (auto-migrated on startup); break_activity_items table + CRUD router; break timer events (break_start/pause/resume/reset) stored as TimerEvents and broadcast via WebSocket; break_activities included in dashboard snapshot and session_update broadcast Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
30 lines
883 B
Python
30 lines
883 B
Python
# Import all models here so Alembic can discover them via Base.metadata
|
|
from app.models.base import Base, TimestampMixin
|
|
from app.models.user import User
|
|
from app.models.child import Child
|
|
from app.models.subject import Subject, SubjectOption
|
|
from app.models.schedule import ScheduleTemplate, ScheduleBlock
|
|
from app.models.session import DailySession, TimerEvent, TimerEventType
|
|
from app.models.activity import ActivityLog
|
|
from app.models.morning_routine import MorningRoutineItem
|
|
from app.models.break_activity import BreakActivityItem
|
|
from app.models.strike import StrikeEvent
|
|
|
|
__all__ = [
|
|
"Base",
|
|
"TimestampMixin",
|
|
"User",
|
|
"Child",
|
|
"Subject",
|
|
"SubjectOption",
|
|
"ScheduleTemplate",
|
|
"ScheduleBlock",
|
|
"DailySession",
|
|
"TimerEvent",
|
|
"TimerEventType",
|
|
"ActivityLog",
|
|
"MorningRoutineItem",
|
|
"BreakActivityItem",
|
|
"StrikeEvent",
|
|
]
|