@firestitch/2fa 13.1.5 → 13.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,6 +8,7 @@ export declare class CodeInputComponent implements OnInit {
8
8
  codeCompleted: EventEmitter<any>;
9
9
  codeChanged: EventEmitter<any>;
10
10
  ngOnInit(): void;
11
+ codeComplete(code: any): void;
11
12
  focus(): void;
12
13
  static ɵfac: i0.ɵɵFactoryDeclaration<CodeInputComponent, never>;
13
14
  static ɵcmp: i0.ɵɵComponentDeclaration<CodeInputComponent, "app-code-input", never, { "codeLength": "codeLength"; "code": "code"; }, { "codeCompleted": "codeCompleted"; "codeChanged": "codeChanged"; }, never, never>;
@@ -20,7 +20,7 @@ export declare class EmailComponent {
20
20
  constructor(_data: any, _dialogRef: MatDialogRef<EmailComponent>, _cdRef: ChangeDetectorRef, _message: FsMessage);
21
21
  resend: () => Observable<void>;
22
22
  submit: () => Observable<any>;
23
- codeCompleted(): void;
23
+ codeCompleted(code: any): void;
24
24
  codeChanged(code: any): void;
25
25
  static ɵfac: i0.ɵɵFactoryDeclaration<EmailComponent, never>;
26
26
  static ɵcmp: i0.ɵɵComponentDeclaration<EmailComponent, "ng-component", never, {}, {}, never, never>;
@@ -21,7 +21,7 @@ export declare class NumberComponent {
21
21
  constructor(_data: any, _dialogRef: MatDialogRef<NumberComponent>, _cdRef: ChangeDetectorRef, _message: FsMessage);
22
22
  resend: () => Observable<void>;
23
23
  submit: () => Observable<any>;
24
- codeCompleted(): void;
24
+ codeCompleted(code: any): void;
25
25
  codeChanged(code: any): void;
26
26
  static ɵfac: i0.ɵɵFactoryDeclaration<NumberComponent, never>;
27
27
  static ɵcmp: i0.ɵɵComponentDeclaration<NumberComponent, "ng-component", never, {}, {}, never, never>;
@@ -14,6 +14,7 @@ export declare class Fs2faVerificationCodeComponent {
14
14
  codeCompleted: EventEmitter<void>;
15
15
  VerificationMethodType: typeof VerificationMethodType;
16
16
  constructor(_form: FsFormDirective);
17
+ codeComplete(code: any): void;
17
18
  codeChange(code: any): void;
18
19
  focus(): void;
19
20
  static ɵfac: i0.ɵɵFactoryDeclaration<Fs2faVerificationCodeComponent, never>;
@@ -13,15 +13,18 @@ export class CodeInputComponent {
13
13
  this.codeLength = 6;
14
14
  }
15
15
  }
16
+ codeComplete(code) {
17
+ this.codeChanged.emit(code);
18
+ }
16
19
  focus() {
17
20
  this.codeInput.focusOnField(0);
18
21
  }
19
22
  }
20
23
  CodeInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CodeInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
- CodeInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: CodeInputComponent, selector: "app-code-input", inputs: { codeLength: "codeLength", code: "code" }, outputs: { codeCompleted: "codeCompleted", codeChanged: "codeChanged" }, viewQueries: [{ propertyName: "codeInput", first: true, predicate: FsCodeInputComponent, descendants: true }], ngImport: i0, template: "<fs-code-input\n [codeLength]=\"codeLength\"\n [ngModel]=\"code\"\n name=\"code\"\n [isPrevFocusableAfterClearing]=\"false\"\n (completedLast)=\"codeCompleted.emit($event)\"\n (ngModelChange)=\"codeChanged.emit($event)\">\n</fs-code-input>\n", styles: ["code-input{--item-spacing: 10px;--item-height: 20px;--item-border: none;--item-border-bottom: 2px solid #949494;--item-border-has-value: none;--item-border-bottom-has-value: 2px solid #949494;--item-border-focused: none;--item-border-bottom-focused: 2px solid #0061AF;--item-shadow-focused: none;--item-border-radius: 0px}code-input ::ng-deep span:first-child{padding-left:0!important}code-input ::ng-deep span:last-child{padding-right:0!important}code-input ::ng-deep input{font-size:20px!important;height:40px!important;padding:0!important}\n"], components: [{ type: i1.FsCodeInputComponent, selector: "fs-code-input", inputs: ["codeLength", "inputType", "inputMode", "initialFocusField", "isCharsCode", "isCodeHidden", "isPrevFocusableAfterClearing", "isFocusingOnLastByClickIfFilled", "disabled", "autocapitalize"], outputs: ["changed", "completed", "completedLast"] }], directives: [{ type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
+ CodeInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: CodeInputComponent, selector: "app-code-input", inputs: { codeLength: "codeLength", code: "code" }, outputs: { codeCompleted: "codeCompleted", codeChanged: "codeChanged" }, viewQueries: [{ propertyName: "codeInput", first: true, predicate: FsCodeInputComponent, descendants: true }], ngImport: i0, template: "<fs-code-input\n [codeLength]=\"codeLength\"\n [ngModel]=\"code\"\n name=\"code\"\n [isPrevFocusableAfterClearing]=\"false\"\n (completedLast)=\"codeComplete($event)\"\n (ngModelChange)=\"codeChanged.emit($event)\">\n</fs-code-input>\n", styles: ["code-input{--item-spacing: 10px;--item-height: 20px;--item-border: none;--item-border-bottom: 2px solid #949494;--item-border-has-value: none;--item-border-bottom-has-value: 2px solid #949494;--item-border-focused: none;--item-border-bottom-focused: 2px solid #0061AF;--item-shadow-focused: none;--item-border-radius: 0px}code-input ::ng-deep span:first-child{padding-left:0!important}code-input ::ng-deep span:last-child{padding-right:0!important}code-input ::ng-deep input{font-size:20px!important;height:40px!important;padding:0!important}\n"], components: [{ type: i1.FsCodeInputComponent, selector: "fs-code-input", inputs: ["codeLength", "inputType", "inputMode", "initialFocusField", "isCharsCode", "isCodeHidden", "isPrevFocusableAfterClearing", "isFocusingOnLastByClickIfFilled", "disabled", "autocapitalize"], outputs: ["changed", "completed", "completedLast"] }], directives: [{ type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
22
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CodeInputComponent, decorators: [{
23
26
  type: Component,
24
- args: [{ selector: 'app-code-input', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fs-code-input\n [codeLength]=\"codeLength\"\n [ngModel]=\"code\"\n name=\"code\"\n [isPrevFocusableAfterClearing]=\"false\"\n (completedLast)=\"codeCompleted.emit($event)\"\n (ngModelChange)=\"codeChanged.emit($event)\">\n</fs-code-input>\n", styles: ["code-input{--item-spacing: 10px;--item-height: 20px;--item-border: none;--item-border-bottom: 2px solid #949494;--item-border-has-value: none;--item-border-bottom-has-value: 2px solid #949494;--item-border-focused: none;--item-border-bottom-focused: 2px solid #0061AF;--item-shadow-focused: none;--item-border-radius: 0px}code-input ::ng-deep span:first-child{padding-left:0!important}code-input ::ng-deep span:last-child{padding-right:0!important}code-input ::ng-deep input{font-size:20px!important;height:40px!important;padding:0!important}\n"] }]
27
+ args: [{ selector: 'app-code-input', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fs-code-input\n [codeLength]=\"codeLength\"\n [ngModel]=\"code\"\n name=\"code\"\n [isPrevFocusableAfterClearing]=\"false\"\n (completedLast)=\"codeComplete($event)\"\n (ngModelChange)=\"codeChanged.emit($event)\">\n</fs-code-input>\n", styles: ["code-input{--item-spacing: 10px;--item-height: 20px;--item-border: none;--item-border-bottom: 2px solid #949494;--item-border-has-value: none;--item-border-bottom-has-value: 2px solid #949494;--item-border-focused: none;--item-border-bottom-focused: 2px solid #0061AF;--item-shadow-focused: none;--item-border-radius: 0px}code-input ::ng-deep span:first-child{padding-left:0!important}code-input ::ng-deep span:last-child{padding-right:0!important}code-input ::ng-deep input{font-size:20px!important;height:40px!important;padding:0!important}\n"] }]
25
28
  }], propDecorators: { codeInput: [{
26
29
  type: ViewChild,
27
30
  args: [FsCodeInputComponent]
@@ -34,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
34
37
  }], codeChanged: [{
35
38
  type: Output
36
39
  }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvY29kZS1pbnB1dC9jb21wb25lbnRzL2NvZGUtaW5wdXQvY29kZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvY29kZS1pbnB1dC9jb21wb25lbnRzL2NvZGUtaW5wdXQvY29kZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQVM5RCxNQUFNLE9BQU8sa0JBQWtCO0lBTi9CO1FBY21CLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNuQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7S0FXbkQ7SUFUUSxRQUFRO1FBQ2IsSUFBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7OytHQW5CVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw4TkFFbEIsb0JBQW9CLGdEQ2JqQyx5UEFRQTsyRkRHYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsZ0JBQWdCLG1CQUdULHVCQUF1QixDQUFDLE1BQU07OEJBS3hDLFNBQVM7c0JBRGYsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBR2YsVUFBVTtzQkFBekIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUVXLGFBQWE7c0JBQTdCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRnNDb2RlSW5wdXRDb21wb25lbnQgfSBmcm9tICdAZmlyZXN0aXRjaC9jb2RlLWlucHV0JztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY29kZS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2RlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29kZS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBAVmlld0NoaWxkKEZzQ29kZUlucHV0Q29tcG9uZW50KVxuICBwdWJsaWMgY29kZUlucHV0OiBGc0NvZGVJbnB1dENvbXBvbmVudDtcblxuICBASW5wdXQoKSBwdWJsaWMgY29kZUxlbmd0aDogbnVtYmVyO1xuICBASW5wdXQoKSBwdWJsaWMgY29kZTtcblxuICBAT3V0cHV0KCkgcHVibGljIGNvZGVDb21wbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgY29kZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKCF0aGlzLmNvZGVMZW5ndGgpIHtcbiAgICAgIHRoaXMuY29kZUxlbmd0aCA9IDY7XG4gICAgfVxuICB9IFxuXG4gIHB1YmxpYyBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmNvZGVJbnB1dC5mb2N1c09uRmllbGQoMCk7XG4gIH1cbn1cbiIsIjxmcy1jb2RlLWlucHV0XG4gIFtjb2RlTGVuZ3RoXT1cImNvZGVMZW5ndGhcIlxuICBbbmdNb2RlbF09XCJjb2RlXCJcbiAgbmFtZT1cImNvZGVcIlxuICBbaXNQcmV2Rm9jdXNhYmxlQWZ0ZXJDbGVhcmluZ109XCJmYWxzZVwiXG4gIChjb21wbGV0ZWRMYXN0KT1cImNvZGVDb21wbGV0ZWQuZW1pdCgkZXZlbnQpXCJcbiAgKG5nTW9kZWxDaGFuZ2UpPVwiY29kZUNoYW5nZWQuZW1pdCgkZXZlbnQpXCI+XG48L2ZzLWNvZGUtaW5wdXQ+XG4iXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvY29kZS1pbnB1dC9jb21wb25lbnRzL2NvZGUtaW5wdXQvY29kZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvY29kZS1pbnB1dC9jb21wb25lbnRzL2NvZGUtaW5wdXQvY29kZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQVM5RCxNQUFNLE9BQU8sa0JBQWtCO0lBTi9CO1FBY21CLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNuQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7S0FlbkQ7SUFiUSxRQUFRO1FBQ2IsSUFBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRU0sWUFBWSxDQUFDLElBQUk7UUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQyxDQUFDOzsrR0F2QlUsa0JBQWtCO21HQUFsQixrQkFBa0IsOE5BRWxCLG9CQUFvQixnRENiakMsbVBBUUE7MkZER2Esa0JBQWtCO2tCQU45QixTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUt4QyxTQUFTO3NCQURmLFNBQVM7dUJBQUMsb0JBQW9CO2dCQUdmLFVBQVU7c0JBQXpCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFFVyxhQUFhO3NCQUE3QixNQUFNO2dCQUNVLFdBQVc7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZzQ29kZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnQGZpcmVzdGl0Y2gvY29kZS1pbnB1dCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNvZGUtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29kZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvZGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENvZGVJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQFZpZXdDaGlsZChGc0NvZGVJbnB1dENvbXBvbmVudClcbiAgcHVibGljIGNvZGVJbnB1dDogRnNDb2RlSW5wdXRDb21wb25lbnQ7XG5cbiAgQElucHV0KCkgcHVibGljIGNvZGVMZW5ndGg6IG51bWJlcjtcbiAgQElucHV0KCkgcHVibGljIGNvZGU7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBjb2RlQ29tcGxldGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgcHVibGljIGNvZGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZighdGhpcy5jb2RlTGVuZ3RoKSB7XG4gICAgICB0aGlzLmNvZGVMZW5ndGggPSA2O1xuICAgIH1cbiAgfSBcblxuICBwdWJsaWMgY29kZUNvbXBsZXRlKGNvZGUpOiB2b2lkIHtcbiAgICB0aGlzLmNvZGVDaGFuZ2VkLmVtaXQoY29kZSk7XG4gIH1cblxuICBwdWJsaWMgZm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5jb2RlSW5wdXQuZm9jdXNPbkZpZWxkKDApO1xuICB9XG59XG4iLCI8ZnMtY29kZS1pbnB1dFxuICBbY29kZUxlbmd0aF09XCJjb2RlTGVuZ3RoXCJcbiAgW25nTW9kZWxdPVwiY29kZVwiXG4gIG5hbWU9XCJjb2RlXCJcbiAgW2lzUHJldkZvY3VzYWJsZUFmdGVyQ2xlYXJpbmddPVwiZmFsc2VcIlxuICAoY29tcGxldGVkTGFzdCk9XCJjb2RlQ29tcGxldGUoJGV2ZW50KVwiXG4gIChuZ01vZGVsQ2hhbmdlKT1cImNvZGVDaGFuZ2VkLmVtaXQoJGV2ZW50KVwiPlxuPC9mcy1jb2RlLWlucHV0PlxuIl19
@@ -55,7 +55,8 @@ export class EmailComponent {
55
55
  this.twoFactorManageService = _data.twoFactorManageService;
56
56
  this.default = !this.twoFactorManageService.hasVerificationMethods;
57
57
  }
58
- codeCompleted() {
58
+ codeCompleted(code) {
59
+ this.code = code;
59
60
  //Legacy support
60
61
  setTimeout(() => {
61
62
  if (!this.form.submitting) {
@@ -68,10 +69,10 @@ export class EmailComponent {
68
69
  }
69
70
  }
70
71
  EmailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EmailComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i0.ChangeDetectorRef }, { token: i2.FsMessage }], target: i0.ɵɵFactoryTarget.Component });
71
- EmailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EmailComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: FsFormDirective, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"submit\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Email Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted()\"\n [resend]=\"resend\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this email for verifying your account security. </p>\n <mat-form-field>\n <mat-label>Email</mat-label>\n <input\n matInput\n [required]=\"true\"\n [(ngModel)]=\"email\"\n [fsFormEmail]=\"true\"\n name=\"email\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}app-code-input{margin-bottom:5px;display:block}\n"], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout"] }, { type: i4.Fs2faVerificationComponent, selector: "fs-2fa-verification", inputs: ["verificationMethod", "resend", "showTrustedDevice", "trustDevice", "codeLength", "trustDays", "formatRecipient", "getVerificationMethods", "selectVerificationMethod"], outputs: ["verified", "codeChanged", "codeCompleted", "trustDeviceChange"] }, { type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.MatLabel, selector: "mat-label" }, { type: i11.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i8.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i9.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i9.FsFormEmailDirective, selector: "[fsFormEmail]", inputs: ["fsFormEmail", "fsFormEmailMessage"] }, { type: i9.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i9.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit", "form"] }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
72
+ EmailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EmailComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: FsFormDirective, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"submit\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Email Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted($event)\"\n [resend]=\"resend\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this email for verifying your account security. </p>\n <mat-form-field>\n <mat-label>Email</mat-label>\n <input\n matInput\n [required]=\"true\"\n [(ngModel)]=\"email\"\n [fsFormEmail]=\"true\"\n name=\"email\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}app-code-input{margin-bottom:5px;display:block}\n"], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout"] }, { type: i4.Fs2faVerificationComponent, selector: "fs-2fa-verification", inputs: ["verificationMethod", "resend", "showTrustedDevice", "trustDevice", "codeLength", "trustDays", "formatRecipient", "getVerificationMethods", "selectVerificationMethod"], outputs: ["verified", "codeChanged", "codeCompleted", "trustDeviceChange"] }, { type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.MatLabel, selector: "mat-label" }, { type: i11.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i8.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i9.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i9.FsFormEmailDirective, selector: "[fsFormEmail]", inputs: ["fsFormEmail", "fsFormEmailMessage"] }, { type: i9.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i9.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit", "form"] }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
72
73
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EmailComponent, decorators: [{
73
74
  type: Component,
74
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<form fsForm [submit]=\"submit\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Email Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted()\"\n [resend]=\"resend\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this email for verifying your account security. </p>\n <mat-form-field>\n <mat-label>Email</mat-label>\n <input\n matInput\n [required]=\"true\"\n [(ngModel)]=\"email\"\n [fsFormEmail]=\"true\"\n name=\"email\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}app-code-input{margin-bottom:5px;display:block}\n"] }]
75
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<form fsForm [submit]=\"submit\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Email Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted($event)\"\n [resend]=\"resend\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this email for verifying your account security. </p>\n <mat-form-field>\n <mat-label>Email</mat-label>\n <input\n matInput\n [required]=\"true\"\n [(ngModel)]=\"email\"\n [fsFormEmail]=\"true\"\n name=\"email\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}app-code-input{margin-bottom:5px;display:block}\n"] }]
75
76
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
76
77
  type: Inject,
