ConfidentialityDeclarationScreen
Component Detail
User Interface
medium complexity
mobile
0
Dependencies
0
Dependents
0
Entities
0
Integrations
Description
A blocking modal or full-screen overlay that appears within the expense registration flow when a qualifying driver or sensitive-role expense type is detected. It presents the declaration terms and requires explicit acceptance before submission can proceed. The screen is dismissed only upon confirmed acceptance, which is then forwarded to the service layer.
confidentiality-declaration-screen
Sources & reasoning
Line 71 explicitly lists driver honoraria and confidentiality declarations as a Blindeforbundet requirement within the expense registration flow. The parent area is Fase 2 in the priority matrix at line 148, mapping to v1.0. The feature is compliance-driven, not optional UX.
-
docs/source/likeperson.md · line 71Sjåfærhonorarer og taushetseerklæringer for sjåfører (Blindeforbundet).
-
docs/source/likeperson.md · line 148Reiserefusjon / utleggsregistrering | - | - | ✓ | ✓ | ✓ | SHOULD HAVE | 2
Responsibilities
- Detect qualifying expense types and trigger declaration gate in the registration flow
- Render full declaration text with accept/decline controls
- Block form submission until acceptance is confirmed
- Dispatch acceptance event with user context to ConfidentialityService
- Display error or re-prompt if service call fails
Interfaces
show(expenseType: ExpenseType, userId: string): Promise<DeclarationResult>
onAccepted(callback: (result: DeclarationAcceptance) => void): void
onDeclined(callback: () => void): void