@aws-amplify/ui-angular 2.1.2 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/aws-amplify-ui-angular.metadata.json +1 -1
  2. package/bundles/aws-amplify-ui-angular.umd.js +21 -17
  3. package/bundles/aws-amplify-ui-angular.umd.js.map +1 -1
  4. package/bundles/aws-amplify-ui-angular.umd.min.js +1 -1
  5. package/bundles/aws-amplify-ui-angular.umd.min.js.map +1 -1
  6. package/esm2015/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.js +3 -3
  7. package/esm2015/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.js +3 -3
  8. package/esm2015/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.js +10 -6
  9. package/esm2015/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.js +3 -3
  10. package/esm2015/lib/components/authenticator/components/force-new-password/force-new-password.component.js +3 -3
  11. package/esm2015/lib/components/authenticator/components/reset-password/reset-password.component.js +3 -3
  12. package/esm2015/lib/components/authenticator/components/setup-totp/setup-totp.component.js +3 -3
  13. package/esm2015/lib/components/authenticator/components/sign-in/sign-in.component.js +3 -3
  14. package/esm2015/lib/components/authenticator/components/sign-up/sign-up.component.js +3 -3
  15. package/esm2015/lib/components/authenticator/components/verify-user/verify-user.component.js +3 -3
  16. package/esm2015/lib/primitives/password-field/password-field.component.js +2 -2
  17. package/esm2015/lib/primitives/phone-number-field/phone-number-field.component.js +2 -2
  18. package/esm2015/lib/primitives/select/select.component.js +2 -2
  19. package/esm2015/lib/primitives/text-field/text-field.component.js +2 -2
  20. package/fesm2015/aws-amplify-ui-angular.js +22 -18
  21. package/fesm2015/aws-amplify-ui-angular.js.map +1 -1
  22. package/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.d.ts +4 -0
  23. package/package.json +2 -2
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Directive, TemplateRef, Input, Injectable, Component, ViewEncapsulation, ContentChildren, HostBinding, EventEmitter, Output, NgModule } from '@angular/core';
3
3
  import { CommonModule } from '@angular/common';
4
- import { createAuthenticatorMachine, getServiceContextFacade, listenToAuthHub, getSendEventAliases, translate, getActorContext, AuthChallengeNames, FederatedIdentityProviders, authInputAttributes, countryDialCodes, getAliasInfoFromContext, hasTranslation, getActorState } from '@aws-amplify/ui';
4
+ import { createAuthenticatorMachine, getServiceContextFacade, listenToAuthHub, getSendEventAliases, translate, getFormDataFromEvent, getActorContext, AuthChallengeNames, FederatedIdentityProviders, authInputAttributes, countryDialCodes, getAliasInfoFromContext, hasTranslation, getActorState } from '@aws-amplify/ui';
5
5
  export { translations } from '@aws-amplify/ui';
6
6
  import { Logger } from '@aws-amplify/core';
7
7
  import { interpret } from 'xstate';
@@ -298,7 +298,7 @@ class ConfirmResetPasswordComponent {
298
298
  }
299
299
  onSubmit(event) {
300
300
  event.preventDefault();
301
- this.authenticator.submitForm();
301
+ this.authenticator.submitForm(getFormDataFromEvent(event));
302
302
  }
303
303
  }
304
304
  ConfirmResetPasswordComponent.decorators = [
@@ -351,7 +351,7 @@ class ConfirmSignInComponent {
351
351
  }
352
352
  onSubmit(event) {
353
353
  event.preventDefault();
354
- this.authenticator.submitForm();
354
+ this.authenticator.submitForm(getFormDataFromEvent(event));
355
355
  }
356
356
  }
