UNPKG

@aws-amplify/auth

Version:
46 lines (43 loc) 1.68 kB
import { AmplifyErrorCode } from '@aws-amplify/core/internals/utils'; import { passkeyErrorMap, PasskeyErrorCode, PasskeyError } from './passkeyError.mjs'; // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 /** * Handles Overlapping Passkey Errors Between Registration & Authentication * https://w3c.github.io/webauthn/#sctn-create-request-exceptions * https://w3c.github.io/webauthn/#sctn-get-request-exceptions * * @param err unknown * @returns PasskeyError */ const handlePasskeyError = (err) => { if (err instanceof Error) { // Passkey Operation Aborted if (err.name === 'AbortError') { const { message, recoverySuggestion } = passkeyErrorMap[PasskeyErrorCode.PasskeyOperationAborted]; return new PasskeyError({ name: PasskeyErrorCode.PasskeyOperationAborted, message, recoverySuggestion, underlyingError: err, }); } // Relying Party / Domain Mismatch if (err.name === 'SecurityError') { const { message, recoverySuggestion } = passkeyErrorMap[PasskeyErrorCode.RelyingPartyMismatch]; return new PasskeyError({ name: PasskeyErrorCode.RelyingPartyMismatch, message, recoverySuggestion, underlyingError: err, }); } } return new PasskeyError({ name: AmplifyErrorCode.Unknown, message: 'An unknown error has occurred.', underlyingError: err, }); }; export { handlePasskeyError }; //# sourceMappingURL=handlePasskeyError.mjs.map