high complexity extracted Activity Registration Confidence: 100%
9
Components
32
Shared
0
User Stories
Yes
Analyzed

Description

The Activity Registration Wizard provides a guided multi-step flow for registering activities that require more structured input than the quick log allows - for example, activities involving multiple contacts, specific location data, detailed notes, or document attachments. The wizard breaks the registration into discrete, validated steps (contact selection → date/time/duration → activity type → summary/notes) so that users are never overwhelmed by a single long form. State is preserved between steps so the user can navigate back without losing input.

User Flow

Activity Registration Wizard user flow
Click to expand

Analysis

Business Value

Not all activities fit the quick-log pattern. Group events, home visits with structured reporting (as required by Blindeforbundet), and activities requiring document attachments need a more thorough registration path. Providing a wizard ensures data completeness for these cases, which directly improves the quality of Bufdir reports and reduces the need for coordinators to follow up on incomplete records. Organisations that require formalised post-visit report structures (helsetilstand, kursinteresse, hjelpemiddelsituasjon) depend on this feature to capture that structured data consistently.

Implementation Notes

The wizard is implemented as a Flutter Navigator 2.0 page stack managed by the Wizard State Manager service, which holds the in-progress registration as an immutable state object updated via BLoC events. Each step is a self-contained widget that emits validation events before allowing forward navigation. The Activity Form Validator service enforces field-level and cross-field rules (e.g., end time must be after start time). On final submission the complete activity payload is assembled and posted to the REST API via the Activity Service. Deep-link support allows coordinators to pre-populate the wizard with a contact ID when registering on behalf of someone else. All steps must meet WCAG 2.2 AA including keyboard-navigable focus order.

Components (41)

User Interface (6)

Service Layer (2)

Infrastructure (1)

Shared Components

These components are reused across multiple features

User Stories

No user stories have been generated for this feature yet.