ScreenReaderWarningService
Component Detail
Description
A service layer that intercepts native accessibility events and coordinates the warning flow between the OS accessibility APIs and the UI widget. It manages state for which fields are currently pending user confirmation and ensures no sensitive content is leaked to the screen reader before consent is granted. Provides a registration API so any screen can declare its sensitive fields.
screen-reader-warning-service
Sources & reasoning
Line 37 explicitly lists 'Varsling ved opplesning av sensitive felt (NHF)' as a concrete accessibility requirement. Blueprint marks this feature [MVP] under the Accessibility area. NHF's user base includes screen reader-dependent users who operate in public community settings where accidental audio disclosure of personal data is a real privacy risk, justifying MVP priority.
-
docs/source/likeperson.md · line 37Varsling ved opplesning av sensitive felt (NHF).
Responsibilities
- Register and track sensitive fields by element ID or accessibility label
- Intercept accessibility focus events and pause screen reader announcement
- Emit events to trigger the SensitiveFieldWarningWidget confirmation dialog
- Resume or block the queued accessibility announcement based on dialog outcome
- Provide a field registration/deregistration API for use across all app screens
Interfaces
registerSensitiveField(fieldId: string, options: SensitiveFieldOptions): void
deregisterSensitiveField(fieldId: string): void
handleAccessibilityFocusEvent(fieldId: string): Promise<boolean>
isFieldPendingConfirmation(fieldId: string): boolean