@aws-amplify/ui-angular 3.2.5 → 3.2.7

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 (21) hide show
  1. package/bundles/aws-amplify-ui-angular.umd.js +24 -20
  2. package/bundles/aws-amplify-ui-angular.umd.js.map +1 -1
  3. package/esm2015/lib/components/authenticator/components/setup-totp/setup-totp.component.js +9 -11
  4. package/esm2015/lib/services/authenticator.service.js +5 -1
  5. package/esm2015/version.js +2 -2
  6. package/fesm2015/aws-amplify-ui-angular.js +13 -11
  7. package/fesm2015/aws-amplify-ui-angular.js.map +1 -1
  8. package/lib/components/authenticator/components/authenticator/authenticator.component.d.ts +1 -0
  9. package/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.d.ts +1 -0
  10. package/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.d.ts +1 -0
  11. package/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.d.ts +1 -0
  12. package/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.d.ts +1 -0
  13. package/lib/components/authenticator/components/force-new-password/force-new-password.component.d.ts +1 -0
  14. package/lib/components/authenticator/components/reset-password/reset-password.component.d.ts +1 -0
  15. package/lib/components/authenticator/components/setup-totp/setup-totp.component.d.ts +2 -1
  16. package/lib/components/authenticator/components/sign-in/sign-in.component.d.ts +1 -0
  17. package/lib/components/authenticator/components/sign-up/sign-up.component.d.ts +1 -0
  18. package/lib/components/authenticator/components/verify-user/verify-user.component.d.ts +1 -0
  19. package/lib/services/authenticator.service.d.ts +2 -0
  20. package/package.json +2 -2
  21. package/version.d.ts +1 -1
@@ -1,7 +1,7 @@
1
1
  import { __awaiter } from "tslib";
2
2
  import { Component, HostBinding } from '@angular/core';
3
3
  import QRCode from 'qrcode';
4
- import { Auth, Logger } from 'aws-amplify';
4
+ import { Logger } from 'aws-amplify';
5
5
  import { getActorContext, getFormDataFromEvent, getTotpCodeURL, authenticatorTextUtil, } from '@aws-amplify/ui';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "../../../../services/authenticator.service";