77
78
  args: [MAT_DIALOG_DATA]
@@ -79,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
79
80
  type: ViewChild,
80
81
  args: [FsFormDirective, { static: false }]
81
82
  }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL21hbmFnZS9jb21wb25lbnRzL2VtYWlsL2VtYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2UvY29tcG9uZW50cy9lbWFpbC9lbWFpbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQzFDLFNBQVMsRUFBRSxNQUFNLEVBQ2pCLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFaEQsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7Ozs7Ozs7O0FBU3pGLE1BQU0sT0FBTyxjQUFjO0lBWXpCLFlBQ21DLEtBQVUsRUFDbkMsVUFBd0MsRUFDeEMsTUFBeUIsRUFDekIsUUFBbUI7UUFITSxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQThCO1FBQ3hDLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFSdEIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQzFCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBYW5CLFdBQU0sR0FBRyxHQUFxQixFQUFFO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLHdCQUF3QixFQUFFO2lCQUMxRCxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQyxDQUNILENBQUM7UUFDTixDQUFDLENBQUM7UUFFSyxXQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ25CLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDWixJQUFJLENBQ0gsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDYixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO29CQUM5QixJQUFJLENBQUMsc0JBQXNCLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDO3lCQUMvRSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsRUFBRTt3QkFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsbUNBQW1DLENBQUMsQ0FBQzt3QkFDM0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztvQkFDNUMsQ0FBQyxDQUFDLENBQ0gsQ0FBQyxDQUFDO29CQUNMLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx5QkFBeUIsQ0FBQzt3QkFDcEQsSUFBSSxFQUFFLHNCQUFzQixDQUFDLEtBQUs7d0JBQ2xDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSzt3QkFDakIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO3FCQUN0QixDQUFDO3lCQUNDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFO3dCQUN6QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUM7d0JBQzdDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7d0JBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7b0JBQzdCLENBQUMsQ0FBQyxDQUNILENBQUM7WUFDUixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ04sQ0FBQyxDQUFDO1FBdkNBLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUMsc0JBQXNCLENBQUM7UUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxzQkFBc0IsQ0FBQztJQUNyRSxDQUFDO0lBdUNNLGFBQWE7UUFDbEIsZ0JBQWdCO1FBQ2hCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7YUFDM0I7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXLENBQUMsSUFBSTtRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDOzsyR0F0RVUsY0FBYyxrQkFhZixlQUFlOytGQWJkLGNBQWMsMEZBRWQsZUFBZSxnREMxQjVCLHMvQ0FtREE7MkZEM0JhLGNBQWM7a0JBTDFCLFNBQVM7c0NBR1MsdUJBQXVCLENBQUMsTUFBTTs7MEJBZTVDLE1BQU07MkJBQUMsZUFBZTsrSEFWbEIsSUFBSTtzQkFEVixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCwgSW5qZWN0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cblxuaW1wb3J0IHsgRnNGb3JtRGlyZWN0aXZlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZm9ybSc7XG5pbXBvcnQgeyBGc01lc3NhZ2UgfSBmcm9tICdAZmlyZXN0aXRjaC9tZXNzYWdlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBWZXJpZmljYXRpb25NZXRob2RUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZW51bXMvdmVyaWZpY2F0aW9uLW1ldGhvZC10eXBlLmVudW0nO1xuaW1wb3J0IHsgVHdvRmFjdG9yTWFuYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2VtYWlsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZW1haWwuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEVtYWlsQ29tcG9uZW50IHtcblxuICBAVmlld0NoaWxkKEZzRm9ybURpcmVjdGl2ZSwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHB1YmxpYyBmb3JtOiBGc0Zvcm1EaXJlY3RpdmU7XG5cbiAgcHVibGljIGVtYWlsO1xuICBwdWJsaWMgY29kZTtcbiAgcHVibGljIGRlZmF1bHQ7XG4gIHB1YmxpYyB2ZXJpZmljYXRpb25NZXRob2QgPSBudWxsO1xuICBwdWJsaWMgdHJ1c3REZXZpY2UgPSB0cnVlO1xuICBwdWJsaWMgdHdvRmFjdG9yTWFuYWdlU2VydmljZTogVHdvRmFjdG9yTWFuYWdlU2VydmljZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHJpdmF0ZSBfZGF0YTogYW55LFxuICAgIHByaXZhdGUgX2RpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEVtYWlsQ29tcG9uZW50PixcbiAgICBwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfbWVzc2FnZTogRnNNZXNzYWdlLFxuICApIHtcbiAgICB0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UgPSBfZGF0YS50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlO1xuICAgIHRoaXMuZGVmYXVsdCA9ICF0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UuaGFzVmVyaWZpY2F0aW9uTWV0aG9kcztcbiAgfVxuXG4gIHB1YmxpYyByZXNlbmQgPSAoKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMudHdvRmFjdG9yTWFuYWdlU2VydmljZS52ZXJpZmljYXRpb25NZXRob2RSZXNlbmQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fbWVzc2FnZS5zdWNjZXNzKCdSZXNlbnQgdmVyaWZpY2F0aW9uIGNvZGUnKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9O1xuXG4gIHB1YmxpYyBzdWJtaXQgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG9mKHRydWUpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy52ZXJpZmljYXRpb25NZXRob2QgP1xuICAgICAgICAgICAgdGhpcy50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlLnZlcmlmaWNhdGlvbk1ldGhvZFZlcmlmeSQodGhpcy5jb2RlLCB0aGlzLnRydXN0RGV2aWNlKVxuICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoKHZlcmlmaWNhdGlvbk1ldGhvZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgdGhpcy5fbWVzc2FnZS5zdWNjZXNzKCdDcmVhdGVkIGVtYWlsIHZlcmlmaWNhdGlvbiBtZXRob2QnKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuX2RpYWxvZ1JlZi5jbG9zZSh2ZXJpZmljYXRpb25NZXRob2QpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICApIDpcbiAgICAgICAgICAgIHRoaXMudHdvRmFjdG9yTWFuYWdlU2VydmljZS52ZXJpZmljYXRpb25NZXRob2RDcmVhdGUkKHtcbiAgICAgICAgICAgICAgdHlwZTogVmVyaWZpY2F0aW9uTWV0aG9kVHlwZS5FbWFpbCxcbiAgICAgICAgICAgICAgZW1haWw6IHRoaXMuZW1haWwsXG4gICAgICAgICAgICAgIGRlZmF1bHQ6IHRoaXMuZGVmYXVsdCxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgodmVyaWZpY2F0aW9uTWV0aG9kKSA9PiB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnZlcmlmaWNhdGlvbk1ldGhvZCA9IHZlcmlmaWNhdGlvbk1ldGhvZDtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5jbGVhcigpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfTtcblxuICBwdWJsaWMgY29kZUNvbXBsZXRlZCgpOiB2b2lkIHtcbiAgICAvL0xlZ2FjeSBzdXBwb3J0XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZighdGhpcy5mb3JtLnN1Ym1pdHRpbmcpIHtcbiAgICAgICAgdGhpcy5mb3JtLnRyaWdnZXJTdWJtaXQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjb2RlQ2hhbmdlZChjb2RlKTogdm9pZCB7XG4gICAgdGhpcy5jb2RlID0gY29kZTtcbiAgfVxuXG59XG4iLCI8Zm9ybSBmc0Zvcm0gW3N1Ym1pdF09XCJzdWJtaXRcIj5cbiAgPGZzLWRpYWxvZz5cbiAgICA8aDEgbWF0LWRpYWxvZy10aXRsZT5cbiAgICAgIEVtYWlsIFNldHVwXG4gICAgPC9oMT5cbiAgICA8bWF0LWRpYWxvZy1jb250ZW50PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZlcmlmaWNhdGlvbk1ldGhvZDsgZWxzZSBub3RWZXJpZmljYXRpb25NZXRob2RcIj5cbiAgICAgICAgPGZzLTJmYS12ZXJpZmljYXRpb25cbiAgICAgICAgICBbdmVyaWZpY2F0aW9uTWV0aG9kXT1cInZlcmlmaWNhdGlvbk1ldGhvZFwiXG4gICAgICAgICAgKGNvZGVDaGFuZ2VkKT1cImNvZGVDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICAgIChjb2RlQ29tcGxldGVkKT1cImNvZGVDb21wbGV0ZWQoKVwiXG4gICAgICAgICAgW3Jlc2VuZF09XCJyZXNlbmRcIlxuICAgICAgICAgIFsodHJ1c3REZXZpY2UpXT1cInRydXN0RGV2aWNlXCI+XG4gICAgICAgIDwvZnMtMmZhLXZlcmlmaWNhdGlvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctdGVtcGxhdGUgI25vdFZlcmlmaWNhdGlvbk1ldGhvZD5cbiAgICAgICAgPHA+VGhlIGFwcCB3aWxsIG9ubHkgdXNlIHRoaXMgZW1haWwgZm9yIHZlcmlmeWluZyB5b3VyIGFjY291bnQgc2VjdXJpdHkuIDwvcD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxtYXQtbGFiZWw+RW1haWw8L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImVtYWlsXCJcbiAgICAgICAgICAgIFtmc0Zvcm1FbWFpbF09XCJ0cnVlXCJcbiAgICAgICAgICAgIG5hbWU9XCJlbWFpbFwiPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8bWF0LWNoZWNrYm94IFxuICAgICAgICAgICAgbmFtZT1cImRlZmF1bHRcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJkZWZhdWx0XCJcbiAgICAgICAgICAgIFtkaXNhYmxlUmlwcGxlXT1cInRydWVcIj5cbiAgICAgICAgICBNYWtlIHRoaXMgdGhlIGRlZmF1bHQgdmVyaWZpY2F0aW9uIG1ldGhvZFxuICAgICAgICA8L21hdC1jaGVja2JveD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgPG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICB0eXBlPVwic3VibWl0XCI+XG4gICAgICAgIE5leHRcbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbbWF0LWRpYWxvZy1jbG9zZV09XCJ1bmRlZmluZWRcIj5cbiAgICAgICAgQ2FuY2VsXG4gICAgICA8L2J1dHRvbj5cbiAgICA8L21hdC1kaWFsb2ctYWN0aW9ucz5cbiAgPC9mcy1kaWFsb2c+XG48L2Zvcm0+XG4iXX0=
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL21hbmFnZS9jb21wb25lbnRzL2VtYWlsL2VtYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2UvY29tcG9uZW50cy9lbWFpbC9lbWFpbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQzFDLFNBQVMsRUFBRSxNQUFNLEVBQ2pCLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFaEQsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7Ozs7Ozs7O0FBU3pGLE1BQU0sT0FBTyxjQUFjO0lBWXpCLFlBQ21DLEtBQVUsRUFDbkMsVUFBd0MsRUFDeEMsTUFBeUIsRUFDekIsUUFBbUI7UUFITSxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQThCO1FBQ3hDLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFSdEIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQzFCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBYW5CLFdBQU0sR0FBRyxHQUFxQixFQUFFO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLHdCQUF3QixFQUFFO2lCQUMxRCxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQyxDQUNILENBQUM7UUFDTixDQUFDLENBQUM7UUFFSyxXQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ25CLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDWixJQUFJLENBQ0gsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDYixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO29CQUM5QixJQUFJLENBQUMsc0JBQXNCLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDO3lCQUMvRSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsRUFBRTt3QkFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsbUNBQW1DLENBQUMsQ0FBQzt3QkFDM0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztvQkFDNUMsQ0FBQyxDQUFDLENBQ0gsQ0FBQyxDQUFDO29CQUNMLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx5QkFBeUIsQ0FBQzt3QkFDcEQsSUFBSSxFQUFFLHNCQUFzQixDQUFDLEtBQUs7d0JBQ2xDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSzt3QkFDakIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO3FCQUN0QixDQUFDO3lCQUNDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFO3dCQUN6QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUM7d0JBQzdDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7d0JBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7b0JBQzdCLENBQUMsQ0FBQyxDQUNILENBQUM7WUFDUixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ04sQ0FBQyxDQUFDO1FBdkNBLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUMsc0JBQXNCLENBQUM7UUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxzQkFBc0IsQ0FBQztJQUNyRSxDQUFDO0lBdUNNLGFBQWEsQ0FBQyxJQUFJO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLGdCQUFnQjtRQUNoQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQzNCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sV0FBVyxDQUFDLElBQUk7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7MkdBdkVVLGNBQWMsa0JBYWYsZUFBZTsrRkFiZCxjQUFjLDBGQUVkLGVBQWUsZ0RDMUI1Qiw0L0NBbURBOzJGRDNCYSxjQUFjO2tCQUwxQixTQUFTO3NDQUdTLHVCQUF1QixDQUFDLE1BQU07OzBCQWU1QyxNQUFNOzJCQUFDLGVBQWU7K0hBVmxCLElBQUk7c0JBRFYsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsIEluamVjdCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5cbmltcG9ydCB7IEZzRm9ybURpcmVjdGl2ZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2Zvcm0nO1xuaW1wb3J0IHsgRnNNZXNzYWdlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvbWVzc2FnZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgVmVyaWZpY2F0aW9uTWV0aG9kVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudW1zL3ZlcmlmaWNhdGlvbi1tZXRob2QtdHlwZS5lbnVtJztcbmltcG9ydCB7IFR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9lbWFpbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VtYWlsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBFbWFpbENvbXBvbmVudCB7XG5cbiAgQFZpZXdDaGlsZChGc0Zvcm1EaXJlY3RpdmUsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBwdWJsaWMgZm9ybTogRnNGb3JtRGlyZWN0aXZlO1xuXG4gIHB1YmxpYyBlbWFpbDtcbiAgcHVibGljIGNvZGU7XG4gIHB1YmxpYyBkZWZhdWx0O1xuICBwdWJsaWMgdmVyaWZpY2F0aW9uTWV0aG9kID0gbnVsbDtcbiAgcHVibGljIHRydXN0RGV2aWNlID0gdHJ1ZTtcbiAgcHVibGljIHR3b0ZhY3Rvck1hbmFnZVNlcnZpY2U6IFR3b0ZhY3Rvck1hbmFnZVNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHByaXZhdGUgX2RhdGE6IGFueSxcbiAgICBwcml2YXRlIF9kaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxFbWFpbENvbXBvbmVudD4sXG4gICAgcHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX21lc3NhZ2U6IEZzTWVzc2FnZSxcbiAgKSB7XG4gICAgdGhpcy50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlID0gX2RhdGEudHdvRmFjdG9yTWFuYWdlU2VydmljZTtcbiAgICB0aGlzLmRlZmF1bHQgPSAhdGhpcy50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlLmhhc1ZlcmlmaWNhdGlvbk1ldGhvZHM7XG4gIH1cblxuICBwdWJsaWMgcmVzZW5kID0gKCk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UudmVyaWZpY2F0aW9uTWV0aG9kUmVzZW5kKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnUmVzZW50IHZlcmlmaWNhdGlvbiBjb2RlJyk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfTtcblxuICBwdWJsaWMgc3VibWl0ID0gKCkgPT4ge1xuICAgIHJldHVybiBvZih0cnVlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMudmVyaWZpY2F0aW9uTWV0aG9kID9cbiAgICAgICAgICAgIHRoaXMudHdvRmFjdG9yTWFuYWdlU2VydmljZS52ZXJpZmljYXRpb25NZXRob2RWZXJpZnkkKHRoaXMuY29kZSwgdGhpcy50cnVzdERldmljZSlcbiAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFwKCh2ZXJpZmljYXRpb25NZXRob2QpID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnQ3JlYXRlZCBlbWFpbCB2ZXJpZmljYXRpb24gbWV0aG9kJyk7XG4gICAgICAgICAgICAgICAgICB0aGlzLl9kaWFsb2dSZWYuY2xvc2UodmVyaWZpY2F0aW9uTWV0aG9kKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgKSA6XG4gICAgICAgICAgICB0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UudmVyaWZpY2F0aW9uTWV0aG9kQ3JlYXRlJCh7XG4gICAgICAgICAgICAgIHR5cGU6IFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUuRW1haWwsXG4gICAgICAgICAgICAgIGVtYWlsOiB0aGlzLmVtYWlsLFxuICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLmRlZmF1bHQsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoKHZlcmlmaWNhdGlvbk1ldGhvZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgdGhpcy52ZXJpZmljYXRpb25NZXRob2QgPSB2ZXJpZmljYXRpb25NZXRob2Q7XG4gICAgICAgICAgICAgICAgICB0aGlzLmZvcm0uY2xlYXIoKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH07XG5cbiAgcHVibGljIGNvZGVDb21wbGV0ZWQoY29kZSk6IHZvaWQge1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gICAgLy9MZWdhY3kgc3VwcG9ydFxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYoIXRoaXMuZm9ybS5zdWJtaXR0aW5nKSB7XG4gICAgICAgIHRoaXMuZm9ybS50cmlnZ2VyU3VibWl0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY29kZUNoYW5nZWQoY29kZSk6IHZvaWQge1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gIH1cblxufVxuIiwiPGZvcm0gZnNGb3JtIFtzdWJtaXRdPVwic3VibWl0XCI+XG4gIDxmcy1kaWFsb2c+XG4gICAgPGgxIG1hdC1kaWFsb2ctdGl0bGU+XG4gICAgICBFbWFpbCBTZXR1cFxuICAgIDwvaDE+XG4gICAgPG1hdC1kaWFsb2ctY29udGVudD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2ZXJpZmljYXRpb25NZXRob2Q7IGVsc2Ugbm90VmVyaWZpY2F0aW9uTWV0aG9kXCI+XG4gICAgICAgIDxmcy0yZmEtdmVyaWZpY2F0aW9uXG4gICAgICAgICAgW3ZlcmlmaWNhdGlvbk1ldGhvZF09XCJ2ZXJpZmljYXRpb25NZXRob2RcIlxuICAgICAgICAgIChjb2RlQ2hhbmdlZCk9XCJjb2RlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAoY29kZUNvbXBsZXRlZCk9XCJjb2RlQ29tcGxldGVkKCRldmVudClcIlxuICAgICAgICAgIFtyZXNlbmRdPVwicmVzZW5kXCJcbiAgICAgICAgICBbKHRydXN0RGV2aWNlKV09XCJ0cnVzdERldmljZVwiPlxuICAgICAgICA8L2ZzLTJmYS12ZXJpZmljYXRpb24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLXRlbXBsYXRlICNub3RWZXJpZmljYXRpb25NZXRob2Q+XG4gICAgICAgIDxwPlRoZSBhcHAgd2lsbCBvbmx5IHVzZSB0aGlzIGVtYWlsIGZvciB2ZXJpZnlpbmcgeW91ciBhY2NvdW50IHNlY3VyaXR5LiA8L3A+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8bWF0LWxhYmVsPkVtYWlsPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJlbWFpbFwiXG4gICAgICAgICAgICBbZnNGb3JtRW1haWxdPVwidHJ1ZVwiXG4gICAgICAgICAgICBuYW1lPVwiZW1haWxcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1jaGVja2JveCBcbiAgICAgICAgICAgIG5hbWU9XCJkZWZhdWx0XCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZGVmYXVsdFwiXG4gICAgICAgICAgICBbZGlzYWJsZVJpcHBsZV09XCJ0cnVlXCI+XG4gICAgICAgICAgTWFrZSB0aGlzIHRoZSBkZWZhdWx0IHZlcmlmaWNhdGlvbiBtZXRob2RcbiAgICAgICAgPC9tYXQtY2hlY2tib3g+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxtYXQtZGlhbG9nLWFjdGlvbnM+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgdHlwZT1cInN1Ym1pdFwiPlxuICAgICAgICBOZXh0XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgW21hdC1kaWFsb2ctY2xvc2VdPVwidW5kZWZpbmVkXCI+XG4gICAgICAgIENhbmNlbFxuICAgICAgPC9idXR0b24+XG4gICAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XG4gIDwvZnMtZGlhbG9nPlxuPC9mb3JtPlxuIl19
@@ -59,7 +59,8 @@ export class NumberComponent {
59
59
  this.defaultCountry = _data.defaultCountry;
60
60
  this.default = !this.twoFactorManageService.hasVerificationMethods;
61
61
  }
