@firestitch/2fa 15.0.0 → 16.0.0
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/code-input/components/code-input/code-input.component.d.ts +1 -1
- package/app/modules/manage/components/2fa-manage/2fa-manage.component.d.ts +1 -1
- package/app/modules/resend/components/resend/resend.component.d.ts +1 -1
- package/app/modules/verification/components/2fa-verification/2fa-verification.component.d.ts +1 -1
- package/app/modules/verification/components/2fa-verification-code/2fa-verification-code.component.d.ts +1 -1
- package/app/modules/verification/directives/2fa-verification-resend.directive.d.ts +1 -1
- package/app/modules/verification-methods/components/verification-methods/verification-methods.component.d.ts +1 -1
- package/{esm2020 → esm2022}/app/modules/code-input/code-input.module.mjs +11 -11
- package/esm2022/app/modules/code-input/components/code-input/code-input.component.mjs +41 -0
- package/{esm2020 → esm2022}/app/modules/defaulted/components/defaulted/defaulted.component.mjs +4 -4
- package/{esm2020 → esm2022}/app/modules/defaulted/defaulted.module.mjs +5 -5
- package/esm2022/app/modules/manage/components/2fa-manage/2fa-manage.component.mjs +111 -0
- package/esm2022/app/modules/manage/components/app/app.component.mjs +96 -0
- package/esm2022/app/modules/manage/components/email/email.component.mjs +92 -0
- package/esm2022/app/modules/manage/components/emails/emails.component.mjs +52 -0
- package/esm2022/app/modules/manage/components/manage-methods/manage-methods.component.mjs +132 -0
- package/esm2022/app/modules/manage/components/number/number.component.mjs +97 -0
- package/esm2022/app/modules/manage/components/numbers/numbers.component.mjs +54 -0
- package/{esm2020 → esm2022}/app/modules/manage/fs-2f-manage.module.mjs +49 -49
- package/esm2022/app/modules/manage/services/two-factor-manage.service.mjs +169 -0
- package/esm2022/app/modules/resend/components/resend/resend.component.mjs +37 -0
- package/{esm2020 → esm2022}/app/modules/resend/resend.module.mjs +7 -7
- package/esm2022/app/modules/verification/components/2fa-verification/2fa-verification.component.mjs +131 -0
- package/esm2022/app/modules/verification/components/2fa-verification-code/2fa-verification-code.component.mjs +66 -0
- package/esm2022/app/modules/verification/components/2fa-verification-methods/2fa-verification-methods.component.mjs +63 -0
- package/esm2022/app/modules/verification/directives/2fa-verification-resend.directive.mjs +34 -0
- package/{esm2020 → esm2022}/app/modules/verification/fs-2fa-verification.module.mjs +39 -39
- package/esm2022/app/modules/verification-methods/components/verification-methods/verification-methods.component.mjs +126 -0
- package/{esm2020 → esm2022}/app/modules/verification-methods/fs-2f-verification-methods.module.mjs +17 -17
- package/fesm2022/firestitch-2fa.mjs +1438 -0
- package/{fesm2020 → fesm2022}/firestitch-2fa.mjs.map +1 -1
- package/package.json +5 -11
- package/esm2020/app/modules/code-input/components/code-input/code-input.component.mjs +0 -40
- package/esm2020/app/modules/manage/components/2fa-manage/2fa-manage.component.mjs +0 -98
- package/esm2020/app/modules/manage/components/app/app.component.mjs +0 -84
- package/esm2020/app/modules/manage/components/email/email.component.mjs +0 -83
- package/esm2020/app/modules/manage/components/emails/emails.component.mjs +0 -47
- package/esm2020/app/modules/manage/components/manage-methods/manage-methods.component.mjs +0 -125
- package/esm2020/app/modules/manage/components/number/number.component.mjs +0 -87
- package/esm2020/app/modules/manage/components/numbers/numbers.component.mjs +0 -48
- package/esm2020/app/modules/manage/services/two-factor-manage.service.mjs +0 -161
- package/esm2020/app/modules/resend/components/resend/resend.component.mjs +0 -35
- package/esm2020/app/modules/verification/components/2fa-verification/2fa-verification.component.mjs +0 -121
- package/esm2020/app/modules/verification/components/2fa-verification-code/2fa-verification-code.component.mjs +0 -60
- package/esm2020/app/modules/verification/components/2fa-verification-methods/2fa-verification-methods.component.mjs +0 -56
- package/esm2020/app/modules/verification/directives/2fa-verification-resend.directive.mjs +0 -32
- package/esm2020/app/modules/verification-methods/components/verification-methods/verification-methods.component.mjs +0 -117
- package/fesm2015/firestitch-2fa.mjs +0 -1345
- package/fesm2015/firestitch-2fa.mjs.map +0 -1
- package/fesm2020/firestitch-2fa.mjs +0 -1331
- /package/{esm2020 → esm2022}/app/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/enums/verification-method-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/app/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/interfaces/verification-method.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/code-input/components/code-input/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/code-input/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/defaulted/components/defaulted/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/components/2fa-manage/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/components/app/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/components/email/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/components/emails/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/components/manage-methods/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/components/number/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/components/numbers/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/manage/services/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/resend/components/resend/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/verification/directives/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/verification-methods/components/verification-methods/index.mjs +0 -0
- /package/{esm2020 → esm2022}/app/modules/verification-methods/index.mjs +0 -0
- /package/{esm2020 → esm2022}/firestitch-2fa.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
|
@@ -28,55 +28,55 @@ import { NumberComponent } from './components/number';
|
|
|
28
28
|
import { NumbersComponent } from './components/numbers';
|
|
29
29
|
import * as i0 from "@angular/core";
|
|
30
30
|
export class Fs2faManageModule {
|
|
31
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Fs2faManageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
32
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: Fs2faManageModule, declarations: [Fs2faManageComponent,
|
|
33
|
+
ManageMethodsComponent,
|
|
34
|
+
NumbersComponent,
|
|
35
|
+
AppComponent,
|
|
36
|
+
EmailComponent,
|
|
37
|
+
NumberComponent,
|
|
38
|
+
EmailsComponent], imports: [CommonModule,
|
|
39
|
+
FormsModule,
|
|
40
|
+
MatButtonModule,
|
|
41
|
+
MatDialogModule,
|
|
42
|
+
MatInputModule,
|
|
43
|
+
MatIconModule,
|
|
44
|
+
MatCheckboxModule,
|
|
45
|
+
FsDialogModule,
|
|
46
|
+
FsListModule,
|
|
47
|
+
FsFormModule,
|
|
48
|
+
FsLabelModule,
|
|
49
|
+
FsPhoneModule,
|
|
50
|
+
FsSkeletonModule,
|
|
51
|
+
FsCountryModule,
|
|
52
|
+
FsQrcodeModule,
|
|
53
|
+
CodeInputModule,
|
|
54
|
+
ResendModule,
|
|
55
|
+
DefautledModule,
|
|
56
|
+
Fs2faVerificationModule,
|
|
57
|
+
Fs2faVerificationMethodsModule], exports: [Fs2faManageComponent] });
|
|
58
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Fs2faManageModule, imports: [CommonModule,
|
|
59
|
+
FormsModule,
|
|
60
|
+
MatButtonModule,
|
|
61
|
+
MatDialogModule,
|
|
62
|
+
MatInputModule,
|
|
63
|
+
MatIconModule,
|
|
64
|
+
MatCheckboxModule,
|
|
65
|
+
FsDialogModule,
|
|
66
|
+
FsListModule,
|
|
67
|
+
FsFormModule,
|
|
68
|
+
FsLabelModule,
|
|
69
|
+
FsPhoneModule,
|
|
70
|
+
FsSkeletonModule,
|
|
71
|
+
FsCountryModule,
|
|
72
|
+
FsQrcodeModule,
|
|
73
|
+
CodeInputModule,
|
|
74
|
+
ResendModule,
|
|
75
|
+
DefautledModule,
|
|
76
|
+
Fs2faVerificationModule,
|
|
77
|
+
Fs2faVerificationMethodsModule] });
|
|
31
78
|
}
|
|
32
|
-
|
|
33
|
-
Fs2faManageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: Fs2faManageModule, declarations: [Fs2faManageComponent,
|
|
34
|
-
ManageMethodsComponent,
|
|
35
|
-
NumbersComponent,
|
|
36
|
-
AppComponent,
|
|
37
|
-
EmailComponent,
|
|
38
|
-
NumberComponent,
|
|
39
|
-
EmailsComponent], imports: [CommonModule,
|
|
40
|
-
FormsModule,
|
|
41
|
-
MatButtonModule,
|
|
42
|
-
MatDialogModule,
|
|
43
|
-
MatInputModule,
|
|
44
|
-
MatIconModule,
|
|
45
|
-
MatCheckboxModule,
|
|
46
|
-
FsDialogModule,
|
|
47
|
-
FsListModule,
|
|
48
|
-
FsFormModule,
|
|
49
|
-
FsLabelModule,
|
|
50
|
-
FsPhoneModule,
|
|
51
|
-
FsSkeletonModule,
|
|
52
|
-
FsCountryModule,
|
|
53
|
-
FsQrcodeModule,
|
|
54
|
-
CodeInputModule,
|
|
55
|
-
ResendModule,
|
|
56
|
-
DefautledModule,
|
|
57
|
-
Fs2faVerificationModule,
|
|
58
|
-
Fs2faVerificationMethodsModule], exports: [Fs2faManageComponent] });
|
|
59
|
-
Fs2faManageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Fs2faManageModule, imports: [CommonModule,
|
|
60
|
-
FormsModule,
|
|
61
|
-
MatButtonModule,
|
|
62
|
-
MatDialogModule,
|
|
63
|
-
MatInputModule,
|
|
64
|
-
MatIconModule,
|
|
65
|
-
MatCheckboxModule,
|
|
66
|
-
FsDialogModule,
|
|
67
|
-
FsListModule,
|
|
68
|
-
FsFormModule,
|
|
69
|
-
FsLabelModule,
|
|
70
|
-
FsPhoneModule,
|
|
71
|
-
FsSkeletonModule,
|
|
72
|
-
FsCountryModule,
|
|
73
|
-
FsQrcodeModule,
|
|
74
|
-
CodeInputModule,
|
|
75
|
-
ResendModule,
|
|
76
|
-
DefautledModule,
|
|
77
|
-
Fs2faVerificationModule,
|
|
78
|
-
Fs2faVerificationMethodsModule] });
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Fs2faManageModule, decorators: [{
|
|
79
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Fs2faManageModule, decorators: [{
|
|
80
80
|
type: NgModule,
|
|
81
81
|
args: [{
|
|
82
82
|
imports: [
|
|
@@ -113,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
113
113
|
exports: [Fs2faManageComponent],
|
|
114
114
|
}]
|
|
115
115
|
}] });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtMmYtbWFuYWdlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2UvZnMtMmYtbWFuYWdlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUd4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFckYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQXlDeEQsTUFBTSxPQUFPLGlCQUFpQjt3R0FBakIsaUJBQWlCO3lHQUFqQixpQkFBaUIsaUJBVjFCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIsZ0JBQWdCO1lBQ2hCLFlBQVk7WUFDWixjQUFjO1lBQ2QsZUFBZTtZQUNmLGVBQWUsYUFoQ2YsWUFBWTtZQUNaLFdBQVc7WUFFWCxlQUFlO1lBQ2YsZUFBZTtZQUNmLGNBQWM7WUFDZCxhQUFhO1lBQ2IsaUJBQWlCO1lBRWpCLGNBQWM7WUFDZCxZQUFZO1lBQ1osWUFBWTtZQUNaLGFBQWE7WUFDYixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixjQUFjO1lBRWQsZUFBZTtZQUVmLFlBQVk7WUFDWixlQUFlO1lBQ2YsdUJBQXVCO1lBQ3ZCLDhCQUE4QixhQVd0QixvQkFBb0I7eUdBRW5CLGlCQUFpQixZQXBDMUIsWUFBWTtZQUNaLFdBQVc7WUFFWCxlQUFlO1lBQ2YsZUFBZTtZQUNmLGNBQWM7WUFDZCxhQUFhO1lBQ2IsaUJBQWlCO1lBRWpCLGNBQWM7WUFDZCxZQUFZO1lBQ1osWUFBWTtZQUNaLGFBQWE7WUFDYixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixjQUFjO1lBRWQsZUFBZTtZQUVmLFlBQVk7WUFDWixlQUFlO1lBQ2YsdUJBQXVCO1lBQ3ZCLDhCQUE4Qjs7NEZBYXJCLGlCQUFpQjtrQkF0QzdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFFWCxlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGlCQUFpQjt3QkFFakIsY0FBYzt3QkFDZCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixjQUFjO3dCQUVkLGVBQWU7d0JBRWYsWUFBWTt3QkFDWixlQUFlO3dCQUNmLHVCQUF1Qjt3QkFDdkIsOEJBQThCO3FCQUMvQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osb0JBQW9CO3dCQUNwQixzQkFBc0I7d0JBQ3RCLGdCQUFnQjt3QkFDaEIsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7aUJBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5pbXBvcnQgeyBGc0NvdW50cnlNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9jb3VudHJ5JztcbmltcG9ydCB7IEZzRGlhbG9nTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZGlhbG9nJztcbmltcG9ydCB7IEZzRm9ybU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2Zvcm0nO1xuaW1wb3J0IHsgRnNMYWJlbE1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2xhYmVsJztcbmltcG9ydCB7IEZzTGlzdE1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2xpc3QnO1xuaW1wb3J0IHsgRnNQaG9uZU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL3Bob25lJztcbmltcG9ydCB7IEZzUXJjb2RlTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvcXJjb2RlJztcbmltcG9ydCB7IEZzU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9za2VsZXRvbic7XG5cblxuaW1wb3J0IHsgQ29kZUlucHV0TW9kdWxlIH0gZnJvbSAnLi4vY29kZS1pbnB1dCc7XG5pbXBvcnQgeyBEZWZhdXRsZWRNb2R1bGUgfSBmcm9tICcuLi9kZWZhdWx0ZWQvZGVmYXVsdGVkLm1vZHVsZSc7XG5pbXBvcnQgeyBSZXNlbmRNb2R1bGUgfSBmcm9tICcuLi9yZXNlbmQvcmVzZW5kLm1vZHVsZSc7XG5pbXBvcnQgeyBGczJmYVZlcmlmaWNhdGlvbk1ldGhvZHNNb2R1bGUgfSBmcm9tICcuLi92ZXJpZmljYXRpb24tbWV0aG9kcyc7XG5pbXBvcnQgeyBGczJmYVZlcmlmaWNhdGlvbk1vZHVsZSB9IGZyb20gJy4uL3ZlcmlmaWNhdGlvbi9mcy0yZmEtdmVyaWZpY2F0aW9uLm1vZHVsZSc7XG5cbmltcG9ydCB7IEZzMmZhTWFuYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzLzJmYS1tYW5hZ2UnO1xuaW1wb3J0IHsgQXBwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2FwcCc7XG5pbXBvcnQgeyBFbWFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lbWFpbCc7XG5pbXBvcnQgeyBFbWFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZW1haWxzJztcbmltcG9ydCB7IE1hbmFnZU1ldGhvZHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWFuYWdlLW1ldGhvZHMnO1xuaW1wb3J0IHsgTnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL251bWJlcic7XG5pbXBvcnQgeyBOdW1iZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL251bWJlcnMnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG5cbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXG5cbiAgICBGc0RpYWxvZ01vZHVsZSxcbiAgICBGc0xpc3RNb2R1bGUsXG4gICAgRnNGb3JtTW9kdWxlLFxuICAgIEZzTGFiZWxNb2R1bGUsXG4gICAgRnNQaG9uZU1vZHVsZSxcbiAgICBGc1NrZWxldG9uTW9kdWxlLFxuICAgIEZzQ291bnRyeU1vZHVsZSxcbiAgICBGc1FyY29kZU1vZHVsZSxcblxuICAgIENvZGVJbnB1dE1vZHVsZSxcblxuICAgIFJlc2VuZE1vZHVsZSxcbiAgICBEZWZhdXRsZWRNb2R1bGUsXG4gICAgRnMyZmFWZXJpZmljYXRpb25Nb2R1bGUsXG4gICAgRnMyZmFWZXJpZmljYXRpb25NZXRob2RzTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBGczJmYU1hbmFnZUNvbXBvbmVudCxcbiAgICBNYW5hZ2VNZXRob2RzQ29tcG9uZW50LFxuICAgIE51bWJlcnNDb21wb25lbnQsXG4gICAgQXBwQ29tcG9uZW50LFxuICAgIEVtYWlsQ29tcG9uZW50LFxuICAgIE51bWJlckNvbXBvbmVudCxcbiAgICBFbWFpbHNDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtGczJmYU1hbmFnZUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzMmZhTWFuYWdlTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
3
|
+
import { BehaviorSubject, of, Subject } from 'rxjs';
|
|
4
|
+
import { switchMap, takeUntil, tap } from 'rxjs/operators';
|
|
5
|
+
import { AppComponent } from '../components/app';
|
|
6
|
+
import { VerificationMethodType } from '../../../enums/verification-method-type.enum';
|
|
7
|
+
import { EmailComponent } from '../components/email';
|
|
8
|
+
import { NumberComponent } from '../components/number';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/material/dialog";
|
|
11
|
+
export class TwoFactorManageService {
|
|
12
|
+
_dialog;
|
|
13
|
+
_destroy$ = new Subject();
|
|
14
|
+
_verificationMethodsFetch;
|
|
15
|
+
_verificationMethodCreate;
|
|
16
|
+
_verificationMethodDelete;
|
|
17
|
+
_verificationMethodDefault;
|
|
18
|
+
_verificationMethodVerify;
|
|
19
|
+
_verificationMethodResend;
|
|
20
|
+
_accountVerify;
|
|
21
|
+
_verificationMethods$ = new BehaviorSubject([]);
|
|
22
|
+
constructor(_dialog) {
|
|
23
|
+
this._dialog = _dialog;
|
|
24
|
+
}
|
|
25
|
+
get verificationMethods$() {
|
|
26
|
+
return this._verificationMethods$
|
|
27
|
+
.pipe(takeUntil(this._destroy$));
|
|
28
|
+
}
|
|
29
|
+
get verificationMethods() {
|
|
30
|
+
return this._verificationMethods$.getValue();
|
|
31
|
+
}
|
|
32
|
+
get hasVerificationMethods() {
|
|
33
|
+
return !!this._verificationMethods$.getValue().length;
|
|
34
|
+
}
|
|
35
|
+
get emailVerificationMethods() {
|
|
36
|
+
return this.getVerificationMethods(VerificationMethodType.Email);
|
|
37
|
+
}
|
|
38
|
+
get smsVerificationMethods() {
|
|
39
|
+
return this.getVerificationMethods(VerificationMethodType.Sms);
|
|
40
|
+
}
|
|
41
|
+
get appVerificationMethods() {
|
|
42
|
+
return this.getVerificationMethods(VerificationMethodType.App);
|
|
43
|
+
}
|
|
44
|
+
getVerificationMethods(type) {
|
|
45
|
+
return this.verificationMethods
|
|
46
|
+
.filter((verificationMethod) => {
|
|
47
|
+
return verificationMethod.type === type;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
hasVerificationMethod(type) {
|
|
51
|
+
return this.verificationMethods
|
|
52
|
+
.some((verificationMethod) => {
|
|
53
|
+
return verificationMethod.type === type;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
registerVerificationMethodDefault(value) {
|
|
57
|
+
this._verificationMethodDefault = value;
|
|
58
|
+
}
|
|
59
|
+
registerVerificationMethodResend(value) {
|
|
60
|
+
this._verificationMethodResend = value;
|
|
61
|
+
}
|
|
62
|
+
registerVerificationMethodsFetch(value) {
|
|
63
|
+
this._verificationMethodsFetch = value;
|
|
64
|
+
}
|
|
65
|
+
registerVerificationMethodDelete(value) {
|
|
66
|
+
this._verificationMethodDelete = value;
|
|
67
|
+
}
|
|
68
|
+
registerVerificationMethodCreate(value) {
|
|
69
|
+
this._verificationMethodCreate = value;
|
|
70
|
+
}
|
|
71
|
+
registerVerificationMethodVerify(value) {
|
|
72
|
+
this._verificationMethodVerify = value;
|
|
73
|
+
}
|
|
74
|
+
registerAccountVerify(value) {
|
|
75
|
+
this._accountVerify = value;
|
|
76
|
+
}
|
|
77
|
+
get hasVerificationMethodResend() {
|
|
78
|
+
return !!this._verificationMethodResend;
|
|
79
|
+
}
|
|
80
|
+
get hasVerificationMethodDefault() {
|
|
81
|
+
return !!this._verificationMethodDefault;
|
|
82
|
+
}
|
|
83
|
+
get hasVerificationMethodsFetch() {
|
|
84
|
+
return !!this._verificationMethodsFetch;
|
|
85
|
+
}
|
|
86
|
+
get hasVerificationMethodDelete() {
|
|
87
|
+
return !!this._verificationMethodDelete;
|
|
88
|
+
}
|
|
89
|
+
get hasVerificationMethodCreate() {
|
|
90
|
+
return !!this._verificationMethodCreate;
|
|
91
|
+
}
|
|
92
|
+
get hasVerificationMethodVerify() {
|
|
93
|
+
return !!this._verificationMethodVerify;
|
|
94
|
+
}
|
|
95
|
+
verificationMethodDelete$(verificationMethod) {
|
|
96
|
+
return this._verificationMethodDelete(verificationMethod)
|
|
97
|
+
.pipe(tap(() => {
|
|
98
|
+
this.verificationMethodsFetch();
|
|
99
|
+
}));
|
|
100
|
+
}
|
|
101
|
+
verificationMethodVerify$(code, trustDevice) {
|
|
102
|
+
return this._verificationMethodVerify(code, trustDevice)
|
|
103
|
+
.pipe(tap(() => {
|
|
104
|
+
this.verificationMethodsFetch();
|
|
105
|
+
}));
|
|
106
|
+
}
|
|
107
|
+
verificationMethodCreate$(verificationMethod) {
|
|
108
|
+
return this._verificationMethodCreate(verificationMethod);
|
|
109
|
+
}
|
|
110
|
+
verificationMethodDefault$(verificationMethod) {
|
|
111
|
+
return this._verificationMethodDefault(verificationMethod);
|
|
112
|
+
}
|
|
113
|
+
verificationMethodResend() {
|
|
114
|
+
return this._verificationMethodResend();
|
|
115
|
+
}
|
|
116
|
+
verificationMethodsFetch(query) {
|
|
117
|
+
this.verificationMethodsFetch$(query)
|
|
118
|
+
.subscribe();
|
|
119
|
+
}
|
|
120
|
+
verificationMethodsFetch$(query) {
|
|
121
|
+
return this._verificationMethodsFetch(query)
|
|
122
|
+
.pipe(tap((verificationMethods) => {
|
|
123
|
+
this._verificationMethods$.next(verificationMethods);
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
accountVerify$() {
|
|
127
|
+
return this._accountVerify ? this._accountVerify() : of(true);
|
|
128
|
+
}
|
|
129
|
+
ngOnDestroy() {
|
|
130
|
+
this._destroy$.next();
|
|
131
|
+
this._destroy$.complete();
|
|
132
|
+
}
|
|
133
|
+
addSms$(defaultCountry) {
|
|
134
|
+
return this.accountVerify$()
|
|
135
|
+
.pipe(switchMap(() => this._dialog.open(NumberComponent, {
|
|
136
|
+
data: {
|
|
137
|
+
defaultCountry,
|
|
138
|
+
twoFactorManageService: this,
|
|
139
|
+
},
|
|
140
|
+
})
|
|
141
|
+
.afterClosed()), tap(() => {
|
|
142
|
+
this.verificationMethodsFetch();
|
|
143
|
+
}), takeUntil(this._destroy$));
|
|
144
|
+
}
|
|
145
|
+
addEmail$() {
|
|
146
|
+
return this.accountVerify$()
|
|
147
|
+
.pipe(switchMap(() => this._dialog.open(EmailComponent, {
|
|
148
|
+
data: { twoFactorManageService: this },
|
|
149
|
+
})
|
|
150
|
+
.afterClosed()), tap(() => {
|
|
151
|
+
this.verificationMethodsFetch();
|
|
152
|
+
}), takeUntil(this._destroy$));
|
|
153
|
+
}
|
|
154
|
+
addApp$() {
|
|
155
|
+
return this.accountVerify$()
|
|
156
|
+
.pipe(switchMap(() => this._dialog.open(AppComponent, {
|
|
157
|
+
data: { twoFactorManageService: this },
|
|
158
|
+
})
|
|
159
|
+
.afterClosed()), tap(() => {
|
|
160
|
+
this.verificationMethodsFetch();
|
|
161
|
+
}), takeUntil(this._destroy$));
|
|
162
|
+
}
|
|
163
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TwoFactorManageService, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
164
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TwoFactorManageService });
|
|
165
|
+
}
|
|
166
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TwoFactorManageService, decorators: [{
|
|
167
|
+
type: Injectable
|
|
168
|
+
}], ctorParameters: function () { return [{ type: i1.MatDialog }]; } });
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHdvLWZhY3Rvci1tYW5hZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2Uvc2VydmljZXMvdHdvLWZhY3Rvci1tYW5hZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUt2RCxNQUFNLE9BQU8sc0JBQXNCO0lBY3ZCO0lBWkYsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFMUIseUJBQXlCLENBQW9DO0lBQzdELHlCQUF5QixDQUFtRjtJQUM1Ryx5QkFBeUIsQ0FBbUY7SUFDNUcsMEJBQTBCLENBQW1GO0lBQzdHLHlCQUF5QixDQUFrRDtJQUMzRSx5QkFBeUIsQ0FBd0I7SUFDakQsY0FBYyxDQUEwQjtJQUN4QyxxQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBUSxFQUFFLENBQUMsQ0FBQztJQUUvRCxZQUNVLE9BQWtCO1FBQWxCLFlBQU8sR0FBUCxPQUFPLENBQVc7SUFDekIsQ0FBQztJQUVKLElBQVcsb0JBQW9CO1FBQzdCLE9BQU8sSUFBSSxDQUFD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UyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUM5QyxJQUFJLEVBQUUsRUFBRSxzQkFBc0IsRUFBRSxJQUFJLEVBQUc7U0FDeEMsQ0FBQzthQUNDLFdBQVcsRUFBRSxDQUNmLEVBQ0QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCLENBQUM7SUFDTixDQUFDO3dHQWpOVSxzQkFBc0I7NEdBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBBcHBDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2FwcCc7XG5pbXBvcnQgeyBWZXJpZmljYXRpb25NZXRob2RUeXBlIH0gZnJvbSAnLi4vLi4vLi4vZW51bXMvdmVyaWZpY2F0aW9uLW1ldGhvZC10eXBlLmVudW0nO1xuaW1wb3J0IHsgRW1haWxDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2VtYWlsJztcbmltcG9ydCB7IE51bWJlckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvbnVtYmVyJztcbmltcG9ydCB7IElGc1ZlcmlmaWNhdGlvbk1ldGhvZCB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUd29GYWN0b3JNYW5hZ2VTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgcHJpdmF0ZSBfdmVyaWZpY2F0aW9uTWV0aG9kc0ZldGNoOiAocXVlcnk6IGFueSkgPT4gT2JzZXJ2YWJsZTxhbnlbXT47XG4gIHByaXZhdGUgX3ZlcmlmaWNhdGlvbk1ldGhvZENyZWF0ZTogKHZlcmlmaWNhdGlvbk1ldGhvZDogSUZzVmVyaWZpY2F0aW9uTWV0aG9kKSA9PiBPYnNlcnZhYmxlPElGc1ZlcmlmaWNhdGlvbk1ldGhvZD47XG4gIHByaXZhdGUgX3ZlcmlmaWNhdGlvbk1ldGhvZERlbGV0ZTogKHZlcmlmaWNhdGlvbk1ldGhvZDogSUZzVmVyaWZpY2F0aW9uTWV0aG9kKSA9PiBPYnNlcnZhYmxlPElGc1ZlcmlmaWNhdGlvbk1ldGhvZD47XG4gIHByaXZhdGUgX3ZlcmlmaWNhdGlvbk1ldGhvZERlZmF1bHQ6ICh2ZXJpZmljYXRpb25NZXRob2Q6IElGc1ZlcmlmaWNhdGlvbk1ldGhvZCkgPT4gT2JzZXJ2YWJsZTxJRnNWZXJpZmljYXRpb25NZXRob2Q+O1xuICBwcml2YXRlIF92ZXJpZmljYXRpb25NZXRob2RWZXJpZnk6IChjb2RlLCB0cnVzdERldmljZTogYm9vbGVhbikgPT4gT2JzZXJ2YWJsZTxhbnk+O1xuICBwcml2YXRlIF92ZXJpZmljYXRpb25NZXRob2RSZXNlbmQ6ICgpID0+IE9ic2VydmFibGU8YW55PjtcbiAgcHJpdmF0ZSBfYWNjb3VudFZlcmlmeTogKCkgPT4gT2JzZXJ2YWJsZTxhbnlbXT47XG4gIHByaXZhdGUgX3ZlcmlmaWNhdGlvbk1ldGhvZHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXT4oW10pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2RpYWxvZzogTWF0RGlhbG9nLFxuICApIHt9XG5cbiAgcHVibGljIGdldCB2ZXJpZmljYXRpb25NZXRob2RzJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kcyRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKTtcbiAgfVxuICBcbiAgcHVibGljIGdldCB2ZXJpZmljYXRpb25NZXRob2RzKCkge1xuICAgIHJldHVybiB0aGlzLl92ZXJpZmljYXRpb25NZXRob2RzJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNWZXJpZmljYXRpb25NZXRob2RzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX3ZlcmlmaWNhdGlvbk1ldGhvZHMkLmdldFZhbHVlKCkubGVuZ3RoO1xuICB9XG5cbiAgcHVibGljIGdldCBlbWFpbFZlcmlmaWNhdGlvbk1ldGhvZHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmVyaWZpY2F0aW9uTWV0aG9kcyhWZXJpZmljYXRpb25NZXRob2RUeXBlLkVtYWlsKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc21zVmVyaWZpY2F0aW9uTWV0aG9kcygpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRWZXJpZmljYXRpb25NZXRob2RzKFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUuU21zKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBwVmVyaWZpY2F0aW9uTWV0aG9kcygpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRWZXJpZmljYXRpb25NZXRob2RzKFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUuQXBwKTtcbiAgfVxuICBcbiAgcHVibGljIGdldFZlcmlmaWNhdGlvbk1ldGhvZHModHlwZSkge1xuICAgIHJldHVybiB0aGlzLnZlcmlmaWNhdGlvbk1ldGhvZHNcbiAgICAuZmlsdGVyKCh2ZXJpZmljYXRpb25NZXRob2QpID0+IHtcbiAgICAgIHJldHVybiB2ZXJpZmljYXRpb25NZXRob2QudHlwZSA9PT0gdHlwZTtcbiAgICB9KTtcbiAgfVxuICBcbiAgcHVibGljIGhhc1ZlcmlmaWNhdGlvbk1ldGhvZCh0eXBlKSB7XG4gICAgcmV0dXJuIHRoaXMudmVyaWZpY2F0aW9uTWV0aG9kc1xuICAgIC5zb21lKCh2ZXJpZmljYXRpb25NZXRob2QpID0+IHtcbiAgICAgIHJldHVybiB2ZXJpZmljYXRpb25NZXRob2QudHlwZSA9PT0gdHlwZTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3RlclZlcmlmaWNhdGlvbk1ldGhvZERlZmF1bHQodmFsdWUpIHtcbiAgICB0aGlzLl92ZXJpZmljYXRpb25NZXRob2REZWZhdWx0ID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJWZXJpZmljYXRpb25NZXRob2RSZXNlbmQodmFsdWUpIHtcbiAgICB0aGlzLl92ZXJpZmljYXRpb25NZXRob2RSZXNlbmQgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3RlclZlcmlmaWNhdGlvbk1ldGhvZHNGZXRjaCh2YWx1ZSkge1xuICAgIHRoaXMuX3ZlcmlmaWNhdGlvbk1ldGhvZHNGZXRjaCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyVmVyaWZpY2F0aW9uTWV0aG9kRGVsZXRlKHZhbHVlKSB7XG4gICAgdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kRGVsZXRlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJWZXJpZmljYXRpb25NZXRob2RDcmVhdGUodmFsdWUpIHtcbiAgICB0aGlzLl92ZXJpZmljYXRpb25NZXRob2RDcmVhdGUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3RlclZlcmlmaWNhdGlvbk1ldGhvZFZlcmlmeSh2YWx1ZSkge1xuICAgIHRoaXMuX3ZlcmlmaWNhdGlvbk1ldGhvZFZlcmlmeSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyQWNjb3VudFZlcmlmeSh2YWx1ZSkge1xuICAgIHRoaXMuX2FjY291bnRWZXJpZnkgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzVmVyaWZpY2F0aW9uTWV0aG9kUmVzZW5kKCkge1xuICAgIHJldHVybiAhIXRoaXMuX3ZlcmlmaWNhdGlvbk1ldGhvZFJlc2VuZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzVmVyaWZpY2F0aW9uTWV0aG9kRGVmYXVsdCgpIHtcbiAgICByZXR1cm4gISF0aGlzLl92ZXJpZmljYXRpb25NZXRob2REZWZhdWx0O1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNWZXJpZmljYXRpb25NZXRob2RzRmV0Y2goKSB7XG4gICAgcmV0dXJuICEhdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kc0ZldGNoO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNWZXJpZmljYXRpb25NZXRob2REZWxldGUoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kRGVsZXRlO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNWZXJpZmljYXRpb25NZXRob2RDcmVhdGUoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kQ3JlYXRlO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNWZXJpZmljYXRpb25NZXRob2RWZXJpZnkoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kVmVyaWZ5O1xuICB9XG5cbiAgcHVibGljIHZlcmlmaWNhdGlvbk1ldGhvZERlbGV0ZSQodmVyaWZpY2F0aW9uTWV0aG9kKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kRGVsZXRlKHZlcmlmaWNhdGlvbk1ldGhvZClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMudmVyaWZpY2F0aW9uTWV0aG9kc0ZldGNoKCk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyB2ZXJpZmljYXRpb25NZXRob2RWZXJpZnkkKGNvZGUsIHRydXN0RGV2aWNlKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fdmVyaWZpY2F0aW9uTWV0aG9kVmVyaWZ5KGNvZGUsIHRydXN0RGV2aWNlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy52ZXJpZmljYXRpb25NZXRob2RzRmV0Y2goKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIHZlcmlmaWNhdGlvbk1ldGhvZENyZWF0ZSQodmVyaWZpY2F0aW9uTWV0aG9kKTogT2JzZXJ2YWJsZTxhbnk+ICB7XG4gICAgcmV0dXJuIHRoaXMuX3ZlcmlmaWNhdGlvbk1ldGhvZENyZWF0ZSh2ZXJpZmljYXRpb25NZXRob2QpO1xuICB9XG5cbiAgcHVibGljIHZlcmlmaWNhdGlvbk1ldGhvZERlZmF1bHQkKHZlcmlmaWNhdGlvbk1ldGhvZCk6IE9ic2VydmFibGU8YW55PiAge1xuICAgIHJldHVybiB0aGlzLl92ZXJpZmljYXRpb25NZXRob2REZWZhdWx0KHZlcmlmaWNhdGlvbk1ldGhvZCk7XG4gIH1cblxuICBwdWJsaWMgdmVyaWZpY2F0aW9uTWV0aG9kUmVzZW5kKCk6IE9ic2VydmFibGU8YW55PiAge1xuICAgIHJldHVybiB0aGlzLl92ZXJpZmljYXRpb25NZXRob2RSZXNlbmQoKTtcbiAgfVxuXG4gIHB1YmxpYyB2ZXJpZmljYXRpb25NZXRob2RzRmV0Y2gocXVlcnk/OiBhbnkpIHtcbiAgICB0aGlzLnZlcmlmaWNhdGlvbk1ldGhvZHNGZXRjaCQocXVlcnkpXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgdmVyaWZpY2F0aW9uTWV0aG9kc0ZldGNoJChxdWVyeT86IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZlcmlmaWNhdGlvbk1ldGhvZHNGZXRjaChxdWVyeSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHZlcmlmaWNhdGlvbk1ldGhvZHMpID0+IHtcbiAgICAgICAgICB0aGlzLl92ZXJpZmljYXRpb25NZXRob2RzJC5uZXh0KHZlcmlmaWNhdGlvbk1ldGhvZHMpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhY2NvdW50VmVyaWZ5JCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLl9hY2NvdW50VmVyaWZ5ID8gdGhpcy5fYWNjb3VudFZlcmlmeSgpIDogb2YodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgYWRkU21zJChkZWZhdWx0Q291bnRyeSk6IE9ic2VydmFibGU8YW55PntcbiAgICByZXR1cm4gdGhpcy5hY2NvdW50VmVyaWZ5JCgpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuX2RpYWxvZy5vcGVuKE51bWJlckNvbXBvbmVudCwge1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIGRlZmF1bHRDb3VudHJ5LFxuICAgICAgICAgICAgdHdvRmFjdG9yTWFuYWdlU2VydmljZTogdGhpcyxcbiAgICAgICAgICB9LFxuICAgICAgICB9KVxuICAgICAgICAgIC5hZnRlckNsb3NlZCgpLFxuICAgICAgICApLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMudmVyaWZpY2F0aW9uTWV0aG9kc0ZldGNoKCk7XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRFbWFpbCQoKTogT2JzZXJ2YWJsZTxhbnk+e1xuICAgIHJldHVybiB0aGlzLmFjY291bnRWZXJpZnkkKClcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5fZGlhbG9nLm9wZW4oRW1haWxDb21wb25lbnQsIHtcbiAgICAgICAgICBkYXRhOiB7IHR3b0ZhY3Rvck1hbmFnZVNlcnZpY2U6IHRoaXMgfSxcbiAgICAgICAgfSlcbiAgICAgICAgICAuYWZ0ZXJDbG9zZWQoKSxcbiAgICAgICAgKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnZlcmlmaWNhdGlvbk1ldGhvZHNGZXRjaCgpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgYWRkQXBwJCgpOiBPYnNlcnZhYmxlPGFueT57XG4gICAgcmV0dXJuIHRoaXMuYWNjb3VudFZlcmlmeSQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLl9kaWFsb2cub3BlbihBcHBDb21wb25lbnQsIHtcbiAgICAgICAgICBkYXRhOiB7IHR3b0ZhY3Rvck1hbmFnZVNlcnZpY2U6IHRoaXMgIH0sXG4gICAgICAgIH0pXG4gICAgICAgICAgLmFmdGVyQ2xvc2VkKCksXG4gICAgICAgICksXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy52ZXJpZmljYXRpb25NZXRob2RzRmV0Y2goKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, Input, ChangeDetectorRef } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { finalize, takeUntil } from 'rxjs/operators';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@angular/material/progress-spinner";
|
|
7
|
+
export class ResendComponent {
|
|
8
|
+
_cdRef;
|
|
9
|
+
resend;
|
|
10
|
+
resendInProgress = false;
|
|
11
|
+
_destroy$ = new Subject();
|
|
12
|
+
constructor(_cdRef) {
|
|
13
|
+
this._cdRef = _cdRef;
|
|
14
|
+
}
|
|
15
|
+
resendClick() {
|
|
16
|
+
this.resendInProgress = true;
|
|
17
|
+
this.resend()
|
|
18
|
+
.pipe(finalize(() => {
|
|
19
|
+
this.resendInProgress = false;
|
|
20
|
+
this._cdRef.markForCheck();
|
|
21
|
+
}), takeUntil(this._destroy$))
|
|
22
|
+
.subscribe();
|
|
23
|
+
}
|
|
24
|
+
ngOnDestroy() {
|
|
25
|
+
this._destroy$.next();
|
|
26
|
+
this._destroy$.complete();
|
|
27
|
+
}
|
|
28
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResendComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ResendComponent, selector: "app-resend", inputs: { resend: "resend" }, ngImport: i0, template: "<ng-container *ngIf=\"!resendInProgress else sending\">\n Didn't receive a code? <a (click)=\"resendClick()\">Resend</a>\n</ng-container>\n<ng-template #sending>\n <div class=\"sending\">\n <mat-spinner [diameter]=\"12\"></mat-spinner> Sending\n </div>\n</ng-template>\n\n", styles: ["small{color:inherit}.sending{display:inline-flex;align-items:center}.sending mat-spinner{margin-right:2px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
30
|
+
}
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResendComponent, decorators: [{
|
|
32
|
+
type: Component,
|
|
33
|
+
args: [{ selector: 'app-resend', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!resendInProgress else sending\">\n Didn't receive a code? <a (click)=\"resendClick()\">Resend</a>\n</ng-container>\n<ng-template #sending>\n <div class=\"sending\">\n <mat-spinner [diameter]=\"12\"></mat-spinner> Sending\n </div>\n</ng-template>\n\n", styles: ["small{color:inherit}.sending{display:inline-flex;align-items:center}.sending mat-spinner{margin-right:2px}\n"] }]
|
|
34
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { resend: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}] } });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9yZXNlbmQvY29tcG9uZW50cy9yZXNlbmQvcmVzZW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9yZXNlbmQvY29tcG9uZW50cy9yZXNlbmQvcmVzZW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQXdCLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFTckQsTUFBTSxPQUFPLGVBQWU7SUFTaEI7SUFQTSxNQUFNLENBQXdCO0lBRXZDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUV4QixTQUFTLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUVsQyxZQUNVLE1BQXlCO1FBQXpCLFdBQU0sR0FBTixNQUFNLENBQW1CO0lBQ2hDLENBQUM7SUFFRyxXQUFXO1FBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sRUFBRTthQUNWLElBQUksQ0FDSCxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztZQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7d0dBNUJVLGVBQWU7NEZBQWYsZUFBZSxnRkNYNUIsd1JBU0E7OzRGREVhLGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0UsWUFBWSxtQkFHTCx1QkFBdUIsQ0FBQyxNQUFNO3dHQUkvQixNQUFNO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIElucHV0LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcmVzZW5kJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc2VuZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Jlc2VuZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUmVzZW5kQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBwdWJsaWMgcmVzZW5kOiAoKSA9PiBPYnNlcnZhYmxlPGFueT47XG4gIFxuICBwdWJsaWMgcmVzZW5kSW5Qcm9ncmVzcyA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcbiAgXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIHB1YmxpYyByZXNlbmRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLnJlc2VuZEluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgIHRoaXMucmVzZW5kKClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5yZXNlbmRJblByb2dyZXNzID0gZmFsc2U7ICBcbiAgICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTsgIFxuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG5cbn0iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIXJlc2VuZEluUHJvZ3Jlc3MgZWxzZSBzZW5kaW5nXCI+XG4gIERpZG4ndCByZWNlaXZlIGEgY29kZT8gPGEgKGNsaWNrKT1cInJlc2VuZENsaWNrKClcIj5SZXNlbmQ8L2E+XG48L25nLWNvbnRhaW5lcj5cbjxuZy10ZW1wbGF0ZSAjc2VuZGluZz5cbiAgPGRpdiBjbGFzcz1cInNlbmRpbmdcIj5cbiAgICA8bWF0LXNwaW5uZXIgW2RpYW1ldGVyXT1cIjEyXCI+PC9tYXQtc3Bpbm5lcj4gU2VuZGluZ1xuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbiJdfQ==
|
|
@@ -4,13 +4,13 @@ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
|
4
4
|
import { ResendComponent } from './components/resend';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class ResendModule {
|
|
7
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResendModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ResendModule, declarations: [ResendComponent], imports: [CommonModule,
|
|
9
|
+
MatProgressSpinnerModule], exports: [ResendComponent] });
|
|
10
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResendModule, imports: [CommonModule,
|
|
11
|
+
MatProgressSpinnerModule] });
|
|
7
12
|
}
|
|
8
|
-
|
|
9
|
-
ResendModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: ResendModule, declarations: [ResendComponent], imports: [CommonModule,
|
|
10
|
-
MatProgressSpinnerModule], exports: [ResendComponent] });
|
|
11
|
-
ResendModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ResendModule, imports: [CommonModule,
|
|
12
|
-
MatProgressSpinnerModule] });
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ResendModule, decorators: [{
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResendModule, decorators: [{
|
|
14
14
|
type: NgModule,
|
|
15
15
|
args: [{
|
|
16
16
|
imports: [
|
|
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
25
25
|
],
|
|
26
26
|
}]
|
|
27
27
|
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZW5kLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9yZXNlbmQvcmVzZW5kLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUU5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBZ0J0RCxNQUFNLE9BQU8sWUFBWTt3R0FBWixZQUFZO3lHQUFaLFlBQVksaUJBTnJCLGVBQWUsYUFMZixZQUFZO1lBRVosd0JBQXdCLGFBTXhCLGVBQWU7eUdBR04sWUFBWSxZQVhyQixZQUFZO1lBRVosd0JBQXdCOzs0RkFTZixZQUFZO2tCQWJ4QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUVaLHdCQUF3QjtxQkFDekI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxlQUFlO3FCQUNoQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcblxuaW1wb3J0IHsgUmVzZW5kQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Jlc2VuZCc7XG5cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcblxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUmVzZW5kQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgUmVzZW5kQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBSZXNlbmRNb2R1bGUge1xufVxuIl19
|
package/esm2022/app/modules/verification/components/2fa-verification/2fa-verification.component.mjs
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import { ControlContainer, NgForm } from '@angular/forms';
|
|
3
|
+
import { FsDialog } from '@firestitch/dialog';
|
|
4
|
+
import { FsMessage } from '@firestitch/message';
|
|
5
|
+
import { Subject } from 'rxjs';
|
|
6
|
+
import { filter, finalize, switchMap, tap } from 'rxjs/operators';
|
|
7
|
+
import { VerificationMethodType } from '../../../../enums/verification-method-type.enum';
|
|
8
|
+
import { Fs2faVerificationCodeComponent } from '../2fa-verification-code/2fa-verification-code.component';
|
|
9
|
+
import { Fs2faVerificationMethodsComponent } from '../2fa-verification-methods/2fa-verification-methods.component';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@firestitch/dialog";
|
|
12
|
+
import * as i2 from "@firestitch/message";
|
|
13
|
+
import * as i3 from "@angular/common";
|
|
14
|
+
import * as i4 from "@angular/forms";
|
|
15
|
+
import * as i5 from "@angular/material/checkbox";
|
|
16
|
+
import * as i6 from "@firestitch/form";
|
|
17
|
+
import * as i7 from "../2fa-verification-code/2fa-verification-code.component";
|
|
18
|
+
import * as i8 from "@firestitch/phone";
|
|
19
|
+
export class Fs2faVerificationComponent {
|
|
20
|
+
_cdRef;
|
|
21
|
+
_dialog;
|
|
22
|
+
_message;
|
|
23
|
+
verificationCodeComponent;
|
|
24
|
+
verificationMethod;
|
|
25
|
+
resend;
|
|
26
|
+
showTrustedDevice = true;
|
|
27
|
+
trustDevice = true;
|
|
28
|
+
codeLength;
|
|
29
|
+
trustDays;
|
|
30
|
+
formatRecipient = false;
|
|
31
|
+
getVerificationMethods;
|
|
32
|
+
selectVerificationMethod;
|
|
33
|
+
verified = new EventEmitter();
|
|
34
|
+
codeChanged = new EventEmitter();
|
|
35
|
+
codeCompleted = new EventEmitter();
|
|
36
|
+
trustDeviceChange = new EventEmitter();
|
|
37
|
+
code = '';
|
|
38
|
+
VerificationMethodType = VerificationMethodType;
|
|
39
|
+
_destroy$ = new Subject();
|
|
40
|
+
constructor(_cdRef, _dialog, _message) {
|
|
41
|
+
this._cdRef = _cdRef;
|
|
42
|
+
this._dialog = _dialog;
|
|
43
|
+
this._message = _message;
|
|
44
|
+
}
|
|
45
|
+
get recipient() {
|
|
46
|
+
if (this.verificationMethod.type === VerificationMethodType.Email) {
|
|
47
|
+
return this.verificationMethod.email;
|
|
48
|
+
}
|
|
49
|
+
if (this.verificationMethod.type === VerificationMethodType.Sms) {
|
|
50
|
+
return this.verificationMethod.phoneNumber;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
codeComplete(code) {
|
|
54
|
+
this.code = code;
|
|
55
|
+
this.codeCompleted.emit(this.code);
|
|
56
|
+
}
|
|
57
|
+
ngOnDestroy() {
|
|
58
|
+
this._destroy$.next();
|
|
59
|
+
this._destroy$.complete();
|
|
60
|
+
}
|
|
61
|
+
ngAfterViewInit() {
|
|
62
|
+
this.verificationCodeComponent.focus();
|
|
63
|
+
}
|
|
64
|
+
resendCode() {
|
|
65
|
+
return this.resend()
|
|
66
|
+
.pipe(tap(() => {
|
|
67
|
+
this.code = '';
|
|
68
|
+
this._message.success('Resent Code');
|
|
69
|
+
}), finalize(() => {
|
|
70
|
+
this.verificationCodeComponent.focus();
|
|
71
|
+
}));
|
|
72
|
+
}
|
|
73
|
+
showVerificationMethods() {
|
|
74
|
+
this.getVerificationMethods()
|
|
75
|
+
.pipe(switchMap((verificationMethods) => {
|
|
76
|
+
return this._dialog.open(Fs2faVerificationMethodsComponent, {
|
|
77
|
+
data: {
|
|
78
|
+
verificationMethod: this.verificationMethod,
|
|
79
|
+
verificationMethods,
|
|
80
|
+
selectVerificationMethod: this.selectVerificationMethod,
|
|
81
|
+
},
|
|
82
|
+
})
|
|
83
|
+
.afterClosed()
|
|
84
|
+
.pipe(filter((verificationMethod) => !!verificationMethod));
|
|
85
|
+
}))
|
|
86
|
+
.subscribe((verificationMethod) => {
|
|
87
|
+
this.verificationMethod = verificationMethod;
|
|
88
|
+
this.code = '';
|
|
89
|
+
this._cdRef.markForCheck();
|
|
90
|
+
setTimeout(() => {
|
|
91
|
+
this.verificationCodeComponent.focus();
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Fs2faVerificationComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FsDialog }, { token: i2.FsMessage }], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: Fs2faVerificationComponent, selector: "fs-2fa-verification", inputs: { verificationMethod: "verificationMethod", resend: "resend", showTrustedDevice: "showTrustedDevice", trustDevice: "trustDevice", codeLength: "codeLength", trustDays: "trustDays", formatRecipient: "formatRecipient", getVerificationMethods: "getVerificationMethods", selectVerificationMethod: "selectVerificationMethod" }, outputs: { verified: "verified", codeChanged: "codeChanged", codeCompleted: "codeCompleted", trustDeviceChange: "trustDeviceChange" }, viewQueries: [{ propertyName: "verificationCodeComponent", first: true, predicate: Fs2faVerificationCodeComponent, descendants: true }], ngImport: i0, template: "<div class=\"code-container\">\n <fs-2fa-verification-code\n [recipient]=\"(formatRecipient && verificationMethod.type === VerificationMethodType.Sms) ? (recipient | fsPhone) : recipient\"\n [type]=\"verificationMethod.type\"\n [code]=\"code\"\n [codeLength]=\"codeLength\"\n (codeChanged)=\"codeChanged.emit($event)\"\n (codeCompleted)=\"codeComplete($event)\">\n </fs-2fa-verification-code>\n</div>\n\n<div class=\"additional\">\n <div \n class=\"trust-device\"\n *ngIf=\"showTrustedDevice\">\n <mat-checkbox\n name=\"trust-device\"\n [(ngModel)]=\"trustDevice\"\n (ngModelChange)=\"trustDeviceChange.emit($event)\">\n <div class=\"small\">\n Bypass verification \n <ng-container *ngIf=\"trustDays\">for {{trustDays}} days</ng-container> \n <ng-container *ngIf=\"!trustDays\">for future signins</ng-container> \n unless cookies are cleared\n </div>\n </mat-checkbox>\n </div>\n</div>", styles: [":host ::ng-deep .mat-checkbox{margin:2px 0}:host ::ng-deep .mat-checkbox .mat-checkbox-label{line-height:normal}:host ::ng-deep .mat-checkbox .mat-checkbox-layout{white-space:normal}.code-container{text-align:center}.additional{display:flex;justify-content:space-between;align-items:center;margin:4px 0 5px}.additional small{color:inherit}.additional .resend{cursor:pointer;text-transform:none}.additional .resend mat-spinner{display:inline-block;vertical-align:middle}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i6.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormGreaterEqual]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { kind: "component", type: i7.Fs2faVerificationCodeComponent, selector: "fs-2fa-verification-code", inputs: ["type", "recipient", "codeLength", "code"], outputs: ["codeChanged", "codeCompleted"] }, { kind: "pipe", type: i8.FsPhonePipe, name: "fsPhone" }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
97
|
+
}
|
|
98
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Fs2faVerificationComponent, decorators: [{
|
|
99
|
+
type: Component,
|
|
100
|
+
args: [{ selector: 'fs-2fa-verification', changeDetection: ChangeDetectionStrategy.OnPush, viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], template: "<div class=\"code-container\">\n <fs-2fa-verification-code\n [recipient]=\"(formatRecipient && verificationMethod.type === VerificationMethodType.Sms) ? (recipient | fsPhone) : recipient\"\n [type]=\"verificationMethod.type\"\n [code]=\"code\"\n [codeLength]=\"codeLength\"\n (codeChanged)=\"codeChanged.emit($event)\"\n (codeCompleted)=\"codeComplete($event)\">\n </fs-2fa-verification-code>\n</div>\n\n<div class=\"additional\">\n <div \n class=\"trust-device\"\n *ngIf=\"showTrustedDevice\">\n <mat-checkbox\n name=\"trust-device\"\n [(ngModel)]=\"trustDevice\"\n (ngModelChange)=\"trustDeviceChange.emit($event)\">\n <div class=\"small\">\n Bypass verification \n <ng-container *ngIf=\"trustDays\">for {{trustDays}} days</ng-container> \n <ng-container *ngIf=\"!trustDays\">for future signins</ng-container> \n unless cookies are cleared\n </div>\n </mat-checkbox>\n </div>\n</div>", styles: [":host ::ng-deep .mat-checkbox{margin:2px 0}:host ::ng-deep .mat-checkbox .mat-checkbox-label{line-height:normal}:host ::ng-deep .mat-checkbox .mat-checkbox-layout{white-space:normal}.code-container{text-align:center}.additional{display:flex;justify-content:space-between;align-items:center;margin:4px 0 5px}.additional small{color:inherit}.additional .resend{cursor:pointer;text-transform:none}.additional .resend mat-spinner{display:inline-block;vertical-align:middle}\n"] }]
|
|
101
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.FsDialog }, { type: i2.FsMessage }]; }, propDecorators: { verificationCodeComponent: [{
|
|
102
|
+
type: ViewChild,
|
|
103
|
+
args: [Fs2faVerificationCodeComponent]
|
|
104
|
+
}], verificationMethod: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}], resend: [{
|
|
107
|
+
type: Input
|
|
108
|
+
}], showTrustedDevice: [{
|
|
109
|
+
type: Input
|
|
110
|
+
}], trustDevice: [{
|
|
111
|
+
type: Input
|
|
112
|
+
}], codeLength: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}], trustDays: [{
|
|
115
|
+
type: Input
|
|
116
|
+
}], formatRecipient: [{
|
|
117
|
+
type: Input
|
|
118
|
+
}], getVerificationMethods: [{
|
|
119
|
+
type: Input
|
|
120
|
+
}], selectVerificationMethod: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}], verified: [{
|
|
123
|
+
type: Output
|
|
124
|
+
}], codeChanged: [{
|
|
125
|
+
type: Output
|
|
126
|
+
}], codeCompleted: [{
|
|
127
|
+
type: Output
|
|
128
|
+
}], trustDeviceChange: [{
|
|
129
|
+
type: Output
|
|
130
|
+
}] } });
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMmZhLXZlcmlmaWNhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvdmVyaWZpY2F0aW9uL2NvbXBvbmVudHMvMmZhLXZlcmlmaWNhdGlvbi8yZmEtdmVyaWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy92ZXJpZmljYXRpb24vY29tcG9uZW50cy8yZmEtdmVyaWZpY2F0aW9uLzJmYS12ZXJpZmljYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUV6RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUMxRyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7Ozs7Ozs7OztBQVVuSCxNQUFNLE9BQU8sMEJBQTBCO0lBa0QzQjtJQUNBO0lBQ0E7SUFqREgseUJBQXlCLENBQWlDO0lBRzFELGtCQUFr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QUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO1lBQzdDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUUzQixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt3R0F6SFUsMEJBQTBCOzRGQUExQiwwQkFBMEIsdWtCQUUxQiw4QkFBOEIsZ0RDbkMzQywrOUJBMkJNLHN5RERJVyxDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQzs7NEZBRXhELDBCQUEwQjtrQkFQdEMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUM7dUpBSzVELHlCQUF5QjtzQkFEL0IsU0FBUzt1QkFBQyw4QkFBOEI7Z0JBSWxDLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxNQUFNO3NCQURaLEtBQUs7Z0JBSUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxzQkFBc0I7c0JBRDVCLEtBQUs7Z0JBSUMsd0JBQXdCO3NCQUQ5QixLQUFLO2dCQUlDLFFBQVE7c0JBRGQsTUFBTTtnQkFJQSxXQUFXO3NCQURqQixNQUFNO2dCQUlBLGFBQWE7c0JBRG5CLE1BQU07Z0JBSUEsaUJBQWlCO3NCQUR2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5cbmltcG9ydCB7IEZzRGlhbG9nIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZGlhbG9nJztcbmltcG9ydCB7IEZzTWVzc2FnZSB9IGZyb20gJ0BmaXJlc3RpdGNoL21lc3NhZ2UnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpbmFsaXplLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgVmVyaWZpY2F0aW9uTWV0aG9kVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudW1zL3ZlcmlmaWNhdGlvbi1tZXRob2QtdHlwZS5lbnVtJztcbmltcG9ydCB7IElGc1ZlcmlmaWNhdGlvbk1ldGhvZCB9IGZyb20gJy4uLy4uLy4uLy4uL2ludGVyZmFjZXMvdmVyaWZpY2F0aW9uLW1ldGhvZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRnMyZmFWZXJpZmljYXRpb25Db2RlQ29tcG9uZW50IH0gZnJvbSAnLi4vMmZhLXZlcmlmaWNhdGlvbi1jb2RlLzJmYS12ZXJpZmljYXRpb24tY29kZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnMyZmFWZXJpZmljYXRpb25NZXRob2RzQ29tcG9uZW50IH0gZnJvbSAnLi4vMmZhLXZlcmlmaWNhdGlvbi1tZXRob2RzLzJmYS12ZXJpZmljYXRpb24tbWV0aG9kcy5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLTJmYS12ZXJpZmljYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vMmZhLXZlcmlmaWNhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuLzJmYS12ZXJpZmljYXRpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsICBcbiAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IE5nRm9ybSB9XSxcbn0pXG5leHBvcnQgY2xhc3MgRnMyZmFWZXJpZmljYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gIEBWaWV3Q2hpbGQoRnMyZmFWZXJpZmljYXRpb25Db2RlQ29tcG9uZW50KVxuICBwdWJsaWMgdmVyaWZpY2F0aW9uQ29kZUNvbXBvbmVudDogRnMyZmFWZXJpZmljYXRpb25Db2RlQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB2ZXJpZmljYXRpb25NZXRob2Q6IElGc1ZlcmlmaWNhdGlvbk1ldGhvZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVzZW5kOiAoKSA9PiBPYnNlcnZhYmxlPHZvaWQ+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93VHJ1c3RlZERldmljZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHRydXN0RGV2aWNlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY29kZUxlbmd0aDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdHJ1c3REYXlzO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmb3JtYXRSZWNpcGllbnQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0VmVyaWZpY2F0aW9uTWV0aG9kczogKCkgPT4gT2JzZXJ2YWJsZTxJRnNWZXJpZmljYXRpb25NZXRob2RbXT47XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNlbGVjdFZlcmlmaWNhdGlvbk1ldGhvZDogKHZlcmlmaWNhdGlvbk1ldGhvZDogSUZzVmVyaWZpY2F0aW9uTWV0aG9kKSA9PiBPYnNlcnZhYmxlPElGc1ZlcmlmaWNhdGlvbk1ldGhvZD47XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyB2ZXJpZmllZCA9IG5ldyBFdmVudEVtaXR0ZXI8dW5rbm93bj4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNvZGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjx1bmtub3duPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY29kZUNvbXBsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dW5rbm93bj4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHRydXN0RGV2aWNlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHB1YmxpYyBjb2RlID0gJyc7XG4gIHB1YmxpYyBWZXJpZmljYXRpb25NZXRob2RUeXBlID0gVmVyaWZpY2F0aW9uTWV0aG9kVHlwZTtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX2RpYWxvZzogRnNEaWFsb2csXG4gICAgcHJpdmF0ZSBfbWVzc2FnZTogRnNNZXNzYWdlLFxuICApIHt9XG5cbiAgcHVibGljIGdldCByZWNpcGllbnQoKTogc3RyaW5nIHtcbiAgICBpZih0aGlzLnZlcmlmaWNhdGlvbk1ldGhvZC50eXBlID09PSBWZXJpZmljYXRpb25NZXRob2RUeXBlLkVtYWlsKSB7XG4gICAgICByZXR1cm4gdGhpcy52ZXJpZmljYXRpb25NZXRob2QuZW1haWw7XG4gICAgfVxuXG4gICAgaWYodGhpcy52ZXJpZmljYXRpb25NZXRob2QudHlwZSA9PT0gVmVyaWZpY2F0aW9uTWV0aG9kVHlwZS5TbXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnZlcmlmaWNhdGlvbk1ldGhvZC5waG9uZU51bWJlcjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY29kZUNvbXBsZXRlKGNvZGUpOiB2b2lkIHtcbiAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICAgIHRoaXMuY29kZUNvbXBsZXRlZC5lbWl0KHRoaXMuY29kZSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMudmVyaWZpY2F0aW9uQ29kZUNvbXBvbmVudC5mb2N1cygpOyAgICBcbiAgfVxuXG4gIHB1YmxpYyByZXNlbmRDb2RlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMucmVzZW5kKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY29kZSA9ICcnO1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnUmVzZW50IENvZGUnKTtcbiAgICAgICAgfSksXG4gICAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnZlcmlmaWNhdGlvbkNvZGVDb21wb25lbnQuZm9jdXMoKTsgIFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2hvd1ZlcmlmaWNhdGlvbk1ldGhvZHMoKTogdm9pZCB7XG4gICAgdGhpcy5nZXRWZXJpZmljYXRpb25NZXRob2RzKClcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKHZlcmlmaWNhdGlvbk1ldGhvZHMpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZGlhbG9nLm9wZW4oXG4gICAgICAgICAgICBGczJmYVZlcmlmaWNhdGlvbk1ldGhvZHNDb21wb25lbnQsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICB2ZXJpZmljYXRpb25NZXRob2Q6IHRoaXMudmVyaWZpY2F0aW9uTWV0aG9kLFxuICAgICAgICAgICAgICAgIHZlcmlmaWNhdGlvbk1ldGhvZHMsXG4gICAgICAgICAgICAgICAgc2VsZWN0VmVyaWZpY2F0aW9uTWV0aG9kOiB0aGlzLnNlbGVjdFZlcmlmaWNhdGlvbk1ldGhvZCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgKVxuICAgICAgICAgICAgLmFmdGVyQ2xvc2VkKClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICBmaWx0ZXIoKHZlcmlmaWNhdGlvbk1ldGhvZCkgPT4gISF2ZXJpZmljYXRpb25NZXRob2QpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2ZXJpZmljYXRpb25NZXRob2QpID0+IHtcbiAgICAgICAgdGhpcy52ZXJpZmljYXRpb25NZXRob2QgPSB2ZXJpZmljYXRpb25NZXRob2Q7XG4gICAgICAgIHRoaXMuY29kZSA9ICcnO1xuICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLnZlcmlmaWNhdGlvbkNvZGVDb21wb25lbnQuZm9jdXMoKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiY29kZS1jb250YWluZXJcIj5cbiAgPGZzLTJmYS12ZXJpZmljYXRpb24tY29kZVxuICAgIFtyZWNpcGllbnRdPVwiKGZvcm1hdFJlY2lwaWVudCAmJiB2ZXJpZmljYXRpb25NZXRob2QudHlwZSA9PT0gVmVyaWZpY2F0aW9uTWV0aG9kVHlwZS5TbXMpID8gKHJlY2lwaWVudCB8IGZzUGhvbmUpIDogcmVjaXBpZW50XCJcbiAgICBbdHlwZV09XCJ2ZXJpZmljYXRpb25NZXRob2QudHlwZVwiXG4gICAgW2NvZGVdPVwiY29kZVwiXG4gICAgW2NvZGVMZW5ndGhdPVwiY29kZUxlbmd0aFwiXG4gICAgKGNvZGVDaGFuZ2VkKT1cImNvZGVDaGFuZ2VkLmVtaXQoJGV2ZW50KVwiXG4gICAgKGNvZGVDb21wbGV0ZWQpPVwiY29kZUNvbXBsZXRlKCRldmVudClcIj5cbiAgPC9mcy0yZmEtdmVyaWZpY2F0aW9uLWNvZGU+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImFkZGl0aW9uYWxcIj5cbiAgPGRpdiBcbiAgICAgIGNsYXNzPVwidHJ1c3QtZGV2aWNlXCJcbiAgICAgICpuZ0lmPVwic2hvd1RydXN0ZWREZXZpY2VcIj5cbiAgICA8bWF0LWNoZWNrYm94XG4gICAgICAgICAgbmFtZT1cInRydXN0LWRldmljZVwiXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJ0cnVzdERldmljZVwiXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidHJ1c3REZXZpY2VDaGFuZ2UuZW1pdCgkZXZlbnQpXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic21hbGxcIj5cbiAgICAgICAgQnlwYXNzIHZlcmlmaWNhdGlvbiBcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRydXN0RGF5c1wiPmZvciB7e3RydXN0RGF5c319IGRheXM8L25nLWNvbnRhaW5lcj4gIFxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXRydXN0RGF5c1wiPmZvciBmdXR1cmUgc2lnbmluczwvbmctY29udGFpbmVyPiBcbiAgICAgICAgdW5sZXNzIGNvb2tpZXMgYXJlIGNsZWFyZWRcbiAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWNoZWNrYm94PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|