@@ -18,7 +18,7 @@ export class SetupTotpComponent {
18
18
  this.dataAttr = '';
19
19
  this.headerText = getSetupTOTPText();
20
20
  this.qrCodeSource = '';
21
- this.secretKey = '';
21
+ this.totpSecretCode = '';
22
22
  this.copyTextLabel = getCopyText();
23
23
  // translated texts
24
24
  this.backToSignInText = getBackToSignInText();
@@ -35,14 +35,12 @@ export class SetupTotpComponent {
35
35
  generateQRCode() {
36
36
  var _a, _b;
37
37
  return __awaiter(this, void 0, void 0, function* () {
38
- // TODO: This should be handled in core.
39
- const state = this.authenticator.authState;
40
- const actorContext = getActorContext(state);
41
- const { user, formFields } = actorContext;
38
+ const { authState: state, totpSecretCode, user } = this.authenticator;
39
+ const { formFields } = getActorContext(state);
42
40
  const { totpIssuer = 'AWSCognito', totpUsername = user === null || user === void 0 ? void 0 : user.username } = (_b = (_a = formFields === null || formFields === void 0 ? void 0 : formFields.setupTOTP) === null || _a === void 0 ? void 0 : _a.QR) !== null && _b !== void 0 ? _b : {};
41
+ this.totpSecretCode = totpSecretCode;
43
42
  try {
44
- this.secretKey = yield Auth.setupTOTP(user);
45
- const totpCode = getTotpCodeURL(totpIssuer, totpUsername, this.secretKey);
43
+ const totpCode = getTotpCodeURL(totpIssuer, totpUsername, this.totpSecretCode);
46
44
  logger.info('totp code was generated:', totpCode);
47
45
  this.qrCodeSource = yield QRCode.toDataURL(totpCode);
48
46
  }
@@ -61,12 +59,12 @@ export class SetupTotpComponent {
61
59
  this.authenticator.submitForm(getFormDataFromEvent(event));
62
60
  }
63
61
  copyText() {
64
- navigator.clipboard.writeText(this.secretKey);
62
+ navigator.clipboard.writeText(this.totpSecretCode);
65
63
  this.copyTextLabel = getCopiedText();
66
64
  }
67
65
  }
68
66
  SetupTotpComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SetupTotpComponent, deps: [{ token: i1.AuthenticatorService }], target: i0.ɵɵFactoryTarget.Component });
69
- SetupTotpComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SetupTotpComponent, selector: "amplify-setup-totp", host: { properties: { "attr.data-amplify-authenticator-setup-totp": "this.dataAttr" } }, ngImport: i0, template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"setup-totp-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <p *ngIf=\"!qrCodeSource\">Loading...</p>\n <img\n *ngIf=\"qrCodeSource\"\n [src]=\"qrCodeSource\"\n alt=\"qr code\"\n data-amplify-qrcode\n width=\"228\"\n height=\"228\"\n />\n <div class=\"amplify-flex\" data-amplify-copy>\n <div>{{ secretKey }}</div>\n <div data-amplify-copy-svg (click)=\"copyText()\">\n <div data-amplify-copy-tooltip>{{ copyTextLabel }}</div>\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16 1H4C2.9 1 2 1.9 2 3V17H4V3H16V1ZM15 5H8C6.9 5 6.01 5.9 6.01 7L6 21C6 22.1 6.89 23 7.99 23H19C20.1 23 21 22.1 21 21V11L15 5ZM8 21V7H14V12H19V21H8Z\"\n />\n </svg>\n </div>\n </div>\n\n <amplify-base-form-fields route=\"setupTOTP\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"setup-totp-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n", components: [{ type: i2.AmplifySlotComponent, selector: "amplify-slot", inputs: ["name", "context"] }, { type: i3.BaseFormFieldsComponent, selector: "amplify-base-form-fields", inputs: ["route"] }, { type: i4.ButtonComponent, selector: "button[amplify-button]", inputs: ["type", "fullWidth", "isDisabled", "size", "variation", "fontWeight"] }, { type: i5.ErrorComponent, selector: "amplify-error" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
67
+ SetupTotpComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SetupTotpComponent, selector: "amplify-setup-totp", host: { properties: { "attr.data-amplify-authenticator-setup-totp": "this.dataAttr" } }, ngImport: i0, template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"setup-totp-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <p *ngIf=\"!qrCodeSource\">Loading...</p>\n <img\n *ngIf=\"qrCodeSource\"\n [src]=\"qrCodeSource\"\n alt=\"qr code\"\n data-amplify-qrcode\n width=\"228\"\n height=\"228\"\n />\n <div class=\"amplify-flex\" data-amplify-copy>\n <div>{{ totpSecretCode }}</div>\n <div data-amplify-copy-svg (click)=\"copyText()\">\n <div data-amplify-copy-tooltip>{{ copyTextLabel }}</div>\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16 1H4C2.9 1 2 1.9 2 3V17H4V3H16V1ZM15 5H8C6.9 5 6.01 5.9 6.01 7L6 21C6 22.1 6.89 23 7.99 23H19C20.1 23 21 22.1 21 21V11L15 5ZM8 21V7H14V12H19V21H8Z\"\n />\n </svg>\n </div>\n </div>\n\n <amplify-base-form-fields route=\"setupTOTP\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"setup-totp-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n", components: [{ type: i2.AmplifySlotComponent, selector: "amplify-slot", inputs: ["name", "context"] }, { type: i3.BaseFormFieldsComponent, selector: "amplify-base-form-fields", inputs: ["route"] }, { type: i4.ButtonComponent, selector: "button[amplify-button]", inputs: ["type", "fullWidth", "isDisabled", "size", "variation", "fontWeight"] }, { type: i5.ErrorComponent, selector: "amplify-error" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
70
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SetupTotpComponent, decorators: [{
71
69
  type: Component,
72
70
  args: [{
@@ -77,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
77
75
  type: HostBinding,
78
76
  args: ['attr.data-amplify-authenticator-setup-totp']
79
77
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtdG90cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdXRoZW50aWNhdG9yL2NvbXBvbmVudHMvc2V0dXAtdG90cC9zZXR1cC10b3RwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2F1dGhlbnRpY2F0b3IvY29tcG9uZW50cy9zZXR1cC10b3RwL3NldHVwLXRvdHAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzQyxPQUFPLEVBRUwsZUFBZSxFQUNmLG9CQUFvQixFQUNwQixjQUFjLEVBRWQscUJBQXFCLEdBQ3RCLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7O0FBR3pCLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBRXZDLE1BQU0sRUFDSixnQkFBZ0IsRUFDaEIsV0FBVyxFQUNYLG1CQUFtQixFQUNuQixjQUFjLEVBQ2QsYUFBYSxHQUNkLEdBQUcscUJBQXFCLENBQUM7QUFNMUIsTUFBTSxPQUFPLGtCQUFrQjtJQVk3QixZQUFtQixhQUFtQztRQUFuQyxrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFYSyxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xFLGVBQVUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ2hDLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixrQkFBYSxHQUFHLFdBQVcsRUFBRSxDQUFDO1FBRXJDLG1CQUFtQjtRQUNaLHFCQUFnQixHQUFHLG1CQUFtQixFQUFFLENBQUM7UUFDekMsZ0JBQVcsR0FBRyxjQUFjLEVBQUUsQ0FBQztJQUdtQixDQUFDO0lBRXBELFFBQVE7O1lBQ1osTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDOUIsQ0FBQztLQUFBO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7SUFDeEMsQ0FBQztJQUVLLGNBQWM7OztZQUNsQix3Q0FBd0M7WUFDeEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7WUFDM0MsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBa0IsQ0FBQztZQUM3RCxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLFlBQVksQ0FBQztZQUMxQyxNQUFNLEVBQUUsVUFBVSxHQUFHLFlBQVksRUFBRSxZQUFZLEdBQUcsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLFFBQVEsRUFBRSxHQUNoRSxNQUFBLE1BQUEsVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLFNBQVMsMENBQUUsRUFBRSxtQ0FBSSxFQUFFLENBQUM7WUFDbEMsSUFBSTtnQkFDRixJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDNUMsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUUxRSxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN0RDtZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDbkI7O0tBQ0Y7SUFFRCxPQUFPLENBQUMsS0FBWTtRQUNsQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBcUIsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN2RCxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxRQUFRLENBQUMsS0FBWTtRQUNuQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsUUFBUTtRQUNOLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7O2dIQXREVSxrQkFBa0I7b0dBQWxCLGtCQUFrQixtSkMzQi9CLCs2REE2REE7NEZEbENhLGtCQUFrQjtrQkFKOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsNkJBQTZCO2lCQUMzQzsyR0FFNEQsUUFBUTtzQkFBbEUsV0FBVzt1QkFBQyw0Q0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBRUkNvZGUgZnJvbSAncXJjb2RlJztcbmltcG9ydCB7IEF1dGgsIExvZ2dlciB9IGZyb20gJ2F3cy1hbXBsaWZ5JztcbmltcG9ydCB7XG4gIEZvcm1GaWVsZHNBcnJheSxcbiAgZ2V0QWN0b3JDb250ZXh0LFxuICBnZXRGb3JtRGF0YUZyb21FdmVudCxcbiAgZ2V0VG90cENvZGVVUkwsXG4gIFNpZ25JbkNvbnRleHQsXG4gIGF1dGhlbnRpY2F0b3JUZXh0VXRpbCxcbn0gZnJvbSAnQGF3cy1hbXBsaWZ5L3VpJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvYXV0aGVudGljYXRvci5zZXJ2aWNlJztcblxuY29uc3QgbG9nZ2VyID0gbmV3IExvZ2dlcignU2V0dXBUb3RwJyk7XG5cbmNvbnN0IHtcbiAgZ2V0U2V0dXBUT1RQVGV4dCxcbiAgZ2V0Q29weVRleHQsXG4gIGdldEJhY2tUb1NpZ25JblRleHQsXG4gIGdldENvbmZpcm1UZXh0LFxuICBnZXRDb3BpZWRUZXh0LFxufSA9IGF1dGhlbnRpY2F0b3JUZXh0VXRpbDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYW1wbGlmeS1zZXR1cC10b3RwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NldHVwLXRvdHAuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTZXR1cFRvdHBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1hbXBsaWZ5LWF1dGhlbnRpY2F0b3Itc2V0dXAtdG90cCcpIGRhdGFBdHRyID0gJyc7XG4gIHB1YmxpYyBoZWFkZXJUZXh0ID0gZ2V0U2V0dXBUT1RQVGV4dCgpO1xuICBwdWJsaWMgcXJDb2RlU291cmNlID0gJyc7XG4gIHB1YmxpYyBzZWNyZXRLZXkgPSAnJztcbiAgcHVibGljIGNvcHlUZXh0TGFiZWwgPSBnZXRDb3B5VGV4dCgpO1xuXG4gIC8vIHRyYW5zbGF0ZWQgdGV4dHNcbiAgcHVibGljIGJhY2tUb1NpZ25JblRleHQgPSBnZXRCYWNrVG9TaWduSW5UZXh0KCk7XG4gIHB1YmxpYyBjb25maXJtVGV4dCA9IGdldENvbmZpcm1UZXh0KCk7XG4gIHB1YmxpYyBzb3J0ZWRGb3JtRmllbGRzOiBGb3JtRmllbGRzQXJyYXk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGF1dGhlbnRpY2F0b3I6IEF1dGhlbnRpY2F0b3JTZXJ2aWNlKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuZ2VuZXJhdGVRUkNvZGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoZW50aWNhdG9yLnNsb3RDb250ZXh0O1xuICB9XG5cbiAgYXN5bmMgZ2VuZXJhdGVRUkNvZGUoKSB7XG4gICAgLy8gVE9ETzogVGhpcyBzaG91bGQgYmUgaGFuZGxlZCBpbiBjb3JlLlxuICAgIGNvbnN0IHN0YXRlID0gdGhpcy5hdXRoZW50aWNhdG9yLmF1dGhTdGF0ZTtcbiAgICBjb25zdCBhY3RvckNvbnRleHQgPSBnZXRBY3RvckNvbnRleHQoc3RhdGUpIGFzIFNpZ25JbkNvbnRleHQ7XG4gICAgY29uc3QgeyB1c2VyLCBmb3JtRmllbGRzIH0gPSBhY3RvckNvbnRleHQ7XG4gICAgY29uc3QgeyB0b3RwSXNzdWVyID0gJ0FXU0NvZ25pdG8nLCB0b3RwVXNlcm5hbWUgPSB1c2VyPy51c2VybmFtZSB9ID1cbiAgICAgIGZvcm1GaWVsZHM/LnNldHVwVE9UUD8uUVIgPz8ge307XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc2VjcmV0S2V5ID0gYXdhaXQgQXV0aC5zZXR1cFRPVFAodXNlcik7XG4gICAgICBjb25zdCB0b3RwQ29kZSA9IGdldFRvdHBDb2RlVVJMKHRvdHBJc3N1ZXIsIHRvdHBVc2VybmFtZSwgdGhpcy5zZWNyZXRLZXkpO1xuXG4gICAgICBsb2dnZXIuaW5mbygndG90cCBjb2RlIHdhcyBnZW5lcmF0ZWQ6JywgdG90cENvZGUpO1xuICAgICAgdGhpcy5xckNvZGVTb3VyY2UgPSBhd2FpdCBRUkNvZGUudG9EYXRhVVJMKHRvdHBDb2RlKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGxvZ2dlci5lcnJvcihlcnIpO1xuICAgIH1cbiAgfVxuXG4gIG9uSW5wdXQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBjb25zdCB7IG5hbWUsIHZhbHVlIH0gPSA8SFRNTElucHV0RWxlbWVudD5ldmVudC50YXJnZXQ7XG4gICAgdGhpcy5hdXRoZW50aWNhdG9yLnVwZGF0ZUZvcm0oeyBuYW1lLCB2YWx1ZSB9KTtcbiAgfVxuXG4gIG9uU3VibWl0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5hdXRoZW50aWNhdG9yLnN1Ym1pdEZvcm0oZ2V0Rm9ybURhdGFGcm9tRXZlbnQoZXZlbnQpKTtcbiAgfVxuXG4gIGNvcHlUZXh0KCk6IHZvaWQge1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KHRoaXMuc2VjcmV0S2V5KTtcbiAgICB0aGlzLmNvcHlUZXh0TGFiZWwgPSBnZXRDb3BpZWRUZXh0KCk7XG4gIH1cbn1cbiIsIjxmb3JtIGRhdGEtYW1wbGlmeS1mb3JtIChzdWJtaXQpPVwib25TdWJtaXQoJGV2ZW50KVwiIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIj5cbiAgPGZpZWxkc2V0XG4gICAgY2xhc3M9XCJhbXBsaWZ5LWZsZXggYW1wbGlmeS1hdXRoZW50aWNhdG9yX19jb2x1bW5cIlxuICAgIGRhdGEtYW1wbGlmeS1maWVsZHNldFxuICAgIFtkaXNhYmxlZF09XCJhdXRoZW50aWNhdG9yLmlzUGVuZGluZ1wiXG4gID5cbiAgICA8YW1wbGlmeS1zbG90IG5hbWU9XCJzZXR1cC10b3RwLWhlYWRlclwiIFtjb250ZXh0XT1cImNvbnRleHRcIj5cbiAgICAgIDxoMyBjbGFzcz1cImFtcGxpZnktaGVhZGluZyBhbXBsaWZ5LWhlYWRpbmctLTNcIj57eyB0aGlzLmhlYWRlclRleHQgfX08L2gzPlxuICAgIDwvYW1wbGlmeS1zbG90PlxuICAgIDxwICpuZ0lmPVwiIXFyQ29kZVNvdXJjZVwiPkxvYWRpbmcuLi48L3A+XG4gICAgPGltZ1xuICAgICAgKm5nSWY9XCJxckNvZGVTb3VyY2VcIlxuICAgICAgW3NyY109XCJxckNvZGVTb3VyY2VcIlxuICAgICAgYWx0PVwicXIgY29kZVwiXG4gICAgICBkYXRhLWFtcGxpZnktcXJjb2RlXG4gICAgICB3aWR0aD1cIjIyOFwiXG4gICAgICBoZWlnaHQ9XCIyMjhcIlxuICAgIC8+XG4gICAgPGRpdiBjbGFzcz1cImFtcGxpZnktZmxleFwiIGRhdGEtYW1wbGlmeS1jb3B5PlxuICAgICAgPGRpdj57eyBzZWNyZXRLZXkgfX08L2Rpdj5cbiAgICAgIDxkaXYgZGF0YS1hbXBsaWZ5LWNvcHktc3ZnIChjbGljayk9XCJjb3B5VGV4dCgpXCI+XG4gICAgICAgIDxkaXYgZGF0YS1hbXBsaWZ5LWNvcHktdG9vbHRpcD57eyBjb3B5VGV4dExhYmVsIH19PC9kaXY+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICB3aWR0aD1cIjI0XCJcbiAgICAgICAgICBoZWlnaHQ9XCIyNFwiXG4gICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZD1cIk0xNiAxSDRDMi45IDEgMiAxLjkgMiAzVjE3SDRWM0gxNlYxWk0xNSA1SDhDNi45IDUgNi4wMSA1LjkgNi4wMSA3TDYgMjFDNiAyMi4xIDYuODkgMjMgNy45OSAyM0gxOUMyMC4xIDIzIDIxIDIyLjEgMjEgMjFWMTFMMTUgNVpNOCAyMVY3SDE0VjEySDE5VjIxSDhaXCJcbiAgICAgICAgICAvPlxuICAgICAgICA8L3N2Zz5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGFtcGxpZnktYmFzZS1mb3JtLWZpZWxkcyByb3V0ZT1cInNldHVwVE9UUFwiPjwvYW1wbGlmeS1iYXNlLWZvcm0tZmllbGRzPlxuICAgIDxidXR0b25cbiAgICAgIGFtcGxpZnktYnV0dG9uXG4gICAgICB2YXJpYXRpb249XCJwcmltYXJ5XCJcbiAgICAgIGZ1bGxXaWR0aD1cInRydWVcIlxuICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICBbaXNEaXNhYmxlZF09XCJhdXRoZW50aWNhdG9yLmlzUGVuZGluZ1wiXG4gICAgPlxuICAgICAge3sgY29uZmlybVRleHQgfX1cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBhbXBsaWZ5LWJ1dHRvblxuICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgIHZhcmlhdGlvbj1cImxpbmtcIlxuICAgICAgZm9udFdlaWdodD1cIm5vcm1hbFwiXG4gICAgICBmdWxsV2lkdGg9XCJ0cnVlXCJcbiAgICAgIChjbGljayk9XCJhdXRoZW50aWNhdG9yLnRvU2lnbkluKClcIlxuICAgID5cbiAgICAgIHt7IGJhY2tUb1NpZ25JblRleHQgfX1cbiAgICA8L2J1dHRvbj5cbiAgICA8YW1wbGlmeS1lcnJvciAqbmdJZj1cImF1dGhlbnRpY2F0b3IuZXJyb3JcIj5cbiAgICAgIHt7IGF1dGhlbnRpY2F0b3IuZXJyb3IgfX1cbiAgICA8L2FtcGxpZnktZXJyb3I+XG4gIDwvZmllbGRzZXQ+XG4gIDxhbXBsaWZ5LXNsb3QgbmFtZT1cInNldHVwLXRvdHAtZm9vdGVyXCIgW2NvbnRleHRdPVwiY29udGV4dFwiPiA8L2FtcGxpZnktc2xvdD5cbjwvZm9ybT5cbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtdG90cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdXRoZW50aWNhdG9yL2NvbXBvbmVudHMvc2V0dXAtdG90cC9zZXR1cC10b3RwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2F1dGhlbnRpY2F0b3IvY29tcG9uZW50cy9zZXR1cC10b3RwL3NldHVwLXRvdHAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3JDLE9BQU8sRUFFTCxlQUFlLEVBQ2Ysb0JBQW9CLEVBQ3BCLGNBQWMsRUFFZCxxQkFBcUIsR0FDdEIsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7QUFHekIsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFdkMsTUFBTSxFQUNKLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsbUJBQW1CLEVBQ25CLGNBQWMsRUFDZCxhQUFhLEdBQ2QsR0FBRyxxQkFBcUIsQ0FBQztBQU0xQixNQUFNLE9BQU8sa0JBQWtCO0lBWTdCLFlBQW1CLGFBQW1DO1FBQW5DLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQVhLLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbEUsZUFBVSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDaEMsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFDbEIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsa0JBQWEsR0FBRyxXQUFXLEVBQUUsQ0FBQztRQUVyQyxtQkFBbUI7UUFDWixxQkFBZ0IsR0FBRyxtQkFBbUIsRUFBRSxDQUFDO1FBQ3pDLGdCQUFXLEdBQUcsY0FBYyxFQUFFLENBQUM7SUFHbUIsQ0FBQztJQUVwRCxRQUFROztZQUNaLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzlCLENBQUM7S0FBQTtJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQ3hDLENBQUM7SUFFSyxjQUFjOzs7WUFDbEIsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDdEUsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQWtCLENBQUM7WUFDL0QsTUFBTSxFQUFFLFVBQVUsR0FBRyxZQUFZLEVBQUUsWUFBWSxHQUFHLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxRQUFRLEVBQUUsR0FDaEUsTUFBQSxNQUFBLFVBQVUsYUFBVixVQUFVLHVCQUFWLFVBQVUsQ0FBRSxTQUFTLDBDQUFFLEVBQUUsbUNBQUksRUFBRSxDQUFDO1lBRWxDLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1lBRXJDLElBQUk7Z0JBQ0YsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUM3QixVQUFVLEVBQ1YsWUFBWSxFQUNaLElBQUksQ0FBQyxjQUFjLENBQ3BCLENBQUM7Z0JBRUYsTUFBTSxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDdEQ7WUFBQyxPQUFPLEdBQUcsRUFBRTtnQkFDWixNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ25COztLQUNGO0lBRUQsT0FBTyxDQUFDLEtBQVk7UUFDbEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQXFCLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDdkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVk7UUFDbkIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELFFBQVE7UUFDTixTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLEVBQUUsQ0FBQztJQUN2QyxDQUFDOztnSEExRFUsa0JBQWtCO29HQUFsQixrQkFBa0IsbUpDM0IvQixvN0RBNkRBOzRGRGxDYSxrQkFBa0I7a0JBSjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsV0FBVyxFQUFFLDZCQUE2QjtpQkFDM0M7MkdBRTRELFFBQVE7c0JBQWxFLFdBQVc7dUJBQUMsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgUVJDb2RlIGZyb20gJ3FyY29kZSc7XG5pbXBvcnQgeyBMb2dnZXIgfSBmcm9tICdhd3MtYW1wbGlmeSc7XG5pbXBvcnQge1xuICBGb3JtRmllbGRzQXJyYXksXG4gIGdldEFjdG9yQ29udGV4dCxcbiAgZ2V0Rm9ybURhdGFGcm9tRXZlbnQsXG4gIGdldFRvdHBDb2RlVVJMLFxuICBTaWduSW5Db250ZXh0LFxuICBhdXRoZW50aWNhdG9yVGV4dFV0aWwsXG59IGZyb20gJ0Bhd3MtYW1wbGlmeS91aSc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdG9yU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2F1dGhlbnRpY2F0b3Iuc2VydmljZSc7XG5cbmNvbnN0IGxvZ2dlciA9IG5ldyBMb2dnZXIoJ1NldHVwVG90cCcpO1xuXG5jb25zdCB7XG4gIGdldFNldHVwVE9UUFRleHQsXG4gIGdldENvcHlUZXh0LFxuICBnZXRCYWNrVG9TaWduSW5UZXh0LFxuICBnZXRDb25maXJtVGV4dCxcbiAgZ2V0Q29waWVkVGV4dCxcbn0gPSBhdXRoZW50aWNhdG9yVGV4dFV0aWw7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FtcGxpZnktc2V0dXAtdG90cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZXR1cC10b3RwLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgU2V0dXBUb3RwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtYW1wbGlmeS1hdXRoZW50aWNhdG9yLXNldHVwLXRvdHAnKSBkYXRhQXR0ciA9ICcnO1xuICBwdWJsaWMgaGVhZGVyVGV4dCA9IGdldFNldHVwVE9UUFRleHQoKTtcbiAgcHVibGljIHFyQ29kZVNvdXJjZSA9ICcnO1xuICBwdWJsaWMgdG90cFNlY3JldENvZGUgPSAnJztcbiAgcHVibGljIGNvcHlUZXh0TGFiZWwgPSBnZXRDb3B5VGV4dCgpO1xuXG4gIC8vIHRyYW5zbGF0ZWQgdGV4dHNcbiAgcHVibGljIGJhY2tUb1NpZ25JblRleHQgPSBnZXRCYWNrVG9TaWduSW5UZXh0KCk7XG4gIHB1YmxpYyBjb25maXJtVGV4dCA9IGdldENvbmZpcm1UZXh0KCk7XG4gIHB1YmxpYyBzb3J0ZWRGb3JtRmllbGRzOiBGb3JtRmllbGRzQXJyYXk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGF1dGhlbnRpY2F0b3I6IEF1dGhlbnRpY2F0b3JTZXJ2aWNlKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuZ2VuZXJhdGVRUkNvZGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoZW50aWNhdG9yLnNsb3RDb250ZXh0O1xuICB9XG5cbiAgYXN5bmMgZ2VuZXJhdGVRUkNvZGUoKSB7XG4gICAgY29uc3QgeyBhdXRoU3RhdGU6IHN0YXRlLCB0b3RwU2VjcmV0Q29kZSwgdXNlciB9ID0gdGhpcy5hdXRoZW50aWNhdG9yO1xuICAgIGNvbnN0IHsgZm9ybUZpZWxkcyB9ID0gZ2V0QWN0b3JDb250ZXh0KHN0YXRlKSBhcyBTaWduSW5Db250ZXh0O1xuICAgIGNvbnN0IHsgdG90cElzc3VlciA9ICdBV1NDb2duaXRvJywgdG90cFVzZXJuYW1lID0gdXNlcj8udXNlcm5hbWUgfSA9XG4gICAgICBmb3JtRmllbGRzPy5zZXR1cFRPVFA/LlFSID8/IHt9O1xuXG4gICAgdGhpcy50b3RwU2VjcmV0Q29kZSA9IHRvdHBTZWNyZXRDb2RlO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHRvdHBDb2RlID0gZ2V0VG90cENvZGVVUkwoXG4gICAgICAgIHRvdHBJc3N1ZXIsXG4gICAgICAgIHRvdHBVc2VybmFtZSxcbiAgICAgICAgdGhpcy50b3RwU2VjcmV0Q29kZVxuICAgICAgKTtcblxuICAgICAgbG9nZ2VyLmluZm8oJ3RvdHAgY29kZSB3YXMgZ2VuZXJhdGVkOicsIHRvdHBDb2RlKTtcbiAgICAgIHRoaXMucXJDb2RlU291cmNlID0gYXdhaXQgUVJDb2RlLnRvRGF0YVVSTCh0b3RwQ29kZSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoZXJyKTtcbiAgICB9XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgeyBuYW1lLCB2YWx1ZSB9ID0gPEhUTUxJbnB1dEVsZW1lbnQ+ZXZlbnQudGFyZ2V0O1xuICAgIHRoaXMuYXV0aGVudGljYXRvci51cGRhdGVGb3JtKHsgbmFtZSwgdmFsdWUgfSk7XG4gIH1cblxuICBvblN1Ym1pdChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuYXV0aGVudGljYXRvci5zdWJtaXRGb3JtKGdldEZvcm1EYXRhRnJvbUV2ZW50KGV2ZW50KSk7XG4gIH1cblxuICBjb3B5VGV4dCgpOiB2b2lkIHtcbiAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh0aGlzLnRvdHBTZWNyZXRDb2RlKTtcbiAgICB0aGlzLmNvcHlUZXh0TGFiZWwgPSBnZXRDb3BpZWRUZXh0KCk7XG4gIH1cbn1cbiIsIjxmb3JtIGRhdGEtYW1wbGlmeS1mb3JtIChzdWJtaXQpPVwib25TdWJtaXQoJGV2ZW50KVwiIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIj5cbiAgPGZpZWxkc2V0XG4gICAgY2xhc3M9XCJhbXBsaWZ5LWZsZXggYW1wbGlmeS1hdXRoZW50aWNhdG9yX19jb2x1bW5cIlxuICAgIGRhdGEtYW1wbGlmeS1maWVsZHNldFxuICAgIFtkaXNhYmxlZF09XCJhdXRoZW50aWNhdG9yLmlzUGVuZGluZ1wiXG4gID5cbiAgICA8YW1wbGlmeS1zbG90IG5hbWU9XCJzZXR1cC10b3RwLWhlYWRlclwiIFtjb250ZXh0XT1cImNvbnRleHRcIj5cbiAgICAgIDxoMyBjbGFzcz1cImFtcGxpZnktaGVhZGluZyBhbXBsaWZ5LWhlYWRpbmctLTNcIj57eyB0aGlzLmhlYWRlclRleHQgfX08L2gzPlxuICAgIDwvYW1wbGlmeS1zbG90PlxuICAgIDxwICpuZ0lmPVwiIXFyQ29kZVNvdXJjZVwiPkxvYWRpbmcuLi48L3A+XG4gICAgPGltZ1xuICAgICAgKm5nSWY9XCJxckNvZGVTb3VyY2VcIlxuICAgICAgW3NyY109XCJxckNvZGVTb3VyY2VcIlxuICAgICAgYWx0PVwicXIgY29kZVwiXG4gICAgICBkYXRhLWFtcGxpZnktcXJjb2RlXG4gICAgICB3aWR0aD1cIjIyOFwiXG4gICAgICBoZWlnaHQ9XCIyMjhcIlxuICAgIC8+XG4gICAgPGRpdiBjbGFzcz1cImFtcGxpZnktZmxleFwiIGRhdGEtYW1wbGlmeS1jb3B5PlxuICAgICAgPGRpdj57eyB0b3RwU2VjcmV0Q29kZSB9fTwvZGl2PlxuICAgICAgPGRpdiBkYXRhLWFtcGxpZnktY29weS1zdmcgKGNsaWNrKT1cImNvcHlUZXh0KClcIj5cbiAgICAgICAgPGRpdiBkYXRhLWFtcGxpZnktY29weS10b29sdGlwPnt7IGNvcHlUZXh0TGFiZWwgfX08L2Rpdj5cbiAgICAgICAgPHN2Z1xuICAgICAgICAgIHdpZHRoPVwiMjRcIlxuICAgICAgICAgIGhlaWdodD1cIjI0XCJcbiAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBkPVwiTTE2IDFINEMyLjkgMSAyIDEuOSAyIDNWMTdINFYzSDE2VjFaTTE1IDVIOEM2LjkgNSA2LjAxIDUuOSA2LjAxIDdMNiAyMUM2IDIyLjEgNi44OSAyMyA3Ljk5IDIzSDE5QzIwLjEgMjMgMjEgMjIuMSAyMSAyMVYxMUwxNSA1Wk04IDIxVjdIMTRWMTJIMTlWMjFIOFpcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8YW1wbGlmeS1iYXNlLWZvcm0tZmllbGRzIHJvdXRlPVwic2V0dXBUT1RQXCI+PC9hbXBsaWZ5LWJhc2UtZm9ybS1maWVsZHM+XG4gICAgPGJ1dHRvblxuICAgICAgYW1wbGlmeS1idXR0b25cbiAgICAgIHZhcmlhdGlvbj1cInByaW1hcnlcIlxuICAgICAgZnVsbFdpZHRoPVwidHJ1ZVwiXG4gICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgIFtpc0Rpc2FibGVkXT1cImF1dGhlbnRpY2F0b3IuaXNQZW5kaW5nXCJcbiAgICA+XG4gICAgICB7eyBjb25maXJtVGV4dCB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGFtcGxpZnktYnV0dG9uXG4gICAgICBzaXplPVwic21hbGxcIlxuICAgICAgdmFyaWF0aW9uPVwibGlua1wiXG4gICAgICBmb250V2VpZ2h0PVwibm9ybWFsXCJcbiAgICAgIGZ1bGxXaWR0aD1cInRydWVcIlxuICAgICAgKGNsaWNrKT1cImF1dGhlbnRpY2F0b3IudG9TaWduSW4oKVwiXG4gICAgPlxuICAgICAge3sgYmFja1RvU2lnbkluVGV4dCB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxhbXBsaWZ5LWVycm9yICpuZ0lmPVwiYXV0aGVudGljYXRvci5lcnJvclwiPlxuICAgICAge3sgYXV0aGVudGljYXRvci5lcnJvciB9fVxuICAgIDwvYW1wbGlmeS1lcnJvcj5cbiAgPC9maWVsZHNldD5cbiAgPGFtcGxpZnktc2xvdCBuYW1lPVwic2V0dXAtdG90cC1mb290ZXJcIiBbY29udGV4dF09XCJjb250ZXh0XCI+IDwvYW1wbGlmeS1zbG90PlxuPC9mb3JtPlxuIl19
@@ -61,6 +61,10 @@ export class AuthenticatorService {
61
61
  var _a;
62
62
  return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.codeDeliveryDetails;
63
63
  }
64
+ get totpSecretCode() {
65
+ var _a;
66
+ return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.totpSecretCode;
67
+ }
64
68
  /**
65
69
  * Service facades
66
70
  */
@@ -141,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
141
145
  providedIn: 'root', // ensure we have a singleton service
142
146
  }]
143
147
  }], ctorParameters: function () { return []; } });
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL2F1dGhlbnRpY2F0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQyxPQUFPLEVBS0wsMEJBQTBCLEVBQzFCLGdCQUFnQixHQUNqQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBUyxTQUFTLEVBQWdCLE1BQU0sUUFBUSxDQUFDO0FBRXhELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFNUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFM0M7O0dBRUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBTS9CO1FBQ0UsTUFBTSxPQUFPLEdBQUcsMEJBQTBCLEVBQUUsQ0FBQztRQUU3QyxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFL0MsSUFBSSxDQUFDLG9CQUFvQixHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtZQUNuRSxNQUFNLFFBQVEsR0FBRyxLQUF5QixDQUFDO1lBQzNDLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1lBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsZ0JBQWdCLENBQUM7Z0JBQzlCLElBQUksRUFBRSxXQUFXLENBQUMsSUFBSTtnQkFDdEIsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQztJQUNsQyxD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QUMsT0FBTyxJQUN2QjtJQUNKLENBQUM7SUFFTSxTQUFTLENBQUMsUUFBa0M7UUFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDdEIsTUFBTSxDQUFDLEtBQUssQ0FDVix1SEFBdUgsQ0FDeEgsQ0FBQztTQUNIO1FBRUQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3BELFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRUQsd0NBQXdDO0lBQ2pDLElBQUksQ0FBQyxLQUF1QjtRQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDOztrSEE5SlUsb0JBQW9CO3NIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs0RkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU0sRUFBRSxxQ0FBcUM7aUJBQzFEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2dnZXIgfSBmcm9tICdAYXdzLWFtcGxpZnkvY29yZSc7XG5pbXBvcnQge1xuICBBdXRoQ29udGV4dCxcbiAgQXV0aEV2ZW50LFxuICBBdXRoSW50ZXJwcmV0ZXIsXG4gIEF1dGhNYWNoaW5lU3RhdGUsXG4gIGNyZWF0ZUF1dGhlbnRpY2F0b3JNYWNoaW5lLFxuICBnZXRTZXJ2aWNlRmFjYWRlLFxufSBmcm9tICdAYXdzLWFtcGxpZnkvdWknO1xuaW1wb3J0IHsgRXZlbnQsIGludGVycHJldCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAneHN0YXRlJztcbmltcG9ydCB7IEF1dGhTdWJzY3JpcHRpb25DYWxsYmFjayB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdAYXdzLWFtcGxpZnkvdWknO1xuXG5jb25zdCBsb2dnZXIgPSBuZXcgTG9nZ2VyKCdzdGF0ZS1tYWNoaW5lJyk7XG5cbi8qKlxuICogQXV0aGVudGljYXRvclNlcnZpY2UgcHJvdmlkZXMgYWNjZXNzIHRvIHRoZSBhdXRoZW50aWNhdG9yIHN0YXRlIGFuZCBjb250ZXh0LlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290JywgLy8gZW5zdXJlIHdlIGhhdmUgYSBzaW5nbGV0b24gc2VydmljZVxufSlcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdG9yU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2F1dGhTdGF0ZTogQXV0aE1hY2hpbmVTdGF0ZTtcbiAgcHJpdmF0ZSBfYXV0aFNlcnZpY2U6IEF1dGhJbnRlcnByZXRlcjtcbiAgcHJpdmF0ZSBfbWFjaGluZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF9mYWNhZGU6IFJldHVyblR5cGU8dHlwZW9mIGdldFNlcnZpY2VGYWNhZGU+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IG1hY2hpbmUgPSBjcmVhdGVBdXRoZW50aWNhdG9yTWFjaGluZSgpO1xuXG4gICAgY29uc3QgYXV0aFNlcnZpY2UgPSBpbnRlcnByZXQobWFjaGluZSkuc3RhcnQoKTtcblxuICAgIHRoaXMuX21hY2hpbmVTdWJzY3JpcHRpb24gPSBhdXRoU2VydmljZS5zdWJzY3JpYmUoKHN0YXRlOiB1bmtub3duKSA9PiB7XG4gICAgICBjb25zdCBuZXdTdGF0ZSA9IHN0YXRlIGFzIEF1dGhNYWNoaW5lU3RhdGU7XG4gICAgICB0aGlzLl9hdXRoU3RhdGUgPSBuZXdTdGF0ZTtcbiAgICAgIHRoaXMuX2ZhY2FkZSA9IGdldFNlcnZpY2VGYWNhZGUoe1xuICAgICAgICBzZW5kOiBhdXRoU2VydmljZS5zZW5kLFxuICAgICAgICBzdGF0ZTogbmV3U3RhdGUsXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2F1dGhTZXJ2aWNlID0gYXV0aFNlcnZpY2U7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fbWFjaGluZVN1YnNjcmlwdGlvbikgdGhpcy5fbWFjaGluZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnRleHQgZmFjYWRlc1xuICAgKi9cblxuICBwdWJsaWMgZ2V0IGVycm9yKCkge1xuICAgIHJldHVybiB0cmFuc2xhdGUodGhpcy5fZmFjYWRlPy5lcnJvcik7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1ZhbGlkYXRpb25FcnJvcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8uaGFzVmFsaWRhdGlvbkVycm9ycztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNQZW5kaW5nKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGU/LmlzUGVuZGluZztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcm91dGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8ucm91dGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGF1dGhTdGF0dXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8uYXV0aFN0YXR1cztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdXNlcigpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy51c2VyO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWxpZGF0aW9uRXJyb3JzKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGU/LnZhbGlkYXRpb25FcnJvcnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvZGVEZWxpdmVyeURldGFpbHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8uY29kZURlbGl2ZXJ5RGV0YWlscztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIGZhY2FkZXNcbiAgICovXG5cbiAgcHVibGljIGdldCBpbml0aWFsaXplTWFjaGluZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLmluaXRpYWxpemVNYWNoaW5lO1xuICB9XG5cbiAgcHVibGljIGdldCB1cGRhdGVGb3JtKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUudXBkYXRlRm9ybTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdXBkYXRlQmx1cigpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnVwZGF0ZUJsdXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc2VuZENvZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZS5yZXNlbmRDb2RlO1xuICB9XG5cbiAgcHVibGljIGdldCBzaWduT3V0KCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUuc2lnbk91dDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3VibWl0Rm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnN1Ym1pdEZvcm07XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNpdGlvbiBmYWNhZGVzXG4gICAqL1xuXG4gIHB1YmxpYyBnZXQgdG9GZWRlcmF0ZWRTaWduSW4oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZS50b0ZlZGVyYXRlZFNpZ25JbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG9SZXNldFBhc3N3b3JkKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUudG9SZXNldFBhc3N3b3JkO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1NpZ25JbigpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnRvU2lnbkluO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1NpZ25VcCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnRvU2lnblVwO1xuICB9XG5cbiAgcHVibGljIGdldCBza2lwVmVyaWZpY2F0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUuc2tpcFZlcmlmaWNhdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCB1dGlsaXR5IGZ1bmN0aW9uc1xuICAgKi9cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFN0YXRlKCk6IEF1dGhNYWNoaW5lU3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9hdXRoU3RhdGU7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFNlcnZpY2UoKTogQXV0aEludGVycHJldGVyIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2U7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpOiBBdXRoQ29udGV4dCB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dGhTdGF0ZS5jb250ZXh0O1xuICB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIEZvciBpbnRlcm5hbCB1c2Ugb25seSAqL1xuICBwdWJsaWMgZ2V0IHNsb3RDb250ZXh0KCkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi50aGlzLl9mYWNhZGUsXG4gICAgICAkaW1wbGljaXQ6IHRoaXMuX2ZhY2FkZSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN1YnNjcmliZShjYWxsYmFjazogQXV0aFN1YnNjcmlwdGlvbkNhbGxiYWNrKTogU3Vic2NyaXB0aW9uIHtcbiAgICBpZiAoIXRoaXMuX2F1dGhTZXJ2aWNlKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoXG4gICAgICAgICdTdWJzY3JpcHRpb24gYXR0ZW1wdGVkIGJlZm9yZSBtYWNoaW5lIHdhcyBjcmVhdGVkLiBUaGlzIGlzIGxpa2VseSBhIGJ1ZyBvbiB0aGUgbGlicmFyeSwgcGxlYXNlIGNvbnNpZGVyIGZpbGluZyBhIGJ1Zy4nXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuX2F1dGhTZXJ2aWNlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjYWxsYmFjayh0aGlzLl9mYWNhZGUpO1xuICAgIH0pO1xuICAgIHJldHVybiBzdWJzY3JpcHRpb247XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBzZW5kKGV2ZW50OiBFdmVudDxBdXRoRXZlbnQ+KSB7XG4gICAgdGhpcy5hdXRoU2VydmljZS5zZW5kKGV2ZW50KTtcbiAgfVxufVxuIl19
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL2F1dGhlbnRpY2F0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQyxPQUFPLEVBS0wsMEJBQTBCLEVBQzFCLGdCQUFnQixHQUNqQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBUyxTQUFTLEVBQWdCLE1BQU0sUUFBUSxDQUFDO0FBRXhELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFNUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFM0M7O0dBRUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBTS9CO1FBQ0UsTUFBTSxPQUFPLEdBQUcsMEJBQTBCLEVBQUUsQ0FBQztRQUU3QyxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFL0MsSUFBSSxDQUFDLG9CQUFvQixHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtZQUNuRSxNQUFNLFFBQVEsR0FBRyxLQUF5QixDQUFDO1lBQzNDLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1lBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsZ0JBQWdCLENBQUM7Z0JBQzlCLElBQUksRUFBRSxXQUFXLENBQUMsSUFBSTtnQkFDdEIsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQztJQUNsQyxD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RCx3Q0FBd0M7SUFDeEMsSUFBVyxXQUFXO1FBQ3BCLHVDQUNLLElBQUksQ0FBQyxPQUFPLEtBQ2YsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLElBQ3ZCO0lBQ0osQ0FBQztJQUVNLFNBQVMsQ0FBQyxRQUFrQztRQUNqRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN0QixNQUFNLENBQUMsS0FBSyxDQUNWLHVIQUF1SCxDQUN4SCxDQUFDO1NBQ0g7UUFFRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDcEQsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCx3Q0FBd0M7SUFDakMsSUFBSSxDQUFDLEtBQXVCO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7O2tIQWxLVSxvQkFBb0I7c0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTSxFQUFFLHFDQUFxQztpQkFDMUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gJ0Bhd3MtYW1wbGlmeS9jb3JlJztcbmltcG9ydCB7XG4gIEF1dGhDb250ZXh0LFxuICBBdXRoRXZlbnQsXG4gIEF1dGhJbnRlcnByZXRlcixcbiAgQXV0aE1hY2hpbmVTdGF0ZSxcbiAgY3JlYXRlQXV0aGVudGljYXRvck1hY2hpbmUsXG4gIGdldFNlcnZpY2VGYWNhZGUsXG59IGZyb20gJ0Bhd3MtYW1wbGlmeS91aSc7XG5pbXBvcnQgeyBFdmVudCwgaW50ZXJwcmV0LCBTdWJzY3JpcHRpb24gfSBmcm9tICd4c3RhdGUnO1xuaW1wb3J0IHsgQXV0aFN1YnNjcmlwdGlvbkNhbGxiYWNrIH0gZnJvbSAnLi4vY29tbW9uJztcbmltcG9ydCB7IHRyYW5zbGF0ZSB9IGZyb20gJ0Bhd3MtYW1wbGlmeS91aSc7XG5cbmNvbnN0IGxvZ2dlciA9IG5ldyBMb2dnZXIoJ3N0YXRlLW1hY2hpbmUnKTtcblxuLyoqXG4gKiBBdXRoZW50aWNhdG9yU2VydmljZSBwcm92aWRlcyBhY2Nlc3MgdG8gdGhlIGF1dGhlbnRpY2F0b3Igc3RhdGUgYW5kIGNvbnRleHQuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLCAvLyBlbnN1cmUgd2UgaGF2ZSBhIHNpbmdsZXRvbiBzZXJ2aWNlXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0b3JTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfYXV0aFN0YXRlOiBBdXRoTWFjaGluZVN0YXRlO1xuICBwcml2YXRlIF9hdXRoU2VydmljZTogQXV0aEludGVycHJldGVyO1xuICBwcml2YXRlIF9tYWNoaW5lU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgX2ZhY2FkZTogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0U2VydmljZUZhY2FkZT47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgbWFjaGluZSA9IGNyZWF0ZUF1dGhlbnRpY2F0b3JNYWNoaW5lKCk7XG5cbiAgICBjb25zdCBhdXRoU2VydmljZSA9IGludGVycHJldChtYWNoaW5lKS5zdGFydCgpO1xuXG4gICAgdGhpcy5fbWFjaGluZVN1YnNjcmlwdGlvbiA9IGF1dGhTZXJ2aWNlLnN1YnNjcmliZSgoc3RhdGU6IHVua25vd24pID0+IHtcbiAgICAgIGNvbnN0IG5ld1N0YXRlID0gc3RhdGUgYXMgQXV0aE1hY2hpbmVTdGF0ZTtcbiAgICAgIHRoaXMuX2F1dGhTdGF0ZSA9IG5ld1N0YXRlO1xuICAgICAgdGhpcy5fZmFjYWRlID0gZ2V0U2VydmljZUZhY2FkZSh7XG4gICAgICAgIHNlbmQ6IGF1dGhTZXJ2aWNlLnNlbmQsXG4gICAgICAgIHN0YXRlOiBuZXdTdGF0ZSxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fYXV0aFNlcnZpY2UgPSBhdXRoU2VydmljZTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9tYWNoaW5lU3Vic2NyaXB0aW9uKSB0aGlzLl9tYWNoaW5lU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udGV4dCBmYWNhZGVzXG4gICAqL1xuXG4gIHB1YmxpYyBnZXQgZXJyb3IoKSB7XG4gICAgcmV0dXJuIHRyYW5zbGF0ZSh0aGlzLl9mYWNhZGU/LmVycm9yKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzVmFsaWRhdGlvbkVycm9ycygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5oYXNWYWxpZGF0aW9uRXJyb3JzO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1BlbmRpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8uaXNQZW5kaW5nO1xuICB9XG5cbiAgcHVibGljIGdldCByb3V0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5yb3V0ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0aFN0YXR1cygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5hdXRoU3RhdHVzO1xuICB9XG5cbiAgcHVibGljIGdldCB1c2VyKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGU/LnVzZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbGlkYXRpb25FcnJvcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8udmFsaWRhdGlvbkVycm9ycztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29kZURlbGl2ZXJ5RGV0YWlscygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5jb2RlRGVsaXZlcnlEZXRhaWxzO1xuICB9XG5cbiAgcHVibGljIGdldCB0b3RwU2VjcmV0Q29kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy50b3RwU2VjcmV0Q29kZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIGZhY2FkZXNcbiAgICovXG5cbiAgcHVibGljIGdldCBpbml0aWFsaXplTWFjaGluZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLmluaXRpYWxpemVNYWNoaW5lO1xuICB9XG5cbiAgcHVibGljIGdldCB1cGRhdGVGb3JtKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUudXBkYXRlRm9ybTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdXBkYXRlQmx1cigpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnVwZGF0ZUJsdXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc2VuZENvZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZS5yZXNlbmRDb2RlO1xuICB9XG5cbiAgcHVibGljIGdldCBzaWduT3V0KCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUuc2lnbk91dDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3VibWl0Rm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnN1Ym1pdEZvcm07XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNpdGlvbiBmYWNhZGVzXG4gICAqL1xuXG4gIHB1YmxpYyBnZXQgdG9GZWRlcmF0ZWRTaWduSW4oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZS50b0ZlZGVyYXRlZFNpZ25JbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG9SZXNldFBhc3N3b3JkKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUudG9SZXNldFBhc3N3b3JkO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1NpZ25JbigpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnRvU2lnbkluO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1NpZ25VcCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlLnRvU2lnblVwO1xuICB9XG5cbiAgcHVibGljIGdldCBza2lwVmVyaWZpY2F0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGUuc2tpcFZlcmlmaWNhdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCB1dGlsaXR5IGZ1bmN0aW9uc1xuICAgKi9cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFN0YXRlKCk6IEF1dGhNYWNoaW5lU3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9hdXRoU3RhdGU7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFNlcnZpY2UoKTogQXV0aEludGVycHJldGVyIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2U7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpOiBBdXRoQ29udGV4dCB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dGhTdGF0ZS5jb250ZXh0O1xuICB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIEZvciBpbnRlcm5hbCB1c2Ugb25seSAqL1xuICBwdWJsaWMgZ2V0IHNsb3RDb250ZXh0KCkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi50aGlzLl9mYWNhZGUsXG4gICAgICAkaW1wbGljaXQ6IHRoaXMuX2ZhY2FkZSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN1YnNjcmliZShjYWxsYmFjazogQXV0aFN1YnNjcmlwdGlvbkNhbGxiYWNrKTogU3Vic2NyaXB0aW9uIHtcbiAgICBpZiAoIXRoaXMuX2F1dGhTZXJ2aWNlKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoXG4gICAgICAgICdTdWJzY3JpcHRpb24gYXR0ZW1wdGVkIGJlZm9yZSBtYWNoaW5lIHdhcyBjcmVhdGVkLiBUaGlzIGlzIGxpa2VseSBhIGJ1ZyBvbiB0aGUgbGlicmFyeSwgcGxlYXNlIGNvbnNpZGVyIGZpbGluZyBhIGJ1Zy4nXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuX2F1dGhTZXJ2aWNlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjYWxsYmFjayh0aGlzLl9mYWNhZGUpO1xuICAgIH0pO1xuICAgIHJldHVybiBzdWJzY3JpcHRpb247XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBzZW5kKGV2ZW50OiBFdmVudDxBdXRoRXZlbnQ+KSB7XG4gICAgdGhpcy5hdXRoU2VydmljZS5zZW5kKGV2ZW50KTtcbiAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
- export const VERSION = '3.2.5';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3VpLWFuZ3VsYXIvc3JjL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzMuMi41JztcbiJdfQ==
1
+ export const VERSION = '3.2.7';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3VpLWFuZ3VsYXIvc3JjL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzMuMi43JztcbiJdfQ==
@@ -10,7 +10,7 @@ import { interpret } from 'xstate';
10
10
  import { nanoid } from 'nanoid';
