{"version":3,"sources":["webpack:///./node_modules/@aws-amplify/ui-components/dist/esm-es5/Translations-392acb9b.js","webpack:///./node_modules/@aws-amplify/ui-components/dist/esm-es5/constants-d1abe7de.js","webpack:///./node_modules/@aws-amplify/ui-components/dist/esm-es5/auth-types-78df304e.js","webpack:///./node_modules/@aws-amplify/ui-components/dist/esm-es5/helpers-01ecf5f9.js","webpack:///./node_modules/@aws-amplify/ui-components/dist/esm-es5/amplify-confirm-sign-in_7.entry.js","webpack:///./node_modules/@aws-amplify/ui-components/dist/esm-es5/auth-helpers-2fada98e.js"],"names":["AuthStrings","InteractionsStrings","Translations","Object","assign","USERNAME_SUFFIX","EMAIL_SUFFIX","CODE_SUFFIX","PHONE_SUFFIX","PASSWORD_SUFFIX","COUNTRY_DIAL_CODE_SUFFIX","COUNTRY_DIAL_CODE_DEFAULT","AUTH_SOURCE_KEY","REDIRECTED_FROM_HOSTED_UI","AUTHENTICATOR_AUTHSTATE","PHONE_EMPTY_ERROR_MESSAGE","NO_AUTH_MODULE_FOUND","NO_STORAGE_MODULE_FOUND","NO_INTERACTIONS_MODULE_FOUND","SETUP_TOTP","USER_NOT_SETUP_SOFTWARE_TOKEN_MFA","USER_NOT_VERIFIED_SOFTWARE_TOKEN_MFA","SUCCESS","AUTH_CHANNEL","UI_AUTH_CHANNEL","TOAST_AUTH_ERROR_EVENT","AUTH_STATE_CHANGE_EVENT","AuthState","MfaOption","ChallengeName","AuthFormField","UsernameAlias","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","logger","hasShadowDom","el","shadowRoot","attachShadow","dispatchToastHubEvent","error","dispatch","event","message","get","dispatchAuthStateChangeEvent","nextAuthState","data","composePhoneNumberInput","phoneNumber","phoneNumberValue","Error","sanitizedPhoneNumberValue","replace","countryDialCodeValue","checkUsernameAlias","usernameAlias","values","onAuthUIStateChange","authStateHandler","authUIStateHandler","payload","_a","user","_b","SignedIn","currentAuthenticatedUser","listen","remove","isHintValid","field","requiredAttributesMap","address","ADDRESS_LABEL","placeholder","ADDRESS_PLACEHOLDER","nickname","NICKNAME_LABEL","NICKNAME_PLACEHOLDER","birthdate","BIRTHDATE_LABEL","BIRTHDATE_PLACEHOLDER","phone_number","PHONE_LABEL","PHONE_PLACEHOLDER","email","lable","EMAIL_LABEL","EMAIL_PLACEHOLDER","picture","PICTURE_LABEL","PICTURE_PLACEHOLDER","family_name","FAMILY_NAME_LABEL","FAMILY_NAME_PLACEHOLDER","preferred_username","PREFERRED_USERNAME_LABEL","PREFERRED_USERNAME_PLACEHOLDER","gender","GENDER_LABEL","GENDER_PLACEHOLDER","profile","PROFILE_LABEL","PROFILE_PLACEHOLDER","given_name","GIVEN_NAME_LABEL","zoneinfo","ZONEINFO_LABEL","ZONEINFO_PLACEHOLDER","locale","LOCALE_LABEL","LOCALE_PLACEHOLDER","updated_at","UPDATED_AT_LABEL","UPDATED_AT_PLACEHOLDER","middle_name","MIDDLE_NAME_LABEL","MIDDLE_NAME_PLACEHOLDER","website","WEBSITE_LABEL","WEBSITE_PLACEHOLDER","name","NAME_LABEL","NAME_PLACEHOLDER","handlePhoneNumberChange","target","__spreadArrays","s","i","il","arguments","r","Array","k","a","j","jl","AmplifyConfirmSignIn","class_1","hostRef","_this","handleSubmit","confirm","headerText","CONFIRM_SMS_CODE","submitButtonText","CONFIRM","handleAuthStateChange","formFields","type","required","handleInputChange","handleCodeChange","mfaOption","SMS","loading","prototype","componentWillLoad","SoftwareTokenMFA","TOTP","CONFIRM_TOTP_CODE","code","mfaType","error_1","preventDefault","confirmSignIn","render","secondaryFooterContent","variant","onClick","SignIn","BACK_TO_SIGN_IN","AmplifyConfirmSignUp","class_2","confirmSignUp","CONFIRM_SIGN_UP_HEADER_TEXT","CONFIRM_SIGN_UP_SUBMIT_BUTTON_TEXT","userInput","username","_signUpAttrs","signUpAttrs","newFormFields","buildFormFields","formFieldsHandler","buildDefaultFormFields","handleFormFieldInputChange","disabled","CONFIRM_SIGN_UP_CODE_LABEL","CONFIRM_SIGN_UP_CODE_PLACEHOLDER","hint","CONFIRM_SIGN_UP_LOST_CODE","resendConfirmCode","CONFIRM_SIGN_UP_RESEND_CODE","newFields_1","forEach","newField","handleFormFieldInputWithCallback","fieldType","setFieldValue","undefined","dialCode","fnToCall","cb","callback","bind","error_2","resendSignUp","ConfirmSignUp","confirmSignUpResult","error_3","CONFIRM_SIGN_UP_FAILED","password","defineProperty","enumerable","configurable","AmplifyForgotPassword","class_3","RESET_YOUR_PASSWORD","sendButtonText","SEND_CODE","SUBMIT","handleSend","send","submit","delivery","forgotPasswordAttrs","inputProps","formAttributes","error_4","forgotPassword","debug","NEW_PASSWORD_LABEL","NEW_PASSWORD_PLACEHOLDER","CodeDeliveryDetails","error_5","forgotPasswordSubmit","submitFn","testDataPrefix","logger$1","AmplifyRequireNewPassword","class_4","CHANGE_PASSWORD","CHANGE_PASSWORD_ACTION","completeNewPassword","Password","handlePasswordChange","currentUser","requiredAttributes","handleRequiredAttributeInputChange","attribute","error_6","userRequiredAttributes","challengeParam","formField","error_7","challengeName","SMSMFA","MFASetup","ConfirmSignIn","TOTPSetup","amplifySignInCss","AmplifySignIn","class_5","signIn","SIGN_IN_HEADER_TEXT","SIGN_IN_ACTION","hideSignUp","signInAttributes","formFieldInputs","FORGOT_PASSWORD_TEXT","ForgotPassword","RESET_PASSWORD_TEXT","newFields_2","slot","federated","class","NO_ACCOUNT_TEXT","SignUp","CREATE_ACCOUNT_TEXT","style","amplifySignUpCss","AmplifySignUp","class_6","signUp","SIGN_UP_HEADER_TEXT","SIGN_UP_SUBMIT_BUTTON_TEXT","haveAccountText","SIGN_UP_HAVE_ACCOUNT_TEXT","signInText","SIGN_IN_TEXT","signUpAttributes","attributes","error_8","SIGN_UP_FAILED","userConfirmed","SIGN_UP_EMAIL_PLACEHOLDER","SIGN_UP_PASSWORD_PLACEHOLDER","SIGN_UP_USERNAME_PLACEHOLDER","newFields_3","logger$2","AmplifyVerifyContact","class_7","verifyAttr","verify","contact","attr","error_9","verifyCurrentUserAttributeSubmit","error_10","verifyCurrentUserAttribute","inputName","renderSubmit","autocomplete","CODE_PLACEHOLDER","renderVerify","unverified","VERIFY_CONTACT_EMAIL_LABEL","key","VERIFY_CONTACT_PHONE_LABEL","VERIFY_CONTACT_HEADER_TEXT","VERIFY_CONTACT_SUBMIT_LABEL","VERIFY_CONTACT_VERIFY_LABEL","checkContact","newUser","verifiedContact","verified","VerifyContact","handleSignIn","NewPasswordRequired","ResetPassword","CustomChallenge","trigger","CustomConfirmSignIn"],"mappings":"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","file":"js/chunk-661fe092.2a84b071.js","sourcesContent":["import { AuthErrorStrings } from '@aws-amplify/auth';\nvar AuthStrings;\n(function (AuthStrings) {\n AuthStrings[\"BACK_TO_SIGN_IN\"] = \"Back to Sign In\";\n AuthStrings[\"CHANGE_PASSWORD_ACTION\"] = \"Change\";\n AuthStrings[\"CHANGE_PASSWORD\"] = \"Change Password\";\n AuthStrings[\"CODE_LABEL\"] = \"Verification code\";\n AuthStrings[\"CODE_PLACEHOLDER\"] = \"Enter code\";\n AuthStrings[\"CONFIRM_SIGN_UP_CODE_LABEL\"] = \"Confirmation Code\";\n AuthStrings[\"CONFIRM_SIGN_UP_CODE_PLACEHOLDER\"] = \"Enter your code\";\n AuthStrings[\"CONFIRM_SIGN_UP_HEADER_TEXT\"] = \"Confirm Sign up\";\n AuthStrings[\"CONFIRM_SIGN_UP_LOST_CODE\"] = \"Lost your code?\";\n AuthStrings[\"CONFIRM_SIGN_UP_RESEND_CODE\"] = \"Resend Code\";\n AuthStrings[\"CONFIRM_SIGN_UP_SUBMIT_BUTTON_TEXT\"] = \"Confirm\";\n AuthStrings[\"CONFIRM_SMS_CODE\"] = \"Confirm SMS Code\";\n AuthStrings[\"CONFIRM_TOTP_CODE\"] = \"Confirm TOTP Code\";\n AuthStrings[\"CONFIRM\"] = \"Confirm\";\n AuthStrings[\"CREATE_ACCOUNT_TEXT\"] = \"Create account\";\n AuthStrings[\"EMAIL_LABEL\"] = \"Email Address *\";\n AuthStrings[\"EMAIL_PLACEHOLDER\"] = \"Enter your email address\";\n AuthStrings[\"FORGOT_PASSWORD_TEXT\"] = \"Forgot your password?\";\n AuthStrings[\"LESS_THAN_TWO_MFA_VALUES_MESSAGE\"] = \"Less than two mfa types available\";\n AuthStrings[\"NEW_PASSWORD_LABEL\"] = \"New password\";\n AuthStrings[\"NEW_PASSWORD_PLACEHOLDER\"] = \"Enter your new password\";\n AuthStrings[\"NO_ACCOUNT_TEXT\"] = \"No account?\";\n AuthStrings[\"PASSWORD_LABEL\"] = \"Password *\";\n AuthStrings[\"PASSWORD_PLACEHOLDER\"] = \"Enter your password\";\n AuthStrings[\"PHONE_LABEL\"] = \"Phone Number *\";\n AuthStrings[\"PHONE_PLACEHOLDER\"] = \"(555) 555-1212\";\n AuthStrings[\"QR_CODE_ALT\"] = \"qrcode\";\n AuthStrings[\"RESET_PASSWORD_TEXT\"] = \"Reset password\";\n AuthStrings[\"RESET_YOUR_PASSWORD\"] = \"Reset your password\";\n AuthStrings[\"SELECT_MFA_TYPE_HEADER_TEXT\"] = \"Select MFA Type\";\n AuthStrings[\"SELECT_MFA_TYPE_SUBMIT_BUTTON_TEXT\"] = \"Verify\";\n AuthStrings[\"SEND_CODE\"] = \"Send Code\";\n AuthStrings[\"SUBMIT\"] = \"Submit\";\n AuthStrings[\"SETUP_TOTP_REQUIRED\"] = \"TOTP needs to be configured\";\n AuthStrings[\"SIGN_IN_ACTION\"] = \"Sign In\";\n AuthStrings[\"SIGN_IN_HEADER_TEXT\"] = \"Sign in to your account\";\n AuthStrings[\"SIGN_IN_TEXT\"] = \"Sign in\";\n AuthStrings[\"SIGN_IN_WITH_AMAZON\"] = \"Sign in with Amazon\";\n AuthStrings[\"SIGN_IN_WITH_AUTH0\"] = \"Sign in with Auth0\";\n AuthStrings[\"SIGN_IN_WITH_AWS\"] = \"Sign in with AWS\";\n AuthStrings[\"SIGN_IN_WITH_FACEBOOK\"] = \"Sign in with Facebook\";\n AuthStrings[\"SIGN_IN_WITH_GOOGLE\"] = \"Sign in with Google\";\n AuthStrings[\"SIGN_OUT\"] = \"Sign Out\";\n AuthStrings[\"SIGN_UP_EMAIL_PLACEHOLDER\"] = \"Email\";\n AuthStrings[\"SIGN_UP_HAVE_ACCOUNT_TEXT\"] = \"Have an account?\";\n AuthStrings[\"SIGN_UP_HEADER_TEXT\"] = \"Create a new account\";\n AuthStrings[\"SIGN_UP_PASSWORD_PLACEHOLDER\"] = \"Password\";\n AuthStrings[\"SIGN_UP_SUBMIT_BUTTON_TEXT\"] = \"Create Account\";\n AuthStrings[\"SIGN_UP_USERNAME_PLACEHOLDER\"] = \"Username\";\n AuthStrings[\"SUCCESS_MFA_TYPE\"] = \"Success! Your MFA Type is now:\";\n AuthStrings[\"TOTP_HEADER_TEXT\"] = \"Scan then enter verification code\";\n AuthStrings[\"TOTP_LABEL\"] = \"Enter Security Code:\";\n AuthStrings[\"TOTP_ISSUER\"] = \"AWSCognito\";\n AuthStrings[\"TOTP_SETUP_FAILURE\"] = \"TOTP Setup has failed\";\n AuthStrings[\"TOTP_SUBMIT_BUTTON_TEXT\"] = \"Verify Security Token\";\n AuthStrings[\"TOTP_SUCCESS_MESSAGE\"] = \"Setup TOTP successfully!\";\n AuthStrings[\"UNABLE_TO_SETUP_MFA_AT_THIS_TIME\"] = \"Failed! Unable to configure MFA at this time\";\n AuthStrings[\"USERNAME_LABEL\"] = \"Username *\";\n AuthStrings[\"USERNAME_PLACEHOLDER\"] = \"Enter your username\";\n AuthStrings[\"VERIFY_CONTACT_EMAIL_LABEL\"] = \"Email\";\n AuthStrings[\"VERIFY_CONTACT_HEADER_TEXT\"] = \"Account recovery requires verified contact information\";\n AuthStrings[\"VERIFY_CONTACT_PHONE_LABEL\"] = \"Phone Number\";\n AuthStrings[\"VERIFY_CONTACT_SUBMIT_LABEL\"] = \"Submit\";\n AuthStrings[\"VERIFY_CONTACT_VERIFY_LABEL\"] = \"Verify\";\n AuthStrings[\"ADDRESS_LABEL\"] = \"Address\";\n AuthStrings[\"ADDRESS_PLACEHOLDER\"] = \"Enter your address\";\n AuthStrings[\"NICKNAME_LABEL\"] = \"Nickname\";\n AuthStrings[\"NICKNAME_PLACEHOLDER\"] = \"Enter your nickname\";\n AuthStrings[\"BIRTHDATE_LABEL\"] = \"Birthday\";\n AuthStrings[\"BIRTHDATE_PLACEHOLDER\"] = \"Enter your birthday\";\n AuthStrings[\"PICTURE_LABEL\"] = \"Picture URL\";\n AuthStrings[\"PICTURE_PLACEHOLDER\"] = \"Enter your picture URL\";\n AuthStrings[\"FAMILY_NAME_LABEL\"] = \"Family Name\";\n AuthStrings[\"FAMILY_NAME_PLACEHOLDER\"] = \"Enter your family name\";\n AuthStrings[\"PREFERRED_USERNAME_LABEL\"] = \"Preferred Username\";\n AuthStrings[\"PREFERRED_USERNAME_PLACEHOLDER\"] = \"Enter your preferred username\";\n AuthStrings[\"GENDER_LABEL\"] = \"Gender\";\n AuthStrings[\"GENDER_PLACEHOLDER\"] = \"Enter your gender\";\n AuthStrings[\"PROFILE_LABEL\"] = \"Profile URL\";\n AuthStrings[\"PROFILE_PLACEHOLDER\"] = \"Enter your profile URL\";\n AuthStrings[\"GIVEN_NAME_LABEL\"] = \"First Name\";\n AuthStrings[\"GIVEN_NAME_PLACEHOLDER\"] = \"Enter your first name\";\n AuthStrings[\"ZONEINFO_LABEL\"] = \"Time zone\";\n AuthStrings[\"ZONEINFO_PLACEHOLDER\"] = \"Enter your time zone\";\n AuthStrings[\"LOCALE_LABEL\"] = \"Locale\";\n AuthStrings[\"LOCALE_PLACEHOLDER\"] = \"Enter your locale\";\n AuthStrings[\"UPDATED_AT_LABEL\"] = \"Updated At\";\n AuthStrings[\"UPDATED_AT_PLACEHOLDER\"] = \"Enter the time the information was last updated\";\n AuthStrings[\"MIDDLE_NAME_LABEL\"] = \"Middle Name\";\n AuthStrings[\"MIDDLE_NAME_PLACEHOLDER\"] = \"Enter your middle name\";\n AuthStrings[\"WEBSITE_LABEL\"] = \"Website\";\n AuthStrings[\"WEBSITE_PLACEHOLDER\"] = \"Enter your website\";\n AuthStrings[\"NAME_LABEL\"] = \"Full Name\";\n AuthStrings[\"NAME_PLACEHOLDER\"] = \"Enter your full name\";\n AuthStrings[\"PHOTO_PICKER_TITLE\"] = \"Picker Title\";\n AuthStrings[\"PHOTO_PICKER_HINT\"] = \"Ancilliary text or content may occupy this space here\";\n AuthStrings[\"PHOTO_PICKER_PLACEHOLDER_HINT\"] = \"Placeholder hint\";\n AuthStrings[\"PHOTO_PICKER_BUTTON_TEXT\"] = \"Button\";\n AuthStrings[\"IMAGE_PICKER_TITLE\"] = \"Add Profile Photo\";\n AuthStrings[\"IMAGE_PICKER_HINT\"] = \"Preview the image before upload\";\n AuthStrings[\"IMAGE_PICKER_PLACEHOLDER_HINT\"] = \"Tap to image select\";\n AuthStrings[\"IMAGE_PICKER_BUTTON_TEXT\"] = \"Upload\";\n AuthStrings[\"PICKER_TEXT\"] = \"Pick a file\";\n AuthStrings[\"TEXT_FALLBACK_CONTENT\"] = \"Fallback Content\";\n AuthStrings[\"CONFIRM_SIGN_UP_FAILED\"] = \"Confirm Sign Up Failed\";\n AuthStrings[\"SIGN_UP_FAILED\"] = \"Sign Up Failed\";\n})(AuthStrings || (AuthStrings = {}));\nvar InteractionsStrings;\n(function (InteractionsStrings) {\n InteractionsStrings[\"CHATBOT_TITLE\"] = \"ChatBot Lex\";\n InteractionsStrings[\"TEXT_INPUT_PLACEHOLDER\"] = \"Write a message\";\n InteractionsStrings[\"VOICE_INPUT_PLACEHOLDER\"] = \"Click mic to speak\";\n InteractionsStrings[\"CHAT_DISABLED_ERROR\"] = \"Error: Either voice or text must be enabled for the chatbot\";\n InteractionsStrings[\"NO_BOT_NAME_ERROR\"] = \"Error: Bot name must be provided to ChatBot\";\n})(InteractionsStrings || (InteractionsStrings = {}));\nvar Translations = Object.assign(Object.assign(Object.assign({}, AuthStrings), AuthErrorStrings), InteractionsStrings);\nexport { Translations as T };\n","// Dictionaries\n// fieldId constants\nvar USERNAME_SUFFIX = 'username';\nvar EMAIL_SUFFIX = 'email';\nvar CODE_SUFFIX = 'code';\nvar PHONE_SUFFIX = 'phone';\nvar PASSWORD_SUFFIX = 'password';\n// Country Dial Code common constants\nvar COUNTRY_DIAL_CODE_SUFFIX = 'country-dial-code-select';\nvar COUNTRY_DIAL_CODE_DEFAULT = '+1';\n// Auth Keys\nvar AUTH_SOURCE_KEY = 'amplify-auth-source';\nvar REDIRECTED_FROM_HOSTED_UI = 'amplify-redirected-from-hosted-ui';\nvar AUTHENTICATOR_AUTHSTATE = 'amplify-authenticator-authState';\n// Error message Common Constants\nvar PHONE_EMPTY_ERROR_MESSAGE = 'Phone number can not be empty';\nvar NO_AUTH_MODULE_FOUND = 'No Auth module found, please ensure @aws-amplify/auth is imported';\nvar NO_STORAGE_MODULE_FOUND = 'No Storage module found, please ensure @aws-amplify/storage is imported';\nvar NO_INTERACTIONS_MODULE_FOUND = 'No Interactions module found, please ensure @aws-amplify/interactions is imported';\n// TOTP Messages\nvar SETUP_TOTP = 'SETUP_TOTP';\n// Select MFA Types Messages\nvar USER_NOT_SETUP_SOFTWARE_TOKEN_MFA = 'User has not set up software token mfa';\nvar USER_NOT_VERIFIED_SOFTWARE_TOKEN_MFA = 'User has not verified software token mfa';\n// Common events\nvar SUCCESS = 'SUCCESS';\n// Hub Events and Channels\nvar AUTH_CHANNEL = 'auth';\nvar UI_AUTH_CHANNEL = 'UI Auth';\nvar TOAST_AUTH_ERROR_EVENT = 'ToastAuthError';\nvar AUTH_STATE_CHANGE_EVENT = 'AuthStateChange';\nexport { AUTH_CHANNEL as A, COUNTRY_DIAL_CODE_SUFFIX as C, EMAIL_SUFFIX as E, NO_AUTH_MODULE_FOUND as N, PHONE_EMPTY_ERROR_MESSAGE as P, REDIRECTED_FROM_HOSTED_UI as R, SETUP_TOTP as S, TOAST_AUTH_ERROR_EVENT as T, UI_AUTH_CHANNEL as U, AUTH_STATE_CHANGE_EVENT as a, PHONE_SUFFIX as b, AUTHENTICATOR_AUTHSTATE as c, NO_INTERACTIONS_MODULE_FOUND as d, NO_STORAGE_MODULE_FOUND as e, USER_NOT_SETUP_SOFTWARE_TOKEN_MFA as f, USER_NOT_VERIFIED_SOFTWARE_TOKEN_MFA as g, COUNTRY_DIAL_CODE_DEFAULT as h, SUCCESS as i, AUTH_SOURCE_KEY as j, CODE_SUFFIX as k, PASSWORD_SUFFIX as l, USERNAME_SUFFIX as m };\n","// TODO: Move these values to or extract them from the Cognito Provider in the Auth category for Auth V2\nvar AuthState;\n(function (AuthState) {\n AuthState[\"SignUp\"] = \"signup\";\n AuthState[\"SignOut\"] = \"signout\";\n AuthState[\"SignIn\"] = \"signin\";\n AuthState[\"Loading\"] = \"loading\";\n AuthState[\"SignedOut\"] = \"signedout\";\n AuthState[\"SignedIn\"] = \"signedin\";\n AuthState[\"SigningUp\"] = \"signingup\";\n AuthState[\"ConfirmSignUp\"] = \"confirmSignUp\";\n AuthState[\"confirmingSignUpCustomFlow\"] = \"confirmsignupcustomflow\";\n AuthState[\"ConfirmSignIn\"] = \"confirmSignIn\";\n AuthState[\"confirmingSignInCustomFlow\"] = \"confirmingsignincustomflow\";\n AuthState[\"VerifyingAttributes\"] = \"verifyingattributes\";\n AuthState[\"ForgotPassword\"] = \"forgotpassword\";\n AuthState[\"ResetPassword\"] = \"resettingpassword\";\n AuthState[\"SettingMFA\"] = \"settingMFA\";\n AuthState[\"TOTPSetup\"] = \"TOTPSetup\";\n AuthState[\"CustomConfirmSignIn\"] = \"customConfirmSignIn\";\n AuthState[\"VerifyContact\"] = \"verifyContact\";\n})(AuthState || (AuthState = {}));\nvar MfaOption;\n(function (MfaOption) {\n MfaOption[\"TOTP\"] = \"TOTP\";\n MfaOption[\"SMS\"] = \"SMS\";\n MfaOption[\"NOMFA\"] = \"NOMFA\";\n})(MfaOption || (MfaOption = {}));\nvar ChallengeName;\n(function (ChallengeName) {\n ChallengeName[\"SoftwareTokenMFA\"] = \"SOFTWARE_TOKEN_MFA\";\n ChallengeName[\"SMSMFA\"] = \"SMS_MFA\";\n ChallengeName[\"NewPasswordRequired\"] = \"NEW_PASSWORD_REQUIRED\";\n ChallengeName[\"MFASetup\"] = \"MFA_SETUP\";\n ChallengeName[\"CustomChallenge\"] = \"CUSTOM_CHALLENGE\";\n})(ChallengeName || (ChallengeName = {}));\nvar AuthFormField;\n(function (AuthFormField) {\n AuthFormField[\"Password\"] = \"password\";\n})(AuthFormField || (AuthFormField = {}));\nvar UsernameAlias;\n(function (UsernameAlias) {\n UsernameAlias[\"username\"] = \"username\";\n UsernameAlias[\"email\"] = \"email\";\n UsernameAlias[\"phone_number\"] = \"phone_number\";\n})(UsernameAlias || (UsernameAlias = {}));\nexport { AuthState as A, ChallengeName as C, MfaOption as M, UsernameAlias as U, AuthFormField as a };\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nimport { Logger, Hub, I18n } from '@aws-amplify/core';\nimport { U as UsernameAlias, A as AuthState } from './auth-types-78df304e.js';\nimport Auth from '@aws-amplify/auth';\nimport { T as Translations } from './Translations-392acb9b.js';\nimport { U as UI_AUTH_CHANNEL, T as TOAST_AUTH_ERROR_EVENT, a as AUTH_STATE_CHANGE_EVENT, P as PHONE_EMPTY_ERROR_MESSAGE, C as COUNTRY_DIAL_CODE_SUFFIX, b as PHONE_SUFFIX } from './constants-d1abe7de.js';\nvar logger = new Logger('helpers');\nvar hasShadowDom = function (el) {\n return !!el.shadowRoot && !!el.attachShadow;\n};\nvar dispatchToastHubEvent = function (error) {\n Hub.dispatch(UI_AUTH_CHANNEL, {\n event: TOAST_AUTH_ERROR_EVENT,\n message: I18n.get(error.message),\n });\n};\nvar dispatchAuthStateChangeEvent = function (nextAuthState, data) {\n Hub.dispatch(UI_AUTH_CHANNEL, {\n event: AUTH_STATE_CHANGE_EVENT,\n message: nextAuthState,\n data: data,\n });\n};\nvar composePhoneNumberInput = function (phoneNumber) {\n if (!phoneNumber.phoneNumberValue) {\n throw new Error(PHONE_EMPTY_ERROR_MESSAGE);\n }\n var sanitizedPhoneNumberValue = phoneNumber.phoneNumberValue.replace(/[-()\\s]/g, '');\n return \"\" + phoneNumber.countryDialCodeValue + sanitizedPhoneNumberValue;\n};\nvar checkUsernameAlias = function (usernameAlias) {\n if (!(usernameAlias in UsernameAlias)) {\n throw new Error(\"Invalid username Alias - \" + usernameAlias + \". Instead use \" + Object.values(UsernameAlias));\n }\n};\nvar onAuthUIStateChange = function (authStateHandler) {\n var authUIStateHandler = function (data) { return __awaiter(void 0, void 0, void 0, function () {\n var payload, _a, user, e_1;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n payload = data.payload;\n _a = payload.event;\n switch (_a) {\n case AUTH_STATE_CHANGE_EVENT: return [3 /*break*/, 1];\n }\n return [3 /*break*/, 8];\n case 1:\n if (!payload.message) return [3 /*break*/, 7];\n if (!(payload.message === AuthState.SignedIn)) return [3 /*break*/, 6];\n _b.label = 2;\n case 2:\n _b.trys.push([2, 4, , 5]);\n return [4 /*yield*/, Auth.currentAuthenticatedUser()];\n case 3:\n user = _b.sent();\n authStateHandler(payload.message, user);\n return [3 /*break*/, 5];\n case 4:\n e_1 = _b.sent();\n logger.error('User is not authenticated');\n return [3 /*break*/, 5];\n case 5: return [3 /*break*/, 7];\n case 6:\n authStateHandler(payload.message, payload.data);\n _b.label = 7;\n case 7: return [3 /*break*/, 8];\n case 8: return [2 /*return*/];\n }\n });\n }); };\n Hub.listen(UI_AUTH_CHANNEL, authUIStateHandler);\n return function () { return Hub.remove(UI_AUTH_CHANNEL, authUIStateHandler); };\n};\nvar isHintValid = function (field) {\n return !(field['hint'] === null || typeof field['hint'] === 'string');\n};\n// Required attributes come from https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims\nvar requiredAttributesMap = {\n address: {\n label: I18n.get(Translations.ADDRESS_LABEL),\n placeholder: I18n.get(Translations.ADDRESS_PLACEHOLDER),\n },\n nickname: {\n label: I18n.get(Translations.NICKNAME_LABEL),\n placeholder: I18n.get(Translations.NICKNAME_PLACEHOLDER),\n },\n birthdate: {\n label: I18n.get(Translations.BIRTHDATE_LABEL),\n placeholder: I18n.get(Translations.BIRTHDATE_PLACEHOLDER),\n },\n phone_number: {\n label: I18n.get(Translations.PHONE_LABEL),\n placeholder: I18n.get(Translations.PHONE_PLACEHOLDER),\n },\n email: {\n lable: I18n.get(Translations.EMAIL_LABEL),\n placeholder: I18n.get(Translations.EMAIL_PLACEHOLDER),\n },\n picture: {\n label: I18n.get(Translations.PICTURE_LABEL),\n placeholder: I18n.get(Translations.PICTURE_PLACEHOLDER),\n },\n family_name: {\n label: I18n.get(Translations.FAMILY_NAME_LABEL),\n placeholder: I18n.get(Translations.FAMILY_NAME_PLACEHOLDER),\n },\n preferred_username: {\n label: I18n.get(Translations.PREFERRED_USERNAME_LABEL),\n placeholder: I18n.get(Translations.PREFERRED_USERNAME_PLACEHOLDER),\n },\n gender: {\n label: I18n.get(Translations.GENDER_LABEL),\n placeholder: I18n.get(Translations.GENDER_PLACEHOLDER),\n },\n profile: {\n label: I18n.get(Translations.PROFILE_LABEL),\n placeholder: I18n.get(Translations.PROFILE_PLACEHOLDER),\n },\n given_name: {\n label: I18n.get(Translations.GIVEN_NAME_LABEL),\n placeholder: I18n.get(Translations.GIVEN_NAME_LABEL),\n },\n zoneinfo: {\n label: I18n.get(Translations.ZONEINFO_LABEL),\n placeholder: I18n.get(Translations.ZONEINFO_PLACEHOLDER),\n },\n locale: {\n label: I18n.get(Translations.LOCALE_LABEL),\n placeholder: I18n.get(Translations.LOCALE_PLACEHOLDER),\n },\n updated_at: {\n label: I18n.get(Translations.UPDATED_AT_LABEL),\n placeholder: I18n.get(Translations.UPDATED_AT_PLACEHOLDER),\n },\n middle_name: {\n label: I18n.get(Translations.MIDDLE_NAME_LABEL),\n placeholder: I18n.get(Translations.MIDDLE_NAME_PLACEHOLDER),\n },\n website: {\n label: I18n.get(Translations.WEBSITE_LABEL),\n placeholder: I18n.get(Translations.WEBSITE_PLACEHOLDER),\n },\n name: {\n label: I18n.get(Translations.NAME_LABEL),\n placeholder: I18n.get(Translations.NAME_PLACEHOLDER),\n },\n};\nfunction handlePhoneNumberChange(event, phoneNumber) {\n var name = event.target.name;\n var value = event.target.value;\n /** Cognito expects to have a string be passed when signing up. Since the Select input is separate\n * input from the phone number input, we need to first capture both components values and combined\n * them together.\n */\n if (name === COUNTRY_DIAL_CODE_SUFFIX) {\n phoneNumber.countryDialCodeValue = value;\n }\n if (name === PHONE_SUFFIX) {\n phoneNumber.phoneNumberValue = value;\n }\n}\nexport { dispatchToastHubEvent as a, composePhoneNumberInput as b, checkUsernameAlias as c, dispatchAuthStateChangeEvent as d, hasShadowDom as e, handlePhoneNumberChange as h, isHintValid as i, onAuthUIStateChange as o, requiredAttributesMap as r };\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nimport { r as registerInstance, h, H as Host } from './index-39969785.js';\nimport { I18n, Logger, ConsoleLogger, isEmpty } from '@aws-amplify/core';\nimport { M as MfaOption, C as ChallengeName, A as AuthState, a as AuthFormField } from './auth-types-78df304e.js';\nimport { Auth } from '@aws-amplify/auth';\nimport { T as Translations } from './Translations-392acb9b.js';\nimport { N as NO_AUTH_MODULE_FOUND, h as COUNTRY_DIAL_CODE_DEFAULT } from './constants-d1abe7de.js';\nimport { d as dispatchAuthStateChangeEvent, a as dispatchToastHubEvent, c as checkUsernameAlias, i as isHintValid, h as handlePhoneNumberChange, b as composePhoneNumberInput, r as requiredAttributesMap } from './helpers-01ecf5f9.js';\nimport { c as checkContact, h as handleSignIn } from './auth-helpers-2fada98e.js';\nvar AmplifyConfirmSignIn = /** @class */ (function () {\n function class_1(hostRef) {\n var _this = this;\n registerInstance(this, hostRef);\n /** Fires when confirm sign in form is submitted */\n this.handleSubmit = function (event) { return _this.confirm(event); };\n /** Used for header text in confirm sign in component */\n this.headerText = Translations.CONFIRM_SMS_CODE;\n /** Used for the submit button text in confirm sign in component */\n this.submitButtonText = Translations.CONFIRM;\n /** Auth state change handler for this component */\n this.handleAuthStateChange = dispatchAuthStateChangeEvent;\n /**\n * Form fields allows you to utilize our pre-built components such as username field, code field, password field, email field, etc.\n * by passing an array of strings that you would like the order of the form to be in. If you need more customization, such as changing\n * text for a label or adjust a placeholder, you can follow the structure below in order to do just that.\n * ```\n * [\n * {\n * type: string,\n * label: string,\n * placeholder: string,\n * hint: string | Functional Component | null,\n * required: boolean\n * }\n * ]\n * ```\n */\n this.formFields = [\n {\n type: 'code',\n required: true,\n handleInputChange: function (event) { return _this.handleCodeChange(event); },\n },\n ];\n /** The MFA option to confirm with */\n this.mfaOption = MfaOption.SMS;\n /* Whether or not the confirm-sign-in component is loading */\n this.loading = false;\n }\n class_1.prototype.componentWillLoad = function () {\n if (this.user && this.user['challengeName'] === ChallengeName.SoftwareTokenMFA) {\n this.mfaOption = MfaOption.TOTP;\n // If header text is using default use TOTP string\n if (this.headerText === Translations.CONFIRM_SMS_CODE) {\n this.headerText = Translations.CONFIRM_TOTP_CODE;\n }\n }\n };\n class_1.prototype.handleCodeChange = function (event) {\n this.code = event.target.value;\n };\n class_1.prototype.confirm = function (event) {\n return __awaiter(this, void 0, void 0, function () {\n var mfaType, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (event) {\n event.preventDefault();\n }\n mfaType = this.user['challengeName'] === ChallengeName.SoftwareTokenMFA ? ChallengeName.SoftwareTokenMFA : null;\n if (!Auth || typeof Auth.confirmSignIn !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n this.loading = true;\n _a.label = 1;\n case 1:\n _a.trys.push([1, 4, 5, 6]);\n return [4 /*yield*/, Auth.confirmSignIn(this.user, this.code, mfaType)];\n case 2:\n _a.sent();\n return [4 /*yield*/, checkContact(this.user, this.handleAuthStateChange)];\n case 3:\n _a.sent();\n return [3 /*break*/, 6];\n case 4:\n error_1 = _a.sent();\n dispatchToastHubEvent(error_1);\n return [3 /*break*/, 6];\n case 5:\n this.loading = false;\n return [7 /*endfinally*/];\n case 6: return [2 /*return*/];\n }\n });\n });\n };\n class_1.prototype.render = function () {\n var _this = this;\n return (h(Host, null, h(\"amplify-form-section\", { headerText: I18n.get(this.headerText), handleSubmit: this.handleSubmit, submitButtonText: I18n.get(this.submitButtonText), loading: this.loading, secondaryFooterContent: h(\"span\", null, h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.SignIn); } }, I18n.get(Translations.BACK_TO_SIGN_IN))) }, h(\"amplify-auth-fields\", { formFields: this.formFields }))));\n };\n return class_1;\n}());\nvar AmplifyConfirmSignUp = /** @class */ (function () {\n function class_2(hostRef) {\n var _this = this;\n registerInstance(this, hostRef);\n /** Fires when sign up form is submitted */\n this.handleSubmit = function (event) { return _this.confirmSignUp(event); };\n /** Used for header text in confirm sign up component */\n this.headerText = Translations.CONFIRM_SIGN_UP_HEADER_TEXT;\n /** Used for the submit button text in confirm sign up component */\n this.submitButtonText = Translations.CONFIRM_SIGN_UP_SUBMIT_BUTTON_TEXT;\n /**\n * Form fields allows you to utilize our pre-built components such as username field, code field, password field, email field, etc.\n * by passing an array of strings that you would like the order of the form to be in. If you need more customization, such as changing\n * text for a label or adjust a placeholder, you can follow the structure below in order to do just that.\n * ```\n * [\n * {\n * type: string,\n * label: string,\n * placeholder: string,\n * hint: string | Functional Component | null,\n * required: boolean\n * }\n * ]\n * ```\n */\n this.formFields = [];\n /** Auth state change handler for this components\n * e.g. SignIn -> 'Create Account' link -> SignUp\n */\n this.handleAuthStateChange = dispatchAuthStateChangeEvent;\n /** Username Alias is used to setup authentication with `username`, `email` or `phone_number` */\n this.usernameAlias = 'username';\n this.loading = false;\n this.userInput = this.user ? this.user.username : null;\n this._signUpAttrs = this.user && this.user.signUpAttrs ? this.user.signUpAttrs : null;\n this.newFormFields = [];\n this.phoneNumber = {\n countryDialCodeValue: COUNTRY_DIAL_CODE_DEFAULT,\n phoneNumberValue: null,\n };\n }\n class_2.prototype.componentWillLoad = function () {\n checkUsernameAlias(this.usernameAlias);\n this.buildFormFields();\n };\n class_2.prototype.formFieldsHandler = function () {\n this.buildFormFields();\n };\n class_2.prototype.buildDefaultFormFields = function () {\n var _this = this;\n this.newFormFields = [\n {\n type: \"\" + this.usernameAlias,\n required: true,\n handleInputChange: this.handleFormFieldInputChange(\"\" + this.usernameAlias),\n value: this.userInput,\n disabled: this.userInput ? true : false,\n },\n {\n type: 'code',\n label: I18n.get(Translations.CONFIRM_SIGN_UP_CODE_LABEL),\n placeholder: I18n.get(Translations.CONFIRM_SIGN_UP_CODE_PLACEHOLDER),\n required: true,\n hint: (h(\"div\", null, I18n.get(Translations.CONFIRM_SIGN_UP_LOST_CODE), ' ', h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.resendConfirmCode(); } }, I18n.get(Translations.CONFIRM_SIGN_UP_RESEND_CODE)))),\n handleInputChange: this.handleFormFieldInputChange('code'),\n },\n ];\n };\n class_2.prototype.buildFormFields = function () {\n var _this = this;\n if (this.formFields.length === 0) {\n this.buildDefaultFormFields();\n }\n else {\n var newFields_1 = [];\n this.formFields.forEach(function (field) {\n var newField = Object.assign({}, field);\n if (newField.type === 'code') {\n newField['hint'] = isHintValid(newField) ? (h(\"div\", null, I18n.get(Translations.CONFIRM_SIGN_UP_LOST_CODE), ' ', h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.resendConfirmCode(); } }, I18n.get(Translations.CONFIRM_SIGN_UP_RESEND_CODE)))) : (newField['hint']);\n }\n newField['handleInputChange'] = function (event) { return _this.handleFormFieldInputWithCallback(event, field); };\n newFields_1.push(newField);\n });\n this.newFormFields = newFields_1;\n }\n };\n class_2.prototype.handleFormFieldInputChange = function (fieldType) {\n var _this = this;\n switch (fieldType) {\n case 'username':\n case 'email':\n return function (event) { return (_this.userInput = event.target.value); };\n case 'phone_number':\n return function (event) { return handlePhoneNumberChange(event, _this.phoneNumber); };\n case 'code':\n return function (event) { return (_this.code = event.target.value); };\n default:\n return;\n }\n };\n class_2.prototype.setFieldValue = function (field) {\n switch (field.type) {\n case 'username':\n case 'email':\n if (field.value === undefined) {\n this.userInput = '';\n }\n else {\n this.userInput = field.value;\n }\n break;\n case 'phone_number':\n if (field.dialCode) {\n this.phoneNumber.countryDialCodeValue = field.dialCode;\n }\n this.phoneNumber.phoneNumberValue = field.value;\n break;\n }\n };\n class_2.prototype.handleFormFieldInputWithCallback = function (event, field) {\n var fnToCall = field['handleInputChange']\n ? field['handleInputChange']\n : function (event, cb) {\n cb(event);\n };\n var callback = this.handleFormFieldInputChange(field.type);\n fnToCall(event, callback.bind(this));\n };\n class_2.prototype.resendConfirmCode = function () {\n return __awaiter(this, void 0, void 0, function () {\n var error_2;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (event) {\n event.preventDefault();\n }\n if (!Auth || typeof Auth.resendSignUp !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n if (!this.userInput)\n throw new Error('Username can not be empty');\n return [4 /*yield*/, Auth.resendSignUp(this.userInput)];\n case 2:\n _a.sent();\n this.handleAuthStateChange(AuthState.ConfirmSignUp);\n return [3 /*break*/, 4];\n case 3:\n error_2 = _a.sent();\n dispatchToastHubEvent(error_2);\n return [3 /*break*/, 4];\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n // TODO: Add validation\n // TODO: Prefix\n class_2.prototype.confirmSignUp = function (event) {\n return __awaiter(this, void 0, void 0, function () {\n var confirmSignUpResult, error_3;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (event) {\n event.preventDefault();\n }\n if (!Auth || typeof Auth.confirmSignUp !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n this.loading = true;\n switch (this.usernameAlias) {\n case 'phone_number':\n try {\n this.userInput = composePhoneNumberInput(this.phoneNumber);\n }\n catch (error) {\n dispatchToastHubEvent(error);\n }\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 6, 7, 8]);\n return [4 /*yield*/, Auth.confirmSignUp(this.userInput, this.code)];\n case 2:\n confirmSignUpResult = _a.sent();\n if (!confirmSignUpResult) {\n throw new Error(I18n.get(Translations.CONFIRM_SIGN_UP_FAILED));\n }\n if (!(this._signUpAttrs && this._signUpAttrs.password && this._signUpAttrs.password !== '')) return [3 /*break*/, 4];\n // Auto sign in user if password is available from previous workflow\n return [4 /*yield*/, handleSignIn(this.userInput, this._signUpAttrs.password, this.handleAuthStateChange)];\n case 3:\n // Auto sign in user if password is available from previous workflow\n _a.sent();\n return [3 /*break*/, 5];\n case 4:\n this.handleAuthStateChange(AuthState.SignIn);\n _a.label = 5;\n case 5: return [3 /*break*/, 8];\n case 6:\n error_3 = _a.sent();\n dispatchToastHubEvent(error_3);\n return [3 /*break*/, 8];\n case 7:\n this.loading = false;\n return [7 /*endfinally*/];\n case 8: return [2 /*return*/];\n }\n });\n });\n };\n class_2.prototype.render = function () {\n var _this = this;\n return (h(Host, null, h(\"amplify-form-section\", { headerText: I18n.get(this.headerText), submitButtonText: I18n.get(this.submitButtonText), handleSubmit: this.handleSubmit, secondaryFooterContent: h(\"div\", null, h(\"span\", null, h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.SignIn); } }, I18n.get(Translations.BACK_TO_SIGN_IN)))) }, h(\"amplify-auth-fields\", { formFields: this.newFormFields }))));\n };\n Object.defineProperty(class_2, \"watchers\", {\n get: function () {\n return {\n \"formFields\": [\"formFieldsHandler\"]\n };\n },\n enumerable: false,\n configurable: true\n });\n return class_2;\n}());\nvar logger = new Logger('ForgotPassword');\nvar AmplifyForgotPassword = /** @class */ (function () {\n function class_3(hostRef) {\n var _this = this;\n registerInstance(this, hostRef);\n /** The header text of the forgot password section */\n this.headerText = Translations.RESET_YOUR_PASSWORD;\n /** The text displayed inside of the send code button for the form */\n this.sendButtonText = Translations.SEND_CODE;\n /** The text displayed inside of the submit button for the form */\n this.submitButtonText = Translations.SUBMIT;\n /** The form fields displayed inside of the forgot password form */\n this.formFields = [];\n /** The function called when making a request to reset password */\n this.handleSend = function (event) { return _this.send(event); };\n /** The function called when submitting a new password */\n this.handleSubmit = function (event) { return _this.submit(event); };\n /** Auth state change handler for this component */\n this.handleAuthStateChange = dispatchAuthStateChangeEvent;\n /** Username Alias is used to setup authentication with `username`, `email` or `phone_number` */\n this.usernameAlias = 'username';\n this.delivery = null;\n this.loading = false;\n this.phoneNumber = {\n countryDialCodeValue: COUNTRY_DIAL_CODE_DEFAULT,\n phoneNumberValue: null,\n };\n this.newFormFields = [];\n this.forgotPasswordAttrs = {\n userInput: '',\n password: '',\n code: '',\n };\n }\n class_3.prototype.componentWillLoad = function () {\n checkUsernameAlias(this.usernameAlias);\n this.buildFormFields();\n };\n class_3.prototype.formFieldsHandler = function () {\n this.buildFormFields();\n };\n class_3.prototype.buildFormFields = function () {\n var _this = this;\n if (this.formFields.length === 0) {\n this.buildDefaultFormFields();\n }\n else {\n this.formFields.forEach(function (field) {\n var newField = Object.assign({}, field);\n newField['handleInputChange'] = function (event) { return _this.handleFormFieldInputWithCallback(event, field); };\n _this.newFormFields.push(newField);\n });\n }\n };\n class_3.prototype.buildDefaultFormFields = function () {\n switch (this.usernameAlias) {\n case 'email':\n this.newFormFields = [\n {\n type: 'email',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('email'),\n inputProps: {\n 'data-test': 'forgot-password-email-input',\n },\n },\n ];\n break;\n case 'phone_number':\n this.newFormFields = [\n {\n type: 'phone_number',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('phone_number'),\n inputProps: {\n 'data-test': 'forgot-password-phone-number-input',\n },\n },\n ];\n break;\n case 'username':\n default:\n this.newFormFields = [\n {\n type: 'username',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('username'),\n inputProps: {\n 'data-test': 'forgot-password-username-input',\n },\n },\n ];\n break;\n }\n };\n class_3.prototype.handleFormFieldInputChange = function (fieldType) {\n var _this = this;\n switch (fieldType) {\n case 'username':\n case 'email':\n return function (event) { return (_this.forgotPasswordAttrs.userInput = event.target.value); };\n case 'phone_number':\n return function (event) { return handlePhoneNumberChange(event, _this.phoneNumber); };\n case 'password':\n case 'code':\n return function (event) { return (_this.forgotPasswordAttrs[fieldType] = event.target.value); };\n default:\n return;\n }\n };\n class_3.prototype.setFieldValue = function (field, formAttributes) {\n switch (field.type) {\n case 'username':\n case 'email':\n if (field.value === undefined) {\n formAttributes.userInput = '';\n }\n else {\n formAttributes.userInput = field.value;\n }\n break;\n case 'phone_number':\n if (field.dialCode) {\n this.phoneNumber.countryDialCodeValue = field.dialCode;\n }\n this.phoneNumber.phoneNumberValue = field.value;\n break;\n case 'password':\n case 'code':\n if (field.value === undefined) {\n formAttributes[field.type] = '';\n }\n else {\n formAttributes[field.type] = field.value;\n }\n break;\n }\n };\n class_3.prototype.handleFormFieldInputWithCallback = function (event, field) {\n var fnToCall = field['handleInputChange']\n ? field['handleInputChange']\n : function (event, cb) {\n cb(event);\n };\n var callback = this.handleFormFieldInputChange(field.type);\n fnToCall(event, callback.bind(this));\n };\n class_3.prototype.send = function (event) {\n return __awaiter(this, void 0, void 0, function () {\n var data, error_4;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (event) {\n event.preventDefault();\n }\n if (!Auth || typeof Auth.forgotPassword !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n this.loading = true;\n switch (this.usernameAlias) {\n case 'phone_number':\n try {\n this.forgotPasswordAttrs.userInput = composePhoneNumberInput(this.phoneNumber);\n }\n catch (error) {\n dispatchToastHubEvent(error);\n }\n break;\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, 4, 5]);\n return [4 /*yield*/, Auth.forgotPassword(this.forgotPasswordAttrs.userInput)];\n case 2:\n data = _a.sent();\n logger.debug(data);\n this.newFormFields = [\n {\n type: 'code',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('code'),\n inputProps: {\n 'data-test': 'forgot-password-code-input',\n },\n },\n {\n type: 'password',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('password'),\n label: I18n.get(Translations.NEW_PASSWORD_LABEL),\n placeholder: I18n.get(Translations.NEW_PASSWORD_PLACEHOLDER),\n },\n ];\n this.delivery = data.CodeDeliveryDetails;\n return [3 /*break*/, 5];\n case 3:\n error_4 = _a.sent();\n dispatchToastHubEvent(error_4);\n return [3 /*break*/, 5];\n case 4:\n this.loading = false;\n return [7 /*endfinally*/];\n case 5: return [2 /*return*/];\n }\n });\n });\n };\n class_3.prototype.submit = function (event) {\n return __awaiter(this, void 0, void 0, function () {\n var _a, userInput, code, password, data, error_5;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (event) {\n event.preventDefault();\n }\n if (!Auth || typeof Auth.forgotPasswordSubmit !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n this.loading = true;\n _b.label = 1;\n case 1:\n _b.trys.push([1, 3, 4, 5]);\n _a = this.forgotPasswordAttrs, userInput = _a.userInput, code = _a.code, password = _a.password;\n return [4 /*yield*/, Auth.forgotPasswordSubmit(userInput, code, password)];\n case 2:\n data = _b.sent();\n logger.debug(data);\n this.handleAuthStateChange(AuthState.SignIn);\n this.delivery = null;\n return [3 /*break*/, 5];\n case 3:\n error_5 = _b.sent();\n dispatchToastHubEvent(error_5);\n return [3 /*break*/, 5];\n case 4:\n this.loading = false;\n return [7 /*endfinally*/];\n case 5: return [2 /*return*/];\n }\n });\n });\n };\n class_3.prototype.render = function () {\n var _this = this;\n var submitFn = this.delivery ? function (event) { return _this.handleSubmit(event); } : function (event) { return _this.handleSend(event); };\n var submitButtonText = this.delivery ? this.submitButtonText : this.sendButtonText;\n return (h(Host, null, h(\"amplify-form-section\", { headerText: I18n.get(this.headerText), handleSubmit: submitFn, loading: this.loading, secondaryFooterContent: h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.SignIn); }, \"data-test\": \"forgot-password-back-to-sign-in-link\" }, I18n.get(Translations.BACK_TO_SIGN_IN)), testDataPrefix: 'forgot-password', submitButtonText: I18n.get(submitButtonText) }, h(\"amplify-auth-fields\", { formFields: this.newFormFields }))));\n };\n Object.defineProperty(class_3, \"watchers\", {\n get: function () {\n return {\n \"formFields\": [\"formFieldsHandler\"]\n };\n },\n enumerable: false,\n configurable: true\n });\n return class_3;\n}());\nvar logger$1 = new ConsoleLogger('amplify-require-new-password');\nvar AmplifyRequireNewPassword = /** @class */ (function () {\n function class_4(hostRef) {\n var _this = this;\n registerInstance(this, hostRef);\n /** The header text of the forgot password section */\n this.headerText = Translations.CHANGE_PASSWORD;\n /** The text displayed inside of the submit button for the form */\n this.submitButtonText = Translations.CHANGE_PASSWORD_ACTION;\n /** The function called when submitting a new password */\n this.handleSubmit = function (event) { return _this.completeNewPassword(event); };\n /** Auth state change handler for this component */\n this.handleAuthStateChange = dispatchAuthStateChangeEvent;\n /** The form fields displayed inside of the forgot password form */\n this.formFields = [\n {\n type: AuthFormField.Password,\n required: true,\n handleInputChange: function (event) { return _this.handlePasswordChange(event); },\n label: I18n.get(Translations.NEW_PASSWORD_LABEL),\n placeholder: I18n.get(Translations.NEW_PASSWORD_PLACEHOLDER),\n inputProps: {\n 'data-test': 'require-new-password-password-input',\n },\n },\n ];\n this.currentUser = this.user;\n this.loading = false;\n this.requiredAttributes = {};\n this.newFormFields = this.formFields;\n }\n class_4.prototype.handleRequiredAttributeInputChange = function (attribute, event) {\n this.requiredAttributes[attribute] = event.target.value;\n };\n class_4.prototype.componentWillLoad = function () {\n return __awaiter(this, void 0, void 0, function () {\n var user, error_6, userRequiredAttributes;\n var _this = this;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!this.user) return [3 /*break*/, 4];\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, Auth.currentAuthenticatedUser()];\n case 2:\n user = _a.sent();\n if (user)\n this.currentUser = user;\n return [3 /*break*/, 4];\n case 3:\n error_6 = _a.sent();\n dispatchToastHubEvent(error_6);\n return [3 /*break*/, 4];\n case 4:\n if (this.currentUser && this.currentUser.challengeParam.requiredAttributes) {\n userRequiredAttributes = this.currentUser.challengeParam.requiredAttributes;\n userRequiredAttributes.forEach(function (attribute) {\n var formField = {\n type: attribute,\n required: true,\n label: requiredAttributesMap[attribute].label,\n placeholder: requiredAttributesMap[attribute].placeholder,\n handleInputChange: function (event) { return _this.handleRequiredAttributeInputChange(attribute, event); },\n inputProps: {\n 'data-test': \"require-new-password-\" + attribute + \"-input\",\n },\n };\n _this.newFormFields.push(formField);\n });\n }\n return [2 /*return*/];\n }\n });\n });\n };\n class_4.prototype.handlePasswordChange = function (event) {\n this.password = event.target.value;\n };\n class_4.prototype.completeNewPassword = function (event) {\n return __awaiter(this, void 0, void 0, function () {\n var user, _a, error_7;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (event) {\n event.preventDefault();\n }\n if (!Auth || typeof Auth.completeNewPassword !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n this.loading = true;\n _b.label = 1;\n case 1:\n _b.trys.push([1, 8, 9, 10]);\n return [4 /*yield*/, Auth.completeNewPassword(this.currentUser, this.password, this.requiredAttributes)];\n case 2:\n user = _b.sent();\n logger$1.debug('complete new password', user);\n _a = user.challengeName;\n switch (_a) {\n case ChallengeName.SMSMFA: return [3 /*break*/, 3];\n case ChallengeName.MFASetup: return [3 /*break*/, 4];\n }\n return [3 /*break*/, 5];\n case 3:\n this.handleAuthStateChange(AuthState.ConfirmSignIn, user);\n return [3 /*break*/, 7];\n case 4:\n logger$1.debug('TOTP setup', user.challengeParam);\n this.handleAuthStateChange(AuthState.TOTPSetup, user);\n return [3 /*break*/, 7];\n case 5: return [4 /*yield*/, checkContact(user, this.handleAuthStateChange)];\n case 6:\n _b.sent();\n _b.label = 7;\n case 7: return [3 /*break*/, 10];\n case 8:\n error_7 = _b.sent();\n dispatchToastHubEvent(error_7);\n return [3 /*break*/, 10];\n case 9:\n this.loading = false;\n return [7 /*endfinally*/];\n case 10: return [2 /*return*/];\n }\n });\n });\n };\n class_4.prototype.render = function () {\n var _this = this;\n return (h(Host, null, h(\"amplify-form-section\", { headerText: I18n.get(this.headerText), handleSubmit: this.handleSubmit, loading: this.loading, secondaryFooterContent: h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.SignIn); } }, I18n.get(Translations.BACK_TO_SIGN_IN)), submitButtonText: I18n.get(this.submitButtonText) }, h(\"amplify-auth-fields\", { formFields: this.newFormFields }))));\n };\n return class_4;\n}());\nvar amplifySignInCss = \":host{--footer-size:var(--amplify-text-sm);--footer-color:var(--amplify-grey);--footer-font-family:var(--amplify-font-family);--font-weight:var(--amplify-font-weight)}.sign-in-form-footer{font-family:var(--footer-font-family);font-size:var(--footer-size);color:var(--footer-color);font-weight:--font-weight;display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center;-ms-flex-pack:distribute;justify-content:space-around}.sign-in-form-footer amplify-button{margin-bottom:0.625rem}@media (min-width: 672px){.sign-in-form-footer{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:baseline;align-items:baseline}.sign-in-form-footer amplify-button{margin-bottom:0}}.sign-in-form-footer *+*{margin-bottom:15px}\";\nvar AmplifySignIn = /** @class */ (function () {\n function class_5(hostRef) {\n var _this = this;\n registerInstance(this, hostRef);\n /** Fires when sign in form is submitted */\n this.handleSubmit = function (event) { return _this.signIn(event); };\n /** Used for header text in sign in component */\n this.headerText = Translations.SIGN_IN_HEADER_TEXT;\n /** Used for the submit button text in sign in component */\n this.submitButtonText = Translations.SIGN_IN_ACTION;\n /** Auth state change handler for this component */\n this.handleAuthStateChange = dispatchAuthStateChangeEvent;\n /** Username Alias is used to setup authentication with `username`, `email` or `phone_number` */\n this.usernameAlias = 'username';\n /**\n * Form fields allows you to utilize our pre-built components such as username field, code field, password field, email field, etc.\n * by passing an array of strings that you would like the order of the form to be in. If you need more customization, such as changing\n * text for a label or adjust a placeholder, you can follow the structure below in order to do just that.\n * ```\n * [\n * {\n * type: string,\n * label: string,\n * placeholder: string,\n * hint: string | Functional Component | null,\n * required: boolean\n * }\n * ]\n * ```\n */\n this.formFields = [];\n /** Hides the sign up link */\n this.hideSignUp = false;\n this.newFormFields = [];\n /* Whether or not the sign-in component is loading */\n this.loading = false;\n this.phoneNumber = {\n countryDialCodeValue: COUNTRY_DIAL_CODE_DEFAULT,\n phoneNumberValue: null,\n };\n this.signInAttributes = {\n userInput: '',\n password: '',\n };\n }\n class_5.prototype.componentWillLoad = function () {\n checkUsernameAlias(this.usernameAlias);\n this.buildFormFields();\n };\n class_5.prototype.formFieldsHandler = function () {\n this.buildFormFields();\n };\n class_5.prototype.handleFormFieldInputChange = function (fieldType) {\n var _this = this;\n switch (fieldType) {\n case 'username':\n case 'email':\n return function (event) { return (_this.signInAttributes.userInput = event.target.value); };\n case 'phone_number':\n return function (event) { return handlePhoneNumberChange(event, _this.phoneNumber); };\n case 'password':\n return function (event) { return (_this.signInAttributes.password = event.target.value); };\n }\n };\n class_5.prototype.handleFormFieldInputWithCallback = function (event, field) {\n var fnToCall = field['handleInputChange']\n ? field['handleInputChange']\n : function (event, cb) {\n cb(event);\n };\n var callback = this.handleFormFieldInputChange(field.type);\n fnToCall(event, callback.bind(this));\n };\n class_5.prototype.signIn = function (event) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n // avoid submitting the form\n if (event) {\n event.preventDefault();\n }\n this.loading = true;\n switch (this.usernameAlias) {\n case 'phone_number':\n try {\n this.signInAttributes.userInput = composePhoneNumberInput(this.phoneNumber);\n }\n catch (error) {\n dispatchToastHubEvent(error);\n }\n }\n return [4 /*yield*/, handleSignIn(this.signInAttributes.userInput, this.signInAttributes.password, this.handleAuthStateChange)];\n case 1:\n _a.sent();\n this.loading = false;\n return [2 /*return*/];\n }\n });\n });\n };\n class_5.prototype.buildDefaultFormFields = function () {\n var _this = this;\n var formFieldInputs = [];\n switch (this.usernameAlias) {\n case 'email':\n formFieldInputs.push({\n type: 'email',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('email'),\n inputProps: {\n 'data-test': 'sign-in-email-input',\n },\n });\n break;\n case 'phone_number':\n formFieldInputs.push({\n type: 'phone_number',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('phone_number'),\n inputProps: {\n 'data-test': 'sign-in-phone-number-input',\n },\n });\n break;\n case 'username':\n default:\n formFieldInputs.push({\n type: 'username',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('username'),\n inputProps: {\n 'data-test': 'sign-in-username-input',\n },\n });\n break;\n }\n formFieldInputs.push({\n type: 'password',\n hint: (h(\"div\", null, I18n.get(Translations.FORGOT_PASSWORD_TEXT), ' ', h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.ForgotPassword); }, \"data-test\": \"sign-in-forgot-password-link\" }, I18n.get(Translations.RESET_PASSWORD_TEXT)))),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('password'),\n inputProps: {\n 'data-test': 'sign-in-password-input',\n },\n });\n this.newFormFields = __spreadArrays(formFieldInputs);\n };\n class_5.prototype.buildFormFields = function () {\n var _this = this;\n if (this.formFields.length === 0) {\n this.buildDefaultFormFields();\n }\n else {\n var newFields_2 = [];\n this.formFields.forEach(function (field) {\n var newField = Object.assign({}, field);\n // TODO: handle hint better\n if (newField.type === 'password') {\n newField['hint'] = isHintValid(newField) ? (h(\"div\", null, I18n.get(Translations.FORGOT_PASSWORD_TEXT), ' ', h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.ForgotPassword); }, \"data-test\": \"sign-in-forgot-password-link\" }, I18n.get(Translations.RESET_PASSWORD_TEXT)))) : (newField['hint']);\n }\n newField['handleInputChange'] = function (event) { return _this.handleFormFieldInputWithCallback(event, field); };\n _this.setFieldValue(newField, _this.signInAttributes);\n newFields_2.push(newField);\n });\n this.newFormFields = newFields_2;\n }\n };\n class_5.prototype.setFieldValue = function (field, formAttributes) {\n switch (field.type) {\n case 'username':\n case 'email':\n if (field.value === undefined) {\n formAttributes.userInput = '';\n }\n else {\n formAttributes.userInput = field.value;\n }\n break;\n case 'phone_number':\n if (field.dialCode) {\n this.phoneNumber.countryDialCodeValue = field.dialCode;\n }\n this.phoneNumber.phoneNumberValue = field.value;\n break;\n case 'password':\n if (field.value === undefined) {\n formAttributes.password = '';\n }\n else {\n formAttributes.password = field.value;\n }\n break;\n }\n };\n class_5.prototype.render = function () {\n var _this = this;\n return (h(Host, null, h(\"amplify-form-section\", { headerText: I18n.get(this.headerText), handleSubmit: this.handleSubmit, testDataPrefix: 'sign-in' }, h(\"div\", { slot: \"subtitle\" }, h(\"slot\", { name: \"header-subtitle\" })), h(\"slot\", { name: \"federated-buttons\" }, h(\"amplify-federated-buttons\", { handleAuthStateChange: this.handleAuthStateChange, federated: this.federated })), !isEmpty(this.federated) && h(\"amplify-strike\", null, \"or\"), h(\"amplify-auth-fields\", { formFields: this.newFormFields }), h(\"div\", { slot: \"amplify-form-section-footer\", class: \"sign-in-form-footer\" }, h(\"slot\", { name: \"footer\" }, h(\"slot\", { name: \"secondary-footer-content\" }, !this.hideSignUp ? (h(\"span\", null, I18n.get(Translations.NO_ACCOUNT_TEXT), ' ', h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.SignUp); }, \"data-test\": \"sign-in-create-account-link\" }, I18n.get(Translations.CREATE_ACCOUNT_TEXT)))) : (h(\"span\", null))), h(\"slot\", { name: \"primary-footer-content\" }, h(\"amplify-button\", { type: \"submit\", disabled: this.loading, \"data-test\": \"sign-in-sign-in-button\" }, this.loading ? h(\"amplify-loading-spinner\", null) : h(\"span\", null, I18n.get(this.submitButtonText)))))))));\n };\n Object.defineProperty(class_5, \"watchers\", {\n get: function () {\n return {\n \"formFields\": [\"formFieldsHandler\"]\n };\n },\n enumerable: false,\n configurable: true\n });\n return class_5;\n}());\nAmplifySignIn.style = amplifySignInCss;\nvar amplifySignUpCss = \":host{--footer-font-family:var(--amplify-font-family);--footer-font-size:var(--amplify-text-sm);--footer-color:var(--amplify-grey);--font-weight:var(--amplify-font-weight)}.sign-up-form-footer{font-family:var(--footer-font-family);font-size:var(--footer-font-size);color:var(--footer-color);font-weight:--font-weight;display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-ms-flex-align:center;align-items:center;-ms-flex-pack:distribute;justify-content:space-around}.sign-up-form-footer amplify-button{margin-bottom:0.625rem}@media (min-width: 672px){.sign-up-form-footer{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:baseline;align-items:baseline}.sign-up-form-footer amplify-button{margin-bottom:0}}.sign-up-form-footer *+*{margin-bottom:15px}\";\nvar AmplifySignUp = /** @class */ (function () {\n function class_6(hostRef) {\n var _this = this;\n registerInstance(this, hostRef);\n /** Fires when sign up form is submitted */\n this.handleSubmit = function (event) { return _this.signUp(event); };\n /** Used for header text in sign up component */\n this.headerText = Translations.SIGN_UP_HEADER_TEXT;\n /** Used for the submit button text in sign up component */\n this.submitButtonText = Translations.SIGN_UP_SUBMIT_BUTTON_TEXT;\n /** Used for the submit button text in sign up component */\n this.haveAccountText = Translations.SIGN_UP_HAVE_ACCOUNT_TEXT;\n /** Text used for the sign in hyperlink */\n this.signInText = Translations.SIGN_IN_TEXT;\n /**\n * Form fields allows you to utilize our pre-built components such as username field, code field, password field, email field, etc.\n * by passing an array of strings that you would like the order of the form to be in. If you need more customization, such as changing\n * text for a label or adjust a placeholder, you can follow the structure below in order to do just that.\n * ```\n * [\n * {\n * type: string,\n * label: string,\n * placeholder: string,\n * hint: string | Functional Component | null,\n * required: boolean\n * }\n * ]\n * ```\n */\n this.formFields = [];\n /** Auth state change handler for this component\n * e.g. SignIn -> 'Create Account' link -> SignUp\n */\n this.handleAuthStateChange = dispatchAuthStateChangeEvent;\n /** Username Alias is used to setup authentication with `username`, `email` or `phone_number` */\n this.usernameAlias = 'username';\n // private userInput: string | PhoneNumberInterface;\n this.newFormFields = [];\n this.phoneNumber = {\n countryDialCodeValue: COUNTRY_DIAL_CODE_DEFAULT,\n phoneNumberValue: null,\n };\n this.loading = false;\n this.signUpAttributes = {\n username: '',\n password: '',\n attributes: {},\n };\n }\n class_6.prototype.handleFormFieldInputChange = function (fieldType) {\n var _this = this;\n switch (fieldType) {\n case 'username':\n return function (event) { return (_this.signUpAttributes.username = event.target.value); };\n case 'password':\n return function (event) { return (_this.signUpAttributes.password = event.target.value); };\n case 'email':\n return function (event) { return (_this.signUpAttributes.attributes.email = event.target.value); };\n case 'phone_number':\n return function (event) { return handlePhoneNumberChange(event, _this.phoneNumber); };\n default:\n return function (event) { return (_this.signUpAttributes.attributes[fieldType] = event.target.value); };\n }\n };\n class_6.prototype.handleFormFieldInputWithCallback = function (event, field) {\n var fnToCall = field['handleInputChange']\n ? field['handleInputChange']\n : function (event, cb) {\n cb(event);\n };\n var callback = this.handleFormFieldInputChange(field.type);\n fnToCall(event, callback.bind(this));\n };\n // TODO: Add validation\n // TODO: Prefix\n class_6.prototype.signUp = function (event) {\n return __awaiter(this, void 0, void 0, function () {\n var data, signUpAttrs, error_8;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (event) {\n event.preventDefault();\n }\n if (!Auth || typeof Auth.signUp !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n if (this.phoneNumber.phoneNumberValue) {\n try {\n this.signUpAttributes.attributes.phone_number = composePhoneNumberInput(this.phoneNumber);\n }\n catch (error) {\n dispatchToastHubEvent(error);\n }\n }\n switch (this.usernameAlias) {\n case 'email':\n case 'phone_number':\n this.signUpAttributes.username = this.signUpAttributes.attributes[this.usernameAlias];\n break;\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 6, , 7]);\n return [4 /*yield*/, Auth.signUp(this.signUpAttributes)];\n case 2:\n data = _a.sent();\n if (!data) {\n throw new Error(Translations.SIGN_UP_FAILED);\n }\n if (!data.userConfirmed) return [3 /*break*/, 4];\n return [4 /*yield*/, handleSignIn(this.signUpAttributes.username, this.signUpAttributes.password, this.handleAuthStateChange)];\n case 3:\n _a.sent();\n return [3 /*break*/, 5];\n case 4:\n signUpAttrs = Object.assign({}, this.signUpAttributes);\n this.handleAuthStateChange(AuthState.ConfirmSignUp, Object.assign(Object.assign({}, data.user), { signUpAttrs: signUpAttrs }));\n _a.label = 5;\n case 5: return [3 /*break*/, 7];\n case 6:\n error_8 = _a.sent();\n dispatchToastHubEvent(error_8);\n return [3 /*break*/, 7];\n case 7: return [2 /*return*/];\n }\n });\n });\n };\n class_6.prototype.buildDefaultFormFields = function () {\n switch (this.usernameAlias) {\n case 'email':\n this.newFormFields = [\n {\n type: 'email',\n placeholder: I18n.get(Translations.SIGN_UP_EMAIL_PLACEHOLDER),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('email'),\n inputProps: {\n 'data-test': 'sign-up-email-input',\n },\n },\n {\n type: 'password',\n placeholder: I18n.get(Translations.SIGN_UP_PASSWORD_PLACEHOLDER),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('password'),\n inputProps: {\n 'data-test': 'sign-up-password-input',\n },\n },\n {\n type: 'phone_number',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('phone_number'),\n inputProps: {\n 'data-test': 'sign-up-phone-number-input',\n },\n },\n ];\n break;\n case 'phone_number':\n this.newFormFields = [\n {\n type: 'phone_number',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('phone_number'),\n inputProps: {\n 'data-test': 'sign-up-phone-number-input',\n },\n },\n {\n type: 'password',\n placeholder: I18n.get(Translations.SIGN_UP_PASSWORD_PLACEHOLDER),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('password'),\n inputProps: {\n 'data-test': 'sign-up-password-input',\n },\n },\n {\n type: 'email',\n placeholder: I18n.get(Translations.SIGN_UP_EMAIL_PLACEHOLDER),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('email'),\n inputProps: {\n 'data-test': 'sign-up-email-input',\n },\n },\n ];\n break;\n case 'username':\n default:\n this.newFormFields = [\n {\n type: 'username',\n placeholder: I18n.get(Translations.SIGN_UP_USERNAME_PLACEHOLDER),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('username'),\n inputProps: {\n 'data-test': 'sign-up-username-input',\n },\n },\n {\n type: 'password',\n placeholder: I18n.get(Translations.SIGN_UP_PASSWORD_PLACEHOLDER),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('password'),\n inputProps: {\n 'data-test': 'sign-up-password-input',\n },\n },\n {\n type: 'email',\n placeholder: I18n.get(Translations.SIGN_UP_EMAIL_PLACEHOLDER),\n required: true,\n handleInputChange: this.handleFormFieldInputChange('email'),\n inputProps: {\n 'data-test': 'sign-up-email-input',\n },\n },\n {\n type: 'phone_number',\n required: true,\n handleInputChange: this.handleFormFieldInputChange('phone_number'),\n inputProps: {\n 'data-test': 'sign-up-phone-number-input',\n },\n },\n ];\n break;\n }\n };\n class_6.prototype.buildFormFields = function () {\n var _this = this;\n if (this.formFields.length === 0) {\n this.buildDefaultFormFields();\n }\n else {\n var newFields_3 = [];\n this.formFields.forEach(function (field) {\n var newField = Object.assign({}, field);\n newField['handleInputChange'] = function (event) { return _this.handleFormFieldInputWithCallback(event, field); };\n _this.setFieldValue(field, _this.signUpAttributes);\n newFields_3.push(newField);\n });\n this.newFormFields = newFields_3;\n }\n };\n class_6.prototype.setFieldValue = function (field, formAttributes) {\n switch (field.type) {\n case 'username':\n if (field.value === undefined) {\n formAttributes.username = '';\n }\n else {\n formAttributes.username = field.value;\n }\n break;\n case 'password':\n if (field.value === undefined) {\n formAttributes.password = '';\n }\n else {\n formAttributes.password = field.value;\n }\n break;\n case 'email':\n formAttributes.attributes.email = field.value;\n break;\n case 'phone_number':\n if (field.dialCode) {\n this.phoneNumber.countryDialCodeValue = field.dialCode;\n }\n this.phoneNumber.phoneNumberValue = field.value;\n break;\n default:\n formAttributes.attributes[field.type] = field.value;\n break;\n }\n };\n class_6.prototype.componentWillLoad = function () {\n checkUsernameAlias(this.usernameAlias);\n this.buildFormFields();\n };\n class_6.prototype.formFieldsHandler = function () {\n this.buildFormFields();\n };\n class_6.prototype.render = function () {\n var _this = this;\n return (h(Host, null, h(\"amplify-form-section\", { headerText: I18n.get(this.headerText), handleSubmit: this.handleSubmit, testDataPrefix: 'sign-up' }, h(\"div\", { slot: \"subtitle\" }, h(\"slot\", { name: \"header-subtitle\" })), h(\"amplify-auth-fields\", { formFields: this.newFormFields }), h(\"div\", { class: \"sign-up-form-footer\", slot: \"amplify-form-section-footer\" }, h(\"slot\", { name: \"footer\" }, h(\"slot\", { name: \"secondary-footer-content\" }, h(\"span\", null, I18n.get(this.haveAccountText), ' ', h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.SignIn); }, \"data-test\": \"sign-up-sign-in-link\" }, I18n.get(this.signInText)))), h(\"slot\", { name: \"primary-footer-content\" }, h(\"amplify-button\", { type: \"submit\", \"data-test\": \"sign-up-create-account-button\" }, this.loading ? h(\"amplify-loading-spinner\", null) : h(\"span\", null, I18n.get(this.submitButtonText)))))))));\n };\n Object.defineProperty(class_6, \"watchers\", {\n get: function () {\n return {\n \"formFields\": [\"formFieldsHandler\"]\n };\n },\n enumerable: false,\n configurable: true\n });\n return class_6;\n}());\nAmplifySignUp.style = amplifySignUpCss;\nvar logger$2 = new Logger('AmplifyVerifyContact');\nvar AmplifyVerifyContact = /** @class */ (function () {\n function class_7(hostRef) {\n registerInstance(this, hostRef);\n /** Authentication state handler */\n this.handleAuthStateChange = dispatchAuthStateChangeEvent;\n this.loading = false;\n }\n class_7.prototype.handleSubmit = function (event) {\n event.preventDefault();\n this.verifyAttr ? this.submit(this.code) : this.verify(this.contact);\n };\n class_7.prototype.submit = function (code) {\n return __awaiter(this, void 0, void 0, function () {\n var attr, data, error_9;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n attr = this.verifyAttr;\n if (!Auth || typeof Auth.verifyCurrentUserAttributeSubmit !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n this.loading = true;\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, 4, 5]);\n return [4 /*yield*/, Auth.verifyCurrentUserAttributeSubmit(attr, code)];\n case 2:\n data = _a.sent();\n logger$2.debug(data);\n this.handleAuthStateChange(AuthState.SignedIn, this.user);\n this.verifyAttr = null;\n return [3 /*break*/, 5];\n case 3:\n error_9 = _a.sent();\n dispatchToastHubEvent(error_9);\n logger$2.error(error_9);\n return [3 /*break*/, 5];\n case 4:\n this.loading = false;\n return [7 /*endfinally*/];\n case 5: return [2 /*return*/];\n }\n });\n });\n };\n class_7.prototype.verify = function (contact) {\n return __awaiter(this, void 0, void 0, function () {\n var data, error_10;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!contact) {\n logger$2.error('Neither Email nor Phone Number selected');\n return [2 /*return*/];\n }\n if (!Auth || typeof Auth.verifyCurrentUserAttribute !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n this.loading = true;\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, 4, 5]);\n return [4 /*yield*/, Auth.verifyCurrentUserAttribute(contact)];\n case 2:\n data = _a.sent();\n logger$2.debug(data);\n this.verifyAttr = contact;\n return [3 /*break*/, 5];\n case 3:\n error_10 = _a.sent();\n dispatchToastHubEvent(error_10);\n logger$2.error(error_10);\n return [3 /*break*/, 5];\n case 4:\n this.loading = false;\n return [7 /*endfinally*/];\n case 5: return [2 /*return*/];\n }\n });\n });\n };\n class_7.prototype.handleInputChange = function (event) {\n var inputName = event.target.name;\n if (inputName === 'code') {\n this.code = event.target.value;\n }\n else if (inputName === 'contact') {\n this.contact = event.target.value;\n }\n };\n class_7.prototype.renderSubmit = function () {\n var _this = this;\n return (h(\"div\", null, h(\"amplify-input\", { inputProps: {\n autocomplete: 'off',\n 'data-test': 'verify-contact-code-input',\n }, name: \"code\", placeholder: I18n.get(Translations.CODE_PLACEHOLDER), handleInputChange: function (event) { return _this.handleInputChange(event); } })));\n };\n class_7.prototype.renderVerify = function () {\n var _this = this;\n var user = this.user;\n if (!user) {\n logger$2.debug('No user to verify');\n return null;\n }\n var unverified = user.unverified;\n if (!unverified) {\n logger$2.debug('Unverified variable does not exist on user');\n return null;\n }\n var email = unverified.email, phone_number = unverified.phone_number;\n return (h(\"div\", null, email && (h(\"amplify-radio-button\", { label: I18n.get(Translations.VERIFY_CONTACT_EMAIL_LABEL), key: \"email\", name: \"contact\", value: \"email\", handleInputChange: function (event) { return _this.handleInputChange(event); }, inputProps: {\n 'data-test': 'verify-contact-email-radio',\n } })), phone_number && (h(\"amplify-radio-button\", { label: I18n.get(Translations.VERIFY_CONTACT_PHONE_LABEL), key: \"phone_number\", name: \"contact\", value: \"phone_number\", handleInputChange: function (event) { return _this.handleInputChange(event); }, inputProps: {\n 'data-test': 'verify-contact-email-radio',\n } }))));\n };\n class_7.prototype.render = function () {\n var _this = this;\n return (h(Host, null, h(\"amplify-form-section\", { handleSubmit: function (event) { return _this.handleSubmit(event); }, headerText: I18n.get(Translations.VERIFY_CONTACT_HEADER_TEXT), loading: this.loading, secondaryFooterContent: h(\"span\", null, h(\"amplify-button\", { variant: \"anchor\", onClick: function () { return _this.handleAuthStateChange(AuthState.SignedIn, _this.user); } }, \"Skip\")), submitButtonText: this.verifyAttr\n ? I18n.get(Translations.VERIFY_CONTACT_SUBMIT_LABEL)\n : I18n.get(Translations.VERIFY_CONTACT_VERIFY_LABEL) }, this.verifyAttr ? this.renderSubmit() : this.renderVerify())));\n };\n return class_7;\n}());\nexport { AmplifyConfirmSignIn as amplify_confirm_sign_in, AmplifyConfirmSignUp as amplify_confirm_sign_up, AmplifyForgotPassword as amplify_forgot_password, AmplifyRequireNewPassword as amplify_require_new_password, AmplifySignIn as amplify_sign_in, AmplifySignUp as amplify_sign_up, AmplifyVerifyContact as amplify_verify_contact };\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nimport { Logger, isEmpty } from '@aws-amplify/core';\nimport { A as AuthState, C as ChallengeName } from './auth-types-78df304e.js';\nimport { Auth } from '@aws-amplify/auth';\nimport { N as NO_AUTH_MODULE_FOUND } from './constants-d1abe7de.js';\nimport { a as dispatchToastHubEvent } from './helpers-01ecf5f9.js';\nvar logger = new Logger('auth-helpers');\nfunction checkContact(user, handleAuthStateChange) {\n return __awaiter(this, void 0, void 0, function () {\n var data, newUser, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!Auth || typeof Auth.verifiedContact !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, Auth.verifiedContact(user)];\n case 2:\n data = _a.sent();\n if (!isEmpty(data.verified) || isEmpty(data.unverified)) {\n handleAuthStateChange(AuthState.SignedIn, user);\n }\n else {\n newUser = Object.assign(user, data);\n handleAuthStateChange(AuthState.VerifyContact, newUser);\n }\n return [3 /*break*/, 4];\n case 3:\n error_1 = _a.sent();\n dispatchToastHubEvent(error_1);\n return [3 /*break*/, 4];\n case 4: return [2 /*return*/];\n }\n });\n });\n}\nvar handleSignIn = function (username, password, handleAuthStateChange) { return __awaiter(void 0, void 0, void 0, function () {\n var user, error_2;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!Auth || typeof Auth.signIn !== 'function') {\n throw new Error(NO_AUTH_MODULE_FOUND);\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 9, , 10]);\n return [4 /*yield*/, Auth.signIn(username, password)];\n case 2:\n user = _a.sent();\n logger.debug(user);\n if (!(user.challengeName === ChallengeName.SMSMFA || user.challengeName === ChallengeName.SoftwareTokenMFA)) return [3 /*break*/, 3];\n logger.debug('confirm user with ' + user.challengeName);\n handleAuthStateChange(AuthState.ConfirmSignIn, user);\n return [3 /*break*/, 8];\n case 3:\n if (!(user.challengeName === ChallengeName.NewPasswordRequired)) return [3 /*break*/, 4];\n logger.debug('require new password', user.challengeParam);\n handleAuthStateChange(AuthState.ResetPassword, user);\n return [3 /*break*/, 8];\n case 4:\n if (!(user.challengeName === ChallengeName.MFASetup)) return [3 /*break*/, 5];\n logger.debug('TOTP setup', user.challengeParam);\n handleAuthStateChange(AuthState.TOTPSetup, user);\n return [3 /*break*/, 8];\n case 5:\n if (!(user.challengeName === ChallengeName.CustomChallenge &&\n user.challengeParam &&\n user.challengeParam.trigger === 'true')) return [3 /*break*/, 6];\n logger.debug('custom challenge', user.challengeParam);\n handleAuthStateChange(AuthState.CustomConfirmSignIn, user);\n return [3 /*break*/, 8];\n case 6: return [4 /*yield*/, checkContact(user, handleAuthStateChange)];\n case 7:\n _a.sent();\n _a.label = 8;\n case 8: return [3 /*break*/, 10];\n case 9:\n error_2 = _a.sent();\n dispatchToastHubEvent(error_2);\n if (error_2.code === 'UserNotConfirmedException') {\n logger.debug('the user is not confirmed');\n handleAuthStateChange(AuthState.ConfirmSignUp, { username: username });\n }\n else if (error_2.code === 'PasswordResetRequiredException') {\n logger.debug('the user requires a new password');\n handleAuthStateChange(AuthState.ForgotPassword, { username: username });\n }\n return [3 /*break*/, 10];\n case 10: return [2 /*return*/];\n }\n });\n}); };\nexport { checkContact as c, handleSignIn as h };\n"],"sourceRoot":""}