Open
Description
We once had had a detailed list of error types which was later pruned down to a single AbortError
to represent all failure types whether they were related to the user aborting an action or not. Although this may be beneficial for privacy, it poses usability issues as the developer can't tell the difference between bad inputs, user action/cancellation, and misc other technical mishaps. Instead, here is a proposed list of minimal errors that balance usability and privacy:
DOMExceptions:
InvalidStateError
:- When used outside of the main frame
NotAllowedError
:- When used without user activation
- Invalid inputs (e.g. install url isn't a valid url)
AbortError
- User aborts installation when prompted
- Browser aborts installation due to privacy settings
Custom rejection messages:
ManifestIdMismatch
: when the provided id param doesn't match the app's idNoIdInManifest
: For same-origin only. When the app's manifest does not declare a validid