Bulk Registration UI
Component Detail
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.
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