@firestitch/2fa 18.0.29 → 18.0.31
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/app/modules/verification/verification.module.d.ts +8 -0
- package/esm2022/app/modules/manage/components/emails/emails.component.mjs +3 -3
- package/esm2022/app/modules/manage/components/manage-methods/manage-methods.component.mjs +3 -3
- package/esm2022/app/modules/manage/components/numbers/numbers.component.mjs +3 -3
- package/esm2022/app/modules/verification/verification.module.mjs +25 -0
- package/esm2022/app/modules/verification-setup/views/verify/verify.component.mjs +8 -8
- package/esm2022/public_api.mjs +2 -1
- package/fesm2022/firestitch-2fa.mjs +28 -7
- package/fesm2022/firestitch-2fa.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -0
|
@@ -875,7 +875,7 @@ class EmailsComponent {
|
|
|
875
875
|
}
|
|
876
876
|
}
|
|
877
877
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: EmailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
878
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: EmailsComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "verificationMethods", first: true, predicate: VerificationMethodsComponent, descendants: true }], ngImport: i0, template: "<fs-dialog>\n <h1 mat-dialog-title>\n Emails\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Email\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n
|
|
878
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: EmailsComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "verificationMethods", first: true, predicate: VerificationMethodsComponent, descendants: true }], ngImport: i0, template: "<fs-dialog>\n <h1 mat-dialog-title>\n Emails\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Email\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n Done\n </button>\n <button\n mat-button\n (click)=\"add()\"\n type=\"button\">\n Add email\n </button>\n </mat-dialog-actions>\n</fs-dialog>", styles: [""], dependencies: [{ kind: "ngmodule", type: FsDialogModule }, { kind: "directive", type: i1$2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i2$1.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout", "dock", "dockable", "fullscreenPercent"] }, { kind: "component", type: VerificationMethodsComponent, selector: "fs-2fa-verification-methods", inputs: ["type", "accountVerify", "verificationMethodsFetch", "verificationMethodDelete", "verificationMethodDefault", "twoFactorManageService"], outputs: ["deleted"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i2.FsButtonDirective, selector: "[mat-raised-button]:not([fsFormButtonStandalone]),[mat-button]:not([fsFormButtonStandalone]),[mat-flat-button]:not([fsFormButtonStandalone]),[mat-stroked-button]:not([fsFormButtonStandalone])", inputs: ["name", "dirtySubmit", "form"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
879
879
|
}
|
|
880
880
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: EmailsComponent, decorators: [{
|
|
881
881
|
type: Component,
|
|
@@ -889,7 +889,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
889
889
|
MatButton,
|
|
890
890
|
FsFormModule,
|
|
891
891
|
MatDialogClose,
|
|
892
|
-
], template: "<fs-dialog>\n <h1 mat-dialog-title>\n Emails\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Email\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n
|
|
892
|
+
], template: "<fs-dialog>\n <h1 mat-dialog-title>\n Emails\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Email\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n Done\n </button>\n <button\n mat-button\n (click)=\"add()\"\n type=\"button\">\n Add email\n </button>\n </mat-dialog-actions>\n</fs-dialog>" }]
|
|
893
893
|
}], ctorParameters: () => [], propDecorators: { verificationMethods: [{
|
|
894
894
|
type: ViewChild,
|
|
895
895
|
args: [VerificationMethodsComponent]
|
|
@@ -921,7 +921,7 @@ class NumbersComponent {
|
|
|
921
921
|
}
|
|
922
922
|
}
|
|
923
923
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: NumbersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
924
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: NumbersComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "verificationMethods", first: true, predicate: VerificationMethodsComponent, descendants: true }], ngImport: i0, template: "<fs-dialog>\n <h1 mat-dialog-title>\n Text message numbers\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Sms\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n
|
|
924
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: NumbersComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "verificationMethods", first: true, predicate: VerificationMethodsComponent, descendants: true }], ngImport: i0, template: "<fs-dialog>\n <h1 mat-dialog-title>\n Text message numbers\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Sms\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n Done\n </button>\n <button\n mat-button\n (click)=\"add()\"\n type=\"button\">\n Add number\n </button>\n </mat-dialog-actions>\n</fs-dialog>", styles: [""], dependencies: [{ kind: "ngmodule", type: FsDialogModule }, { kind: "directive", type: i1$2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i2$1.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout", "dock", "dockable", "fullscreenPercent"] }, { kind: "component", type: VerificationMethodsComponent, selector: "fs-2fa-verification-methods", inputs: ["type", "accountVerify", "verificationMethodsFetch", "verificationMethodDelete", "verificationMethodDefault", "twoFactorManageService"], outputs: ["deleted"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i2.FsButtonDirective, selector: "[mat-raised-button]:not([fsFormButtonStandalone]),[mat-button]:not([fsFormButtonStandalone]),[mat-flat-button]:not([fsFormButtonStandalone]),[mat-stroked-button]:not([fsFormButtonStandalone])", inputs: ["name", "dirtySubmit", "form"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
925
925
|
}
|
|
926
926
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: NumbersComponent, decorators: [{
|
|
927
927
|
type: Component,
|
|
@@ -935,7 +935,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
935
935
|
MatButton,
|
|
936
936
|
FsFormModule,
|
|
937
937
|
MatDialogClose,
|
|
938
|
-
], template: "<fs-dialog>\n <h1 mat-dialog-title>\n Text message numbers\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Sms\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n
|
|
938
|
+
], template: "<fs-dialog>\n <h1 mat-dialog-title>\n Text message numbers\n </h1>\n <mat-dialog-content>\n <fs-2fa-verification-methods\n [type]=\"VerificationMethodType.Sms\"\n [twoFactorManageService]=\"twoFactorManageService\"\n (deleted)=\"deleted()\">\n </fs-2fa-verification-methods>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n type=\"button\"\n color=\"primary\"\n [mat-dialog-close]=\"undefined\">\n Done\n </button>\n <button\n mat-button\n (click)=\"add()\"\n type=\"button\">\n Add number\n </button>\n </mat-dialog-actions>\n</fs-dialog>" }]
|
|
939
939
|
}], ctorParameters: () => [], propDecorators: { verificationMethods: [{
|
|
940
940
|
type: ViewChild,
|
|
941
941
|
args: [VerificationMethodsComponent]
|
|
@@ -1041,7 +1041,7 @@ class ManageMethodsComponent {
|
|
|
1041
1041
|
this._destroy$.complete();
|
|
1042
1042
|
}
|
|
1043
1043
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ManageMethodsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1044
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: ManageMethodsComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<fs-dialog>\n <h1 mat-dialog-title>\n 2-step verification\n </h1>\n <mat-dialog-content>\n <table>\n @if (verificationMethodTypes[VerificationMethodType.Sms]) {\n <tr>\n <td>\n <mat-icon>\n textsms\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Text message\n </span>\n @if (textHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultSms) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by text message\n @if (textHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.smsVerificationMethods; track item) {\n <span>\n {{ item.phoneNumber | fsPhone }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (textHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.Email]) {\n <tr>\n <td>\n <mat-icon>\n email\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Email\n </span>\n @if (emailHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultEmail) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by email\n @if (emailHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.emailVerificationMethods; track item) {\n <span>\n {{ item.email }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (emailHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.App]) {\n <tr>\n <td>\n <mat-icon>\n phone_iphone\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Authenticator app\n </span>\n @if (appHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultApp) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification code is generated by an authenticator app such as Authy or Google Authenticator\n </div>\n </td>\n <td>\n @if (appHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appRemove()\">\n Remove\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n </table>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n
|
|
1044
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: ManageMethodsComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<fs-dialog>\n <h1 mat-dialog-title>\n 2-step verification\n </h1>\n <mat-dialog-content>\n <table>\n @if (verificationMethodTypes[VerificationMethodType.Sms]) {\n <tr>\n <td>\n <mat-icon>\n textsms\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Text message\n </span>\n @if (textHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultSms) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by text message\n @if (textHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.smsVerificationMethods; track item) {\n <span>\n {{ item.phoneNumber | fsPhone }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (textHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.Email]) {\n <tr>\n <td>\n <mat-icon>\n email\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Email\n </span>\n @if (emailHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultEmail) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by email\n @if (emailHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.emailVerificationMethods; track item) {\n <span>\n {{ item.email }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (emailHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.App]) {\n <tr>\n <td>\n <mat-icon>\n phone_iphone\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Authenticator app\n </span>\n @if (appHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultApp) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification code is generated by an authenticator app such as Authy or Google Authenticator\n </div>\n </td>\n <td>\n @if (appHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appRemove()\">\n Remove\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n </table>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Done\n </button>\n </mat-dialog-actions>\n</fs-dialog>\n<ng-template #enabledChip>\n <fs-chip\n [backgroundColor]=\"'#70B601'\"\n [size]=\"'tiny'\">\n Enabled\n </fs-chip>\n</ng-template>", styles: ["mat-dialog-content{max-width:500px}table tr td:first-child,table tr td:last-child{width:1%}table tr td:first-child mat-icon,table tr td:last-child mat-icon{display:flex}table tr td{padding:15px 6px;vertical-align:top}table tr button{white-space:nowrap}table tr .type{display:flex;align-items:center}table tr .type span{margin-right:5px}table tr .type app-defaulted{margin-left:4px}.items span+span:not(:last-child):before{content:\", \"}.items span+span:last-child:before{content:\" and \"}\n"], dependencies: [{ kind: "ngmodule", type: FsDialogModule }, { kind: "directive", type: i1$2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i2$1.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout", "dock", "dockable", "fullscreenPercent"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: DefaultedComponent, selector: "app-defaulted" }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i2.FsButtonDirective, selector: "[mat-raised-button]:not([fsFormButtonStandalone]),[mat-button]:not([fsFormButtonStandalone]),[mat-flat-button]:not([fsFormButtonStandalone]),[mat-stroked-button]:not([fsFormButtonStandalone])", inputs: ["name", "dirtySubmit", "form"] }, { kind: "ngmodule", type: FsChipModule }, { kind: "component", type: i1$4.FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "actionable", "value", "maxWidth", "actions", "icon", "image", "selected", "size", "backgroundColor", "borderColor", "color", "outlined"], outputs: ["selectedToggled", "removed"] }, { kind: "ngmodule", type: FsPhoneModule }, { kind: "pipe", type: i3.FsPhonePipe, name: "fsPhone" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1045
1045
|
}
|
|
1046
1046
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ManageMethodsComponent, decorators: [{
|
|
1047
1047
|
type: Component,
|
|
@@ -1059,7 +1059,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
1059
1059
|
MatDialogClose,
|
|
1060
1060
|
FsChipModule,
|
|
1061
1061
|
FsPhoneModule,
|
|
1062
|
-
], template: "<fs-dialog>\n <h1 mat-dialog-title>\n 2-step verification\n </h1>\n <mat-dialog-content>\n <table>\n @if (verificationMethodTypes[VerificationMethodType.Sms]) {\n <tr>\n <td>\n <mat-icon>\n textsms\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Text message\n </span>\n @if (textHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultSms) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by text message\n @if (textHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.smsVerificationMethods; track item) {\n <span>\n {{ item.phoneNumber | fsPhone }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (textHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.Email]) {\n <tr>\n <td>\n <mat-icon>\n email\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Email\n </span>\n @if (emailHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultEmail) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by email\n @if (emailHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.emailVerificationMethods; track item) {\n <span>\n {{ item.email }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (emailHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.App]) {\n <tr>\n <td>\n <mat-icon>\n phone_iphone\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Authenticator app\n </span>\n @if (appHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultApp) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification code is generated by an authenticator app such as Authy or Google Authenticator\n </div>\n </td>\n <td>\n @if (appHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appRemove()\">\n Remove\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n </table>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n
|
|
1062
|
+
], template: "<fs-dialog>\n <h1 mat-dialog-title>\n 2-step verification\n </h1>\n <mat-dialog-content>\n <table>\n @if (verificationMethodTypes[VerificationMethodType.Sms]) {\n <tr>\n <td>\n <mat-icon>\n textsms\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Text message\n </span>\n @if (textHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultSms) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by text message\n @if (textHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.smsVerificationMethods; track item) {\n <span>\n {{ item.phoneNumber | fsPhone }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (textHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"textMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.Email]) {\n <tr>\n <td>\n <mat-icon>\n email\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Email\n </span>\n @if (emailHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultEmail) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification codes are sent by email\n @if (emailHasVerificationMethod) {\n to\n <span class=\"items\">\n @for (item of twoFactorManageService.emailVerificationMethods; track item) {\n <span>\n {{ item.email }}\n </span>\n }\n </span>\n }\n </div>\n </td>\n <td>\n @if (emailHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageManage()\">\n Manage\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"emailMessageAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n @if (verificationMethodTypes[VerificationMethodType.App]) {\n <tr>\n <td>\n <mat-icon>\n phone_iphone\n </mat-icon>\n </td>\n <td>\n <div class=\"type\">\n <span>\n Authenticator app\n </span>\n @if (appHasVerificationMethod) {\n <ng-container [ngTemplateOutlet]=\"enabledChip\"></ng-container>\n }\n @if (defaultApp) {\n <app-defaulted></app-defaulted>\n }\n </div>\n <div class=\"small\">\n Verification code is generated by an authenticator app such as Authy or Google Authenticator\n </div>\n </td>\n <td>\n @if (appHasVerificationMethod) {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appRemove()\">\n Remove\n </button>\n } @else {\n <button\n mat-stroked-button\n type=\"button\"\n (click)=\"appAdd()\">\n Turn on\n </button>\n }\n </td>\n </tr>\n }\n </table>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Done\n </button>\n </mat-dialog-actions>\n</fs-dialog>\n<ng-template #enabledChip>\n <fs-chip\n [backgroundColor]=\"'#70B601'\"\n [size]=\"'tiny'\">\n Enabled\n </fs-chip>\n</ng-template>", styles: ["mat-dialog-content{max-width:500px}table tr td:first-child,table tr td:last-child{width:1%}table tr td:first-child mat-icon,table tr td:last-child mat-icon{display:flex}table tr td{padding:15px 6px;vertical-align:top}table tr button{white-space:nowrap}table tr .type{display:flex;align-items:center}table tr .type span{margin-right:5px}table tr .type app-defaulted{margin-left:4px}.items span+span:not(:last-child):before{content:\", \"}.items span+span:last-child:before{content:\" and \"}\n"] }]
|
|
1063
1063
|
}] });
|
|
1064
1064
|
|
|
1065
1065
|
class Fs2faManageComponent {
|
|
@@ -1441,6 +1441,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
1441
1441
|
}]
|
|
1442
1442
|
}] });
|
|
1443
1443
|
|
|
1444
|
+
class Fs2faVerificationModule {
|
|
1445
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: Fs2faVerificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1446
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: Fs2faVerificationModule, imports: [Fs2faVerificationComponent,
|
|
1447
|
+
Fs2faVerificationResendDirective], exports: [Fs2faVerificationComponent,
|
|
1448
|
+
Fs2faVerificationResendDirective] });
|
|
1449
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: Fs2faVerificationModule, imports: [Fs2faVerificationComponent] });
|
|
1450
|
+
}
|
|
1451
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: Fs2faVerificationModule, decorators: [{
|
|
1452
|
+
type: NgModule,
|
|
1453
|
+
args: [{
|
|
1454
|
+
imports: [
|
|
1455
|
+
Fs2faVerificationComponent,
|
|
1456
|
+
Fs2faVerificationResendDirective,
|
|
1457
|
+
],
|
|
1458
|
+
exports: [
|
|
1459
|
+
Fs2faVerificationComponent,
|
|
1460
|
+
Fs2faVerificationResendDirective,
|
|
1461
|
+
],
|
|
1462
|
+
}]
|
|
1463
|
+
}] });
|
|
1464
|
+
|
|
1444
1465
|
class ForceVerificationSetupGuard {
|
|
1445
1466
|
_cookie = inject(FsCookie);
|
|
1446
1467
|
_router = inject(Router);
|
|
@@ -1466,5 +1487,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
1466
1487
|
* Generated bundle index. Do not edit.
|
|
1467
1488
|
*/
|
|
1468
1489
|
|
|
1469
|
-
export { ForceVerificationSetupGuard, Fs2faManageComponent, Fs2faManageModule, Fs2faVerificationComponent, Fs2faVerificationMethodsModule, Fs2faVerificationResendDirective, FsVerificationSetupModule, VerificationMethodType, VerificationMethodsComponent };
|
|
1490
|
+
export { ForceVerificationSetupGuard, Fs2faManageComponent, Fs2faManageModule, Fs2faVerificationComponent, Fs2faVerificationMethodsModule, Fs2faVerificationModule, Fs2faVerificationResendDirective, FsVerificationSetupModule, VerificationMethodType, VerificationMethodsComponent };
|
|
1470
1491
|
//# sourceMappingURL=firestitch-2fa.mjs.map
|