@aws-amplify/ui-angular 2.3.14 → 2.4.1
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.
- package/aws-amplify-ui-angular.metadata.json +1 -1
- package/bundles/aws-amplify-ui-angular.umd.js +54 -8
- package/bundles/aws-amplify-ui-angular.umd.js.map +1 -1
- package/bundles/aws-amplify-ui-angular.umd.min.js +1 -1
- package/bundles/aws-amplify-ui-angular.umd.min.js.map +1 -1
- package/esm2015/lib/components/authenticator/components/authenticator/authenticator.component.js +39 -5
- package/esm2015/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.js +11 -4
- package/esm2015/lib/components/authenticator/components/setup-totp/setup-totp.component.js +2 -2
- package/esm2015/lib/services/authenticator.service.js +6 -5
- package/fesm2015/aws-amplify-ui-angular.js +52 -10
- package/fesm2015/aws-amplify-ui-angular.js.map +1 -1
- package/lib/components/authenticator/components/authenticator/authenticator.component.d.ts +7 -2
- package/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.d.ts +8 -1
- package/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.d.ts +2 -0
- package/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.d.ts +2 -0
- package/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.d.ts +2 -0
- package/lib/components/authenticator/components/force-new-password/force-new-password.component.d.ts +2 -0
- package/lib/components/authenticator/components/reset-password/reset-password.component.d.ts +2 -0
- package/lib/components/authenticator/components/setup-totp/setup-totp.component.d.ts +2 -0
- package/lib/components/authenticator/components/sign-in/sign-in.component.d.ts +2 -0
- package/lib/components/authenticator/components/sign-up/sign-up.component.d.ts +2 -0
- package/lib/components/authenticator/components/verify-user/verify-user.component.d.ts +2 -0
- package/lib/services/authenticator.service.d.ts +3 -1
- package/package.json +2 -2
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
2
|
import { AuthenticatorService } from '../../../../services/authenticator.service';
|
|
3
|
-
import { getFormDataFromEvent, translate, } from '@aws-amplify/ui';
|
|
3
|
+
import { getFormDataFromEvent, hasTranslation, translate, } from '@aws-amplify/ui';
|
|
4
4
|
export class ConfirmResetPasswordComponent {
|
|
5
5
|
constructor(authenticator) {
|
|
6
6
|
this.authenticator = authenticator;
|
|
7
7
|
this.dataAttr = '';
|
|
8
8
|
this.headerText = translate('Reset your password');
|
|
9
9
|
// translated strings
|
|
10
|
-
this.sendCodeText = translate('Send Code');
|
|
11
10
|
this.backToSignInText = translate('Back to Sign In');
|
|
12
11
|
this.resendCodeText = translate('Resend Code');
|
|
12
|
+
/**
|
|
13
|
+
* Support backwards compatibility for erroneous 'Send Code' text
|
|
14
|
+
* See https://github.com/aws-amplify/amplify-ui/issues/1784
|
|
15
|
+
* TODO: Remove support for 'Send Code' translation in next Major release
|
|
16
|
+
*/
|
|
17
|
+
this.submitText = hasTranslation('Submit')
|
|
18
|
+
? translate('Submit')
|
|
19
|
+
: translate('Send Code');
|
|
13
20
|
}
|
|
14
21
|
get context() {
|
|
15
22
|
return this.authenticator.slotContext;
|
|
@@ -27,7 +34,7 @@ export class ConfirmResetPasswordComponent {
|
|
|
27
34
|
ConfirmResetPasswordComponent.decorators = [
|
|
28
35
|
{ type: Component, args: [{
|
|
29
36
|
selector: 'amplify-confirm-reset-password',
|
|
30
|
-
template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex\"\n style=\"flex-direction: column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-reset-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading\">{{ headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields\n route=\"confirmResetPassword\"\n ></amplify-base-form-fields>\n\n <button amplify-button variation=\"primary\" fullWidth=\"true\" type=\"submit\">\n {{
|
|
37
|
+
template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex\"\n style=\"flex-direction: column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-reset-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading\">{{ headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields\n route=\"confirmResetPassword\"\n ></amplify-base-form-fields>\n\n <button amplify-button variation=\"primary\" fullWidth=\"true\" type=\"submit\">\n {{ submitText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n type=\"button\"\n (click)=\"authenticator.resendCode()\"\n >\n {{ resendCodeText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"confirm-reset-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n"
|
|
31
38
|
},] }
|
|
32
39
|
];
|
|
33
40
|
ConfirmResetPasswordComponent.ctorParameters = () => [
|
|
@@ -37,4 +44,4 @@ ConfirmResetPasswordComponent.propDecorators = {
|
|
|
37
44
|
dataAttr: [{ type: HostBinding, args: ['attr.data-amplify-authenticator-confirmsignin',] }],
|
|
38
45
|
headerText: [{ type: Input }]
|
|
39
46
|
};
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGlmeS1jb25maXJtLXJlc2V0LXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2F1dGhlbnRpY2F0b3IvY29tcG9uZW50cy9jb25maXJtLXJlc2V0LXBhc3N3b3JkL2FtcGxpZnktY29uZmlybS1yZXNldC1wYXNzd29yZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2xGLE9BQU8sRUFFTCxvQkFBb0IsRUFDcEIsY0FBYyxFQUNkLFNBQVMsR0FDVixNQUFNLGlCQUFpQixDQUFDO0FBTXpCLE1BQU0sT0FBTyw2QkFBNkI7SUFpQnhDLFlBQW1CLGFBQW1DO1FBQW5DLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQWhCUSxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQzVELGVBQVUsR0FBRyxTQUFTLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUU5RCxxQkFBcUI7UUFDZCxxQkFBZ0IsR0FBRyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoRCxtQkFBYyxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUVqRDs7OztXQUlHO1FBQ0ksZUFBVSxHQUFHLGNBQWMsQ0FBQyxRQUFRLENBQUM7WUFDMUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7WUFDckIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUU4QixDQUFDO0lBRTFELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBWTtRQUNsQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBcUIsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN2RCxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxRQUFRLENBQUMsS0FBWTtRQUNuQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDOzs7WUFwQ0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQ0FBZ0M7Z0JBQzFDLDZtQ0FBOEQ7YUFDL0Q7OztZQVhRLG9CQUFvQjs7O3VCQWExQixXQUFXLFNBQUMsK0NBQStDO3lCQUMzRCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9hdXRoZW50aWNhdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgRm9ybUZpZWxkc0FycmF5LFxuICBnZXRGb3JtRGF0YUZyb21FdmVudCxcbiAgaGFzVHJhbnNsYXRpb24sXG4gIHRyYW5zbGF0ZSxcbn0gZnJvbSAnQGF3cy1hbXBsaWZ5L3VpJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYW1wbGlmeS1jb25maXJtLXJlc2V0LXBhc3N3b3JkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FtcGxpZnktY29uZmlybS1yZXNldC1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1SZXNldFBhc3N3b3JkQ29tcG9uZW50IHtcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtYW1wbGlmeS1hdXRoZW50aWNhdG9yLWNvbmZpcm1zaWduaW4nKSBkYXRhQXR0ciA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgaGVhZGVyVGV4dCA9IHRyYW5zbGF0ZSgnUmVzZXQgeW91ciBwYXNzd29yZCcpO1xuXG4gIC8vIHRyYW5zbGF0ZWQgc3RyaW5nc1xuICBwdWJsaWMgYmFja1RvU2lnbkluVGV4dCA9IHRyYW5zbGF0ZSgnQmFjayB0byBTaWduIEluJyk7XG4gIHB1YmxpYyByZXNlbmRDb2RlVGV4dCA9IHRyYW5zbGF0ZSgnUmVzZW5kIENvZGUnKTtcbiAgcHVibGljIHNvcnRlZEZvcm1GaWVsZHM6IEZvcm1GaWVsZHNBcnJheTtcbiAgLyoqXG4gICAqIFN1cHBvcnQgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgZm9yIGVycm9uZW91cyAnU2VuZCBDb2RlJyB0ZXh0XG4gICAqIFNlZSBodHRwczovL2dpdGh1Yi5jb20vYXdzLWFtcGxpZnkvYW1wbGlmeS11aS9pc3N1ZXMvMTc4NFxuICAgKiBUT0RPOiBSZW1vdmUgc3VwcG9ydCBmb3IgJ1NlbmQgQ29kZScgdHJhbnNsYXRpb24gaW4gbmV4dCBNYWpvciByZWxlYXNlXG4gICAqL1xuICBwdWJsaWMgc3VibWl0VGV4dCA9IGhhc1RyYW5zbGF0aW9uKCdTdWJtaXQnKVxuICAgID8gdHJhbnNsYXRlKCdTdWJtaXQnKVxuICAgIDogdHJhbnNsYXRlKCdTZW5kIENvZGUnKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgYXV0aGVudGljYXRvcjogQXV0aGVudGljYXRvclNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGdldCBjb250ZXh0KCkge1xuICAgIHJldHVybiB0aGlzLmF1dGhlbnRpY2F0b3Iuc2xvdENvbnRleHQ7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgeyBuYW1lLCB2YWx1ZSB9ID0gPEhUTUxJbnB1dEVsZW1lbnQ+ZXZlbnQudGFyZ2V0O1xuICAgIHRoaXMuYXV0aGVudGljYXRvci51cGRhdGVGb3JtKHsgbmFtZSwgdmFsdWUgfSk7XG4gIH1cblxuICBvblN1Ym1pdChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuYXV0aGVudGljYXRvci5zdWJtaXRGb3JtKGdldEZvcm1EYXRhRnJvbUV2ZW50KGV2ZW50KSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -35,7 +35,7 @@ export class SetupTotpComponent {
|
|
|
35
35
|
this.secretKey = yield Auth.setupTOTP(user);
|
|
36
36
|
const issuer = (_c = (_b = (_a = this.formOverrides) === null || _a === void 0 ? void 0 : _a['QR']) === null || _b === void 0 ? void 0 : _b.totpIssuer) !== null && _c !== void 0 ? _c : 'AWSCognito';
|
|
37
37
|
const username = (_f = (_e = (_d = this.formOverrides) === null || _d === void 0 ? void 0 : _d['QR']) === null || _e === void 0 ? void 0 : _e.totpUsername) !== null && _f !== void 0 ? _f : user.username;
|
|
38
|
-
const totpCode = `otpauth://totp/${issuer}:${username}?secret=${this.secretKey}&issuer=${issuer}
|
|
38
|
+
const totpCode = encodeURI(`otpauth://totp/${issuer}:${username}?secret=${this.secretKey}&issuer=${issuer}`);
|
|
39
39
|
logger.info('totp code was generated:', totpCode);
|
|
40
40
|
this.qrCodeSource = yield QRCode.toDataURL(totpCode);
|
|
41
41
|
}
|
|
@@ -70,4 +70,4 @@ SetupTotpComponent.ctorParameters = () => [
|
|
|
70
70
|
SetupTotpComponent.propDecorators = {
|
|
71
71
|
dataAttr: [{ type: HostBinding, args: ['attr.data-amplify-authenticator-setup-totp',] }]
|
|
72
72
|
};
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtdG90cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdXRoZW50aWNhdG9yL2NvbXBvbmVudHMvc2V0dXAtdG90cC9zZXR1cC10b3RwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFHTCxlQUFlLEVBQ2Ysb0JBQW9CLEdBRXJCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBTXZDLE1BQU0sT0FBTyxrQkFBa0I7SUFhN0IsWUFBbUIsYUFBbUM7UUFBbkMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBWkssYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNsRSxlQUFVLEdBQUcsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JDLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixrQkFBYSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV6QyxtQkFBbUI7UUFDWixxQkFBZ0IsR0FBRyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoRCxnQkFBVyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUllLENBQUM7SUFFMUQsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7SUFDeEMsQ0FBQztJQUVLLGNBQWM7OztZQUNsQix3Q0FBd0M7WUFDeEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7WUFDM0MsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBa0IsQ0FBQztZQUM3RCxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsWUFBWSxDQUFDO1lBQzlCLElBQUk7Z0JBQ0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzVDLE1BQU0sTUFBTSxxQkFBRyxJQUFJLENBQUMsYUFBYSwwQ0FBRyxJQUFJLDJDQUFHLFVBQVUsbUNBQUksWUFBWSxDQUFDO2dCQUN0RSxNQUFNLFFBQVEscUJBQ1osSUFBSSxDQUFDLGFBQWEsMENBQUcsSUFBSSwyQ0FBRyxZQUFZLG1DQUFJLElBQUksQ0FBQyxRQUFRLENBQUM7Z0JBQzVELE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FDeEIsa0JBQWtCLE1BQU0sSUFBSSxRQUFRLFdBQVcsSUFBSSxDQUFDLFNBQVMsV0FBVyxNQUFNLEVBQUUsQ0FDakYsQ0FBQztnQkFFRixNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN0RDtZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDbkI7O0tBQ0Y7SUFFRCxPQUFPLENBQUMsS0FBWTtRQUNsQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBcUIsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN2RCxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxRQUFRLENBQUMsS0FBWTtRQUNuQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsUUFBUTtRQUNOLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDOzs7WUE5REYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLDQxREFBMEM7YUFDM0M7OztZQVJRLG9CQUFvQjs7O3VCQVUxQixXQUFXLFNBQUMsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgUVJDb2RlIGZyb20gJ3FyY29kZSc7XG5pbXBvcnQgeyBBdXRoLCBMb2dnZXIgfSBmcm9tICdhd3MtYW1wbGlmeSc7XG5pbXBvcnQge1xuICBGb3JtRmllbGRzLFxuICBGb3JtRmllbGRzQXJyYXksXG4gIGdldEFjdG9yQ29udGV4dCxcbiAgZ2V0Rm9ybURhdGFGcm9tRXZlbnQsXG4gIFNpZ25JbkNvbnRleHQsXG59IGZyb20gJ0Bhd3MtYW1wbGlmeS91aSc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdG9yU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2F1dGhlbnRpY2F0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdAYXdzLWFtcGxpZnkvdWknO1xuXG5jb25zdCBsb2dnZXIgPSBuZXcgTG9nZ2VyKCdTZXR1cFRvdHAnKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYW1wbGlmeS1zZXR1cC10b3RwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NldHVwLXRvdHAuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTZXR1cFRvdHBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1hbXBsaWZ5LWF1dGhlbnRpY2F0b3Itc2V0dXAtdG90cCcpIGRhdGFBdHRyID0gJyc7XG4gIHB1YmxpYyBoZWFkZXJUZXh0ID0gdHJhbnNsYXRlKCdTZXR1cCBUT1RQJyk7XG4gIHB1YmxpYyBxckNvZGVTb3VyY2UgPSAnJztcbiAgcHVibGljIHNlY3JldEtleSA9ICcnO1xuICBwdWJsaWMgY29weVRleHRMYWJlbCA9IHRyYW5zbGF0ZSgnQ09QWScpO1xuXG4gIC8vIHRyYW5zbGF0ZWQgdGV4dHNcbiAgcHVibGljIGJhY2tUb1NpZ25JblRleHQgPSB0cmFuc2xhdGUoJ0JhY2sgdG8gU2lnbiBJbicpO1xuICBwdWJsaWMgY29uZmlybVRleHQgPSB0cmFuc2xhdGUoJ0NvbmZpcm0nKTtcbiAgcHVibGljIHNvcnRlZEZvcm1GaWVsZHM6IEZvcm1GaWVsZHNBcnJheTtcbiAgcHVibGljIGZvcm1PdmVycmlkZXM6IEZvcm1GaWVsZHM7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGF1dGhlbnRpY2F0b3I6IEF1dGhlbnRpY2F0b3JTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZ2VuZXJhdGVRUkNvZGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoZW50aWNhdG9yLnNsb3RDb250ZXh0O1xuICB9XG5cbiAgYXN5bmMgZ2VuZXJhdGVRUkNvZGUoKSB7XG4gICAgLy8gVE9ETzogVGhpcyBzaG91bGQgYmUgaGFuZGxlZCBpbiBjb3JlLlxuICAgIGNvbnN0IHN0YXRlID0gdGhpcy5hdXRoZW50aWNhdG9yLmF1dGhTdGF0ZTtcbiAgICBjb25zdCBhY3RvckNvbnRleHQgPSBnZXRBY3RvckNvbnRleHQoc3RhdGUpIGFzIFNpZ25JbkNvbnRleHQ7XG4gICAgY29uc3QgeyB1c2VyIH0gPSBhY3RvckNvbnRleHQ7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc2VjcmV0S2V5ID0gYXdhaXQgQXV0aC5zZXR1cFRPVFAodXNlcik7XG4gICAgICBjb25zdCBpc3N1ZXIgPSB0aGlzLmZvcm1PdmVycmlkZXM/LlsnUVInXT8udG90cElzc3VlciA/PyAnQVdTQ29nbml0byc7XG4gICAgICBjb25zdCB1c2VybmFtZSA9XG4gICAgICAgIHRoaXMuZm9ybU92ZXJyaWRlcz8uWydRUiddPy50b3RwVXNlcm5hbWUgPz8gdXNlci51c2VybmFtZTtcbiAgICAgIGNvbnN0IHRvdHBDb2RlID0gZW5jb2RlVVJJKFxuICAgICAgICBgb3RwYXV0aDovL3RvdHAvJHtpc3N1ZXJ9OiR7dXNlcm5hbWV9P3NlY3JldD0ke3RoaXMuc2VjcmV0S2V5fSZpc3N1ZXI9JHtpc3N1ZXJ9YFxuICAgICAgKTtcblxuICAgICAgbG9nZ2VyLmluZm8oJ3RvdHAgY29kZSB3YXMgZ2VuZXJhdGVkOicsIHRvdHBDb2RlKTtcbiAgICAgIHRoaXMucXJDb2RlU291cmNlID0gYXdhaXQgUVJDb2RlLnRvRGF0YVVSTCh0b3RwQ29kZSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoZXJyKTtcbiAgICB9XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgeyBuYW1lLCB2YWx1ZSB9ID0gPEhUTUxJbnB1dEVsZW1lbnQ+ZXZlbnQudGFyZ2V0O1xuICAgIHRoaXMuYXV0aGVudGljYXRvci51cGRhdGVGb3JtKHsgbmFtZSwgdmFsdWUgfSk7XG4gIH1cblxuICBvblN1Ym1pdChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuYXV0aGVudGljYXRvci5zdWJtaXRGb3JtKGdldEZvcm1EYXRhRnJvbUV2ZW50KGV2ZW50KSk7XG4gIH1cblxuICBjb3B5VGV4dCgpOiB2b2lkIHtcbiAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh0aGlzLnNlY3JldEtleSk7XG4gICAgdGhpcy5jb3B5VGV4dExhYmVsID0gdHJhbnNsYXRlKCdDT1BJRUQnKTtcbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { Logger } from '@aws-amplify/core';
|
|
3
|
-
import { createAuthenticatorMachine, getSendEventAliases, getServiceContextFacade,
|
|
3
|
+
import { createAuthenticatorMachine, getSendEventAliases, getServiceContextFacade, } from '@aws-amplify/ui';
|
|
4
4
|
import { interpret } from 'xstate';
|
|
5
5
|
import { translate } from '@aws-amplify/ui';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -16,15 +16,12 @@ export class AuthenticatorService {
|
|
|
16
16
|
this._authState = state;
|
|
17
17
|
this._facade = getServiceContextFacade(state);
|
|
18
18
|
});
|
|
19
|
-
this._hubSubscription = listenToAuthHub(authService.send);
|
|
20
19
|
this._sendEventAliases = getSendEventAliases(authService.send);
|
|
21
20
|
this._authService = authService;
|
|
22
21
|
}
|
|
23
22
|
ngOnDestroy() {
|
|
24
23
|
if (this._machineSubscription)
|
|
25
24
|
this._machineSubscription.unsubscribe();
|
|
26
|
-
if (this._hubSubscription)
|
|
27
|
-
this._hubSubscription();
|
|
28
25
|
}
|
|
29
26
|
/**
|
|
30
27
|
* Context facades
|
|
@@ -45,6 +42,10 @@ export class AuthenticatorService {
|
|
|
45
42
|
var _a;
|
|
46
43
|
return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.route;
|
|
47
44
|
}
|
|
45
|
+
get authStatus() {
|
|
46
|
+
var _a;
|
|
47
|
+
return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.authStatus;
|
|
48
|
+
}
|
|
48
49
|
get user() {
|
|
49
50
|
var _a;
|
|
50
51
|
return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.user;
|
|
@@ -134,4 +135,4 @@ AuthenticatorService.decorators = [
|
|
|
134
135
|
},] }
|
|
135
136
|
];
|
|
136
137
|
AuthenticatorService.ctorParameters = () => [];
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL2F1dGhlbnRpY2F0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQyxPQUFPLEVBS0wsMEJBQTBCLEVBQzFCLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDdkIsZUFBZSxHQUNoQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBUyxTQUFTLEVBQWdCLE1BQU0sUUFBUSxDQUFDO0FBRXhELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFNUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFM0M7O0dBRUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBUS9CO1FBQ0UsTUFBTSxPQUFPLEdBQUcsMEJBQTBCLEVBQUUsQ0FBQztRQUU3QyxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFL0MsSUFBSSxDQUFDLG9CQUFvQixHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMxRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztZQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGVBQWUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDLFdB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QVcsS0FDZCxTQUFTLG9CQUFPLFdBQVcsS0FDM0I7SUFDSixDQUFDO0lBRUQsd0NBQXdDO0lBQ2pDLFNBQVMsQ0FBQyxRQUFrQztRQUNqRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUM5QzthQUFNO1lBQ0wsTUFBTSxDQUFDLEtBQUssQ0FDVix1SEFBdUgsQ0FDeEgsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELHdDQUF3QztJQUNqQyxJQUFJLENBQUMsS0FBdUI7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7OztZQTdKRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gJ0Bhd3MtYW1wbGlmeS9jb3JlJztcbmltcG9ydCB7XG4gIEF1dGhDb250ZXh0LFxuICBBdXRoRXZlbnQsXG4gIEF1dGhJbnRlcnByZXRlcixcbiAgQXV0aE1hY2hpbmVTdGF0ZSxcbiAgY3JlYXRlQXV0aGVudGljYXRvck1hY2hpbmUsXG4gIGdldFNlbmRFdmVudEFsaWFzZXMsXG4gIGdldFNlcnZpY2VDb250ZXh0RmFjYWRlLFxuICBsaXN0ZW5Ub0F1dGhIdWIsXG59IGZyb20gJ0Bhd3MtYW1wbGlmeS91aSc7XG5pbXBvcnQgeyBFdmVudCwgaW50ZXJwcmV0LCBTdWJzY3JpcHRpb24gfSBmcm9tICd4c3RhdGUnO1xuaW1wb3J0IHsgQXV0aFN1YnNjcmlwdGlvbkNhbGxiYWNrIH0gZnJvbSAnLi4vY29tbW9uJztcbmltcG9ydCB7IHRyYW5zbGF0ZSB9IGZyb20gJ0Bhd3MtYW1wbGlmeS91aSc7XG5cbmNvbnN0IGxvZ2dlciA9IG5ldyBMb2dnZXIoJ3N0YXRlLW1hY2hpbmUnKTtcblxuLyoqXG4gKiBBdXRoZW50aWNhdG9yU2VydmljZSBwcm92aWRlcyBhY2Nlc3MgdG8gdGhlIGF1dGhlbnRpY2F0b3Igc3RhdGUgYW5kIGNvbnRleHQuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLCAvLyBlbnN1cmUgd2UgaGF2ZSBhIHNpbmdsZXRvbiBzZXJ2aWNlXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0b3JTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfYXV0aFN0YXRlOiBBdXRoTWFjaGluZVN0YXRlO1xuICBwcml2YXRlIF9hdXRoU2VydmljZTogQXV0aEludGVycHJldGVyO1xuICBwcml2YXRlIF9zZW5kRXZlbnRBbGlhc2VzOiBSZXR1cm5UeXBlPHR5cGVvZiBnZXRTZW5kRXZlbnRBbGlhc2VzPjtcbiAgcHJpdmF0ZSBfbWFjaGluZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF9odWJTdWJzY3JpcHRpb246IFJldHVyblR5cGU8dHlwZW9mIGxpc3RlblRvQXV0aEh1Yj47XG4gIHByaXZhdGUgX2ZhY2FkZTogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0U2VydmljZUNvbnRleHRGYWNhZGU+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IG1hY2hpbmUgPSBjcmVhdGVBdXRoZW50aWNhdG9yTWFjaGluZSgpO1xuXG4gICAgY29uc3QgYXV0aFNlcnZpY2UgPSBpbnRlcnByZXQobWFjaGluZSkuc3RhcnQoKTtcblxuICAgIHRoaXMuX21hY2hpbmVTdWJzY3JpcHRpb24gPSBhdXRoU2VydmljZS5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICB0aGlzLl9hdXRoU3RhdGUgPSBzdGF0ZTtcbiAgICAgIHRoaXMuX2ZhY2FkZSA9IGdldFNlcnZpY2VDb250ZXh0RmFjYWRlKHN0YXRlKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2h1YlN1YnNjcmlwdGlvbiA9IGxpc3RlblRvQXV0aEh1YihhdXRoU2VydmljZS5zZW5kKTtcbiAgICB0aGlzLl9zZW5kRXZlbnRBbGlhc2VzID0gZ2V0U2VuZEV2ZW50QWxpYXNlcyhhdXRoU2VydmljZS5zZW5kKTtcbiAgICB0aGlzLl9hdXRoU2VydmljZSA9IGF1dGhTZXJ2aWNlO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX21hY2hpbmVTdWJzY3JpcHRpb24pIHRoaXMuX21hY2hpbmVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICBpZiAodGhpcy5faHViU3Vic2NyaXB0aW9uKSB0aGlzLl9odWJTdWJzY3JpcHRpb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb250ZXh0IGZhY2FkZXNcbiAgICovXG5cbiAgcHVibGljIGdldCBlcnJvcigpIHtcbiAgICByZXR1cm4gdHJhbnNsYXRlKHRoaXMuX2ZhY2FkZT8uZXJyb3IpO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNWYWxpZGF0aW9uRXJyb3JzKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGU/Lmhhc1ZhbGlkYXRpb25FcnJvcnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzUGVuZGluZygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5pc1BlbmRpbmc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJvdXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGU/LnJvdXRlO1xuICB9XG5cbiAgcHVibGljIGdldCB1c2VyKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGU/LnVzZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbGlkYXRpb25FcnJvcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8udmFsaWRhdGlvbkVycm9ycztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29kZURlbGl2ZXJ5RGV0YWlscygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5jb2RlRGVsaXZlcnlEZXRhaWxzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgZmFjYWRlc1xuICAgKi9cblxuICBwdWJsaWMgZ2V0IHVwZGF0ZUZvcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMudXBkYXRlRm9ybTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdXBkYXRlQmx1cigpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZEV2ZW50QWxpYXNlcy51cGRhdGVCbHVyO1xuICB9XG5cbiAgcHVibGljIGdldCByZXNlbmRDb2RlKCkge1xuICAgIHJldHVybiB0aGlzLl9zZW5kRXZlbnRBbGlhc2VzLnJlc2VuZENvZGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpZ25PdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMuc2lnbk91dDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3VibWl0Rm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZEV2ZW50QWxpYXNlcy5zdWJtaXRGb3JtO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zaXRpb24gZmFjYWRlc1xuICAgKi9cblxuICBwdWJsaWMgZ2V0IHRvRmVkZXJhdGVkU2lnbkluKCkge1xuICAgIHJldHVybiB0aGlzLl9zZW5kRXZlbnRBbGlhc2VzLnRvRmVkZXJhdGVkU2lnbkluO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1Jlc2V0UGFzc3dvcmQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMudG9SZXNldFBhc3N3b3JkO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1NpZ25JbigpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZEV2ZW50QWxpYXNlcy50b1NpZ25JbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG9TaWduVXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMudG9TaWduVXA7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNraXBWZXJpZmljYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMuc2tpcFZlcmlmaWNhdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCB1dGlsaXR5IGZ1bmN0aW9uc1xuICAgKi9cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFN0YXRlKCk6IEF1dGhNYWNoaW5lU3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9hdXRoU3RhdGU7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFNlcnZpY2UoKTogQXV0aEludGVycHJldGVyIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2U7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpOiBBdXRoQ29udGV4dCB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dGhTdGF0ZS5jb250ZXh0O1xuICB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIEZvciBpbnRlcm5hbCB1c2Ugb25seSAqL1xuICBwdWJsaWMgZ2V0IHNsb3RDb250ZXh0KCkge1xuICAgIGNvbnN0IHNsb3RDb250ZXh0ID0ge1xuICAgICAgLi4udGhpcy5fZmFjYWRlLFxuICAgICAgLi4udGhpcy5fc2VuZEV2ZW50QWxpYXNlcyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnNsb3RDb250ZXh0LFxuICAgICAgJGltcGxpY2l0OiB7IC4uLnNsb3RDb250ZXh0IH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCBGb3IgaW50ZXJuYWwgdXNlIG9ubHkgKi9cbiAgcHVibGljIHN1YnNjcmliZShjYWxsYmFjazogQXV0aFN1YnNjcmlwdGlvbkNhbGxiYWNrKSB7XG4gICAgaWYgKHRoaXMuX2F1dGhTZXJ2aWNlKSB7XG4gICAgICByZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2Uuc3Vic2NyaWJlKGNhbGxiYWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICAnU3Vic2NyaXB0aW9uIGF0dGVtcHRlZCBiZWZvcmUgbWFjaGluZSB3YXMgY3JlYXRlZC4gVGhpcyBpcyBsaWtlbHkgYSBidWcgb24gdGhlIGxpYnJhcnksIHBsZWFzZSBjb25zaWRlciBmaWxpbmcgYSBidWcuJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBzZW5kKGV2ZW50OiBFdmVudDxBdXRoRXZlbnQ+KSB7XG4gICAgdGhpcy5hdXRoU2VydmljZS5zZW5kKGV2ZW50KTtcbiAgfVxufVxuIl19
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL2F1dGhlbnRpY2F0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQyxPQUFPLEVBS0wsMEJBQTBCLEVBQzFCLG1CQUFtQixFQUNuQix1QkFBdUIsR0FFeEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQVMsU0FBUyxFQUFnQixNQUFNLFFBQVEsQ0FBQztBQUV4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRTVDLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBRTNDOztHQUVHO0FBSUgsTUFBTSxPQUFPLG9CQUFvQjtJQU8vQjtRQUNFLE1BQU0sT0FBTyxHQUFHLDBCQUEwQixFQUFFLENBQUM7UUFFN0MsTUFBTSxXQUFXLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRS9DLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDMUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7SUFDbEMsQ0FBQztJQUVE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QUMsUUFBa0M7UUFDakQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDOUM7YUFBTTtZQUNMLE1BQU0sQ0FBQyxLQUFLLENBQ1YsdUhBQXVILENBQ3hILENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCx3Q0FBd0M7SUFDakMsSUFBSSxDQUFDLEtBQXVCO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7Ozs7WUE5SkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2dnZXIgfSBmcm9tICdAYXdzLWFtcGxpZnkvY29yZSc7XG5pbXBvcnQge1xuICBBdXRoQ29udGV4dCxcbiAgQXV0aEV2ZW50LFxuICBBdXRoSW50ZXJwcmV0ZXIsXG4gIEF1dGhNYWNoaW5lU3RhdGUsXG4gIGNyZWF0ZUF1dGhlbnRpY2F0b3JNYWNoaW5lLFxuICBnZXRTZW5kRXZlbnRBbGlhc2VzLFxuICBnZXRTZXJ2aWNlQ29udGV4dEZhY2FkZSxcbiAgbGlzdGVuVG9BdXRoSHViLFxufSBmcm9tICdAYXdzLWFtcGxpZnkvdWknO1xuaW1wb3J0IHsgRXZlbnQsIGludGVycHJldCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAneHN0YXRlJztcbmltcG9ydCB7IEF1dGhTdWJzY3JpcHRpb25DYWxsYmFjayB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdAYXdzLWFtcGxpZnkvdWknO1xuXG5jb25zdCBsb2dnZXIgPSBuZXcgTG9nZ2VyKCdzdGF0ZS1tYWNoaW5lJyk7XG5cbi8qKlxuICogQXV0aGVudGljYXRvclNlcnZpY2UgcHJvdmlkZXMgYWNjZXNzIHRvIHRoZSBhdXRoZW50aWNhdG9yIHN0YXRlIGFuZCBjb250ZXh0LlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290JywgLy8gZW5zdXJlIHdlIGhhdmUgYSBzaW5nbGV0b24gc2VydmljZVxufSlcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdG9yU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2F1dGhTdGF0ZTogQXV0aE1hY2hpbmVTdGF0ZTtcbiAgcHJpdmF0ZSBfYXV0aFNlcnZpY2U6IEF1dGhJbnRlcnByZXRlcjtcbiAgcHJpdmF0ZSBfc2VuZEV2ZW50QWxpYXNlczogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0U2VuZEV2ZW50QWxpYXNlcz47XG4gIHByaXZhdGUgX21hY2hpbmVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBfZmFjYWRlOiBSZXR1cm5UeXBlPHR5cGVvZiBnZXRTZXJ2aWNlQ29udGV4dEZhY2FkZT47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgbWFjaGluZSA9IGNyZWF0ZUF1dGhlbnRpY2F0b3JNYWNoaW5lKCk7XG5cbiAgICBjb25zdCBhdXRoU2VydmljZSA9IGludGVycHJldChtYWNoaW5lKS5zdGFydCgpO1xuXG4gICAgdGhpcy5fbWFjaGluZVN1YnNjcmlwdGlvbiA9IGF1dGhTZXJ2aWNlLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcbiAgICAgIHRoaXMuX2F1dGhTdGF0ZSA9IHN0YXRlO1xuICAgICAgdGhpcy5fZmFjYWRlID0gZ2V0U2VydmljZUNvbnRleHRGYWNhZGUoc3RhdGUpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fc2VuZEV2ZW50QWxpYXNlcyA9IGdldFNlbmRFdmVudEFsaWFzZXMoYXV0aFNlcnZpY2Uuc2VuZCk7XG4gICAgdGhpcy5fYXV0aFNlcnZpY2UgPSBhdXRoU2VydmljZTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9tYWNoaW5lU3Vic2NyaXB0aW9uKSB0aGlzLl9tYWNoaW5lU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udGV4dCBmYWNhZGVzXG4gICAqL1xuXG4gIHB1YmxpYyBnZXQgZXJyb3IoKSB7XG4gICAgcmV0dXJuIHRyYW5zbGF0ZSh0aGlzLl9mYWNhZGU/LmVycm9yKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzVmFsaWRhdGlvbkVycm9ycygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5oYXNWYWxpZGF0aW9uRXJyb3JzO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1BlbmRpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8uaXNQZW5kaW5nO1xuICB9XG5cbiAgcHVibGljIGdldCByb3V0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5yb3V0ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0aFN0YXR1cygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5hdXRoU3RhdHVzO1xuICB9XG5cbiAgcHVibGljIGdldCB1c2VyKCkge1xuICAgIHJldHVybiB0aGlzLl9mYWNhZGU/LnVzZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbGlkYXRpb25FcnJvcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZhY2FkZT8udmFsaWRhdGlvbkVycm9ycztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29kZURlbGl2ZXJ5RGV0YWlscygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmFjYWRlPy5jb2RlRGVsaXZlcnlEZXRhaWxzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgZmFjYWRlc1xuICAgKi9cblxuICBwdWJsaWMgZ2V0IHVwZGF0ZUZvcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMudXBkYXRlRm9ybTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdXBkYXRlQmx1cigpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZEV2ZW50QWxpYXNlcy51cGRhdGVCbHVyO1xuICB9XG5cbiAgcHVibGljIGdldCByZXNlbmRDb2RlKCkge1xuICAgIHJldHVybiB0aGlzLl9zZW5kRXZlbnRBbGlhc2VzLnJlc2VuZENvZGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpZ25PdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMuc2lnbk91dDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3VibWl0Rm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZEV2ZW50QWxpYXNlcy5zdWJtaXRGb3JtO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zaXRpb24gZmFjYWRlc1xuICAgKi9cblxuICBwdWJsaWMgZ2V0IHRvRmVkZXJhdGVkU2lnbkluKCkge1xuICAgIHJldHVybiB0aGlzLl9zZW5kRXZlbnRBbGlhc2VzLnRvRmVkZXJhdGVkU2lnbkluO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1Jlc2V0UGFzc3dvcmQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMudG9SZXNldFBhc3N3b3JkO1xuICB9XG5cbiAgcHVibGljIGdldCB0b1NpZ25JbigpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZEV2ZW50QWxpYXNlcy50b1NpZ25JbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG9TaWduVXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMudG9TaWduVXA7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNraXBWZXJpZmljYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRFdmVudEFsaWFzZXMuc2tpcFZlcmlmaWNhdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCB1dGlsaXR5IGZ1bmN0aW9uc1xuICAgKi9cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFN0YXRlKCk6IEF1dGhNYWNoaW5lU3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9hdXRoU3RhdGU7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgYXV0aFNlcnZpY2UoKTogQXV0aEludGVycHJldGVyIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2U7XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpOiBBdXRoQ29udGV4dCB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dGhTdGF0ZS5jb250ZXh0O1xuICB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIEZvciBpbnRlcm5hbCB1c2Ugb25seSAqL1xuICBwdWJsaWMgZ2V0IHNsb3RDb250ZXh0KCkge1xuICAgIGNvbnN0IHNsb3RDb250ZXh0ID0ge1xuICAgICAgLi4udGhpcy5fZmFjYWRlLFxuICAgICAgLi4udGhpcy5fc2VuZEV2ZW50QWxpYXNlcyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnNsb3RDb250ZXh0LFxuICAgICAgJGltcGxpY2l0OiB7IC4uLnNsb3RDb250ZXh0IH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCBGb3IgaW50ZXJuYWwgdXNlIG9ubHkgKi9cbiAgcHVibGljIHN1YnNjcmliZShjYWxsYmFjazogQXV0aFN1YnNjcmlwdGlvbkNhbGxiYWNrKSB7XG4gICAgaWYgKHRoaXMuX2F1dGhTZXJ2aWNlKSB7XG4gICAgICByZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2Uuc3Vic2NyaWJlKGNhbGxiYWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICAnU3Vic2NyaXB0aW9uIGF0dGVtcHRlZCBiZWZvcmUgbWFjaGluZSB3YXMgY3JlYXRlZC4gVGhpcyBpcyBsaWtlbHkgYSBidWcgb24gdGhlIGxpYnJhcnksIHBsZWFzZSBjb25zaWRlciBmaWxpbmcgYSBidWcuJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGRlcHJlY2F0ZWQgRm9yIGludGVybmFsIHVzZSBvbmx5ICovXG4gIHB1YmxpYyBzZW5kKGV2ZW50OiBFdmVudDxBdXRoRXZlbnQ+KSB7XG4gICAgdGhpcy5hdXRoU2VydmljZS5zZW5kKGV2ZW50KTtcbiAgfVxufVxuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, TemplateRef, Input, Injectable, Component, ViewEncapsulation, ContentChildren, HostBinding, EventEmitter, Output, NgModule } from '@angular/core';
|
|
2
|
+
import { Directive, TemplateRef, Input, Injectable, Component, ViewEncapsulation, ChangeDetectorRef, ContentChildren, HostBinding, EventEmitter, Output, NgModule } from '@angular/core';
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { createAuthenticatorMachine, getServiceContextFacade,
|
|
4
|
+
import { createAuthenticatorMachine, getServiceContextFacade, getSendEventAliases, translate, listenToAuthHub, hasTranslation, getFormDataFromEvent, getActorContext, AuthChallengeNames, FederatedIdentityProviders, countryDialCodes, getErrors, defaultFormFieldOptions, getActorState, getSortedFormFields, getDefaultFormFields, applyDefaults, sortFormFields } 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';
|
|
@@ -63,15 +63,12 @@ class AuthenticatorService {
|
|
|
63
63
|
this._authState = state;
|
|
64
64
|
this._facade = getServiceContextFacade(state);
|
|
65
65
|
});
|
|
66
|
-
this._hubSubscription = listenToAuthHub(authService.send);
|
|
67
66
|
this._sendEventAliases = getSendEventAliases(authService.send);
|
|
68
67
|
this._authService = authService;
|
|
69
68
|
}
|
|
70
69
|
ngOnDestroy() {
|
|
71
70
|
if (this._machineSubscription)
|
|
72
71
|
this._machineSubscription.unsubscribe();
|
|
73
|
-
if (this._hubSubscription)
|
|
74
|
-
this._hubSubscription();
|
|
75
72
|
}
|
|
76
73
|
/**
|
|
77
74
|
* Context facades
|
|
@@ -92,6 +89,10 @@ class AuthenticatorService {
|
|
|
92
89
|
var _a;
|
|
93
90
|
return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.route;
|
|
94
91
|
}
|
|
92
|
+
get authStatus() {
|
|
93
|
+
var _a;
|
|
94
|
+
return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.authStatus;
|
|
95
|
+
}
|
|
95
96
|
get user() {
|
|
96
97
|
var _a;
|
|
97
98
|
return (_a = this._facade) === null || _a === void 0 ? void 0 : _a.user;
|
|
@@ -183,23 +184,54 @@ AuthenticatorService.decorators = [
|
|
|
183
184
|
AuthenticatorService.ctorParameters = () => [];
|
|
184
185
|
|
|
185
186
|
class AuthenticatorComponent {
|
|
186
|
-
constructor(authenticator, contextService) {
|
|
187
|
+
constructor(authenticator, contextService, changeDetector) {
|
|
187
188
|
this.authenticator = authenticator;
|
|
188
189
|
this.contextService = contextService;
|
|
190
|
+
this.changeDetector = changeDetector;
|
|
189
191
|
this.customComponentQuery = null;
|
|
190
192
|
// translated texts
|
|
191
193
|
this.signInTitle = translate('Sign In');
|
|
192
194
|
this.signUpTitle = translate('Create Account');
|
|
193
195
|
this.hasInitialized = false;
|
|
196
|
+
this.isHandlingHubEvent = false;
|
|
194
197
|
}
|
|
195
198
|
ngOnInit() {
|
|
196
199
|
const { initialState, loginMechanisms, services, signUpAttributes, socialProviders, formFields, } = this;
|
|
200
|
+
this.unsubscribeHub = listenToAuthHub((event) => {
|
|
201
|
+
/**
|
|
202
|
+
* Hub events aren't properly caught by Angular, because they are
|
|
203
|
+
* synchronous events. Angular tracks async network events and
|
|
204
|
+
* html events, but not synchronous events like hub.
|
|
205
|
+
*
|
|
206
|
+
* On any notable hub events, we run change detection manually.
|
|
207
|
+
*/
|
|
208
|
+
const state = this.authenticator.authService.send(event);
|
|
209
|
+
this.changeDetector.detectChanges();
|
|
210
|
+
/**
|
|
211
|
+
* Hub events that we handle can lead to multiple state changes:
|
|
212
|
+
* e.g. `authenticated` -> `signOut` -> initialState.
|
|
213
|
+
*
|
|
214
|
+
* We want to ensure change detection runs all the way, until
|
|
215
|
+
* we reach back to the initial state. Setting the below flag
|
|
216
|
+
* to true to until we reach initial state.
|
|
217
|
+
*/
|
|
218
|
+
this.isHandlingHubEvent = true;
|
|
219
|
+
return state;
|
|
220
|
+
});
|
|
197
221
|
/**
|
|
198
222
|
* Subscribes to state machine changes and sends INIT event
|
|
199
223
|
* once machine reaches 'setup' state.
|
|
200
224
|
*/
|
|
201
225
|
this.unsubscribeMachine = this.authenticator.subscribe(() => {
|
|
202
226
|
const { route } = this.authenticator;
|
|
227
|
+
if (this.isHandlingHubEvent) {
|
|
228
|
+
this.changeDetector.detectChanges();
|
|
229
|
+
const initialStateWithDefault = initialState !== null && initialState !== void 0 ? initialState : 'signIn';
|
|
230
|
+
// We can stop manual change detection if we're back to the initial state
|
|
231
|
+
if (route === initialStateWithDefault) {
|
|
232
|
+
this.isHandlingHubEvent = false;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
203
235
|
if (!this.hasInitialized && route === 'setup') {
|
|
204
236
|
this.authenticator.send({
|
|
205
237
|
type: 'INIT',
|
|
@@ -231,6 +263,8 @@ class AuthenticatorComponent {
|
|
|
231
263
|
ngOnDestroy() {
|
|
232
264
|
if (this.unsubscribeMachine)
|
|
233
265
|
this.unsubscribeMachine();
|
|
266
|
+
if (this.unsubscribeHub)
|
|
267
|
+
this.unsubscribeHub();
|
|
234
268
|
}
|
|
235
269
|
/**
|
|
236
270
|
* Class Functions
|
|
@@ -275,7 +309,8 @@ AuthenticatorComponent.decorators = [
|
|
|
275
309
|
];
|
|
276
310
|
AuthenticatorComponent.ctorParameters = () => [
|
|
277
311
|
{ type: AuthenticatorService },
|
|
278
|
-
{ type: CustomComponentsService }
|
|
312
|
+
{ type: CustomComponentsService },
|
|
313
|
+
{ type: ChangeDetectorRef }
|
|
279
314
|
];
|
|
280
315
|
AuthenticatorComponent.propDecorators = {
|
|
281
316
|
formFields: [{ type: Input }],
|
|
@@ -295,9 +330,16 @@ class ConfirmResetPasswordComponent {
|
|
|
295
330
|
this.dataAttr = '';
|
|
296
331
|
this.headerText = translate('Reset your password');
|
|
297
332
|
// translated strings
|
|
298
|
-
this.sendCodeText = translate('Send Code');
|
|
299
333
|
this.backToSignInText = translate('Back to Sign In');
|
|
300
334
|
this.resendCodeText = translate('Resend Code');
|
|
335
|
+
/**
|
|
336
|
+
* Support backwards compatibility for erroneous 'Send Code' text
|
|
337
|
+
* See https://github.com/aws-amplify/amplify-ui/issues/1784
|
|
338
|
+
* TODO: Remove support for 'Send Code' translation in next Major release
|
|
339
|
+
*/
|
|
340
|
+
this.submitText = hasTranslation('Submit')
|
|
341
|
+
? translate('Submit')
|
|
342
|
+
: translate('Send Code');
|
|
301
343
|
}
|
|
302
344
|
get context() {
|
|
303
345
|
return this.authenticator.slotContext;
|
|
@@ -315,7 +357,7 @@ class ConfirmResetPasswordComponent {
|
|
|
315
357
|
ConfirmResetPasswordComponent.decorators = [
|
|
316
358
|
{ type: Component, args: [{
|
|
317
359
|
selector: 'amplify-confirm-reset-password',
|
|
318
|
-
template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex\"\n style=\"flex-direction: column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-reset-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading\">{{ headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields\n route=\"confirmResetPassword\"\n ></amplify-base-form-fields>\n\n <button amplify-button variation=\"primary\" fullWidth=\"true\" type=\"submit\">\n {{
|
|
360
|
+
template: "<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex\"\n style=\"flex-direction: column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-reset-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading\">{{ headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields\n route=\"confirmResetPassword\"\n ></amplify-base-form-fields>\n\n <button amplify-button variation=\"primary\" fullWidth=\"true\" type=\"submit\">\n {{ submitText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n type=\"button\"\n (click)=\"authenticator.resendCode()\"\n >\n {{ resendCodeText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"confirm-reset-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n"
|
|
319
361
|
},] }
|
|
320
362
|
];
|
|
321
363
|
ConfirmResetPasswordComponent.ctorParameters = () => [
|
|
@@ -686,7 +728,7 @@ class SetupTotpComponent {
|
|
|
686
728
|
this.secretKey = yield Auth.setupTOTP(user);
|
|
687
729
|
const issuer = (_c = (_b = (_a = this.formOverrides) === null || _a === void 0 ? void 0 : _a['QR']) === null || _b === void 0 ? void 0 : _b.totpIssuer) !== null && _c !== void 0 ? _c : 'AWSCognito';
|
|
688
730
|
const username = (_f = (_e = (_d = this.formOverrides) === null || _d === void 0 ? void 0 : _d['QR']) === null || _e === void 0 ? void 0 : _e.totpUsername) !== null && _f !== void 0 ? _f : user.username;
|
|
689
|
-
const totpCode = `otpauth://totp/${issuer}:${username}?secret=${this.secretKey}&issuer=${issuer}
|
|
731
|
+
const totpCode = encodeURI(`otpauth://totp/${issuer}:${username}?secret=${this.secretKey}&issuer=${issuer}`);
|
|
690
732
|
logger.info('totp code was generated:', totpCode);
|
|
691
733
|
this.qrCodeSource = yield QRCode.toDataURL(totpCode);
|
|
692
734
|
}
|