UNPKG

@aws-amplify/auth

Version:
46 lines (44 loc) 1.85 kB
'use strict'; // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 Object.defineProperty(exports, "__esModule", { value: true }); exports.handlePasskeyRegistrationError = void 0; const handlePasskeyError_1 = require("./handlePasskeyError"); const passkeyError_1 = require("./passkeyError"); /** * Handle Passkey Registration Errors * https://w3c.github.io/webauthn/#sctn-create-request-exceptions * * @param err unknown * @returns PasskeyError */ const handlePasskeyRegistrationError = (err) => { if (err instanceof passkeyError_1.PasskeyError) { return err; } if (err instanceof Error) { // Duplicate Passkey if (err.name === 'InvalidStateError') { const { message, recoverySuggestion } = passkeyError_1.passkeyErrorMap[passkeyError_1.PasskeyErrorCode.PasskeyAlreadyExists]; return new passkeyError_1.PasskeyError({ name: passkeyError_1.PasskeyErrorCode.PasskeyAlreadyExists, message, recoverySuggestion, underlyingError: err, }); } // User Cancels Ceremony / Generic Catch All if (err.name === 'NotAllowedError') { const { message, recoverySuggestion } = passkeyError_1.passkeyErrorMap[passkeyError_1.PasskeyErrorCode.PasskeyRegistrationCanceled]; return new passkeyError_1.PasskeyError({ name: passkeyError_1.PasskeyErrorCode.PasskeyRegistrationCanceled, message, recoverySuggestion, underlyingError: err, }); } } return (0, handlePasskeyError_1.handlePasskeyError)(err); }; exports.handlePasskeyRegistrationError = handlePasskeyRegistrationError; //# sourceMappingURL=handlePasskeyRegistrationError.js.map