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

Description

Review screen presented before final submission in bulk mode, listing all selected peer mentors alongside the single activity record that will be replicated for each. Allows the coordinator to remove individual mentors from the batch before confirming the batch insert.

Feature: Bulk & Proxy Registration

bulk-confirmation-screen

Summaries

The Bulk Registration Confirmation Screen is the final safeguard in the coordinator's bulk activity recording workflow, giving program staff a clear review opportunity before a single activity record is replicated across multiple peer mentors simultaneously. This review step significantly reduces costly data correction work: without it, coordinators submitting to dozens of mentors at once have no opportunity to catch errors or remove ineligible participants before records are committed. By surfacing duplicate detection warnings inline and allowing individual mentor removal before confirmation, the component prevents erroneous records from entering the system in the first place — protecting data quality, reducing administrative rework, and ensuring program reports reflect accurate participation. The progress indicator during batch submission also reduces coordinator anxiety and support burden during large submissions, contributing to a more professional and trustworthy user experience that reflects well on the program's operational maturity.

The Bulk Confirmation Screen is a medium-complexity mobile component with two external dependencies that should be treated as scheduling risks: bulk-registration-service, which executes the actual batch insert, and proxy-duplicate-detector, which must evaluate each mentor in the selected batch before the screen renders its warnings. Both services need to be stable and return responses within acceptable latency thresholds before this component can be meaningfully tested end-to-end. Development effort centers on the interactive mentor list — supporting removal of individual mentors from the pending batch requires careful local state management to ensure the UI remains consistent as the list shrinks. QA scenarios must cover: batches where all mentors are flagged as duplicates, mid-submission failures where only some records are committed, edge cases where the batch becomes empty after removals, and slow network conditions where displaySubmissionProgress must update incrementally.

Deployment should be coordinated with bulk-registration-service releases since API contract changes directly break this component.

The Bulk Confirmation Screen is a mobile UI component responsible for rendering a pre-submission review layer between mentor selection and batch insert execution. loadBatchPreview(mentorIds, activityData) is the entry point: it renders the activity summary card alongside a scrollable list of selected mentor names, fetching duplicate status from proxy-duplicate-detector for each mentorId before the screen is fully rendered — this should be done in parallel with a loading state to avoid blocking the UI. removeMentorFromBatch(mentorId) mutates local batch state; the component must re-evaluate whether any displayed warnings are resolved after removal and update the confirmation button's enabled state accordingly. displayDuplicateWarning(mentorId, reason) renders an inline warning badge against the specific mentor row — the reason string should be surfaced verbatim or mapped to user-friendly language at this layer rather than in the service.

confirmBatchSubmission() delegates to bulk-registration-service and initiates the progress loop; displaySubmissionProgress(completed, total) should update reactively as the service emits per-record completion events, not just at the end. cancelBatch() must clean up any in-flight service calls and navigate back without leaving orphaned batch state. Error boundaries should be per-mentor-record so a single failed insert does not terminate the entire batch progression.

Responsibilities

  • Display activity summary alongside all selected peer mentor names
  • Allow removal of individual mentors from the pending batch
  • Show duplicate-detection warnings for any mentor flagged as a potential duplicate
  • Trigger batch submission on confirmation

Interfaces

loadBatchPreview(mentorIds, activityData)
removeMentorFromBatch(mentorId)
displayDuplicateWarning(mentorId, reason)
confirmBatchSubmission()
cancelBatch()
displaySubmissionProgress(completed, total)

Relationships

Dependencies (2)

Components this component depends on

Dependents (1)

Components that depend on this component

Related Data Entities (1)

Data entities managed by this component