11
11
  import classnames from 'classnames';
12
12
  import QRCode from 'qrcode';
13
- import { Logger as Logger$1, Auth } from 'aws-amplify';
13
+ import { Logger as Logger$1 } from 'aws-amplify';
14
14
 
15
15
  class AmplifySlotDirective {
16
16
  constructor(template) {
@@ -54,7 +54,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
54
54
  }]
55
55
  }] });
56
56
 
57
- const VERSION = '3.2.5';
57
+ const VERSION = '3.2.7';
58
58
 
59
59
  const logger$1 = new Logger('state-machine');
60
60
  /**
@@ -113,6 +113,10 @@ class AuthenticatorService {
113
113
  var _a;
114
114
  return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.codeDeliveryDetails;
115
115
  }
116
+ get totpSecretCode() {
117
+ var _a;
118
+ return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.totpSecretCode;
119
+ }
116
120
  /**
117
121
  * Service facades
118
122
  */
@@ -911,7 +915,7 @@ class SetupTotpComponent {
911
915
  this.dataAttr = '';
912
916
  this.headerText = getSetupTOTPText();
913
917
  this.qrCodeSource = '';
914
- this.secretKey = '';
918
+ this.totpSecretCode = '';
915
919
  this.copyTextLabel = getCopyText();
916
920
  // translated texts
917
921
  this.backToSignInText = getBackToSignInText$3();
@@ -928,14 +932,12 @@ class SetupTotpComponent {
928
932
  generateQRCode() {
929
933
  var _a, _b;
930
934
  return __awaiter(this, void 0, void 0, function* () {
931
- // TODO: This should be handled in core.
932
- const state = this.authenticator.authState;
933
- const actorContext = getActorContext(state);
934
- const { user, formFields } = actorContext;
935
+ const { authState: state, totpSecretCode, user } = this.authenticator;
936
+ const { formFields } = getActorContext(state);
935
937
  const { totpIssuer = 'AWSCognito', totpUsername = user === null || user === void 0 ? void 0 : user.username } = (_b = (_a = formFields === null || formFields === void 0 ? void 0 : formFields.setupTOTP) === null || _a === void 0 ? void 0 : _a.QR) !== null && _b !== void 0 ? _b : {};
938
+ this.totpSecretCode = totpSecretCode;
936
939
  try {
937
- this.secretKey = yield Auth.setupTOTP(user);
938
- const totpCode = getTotpCodeURL(totpIssuer, totpUsername, this.secretKey);
940
+ const totpCode = getTotpCodeURL(totpIssuer, totpUsername, this.totpSecretCode);
939
941
  logger.info('totp code was generated:', totpCode);
940
942
  this.qrCodeSource = yield QRCode.toDataURL(totpCode);
941
943
  }
@@ -954,12 +956,12 @@ class SetupTotpComponent {
954
956
  this.authenticator.submitForm(getFormDataFromEvent(event));
955
957
  }
956
958
  copyText() {
957
- navigator.clipboard.writeText(this.secretKey);
959
+ navigator.clipboard.writeText(this.totpSecretCode);
958
960
  this.copyTextLabel = getCopiedText();
959
961
  }
960
962
  }
961
963
  SetupTotpComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SetupTotpComponent, deps: [{ token: AuthenticatorService }], target: i0.ɵɵFactoryTarget.Component });
962
- SetupTotpComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SetupTotpComponent, selector: "amplify-setup-totp", host: { properties: { "attr.data-amplify-authenticator-setup-totp": "this.dataAttr" } }, ngImport: i0, template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"setup-totp-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <p *ngIf=\"!qrCodeSource\">Loading...</p>\n <img\n *ngIf=\"qrCodeSource\"\n [src]=\"qrCodeSource\"\n alt=\"qr code\"\n data-amplify-qrcode\n width=\"228\"\n height=\"228\"\n />\n <div class=\"amplify-flex\" data-amplify-copy>\n <div>{{ secretKey }}</div>\n <div data-amplify-copy-svg (click)=\"copyText()\">\n <div data-amplify-copy-tooltip>{{ copyTextLabel }}</div>\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16 1H4C2.9 1 2 1.9 2 3V17H4V3H16V1ZM15 5H8C6.9 5 6.01 5.9 6.01 7L6 21C6 22.1 6.89 23 7.99 23H19C20.1 23 21 22.1 21 21V11L15 5ZM8 21V7H14V12H19V21H8Z\"\n />\n </svg>\n </div>\n </div>\n\n <amplify-base-form-fields route=\"setupTOTP\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"setup-totp-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n", components: [{ type: AmplifySlotComponent, selector: "amplify-slot", inputs: ["name", "context"] }, { type: BaseFormFieldsComponent, selector: "amplify-base-form-fields", inputs: ["route"] }, { type: ButtonComponent, selector: "button[amplify-button]", inputs: ["type", "fullWidth", "isDisabled", "size", "variation", "fontWeight"] }, { type: ErrorComponent, selector: "amplify-error" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
964
+ SetupTotpComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SetupTotpComponent, selector: "amplify-setup-totp", host: { properties: { "attr.data-amplify-authenticator-setup-totp": "this.dataAttr" } }, ngImport: i0, template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"setup-totp-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <p *ngIf=\"!qrCodeSource\">Loading...</p>\n <img\n *ngIf=\"qrCodeSource\"\n [src]=\"qrCodeSource\"\n alt=\"qr code\"\n data-amplify-qrcode\n width=\"228\"\n height=\"228\"\n />\n <div class=\"amplify-flex\" data-amplify-copy>\n <div>{{ totpSecretCode }}</div>\n <div data-amplify-copy-svg (click)=\"copyText()\">\n <div data-amplify-copy-tooltip>{{ copyTextLabel }}</div>\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16 1H4C2.9 1 2 1.9 2 3V17H4V3H16V1ZM15 5H8C6.9 5 6.01 5.9 6.01 7L6 21C6 22.1 6.89 23 7.99 23H19C20.1 23 21 22.1 21 21V11L15 5ZM8 21V7H14V12H19V21H8Z\"\n />\n </svg>\n </div>\n </div>\n\n <amplify-base-form-fields route=\"setupTOTP\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"setup-totp-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n", components: [{ type: AmplifySlotComponent, selector: "amplify-slot", inputs: ["name", "context"] }, { type: BaseFormFieldsComponent, selector: "amplify-base-form-fields", inputs: ["route"] }, { type: ButtonComponent, selector: "button[amplify-button]", inputs: ["type", "fullWidth", "isDisabled", "size", "variation", "fontWeight"] }, { type: ErrorComponent, selector: "amplify-error" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
963
965
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SetupTotpComponent, decorators: [{
964
966
  type: Component,
965
967
  args: [{