62
- codeCompleted() {
62
+ codeCompleted(code) {
63
+ this.code = code;
63
64
  //Legacy support
64
65
  setTimeout(() => {
65
66
  if (!this.form.submitting) {
@@ -72,10 +73,10 @@ export class NumberComponent {
72
73
  }
73
74
  }
74
75
  NumberComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: NumberComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i0.ChangeDetectorRef }, { token: i2.FsMessage }], target: i0.ɵɵFactoryTarget.Component });
75
- NumberComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: NumberComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: FsFormDirective, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"submit\" [autocomplete]=\"false\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Text Message Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted()\"\n [resend]=\"resend\"\n [formatRecipient]=\"true\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this number for verifying your account security. Message and data rates may apply by your cell phone provider.</p>\n <mat-form-field>\n <mat-label>Phone number</mat-label>\n <input \n matInput\n fsPhoneField\n [(ngModel)]=\"phone\"\n [required]=\"true\"\n [country]=\"defaultCountry\"\n [mode]=\"'object'\"\n autocomplete=\"off\"\n name=\"phone\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}app-code-input{margin-bottom:5px;display:block}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}h1{display:flex;align-items:center}h1 mat-icon{margin-right:5px}\n"], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout"] }, { type: i4.Fs2faVerificationComponent, selector: "fs-2fa-verification", inputs: ["verificationMethod", "resend", "showTrustedDevice", "trustDevice", "codeLength", "trustDays", "formatRecipient", "getVerificationMethods", "selectVerificationMethod"], outputs: ["verified", "codeChanged", "codeCompleted", "trustDeviceChange"] }, { type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i6.FsPhoneFieldComponent, selector: "[fsPhoneField]", inputs: ["allowNumberExt", "placeholder", "required", "disabled", "mode", "country", "autocomplete"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i9.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i9.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i10.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.MatLabel, selector: "mat-label" }, { type: i12.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i10.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i9.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i10.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit", "form"] }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
76
+ NumberComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: NumberComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: FsFormDirective, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"submit\" [autocomplete]=\"false\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Text Message Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted($event)\"\n [resend]=\"resend\"\n [formatRecipient]=\"true\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this number for verifying your account security. Message and data rates may apply by your cell phone provider.</p>\n <mat-form-field>\n <mat-label>Phone number</mat-label>\n <input \n matInput\n fsPhoneField\n [(ngModel)]=\"phone\"\n [required]=\"true\"\n [country]=\"defaultCountry\"\n [mode]=\"'object'\"\n autocomplete=\"off\"\n name=\"phone\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}app-code-input{margin-bottom:5px;display:block}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}h1{display:flex;align-items:center}h1 mat-icon{margin-right:5px}\n"], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout"] }, { type: i4.Fs2faVerificationComponent, selector: "fs-2fa-verification", inputs: ["verificationMethod", "resend", "showTrustedDevice", "trustDevice", "codeLength", "trustDays", "formatRecipient", "getVerificationMethods", "selectVerificationMethod"], outputs: ["verified", "codeChanged", "codeCompleted", "trustDeviceChange"] }, { type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i6.FsPhoneFieldComponent, selector: "[fsPhoneField]", inputs: ["allowNumberExt", "placeholder", "required", "disabled", "mode", "country", "autocomplete"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i9.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i9.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i10.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.MatLabel, selector: "mat-label" }, { type: i12.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i10.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i9.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i10.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit", "form"] }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
76
77
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: NumberComponent, decorators: [{
77
78
  type: Component,
78
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<form fsForm [submit]=\"submit\" [autocomplete]=\"false\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Text Message Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted()\"\n [resend]=\"resend\"\n [formatRecipient]=\"true\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this number for verifying your account security. Message and data rates may apply by your cell phone provider.</p>\n <mat-form-field>\n <mat-label>Phone number</mat-label>\n <input \n matInput\n fsPhoneField\n [(ngModel)]=\"phone\"\n [required]=\"true\"\n [country]=\"defaultCountry\"\n [mode]=\"'object'\"\n autocomplete=\"off\"\n name=\"phone\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}app-code-input{margin-bottom:5px;display:block}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}h1{display:flex;align-items:center}h1 mat-icon{margin-right:5px}\n"] }]
79
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<form fsForm [submit]=\"submit\" [autocomplete]=\"false\">\n <fs-dialog>\n <h1 mat-dialog-title>\n Text Message Setup\n </h1>\n <mat-dialog-content>\n <ng-container *ngIf=\"verificationMethod; else notVerificationMethod\">\n <fs-2fa-verification\n [verificationMethod]=\"verificationMethod\"\n (codeChanged)=\"codeChanged($event)\"\n (codeCompleted)=\"codeCompleted($event)\"\n [resend]=\"resend\"\n [formatRecipient]=\"true\"\n [(trustDevice)]=\"trustDevice\">\n </fs-2fa-verification>\n </ng-container>\n\n <ng-template #notVerificationMethod>\n <p>The app will only use this number for verifying your account security. Message and data rates may apply by your cell phone provider.</p>\n <mat-form-field>\n <mat-label>Phone number</mat-label>\n <input \n matInput\n fsPhoneField\n [(ngModel)]=\"phone\"\n [required]=\"true\"\n [country]=\"defaultCountry\"\n [mode]=\"'object'\"\n autocomplete=\"off\"\n name=\"phone\">\n </mat-form-field>\n <mat-checkbox \n name=\"default\"\n [(ngModel)]=\"default\"\n [disableRipple]=\"true\">\n Make this the default verification method\n </mat-checkbox>\n </ng-template>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"submit\">\n Next\n </button>\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"undefined\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [":host ::ng-deep mat-checkbox .mat-ripple{display:none}:host ::ng-deep mat-checkbox .mat-checkbox-layout{white-space:wrap}app-code-input{margin-bottom:5px;display:block}mat-form-field{width:100%}mat-dialog-content{width:400px;max-width:100%}p{margin-top:0}h1{display:flex;align-items:center}h1 mat-icon{margin-right:5px}\n"] }]
79
80
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
80
81
  type: Inject,
