{"version":3,"file":"confirmSignUp.mjs","sources":["../../../../../src/providers/cognito/apis/confirmSignUp.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AuthAction, HubInternal, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { getRegionFromUserPoolId } from '../../../foundation/parsers';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { getUserContextData } from '../utils/userContextData';\nimport { createConfirmSignUpClient } from '../../../foundation/factories/serviceClients/cognitoIdentityProvider';\nimport { createCognitoUserPoolEndpointResolver } from '../factories';\nimport { autoSignInStore } from '../../../client/utils/store';\nimport { resetAutoSignIn } from './autoSignIn';\n/**\n * Confirms a new user account.\n *\n * @param input -  The ConfirmSignUpInput object.\n * @returns ConfirmSignUpOutput\n * @throws -{@link ConfirmSignUpException }\n * Thrown due to an invalid confirmation code.\n * @throws -{@link AuthValidationErrorCode }\n * Thrown due to an empty confirmation code\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function confirmSignUp(input) {\n    const { username, confirmationCode, options } = input;\n    const authConfig = Amplify.getConfig().Auth?.Cognito;\n    assertTokenProviderConfig(authConfig);\n    const { userPoolId, userPoolClientId, userPoolEndpoint } = authConfig;\n    const clientMetadata = options?.clientMetadata;\n    assertValidationError(!!username, AuthValidationErrorCode.EmptyConfirmSignUpUsername);\n    assertValidationError(!!confirmationCode, AuthValidationErrorCode.EmptyConfirmSignUpCode);\n    const UserContextData = getUserContextData({\n        username,\n        userPoolId,\n        userPoolClientId,\n    });\n    const confirmSignUpClient = createConfirmSignUpClient({\n        endpointResolver: createCognitoUserPoolEndpointResolver({\n            endpointOverride: userPoolEndpoint,\n        }),\n    });\n    const { Session: session } = await confirmSignUpClient({\n        region: getRegionFromUserPoolId(authConfig.userPoolId),\n        userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignUp),\n    }, {\n        Username: username,\n        ConfirmationCode: confirmationCode,\n        ClientMetadata: clientMetadata,\n        ForceAliasCreation: options?.forceAliasCreation,\n        ClientId: authConfig.userPoolClientId,\n        UserContextData,\n    });\n    return new Promise((resolve, reject) => {\n        try {\n            const signUpOut = {\n                isSignUpComplete: true,\n                nextStep: {\n                    signUpStep: 'DONE',\n                },\n            };\n            const autoSignInStoreState = autoSignInStore.getState();\n            if (!autoSignInStoreState.active ||\n                autoSignInStoreState.username !== username) {\n                resolve(signUpOut);\n                resetAutoSignIn();\n                return;\n            }\n            autoSignInStore.dispatch({ type: 'SET_SESSION', value: session });\n            const stopListener = HubInternal.listen('auth-internal', ({ payload }) => {\n                switch (payload.event) {\n                    case 'autoSignIn':\n                        resolve({\n                            isSignUpComplete: true,\n                            nextStep: {\n                                signUpStep: 'COMPLETE_AUTO_SIGN_IN',\n                            },\n                        });\n                        stopListener();\n                }\n            });\n            HubInternal.dispatch('auth-internal', {\n                event: 'confirmSignUp',\n                data: signUpOut,\n            });\n        }\n        catch (error) {\n            reject(error);\n        }\n    });\n}\n"],"names":[],"mappings":"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"}