357
357
  ConfirmSignInComponent.decorators = [
@@ -375,6 +375,10 @@ class ConfirmSignUpComponent {
375
375
  // translated texts
376
376
  this.resendCodeText = translate('Resend Code');
377
377
  this.confirmText = translate('Confirm');
378
+ this.emailMessage = translate('Your code is on the way. To log in, enter the code we emailed to');
379
+ this.textedMessage = translate('Your code is on the way. To log in, enter the code we texted to');
380
+ this.defaultMessage = translate('Your code is on the way. To log in, enter the code we sent you. It may take a minute to arrive.');
381
+ this.minutesMessage = translate('It may take a minute to arrive.');
378
382
  }
379
383
  get context() {
380
384
  return this.authenticator.slotContext;
@@ -390,10 +394,10 @@ class ConfirmSignUpComponent {
390
394
  get subtitleText() {
391
395
  const { codeDeliveryDetails: { DeliveryMedium, Destination } = {} } = this.authenticator;
392
396
  return DeliveryMedium === 'EMAIL'
393
- ? `Your code is on the way. To log in, enter the code we emailed to ${Destination}. It may take a minute to arrive.`
397
+ ? `${this.emailMessage} ${Destination}. ${this.minutesMessage}`
394
398
  : DeliveryMedium === 'SMS'
395
- ? `Your code is on the way. To log in, enter the code we texted to ${Destination}. It may take a minute to arrive.`
396
- : translate(`Your code is on the way. To log in, enter the code we sent you. It may take a minute to arrive.`);
399
+ ? `${this.textedMessage} ${Destination}. ${this.minutesMessage}`
400
+ : translate(`${this.defaultMessage}`);
397
401
  }
398
402
  onInput(event) {
399
403
  event.preventDefault();
@@ -402,7 +406,7 @@ class ConfirmSignUpComponent {
402
406
  }
403
407
  onSubmit(event) {
404
408
  event.preventDefault();
405
- this.authenticator.submitForm();
409
+ this.authenticator.submitForm(getFormDataFromEvent(event));
406
410
  }
407
411
  }
408
412
  ConfirmSignUpComponent.decorators = [
@@ -438,7 +442,7 @@ class ConfirmVerifyUserComponent {
438
442
  }
439
443
  onSubmit(event) {
440
444
  event.preventDefault();
441
- this.authenticator.submitForm();
445
+ this.authenticator.submitForm(getFormDataFromEvent(event));
442
446
  }
443
447
  }
444
448
  ConfirmVerifyUserComponent.decorators = [
@@ -542,7 +546,7 @@ class ForceNewPasswordComponent {
542
546
  }
543
547
  onSubmit(event) {
544
548
  event.preventDefault();
545
- this.authenticator.submitForm();
549
+ this.authenticator.submitForm(getFormDataFromEvent(event));
546
550
  }
547
551
  }
548
552
  ForceNewPasswordComponent.decorators = [
@@ -701,7 +705,7 @@ class ResetPasswordComponent {
701
705
  }
702
706
  onSubmit(event) {
703
707
  event.preventDefault();
704
- this.authenticator.submitForm();
708
+ this.authenticator.submitForm(getFormDataFromEvent(event));
705
709
  }
706
710
  }
707
711
  ResetPasswordComponent.decorators = [
@@ -762,7 +766,7 @@ class SetupTotpComponent {
762
766
  }
763
767
  onSubmit(event) {
764
768
  event.preventDefault();
765
- this.authenticator.submitForm();
769
+ this.authenticator.submitForm(getFormDataFromEvent(event));
766
770
  }
767
771
  copyText() {
768
772
  navigator.clipboard.writeText(this.secretKey);
@@ -803,7 +807,7 @@ class SignInComponent {
803
807
  }
804
808
  onSubmit(event) {
805
809
  event.preventDefault();
806
- this.authenticator.submitForm();
810
+ this.authenticator.submitForm(getFormDataFromEvent(event));
807
811
  }
808
812
  }
809
813
  SignInComponent.decorators = [
@@ -838,7 +842,7 @@ class SignUpComponent {
838
842
  }
839
843
  onSubmit(event) {
840
844
  event.preventDefault();
841
- this.authenticator.submitForm();
845
+ this.authenticator.submitForm(getFormDataFromEvent(event));
842
846
  }
843
847
  }
844
848
  SignUpComponent.decorators = [
@@ -948,7 +952,7 @@ class VerifyUserComponent {
948
952
  }
949
953
  onSubmit(event) {
950
954
  event.preventDefault();
951
- this.authenticator.submitForm();
955
+ this.authenticator.submitForm(getFormDataFromEvent(event));
952
956
  }
953
957
  }
954
958
  VerifyUserComponent.decorators = [
@@ -1074,7 +1078,7 @@ class PasswordFieldComponent {
1074
1078
  PasswordFieldComponent.decorators = [
1075
1079
  { type: Component, args: [{
1076
1080
  selector: 'amplify-password-field',
1077
- template: "<label class=\"amplify-label\" [class.sr-only]=\"labelHidden\" [for]=\"fieldId\">\n {{ label }}\n</label>\n<div class=\"amplify-flex amplify-field-group\">\n <input\n class=\"amplify-input amplify-field-group__control\"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [attr.disabled]=\"disabled ? '' : null\"\n [autocomplete]=\"autocomplete\"\n (blur)=\"setBlur.emit($event)\"\n />\n <div class=\"amplify-field-group__outer-end\">\n <button\n amplify-button\n [attr.aria-label]=\"showPasswordButtonlabel\"\n class=\"amplify-field-group__control amplify-field__show-password\"\n (click)=\"togglePasswordText()\"\n >\n <svg\n *ngIf=\"!showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n ></path>\n </svg>\n <svg\n *ngIf=\"showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z\"\n fill=\"none\"\n ></path>\n <path\n d=\"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n ></path>\n </svg>\n </button>\n </div>\n</div>\n"
1081
+ template: "<label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"fieldId\"\n>\n {{ label }}\n</label>\n<div class=\"amplify-flex amplify-field-group\">\n <input\n class=\"amplify-input amplify-field-group__control\"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [attr.disabled]=\"disabled ? '' : null\"\n [autocomplete]=\"autocomplete\"\n (blur)=\"setBlur.emit($event)\"\n />\n <div class=\"amplify-field-group__outer-end\">\n <button\n amplify-button\n [attr.aria-label]=\"showPasswordButtonlabel\"\n class=\"amplify-field-group__control amplify-field__show-password\"\n (click)=\"togglePasswordText()\"\n >\n <svg\n *ngIf=\"!showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n ></path>\n </svg>\n <svg\n *ngIf=\"showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z\"\n fill=\"none\"\n ></path>\n <path\n d=\"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n ></path>\n </svg>\n </button>\n </div>\n</div>\n"
1078
1082
  },] }
1079
1083
  ];
1080
1084
  PasswordFieldComponent.propDecorators = {
@@ -1108,7 +1112,7 @@ class PhoneNumberFieldComponent {
1108
1112
  PhoneNumberFieldComponent.decorators = [
1109
1113
  { type: Component, args: [{
1110
1114
  selector: 'amplify-phone-number-field',
1111
- template: "<label class=\"amplify-label\" [class.sr-only]=\"labelHidden\" [for]=\"textFieldId\">\n {{ label }}\n</label>\n<div\n class=\"amplify-flex amplify-phonenumberfield\"\n amplify-field-group\n style=\"gap: 0px\"\n>\n <div class=\"amplify-field-group__outer-start\">\n <div\n class=\"\n amplify-flex amplify-field amplify-selectfield amplify-countrycodeselect\n \"\n style=\"flex-direction: column\"\n >\n <amplify-form-select\n name=\"country_code\"\n label=\"Country Code\"\n [id]=\"selectFieldId\"\n [items]=\"countryDialCodes\"\n [defaultValue]=\"defaultCountryCode\"\n ></amplify-form-select>\n </div>\n </div>\n\n <input\n class=\"amplify-input\"\n [id]=\"textFieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [attr.disabled]=\"disabled ? '' : null\"\n [autocomplete]=\"autocomplete\"\n />\n</div>\n"
1115
+ template: "<label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"textFieldId\"\n>\n {{ label }}\n</label>\n<div\n class=\"amplify-flex amplify-phonenumberfield\"\n amplify-field-group\n style=\"gap: 0px\"\n>\n <div class=\"amplify-field-group__outer-start\">\n <div\n class=\"\n amplify-flex amplify-field amplify-selectfield amplify-countrycodeselect\n \"\n style=\"flex-direction: column\"\n >\n <amplify-form-select\n name=\"country_code\"\n label=\"Country Code\"\n [id]=\"selectFieldId\"\n [items]=\"countryDialCodes\"\n [defaultValue]=\"defaultCountryCode\"\n ></amplify-form-select>\n </div>\n </div>\n\n <input\n class=\"amplify-input\"\n [id]=\"textFieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [attr.disabled]=\"disabled ? '' : null\"\n [autocomplete]=\"autocomplete\"\n />\n</div>\n"
1112
1116
  },] }
1113
1117
  ];
1114
1118
  PhoneNumberFieldComponent.propDecorators = {
@@ -1132,7 +1136,7 @@ class SelectComponent {
1132
1136
  SelectComponent.decorators = [
1133
1137
  { type: Component, args: [{
1134
1138
  selector: 'amplify-form-select',
1135
- template: "<label class=\"amplify-label sr-only\" [for]=\"id\">{{ label }}</label>\n<div class=\"amplify-select__wrapper\">\n <select\n class=\"amplify-select amplify-field-group__control\"\n autocomplete=\"tel-country-code\"\n [id]=\"id\"\n [name]=\"name\"\n >\n <option\n *ngFor=\"let item of items\"\n [value]=\"item\"\n [selected]=\"item === defaultValue\"\n >\n {{ item }}\n </option>\n </select>\n <div\n class=\"amplify-flex amplify-select__icon-wrapper\"\n style=\"align-items: center; justify-content: center\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n viewBox=\"0 0 24 24\"\n data-size=\"large\"\n fill=\"currentColor\"\n >\n <path d=\"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z\"></path>\n </svg>\n </div>\n</div>\n"
1139
+ template: "<label class=\"amplify-label amplify-visually-hidden\" [for]=\"id\">{{\n label\n}}</label>\n<div class=\"amplify-select__wrapper\">\n <select\n class=\"amplify-select amplify-field-group__control\"\n autocomplete=\"tel-country-code\"\n [id]=\"id\"\n [name]=\"name\"\n >\n <option\n *ngFor=\"let item of items\"\n [value]=\"item\"\n [selected]=\"item === defaultValue\"\n >\n {{ item }}\n </option>\n </select>\n <div\n class=\"amplify-flex amplify-select__icon-wrapper\"\n style=\"align-items: center; justify-content: center\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n viewBox=\"0 0 24 24\"\n data-size=\"large\"\n fill=\"currentColor\"\n >\n <path d=\"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z\"></path>\n </svg>\n </div>\n</div>\n"
1136
1140
  },] }
1137
1141
  ];
1138
1142
  SelectComponent.propDecorators = {
@@ -1222,7 +1226,7 @@ class TextFieldComponent {
1222
1226
  TextFieldComponent.decorators = [
1223
1227
  { type: Component, args: [{
1224
1228
  selector: 'amplify-text-field',
1225
- template: "<label class=\"amplify-label\" [class.sr-only]=\"labelHidden\" [for]=\"fieldId\">\n {{ label }}\n</label>\n<input\n class=\"amplify-input\"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [attr.disabled]=\"disabled ? '' : null\"\n [autocomplete]=\"autocomplete\"\n/>\n"
1229
+ template: "<label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"fieldId\"\n>\n {{ label }}\n</label>\n<input\n class=\"amplify-input\"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [attr.disabled]=\"disabled ? '' : null\"\n [autocomplete]=\"autocomplete\"\n/>\n"
1226
1230
  },] }
1227
1231
  ];
1228
1232
  TextFieldComponent.propDecorators = {
@@ -1 +1 @@
1
- {"version":3,"file":"aws-amplify-ui-angular.js","sources":["../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.directive.ts","../../../projects/ui-angular/src/lib/services/custom-components.service.ts","../../../projects/ui-angular/src/lib/services/authenticator.service.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/authenticator/authenticator.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in/federated-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component.ts","../../../projects/ui-angular/src/lib/common/helpers.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/form-field/form-field.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/reset-password/reset-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/setup-totp/setup-totp.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-in/sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/user-name-alias/user-name-alias.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/verify-user/verify-user.component.ts","../../../projects/ui-angular/src/lib/primitives/button/button.component.ts","../../../projects/ui-angular/src/lib/primitives/checkbox/checkbox.component.ts","../../../projects/ui-angular/src/lib/primitives/error/error.component.ts","../../../projects/ui-angular/src/lib/primitives/password-field/password-field.component.ts","../../../projects/ui-angular/src/lib/primitives/phone-number-field/phone-number-field.component.ts","../../../projects/ui-angular/src/lib/primitives/select/select.component.ts","../../../projects/ui-angular/src/lib/primitives/tab-item/tab-item.component.ts","../../../projects/ui-angular/src/lib/primitives/tabs/tabs.component.ts","../../../projects/ui-angular/src/lib/primitives/text-field/text-field.component.ts","../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/authenticator.module.ts","../../../projects/ui-angular/src/index.ts","../../../projects/ui-angular/src/aws-amplify-ui-angular.ts"],"sourcesContent":["import { Directive, Input, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[amplifySlot]',\n})\nexport class AmplifySlotDirective {\n constructor(public template: TemplateRef<any>) {}\n public name: string;\n\n @Input() set amplifySlot(component: string) {\n this.name = component;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CustomComponents } from '../common';\n\n/**\n * Stores and provides custom components that users provide with `amplify-slot`.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class CustomComponentsService {\n private _customComponents: CustomComponents = {};\n\n public get customComponents(): CustomComponents {\n return this._customComponents;\n }\n\n public set customComponents(customComponents: CustomComponents) {\n this._customComponents = { ...this._customComponents, ...customComponents };\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { Logger } from '@aws-amplify/core';\nimport {\n AuthContext,\n AuthenticatorMachineOptions,\n AuthEvent,\n AuthInterpreter,\n AuthMachineState,\n createAuthenticatorMachine,\n getSendEventAliases,\n getServiceContextFacade,\n listenToAuthHub,\n} from '@aws-amplify/ui';\nimport { Event, interpret, Subscription } from 'xstate';\nimport { AuthSubscriptionCallback } from '../common';\nimport { translate } from '@aws-amplify/ui';\n\nconst logger = new Logger('state-machine');\n\n/**\n * AuthenticatorService provides access to the authenticator state and context.\n */\n@Injectable({\n providedIn: 'root', // ensure we have a singleton service\n})\nexport class AuthenticatorService implements OnDestroy {\n private _authState: AuthMachineState;\n private _authService: AuthInterpreter;\n private _sendEventAliases: ReturnType<typeof getSendEventAliases>;\n private _machineSubscription: Subscription;\n private _hubSubscription: ReturnType<typeof listenToAuthHub>;\n private _facade: ReturnType<typeof getServiceContextFacade>;\n\n public startMachine({\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n }: AuthenticatorMachineOptions) {\n const machine = createAuthenticatorMachine();\n\n const authService = interpret(machine).start();\n\n authService.send({\n type: 'INIT',\n data: {\n initialState,\n loginMechanisms,\n socialProviders,\n signUpAttributes,\n services,\n },\n });\n\n this._machineSubscription = authService.subscribe((state) => {\n this._authState = state;\n this._facade = getServiceContextFacade(state);\n });\n\n this._hubSubscription = listenToAuthHub(authService.send);\n this._sendEventAliases = getSendEventAliases(authService.send);\n this._authService = authService;\n }\n\n ngOnDestroy(): void {\n if (this._machineSubscription) this._machineSubscription.unsubscribe();\n if (this._hubSubscription) this._hubSubscription();\n }\n\n /**\n * Context facades\n */\n\n public get error() {\n return translate(this._facade?.error);\n }\n\n public get hasValidationErrors() {\n return this._facade?.hasValidationErrors;\n }\n\n public get isPending() {\n return this._facade?.isPending;\n }\n\n public get route() {\n return this._facade?.route;\n }\n\n public get user() {\n return this._facade?.user;\n }\n\n public get validationErrors() {\n return this._facade?.validationErrors;\n }\n\n public get codeDeliveryDetails() {\n return this._facade?.codeDeliveryDetails;\n }\n\n /**\n * Service facades\n */\n\n public get updateForm() {\n return this._sendEventAliases.updateForm;\n }\n\n public get updateBlur() {\n return this._sendEventAliases.updateBlur;\n }\n\n public get resendCode() {\n return this._sendEventAliases.resendCode;\n }\n\n public get signOut() {\n return this._sendEventAliases.signOut;\n }\n\n public get submitForm() {\n return this._sendEventAliases.submitForm;\n }\n\n /**\n * Transition facades\n */\n\n public get toFederatedSignIn() {\n return this._sendEventAliases.toFederatedSignIn;\n }\n\n public get toResetPassword() {\n return this._sendEventAliases.toResetPassword;\n }\n\n public get toSignIn() {\n return this._sendEventAliases.toSignIn;\n }\n\n public get toSignUp() {\n return this._sendEventAliases.toSignUp;\n }\n\n public get skipVerification() {\n return this._sendEventAliases.skipVerification;\n }\n\n /**\n * Internal utility functions\n */\n\n /** @deprecated For internal use only */\n public get authState(): AuthMachineState {\n return this._authState;\n }\n\n /** @deprecated For internal use only */\n public get authService(): AuthInterpreter {\n return this._authService;\n }\n\n /** @deprecated For internal use only */\n public get context(): AuthContext {\n return this._authState.context;\n }\n\n /** @deprecated For internal use only */\n public get slotContext() {\n const slotContext = {\n ...this._facade,\n ...this._sendEventAliases,\n };\n\n return {\n ...slotContext,\n $implicit: { ...slotContext },\n };\n }\n\n /** @deprecated For internal use only */\n public subscribe(callback: AuthSubscriptionCallback) {\n if (this._authService) {\n return this._authService.subscribe(callback);\n } else {\n logger.error(\n 'Subscription attempted before machine was created. This is likely a bug on the library, please consider filing a bug.'\n );\n }\n }\n\n /** @deprecated For internal use only */\n public send(event: Event<AuthEvent>) {\n this.authService.send(event);\n }\n}\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n Input,\n OnInit,\n QueryList,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n AuthenticatorMachineOptions,\n SocialProvider,\n translate,\n} from '@aws-amplify/ui';\nimport { AmplifySlotDirective } from '../../../../utilities/amplify-slot/amplify-slot.directive';\nimport { CustomComponentsService } from '../../../../services/custom-components.service';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-authenticator',\n templateUrl: './authenticator.component.html',\n providers: [CustomComponentsService], // make sure custom components are scoped to this authenticator only\n encapsulation: ViewEncapsulation.None,\n})\nexport class AuthenticatorComponent implements OnInit, AfterContentInit {\n @Input() initialState: AuthenticatorMachineOptions['initialState'];\n @Input() loginMechanisms: AuthenticatorMachineOptions['loginMechanisms'];\n @Input() services: AuthenticatorMachineOptions['services'];\n @Input() signUpAttributes: AuthenticatorMachineOptions['signUpAttributes'];\n @Input() socialProviders: SocialProvider[];\n @Input() variation: 'default' | 'modal';\n @Input() hideSignUp: boolean;\n\n @ContentChildren(AmplifySlotDirective)\n private customComponentQuery: QueryList<AmplifySlotDirective> = null;\n\n // translated texts\n public signInTitle = translate('Sign In');\n public signUpTitle = translate('Create Account');\n\n constructor(\n private authenticator: AuthenticatorService,\n private contextService: CustomComponentsService\n ) {}\n\n ngOnInit(): void {\n const {\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n } = this;\n this.authenticator.startMachine({\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n });\n\n /**\n * handling translations after content init, because authenticator and its\n * translations might be initialized before the main app's `ngOnInit` is run.\n */\n this.signInTitle = translate('Sign In');\n this.signUpTitle = translate('Create Account');\n }\n\n /**\n * Lifecycle Methods\n */\n ngAfterContentInit(): void {\n this.contextService.customComponents = this.mapCustomComponents(\n this.customComponentQuery\n );\n }\n\n /**\n * Class Functions\n */\n\n // context passed to \"authenticated\" slot\n public get context() {\n return this.authenticator.slotContext;\n }\n\n public get route() {\n return this.authenticator.route;\n }\n\n public onTabChange() {\n const route = this.authenticator.route;\n if (route === 'signIn') {\n this.authenticator.toSignUp();\n } else {\n this.authenticator.toSignIn();\n }\n }\n\n public hasTabs() {\n const route = this.authenticator.route;\n return route === 'signIn' || route === 'signUp';\n }\n\n private mapCustomComponents(\n componentQuery: QueryList<AmplifySlotDirective>\n ): Record<string, TemplateRef<any>> {\n if (!componentQuery) return {};\n const customComponents: Record<string, TemplateRef<any>> = {};\n componentQuery.forEach((component) => {\n customComponents[component.name] = component.template;\n });\n\n return customComponents;\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-confirm-reset-password',\n templateUrl: './amplify-confirm-reset-password.component.html',\n})\nexport class ConfirmResetPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n @Input() public headerText = translate('Reset your password');\n\n // translated strings\n public sendCodeText = translate('Send Code');\n public backToSignInText = translate('Back to Sign In');\n public resendCodeText = translate('Resend Code');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport { Logger } from 'aws-amplify';\nimport {\n AuthChallengeNames,\n getActorContext,\n SignInContext,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\nconst logger = new Logger('ConfirmSignIn');\n\n@Component({\n selector: 'amplify-confirm-sign-in',\n templateUrl: './confirm-sign-in.component.html',\n})\nexport class ConfirmSignInComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n\n // translated texts\n public headerText: string;\n public confirmText = translate('Confirm');\n public backToSignInText = translate('Back to Sign In');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n this.setHeaderText();\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n setHeaderText(): void {\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { challengeName } = actorContext;\n switch (challengeName) {\n case AuthChallengeNames.SOFTWARE_TOKEN_MFA:\n this.headerText = translate('Confirm TOTP Code');\n break;\n case AuthChallengeNames.SMS_MFA:\n this.headerText = translate('Confirm SMS Code');\n break;\n default:\n logger.error('Unexpected challengeName', challengeName);\n }\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n@Component({\n selector: 'amplify-confirm-sign-up',\n templateUrl: './confirm-sign-up.component.html',\n})\nexport class ConfirmSignUpComponent {\n @Input() headerText = translate('Confirm Sign Up');\n\n @HostBinding('attr.data-amplify-authenticator-confirmsignup') dataAttr = '';\n\n // translated texts\n public resendCodeText = translate('Resend Code');\n public confirmText = translate('Confirm');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n public get confirmSignUpHeading(): string {\n const { codeDeliveryDetails: { DeliveryMedium } = {} } = this.authenticator;\n return DeliveryMedium === 'EMAIL'\n ? translate('We Emailed You')\n : DeliveryMedium === 'SMS'\n ? translate('We Texted You')\n : translate('We Sent A Code');\n }\n\n public get subtitleText(): string {\n const { codeDeliveryDetails: { DeliveryMedium, Destination } = {} } =\n this.authenticator;\n return DeliveryMedium === 'EMAIL'\n ? `Your code is on the way. To log in, enter the code we emailed to ${Destination}. It may take a minute to arrive.`\n : DeliveryMedium === 'SMS'\n ? `Your code is on the way. To log in, enter the code we texted to ${Destination}. It may take a minute to arrive.`\n : translate(\n `Your code is on the way. To log in, enter the code we sent you. It may take a minute to arrive.`\n );\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { translate } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-confirm-verify-user',\n templateUrl: './amplify-confirm-verify-user.component.html',\n})\nexport class ConfirmVerifyUserComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmverifyuser')\n dataAttr = '';\n @Input() public headerText = translate(\n 'Account recovery requires verified contact information'\n );\n\n // translated texts\n public skipText = translate('Skip');\n public submitText = translate('Submit');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-federated-sign-in-button',\n templateUrl: './federated-sign-in-button.component.html',\n})\nexport class FederatedSignInButtonComponent {\n @Input() provider: FederatedIdentityProviders;\n @Input() text: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n onClick = (): void => {\n this.authenticator.send({\n type: 'FEDERATED_SIGN_IN',\n data: { provider: this.provider },\n });\n };\n}\n","import { Component, OnInit } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-federated-sign-in',\n templateUrl: './federated-sign-in.component.html',\n})\nexport class FederatedSignInComponent implements OnInit {\n public FederatedProviders = FederatedIdentityProviders;\n public includeAmazon: boolean = false;\n public includeApple: boolean = false;\n public includeFacebook: boolean = false;\n public includeGoogle: boolean = false;\n public shouldShowFederatedSignIn = false;\n\n // translated texts\n public signInAmazonText: string;\n public signInAppleText: string;\n public signInFacebookText: string;\n public signInGoogleText: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const { socialProviders } = this.authenticator.context?.config;\n\n this.setFederatedTexts();\n this.includeAmazon = socialProviders?.includes('amazon');\n this.includeApple = socialProviders?.includes('apple');\n this.includeGoogle = socialProviders?.includes('google');\n this.includeFacebook = socialProviders?.includes('facebook');\n\n this.shouldShowFederatedSignIn =\n this.includeAmazon ||\n this.includeApple ||\n this.includeFacebook ||\n this.includeGoogle;\n }\n\n private setFederatedTexts() {\n const { route } = this.authenticator;\n const federatedText = route === 'signUp' ? 'Up' : 'In';\n this.signInAmazonText = translate<string>(\n `Sign ${federatedText} with Amazon`\n );\n this.signInAppleText = translate<string>(\n `Sign ${federatedText} with Apple`\n );\n this.signInFacebookText = translate<string>(\n `Sign ${federatedText} with Facebook`\n );\n this.signInGoogleText = translate<string>(\n `Sign ${federatedText} with Google`\n );\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-force-new-password',\n templateUrl: './force-new-password.component.html',\n})\nexport class ForceNewPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-forcenewpassword')\n dataAttr = '';\n @Input() public headerText = translate('Change Password');\n\n // translated texts\n public changePasswordText = translate('Change Password');\n public backToSignInText = translate('Back to Sign In');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../../services/authenticator.service';\nimport {\n authInputAttributes,\n getActorContext,\n SignInContext,\n} from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-force-new-password-form-fields',\n templateUrl: './force-new-password-form-fields.component.html',\n})\nexport class ForceNewPasswordFormFieldsComponent implements OnInit {\n public fieldNames: string[];\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { requiredAttributes } = actorContext;\n\n this.fieldNames = requiredAttributes.filter((fieldName) => {\n const hasDefaultField = !!authInputAttributes[fieldName];\n if (!hasDefaultField) {\n console.debug(\n `Authenticator does not have a default implementation for ${fieldName}. Customize Authenticator.SignUp.FormFields to add your own.`\n );\n }\n return hasDefaultField;\n });\n }\n}\n","import { authInputAttributes } from '@aws-amplify/ui';\nimport { AttributeInfoProvider } from './types';\n\nexport const getAttributeMap: AttributeInfoProvider = () => authInputAttributes;\n","import { Component, Input, OnInit } from '@angular/core';\nimport {\n ActorContextWithForms,\n AuthInputAttributes,\n getActorContext,\n translate,\n countryDialCodes,\n} from '@aws-amplify/ui';\nimport { getAttributeMap } from '../../../../common';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n/**\n * Input interface opinionated for authenticator usage.\n *\n * TODO: Separate this component out to two parts -- 1) amplify-auth-input that\n * contains authenticator opinionated logic and 2) amplify-text-field primitive\n * that does not make any auth-related inference.\n */\n@Component({\n selector: 'amplify-form-field',\n templateUrl: './form-field.component.html',\n})\nexport class FormFieldComponent implements OnInit {\n @Input() name: string;\n @Input() type: string;\n @Input() required = true;\n @Input() placeholder = '';\n @Input() label = '';\n @Input() initialValue = '';\n @Input() disabled = false;\n @Input() autocomplete = '';\n @Input() labelHidden = true;\n\n public defaultCountryCode: string;\n public countryDialCodes = countryDialCodes;\n public textFieldId: string;\n public selectFieldId: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n // TODO: consider better default handling mechanisms across frameworks\n if (this.isPhoneField()) {\n const state = this.authenticator.authState;\n const { country_code }: ActorContextWithForms = getActorContext(state);\n this.defaultCountryCode = country_code;\n }\n }\n\n get attributeMap(): AuthInputAttributes {\n return getAttributeMap();\n }\n\n get error(): string {\n const formContext: ActorContextWithForms = getActorContext(\n this.authenticator.authState\n );\n const { validationError } = formContext;\n return translate(validationError[this.name]);\n }\n\n public onBlur($event: Event) {\n let { name } = <HTMLInputElement>$event.target;\n\n this.authenticator.updateBlur({ name });\n }\n\n inferLabel(): string {\n const label = this.label || this.attributeMap[this.name]?.label;\n return translate<string>(label);\n }\n\n inferPlaceholder(): string {\n const placeholder =\n this.placeholder ||\n this.attributeMap[this.name]?.placeholder ||\n this.inferLabel();\n return translate<string>(placeholder);\n }\n\n // infers what the `type` of underlying input element should be.\n inferType(): string {\n return this.type ?? this.attributeMap[this.name]?.type ?? 'text';\n }\n\n inferAutocomplete(): string {\n return this.autocomplete || this.attributeMap[this.name]?.autocomplete;\n }\n\n // TODO(enhancement): use enum to differentiate special field types\n isPasswordField(): boolean {\n return this.inferType() === 'password';\n }\n\n isPhoneField(): boolean {\n return this.inferType() === 'tel';\n }\n}\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getAliasInfoFromContext, translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-reset-password',\n templateUrl: './reset-password.component.html',\n})\nexport class ResetPasswordComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-resetPassword') dataAttr = '';\n @Input() public headerText = translate('Reset your password');\n\n // translated texts\n public sendCodeText = translate('Send Code');\n public backToSignInText = translate('Back to Sign In');\n public labelText = translate<string>('Username');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const { authState } = this.authenticator;\n const { label } = getAliasInfoFromContext(authState.context);\n this.labelText = `Enter your ${label.toLowerCase()}`;\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport QRCode from 'qrcode';\nimport { Auth, Logger } from 'aws-amplify';\nimport { getActorContext, SignInContext } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\nconst logger = new Logger('SetupTotp');\n\n@Component({\n selector: 'amplify-setup-totp',\n templateUrl: './setup-totp.component.html',\n})\nexport class SetupTotpComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-setup-totp') dataAttr = '';\n public headerText = translate('Setup TOTP');\n public qrCodeSource = '';\n public secretKey = '';\n public copyTextLabel = translate('COPY');\n\n // translated texts\n public backToSignInText = translate('Back to Sign In');\n public confirmText = translate('Confirm');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n this.generateQRCode();\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n async generateQRCode() {\n // TODO: This should be handled in core.\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { user } = actorContext;\n try {\n this.secretKey = await Auth.setupTOTP(user);\n const issuer = 'AWSCognito';\n const totpCode = `otpauth://totp/${issuer}:${user.username}?secret=${this.secretKey}&issuer=${issuer}`;\n\n logger.info('totp code was generated:', totpCode);\n this.qrCodeSource = await QRCode.toDataURL(totpCode);\n } catch (err) {\n logger.error(err);\n }\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n\n copyText(): void {\n navigator.clipboard.writeText(this.secretKey);\n this.copyTextLabel = translate('COPIED');\n }\n}\n","import { Component, HostBinding, ViewEncapsulation } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate, hasTranslation } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-sign-in',\n templateUrl: './sign-in.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class SignInComponent {\n @HostBinding('attr.data-amplify-authenticator-signin') dataAttr = '';\n\n // translated phrases\n // Support backwards compatibility for legacy key with trailing space\n public forgotPasswordText = !hasTranslation('Forgot your password? ')\n ? translate('Forgot your password?')\n : translate('Forgot your password? ');\n public signInButtonText = translate('Sign in');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-sign-up',\n templateUrl: './sign-up.component.html',\n})\nexport class SignUpComponent {\n @HostBinding('attr.data-amplify-authenticator-signup') dataAttr = '';\n\n // translated texts\n public createAccountText = translate('Create Account');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n let { checked, name, type, value } = <HTMLInputElement>event.target;\n\n if (type === 'checkbox' && !checked) value = undefined;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../../services/authenticator.service';\nimport {\n authInputAttributes,\n LoginMechanism,\n SignUpAttribute,\n} from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-sign-up-form-fields',\n templateUrl: './sign-up-form-fields.component.html',\n})\nexport class SignUpFormFieldsComponent implements OnInit {\n public primaryAlias = '';\n public secondaryAliases: string[] = [];\n public fieldNames: Array<LoginMechanism | SignUpAttribute>;\n public loginMechanism: LoginMechanism;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const context = this.authenticator.context;\n\n const { loginMechanisms, signUpAttributes } = context.config;\n\n this.fieldNames = Array.from(\n new Set([...loginMechanisms, ...signUpAttributes])\n );\n\n this.fieldNames = this.fieldNames.filter((fieldName) => {\n const hasDefaultField = !!authInputAttributes[fieldName];\n if (!hasDefaultField) {\n console.debug(\n `Authenticator does not have a default implementation for ${fieldName}. Customize Authenticator.SignUp.FormFields to add your own.`\n );\n }\n return hasDefaultField;\n });\n\n // Only 1 is supported, so `['email', 'phone_number']` will only show `email`\n this.loginMechanism = this.fieldNames.shift() as LoginMechanism;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getAliasInfoFromContext } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-user-name-alias',\n templateUrl: './user-name-alias.component.html',\n})\nexport class UserNameAliasComponent implements OnInit {\n @Input() name: string = 'username';\n @Input() disabled: boolean = false;\n @Input() initialValue: string = '';\n @Input() required: boolean = true;\n public label: string;\n public type: string;\n public error: string;\n public placeholder: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const context = this.authenticator.context;\n const { label, type } = getAliasInfoFromContext(context);\n\n this.label = label;\n this.type = type;\n this.placeholder = label;\n }\n}\n","import {\n Component,\n HostBinding,\n Input,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport { getActorState, SignInState, translate } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getAttributeMap } from '../../../../common';\nimport { nanoid } from 'nanoid';\n@Component({\n selector: 'amplify-verify-user',\n templateUrl: './verify-user.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class VerifyUserComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-verifyuser') dataAttr = '';\n @Input() public headerText = translate(\n 'Account recovery requires verified contact information'\n );\n\n public unverifiedAttributes = {};\n public labelId = nanoid(12);\n\n // translated texts\n public skipText = translate('Skip');\n public verifyText = translate('Verify');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const actorState = getActorState(\n this.authenticator.authState\n ) as SignInState;\n this.unverifiedAttributes = actorState.context.unverifiedAttributes;\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n getLabelForAttr(authAttr: string): string {\n const attributeMap = getAttributeMap();\n const label = attributeMap[authAttr]?.label;\n return translate<string>(label);\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm();\n }\n}\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'button[amplify-button]',\n templateUrl: './button.component.html',\n})\nexport class ButtonComponent implements OnInit {\n @Input() type: 'submit' | 'button' = 'button';\n @Input() fullWidth: boolean | string = false;\n @Input() size: 'small' | 'medium' | 'large' = 'medium';\n @Input() variation: 'primary' | 'default' | 'link' = 'default';\n @Input() fontWeight: 'normal' | 'bold' | 'lighter' = 'normal';\n\n @HostBinding('type') typeAttr: string;\n @HostBinding('attr.data-fullwidth') fullWidthAttr: boolean | string;\n @HostBinding('attr.data-size') sizeAttr: string;\n @HostBinding('attr.data-variation') variationAttr: string;\n @HostBinding('class.amplify-button') defaultClass = true;\n @HostBinding('style.font-weight') fontWeightAttr: string;\n\n ngOnInit() {\n this.typeAttr = this.type;\n this.fullWidthAttr = this.fullWidth;\n this.sizeAttr = this.size;\n this.variationAttr = this.variation;\n this.fontWeightAttr = this.fontWeight;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'amplify-checkbox',\n templateUrl: './checkbox.component.html',\n})\nexport class CheckboxComponent implements OnInit {\n @Input() defaultChecked: boolean = false;\n @Input() errorMessage: string;\n @Input() hasError: boolean = false;\n @Input() label: string;\n @Input() name: string;\n @Input() value: string;\n\n public isChecked: boolean = false;\n\n ngOnInit() {\n if (this.defaultChecked) {\n this.isChecked = true;\n }\n }\n\n handleClick() {\n this.isChecked = !this.isChecked;\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'amplify-error',\n templateUrl: './error.component.html',\n})\nexport class ErrorComponent {\n public isVisible = true;\n\n public close() {\n this.isVisible = false;\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { translate } from '@aws-amplify/ui';\nimport { nanoid } from 'nanoid';\n\n@Component({\n selector: 'amplify-password-field',\n templateUrl: './password-field.component.html',\n})\nexport class PasswordFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() labelHidden = false;\n @Output() setBlur = new EventEmitter<Event>();\n\n public type: 'text' | 'password' = 'password';\n\n public showPassword = false;\n public showPasswordButtonlabel = translate('Show password');\n\n togglePasswordText() {\n this.showPassword = !this.showPassword;\n this.showPasswordButtonlabel = this.showPassword\n ? translate('Show password')\n : translate('Hide password');\n this.type = this.showPassword ? 'text' : 'password';\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { countryDialCodes } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-phone-number-field',\n templateUrl: './phone-number-field.component.html',\n})\nexport class PhoneNumberFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() defaultCountryCode: string;\n @Input() selectFieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() textFieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n\n @HostBinding('style.display') display = 'contents';\n public countryDialCodes = countryDialCodes;\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-form-select',\n templateUrl: './select.component.html',\n})\nexport class SelectComponent {\n @Input() items: string[];\n @Input() name: string;\n @Input() label: string;\n @Input() id: string;\n @Input() defaultValue: string;\n}\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-tab-item',\n templateUrl: './tab-item.component.html',\n})\nexport class TabItemComponent {\n @Input() title: string;\n @Input() active = false;\n @Input() id: string;\n @Input() labelledById: string;\n @Input() tabIndex: number;\n @HostBinding('style.display') display = 'block'; // emulate div behavior\n}\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n QueryList,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { TabItemComponent } from '../tab-item/tab-item.component';\n\n@Component({\n selector: 'amplify-tabs',\n templateUrl: './tabs.component.html',\n})\nexport class TabsComponent implements AfterContentInit {\n @ContentChildren(TabItemComponent) tabs: QueryList<TabItemComponent>;\n @Output() tabChange = new EventEmitter();\n\n ngAfterContentInit(): void {\n // assign ids\n this.tabs.forEach((tab, index) => {\n tab.id = `radix-id-${nanoid(12)}-1-content-${index}`;\n tab.labelledById = `radix-id-${nanoid(12)}-1-trigger-${index}`;\n });\n\n // find active tab\n // TODO(enhancement): more declarative way for choosing the initial tab to render\n const activeTabs = this.tabs.filter((tab) => tab.active);\n\n // set active tab\n if (activeTabs.length !== 1) {\n this.selectTab(this.tabs.first);\n }\n }\n\n selectTab(tab: TabItemComponent) {\n this.tabs.forEach((tab) => {\n tab.active = false;\n });\n tab.active = true;\n }\n\n handleTabClick(tab: TabItemComponent) {\n if (tab.active) return; // don't do anything if clicks the current active tab\n this.tabChange.emit();\n this.selectTab(tab);\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { nanoid } from 'nanoid';\n\n@Component({\n selector: 'amplify-text-field',\n templateUrl: './text-field.component.html',\n})\nexport class TextFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n\n @HostBinding('style.display') display = 'contents';\n}\n","import {\n AfterContentInit,\n Component,\n HostBinding,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CustomComponentsService } from '../../services/custom-components.service';\n\n@Component({\n selector: 'amplify-slot',\n templateUrl: './amplify-slot.component.html',\n})\nexport class AmplifySlotComponent implements AfterContentInit {\n @Input() name: string;\n @Input() context: Record<PropertyKey, any>;\n\n @HostBinding('style.display') display = 'contents';\n\n public overridingComponent: TemplateRef<any>;\n public isOverriden: boolean = false;\n\n constructor(private propService: CustomComponentsService) {}\n\n ngAfterContentInit(): void {\n const customComponents = this.propService.customComponents;\n const overridingComponent = customComponents[this.name];\n\n if (overridingComponent) {\n this.overridingComponent = overridingComponent;\n this.isOverriden = true;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/**\n * Note: Angular components and directives inside module files has to be imported directly.\n *\n * Related: https://github.com/ng-packagr/ng-packagr/issues/567\n */\nimport { AuthenticatorComponent } from './components/authenticator/authenticator.component';\nimport { ConfirmResetPasswordComponent } from './components/confirm-reset-password/amplify-confirm-reset-password.component';\nimport { ConfirmSignInComponent } from './components/confirm-sign-in/confirm-sign-in.component';\nimport { ConfirmSignUpComponent } from './components/confirm-sign-up/confirm-sign-up.component';\nimport { ConfirmVerifyUserComponent } from './components/confirm-verify-user/amplify-confirm-verify-user.component';\nimport { FederatedSignInButtonComponent } from './components/federated-sign-in-button/federated-sign-in-button.component';\nimport { FederatedSignInComponent } from './components/federated-sign-in/federated-sign-in.component';\nimport { ForceNewPasswordComponent } from './components/force-new-password/force-new-password.component';\nimport { ForceNewPasswordFormFieldsComponent } from './components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component';\nimport { FormFieldComponent } from './components/form-field/form-field.component';\nimport { ResetPasswordComponent } from './components/reset-password/reset-password.component';\nimport { SetupTotpComponent } from './components/setup-totp/setup-totp.component';\nimport { SignInComponent } from './components/sign-in/sign-in.component';\nimport { SignUpComponent } from './components/sign-up/sign-up.component';\nimport { SignUpFormFieldsComponent } from './components/sign-up/sign-up-form-fields/sign-up-form-fields.component';\nimport { UserNameAliasComponent } from './components/user-name-alias/user-name-alias.component';\nimport { VerifyUserComponent } from './components/verify-user/verify-user.component';\n\nimport { ButtonComponent } from '../../primitives/button/button.component';\nimport { CheckboxComponent } from '../../primitives/checkbox/checkbox.component';\nimport { ErrorComponent } from '../../primitives/error/error.component';\nimport { PasswordFieldComponent } from '../../primitives/password-field/password-field.component';\nimport { PhoneNumberFieldComponent } from '../../primitives/phone-number-field/phone-number-field.component';\nimport { SelectComponent } from '../../primitives/select/select.component';\nimport { TabItemComponent } from '../../primitives/tab-item/tab-item.component';\nimport { TabsComponent } from '../../primitives/tabs/tabs.component';\nimport { TextFieldComponent } from '../../primitives/text-field/text-field.component';\n\nimport { AmplifySlotComponent } from '../../utilities/amplify-slot/amplify-slot.component';\nimport { AmplifySlotDirective } from '../../utilities/amplify-slot/amplify-slot.directive';\n\n@NgModule({\n declarations: [\n AmplifySlotComponent,\n AmplifySlotDirective,\n AuthenticatorComponent,\n ButtonComponent,\n CheckboxComponent,\n ConfirmResetPasswordComponent,\n ConfirmSignInComponent,\n ConfirmSignUpComponent,\n ConfirmVerifyUserComponent,\n ErrorComponent,\n FederatedSignInButtonComponent,\n FederatedSignInComponent,\n ForceNewPasswordComponent,\n ForceNewPasswordFormFieldsComponent,\n FormFieldComponent,\n PasswordFieldComponent,\n PhoneNumberFieldComponent,\n ResetPasswordComponent,\n SelectComponent,\n SetupTotpComponent,\n SignInComponent,\n SignUpComponent,\n SignUpFormFieldsComponent,\n TabItemComponent,\n TabsComponent,\n TextFieldComponent,\n UserNameAliasComponent,\n VerifyUserComponent,\n ],\n imports: [CommonModule],\n exports: [\n AmplifySlotDirective,\n AuthenticatorComponent,\n CheckboxComponent,\n SignUpFormFieldsComponent,\n ForceNewPasswordFormFieldsComponent,\n TextFieldComponent,\n ],\n})\nexport class AmplifyAuthenticatorModule {}\n","/*\n * Public API Surface of ui-angular\n */\n\n/**\n * Modules\n */\nexport { AmplifyAuthenticatorModule } from './lib/components/authenticator/authenticator.module';\n\n/**\n * Components\n */\nexport * from './lib/components/authenticator/components';\nexport * from './lib/primitives';\n\n/**\n * Helpers\n */\nexport * from './lib/common';\n\n/**\n * Directives\n */\nexport * from './lib/utilities/amplify-slot/amplify-slot.directive';\n\n/**\n * Services\n */\nexport * from './lib/services/custom-components.service';\nexport * from './lib/services/authenticator.service';\n\n/**\n * Re-export public APIs from `@aws-amplify/ui`\n */\nexport { translations } from '@aws-amplify/ui';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {AuthenticatorComponent as ɵb} from './lib/components/authenticator/components/authenticator/authenticator.component';\nexport {ConfirmResetPasswordComponent as ɵe} from './lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component';\nexport {ConfirmSignInComponent as ɵf} from './lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component';\nexport {ConfirmSignUpComponent as ɵg} from './lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component';\nexport {ConfirmVerifyUserComponent as ɵh} from './lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component';\nexport {FederatedSignInButtonComponent as ɵj} from './lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component';\nexport {FederatedSignInComponent as ɵk} from './lib/components/authenticator/components/federated-sign-in/federated-sign-in.component';\nexport {ForceNewPasswordFormFieldsComponent as ɵm} from './lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component';\nexport {ForceNewPasswordComponent as ɵl} from './lib/components/authenticator/components/force-new-password/force-new-password.component';\nexport {FormFieldComponent as ɵn} from './lib/components/authenticator/components/form-field/form-field.component';\nexport {ResetPasswordComponent as ɵq} from './lib/components/authenticator/components/reset-password/reset-password.component';\nexport {SetupTotpComponent as ɵs} from './lib/components/authenticator/components/setup-totp/setup-totp.component';\nexport {SignInComponent as ɵt} from './lib/components/authenticator/components/sign-in/sign-in.component';\nexport {SignUpFormFieldsComponent as ɵv} from './lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component';\nexport {SignUpComponent as ɵu} from './lib/components/authenticator/components/sign-up/sign-up.component';\nexport {UserNameAliasComponent as ɵz} from './lib/components/authenticator/components/user-name-alias/user-name-alias.component';\nexport {VerifyUserComponent as ɵba} from './lib/components/authenticator/components/verify-user/verify-user.component';\nexport {ButtonComponent as ɵc} from './lib/primitives/button/button.component';\nexport {CheckboxComponent as ɵd} from './lib/primitives/checkbox/checkbox.component';\nexport {ErrorComponent as ɵi} from './lib/primitives/error/error.component';\nexport {PasswordFieldComponent as ɵo} from './lib/primitives/password-field/password-field.component';\nexport {PhoneNumberFieldComponent as ɵp} from './lib/primitives/phone-number-field/phone-number-field.component';\nexport {SelectComponent as ɵr} from './lib/primitives/select/select.component';\nexport {TabItemComponent as ɵw} from './lib/primitives/tab-item/tab-item.component';\nexport {TabsComponent as ɵx} from './lib/primitives/tabs/tabs.component';\nexport {TextFieldComponent as ɵy} from './lib/primitives/text-field/text-field.component';\nexport {AmplifySlotComponent as ɵa} from './lib/utilities/amplify-slot/amplify-slot.component';"],"names":["logger","Logger"],"mappings":"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"}
1
+ {"version":3,"file":"aws-amplify-ui-angular.js","sources":["../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.directive.ts","../../../projects/ui-angular/src/lib/services/custom-components.service.ts","../../../projects/ui-angular/src/lib/services/authenticator.service.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/authenticator/authenticator.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in/federated-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component.ts","../../../projects/ui-angular/src/lib/common/helpers.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/form-field/form-field.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/reset-password/reset-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/setup-totp/setup-totp.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-in/sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/user-name-alias/user-name-alias.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/verify-user/verify-user.component.ts","../../../projects/ui-angular/src/lib/primitives/button/button.component.ts","../../../projects/ui-angular/src/lib/primitives/checkbox/checkbox.component.ts","../../../projects/ui-angular/src/lib/primitives/error/error.component.ts","../../../projects/ui-angular/src/lib/primitives/password-field/password-field.component.ts","../../../projects/ui-angular/src/lib/primitives/phone-number-field/phone-number-field.component.ts","../../../projects/ui-angular/src/lib/primitives/select/select.component.ts","../../../projects/ui-angular/src/lib/primitives/tab-item/tab-item.component.ts","../../../projects/ui-angular/src/lib/primitives/tabs/tabs.component.ts","../../../projects/ui-angular/src/lib/primitives/text-field/text-field.component.ts","../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/authenticator.module.ts","../../../projects/ui-angular/src/index.ts","../../../projects/ui-angular/src/aws-amplify-ui-angular.ts"],"sourcesContent":["import { Directive, Input, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[amplifySlot]',\n})\nexport class AmplifySlotDirective {\n constructor(public template: TemplateRef<any>) {}\n public name: string;\n\n @Input() set amplifySlot(component: string) {\n this.name = component;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CustomComponents } from '../common';\n\n/**\n * Stores and provides custom components that users provide with `amplify-slot`.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class CustomComponentsService {\n private _customComponents: CustomComponents = {};\n\n public get customComponents(): CustomComponents {\n return this._customComponents;\n }\n\n public set customComponents(customComponents: CustomComponents) {\n this._customComponents = { ...this._customComponents, ...customComponents };\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { Logger } from '@aws-amplify/core';\nimport {\n AuthContext,\n AuthenticatorMachineOptions,\n AuthEvent,\n AuthInterpreter,\n AuthMachineState,\n createAuthenticatorMachine,\n getSendEventAliases,\n getServiceContextFacade,\n listenToAuthHub,\n} from '@aws-amplify/ui';\nimport { Event, interpret, Subscription } from 'xstate';\nimport { AuthSubscriptionCallback } from '../common';\nimport { translate } from '@aws-amplify/ui';\n\nconst logger = new Logger('state-machine');\n\n/**\n * AuthenticatorService provides access to the authenticator state and context.\n */\n@Injectable({\n providedIn: 'root', // ensure we have a singleton service\n})\nexport class AuthenticatorService implements OnDestroy {\n private _authState: AuthMachineState;\n private _authService: AuthInterpreter;\n private _sendEventAliases: ReturnType<typeof getSendEventAliases>;\n private _machineSubscription: Subscription;\n private _hubSubscription: ReturnType<typeof listenToAuthHub>;\n private _facade: ReturnType<typeof getServiceContextFacade>;\n\n public startMachine({\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n }: AuthenticatorMachineOptions) {\n const machine = createAuthenticatorMachine();\n\n const authService = interpret(machine).start();\n\n authService.send({\n type: 'INIT',\n data: {\n initialState,\n loginMechanisms,\n socialProviders,\n signUpAttributes,\n services,\n },\n });\n\n this._machineSubscription = authService.subscribe((state) => {\n this._authState = state;\n this._facade = getServiceContextFacade(state);\n });\n\n this._hubSubscription = listenToAuthHub(authService.send);\n this._sendEventAliases = getSendEventAliases(authService.send);\n this._authService = authService;\n }\n\n ngOnDestroy(): void {\n if (this._machineSubscription) this._machineSubscription.unsubscribe();\n if (this._hubSubscription) this._hubSubscription();\n }\n\n /**\n * Context facades\n */\n\n public get error() {\n return translate(this._facade?.error);\n }\n\n public get hasValidationErrors() {\n return this._facade?.hasValidationErrors;\n }\n\n public get isPending() {\n return this._facade?.isPending;\n }\n\n public get route() {\n return this._facade?.route;\n }\n\n public get user() {\n return this._facade?.user;\n }\n\n public get validationErrors() {\n return this._facade?.validationErrors;\n }\n\n public get codeDeliveryDetails() {\n return this._facade?.codeDeliveryDetails;\n }\n\n /**\n * Service facades\n */\n\n public get updateForm() {\n return this._sendEventAliases.updateForm;\n }\n\n public get updateBlur() {\n return this._sendEventAliases.updateBlur;\n }\n\n public get resendCode() {\n return this._sendEventAliases.resendCode;\n }\n\n public get signOut() {\n return this._sendEventAliases.signOut;\n }\n\n public get submitForm() {\n return this._sendEventAliases.submitForm;\n }\n\n /**\n * Transition facades\n */\n\n public get toFederatedSignIn() {\n return this._sendEventAliases.toFederatedSignIn;\n }\n\n public get toResetPassword() {\n return this._sendEventAliases.toResetPassword;\n }\n\n public get toSignIn() {\n return this._sendEventAliases.toSignIn;\n }\n\n public get toSignUp() {\n return this._sendEventAliases.toSignUp;\n }\n\n public get skipVerification() {\n return this._sendEventAliases.skipVerification;\n }\n\n /**\n * Internal utility functions\n */\n\n /** @deprecated For internal use only */\n public get authState(): AuthMachineState {\n return this._authState;\n }\n\n /** @deprecated For internal use only */\n public get authService(): AuthInterpreter {\n return this._authService;\n }\n\n /** @deprecated For internal use only */\n public get context(): AuthContext {\n return this._authState.context;\n }\n\n /** @deprecated For internal use only */\n public get slotContext() {\n const slotContext = {\n ...this._facade,\n ...this._sendEventAliases,\n };\n\n return {\n ...slotContext,\n $implicit: { ...slotContext },\n };\n }\n\n /** @deprecated For internal use only */\n public subscribe(callback: AuthSubscriptionCallback) {\n if (this._authService) {\n return this._authService.subscribe(callback);\n } else {\n logger.error(\n 'Subscription attempted before machine was created. This is likely a bug on the library, please consider filing a bug.'\n );\n }\n }\n\n /** @deprecated For internal use only */\n public send(event: Event<AuthEvent>) {\n this.authService.send(event);\n }\n}\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n Input,\n OnInit,\n QueryList,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n AuthenticatorMachineOptions,\n SocialProvider,\n translate,\n} from '@aws-amplify/ui';\nimport { AmplifySlotDirective } from '../../../../utilities/amplify-slot/amplify-slot.directive';\nimport { CustomComponentsService } from '../../../../services/custom-components.service';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-authenticator',\n templateUrl: './authenticator.component.html',\n providers: [CustomComponentsService], // make sure custom components are scoped to this authenticator only\n encapsulation: ViewEncapsulation.None,\n})\nexport class AuthenticatorComponent implements OnInit, AfterContentInit {\n @Input() initialState: AuthenticatorMachineOptions['initialState'];\n @Input() loginMechanisms: AuthenticatorMachineOptions['loginMechanisms'];\n @Input() services: AuthenticatorMachineOptions['services'];\n @Input() signUpAttributes: AuthenticatorMachineOptions['signUpAttributes'];\n @Input() socialProviders: SocialProvider[];\n @Input() variation: 'default' | 'modal';\n @Input() hideSignUp: boolean;\n\n @ContentChildren(AmplifySlotDirective)\n private customComponentQuery: QueryList<AmplifySlotDirective> = null;\n\n // translated texts\n public signInTitle = translate('Sign In');\n public signUpTitle = translate('Create Account');\n\n constructor(\n private authenticator: AuthenticatorService,\n private contextService: CustomComponentsService\n ) {}\n\n ngOnInit(): void {\n const {\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n } = this;\n this.authenticator.startMachine({\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n });\n\n /**\n * handling translations after content init, because authenticator and its\n * translations might be initialized before the main app's `ngOnInit` is run.\n */\n this.signInTitle = translate('Sign In');\n this.signUpTitle = translate('Create Account');\n }\n\n /**\n * Lifecycle Methods\n */\n ngAfterContentInit(): void {\n this.contextService.customComponents = this.mapCustomComponents(\n this.customComponentQuery\n );\n }\n\n /**\n * Class Functions\n */\n\n // context passed to \"authenticated\" slot\n public get context() {\n return this.authenticator.slotContext;\n }\n\n public get route() {\n return this.authenticator.route;\n }\n\n public onTabChange() {\n const route = this.authenticator.route;\n if (route === 'signIn') {\n this.authenticator.toSignUp();\n } else {\n this.authenticator.toSignIn();\n }\n }\n\n public hasTabs() {\n const route = this.authenticator.route;\n return route === 'signIn' || route === 'signUp';\n }\n\n private mapCustomComponents(\n componentQuery: QueryList<AmplifySlotDirective>\n ): Record<string, TemplateRef<any>> {\n if (!componentQuery) return {};\n const customComponents: Record<string, TemplateRef<any>> = {};\n componentQuery.forEach((component) => {\n customComponents[component.name] = component.template;\n });\n\n return customComponents;\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getFormDataFromEvent, translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-confirm-reset-password',\n templateUrl: './amplify-confirm-reset-password.component.html',\n})\nexport class ConfirmResetPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n @Input() public headerText = translate('Reset your password');\n\n // translated strings\n public sendCodeText = translate('Send Code');\n public backToSignInText = translate('Back to Sign In');\n public resendCodeText = translate('Resend Code');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport { Logger } from 'aws-amplify';\nimport {\n AuthChallengeNames,\n getActorContext,\n getFormDataFromEvent,\n SignInContext,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\nconst logger = new Logger('ConfirmSignIn');\n\n@Component({\n selector: 'amplify-confirm-sign-in',\n templateUrl: './confirm-sign-in.component.html',\n})\nexport class ConfirmSignInComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n\n // translated texts\n public headerText: string;\n public confirmText = translate('Confirm');\n public backToSignInText = translate('Back to Sign In');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n this.setHeaderText();\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n setHeaderText(): void {\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { challengeName } = actorContext;\n switch (challengeName) {\n case AuthChallengeNames.SOFTWARE_TOKEN_MFA:\n this.headerText = translate('Confirm TOTP Code');\n break;\n case AuthChallengeNames.SMS_MFA:\n this.headerText = translate('Confirm SMS Code');\n break;\n default:\n logger.error('Unexpected challengeName', challengeName);\n }\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getFormDataFromEvent, translate } from '@aws-amplify/ui';\n@Component({\n selector: 'amplify-confirm-sign-up',\n templateUrl: './confirm-sign-up.component.html',\n})\nexport class ConfirmSignUpComponent {\n @Input() headerText = translate('Confirm Sign Up');\n\n @HostBinding('attr.data-amplify-authenticator-confirmsignup') dataAttr = '';\n\n // translated texts\n public resendCodeText = translate('Resend Code');\n public confirmText = translate('Confirm');\n public emailMessage = translate(\n 'Your code is on the way. To log in, enter the code we emailed to'\n );\n public textedMessage = translate(\n 'Your code is on the way. To log in, enter the code we texted to'\n );\n public defaultMessage = translate(\n 'Your code is on the way. To log in, enter the code we sent you. It may take a minute to arrive.'\n );\n public minutesMessage = translate('It may take a minute to arrive.');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n public get confirmSignUpHeading(): string {\n const { codeDeliveryDetails: { DeliveryMedium } = {} } = this.authenticator;\n return DeliveryMedium === 'EMAIL'\n ? translate('We Emailed You')\n : DeliveryMedium === 'SMS'\n ? translate('We Texted You')\n : translate('We Sent A Code');\n }\n\n public get subtitleText(): string {\n const { codeDeliveryDetails: { DeliveryMedium, Destination } = {} } =\n this.authenticator;\n return DeliveryMedium === 'EMAIL'\n ? `${this.emailMessage} ${Destination}. ${this.minutesMessage}`\n : DeliveryMedium === 'SMS'\n ? `${this.textedMessage} ${Destination}. ${this.minutesMessage}`\n : translate(`${this.defaultMessage}`);\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { getFormDataFromEvent, translate } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-confirm-verify-user',\n templateUrl: './amplify-confirm-verify-user.component.html',\n})\nexport class ConfirmVerifyUserComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmverifyuser')\n dataAttr = '';\n @Input() public headerText = translate(\n 'Account recovery requires verified contact information'\n );\n\n // translated texts\n public skipText = translate('Skip');\n public submitText = translate('Submit');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-federated-sign-in-button',\n templateUrl: './federated-sign-in-button.component.html',\n})\nexport class FederatedSignInButtonComponent {\n @Input() provider: FederatedIdentityProviders;\n @Input() text: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n onClick = (): void => {\n this.authenticator.send({\n type: 'FEDERATED_SIGN_IN',\n data: { provider: this.provider },\n });\n };\n}\n","import { Component, OnInit } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-federated-sign-in',\n templateUrl: './federated-sign-in.component.html',\n})\nexport class FederatedSignInComponent implements OnInit {\n public FederatedProviders = FederatedIdentityProviders;\n public includeAmazon: boolean = false;\n public includeApple: boolean = false;\n public includeFacebook: boolean = false;\n public includeGoogle: boolean = false;\n public shouldShowFederatedSignIn = false;\n\n // translated texts\n public signInAmazonText: string;\n public signInAppleText: string;\n public signInFacebookText: string;\n public signInGoogleText: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const { socialProviders } = this.authenticator.context?.config;\n\n this.setFederatedTexts();\n this.includeAmazon = socialProviders?.includes('amazon');\n this.includeApple = socialProviders?.includes('apple');\n this.includeGoogle = socialProviders?.includes('google');\n this.includeFacebook = socialProviders?.includes('facebook');\n\n this.shouldShowFederatedSignIn =\n this.includeAmazon ||\n this.includeApple ||\n this.includeFacebook ||\n this.includeGoogle;\n }\n\n private setFederatedTexts() {\n const { route } = this.authenticator;\n const federatedText = route === 'signUp' ? 'Up' : 'In';\n this.signInAmazonText = translate<string>(\n `Sign ${federatedText} with Amazon`\n );\n this.signInAppleText = translate<string>(\n `Sign ${federatedText} with Apple`\n );\n this.signInFacebookText = translate<string>(\n `Sign ${federatedText} with Facebook`\n );\n this.signInGoogleText = translate<string>(\n `Sign ${federatedText} with Google`\n );\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getFormDataFromEvent, translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-force-new-password',\n templateUrl: './force-new-password.component.html',\n})\nexport class ForceNewPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-forcenewpassword')\n dataAttr = '';\n @Input() public headerText = translate('Change Password');\n\n // translated texts\n public changePasswordText = translate('Change Password');\n public backToSignInText = translate('Back to Sign In');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../../services/authenticator.service';\nimport {\n authInputAttributes,\n getActorContext,\n SignInContext,\n} from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-force-new-password-form-fields',\n templateUrl: './force-new-password-form-fields.component.html',\n})\nexport class ForceNewPasswordFormFieldsComponent implements OnInit {\n public fieldNames: string[];\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { requiredAttributes } = actorContext;\n\n this.fieldNames = requiredAttributes.filter((fieldName) => {\n const hasDefaultField = !!authInputAttributes[fieldName];\n if (!hasDefaultField) {\n console.debug(\n `Authenticator does not have a default implementation for ${fieldName}. Customize Authenticator.SignUp.FormFields to add your own.`\n );\n }\n return hasDefaultField;\n });\n }\n}\n","import { authInputAttributes } from '@aws-amplify/ui';\nimport { AttributeInfoProvider } from './types';\n\nexport const getAttributeMap: AttributeInfoProvider = () => authInputAttributes;\n","import { Component, Input, OnInit } from '@angular/core';\nimport {\n ActorContextWithForms,\n AuthInputAttributes,\n getActorContext,\n translate,\n countryDialCodes,\n} from '@aws-amplify/ui';\nimport { getAttributeMap } from '../../../../common';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n/**\n * Input interface opinionated for authenticator usage.\n *\n * TODO: Separate this component out to two parts -- 1) amplify-auth-input that\n * contains authenticator opinionated logic and 2) amplify-text-field primitive\n * that does not make any auth-related inference.\n */\n@Component({\n selector: 'amplify-form-field',\n templateUrl: './form-field.component.html',\n})\nexport class FormFieldComponent implements OnInit {\n @Input() name: string;\n @Input() type: string;\n @Input() required = true;\n @Input() placeholder = '';\n @Input() label = '';\n @Input() initialValue = '';\n @Input() disabled = false;\n @Input() autocomplete = '';\n @Input() labelHidden = true;\n\n public defaultCountryCode: string;\n public countryDialCodes = countryDialCodes;\n public textFieldId: string;\n public selectFieldId: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n // TODO: consider better default handling mechanisms across frameworks\n if (this.isPhoneField()) {\n const state = this.authenticator.authState;\n const { country_code }: ActorContextWithForms = getActorContext(state);\n this.defaultCountryCode = country_code;\n }\n }\n\n get attributeMap(): AuthInputAttributes {\n return getAttributeMap();\n }\n\n get error(): string {\n const formContext: ActorContextWithForms = getActorContext(\n this.authenticator.authState\n );\n const { validationError } = formContext;\n return translate(validationError[this.name]);\n }\n\n public onBlur($event: Event) {\n let { name } = <HTMLInputElement>$event.target;\n\n this.authenticator.updateBlur({ name });\n }\n\n inferLabel(): string {\n const label = this.label || this.attributeMap[this.name]?.label;\n return translate<string>(label);\n }\n\n inferPlaceholder(): string {\n const placeholder =\n this.placeholder ||\n this.attributeMap[this.name]?.placeholder ||\n this.inferLabel();\n return translate<string>(placeholder);\n }\n\n // infers what the `type` of underlying input element should be.\n inferType(): string {\n return this.type ?? this.attributeMap[this.name]?.type ?? 'text';\n }\n\n inferAutocomplete(): string {\n return this.autocomplete || this.attributeMap[this.name]?.autocomplete;\n }\n\n // TODO(enhancement): use enum to differentiate special field types\n isPasswordField(): boolean {\n return this.inferType() === 'password';\n }\n\n isPhoneField(): boolean {\n return this.inferType() === 'tel';\n }\n}\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n getAliasInfoFromContext,\n getFormDataFromEvent,\n translate,\n} from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-reset-password',\n templateUrl: './reset-password.component.html',\n})\nexport class ResetPasswordComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-resetPassword') dataAttr = '';\n @Input() public headerText = translate('Reset your password');\n\n // translated texts\n public sendCodeText = translate('Send Code');\n public backToSignInText = translate('Back to Sign In');\n public labelText = translate<string>('Username');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const { authState } = this.authenticator;\n const { label } = getAliasInfoFromContext(authState.context);\n this.labelText = `Enter your ${label.toLowerCase()}`;\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport QRCode from 'qrcode';\nimport { Auth, Logger } from 'aws-amplify';\nimport {\n getActorContext,\n getFormDataFromEvent,\n SignInContext,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate } from '@aws-amplify/ui';\n\nconst logger = new Logger('SetupTotp');\n\n@Component({\n selector: 'amplify-setup-totp',\n templateUrl: './setup-totp.component.html',\n})\nexport class SetupTotpComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-setup-totp') dataAttr = '';\n public headerText = translate('Setup TOTP');\n public qrCodeSource = '';\n public secretKey = '';\n public copyTextLabel = translate('COPY');\n\n // translated texts\n public backToSignInText = translate('Back to Sign In');\n public confirmText = translate('Confirm');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n this.generateQRCode();\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n async generateQRCode() {\n // TODO: This should be handled in core.\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { user } = actorContext;\n try {\n this.secretKey = await Auth.setupTOTP(user);\n const issuer = 'AWSCognito';\n const totpCode = `otpauth://totp/${issuer}:${user.username}?secret=${this.secretKey}&issuer=${issuer}`;\n\n logger.info('totp code was generated:', totpCode);\n this.qrCodeSource = await QRCode.toDataURL(totpCode);\n } catch (err) {\n logger.error(err);\n }\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n\n copyText(): void {\n navigator.clipboard.writeText(this.secretKey);\n this.copyTextLabel = translate('COPIED');\n }\n}\n","import { Component, HostBinding, ViewEncapsulation } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n translate,\n hasTranslation,\n getFormDataFromEvent,\n} from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-sign-in',\n templateUrl: './sign-in.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class SignInComponent {\n @HostBinding('attr.data-amplify-authenticator-signin') dataAttr = '';\n\n // translated phrases\n // Support backwards compatibility for legacy key with trailing space\n public forgotPasswordText = !hasTranslation('Forgot your password? ')\n ? translate('Forgot your password?')\n : translate('Forgot your password? ');\n public signInButtonText = translate('Sign in');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { translate, getFormDataFromEvent } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-sign-up',\n templateUrl: './sign-up.component.html',\n})\nexport class SignUpComponent {\n @HostBinding('attr.data-amplify-authenticator-signup') dataAttr = '';\n\n // translated texts\n public createAccountText = translate('Create Account');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event) {\n let { checked, name, type, value } = <HTMLInputElement>event.target;\n\n if (type === 'checkbox' && !checked) value = undefined;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../../services/authenticator.service';\nimport {\n authInputAttributes,\n LoginMechanism,\n SignUpAttribute,\n} from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-sign-up-form-fields',\n templateUrl: './sign-up-form-fields.component.html',\n})\nexport class SignUpFormFieldsComponent implements OnInit {\n public primaryAlias = '';\n public secondaryAliases: string[] = [];\n public fieldNames: Array<LoginMechanism | SignUpAttribute>;\n public loginMechanism: LoginMechanism;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const context = this.authenticator.context;\n\n const { loginMechanisms, signUpAttributes } = context.config;\n\n this.fieldNames = Array.from(\n new Set([...loginMechanisms, ...signUpAttributes])\n );\n\n this.fieldNames = this.fieldNames.filter((fieldName) => {\n const hasDefaultField = !!authInputAttributes[fieldName];\n if (!hasDefaultField) {\n console.debug(\n `Authenticator does not have a default implementation for ${fieldName}. Customize Authenticator.SignUp.FormFields to add your own.`\n );\n }\n return hasDefaultField;\n });\n\n // Only 1 is supported, so `['email', 'phone_number']` will only show `email`\n this.loginMechanism = this.fieldNames.shift() as LoginMechanism;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getAliasInfoFromContext } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-user-name-alias',\n templateUrl: './user-name-alias.component.html',\n})\nexport class UserNameAliasComponent implements OnInit {\n @Input() name: string = 'username';\n @Input() disabled: boolean = false;\n @Input() initialValue: string = '';\n @Input() required: boolean = true;\n public label: string;\n public type: string;\n public error: string;\n public placeholder: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const context = this.authenticator.context;\n const { label, type } = getAliasInfoFromContext(context);\n\n this.label = label;\n this.type = type;\n this.placeholder = label;\n }\n}\n","import {\n Component,\n HostBinding,\n Input,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n getActorState,\n getFormDataFromEvent,\n SignInState,\n translate,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getAttributeMap } from '../../../../common';\nimport { nanoid } from 'nanoid';\n@Component({\n selector: 'amplify-verify-user',\n templateUrl: './verify-user.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class VerifyUserComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-verifyuser') dataAttr = '';\n @Input() public headerText = translate(\n 'Account recovery requires verified contact information'\n );\n\n public unverifiedAttributes = {};\n public labelId = nanoid(12);\n\n // translated texts\n public skipText = translate('Skip');\n public verifyText = translate('Verify');\n\n constructor(public authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const actorState = getActorState(\n this.authenticator.authState\n ) as SignInState;\n this.unverifiedAttributes = actorState.context.unverifiedAttributes;\n }\n\n public get context() {\n return this.authenticator.slotContext;\n }\n\n getLabelForAttr(authAttr: string): string {\n const attributeMap = getAttributeMap();\n const label = attributeMap[authAttr]?.label;\n return translate<string>(label);\n }\n\n onInput(event: Event) {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'button[amplify-button]',\n templateUrl: './button.component.html',\n})\nexport class ButtonComponent implements OnInit {\n @Input() type: 'submit' | 'button' = 'button';\n @Input() fullWidth: boolean | string = false;\n @Input() size: 'small' | 'medium' | 'large' = 'medium';\n @Input() variation: 'primary' | 'default' | 'link' = 'default';\n @Input() fontWeight: 'normal' | 'bold' | 'lighter' = 'normal';\n\n @HostBinding('type') typeAttr: string;\n @HostBinding('attr.data-fullwidth') fullWidthAttr: boolean | string;\n @HostBinding('attr.data-size') sizeAttr: string;\n @HostBinding('attr.data-variation') variationAttr: string;\n @HostBinding('class.amplify-button') defaultClass = true;\n @HostBinding('style.font-weight') fontWeightAttr: string;\n\n ngOnInit() {\n this.typeAttr = this.type;\n this.fullWidthAttr = this.fullWidth;\n this.sizeAttr = this.size;\n this.variationAttr = this.variation;\n this.fontWeightAttr = this.fontWeight;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'amplify-checkbox',\n templateUrl: './checkbox.component.html',\n})\nexport class CheckboxComponent implements OnInit {\n @Input() defaultChecked: boolean = false;\n @Input() errorMessage: string;\n @Input() hasError: boolean = false;\n @Input() label: string;\n @Input() name: string;\n @Input() value: string;\n\n public isChecked: boolean = false;\n\n ngOnInit() {\n if (this.defaultChecked) {\n this.isChecked = true;\n }\n }\n\n handleClick() {\n this.isChecked = !this.isChecked;\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'amplify-error',\n templateUrl: './error.component.html',\n})\nexport class ErrorComponent {\n public isVisible = true;\n\n public close() {\n this.isVisible = false;\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { translate } from '@aws-amplify/ui';\nimport { nanoid } from 'nanoid';\n\n@Component({\n selector: 'amplify-password-field',\n templateUrl: './password-field.component.html',\n})\nexport class PasswordFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() labelHidden = false;\n @Output() setBlur = new EventEmitter<Event>();\n\n public type: 'text' | 'password' = 'password';\n\n public showPassword = false;\n public showPasswordButtonlabel = translate('Show password');\n\n togglePasswordText() {\n this.showPassword = !this.showPassword;\n this.showPasswordButtonlabel = this.showPassword\n ? translate('Show password')\n : translate('Hide password');\n this.type = this.showPassword ? 'text' : 'password';\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { countryDialCodes } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-phone-number-field',\n templateUrl: './phone-number-field.component.html',\n})\nexport class PhoneNumberFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() defaultCountryCode: string;\n @Input() selectFieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() textFieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n\n @HostBinding('style.display') display = 'contents';\n public countryDialCodes = countryDialCodes;\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-form-select',\n templateUrl: './select.component.html',\n})\nexport class SelectComponent {\n @Input() items: string[];\n @Input() name: string;\n @Input() label: string;\n @Input() id: string;\n @Input() defaultValue: string;\n}\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-tab-item',\n templateUrl: './tab-item.component.html',\n})\nexport class TabItemComponent {\n @Input() title: string;\n @Input() active = false;\n @Input() id: string;\n @Input() labelledById: string;\n @Input() tabIndex: number;\n @HostBinding('style.display') display = 'block'; // emulate div behavior\n}\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n QueryList,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { TabItemComponent } from '../tab-item/tab-item.component';\n\n@Component({\n selector: 'amplify-tabs',\n templateUrl: './tabs.component.html',\n})\nexport class TabsComponent implements AfterContentInit {\n @ContentChildren(TabItemComponent) tabs: QueryList<TabItemComponent>;\n @Output() tabChange = new EventEmitter();\n\n ngAfterContentInit(): void {\n // assign ids\n this.tabs.forEach((tab, index) => {\n tab.id = `radix-id-${nanoid(12)}-1-content-${index}`;\n tab.labelledById = `radix-id-${nanoid(12)}-1-trigger-${index}`;\n });\n\n // find active tab\n // TODO(enhancement): more declarative way for choosing the initial tab to render\n const activeTabs = this.tabs.filter((tab) => tab.active);\n\n // set active tab\n if (activeTabs.length !== 1) {\n this.selectTab(this.tabs.first);\n }\n }\n\n selectTab(tab: TabItemComponent) {\n this.tabs.forEach((tab) => {\n tab.active = false;\n });\n tab.active = true;\n }\n\n handleTabClick(tab: TabItemComponent) {\n if (tab.active) return; // don't do anything if clicks the current active tab\n this.tabChange.emit();\n this.selectTab(tab);\n }\n}\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { nanoid } from 'nanoid';\n\n@Component({\n selector: 'amplify-text-field',\n templateUrl: './text-field.component.html',\n})\nexport class TextFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId: string = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n\n @HostBinding('style.display') display = 'contents';\n}\n","import {\n AfterContentInit,\n Component,\n HostBinding,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CustomComponentsService } from '../../services/custom-components.service';\n\n@Component({\n selector: 'amplify-slot',\n templateUrl: './amplify-slot.component.html',\n})\nexport class AmplifySlotComponent implements AfterContentInit {\n @Input() name: string;\n @Input() context: Record<PropertyKey, any>;\n\n @HostBinding('style.display') display = 'contents';\n\n public overridingComponent: TemplateRef<any>;\n public isOverriden: boolean = false;\n\n constructor(private propService: CustomComponentsService) {}\n\n ngAfterContentInit(): void {\n const customComponents = this.propService.customComponents;\n const overridingComponent = customComponents[this.name];\n\n if (overridingComponent) {\n this.overridingComponent = overridingComponent;\n this.isOverriden = true;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/**\n * Note: Angular components and directives inside module files has to be imported directly.\n *\n * Related: https://github.com/ng-packagr/ng-packagr/issues/567\n */\nimport { AuthenticatorComponent } from './components/authenticator/authenticator.component';\nimport { ConfirmResetPasswordComponent } from './components/confirm-reset-password/amplify-confirm-reset-password.component';\nimport { ConfirmSignInComponent } from './components/confirm-sign-in/confirm-sign-in.component';\nimport { ConfirmSignUpComponent } from './components/confirm-sign-up/confirm-sign-up.component';\nimport { ConfirmVerifyUserComponent } from './components/confirm-verify-user/amplify-confirm-verify-user.component';\nimport { FederatedSignInButtonComponent } from './components/federated-sign-in-button/federated-sign-in-button.component';\nimport { FederatedSignInComponent } from './components/federated-sign-in/federated-sign-in.component';\nimport { ForceNewPasswordComponent } from './components/force-new-password/force-new-password.component';\nimport { ForceNewPasswordFormFieldsComponent } from './components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component';\nimport { FormFieldComponent } from './components/form-field/form-field.component';\nimport { ResetPasswordComponent } from './components/reset-password/reset-password.component';\nimport { SetupTotpComponent } from './components/setup-totp/setup-totp.component';\nimport { SignInComponent } from './components/sign-in/sign-in.component';\nimport { SignUpComponent } from './components/sign-up/sign-up.component';\nimport { SignUpFormFieldsComponent } from './components/sign-up/sign-up-form-fields/sign-up-form-fields.component';\nimport { UserNameAliasComponent } from './components/user-name-alias/user-name-alias.component';\nimport { VerifyUserComponent } from './components/verify-user/verify-user.component';\n\nimport { ButtonComponent } from '../../primitives/button/button.component';\nimport { CheckboxComponent } from '../../primitives/checkbox/checkbox.component';\nimport { ErrorComponent } from '../../primitives/error/error.component';\nimport { PasswordFieldComponent } from '../../primitives/password-field/password-field.component';\nimport { PhoneNumberFieldComponent } from '../../primitives/phone-number-field/phone-number-field.component';\nimport { SelectComponent } from '../../primitives/select/select.component';\nimport { TabItemComponent } from '../../primitives/tab-item/tab-item.component';\nimport { TabsComponent } from '../../primitives/tabs/tabs.component';\nimport { TextFieldComponent } from '../../primitives/text-field/text-field.component';\n\nimport { AmplifySlotComponent } from '../../utilities/amplify-slot/amplify-slot.component';\nimport { AmplifySlotDirective } from '../../utilities/amplify-slot/amplify-slot.directive';\n\n@NgModule({\n declarations: [\n AmplifySlotComponent,\n AmplifySlotDirective,\n AuthenticatorComponent,\n ButtonComponent,\n CheckboxComponent,\n ConfirmResetPasswordComponent,\n ConfirmSignInComponent,\n ConfirmSignUpComponent,\n ConfirmVerifyUserComponent,\n ErrorComponent,\n FederatedSignInButtonComponent,\n FederatedSignInComponent,\n ForceNewPasswordComponent,\n ForceNewPasswordFormFieldsComponent,\n FormFieldComponent,\n PasswordFieldComponent,\n PhoneNumberFieldComponent,\n ResetPasswordComponent,\n SelectComponent,\n SetupTotpComponent,\n SignInComponent,\n SignUpComponent,\n SignUpFormFieldsComponent,\n TabItemComponent,\n TabsComponent,\n TextFieldComponent,\n UserNameAliasComponent,\n VerifyUserComponent,\n ],\n imports: [CommonModule],\n exports: [\n AmplifySlotDirective,\n AuthenticatorComponent,\n CheckboxComponent,\n SignUpFormFieldsComponent,\n ForceNewPasswordFormFieldsComponent,\n TextFieldComponent,\n ],\n})\nexport class AmplifyAuthenticatorModule {}\n","/*\n * Public API Surface of ui-angular\n */\n\n/**\n * Modules\n */\nexport { AmplifyAuthenticatorModule } from './lib/components/authenticator/authenticator.module';\n\n/**\n * Components\n */\nexport * from './lib/components/authenticator/components';\nexport * from './lib/primitives';\n\n/**\n * Helpers\n */\nexport * from './lib/common';\n\n/**\n * Directives\n */\nexport * from './lib/utilities/amplify-slot/amplify-slot.directive';\n\n/**\n * Services\n */\nexport * from './lib/services/custom-components.service';\nexport * from './lib/services/authenticator.service';\n\n/**\n * Re-export public APIs from `@aws-amplify/ui`\n */\nexport { translations } from '@aws-amplify/ui';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {AuthenticatorComponent as ɵb} from './lib/components/authenticator/components/authenticator/authenticator.component';\nexport {ConfirmResetPasswordComponent as ɵe} from './lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component';\nexport {ConfirmSignInComponent as ɵf} from './lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component';\nexport {ConfirmSignUpComponent as ɵg} from './lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component';\nexport {ConfirmVerifyUserComponent as ɵh} from './lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component';\nexport {FederatedSignInButtonComponent as ɵj} from './lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component';\nexport {FederatedSignInComponent as ɵk} from './lib/components/authenticator/components/federated-sign-in/federated-sign-in.component';\nexport {ForceNewPasswordFormFieldsComponent as ɵm} from './lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component';\nexport {ForceNewPasswordComponent as ɵl} from './lib/components/authenticator/components/force-new-password/force-new-password.component';\nexport {FormFieldComponent as ɵn} from './lib/components/authenticator/components/form-field/form-field.component';\nexport {ResetPasswordComponent as ɵq} from './lib/components/authenticator/components/reset-password/reset-password.component';\nexport {SetupTotpComponent as ɵs} from './lib/components/authenticator/components/setup-totp/setup-totp.component';\nexport {SignInComponent as ɵt} from './lib/components/authenticator/components/sign-in/sign-in.component';\nexport {SignUpFormFieldsComponent as ɵv} from './lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component';\nexport {SignUpComponent as ɵu} from './lib/components/authenticator/components/sign-up/sign-up.component';\nexport {UserNameAliasComponent as ɵz} from './lib/components/authenticator/components/user-name-alias/user-name-alias.component';\nexport {VerifyUserComponent as ɵba} from './lib/components/authenticator/components/verify-user/verify-user.component';\nexport {ButtonComponent as ɵc} from './lib/primitives/button/button.component';\nexport {CheckboxComponent as ɵd} from './lib/primitives/checkbox/checkbox.component';\nexport {ErrorComponent as ɵi} from './lib/primitives/error/error.component';\nexport {PasswordFieldComponent as ɵo} from './lib/primitives/password-field/password-field.component';\nexport {PhoneNumberFieldComponent as ɵp} from './lib/primitives/phone-number-field/phone-number-field.component';\nexport {SelectComponent as ɵr} from './lib/primitives/select/select.component';\nexport {TabItemComponent as ɵw} from './lib/primitives/tab-item/tab-item.component';\nexport {TabsComponent as ɵx} from './lib/primitives/tabs/tabs.component';\nexport {TextFieldComponent as ɵy} from './lib/primitives/text-field/text-field.component';\nexport {AmplifySlotComponent as ɵa} from './lib/utilities/amplify-slot/amplify-slot.component';"],"names":["logger","Logger"],"mappings":"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"}
@@ -6,6 +6,10 @@ export declare class ConfirmSignUpComponent {
6
6
  dataAttr: string;
7
7
  resendCodeText: string;
8
8
  confirmText: string;
9
+ emailMessage: string;
10
+ textedMessage: string;
11
+ defaultMessage: string;
12
+ minutesMessage: string;
9
13
  constructor(authenticator: AuthenticatorService);
10
14
  get context(): {
11
15
  $implicit: {
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@aws-amplify/ui-angular",
3
- "version": "2.1.2",
3
+ "version": "2.1.3",
4
4
  "license": "Apache-2.0",
5
5
  "peerDependencies": {
6
6
  "aws-amplify": "3.x.x || 4.x.x"
7
7
  },
8
8
  "dependencies": {
9
9
  "@aws-amplify/ui-components": "^1.7.0",
10
- "@aws-amplify/ui": "3.0.14",
10
+ "@aws-amplify/ui": "3.0.15",
11
11
  "@stencil/core": "2.8.0",
12
12
  "nanoid": "3.1.31",
13
13
  "qrcode": "1.5.0",