Activity Wizard Screen
Component Detail
Description
Multi-step wizard screen managing the full activity registration flow: contact selection, date, time, duration, and summary. Implements BLoC pattern for step state management and GoRouter nested navigation within StatefulShellRoute to preserve back-stack correctly. Validates each step before advancing and supports partial saves so an interrupted registration can be resumed.
activity-wizard-screen
Responsibilities
- Orchestrate multi-step wizard navigation and state via BLoC
- Validate each step before advancing to the next
- Support partial saves for interrupted registrations
- Pre-fill fields with user default values on wizard launch
Interfaces
build(context)
onNextStep(stepData)
onPreviousStep()
onStepValidated(stepIndex, isValid)
onWizardCompleted(activityData)
onWizardCancelled()
loadDefaults()
resumePartialRegistration(draftId)
showStepProgressIndicator(currentStep, totalSteps)
Sub-Components (3)
Wizard step for selecting the contact/peer mentor associated with the activity, with search and recent contacts shortcut.
- Render searchable contact list
- Pre-select most recent contact as default
- Emit selected contact to wizard BLoC
Wizard step for entering activity date, start time, and duration. Pre-fills today's date and 30-minute default duration from user preferences. Uses accessible date/time pickers meeting WCAG 2.2 AA tap targets.
- Render accessible date, time, and duration pickers
- Apply stored default values (today's date, 30 min)
- Validate date/time range and duration before advancing
Wizard step for entering a brief free-text or speech-to-text summary of the activity. Supports optional structured fields for organizations requiring a formal report structure (health status, course interest, next steps).
- Render summary text input with optional structured fields
- Support speech-to-text integration hook
- Validate summary before wizard completion
Related Data Entities (3)
Data entities managed by this component