81
82
  args: [MAT_DIALOG_DATA]
@@ -83,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
83
84
  type: ViewChild,
84
85
  args: [FsFormDirective, { static: false }]
85
86
  }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2UvY29tcG9uZW50cy9udW1iZXIvbnVtYmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2UvY29tcG9uZW50cy9udW1iZXIvbnVtYmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFBRSxpQkFBaUIsRUFDMUMsU0FBUyxFQUFFLE1BQU0sRUFDakIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBU3pGLE1BQU0sT0FBTyxlQUFlO0lBYTFCLFlBQ21DLEtBQVUsRUFDbkMsVUFBeUMsRUFDekMsTUFBeUIsRUFDekIsUUFBbUI7UUFITSxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQStCO1FBQ3pDLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFUdEIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBZTFCLFdBQU0sR0FBRyxHQUFxQixFQUFFO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLHdCQUF3QixFQUFFO2lCQUMxRCxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQyxDQUNILENBQUM7UUFDTixDQUFDLENBQUM7UUFFSyxXQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ25CLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDWixJQUFJLENBQ0gsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDYixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO29CQUM5QixJQUFJLENBQUMsc0JBQXNCLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDO3lCQUMvRSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsRUFBRTt3QkFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsMENBQTBDLENBQUMsQ0FBQzt3QkFDbEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztvQkFDNUMsQ0FBQyxDQUFDLENBQ0gsQ0FBQyxDQUFDO29CQUNMLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx5QkFBeUIsQ0FBQzt3QkFDcEQsSUFBSSxFQUFFLHNCQUFzQixDQUFDLEdBQUc7d0JBQ2hDLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07d0JBQzlCLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVc7d0JBQ2pDLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU87d0JBQ2hDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztxQkFDdEIsQ0FBQzt5QkFDQyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsRUFBRTt3QkFDekIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO3dCQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO3dCQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUM3QixDQUFDLENBQUMsQ0FDSCxDQUFDO1lBQ1IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNOLENBQUMsQ0FBQztRQTFDQSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLHNCQUFzQixDQUFDO1FBQzNELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLHNCQUFzQixDQUFDO0lBQ3JFLENBQUM7SUF5Q00sYUFBYTtRQUNsQixnQkFBZ0I7UUFDaEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUMzQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVcsQ0FBQyxJQUFJO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7OzRHQTFFVSxlQUFlLGtCQWNoQixlQUFlO2dHQWRkLGVBQWUsMEZBRWYsZUFBZSxnREN6QjVCLHF1REF1REE7MkZEaENhLGVBQWU7a0JBTDNCLFNBQVM7c0NBR1MsdUJBQXVCLENBQUMsTUFBTTs7MEJBZ0I1QyxNQUFNOzJCQUFDLGVBQWU7K0hBWGxCLElBQUk7c0JBRFYsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsIEluamVjdCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBGc0Zvcm1EaXJlY3RpdmUgfSBmcm9tICdAZmlyZXN0aXRjaC9mb3JtJztcbmltcG9ydCB7IEZzTWVzc2FnZSB9IGZyb20gJ0BmaXJlc3RpdGNoL21lc3NhZ2UnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtcy92ZXJpZmljYXRpb24tbWV0aG9kLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBUd29GYWN0b3JNYW5hZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vbnVtYmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbnVtYmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBOdW1iZXJDb21wb25lbnQge1xuXG4gIEBWaWV3Q2hpbGQoRnNGb3JtRGlyZWN0aXZlLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgcHVibGljIGZvcm06IEZzRm9ybURpcmVjdGl2ZTtcblxuICBwdWJsaWMgcGhvbmU7XG4gIHB1YmxpYyBjb2RlO1xuICBwdWJsaWMgZGVmYXVsdDtcbiAgcHVibGljIHRydXN0RGV2aWNlID0gdHJ1ZTtcbiAgcHVibGljIHZlcmlmaWNhdGlvbk1ldGhvZCA9IG51bGw7XG4gIHB1YmxpYyBkZWZhdWx0Q291bnRyeTtcbiAgcHVibGljIHR3b0ZhY3Rvck1hbmFnZVNlcnZpY2U6IFR3b0ZhY3Rvck1hbmFnZVNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHByaXZhdGUgX2RhdGE6IGFueSxcbiAgICBwcml2YXRlIF9kaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxOdW1iZXJDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIF9tZXNzYWdlOiBGc01lc3NhZ2UsXG4gICkge1xuICAgIHRoaXMudHdvRmFjdG9yTWFuYWdlU2VydmljZSA9IF9kYXRhLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2U7XG4gICAgdGhpcy5kZWZhdWx0Q291bnRyeSA9IF9kYXRhLmRlZmF1bHRDb3VudHJ5O1xuICAgIHRoaXMuZGVmYXVsdCA9ICF0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UuaGFzVmVyaWZpY2F0aW9uTWV0aG9kcztcbiAgfVxuXG4gIHB1YmxpYyByZXNlbmQgPSAoKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMudHdvRmFjdG9yTWFuYWdlU2VydmljZS52ZXJpZmljYXRpb25NZXRob2RSZXNlbmQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fbWVzc2FnZS5zdWNjZXNzKCdSZXNlbnQgdmVyaWZpY2F0aW9uIGNvZGUnKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9O1xuXG4gIHB1YmxpYyBzdWJtaXQgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG9mKHRydWUpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy52ZXJpZmljYXRpb25NZXRob2QgP1xuICAgICAgICAgICAgdGhpcy50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlLnZlcmlmaWNhdGlvbk1ldGhvZFZlcmlmeSQodGhpcy5jb2RlLCB0aGlzLnRydXN0RGV2aWNlKVxuICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoKHZlcmlmaWNhdGlvbk1ldGhvZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgdGhpcy5fbWVzc2FnZS5zdWNjZXNzKCdDcmVhdGVkIHRleHQgbWVzc2FnZSB2ZXJpZmljYXRpb24gbWV0aG9kJyk7XG4gICAgICAgICAgICAgICAgICB0aGlzLl9kaWFsb2dSZWYuY2xvc2UodmVyaWZpY2F0aW9uTWV0aG9kKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgKSA6XG4gICAgICAgICAgICB0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UudmVyaWZpY2F0aW9uTWV0aG9kQ3JlYXRlJCh7XG4gICAgICAgICAgICAgIHR5cGU6IFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUuU21zLFxuICAgICAgICAgICAgICBwaG9uZU51bWJlcjogdGhpcy5waG9uZS5udW1iZXIsXG4gICAgICAgICAgICAgIHBob25lQ29kZTogdGhpcy5waG9uZS5jb3VudHJ5Q29kZSxcbiAgICAgICAgICAgICAgcGhvbmVDb3VudHJ5OiB0aGlzLnBob25lLmlzb0NvZGUsXG4gICAgICAgICAgICAgIGRlZmF1bHQ6IHRoaXMuZGVmYXVsdCxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgodmVyaWZpY2F0aW9uTWV0aG9kKSA9PiB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnZlcmlmaWNhdGlvbk1ldGhvZCA9IHZlcmlmaWNhdGlvbk1ldGhvZDtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5jbGVhcigpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfTtcblxuICBwdWJsaWMgY29kZUNvbXBsZXRlZCgpOiB2b2lkIHtcbiAgICAvL0xlZ2FjeSBzdXBwb3J0XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZighdGhpcy5mb3JtLnN1Ym1pdHRpbmcpIHtcbiAgICAgICAgdGhpcy5mb3JtLnRyaWdnZXJTdWJtaXQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjb2RlQ2hhbmdlZChjb2RlKTogdm9pZCB7XG4gICAgdGhpcy5jb2RlID0gY29kZTtcbiAgfVxuXG59XG4iLCI8Zm9ybSBmc0Zvcm0gW3N1Ym1pdF09XCJzdWJtaXRcIiBbYXV0b2NvbXBsZXRlXT1cImZhbHNlXCI+XG4gIDxmcy1kaWFsb2c+XG4gICAgPGgxIG1hdC1kaWFsb2ctdGl0bGU+XG4gICAgICBUZXh0IE1lc3NhZ2UgU2V0dXBcbiAgICA8L2gxPlxuICAgIDxtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmVyaWZpY2F0aW9uTWV0aG9kOyBlbHNlIG5vdFZlcmlmaWNhdGlvbk1ldGhvZFwiPlxuICAgICAgICA8ZnMtMmZhLXZlcmlmaWNhdGlvblxuICAgICAgICAgIFt2ZXJpZmljYXRpb25NZXRob2RdPVwidmVyaWZpY2F0aW9uTWV0aG9kXCJcbiAgICAgICAgICAoY29kZUNoYW5nZWQpPVwiY29kZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgICAgKGNvZGVDb21wbGV0ZWQpPVwiY29kZUNvbXBsZXRlZCgpXCJcbiAgICAgICAgICBbcmVzZW5kXT1cInJlc2VuZFwiXG4gICAgICAgICAgW2Zvcm1hdFJlY2lwaWVudF09XCJ0cnVlXCJcbiAgICAgICAgICBbKHRydXN0RGV2aWNlKV09XCJ0cnVzdERldmljZVwiPlxuICAgICAgICA8L2ZzLTJmYS12ZXJpZmljYXRpb24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLXRlbXBsYXRlICNub3RWZXJpZmljYXRpb25NZXRob2Q+XG4gICAgICAgIDxwPlRoZSBhcHAgd2lsbCBvbmx5IHVzZSB0aGlzIG51bWJlciBmb3IgdmVyaWZ5aW5nIHlvdXIgYWNjb3VudCBzZWN1cml0eS4gTWVzc2FnZSBhbmQgZGF0YSByYXRlcyBtYXkgYXBwbHkgYnkgeW91ciBjZWxsIHBob25lIHByb3ZpZGVyLjwvcD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxtYXQtbGFiZWw+UGhvbmUgbnVtYmVyPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0IFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIGZzUGhvbmVGaWVsZFxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJwaG9uZVwiXG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbY291bnRyeV09XCJkZWZhdWx0Q291bnRyeVwiXG4gICAgICAgICAgICBbbW9kZV09XCInb2JqZWN0J1wiXG4gICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgbmFtZT1cInBob25lXCI+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxtYXQtY2hlY2tib3ggXG4gICAgICAgICAgICBuYW1lPVwiZGVmYXVsdFwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImRlZmF1bHRcIlxuICAgICAgICAgICAgW2Rpc2FibGVSaXBwbGVdPVwidHJ1ZVwiPlxuICAgICAgICAgIE1ha2UgdGhpcyB0aGUgZGVmYXVsdCB2ZXJpZmljYXRpb24gbWV0aG9kXG4gICAgICAgIDwvbWF0LWNoZWNrYm94PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L21hdC1kaWFsb2ctY29udGVudD5cbiAgICA8bWF0LWRpYWxvZy1hY3Rpb25zPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIj5cbiAgICAgICAgTmV4dFxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIFttYXQtZGlhbG9nLWNsb3NlXT1cInVuZGVmaW5lZFwiPlxuICAgICAgICBDYW5jZWxcbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbWF0LWRpYWxvZy1hY3Rpb25zPlxuICA8L2ZzLWRpYWxvZz5cbjwvZm9ybT5cbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2UvY29tcG9uZW50cy9udW1iZXIvbnVtYmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9tYW5hZ2UvY29tcG9uZW50cy9udW1iZXIvbnVtYmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFBRSxpQkFBaUIsRUFDMUMsU0FBUyxFQUFFLE1BQU0sRUFDakIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBU3pGLE1BQU0sT0FBTyxlQUFlO0lBYTFCLFlBQ21DLEtBQVUsRUFDbkMsVUFBeUMsRUFDekMsTUFBeUIsRUFDekIsUUFBbUI7UUFITSxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQStCO1FBQ3pDLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFUdEIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBZTFCLFdBQU0sR0FBRyxHQUFxQixFQUFFO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLHdCQUF3QixFQUFFO2lCQUMxRCxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQyxDQUNILENBQUM7UUFDTixDQUFDLENBQUM7UUFFSyxXQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ25CLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDWixJQUFJLENBQ0gsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDYixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO29CQUM5QixJQUFJLENBQUMsc0JBQXNCLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDO3lCQUMvRSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsRUFBRTt3QkFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsMENBQTBDLENBQUMsQ0FBQzt3QkFDbEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztvQkFDNUMsQ0FBQyxDQUFDLENBQ0gsQ0FBQyxDQUFDO29CQUNMLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx5QkFBeUIsQ0FBQzt3QkFDcEQsSUFBSSxFQUFFLHNCQUFzQixDQUFDLEdBQUc7d0JBQ2hDLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07d0JBQzlCLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVc7d0JBQ2pDLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU87d0JBQ2hDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztxQkFDdEIsQ0FBQzt5QkFDQyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsRUFBRTt3QkFDekIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO3dCQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO3dCQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUM3QixDQUFDLENBQUMsQ0FDSCxDQUFDO1lBQ1IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNOLENBQUMsQ0FBQztRQTFDQSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLHNCQUFzQixDQUFDO1FBQzNELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLHNCQUFzQixDQUFDO0lBQ3JFLENBQUM7SUF5Q00sYUFBYSxDQUFDLElBQUk7UUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsZ0JBQWdCO1FBQ2hCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7YUFDM0I7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXLENBQUMsSUFBSTtRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDOzs0R0EzRVUsZUFBZSxrQkFjaEIsZUFBZTtnR0FkZCxlQUFlLDBGQUVmLGVBQWUsZ0RDekI1QiwydURBdURBOzJGRGhDYSxlQUFlO2tCQUwzQixTQUFTO3NDQUdTLHVCQUF1QixDQUFDLE1BQU07OzBCQWdCNUMsTUFBTTsyQkFBQyxlQUFlOytIQVhsQixJQUFJO3NCQURWLFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LCBJbmplY3QsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuaW1wb3J0IHsgRnNGb3JtRGlyZWN0aXZlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZm9ybSc7XG5pbXBvcnQgeyBGc01lc3NhZ2UgfSBmcm9tICdAZmlyZXN0aXRjaC9tZXNzYWdlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBWZXJpZmljYXRpb25NZXRob2RUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZW51bXMvdmVyaWZpY2F0aW9uLW1ldGhvZC10eXBlLmVudW0nO1xuaW1wb3J0IHsgVHdvRmFjdG9yTWFuYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL251bWJlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL251bWJlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTnVtYmVyQ29tcG9uZW50IHtcblxuICBAVmlld0NoaWxkKEZzRm9ybURpcmVjdGl2ZSwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHB1YmxpYyBmb3JtOiBGc0Zvcm1EaXJlY3RpdmU7XG5cbiAgcHVibGljIHBob25lO1xuICBwdWJsaWMgY29kZTtcbiAgcHVibGljIGRlZmF1bHQ7XG4gIHB1YmxpYyB0cnVzdERldmljZSA9IHRydWU7XG4gIHB1YmxpYyB2ZXJpZmljYXRpb25NZXRob2QgPSBudWxsO1xuICBwdWJsaWMgZGVmYXVsdENvdW50cnk7XG4gIHB1YmxpYyB0d29GYWN0b3JNYW5hZ2VTZXJ2aWNlOiBUd29GYWN0b3JNYW5hZ2VTZXJ2aWNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwcml2YXRlIF9kYXRhOiBhbnksXG4gICAgcHJpdmF0ZSBfZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8TnVtYmVyQ29tcG9uZW50PixcbiAgICBwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfbWVzc2FnZTogRnNNZXNzYWdlLFxuICApIHtcbiAgICB0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UgPSBfZGF0YS50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlO1xuICAgIHRoaXMuZGVmYXVsdENvdW50cnkgPSBfZGF0YS5kZWZhdWx0Q291bnRyeTtcbiAgICB0aGlzLmRlZmF1bHQgPSAhdGhpcy50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlLmhhc1ZlcmlmaWNhdGlvbk1ldGhvZHM7XG4gIH1cblxuICBwdWJsaWMgcmVzZW5kID0gKCk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLnR3b0ZhY3Rvck1hbmFnZVNlcnZpY2UudmVyaWZpY2F0aW9uTWV0aG9kUmVzZW5kKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnUmVzZW50IHZlcmlmaWNhdGlvbiBjb2RlJyk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfTtcblxuICBwdWJsaWMgc3VibWl0ID0gKCkgPT4ge1xuICAgIHJldHVybiBvZih0cnVlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMudmVyaWZpY2F0aW9uTWV0aG9kID9cbiAgICAgICAgICAgIHRoaXMudHdvRmFjdG9yTWFuYWdlU2VydmljZS52ZXJpZmljYXRpb25NZXRob2RWZXJpZnkkKHRoaXMuY29kZSwgdGhpcy50cnVzdERldmljZSlcbiAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFwKCh2ZXJpZmljYXRpb25NZXRob2QpID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnQ3JlYXRlZCB0ZXh0IG1lc3NhZ2UgdmVyaWZpY2F0aW9uIG1ldGhvZCcpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5fZGlhbG9nUmVmLmNsb3NlKHZlcmlmaWNhdGlvbk1ldGhvZCk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICkgOlxuICAgICAgICAgICAgdGhpcy50d29GYWN0b3JNYW5hZ2VTZXJ2aWNlLnZlcmlmaWNhdGlvbk1ldGhvZENyZWF0ZSQoe1xuICAgICAgICAgICAgICB0eXBlOiBWZXJpZmljYXRpb25NZXRob2RUeXBlLlNtcyxcbiAgICAgICAgICAgICAgcGhvbmVOdW1iZXI6IHRoaXMucGhvbmUubnVtYmVyLFxuICAgICAgICAgICAgICBwaG9uZUNvZGU6IHRoaXMucGhvbmUuY291bnRyeUNvZGUsXG4gICAgICAgICAgICAgIHBob25lQ291bnRyeTogdGhpcy5waG9uZS5pc29Db2RlLFxuICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLmRlZmF1bHQsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoKHZlcmlmaWNhdGlvbk1ldGhvZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgdGhpcy52ZXJpZmljYXRpb25NZXRob2QgPSB2ZXJpZmljYXRpb25NZXRob2Q7XG4gICAgICAgICAgICAgICAgICB0aGlzLmZvcm0uY2xlYXIoKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH07XG5cbiAgcHVibGljIGNvZGVDb21wbGV0ZWQoY29kZSk6IHZvaWQge1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gICAgLy9MZWdhY3kgc3VwcG9ydFxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYoIXRoaXMuZm9ybS5zdWJtaXR0aW5nKSB7XG4gICAgICAgIHRoaXMuZm9ybS50cmlnZ2VyU3VibWl0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY29kZUNoYW5nZWQoY29kZSk6IHZvaWQge1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gIH1cblxufVxuIiwiPGZvcm0gZnNGb3JtIFtzdWJtaXRdPVwic3VibWl0XCIgW2F1dG9jb21wbGV0ZV09XCJmYWxzZVwiPlxuICA8ZnMtZGlhbG9nPlxuICAgIDxoMSBtYXQtZGlhbG9nLXRpdGxlPlxuICAgICAgVGV4dCBNZXNzYWdlIFNldHVwXG4gICAgPC9oMT5cbiAgICA8bWF0LWRpYWxvZy1jb250ZW50PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZlcmlmaWNhdGlvbk1ldGhvZDsgZWxzZSBub3RWZXJpZmljYXRpb25NZXRob2RcIj5cbiAgICAgICAgPGZzLTJmYS12ZXJpZmljYXRpb25cbiAgICAgICAgICBbdmVyaWZpY2F0aW9uTWV0aG9kXT1cInZlcmlmaWNhdGlvbk1ldGhvZFwiXG4gICAgICAgICAgKGNvZGVDaGFuZ2VkKT1cImNvZGVDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICAgIChjb2RlQ29tcGxldGVkKT1cImNvZGVDb21wbGV0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgW3Jlc2VuZF09XCJyZXNlbmRcIlxuICAgICAgICAgIFtmb3JtYXRSZWNpcGllbnRdPVwidHJ1ZVwiXG4gICAgICAgICAgWyh0cnVzdERldmljZSldPVwidHJ1c3REZXZpY2VcIj5cbiAgICAgICAgPC9mcy0yZmEtdmVyaWZpY2F0aW9uPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm90VmVyaWZpY2F0aW9uTWV0aG9kPlxuICAgICAgICA8cD5UaGUgYXBwIHdpbGwgb25seSB1c2UgdGhpcyBudW1iZXIgZm9yIHZlcmlmeWluZyB5b3VyIGFjY291bnQgc2VjdXJpdHkuIE1lc3NhZ2UgYW5kIGRhdGEgcmF0ZXMgbWF5IGFwcGx5IGJ5IHlvdXIgY2VsbCBwaG9uZSBwcm92aWRlci48L3A+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8bWF0LWxhYmVsPlBob25lIG51bWJlcjwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dCBcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBmc1Bob25lRmllbGRcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwicGhvbmVcIlxuICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICAgICAgW2NvdW50cnldPVwiZGVmYXVsdENvdW50cnlcIlxuICAgICAgICAgICAgW21vZGVdPVwiJ29iamVjdCdcIlxuICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAgIG5hbWU9XCJwaG9uZVwiPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8bWF0LWNoZWNrYm94IFxuICAgICAgICAgICAgbmFtZT1cImRlZmF1bHRcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJkZWZhdWx0XCJcbiAgICAgICAgICAgIFtkaXNhYmxlUmlwcGxlXT1cInRydWVcIj5cbiAgICAgICAgICBNYWtlIHRoaXMgdGhlIGRlZmF1bHQgdmVyaWZpY2F0aW9uIG1ldGhvZFxuICAgICAgICA8L21hdC1jaGVja2JveD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgPG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICB0eXBlPVwic3VibWl0XCI+XG4gICAgICAgIE5leHRcbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbbWF0LWRpYWxvZy1jbG9zZV09XCJ1bmRlZmluZWRcIj5cbiAgICAgICAgQ2FuY2VsXG4gICAgICA8L2J1dHRvbj5cbiAgICA8L21hdC1kaWFsb2ctYWN0aW9ucz5cbiAgPC9mcy1kaWFsb2c+XG48L2Zvcm0+XG4iXX0=
