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

Description

Displays full event details and a confirmation action for the user to register themselves or a contact. Handles the sign-up flow including a confirmation dialog with proper WCAG 2.2 AA focus management and screen reader announcements for registration state changes.

Feature: Event Sign-up

event-sign-up-screen

Responsibilities

  • Render event details fetched from the API including title, date, time, location, and capacity
  • Present confirmation dialog before posting registration to POST /api/v1/events/{id}/registrations
  • Show coordinator-only contact selector for proxy registration on behalf of a contact
  • Reflect optimistic UI updates immediately after sign-up action
  • Meet WCAG 2.2 AA requirements with semantic labels and focus management

Interfaces

loadEvent(eventId: String) -> EventDetails
registerCurrentUser(eventId: String) -> RegistrationResult
registerContact(eventId: String, contactId: String) -> RegistrationResult
showConfirmationDialog(event: EventDetails) -> bool
displayRegistrationSuccess(event: EventDetails)
displayRegistrationError(error: RegistrationError)

Relationships

Dependencies (2)

Components this component depends on

Sub-Components (1)

Coordinator Contact Selector Widget
component low

A modal bottom sheet allowing coordinators to select a contact to register on behalf of. Only rendered for users with the Coordinator role. Integrates with the contact repository for search and selection.

  • Display searchable list of coordinator's contacts
  • Allow selection of a single contact for proxy event registration
  • Hide widget entirely for Peer Mentor role

Related Data Entities (2)

Data entities managed by this component