EventListScreen
Component Detail
Description
Mobile screen that renders a chronological list of upcoming and past events for the logged-in user based on their role and organisation context. It displays cached events immediately from the local Drift database and refreshes from the REST API in the background. Empty states and error states are shown with actionable messages, and every element meets WCAG 2.2 AA contrast and touch-target requirements.
event-list-screen
Sources & reasoning
The core navigation description (lines 289-296) includes an event wizard in the Add modal, implying events are a first-class entity in the MVP app. A creation flow without a corresponding list view would be unusable; the blueprint confirms [MVP] for Event Listing. The listing is a structural prerequisite for coordinator oversight and statistical visibility described across all organisations.
-
docs/source/likeperson.md ยท line 289-296Bottom nav with 5 tabs: Home, Contacts, Add (modal launcher for Activity and Event wizards), Work, Notifications โฆ Event wizard (multi-step: title โ date โ time โ duration โ location โ summary)
Responsibilities
- Render event list items from BLoC state, distinguishing upcoming from past events
- Display filter controls for date range and status and dispatch filter events to the BLoC
- Show offline-cached data immediately on launch and indicate background refresh progress
- Render empty-state and error-state widgets with user-actionable messages
- Navigate to the event detail screen when an event entry is tapped
Interfaces
build(BuildContext): Widget
onFilterChanged(DateRange, EventStatus): void
onEventTapped(eventId: String): void
onRetry(): void