@aws-amplify/auth
Version:
Auth category of aws-amplify
1 lines • 7.89 kB
Source Map (JSON)
{"version":3,"file":"signUp.mjs","sources":["../../../../../src/providers/cognito/apis/signUp.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, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { signUp as signUpClient } from '../utils/clients/CognitoIdentityProvider';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { toAttributeType } from '../utils/apiHelpers';\nimport { autoSignInUserConfirmed, autoSignInWhenUserIsConfirmedWithLink, handleCodeAutoSignIn, isAutoSignInStarted, isSignUpComplete, setAutoSignInStarted, setUsernameUsedForAutoSignIn, } from '../utils/signUpHelpers';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { setAutoSignIn } from './autoSignIn';\n/**\n * Creates a user\n *\n * @param input - The SignUpInput object\n * @returns SignUpOutput\n * @throws service: {@link SignUpException } - Cognito service errors thrown during the sign-up process.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown either username or password\n * are not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function signUp(input) {\n const { username, password, options } = input;\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const signUpVerificationMethod = authConfig?.signUpVerificationMethod ?? 'code';\n const { clientMetadata, validationData, autoSignIn } = input.options ?? {};\n assertTokenProviderConfig(authConfig);\n assertValidationError(!!username, AuthValidationErrorCode.EmptySignUpUsername);\n assertValidationError(!!password, AuthValidationErrorCode.EmptySignUpPassword);\n const signInServiceOptions = typeof autoSignIn !== 'boolean' ? autoSignIn : undefined;\n const signInInput = {\n username,\n options: signInServiceOptions,\n };\n // if the authFlowType is 'CUSTOM_WITHOUT_SRP' then we don't include the password\n if (signInServiceOptions?.authFlowType !== 'CUSTOM_WITHOUT_SRP') {\n signInInput.password = password;\n }\n if (signInServiceOptions || autoSignIn === true) {\n setUsernameUsedForAutoSignIn(username);\n setAutoSignInStarted(true);\n }\n const clientOutput = await signUpClient({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignUp),\n }, {\n Username: username,\n Password: password,\n UserAttributes: options?.userAttributes && toAttributeType(options?.userAttributes),\n ClientMetadata: clientMetadata,\n ValidationData: validationData && toAttributeType(validationData),\n ClientId: authConfig.userPoolClientId,\n });\n const { UserSub, CodeDeliveryDetails } = clientOutput;\n if (isSignUpComplete(clientOutput) && isAutoSignInStarted()) {\n setAutoSignIn(autoSignInUserConfirmed(signInInput));\n return {\n isSignUpComplete: true,\n nextStep: {\n signUpStep: 'COMPLETE_AUTO_SIGN_IN',\n },\n userId: UserSub,\n };\n }\n else if (isSignUpComplete(clientOutput) && !isAutoSignInStarted()) {\n return {\n isSignUpComplete: true,\n nextStep: {\n signUpStep: 'DONE',\n },\n userId: UserSub,\n };\n }\n else if (!isSignUpComplete(clientOutput) &&\n isAutoSignInStarted() &&\n signUpVerificationMethod === 'code') {\n handleCodeAutoSignIn(signInInput);\n }\n else if (!isSignUpComplete(clientOutput) &&\n isAutoSignInStarted() &&\n signUpVerificationMethod === 'link') {\n setAutoSignIn(autoSignInWhenUserIsConfirmedWithLink(signInInput));\n return {\n isSignUpComplete: false,\n nextStep: {\n signUpStep: 'COMPLETE_AUTO_SIGN_IN',\n codeDeliveryDetails: {\n deliveryMedium: CodeDeliveryDetails?.DeliveryMedium,\n destination: CodeDeliveryDetails?.Destination,\n attributeName: CodeDeliveryDetails?.AttributeName,\n },\n },\n userId: UserSub,\n };\n }\n return {\n isSignUpComplete: false,\n nextStep: {\n signUpStep: 'CONFIRM_SIGN_UP',\n codeDeliveryDetails: {\n deliveryMedium: CodeDeliveryDetails?.DeliveryMedium,\n destination: CodeDeliveryDetails?.Destination,\n attributeName: CodeDeliveryDetails?.AttributeName,\n },\n },\n userId: UserSub,\n };\n}\n"],"names":["signUpClient"],"mappings":"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"}