Notes List Screen
Component Detail
Description
Flutter screen displaying a paginated, filterable list of notes scoped by contact or aggregated across all of a user's notes. Provides a debounced full-text search bar covering the MUST HAVE Phase 1 'basic search over notater' requirement, plus sort controls by date and contact to reduce cognitive overhead during active casework.
notes-list-screen
Sources & reasoning
The Notes List Screen directly fulfills the MUST HAVE Phase 1 'basic search over notater' requirement confirmed by all four organizations. It is the primary UI surface for browsing, filtering, and searching notes before follow-up visits, enabling context retrieval under poor connectivity via the offline-first Drift layer.
No source references — this artifact was included based on reasoning alone (see above).
Responsibilities
- Render paginated note list with contact name, date preview, and note excerpt
- Debounced full-text search bar querying Drift local notes table
- Filter and sort by date range or contact scope
- WCAG 2.2 AA: 4.5:1 contrast, minimum 24x24 touch targets, VoiceOver/TalkBack semantic labels on all list items
- Switch between contact-scoped view and personal aggregated view
Interfaces
showNotesForContact(contactId)
showAllNotes(userId)
searchNotes(query)
filterByDate(dateRange)
sortByContact()