PhoenixKitProjects. Web. Widgets. CalendarWidget
(PhoenixKitProjects v0.22.0)
Copy Markdown
View Source
Dashboard widget: the Overview's calendar — every scheduled task across all projects on its days (Tasks mode, coloured by project, late marker), or one ongoing line per project (Projects mode) — as a widget, so a dashboards-module board can stand in for the Overview page.
Same data, same math: the per-project schedule walk
(ScheduleLayout.tree/1) and the event builders in CalendarDisplay,
rendered by the same PhoenixLiveCalendar.CalendarComponent, which
pages months on its own (internal_date) and keeps that state across the
host's refresh ticks because the widget re-renders it under a stable id.
What the page has and the widget deliberately does not: the assignee
filter panel, the whole-day popup and click-to-open. A widget is a
LiveComponent — the calendar's on_* callbacks message the parent
LiveView, which here is the dashboards host, so none are wired.
Settings cover the useful slices instead: "mode" (tasks | projects),
"only_mine", "late_only". Views: month / agenda.