Quick Log Screen
Component Detail
Description
Single-screen Flutter UI that lets a peer mentor record a completed interaction in two taps. Pre-fills today's date and a 30-minute duration via Riverpod providers; all fields are overridable before saving. Designed for minimum cognitive load with WCAG 2.2 AA compliant touch targets (minimum 24x24 px), semantic labels, and 4.5:1 contrast ratios.
quick-log-screen
Sources & reasoning
The Quick Log Screen is the primary deliverable of this feature - a single Flutter screen that materialises the two-tap registration goal stated by all four organisations. Riverpod providers inject the date and duration defaults so the screen is stateless apart from overrides, keeping the implementation low-complexity. WCAG requirements are non-negotiable from MVP and are baked into the widget rather than added later.
No source references — this artifact was included based on reasoning alone (see above).
Responsibilities
- Render pre-filled activity form with date and duration defaults
- Accept user overrides for contact, date, duration, and activity type
- Submit activity via optimistic mutation (write to Drift, enqueue outbox)
- Provide WCAG 2.2 AA compliant focus order, labels, and touch targets
- Display validation errors with actionable correction hints
Interfaces
build(BuildContext) → Widget
onSave(ActivityDraft) → void
onFieldChanged(String field, dynamic value) → void
Related Data Entities (3)
Data entities managed by this component