User Interface medium complexity mobile
2
Dependencies
0
Dependents
3
Entities
0
Integrations

Description

Persistent bottom-navigation center tab widget providing immediate access to activity logging from any screen. Pre-populates intelligent defaults (today's date, 30-minute duration, most recently used contact) and enforces the fewer-than-three-taps design principle for standard registrations. Built as a Flutter widget with BLoC state management, optimistic UI updates, and full WCAG 2.2 AA compliance including 24x24px minimum touch targets and semantic labels for VoiceOver/TalkBack.

Feature: Simple Activity Logging

quick-log-widget

Responsibilities

  • Render the quick-log form with pre-populated default values from user history
  • Validate required fields (activity type, duration, contact) before submission
  • Provide optimistic UI feedback on submission while the API call completes
  • Ensure all interactive elements meet WCAG 2.2 AA touch target and contrast requirements
  • Support both peer mentor self-logging and coordinator proxy-logging modes

Interfaces

openQuickLog()
prefillDefaults(lastContact, currentDate, defaultDuration)
selectContact(contactId)
selectActivityType(activityType)
setDuration(minutes)
setDate(date)
addOptionalNote(text)
submitActivity()
showSubmissionSuccess(activityId)
showSubmissionError(error)
resetForm()
switchToProxyMode(targetUserId)

Relationships

Dependencies (2)

Components this component depends on

Related Data Entities (3)

Data entities managed by this component