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

Description

The primary screen for bulk activity registration, combining a shared activity metadata form (type, date, duration, summary) with a searchable multi-select peer mentor picker scoped to the coordinator's organization. Uses virtual list rendering to handle organizations with large peer mentor pools efficiently.

Feature: Bulk Registration

bulk-registration-ui

Sources & reasoning

A dedicated bulk registration screen is required to let coordinators select multiple peer mentors and submit shared activity data in a single action. Virtual list rendering is explicitly required in the implementation notes for large organizations, making this more than a trivial form extension.

No source references — this artifact was included based on reasoning alone (see above).

Responsibilities

  • Render searchable multi-select peer mentor picker scoped to the coordinator's organization with virtual list rendering
  • Collect shared activity metadata via form fields (type, date, duration, summary) with sensible defaults
  • Display selection count and enforce at least one peer mentor selected before enabling submission
  • Show per-mentor submission result feedback including duplicate warnings after successful submit
  • Support offline queuing - disable submit when offline and surface pending sync status

Interfaces

selectMentors(mentorIds: List<String>): void
deselectMentor(mentorId: String): void
searchMentors(query: String): List<PeerMentor>
setActivityMetadata(type: String, date: DateTime, duration: int, summary: String): void
submitBulkRegistration(): Future<BulkRegistrationResult>
showDuplicateWarnings(warnings: List<DuplicateWarning>): void

Relationships

Dependencies (2)

Components this component depends on

Related Data Entities (2)

Data entities managed by this component