@@ -14,6 +14,9 @@ export class Fs2faVerificationCodeComponent {
14
14
  this.codeCompleted = new EventEmitter();
15
15
  this.VerificationMethodType = VerificationMethodType;
16
16
  }
17
+ codeComplete(code) {
18
+ this.codeCompleted.emit(code);
19
+ }
17
20
  codeChange(code) {
18
21
  this.code = code;
19
22
  this.codeChanged.emit(this.code);
@@ -24,7 +27,7 @@ export class Fs2faVerificationCodeComponent {
24
27
  }
25
28
  }
26
29
  Fs2faVerificationCodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: Fs2faVerificationCodeComponent, deps: [{ token: i1.FsFormDirective }], target: i0.ɵɵFactoryTarget.Component });
27
- Fs2faVerificationCodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: Fs2faVerificationCodeComponent, selector: "fs-2fa-verification-code", inputs: { type: "type", recipient: "recipient", codeLength: "codeLength", code: "code" }, outputs: { codeChanged: "codeChanged", codeCompleted: "codeCompleted" }, viewQueries: [{ propertyName: "codeInputComponent", first: true, predicate: CodeInputComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"type === VerificationMethodType.Sms\">\n <p class=\"description\">\n A text message with a verification code was just sent to <span style=\"white-space: nowrap;\">{{ recipient }}</span> to verify it's you.\n </p>\n\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.Email\">\n <p class=\"description\">\n An email with a verification code was just sent to {{ recipient }} to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.App\">\n <p class=\"description\">\n Enter the verification code generated by your 2 factor authenticator app to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-template #input> \n <app-code-input \n [code]=\"code\"\n [codeLength]=\"codeLength\"\n (codeChanged)=\"codeChange($event)\"\n (codeCompleted)=\"codeCompleted.emit($event)\">\n </app-code-input> \n</ng-template> ", styles: ["mat-form-field{width:100%}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper{min-height:unset!important}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper .fs-form-error{padding-bottom:5px}app-code-input{margin-bottom:5px}\n"], components: [{ type: i2.CodeInputComponent, selector: "app-code-input", inputs: ["codeLength", "code"], outputs: ["codeCompleted", "codeChanged"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], viewProviders: [
30
+ Fs2faVerificationCodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: Fs2faVerificationCodeComponent, selector: "fs-2fa-verification-code", inputs: { type: "type", recipient: "recipient", codeLength: "codeLength", code: "code" }, outputs: { codeChanged: "codeChanged", codeCompleted: "codeCompleted" }, viewQueries: [{ propertyName: "codeInputComponent", first: true, predicate: CodeInputComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"type === VerificationMethodType.Sms\">\n <p class=\"description\">\n A text message with a verification code was just sent to <span style=\"white-space: nowrap;\">{{ recipient }}</span> to verify it's you.\n </p>\n\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.Email\">\n <p class=\"description\">\n An email with a verification code was just sent to {{ recipient }} to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.App\">\n <p class=\"description\">\n Enter the verification code generated by your 2 factor authenticator app to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-template #input> \n <app-code-input \n [code]=\"code\"\n [codeLength]=\"codeLength\"\n (codeChanged)=\"codeChange($event)\"\n (codeCompleted)=\"codeComplete\">\n </app-code-input> \n</ng-template> ", styles: ["mat-form-field{width:100%}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper{min-height:unset!important}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper .fs-form-error{padding-bottom:5px}app-code-input{margin-bottom:5px}\n"], components: [{ type: i2.CodeInputComponent, selector: "app-code-input", inputs: ["codeLength", "code"], outputs: ["codeCompleted", "codeChanged"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], viewProviders: [
28
31
  {
29
32
  provide: ControlContainer,
30
33
  useExisting: NgForm,
@@ -37,7 +40,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
37
40
  provide: ControlContainer,
38
41
  useExisting: NgForm,
39
42
  },
40
- ], template: "<ng-container *ngIf=\"type === VerificationMethodType.Sms\">\n <p class=\"description\">\n A text message with a verification code was just sent to <span style=\"white-space: nowrap;\">{{ recipient }}</span> to verify it's you.\n </p>\n\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.Email\">\n <p class=\"description\">\n An email with a verification code was just sent to {{ recipient }} to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.App\">\n <p class=\"description\">\n Enter the verification code generated by your 2 factor authenticator app to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-template #input> \n <app-code-input \n [code]=\"code\"\n [codeLength]=\"codeLength\"\n (codeChanged)=\"codeChange($event)\"\n (codeCompleted)=\"codeCompleted.emit($event)\">\n </app-code-input> \n</ng-template> ", styles: ["mat-form-field{width:100%}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper{min-height:unset!important}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper .fs-form-error{padding-bottom:5px}app-code-input{margin-bottom:5px}\n"] }]
43
+ ], template: "<ng-container *ngIf=\"type === VerificationMethodType.Sms\">\n <p class=\"description\">\n A text message with a verification code was just sent to <span style=\"white-space: nowrap;\">{{ recipient }}</span> to verify it's you.\n </p>\n\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.Email\">\n <p class=\"description\">\n An email with a verification code was just sent to {{ recipient }} to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"type === VerificationMethodType.App\">\n <p class=\"description\">\n Enter the verification code generated by your 2 factor authenticator app to verify it's you.\n </p>\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n</ng-container>\n\n<ng-template #input> \n <app-code-input \n [code]=\"code\"\n [codeLength]=\"codeLength\"\n (codeChanged)=\"codeChange($event)\"\n (codeCompleted)=\"codeComplete\">\n </app-code-input> \n</ng-template> ", styles: ["mat-form-field{width:100%}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper{min-height:unset!important}mat-form-field ::ng-deep .mat-form-field-subscript-wrapper .fs-form-error{padding-bottom:5px}app-code-input{margin-bottom:5px}\n"] }]
41
44
  }], ctorParameters: function () { return [{ type: i1.FsFormDirective }]; }, propDecorators: { codeInputComponent: [{
42
45
  type: ViewChild,
43
46
  args: [CodeInputComponent]
@@ -54,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
54
57
  }], codeCompleted: [{
55
58
  type: Output
56
59
  }] } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMmZhLXZlcmlmaWNhdGlvbi1jb2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy92ZXJpZmljYXRpb24vY29tcG9uZW50cy8yZmEtdmVyaWZpY2F0aW9uLWNvZGUvMmZhLXZlcmlmaWNhdGlvbi1jb2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy92ZXJpZmljYXRpb24vY29tcG9uZW50cy8yZmEtdmVyaWZpY2F0aW9uLWNvZGUvMmZhLXZlcmlmaWNhdGlvbi1jb2RlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7OztBQWUxRixNQUFNLE9BQU8sOEJBQThCO0lBeUJ6QyxZQUNVLEtBQXNCO1FBQXRCLFVBQUssR0FBTCxLQUFLLENBQWlCO1FBUnpCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUd6QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFekMsMkJBQXNCLEdBQUcsc0JBQXNCLENBQUM7SUFJcEQsQ0FBQztJQUVHLFVBQVUsQ0FBQyxJQUFJO1FBQ3BCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xDLENBQUM7OzJIQXJDVSw4QkFBOEI7K0dBQTlCLDhCQUE4Qix1UkFFOUIsa0JBQWtCLGdEQzlCL0IsZ2xDQTZCZSw0bkJEUkU7UUFDYjtZQUNFLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsV0FBVyxFQUFFLE1BQU07U0FDcEI7S0FDRjsyRkFFVSw4QkFBOEI7a0JBWjFDLFNBQVM7K0JBQ0UsMEJBQTBCLG1CQUduQix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQzt3QkFDYjs0QkFDRSxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixXQUFXLEVBQUUsTUFBTTt5QkFDcEI7cUJBQ0Y7c0dBS00sa0JBQWtCO3NCQUR4QixTQUFTO3VCQUFDLGtCQUFrQjtnQkFJdEIsSUFBSTtzQkFEVixLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFJQyxXQUFXO3NCQURqQixNQUFNO2dCQUlBLGFBQWE7c0JBRG5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEZzRm9ybURpcmVjdGl2ZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2Zvcm0nO1xuXG5pbXBvcnQgeyBWZXJpZmljYXRpb25NZXRob2RUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZW51bXMvdmVyaWZpY2F0aW9uLW1ldGhvZC10eXBlLmVudW0nO1xuaW1wb3J0IHsgQ29kZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kdWxlcy9jb2RlLWlucHV0L2NvbXBvbmVudHMvY29kZS1pbnB1dCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtMmZhLXZlcmlmaWNhdGlvbi1jb2RlJyxcbiAgdGVtcGxhdGVVcmw6ICcuLzJmYS12ZXJpZmljYXRpb24tY29kZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuLzJmYS12ZXJpZmljYXRpb24tY29kZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdmlld1Byb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IENvbnRyb2xDb250YWluZXIsXG4gICAgICB1c2VFeGlzdGluZzogTmdGb3JtLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzMmZhVmVyaWZpY2F0aW9uQ29kZUNvbXBvbmVudCB7XG5cbiAgQFZpZXdDaGlsZChDb2RlSW5wdXRDb21wb25lbnQpXG4gIHB1YmxpYyBjb2RlSW5wdXRDb21wb25lbnQ6IENvZGVJbnB1dENvbXBvbmVudDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdHlwZTogVmVyaWZpY2F0aW9uTWV0aG9kVHlwZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVjaXBpZW50OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvZGVMZW5ndGg7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvZGU7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjb2RlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY29kZUNvbXBsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwdWJsaWMgVmVyaWZpY2F0aW9uTWV0aG9kVHlwZSA9IFZlcmlmaWNhdGlvbk1ldGhvZFR5cGU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZm9ybTogRnNGb3JtRGlyZWN0aXZlLFxuICApIHt9XG5cbiAgcHVibGljIGNvZGVDaGFuZ2UoY29kZSk6IHZvaWQge1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gICAgdGhpcy5jb2RlQ2hhbmdlZC5lbWl0KHRoaXMuY29kZSk7XG4gICAgdGhpcy5fZm9ybS5kaXJ0eSgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuY29kZUlucHV0Q29tcG9uZW50LmZvY3VzKCk7XG4gIH1cblxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInR5cGUgPT09IFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUuU21zXCI+XG4gIDxwIGNsYXNzPVwiZGVzY3JpcHRpb25cIj5cbiAgICBBIHRleHQgbWVzc2FnZSB3aXRoIGEgdmVyaWZpY2F0aW9uIGNvZGUgd2FzIGp1c3Qgc2VudCB0byA8c3BhbiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCI+e3sgcmVjaXBpZW50IH19PC9zcGFuPiB0byB2ZXJpZnkgaXQncyB5b3UuXG4gIDwvcD5cblxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW5wdXRcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwidHlwZSA9PT0gVmVyaWZpY2F0aW9uTWV0aG9kVHlwZS5FbWFpbFwiPlxuICA8cCBjbGFzcz1cImRlc2NyaXB0aW9uXCI+XG4gICAgQW4gZW1haWwgd2l0aCBhIHZlcmlmaWNhdGlvbiBjb2RlIHdhcyBqdXN0IHNlbnQgdG8ge3sgcmVjaXBpZW50IH19IHRvIHZlcmlmeSBpdCdzIHlvdS5cbiAgPC9wPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW5wdXRcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwidHlwZSA9PT0gVmVyaWZpY2F0aW9uTWV0aG9kVHlwZS5BcHBcIj5cbiAgPHAgY2xhc3M9XCJkZXNjcmlwdGlvblwiPlxuICAgIEVudGVyIHRoZSB2ZXJpZmljYXRpb24gY29kZSBnZW5lcmF0ZWQgYnkgeW91ciAyIGZhY3RvciBhdXRoZW50aWNhdG9yIGFwcCB0byB2ZXJpZnkgaXQncyB5b3UuXG4gIDwvcD5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlucHV0XCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNpbnB1dD4gXG4gPGFwcC1jb2RlLWlucHV0ICBcbiAgICBbY29kZV09XCJjb2RlXCJcbiAgICBbY29kZUxlbmd0aF09XCJjb2RlTGVuZ3RoXCJcbiAgICAoY29kZUNoYW5nZWQpPVwiY29kZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAoY29kZUNvbXBsZXRlZCk9XCJjb2RlQ29tcGxldGVkLmVtaXQoJGV2ZW50KVwiPlxuICA8L2FwcC1jb2RlLWlucHV0PiBcbjwvbmctdGVtcGxhdGU+ICJdfQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMmZhLXZlcmlmaWNhdGlvbi1jb2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy92ZXJpZmljYXRpb24vY29tcG9uZW50cy8yZmEtdmVyaWZpY2F0aW9uLWNvZGUvMmZhLXZlcmlmaWNhdGlvbi1jb2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy92ZXJpZmljYXRpb24vY29tcG9uZW50cy8yZmEtdmVyaWZpY2F0aW9uLWNvZGUvMmZhLXZlcmlmaWNhdGlvbi1jb2RlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7OztBQWUxRixNQUFNLE9BQU8sOEJBQThCO0lBeUJ6QyxZQUNVLEtBQXNCO1FBQXRCLFVBQUssR0FBTCxLQUFLLENBQWlCO1FBUnpCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUd6QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFekMsMkJBQXNCLEdBQUcsc0JBQXNCLENBQUM7SUFJcEQsQ0FBQztJQUVHLFlBQVksQ0FBQyxJQUFJO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTSxVQUFVLENBQUMsSUFBSTtRQUNwQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxDQUFDOzsySEF6Q1UsOEJBQThCOytHQUE5Qiw4QkFBOEIsdVJBRTlCLGtCQUFrQixnREM5Qi9CLGtrQ0E2QmUsNG5CRFJFO1FBQ2I7WUFDRSxPQUFPLEVBQUUsZ0JBQWdCO1lBQ3pCLFdBQVcsRUFBRSxNQUFNO1NBQ3BCO0tBQ0Y7MkZBRVUsOEJBQThCO2tCQVoxQyxTQUFTOytCQUNFLDBCQUEwQixtQkFHbkIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEM7d0JBQ2I7NEJBQ0UsT0FBTyxFQUFFLGdCQUFnQjs0QkFDekIsV0FBVyxFQUFFLE1BQU07eUJBQ3BCO3FCQUNGO3NHQUtNLGtCQUFrQjtzQkFEeEIsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBSXRCLElBQUk7c0JBRFYsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsTUFBTTtnQkFJQSxhQUFhO3NCQURuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBGc0Zvcm1EaXJlY3RpdmUgfSBmcm9tICdAZmlyZXN0aXRjaC9mb3JtJztcblxuaW1wb3J0IHsgVmVyaWZpY2F0aW9uTWV0aG9kVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudW1zL3ZlcmlmaWNhdGlvbi1tZXRob2QtdHlwZS5lbnVtJztcbmltcG9ydCB7IENvZGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZHVsZXMvY29kZS1pbnB1dC9jb21wb25lbnRzL2NvZGUtaW5wdXQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLTJmYS12ZXJpZmljYXRpb24tY29kZScsXG4gIHRlbXBsYXRlVXJsOiAnLi8yZmEtdmVyaWZpY2F0aW9uLWNvZGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi8yZmEtdmVyaWZpY2F0aW9uLWNvZGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHZpZXdQcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBDb250cm9sQ29udGFpbmVyLFxuICAgICAgdXNlRXhpc3Rpbmc6IE5nRm9ybSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGczJmYVZlcmlmaWNhdGlvbkNvZGVDb21wb25lbnQge1xuXG4gIEBWaWV3Q2hpbGQoQ29kZUlucHV0Q29tcG9uZW50KVxuICBwdWJsaWMgY29kZUlucHV0Q29tcG9uZW50OiBDb2RlSW5wdXRDb21wb25lbnQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHR5cGU6IFZlcmlmaWNhdGlvbk1ldGhvZFR5cGU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlY2lwaWVudDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2RlTGVuZ3RoO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2RlO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY29kZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNvZGVDb21wbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHVibGljIFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUgPSBWZXJpZmljYXRpb25NZXRob2RUeXBlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2Zvcm06IEZzRm9ybURpcmVjdGl2ZSxcbiAgKSB7fVxuXG4gIHB1YmxpYyBjb2RlQ29tcGxldGUoY29kZSk6IHZvaWQge1xuICAgIHRoaXMuY29kZUNvbXBsZXRlZC5lbWl0KGNvZGUpO1xuICB9XG5cbiAgcHVibGljIGNvZGVDaGFuZ2UoY29kZSk6IHZvaWQge1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gICAgdGhpcy5jb2RlQ2hhbmdlZC5lbWl0KHRoaXMuY29kZSk7XG4gICAgdGhpcy5fZm9ybS5kaXJ0eSgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuY29kZUlucHV0Q29tcG9uZW50LmZvY3VzKCk7XG4gIH1cblxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInR5cGUgPT09IFZlcmlmaWNhdGlvbk1ldGhvZFR5cGUuU21zXCI+XG4gIDxwIGNsYXNzPVwiZGVzY3JpcHRpb25cIj5cbiAgICBBIHRleHQgbWVzc2FnZSB3aXRoIGEgdmVyaWZpY2F0aW9uIGNvZGUgd2FzIGp1c3Qgc2VudCB0byA8c3BhbiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCI+e3sgcmVjaXBpZW50IH19PC9zcGFuPiB0byB2ZXJpZnkgaXQncyB5b3UuXG4gIDwvcD5cblxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW5wdXRcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwidHlwZSA9PT0gVmVyaWZpY2F0aW9uTWV0aG9kVHlwZS5FbWFpbFwiPlxuICA8cCBjbGFzcz1cImRlc2NyaXB0aW9uXCI+XG4gICAgQW4gZW1haWwgd2l0aCBhIHZlcmlmaWNhdGlvbiBjb2RlIHdhcyBqdXN0IHNlbnQgdG8ge3sgcmVjaXBpZW50IH19IHRvIHZlcmlmeSBpdCdzIHlvdS5cbiAgPC9wPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW5wdXRcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwidHlwZSA9PT0gVmVyaWZpY2F0aW9uTWV0aG9kVHlwZS5BcHBcIj5cbiAgPHAgY2xhc3M9XCJkZXNjcmlwdGlvblwiPlxuICAgIEVudGVyIHRoZSB2ZXJpZmljYXRpb24gY29kZSBnZW5lcmF0ZWQgYnkgeW91ciAyIGZhY3RvciBhdXRoZW50aWNhdG9yIGFwcCB0byB2ZXJpZnkgaXQncyB5b3UuXG4gIDwvcD5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlucHV0XCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNpbnB1dD4gXG4gPGFwcC1jb2RlLWlucHV0ICBcbiAgICBbY29kZV09XCJjb2RlXCJcbiAgICBbY29kZUxlbmd0aF09XCJjb2RlTGVuZ3RoXCJcbiAgICAoY29kZUNoYW5nZWQpPVwiY29kZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAoY29kZUNvbXBsZXRlZCk9XCJjb2RlQ29tcGxldGVcIj5cbiAgPC9hcHAtY29kZS1pbnB1dD4gXG48L25nLXRlbXBsYXRlPiAiXX0=